IP Library Granted Patent US 6,839,794
Granted Patent B1
US 6,839,794 · App. 09/977,529 · Granted Jan 4, 2005

Method and system to map a service level associated with a packet to one of a number of data streams at an interconnect device

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 6,839,794
App. No.
09/977,529
Granted
Jan 4, 2005
Kind
B1
Abstract

A method and system automatically map a service level to a data stream within an interconnect device. A plurality of data streams is selected, each of the plurality of data streams being associated with a respective output port of the interconnect device. The plurality of data streams is selected based on (1) an input port of the interconnect device on which a packet is received and (2) a service level associated with the packet. In parallel with the selecting of the plurality of data streams, an output port of the interconnect device is selected to receive the packet from the input port of the interconnect device on which the packet is received. A data stream, from among the selected plurality of data streams, is selected utilizing the selected output port, the selected data stream being selected as a data stream into which the packet is included for transmission from the selected output port of the interconnect device.

Claims (43)

1. A method automatically to map a service level to a data stream within an interconnect device, the method including:

selecting a plurality of data streams, each of the plurality of data streams being associated with a respective output port of the interconnect device, the plurality of data streams being selected based on (1) an input port of the interconnect device on which a packet is received and (2) a service level associated with the packet;

in parallel with the selecting of the plurality of data streams, selecting an output port of the interconnect device to which to transfer the packet from the input port of the interconnect device on which the packet is received; and

selecting a data stream, from among the selected plurality of data streams, utilizing the selected output port, the selected data stream being selected as a data stream into which the packet is included for transmission from the selected output port of the interconnect device.

2. The method of claim 1 wherein the selecting of the selected plurality of data streams and the selecting of the selected output port are performed responsive to receipt of a request, associated with the packet, at an arbiter of the interconnect device.

3. The method of claim 1 wherein the selecting of the selected plurality of data streams and the selecting of the selected output port are performed concurrently during a common clock cycle.

4. The method of claim 1 wherein the selecting of the selected plurality of data streams includes selecting a first entry within a mapping table, the first entry identifying the plurality of data streams and the association between each of the plurality of data streams and a respective output port.

5. The method of claim 4 wherein the input port and the service level associated with the packet are utilized to perform a lookup on the mapping table.

6. The method of claim 1 wherein each of the plurality of data streams comprises a virtual lane.

7. The method of claim 1 wherein the selecting of the selected output port includes selecting a first entry within a forwarding table.

8. The method of claim 7 wherein a destination address associated with the packet is utilized to perform a lookup in the forwarding table.

9. The method of claim 7 wherein the forwarding table comprises a multicast forwarding table, the first entry identifies a plurality of output ports, and the selecting of the selected output port includes selecting the selected output port from among the plurality of output ports identified by the first entry.

10. The method of claim 4 including constructing the mapping table utilizing a plurality of service level-to-virtual lane mapping records received at the interconnect device from a subnet manager, wherein each of the plurality of service level-to-virtual lane mapping records is indexed by an input port-output port combination.

11. The method of claim 10 wherein the construction of the mapping table includes performing an index conversion on each of the plurality of service level-to-virtual lane mapping records to create a plurality of output port-to-virtual lane mapping records indexed by an input port-service level combination.

12. The method of claim 11 wherein the construction of the mapping table includes writing each of the plurality of output port-to-virtual lane mapping records into the mapping table.

13. A system automatically to map a service level to a data stream within an interconnect device, the system including:

a first memory structure from which to select a plurality of data streams, each of the plurality of data streams being associated with a respective output port of the interconnect device, the plurality of data streams being selected based on (1) an input port of the interconnect device on which a packet is received and (2) a service level associated with the packet;

a second memory structure from which, in parallel with the selecting of the plurality of data streams from the first memory structure, to select an output port of the interconnect device to which to transfer the packet from the input port of the interconnect device on which the packet is received; and

a selector to select a data stream, from among the selected plurality of data streams, utilizing the selected output port, the selected data stream being selected as a data stream into which the packet is included for transmission from the selected output port of the interconnect device.

14. The system of claim 13 wherein the first memory structure from which to select the selected plurality of data streams and the second memory structure from which to select the selected output port are associated with arbiter of the interconnect device, and the selection of the plurality of data streams and the selection of the selected output port of performed responsive to receipt of the arbiter of a request for resources, the request being associated with a packet received at the interconnect device.

15. The system of claim 13 wherein the selecting of the selected plurality of data streams and the selecting of the selected output port are performed concurrently during a common clock cycle.

16. The system of claim 13 wherein the selecting of the selected plurality of data streams includes selecting a first entry within a mapping table, the first entry identifying the plurality of data streams and the association between each of the plurality of data streams and a respective output port.

17. The system of claim 16 wherein the input port and the service level associated with the packet are utilized to perform a lookup on the mapping table.

18. The system of claim 13 wherein each of the plurality of data streams comprises a virtual lane.

19. The system of claim 13 wherein the selecting of the selected output port includes selecting a first entry within a forwarding table stored within the second memory structure.

20. The system of claim 19 wherein a destination address associated with the packet is utilized to perform a lookup in the forwarding table stored within the second memory structure.

21. The system of claim 20 wherein the forwarding table comprises a multicast forwarding table, the first entry identifies a plurality of output ports, and the selecting of the selected output port includes selecting the selected output port from among the plurality of output ports identified by the first entry.

22. The system of claim 16 including a translator to construct the mapping table utilizing a plurality of service level-to-virtual lane mapping records received at the interconnect device from a subnet manager, wherein each of the plurality of service level-to-virtual lane mapping records is indexed by an input port-output port combination.

23. The system of claim 10 wherein the translator is to perform an index conversion on each of the plurality of service level-to-virtual lane mapping records to create a plurality of output port-to-virtual lane mapping records indexed by an input port-service level combination.

24. The system of claim 11 wherein the translator is to write each of the plurality of output port-to-virtual lane mapping records into the mapping table.

25. A system automatically to map a service level to a data stream within an interconnect device, the system including:

a first means from which to select a plurality of data streams, each of the plurality of data streams being associated with a respective output port of the interconnect device, the plurality of data streams being selected based on (1) an input port of the interconnect device on which a packet is received and (2) a service level associated with the packet;

a second means from which, in parallel with the selecting of the plurality of data streams from the first memory structure, to select an output port of the interconnect device to which to transfer the packet from the input port of the interconnect device on which the packet is received; and

third means for selecting a data stream, from among the selected plurality of data streams, utilizing the selected output port, the selected data stream being selected as a data stream into which the packet is included for transmission from the selected output port of the interconnect device.

26. A machine-readable medium storing a description of a circuit arrangement, said circuit arrangement including:

a first memory structure from which to select a plurality of data streams, each of the plurality of data streams being associated with a respective output port of an interconnect device the plurality of data streams being selected based on (1) an input port of the interconnect device on which a packet is received and (2) a service level associated with the packet;

a second memory structure from which, in parallel with the selecting of the plurality of data streams from the first memory structure, to select an output port of the interconnect device to which to transfer the packet from the input port of the interconnect device on which the packet is received; and

a selector to select a data stream, from among the selected plurality of data streams, utilizing the selected output port, the selected data stream being selected as a data stream into which the packet is included for transmission from the selected output port of the interconnect device.

27. The machine-readable medium of claim 26 wherein the description comprises a behavioral level description of the circuit.

28. The machine-readable medium of claim 27 wherein the behavioral level description is compatible with a VHDL format.

29. The machine-readable medium of claim 27 wherein the behavioral level description is compatible with a Verilog format.

30. The machine-readable medium of claim 26 wherein the description comprises a register transfer level netlist.

31. The machine-readable medium of claim 26 wherein the description comprises a transistor level netlist.

Assignments (8)
RELEASE OF SECURITY INTEREST Recorded May 29, 2018
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: MICROSEMI STORAGE SOLUTIONS, INC.; MICROSEMI STORAGE SOLUTIONS (U.S.), INC.
Reel/Frame 046251/0271 →
CHANGE OF NAME Recorded Jun 16, 2017
From: MICROSEMI STORAGE SOLUTIONS (U.S.), INC.
To: MICROSEMI SOLUTIONS (U.S.), INC.
Reel/Frame 042836/0046 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NAME OF THE ASSIGNEE PREVIOUSLY RECORDED ON REEL 017207 FRAME 0020. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded May 6, 2016
From: AGILENT TECHNOLOGIES, INC.
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 038633/0001 →
CHANGE OF NAME Recorded Mar 22, 2016
From: PMC-SIERRA US, INC.
To: MICROSEMI STORAGE SOLUTIONS (U.S.), INC.
Reel/Frame 038213/0291 →
PATENT SECURITY AGREEMENT Recorded Feb 3, 2016
From: MICROSEMI STORAGE SOLUTIONS, INC. (F/K/A PMC-SIERRA, INC.); MICROSEMI STORAGE SOLUTIONS (U.S.), INC. (F/K/A PMC-SIERRA US, INC.)
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037689/0719 →
RELEASE OF SECURITY INTEREST Recorded Feb 1, 2016
From: BANK OF AMERICA, N.A.
To: PMC-SIERRA, INC.; PMC-SIERRA US, INC.; WINTEGRA, INC.
Reel/Frame 037675/0129 →
SECURITY INTEREST IN PATENTS Recorded Aug 6, 2013
From: PMC-SIERRA, INC.; PMC-SIERRA US, INC.; WINTEGRA, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 030947/0710 →
MERGER Recorded Jan 22, 2010
From: PALAU ACQUISITION CORPORATION
To: PMC-SIERRA US, INC.
Reel/Frame 023832/0707 →