IP Library Granted Patent US 9,491,108
Granted Patent B2
US 9,491,108 · App. 13/894,952 · Granted Nov 8, 2016

Extended priority for ethernet packets

Inventors: Michael Shamis (Netanya, IL); Youval Nachum (Holon, IL)
Assignee: Marvell World Trade Ltd.
H04L47/31H04L12/465H04L47/24H04L47/2491
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,491,108
App. No.
13/894,952
Granted
Nov 8, 2016
Kind
B2
Abstract

A network device includes a packet ingress configured to receive packets from a network, and a packet processor. The packet processor is configured to identify a first packet of the received packets as a double VLAN tagged packet including a first priority field associated with a first VLAN tag and a second priority field associated with a second VLAN tag. The packet processor is also configured to assign an extended priority profile to the first packet based on one or more bits of the first priority field and one or more bits of the second priority field, the extended priority profile being among a group of possible extended priority profiles that is larger than any group of possible priority profiles associated with a single VLAN tag of the first packet. The packet processor is further configured to process the first packet according to the assigned extended priority profile.

Claims (52)

1. A network device comprising:

a packet ingress configured to receive packets from a network; and

a packet processor configured to

identify a first packet of the received packets as a double virtual local area network (VLAN) tagged packet including (i) a first priority field associated with a first VLAN tag and (ii) a second priority field associated with a second VLAN tag,

in response to identifying the first packet as a double VLAN tagged packet, assign an extended priority profile to the first packet based on (i) one or more bits of the first priority field associated with the first VLAN tag of the first packet and (ii) one or more bits of the second priority field associated with the second VLAN tag of the first packet, the extended priority profile being among a group of possible extended priority profiles, the group of possible extended priority profiles corresponding to a first group of different priorities of service of packets that is larger than any second group of different priorities of service of packets, the second group of different priorities of service being associated with a single one of the first priority field or the second priority field of the first packet, and

process the first packet according to the assigned extended priority profile.

2. A network device according to claim 1 , further comprising a plurality of queues, and wherein the packet processor is configured to process the first packet according to the assigned extended priority profile at least in part by:

selecting one of the plurality of queues based on the assigned extended priority profile; and

sending the first packet, a portion of the first packet, or a packet descriptor associated with the first packet to the selected queue.

3. A network device according to claim 2 , wherein each profile in the group of possible extended priority profiles corresponds to a different one of the plurality of queues.

4. A network device according to claim 1 , wherein the group of possible extended priority profiles is larger than a combination of (i) a first group of possible priority profiles associated with the first priority field and (ii) a second group of possible priority profiles associated with the second priority field.

5. A network device according to claim 4 , wherein:

the first group of possible priority profiles consists of 2 M priority profiles, where M is an integer greater than zero;

the second group of possible priority profiles consists of 2 N priority profiles, where N is an integer greater than zero; and

the group of possible extended priority profiles consists of 2 (M+N) priority profiles.

6. A network device according to claim 1 , wherein the packet processor is configured to assign the extended priority profile to the first packet at least in part by:

mapping the one or more bits of the first priority field of the first packet and the one or more bits of the second priority field of the first packet to the extended priority profile.

7. A network device according to claim 6 , wherein the packet processor is configured to map the one or more bits of the first priority field of the first packet and the one or more bits of the second priority field of the first packet to the extended priority profile at least in part by:

mapping the one or more bits of the first priority field of the first packet and the one or more bits of the second priority field of the first packet to extended priority bits; and

mapping the extended priority bits to the extended priority profile.

8. A network device according to claim 6 , wherein the packet processor is configured to assign the extended priority profile to the first packet further by:

overwriting at least a portion of the first priority field of the first packet and at least a portion of the second priority field of the first packet with new bit values representing the extended priority profile.

9. A network device according to claim 1 , wherein the assigned extended priority profile corresponds to:

a priority level indicated by a first set of one or more bits distributed among at least one of (i) the one or more bits of the first priority field of the first packet and (ii) the one or more bits of the second priority field of the first packet; and

a priority sub-level indicated by a second set of one or more bits distributed among at least one of (i) the one or more bits of the first priority field of the first packet and (ii) the one or more bits of the second priority field of the first packet.

10. A network device according to claim 1 , wherein:

the packet ingress is configured to receive Ethernet packets from the network; and

the packet processor is configured to identify the first packet as a double VLAN tagged packet at least in part by identifying the first packet as one of (i) a Transparent Interconnection of Lots of Links (TRILL) packet, (ii) a Shortest Path Bridging (SPB) packet, or (iii) an IEEE 802.1ad packet.

11. A network device according to claim 1 , wherein the packet processor is configured to identify the first packet as a double VLAN tagged packet at least in part by determining that the first packet was received via a port corresponding to double VLAN tagged packets.

12. A network device according to claim 1 , further comprising a packet egress, wherein:

the packet ingress is configured to receive the packets from a legacy network that is not configured to support the extended priority profile; and

the packet processor is further configured to transmit the first packet, via the packet egress, to a non-legacy network that is configured to support the extended priority profile.

13. A network device according to claim 1 , wherein at least a portion of the packet processor resides within the packet ingress.

14. A method in a network device coupled to a network, the method comprising:

receiving a packet from the network;

identifying the packet as a double VLAN tagged packet including (i) a first priority field associated with a first VLAN tag and (ii) a second priority field associated with a second VLAN tag;

in response to identifying the first packet as a double VLAN tagged packet, assigning an extended priority profile to the packet based on (i) one or more bits of the first priority field associated with the first VLAN tag of the packet and (ii) one or more bits of the second priority field associated with the second VLAN tag of the packet, the extended priority profile being among a group of possible extended priority profiles, the group of possible extended priority profiles corresponding to a first group of different priorities of service of packets that is larger than any second group of different priorities of service of packets, the second group of different priorities of service being associated with a single one of the first priority field or the second priority field of the packet; and

processing the packet according to the assigned extended priority profile.

15. A method according to claim 14 , wherein processing the packet according to the assigned extended priority profile includes:

selecting one of a plurality of queues based on the assigned extended priority profile, each queue of the plurality of queues corresponding to a different one of the possible extended priority profiles; and

sending the packet, a portion of the packet, or a packet descriptor associated with the packet to the selected queue.

16. A method according to claim 14 , wherein assigning an extended priority profile to the packet includes:

assigning the extended priority profile from among a group of possible extended priority profiles that is larger than a combination of (i) a first group of possible priority profiles associated with the first priority field and (ii) a second group of possible priority profiles associated with the second priority field.

17. A method according to claim 14 , wherein assigning an extended priority profile to the packet includes:

mapping the one or more bits of the first priority field of the packet and the one or more bits of the second priority field of the packet to the extended priority profile.

18. A method according to claim 14 , wherein assigning an extended priority profile to the packet includes:

assigning an extended priority profile that corresponds to

a priority level indicated by a first set of one or more bits distributed among at least one of (i) the one or more bits of the first priority field of the packet and (ii) the one or more bits of the second priority field of the packet, and

a priority sub-level indicated by a second set of one or more bits distributed among at least one of (i) the one or more bits of the first priority field of the packet and (ii) the one or more bits of the second priority field of the packet.

19. A method according to claim 14 , wherein:

receiving a packet from the network includes receiving an Ethernet packet from the network; and

identifying the packet as a double VLAN tagged packet includes identifying the Ethernet packet as one of (i) a TRILL packet, (ii) an SPB packet, or (iii) an IEEE 802.1ad packet.

Assignments (7)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2020
From: MARVELL WORLD TRADE LTD.
To: MARVELL INTERNATIONAL LTD.
Reel/Frame 051778/0537 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 12, 2013
From: SHAMIS, MICHAEL; NACHUM, YOUVAL
To: MARVELL ISRAEL (M.I.S.L) LTD.
Reel/Frame 031586/0962 →
LICENSE Recorded Nov 12, 2013
From: MARVELL WORLD TRADE LTD.
To: MARVELL INTERNATIONAL, LTD.
Reel/Frame 031587/0072 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 12, 2013
From: MARVELL ISRAEL (M.I.S.L) LTD.
To: MARVELL INTERNATIONAL LTD.
Reel/Frame 031587/0016 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 12, 2013
From: MARVELL INTERNATIONAL, LTD.
To: MARVELL WORLD TRADE LTD.
Reel/Frame 031587/0047 →
Continuity (3)
Provisional Application 61647164 · May 15, 2012
Provisional Application 61649554 · May 21, 2012
Related Publication 20130308648A1 · Nov 21, 2013