Systems and methods for expediting the identification of priority information for received packets
First Claim
1. A system for identifying priority level information for a data frame received by a network device, comprising:
- a plurality of input ports configured to receive a plurality of data frames, each of the received data frames specifying at least one of a plurality of classes of service;
a memory configured to store a plurality of priority levels, one for each of the plurality of classes of service, wherein the memory includes a plurality of registers or a lookup table;
an action generator configured to generate an action tag for each of the received data frames, wherein the action generator includes;
an action memory configured to store a plurality of entries, wherein each of the entries includes;
a differentiated services code point (DSCP)/priority field configured to store one of DSCP data and priority data relating to one of the classes of service,a deny field configured to store data indicating whether to drop a corresponding one of the received data frames,a forward-to-management field configured to store data indicating whether to forward the corresponding data frame to a management device,a priority field configured to store data indicating whether the DSCP/priority field stores valid priority data, anda DSCP field configured to store data indicating whether the DSCP/priority field stores valid DSCP data,a decoder configured to identify one of the entries in the action memory in response to the received data frames, anda tag generator configured to generate the action tags based on the identified entries; and
a port vector queue configured to use the action tag from the action generator for each of the received data frames to access the memory to retrieve one of the stored priority levels that corresponds to a class of service specified by each of the received data frames.
1 Assignment
0 Petitions
Accused Products
Abstract
A network device identifies priority level information for data frames it receives. The network device includes input ports, a memory, an action generator, and a port vector queue. The input ports receive the data frames. Each of the received data frames specifies one or more classes of service. The memory stores priority level information corresponding to each of the classes of service. The action generator generates an action tag for each of the received data frames. The port vector queue uses the action tag from the action generator for each of the received data frames to access the memory to identify the priority level information associated with the received data frame.
28 Citations
17 Claims
-
1. A system for identifying priority level information for a data frame received by a network device, comprising:
-
a plurality of input ports configured to receive a plurality of data frames, each of the received data frames specifying at least one of a plurality of classes of service; a memory configured to store a plurality of priority levels, one for each of the plurality of classes of service, wherein the memory includes a plurality of registers or a lookup table; an action generator configured to generate an action tag for each of the received data frames, wherein the action generator includes; an action memory configured to store a plurality of entries, wherein each of the entries includes; a differentiated services code point (DSCP)/priority field configured to store one of DSCP data and priority data relating to one of the classes of service, a deny field configured to store data indicating whether to drop a corresponding one of the received data frames, a forward-to-management field configured to store data indicating whether to forward the corresponding data frame to a management device, a priority field configured to store data indicating whether the DSCP/priority field stores valid priority data, and a DSCP field configured to store data indicating whether the DSCP/priority field stores valid DSCP data, a decoder configured to identify one of the entries in the action memory in response to the received data frames, and a tag generator configured to generate the action tags based on the identified entries; and a port vector queue configured to use the action tag from the action generator for each of the received data frames to access the memory to retrieve one of the stored priority levels that corresponds to a class of service specified by each of the received data frames. - View Dependent Claims (2, 3)
-
-
4. A method for identifying priority level information for a data frame received by a network device, comprising:
-
programming a memory with a plurality of priority levels, one for each class of service of a plurality of classes of service, wherein the memory includes a plurality of registers or a lookup table; receiving a plurality of data frames, each of the received data frames specifying at least one of the classes of service; generating an action tag for each of the received data frames, wherein generating an action tag includes; storing a plurality of entries, wherein each of the entries includes; a differentiated services code point (DSCP)/priority field configured to store one of DSCP data and priority data relating to one of the classes of service, a deny field configured to store data indicating whether to drop a corresponding one of the received data frames, a forward-to-management field configured to store data indicating whether to forward the corresponding data frame to a management device, a priority field configured to store data indicating whether the DSCP/priority field stores valid priority data, and a DSCP field configured to store data indicating whether the DSCP/priority field stores valid DSCP data, identifying one of the stored entries in response to the received data frames, and generating the action tags based on the identified entries; and accessing the memory to retrieve one of the plurality of priority levels that corresponds to a class of service specified by each of the received data frames. - View Dependent Claims (5, 6)
-
-
7. A multiport network device, comprising:
-
a plurality of input ports configured to receive a plurality of data frames, each of the data frames specifying at least one of a plurality of classes of service; a plurality of output ports configured to transmit at least some of the data frames; a plurality of priority queues associated with each of the output ports; a memory configured to store a plurality of priority levels, one for each of the plurality of classes of service, wherein the memory is configured to be preprogrammed with the plurality of priority levels by a host device; an action generator including; an action memory configured to store a plurality of entries, wherein each of the entries includes; a first field configured to store differentiated services code point (DSCP) data or priority data relating to one of the classes of service, a second field configured to store data indicating whether the first field stores valid priority data, and a third field configured to store data indicating whether the first field stores valid DSCP data, a decoder configured to identify one of the entries in the action memory for each of the data frames, and a tag generator configured to generate an action tag based on the entry identified for each of the data frames; and a port vector queue configured to access the memory to retrieve one of the stored priority levels that corresponds to a class of service specified by each of the data frames using the action tag from the action generator for the data frame and identify one of the priority queues based on the identified priority level information for the data frame. - View Dependent Claims (8, 9, 10)
-
-
11. A multiport network device, comprising:
-
a plurality of input ports configured to receive a plurality of data frames, each of the data frames specifying at least one of a plurality of classes of service; a plurality of output ports configured to transmit at least some of the data frames; a plurality of priority queues associated with each of the output ports; a memory configured to store priority level information corresponding to each of the plurality of classes of service; an action generator including an action memory configured to store a plurality of entries, wherein each of the entries includes; a first field configured to store differentiated services code point (DSCP) data or priority data relating to one of the classes of service, a second field configured to store data indicating whether the first field stores valid priority data, and a third field configured to store data indicating whether the first field stores valid DSCP data, a decoder configured to identify one of the entries in the action memory for each of the data frames, and a tag generator configured to generate an action tag based on the entry identified for each of the data frames; a port vector queue configured to access the memory to identify the priority level information associated with each of the data frames using the action tag from the action generator for the data frame and identify one of the priority queues based on the identified priority level information for the data frame; and a port filter configured to apply policy rules to the data frames to identify one or more policy equations corresponding to the data frames, wherein the decoder is configured to receive the one or more policy equations corresponding to one of the data frames from the port filter, select one of the one or more policy equations, and use the selected policy equation to identify one of the entries in the action memory. - View Dependent Claims (12, 13, 14)
-
-
15. A system for identifying priority level information for a data frame received by a network device, comprising:
-
a plurality of input ports configured to receive a plurality of data frames, each of the received data frames specifying at least one of a plurality of classes of service; a memory configured to store priority level information corresponding to each of the plurality of classes of service, wherein the memory includes one of a plurality of registers or a lookup table; an action generator configured to generate an action tag for each of the received data frames, wherein the action generator includes; an action memory configured to store a plurality of entries, wherein each of the entries includes; a differentiated services code point (DSCP)/priority field configured to store one of DSCP data and priority data relating to one of the classes of service, a deny field configured to store data indicating whether to drop a corresponding one of the received data frames, a forward-to-management field configured to store data indicating whether to forward the corresponding data frame to a management device, a priority field configured to store data indicating whether the DSCP/priority field stores valid priority data, and a DSCP field configured to store data indicating whether the DSCP/priority field stores valid DSCP data, a decoder configured to identify one of the entries in the action memory in response to the received data frames, and a tag generator configured to generate the action tags based on the identified entries; and a port vector queue configured to use the action tag from the action generator for each of the received data frames to access the memory to identify the priority level information associated with the received data frame. - View Dependent Claims (16, 17)
-
Specification