IP Library Granted Patent US 9,769,080
Granted Patent B2
US 9,769,080 · App. 14/794,020 · Granted Sep 19, 2017

Method and apparatus for reducing pool starvation in a shared memory switch

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,769,080
App. No.
14/794,020
Granted
Sep 19, 2017
Kind
B2
Abstract

A switch includes a reserved pool of buffers in a shared memory. The reserved pool of buffers is reserved for exclusive use by an egress port. The switch includes pool select logic which selects a free buffer from the reserved pool for storing data received from an ingress port to be forwarded to the egress port. The shared memory also includes a shared pool of buffers. The shared pool of buffers is shared by a plurality of egress ports. The pool select logic selects a free buffer in the shared pool upon detecting no free buffer in the reserved pool. The shared memory may also include a multicast pool of buffers. The multicast pool of buffers is shared by a plurality of egress ports. The pool select logic selects a free buffer in the multicast pool upon detecting an IP Multicast data packet received from an ingress port.

Claims (13)

1. A switch comprising:

a plurality of reserved pools of buffers in a shared memory, each reserved pool of buffers associated with one of a plurality of egress ports and reserved to store data to be forwarded to the egress port;

a shared pool of buffers in the shared memory, the shared pool of buffers configured to store data to be forwarded to any of the plurality of egress ports;

a multicast pool of buffers in the shared memory reserved to store Multicast packets received from any ingress port to be forwarded to at least one egress port to members of a Multicast group; and

a pool select logic comprising a first counter and a second counter, the pool select logic configured to select a free buffer to allocate from the multicast pool of buffers based on counts stored in: i) the first counter configured to count a total number of free buffers; and ii) the second counter configured to count a number of buffers in the multicast pool of buffers, and

wherein the first counter is further configured to be preset to a total number of buffers in the shared memory which is less than a sum of: i) free buffers in the shared pool of buffers; ii) free buffers in the reserved pools of buffers; and iii) free buffers in the multicast pool of buffers.

2. The switch as claimed in claim 1 wherein the pool select logic is further configured to select a free buffer in the shared pool when no free buffer is detected in a reserved pool that would otherwise be selected.

3. The switch as claimed in claim 1 wherein the pool select logic is further configured to determine the availability of a free buffer in the shared memory dependent on the number of free buffers in the shared memory as stored in the counter of the total number of free buffers.

4. The switch as claimed in claim 1 wherein the Multicast packets are IP Multicast packets and the members of the Multicast group comprise members of an IP Multicast group.

5. The switch as claimed in claim 1 further comprising a plurality of ingress ports each configured to receive data packets serially.

6. The switch as claimed in claim 1 further comprising a port queue counter register configured to store the number of port queues that the Multicast packet has been queued on.

7. The switch as claimed in claim 6 wherein the port queue counter register is evaluated to determine if a copy of the Multicast packet has been forwarded to all members of the Multicast group.

8. The switch as claimed in claim 7 wherein the Multicast packets are IP Multicast packets and the members of the Multicast group comprise members of an IP Multicast group.

Assignments (2)
RELEASE OF SECURITY INTEREST Recorded Nov 2, 2020
From: CPPIB CREDIT INVESTMENTS INC.
To: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.
Reel/Frame 054278/0333 →
AMENDED AND RESTATED U.S. PATENT SECURITY AGREEMENT (FOR NON-U.S. GRANTORS) Recorded Aug 22, 2018
From: CONVERSANT INTELLECTUAL PROPERTY MANAGEMENT INC.
To: CPPIB CREDIT INVESTMENTS, INC.
Reel/Frame 046900/0136 →