Patent ID: 8762595

Claim:
A method for sharing a network interface unit among multiple processing partitions, the method comprising: providing a particular computer system comprising said multiple processing partitions, each processing partition comprising at least one processing entity and at least one portion of memory, wherein said particular computer system comprises a shared hardware interconnect coupling said multiple processing partitions to each other; providing a network interface unit, the network interface unit including a plurality of memory access channels, wherein the network interface unit is coupled to a network and receives data from other computer systems over the network, wherein said network and said other computer systems are external to said particular computer system; for each given processing partition of said multiple processing partitions: associating a respective set comprising multiple memory access channels of the plurality of memory access channels with the given processing partition of said multiple processing partitions, wherein: said respective set of the plurality of memory access channels is dedicated to said given processing partition, wherein each memory access channel of each respective set of dedicated memory access channels is serviced exclusively by the processing partition to which that respective set is dedicated and another processing partition of said multiple processing partition to which that respective set is not dedicated is precluded from servicing said respective set of dedicated memory access channels, and associating said respective set comprises indicating the association in one or more tables stored within the network interface unit that indicate the respective set of multiple memory access channels is assigned to the given processing partition; the network interface unit receiving network data from one of said other computer systems via the network; performing, via the network interface unit, a selection of a particular one of said respective sets of memory access channels based on one or more portions of said network data and one or more of said one or more tables; and transmitting said network data via a particular memory access channel of the selected set of memory access channels and via said interconnect to the particular processing partition to which said selected set of memory access channels is dedicated.