Patent ID: 8478877

Claim:
A non-transitory computer readable medium comprising software instructions, which when executed by a processor, perform a method, the method comprising: obtaining an allocation policy by a media access card (MAC) layer executing on a host wherein the host comprises a plurality of nodes, and wherein each of the plurality of nodes comprises at least one of a plurality of processors and one of a plurality transmit kernel buffers (TxKBs); receiving, by the MAC layer, a request for a TxKB of the plurality of TxKBs by a sending application executing on at least one of the plurality of processors; obtaining, by the MAC layer, a location of a plurality of available TxKBs on the host, wherein each of the plurality of available TxKBs is one of the plurality of TxKBs; obtaining, by the MAC layer, a location of at least one available network interface on the host; obtaining, by the MAC layer, a location of the sending application; allocating, by the MAC layer, one of the plurality of available TxKBs to obtain an allocated TxKB, wherein the one of the plurality of available TxKBs is selected according to the allocation policy using the location of each of the plurality of available TxKB, the location of the at least one available network interface, and the location of the sending application; and providing, to the sending application, the location of the allocated TxKB.