IP Library Granted Patent US 7,397,809
Granted Patent B2
US 7,397,809 · App. 10/319,304 · Granted Jul 8, 2008

Scheduling methods for combined unicast and multicast queuing

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 7,397,809
App. No.
10/319,304
Granted
Jul 8, 2008
Kind
B2
Abstract

An improved combined Switching Data Unit (SDU) queuing discipline for unicast and multicast (Protocol Data Unit) PDU forwarding at a switching node is provided. Multicast SDU descriptors are replicated and stored in entries of a First-In/First-Out queue portion of a hybrid output port queue. Unicast SDU descriptors are chained in entries of a linked list queue portion of the hybrid output port queue. Servicing of the hybrid queue uses hybrid queue counters, and inter-departure-counters stored in multicast FIFO queue entries to keep track of the number of unicast SDU linked list entries, to be serviced between the multicast FIFO queue entries. The combined hybrid queue derives storage efficiency benefits from linking unicast PDUs in linked lists and further derives benefits from a simple access to multicast PDU entries.

Claims (23)

1. A hybrid queue for an output port of a protocol data unit (PDU) switching node comprising:

a. a first input first output (FIFO) queue configured to store multicast FIFO entries, each multicast FIFO entry further comprising a multicast switching data unit (SDU) descriptor pointer and an inter-departure-counter specifier holding a number of unicast SDUs to be serviced ahead of the multicast SDU entry; each multicast SDU descriptor comprising a diversity field for specifying the number of output ports the multicast PDU is to be conveyed through;

b. a linked list queue defined by a plurality of unicast SDU entries, each unicast SDU entry further comprising a unicast SDU descriptor, each unicast SDU descriptor further comprising a next SDU descriptor pointer;

c. a unicast forwarding request arrival counter for counting unicast PDU forwarding requests received between multicast FIFO entries, the arrival counter being incremented with each unicast PDU forwarding request arrival, the arrival counter being decremented with each serviced unicast SDU entry if the multicast FIFO queue is empty, the value of the arrival counter being further copied to the inter-departure-counter of a subsequently received multicast FIFO entry upon receiving a multicast PDU forwarding request and the value of the arrival counter being reset to zero thereafter;

d. a unicast PDU departure counter for counting unicast PDU departures between multicast PDU departures in servicing the unicast linked list queue if the multicast FIFO queue is not empty; and

e. a sequencer for servicing unicast linked list entries and multicast FIFO queue entries, the sequencer servicing a next multicast FIFO entry if the value of the departure counter equates the value held in an inter-departure-count held in said next multicast FIFO entry and otherwise servicing the next unicast linked list entry pointed to by a head-of-line pointer specifier;

the combined unicast and multicast PDU forwarding request queuing benefiting from bandwidth efficient FIFO queuing of multicast forwarding requests, and memory storage efficient linked list queuing of unicast PDUs.

2. The hybrid queue of claim 1 , wherein each SDU descriptor pointer is chained to a next SDU pointer field.

3. The hybrid queue of claim 1 , further comprising a fan out diversity field configured to store data related to at least one output port.

4. The hybrid queue of claim 1 , wherein memory space for the FIFO queue is reserved from a control shared buffer.

5. The hybrid queue of claim 1 , wherein the sequencer is configured to select between unicast and multicast SDU FIFO entries.

6. The hybrid queue of claim 1 , further comprising a head-of-line (HOL) pointer specifier, the HOL pointer specifier being maintained by the hybrid queue.

7. A system comprising:

means for storing multicast first input first output (FIFO) entries, each multicast FIFO entry further comprising a multicast switching data unit (SDU) descriptor pointer and an inter-departure-counter specifier holding a number of unicast SDUs to be serviced ahead of the multicast SDU entry, each multicast SDU descriptor comprising a diversity field for specifying the number of output ports a multicast protocol data unit (PDU) is to be conveyed through;

means for queuing a linked list, the means for queuing defined by a plurality of unicast SDU entries, each unicast SDU entry further comprising a unicast SDU descriptor, each unicast SDU descriptor further comprising a next SDU descriptor pointer;

means for counting unicast PDU forwarding requests received between multicast FIFO entries, the means for counting unicast PDU forwarding requests being incremented with each unicast PDU forwarding request arrival, the means for counting unicast PDU forwarding requests being decremented with each serviced unicast SDU entry if the multicast FIFO queue is empty, the value of the means for counting unicast PDU forwarding requests being further copied to the inter-departure-counter of a subsequently received multicast FIFO entry upon receiving a multicast PDU forwarding request and the value of the means for counting unicast PDU forwarding requests being reset to zero thereafter;

means for counting unicast PDU departures between multicast PDU departures in servicing the unicast linked list queue if the multicast FIFO queue is not empty; and

means for servicing unicast linked list entries and multicast FIFO queue entries, the sequencer servicing a next multicast FIFO entry if the value of the departure counter equates the value held in an inter-departure-count held in said next multicast FIFO entry and otherwise servicing the next unicast linked list entry pointed to by a head-of-line pointer specifier, the combined unicast and multicast PDU forwarding request queuing benefiting from bandwidth efficient FIFO queuing of multicast forwarding requests, and memory storage efficient linked list queuing of unicast PDUs.

8. The system of claim 7 , further comprising means for chaining the descriptor pointer to a next SDU pointer field.

9. The system of claim 7 , further comprising means for storing data related to at least one output port.

10. The system of claim 7 , further comprising means for reserving memory space for the FIFO queue from a control shared buffer.

11. The system of claim 7 , further comprising means for selecting between unicast and multicast SDU FIFO entries.

12. The system of claim 7 , further comprising means for utilizing a head-of-line (HOL) pointer specifier, the HOL pointer specifier being maintained by the hybrid queue.

Assignments (11)
SECURITY INTEREST Recorded Sep 27, 2017
From: SYNAPTICS INCORPORATED
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 044037/0896 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 7, 2017
From: CONEXANT SYSTEMS, LLC
To: SYNAPTICS INCORPORATED
Reel/Frame 043786/0267 →
CHANGE OF NAME Recorded Jun 26, 2017
From: CONEXANT SYSTEMS, INC.
To: CONEXANT SYSTEMS, LLC
Reel/Frame 042986/0613 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 23, 2016
From: LAKESTAR SEMI INC.
To: CONEXANT SYSTEMS, INC.
Reel/Frame 038803/0693 →
CHANGE OF NAME Recorded May 20, 2016
From: CONEXANT SYSTEMS, INC.
To: LAKESTAR SEMI INC.
Reel/Frame 038777/0885 →
RELEASE OF SECURITY INTEREST Recorded May 6, 2016
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
To: CONEXANT SYSTEMS, INC.; CONEXANT, INC.; CONEXANT SYSTEMS WORLDWIDE, INC.; BROOKTREE BROADBAND HOLDING, INC.
Reel/Frame 038631/0452 →
SECURITY AGREEMENT Recorded Mar 11, 2010
From: CONEXANT SYSTEMS, INC.; CONEXANT SYSTEMS WORLDWIDE, INC.; CONEXANT, INC.; BROOKTREE BROADBAND HOLDING, INC.
To: THE BANK OF NEW YORK, MELLON TRUST COMPANY, N.A.
Reel/Frame 024066/0075 →
RELEASE OF SECURITY INTEREST Recorded Mar 1, 2010
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A. (FORMERLY, THE BANK OF NEW YORK TRUST COMPANY, N.A.)
To: CONEXANT SYSTEMS, INC.
Reel/Frame 023998/0838 →
SECURITY AGREEMENT Recorded Nov 22, 2006
From: CONEXANT SYSTEMS, INC.
To: BANK OF NEW YORK TRUST COMPANY, N.A.
Reel/Frame 018711/0818 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 10, 2006
From: ZARLINK SEMICONDUCTOR V.N. INC.; ZARLINK SEMICONDUCTOR, INC.
To: CONEXANT SYSTEMS, INC.
Reel/Frame 018498/0775 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 21, 2003
From: WANG, LINGHSIAO
To: ZARLINK SEMICONDUCTOR V.N. INC.
Reel/Frame 013889/0193 →