Patent ID: 7711900

Claim:
A method for equitable sharing of buffers between a plurality of users of a network switch, said method comprising: a processor of a computer system reserving a preset number of dedicated buffers for a respective user of the plurality of users and a subset number of shared buffers for all of said users in an address table in said network switch, said network switch comprising a plurality of ports, each port having a designated port number, said subset number of shared buffers forming a shared buffer pool for all of said users and said preset number of dedicated buffers in forming a dedicated buffer pool for said respective user, each shared buffer and each dedicated buffer in the address table configured to store a port number of a port of the plurality of ports and an associated address such that the network switch is configured to forward a packet received by the network switch to the port whose associated address in a buffer in the address table matches a destination address in the received packet; said processor establishing, upon arrival at the network switch of a packet containing a destination address corresponding to said respective user, that said destination address is not listed in any buffer in said address table; in response to said establishing, said processor determining whether or not an in-use number of said dedicated buffers being used by said respective user is less than said preset number of dedicated buffers allocated to said respective user if said processor determines that said in-use number of said dedicated buffers being used by said respective user is less than said preset number of dedicated buffers allocated to said respective user, then adding the destination address in the packet and an associated port of the plurality of ports to an unallocated dedicated buffer in said dedicated buffer pool; if said processor determines that said in-use number of said dedicated buffers being used by said respective user is not less than said preset number of dedicated buffers allocated to said respective user, then either: said processor determining that said subset number of buffers in said shared buffer pool is exhausted and sending to a network manager or an administrator a notification bit denoting that said subset number of buffers in said shared buffer pool is exhausted and not adding the destination address in the packet to any shared buffer in the shared buffer pool; or said processor determining that said subset number of buffers in said shared buffer pool is not exhausted and adding the destination address in the packet and an associated port of the plurality of ports to an unallocated shared buffer in said shared buffer pool.