IP Library Granted Patent US 8,310,927
Granted Patent B1
US 8,310,927 · App. 10/832,783 · Granted Nov 13, 2012

Priority scheme for control traffic in network switches

Assignee: Marvell International Ltd.
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 8,310,927
App. No.
10/832,783
Granted
Nov 13, 2012
Kind
B1
Abstract

A method, apparatus, and computer program media for a network device comprises a processor; a forwarding engine comprising a plurality of ports to receive packets of data, wherein the packets comprise control packets each addressed to the processor and comprising a priority code representing one of M priorities; N queues each associated with one or more of the M priorities; a decoder to enqueue each of the control packets to one of the N queues according to the priority code in the control packet and a mapping between the N queues and the M priorities; and a scheduler to pass the control packets from the n queues to the processor according to a priority scheme for the N queues.

Claims (101)

1. A network device comprising:

a first control plane processor configured to process a plurality of control packets that are i) generated by a second control plane processor separate from the first control plane processor, and ii) addressed to the first control plane processor; and

a first forwarding engine provided separately from the first control plane processor and configured to forward the plurality of control packets to the first control plane processor in a prioritized order, the first forwarding engine comprising

a plurality of first ports to receive the plurality of control packets, each control packet comprising a priority code inserted into an unused header field thereof and representing one of M priorities,

N queues each associated with one or more of the M priorities,

a decoder coupled to the plurality of first ports and the N queues, wherein the decoder is configured to enqueue a received control packet to one of the N queues based on a decoding of the priority code in the received control packet and a mapping between the N queues and the M priorities, wherein the decoding of the priority code in the received control packet provides sufficient information for selecting an appropriate one of the N queues for enqueuing the received control packet according to the mapping, and

a scheduler to pass the control packets from the N queues to the first control plane processor according to a priority scheme for the N queues.

2. An Ethernet switch comprising the network device of claim 1 .

3. The Ethernet switch of claim 2 , wherein the Ethernet switch is compliant with IEEE 802.3ab.

4. The network device of claim 1 , wherein M=N.

5. The network device of claim 1 , wherein the decoder comprises a demultiplexer.

6. A data communications system comprising:

a first network device comprising the network device of claim 1 ; and

a second network device provided separately from the first network device and in communication with the first network device via a network coupled therebetween, the second network device comprising,

the second control plane processor, wherein the second control plane processor is configured to generate the priority codes for the control packets based on characteristics of the control packets, and

a second forwarding engine comprising at least one second port to transmit the control packets to the first network device via the network.

7. The data communications system of claim 6 , wherein characteristics of the control packets are selected from the group consisting of processor traffic protocols;

network protocols;

applications; and

addresses.

8. The data communications system of claim 7 , wherein the processor traffic protocols are selected from the group consisting of:

Open Shortest Path First Protocol (OSPF); and

Routing Information Protocol (RIP).

9. The data communications system of claim 7 , wherein the network protocols are selected from the group consisting of:

Dynamic Host Configuration Protocol (DHCP);

Simple Network Management Protocol (SNMP);

Internet Group Management Protocol (IGMP);

Trivial File Transfer Protocol (TFTP);

File Transfer Protocol (FTP);

Border Gateway Protocol (BGP); and

Transmission Control Protocol (TCP).

10. The data communications system of claim 7 , wherein the applications are selected from the group consisting of:

ping; and

telnet.

11. A method for prioritizing control packet traffic, comprising:

receiving, via a plurality of first ports of a first network device, a plurality of control packets addressed to a first control plane processor of the first network device, each control packet comprising a priority code inserted into an unused header field thereof and representing one of M priorities, and each control packet generated by a second control plane processor separate from the first control plane processor;

decoding, with a forwarding engine of the first network device, the priority code in each received control packet;

enqueuing, with the forwarding engine, each received control packet to one of N queues based on (i) the decoding of the priority code in the received control packet and (ii) a mapping between the N queues and the M priorities, wherein the decoding of the priority code in the received control packet provides sufficient information for selecting an appropriate one of the N queues for enqueuing the received control packet according to the mapping; and

passing, with a scheduler, the control packets from the N queues to the first control plane processor according to a priority scheme for the N queues so that the plurality of control packets addressed to the first control plane processor are forwarded from the forwarding engine to the first control plane processor in a prioritized order.

12. The method of claim 1 , wherein the enqueuing the received packet based on the mapping comprises using a mapping between the same number of queues and priorities.

13. The method of claim 11 , further comprising:

at a second network device provided separately from the first network device and in communication with the first network device via a network coupled therebetween,

generating, with the second control plane processor, the priority codes for the control packets based on characteristics of the control packets, and

transmitting the control packets to the first network device.

14. The method of claim 13 , wherein the generating the priority codes for the control packets comprises determining the priority codes based on the characteristics of the control packets, wherein the characteristics of the control packets are selected from the group consisting of:

processor traffic protocols;

network protocols;

applications; and

addresses.

15. The method of claim 14 , wherein the determining the priority codes comprises determining the priority codes based on the processor traffic protocols, wherein the processor traffic protocol are selected from the group consisting of:

Open Shortest Path First Protocol (OSPF); and

Routing Information Protocol (RIP).

16. The method of claim 14 , wherein the determining the priority codes comprises determining the priority codes based on the network protocols, wherein the network protocols are selected from the group consisting of:

Dynamic Host Configuration Protocol (DHCP);

Simple Network Management Protocol (SNMP);

Internet Group Management Protocol (IGMP);

Trivial File Transfer Protocol (TFTP);

File Transfer Protocol (FTP);

Border Gateway Protocol (BGP); and

Transmission Control Protocol (TCP).

17. The method of claim 14 , wherein the determining the priority codes comprises determining the priority codes based on the applications, wherein the applications are selected from the group consisting of:

ping; and

telnet.

18. A network system comprising:

a first network device comprising a first control plane processor; and

a second network device provided separately from the first network device and in communication with the first network device via a network coupled therebetween, the second network device comprising:

a plurality of ports configured to receive a plurality of control packets i) generated by a second control plane processor separate from the first control plane processor, and ii) addressed to the first control plane processor of the first network device; and

a classifier configured to determine one of a plurality of priorities for each of the control packets based on characteristics of the control packets, and to insert a priority code representing the determined priority into an unused header field of each of the control packets,

wherein the ports transmit the control packets comprising the priority codes to the first network device via the network, and

wherein the first network device is configured to enqueue a control packet received from the second network device via the network to one of a plurality of queues based on a decoding of the priority code in the received control packet and a mapping between the plurality of queues and a plurality of priorities, wherein the decoding of the priority code in the received control packet provides sufficient information for selecting an appropriate one of the plurality of queues for enqueuing the received control packet according to the mapping.

19. An Ethernet switch comprising the second network device of claim 18 .

20. The Ethernet switch of claim 19 , wherein the Ethernet switch is compliant with IEEE 802.3ab.

21. The network system of claim 18 , wherein the characteristics of the control packets are selected from the group consisting of:

processor traffic protocols;

network protocols;

applications; and

addresses.

22. The network system of claim 21 , wherein the processor traffic protocols are selected from the group consisting of:

Open Shortest Path First Protocol (OSPF); and

Routing Information Protocol (RIP).

23. The network system of claim 21 , wherein the network protocols are selected from the group consisting of:

Dynamic Host Configuration Protocol (DHCP);

Simple Network Management Protocol (SNMP);

Internet Group Management Protocol (IGMP);

Trivial File Transfer Protocol (TFTP);

File Transfer Protocol (FTP);

Border Gateway Protocol (BGP); and

Transmission Control Protocol (TCP).

24. The network system of claim 21 , wherein the applications are selected from the group consisting of:

ping; and

telnet.

25. A data communication system comprising:

a first network device comprising the network device of claim 1 ; and

a second network device provided separately from the first network device and in communication with the first network device via a network coupled therebetween, the second network device comprising,

a plurality of second ports configured to receive the plurality of control packets addressed to the first control plane processor of the first network device; and

a classifier configured to determine one of the M priorities for each of the control packets and insert a priority code representing the determined priority into the control packet.

26. The data communication system of claim 25 , wherein the classifier determines one of the M priorities for each control packet based on at least one of processor traffic protocols, network protocols, applications and addresses.

27. The data communication system of claim 25 , wherein the second network device further comprises:

a plurality of third ports coupled to the network; and

a second forwarding engine comprising the classifier,

wherein the second forwarding engine is configured to transmit each control packet comprising the priority code to the first network device via the plurality of third ports.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2020
From: CAVIUM INTERNATIONAL
To: MARVELL ASIA PTE, LTD.
Reel/Frame 053475/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2020
From: MARVELL INTERNATIONAL LTD.
To: CAVIUM INTERNATIONAL
Reel/Frame 052918/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE RESIDENCE COUNTRY OF THE ASSIGNEE WRONGLY LISTED AS ILLINOIS PREVIOUSLY RECORDED ON REEL 015272 FRAME 0164. ASSIGNOR(S) HEREBY CONFIRMS THE CORRECT RESIDENCE COUNTRY OF THE ASSIGNEE IS ISRAEL. Recorded Aug 9, 2012
From: COHEN, YUVAL
To: RADLAN COMPUTER COMMUNICATIONS, LTD.
Reel/Frame 028768/0664 →
CONFIRMATION AGREEMENT Recorded Mar 30, 2011
From: MARVELL SOFTWARE SOLUTIONS ISRAEL LTD.
To: MARVELL INTERNATIONAL LIMITED
Reel/Frame 026064/0779 →
CHANGE OF NAME Recorded Mar 30, 2011
From: RADLAN COMPUTER COMMUNICATIONS LTD.
To: MARVELL SOFTWARE SOLUTIONS ISRAEL LTD.
Reel/Frame 026064/0869 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2004
From: COHEN, YUVAL
To: RADLAN COMPUTER COMMUNICATIONS, LTD.
Reel/Frame 015272/0164 →