Flexible processor of a port extender device
First Claim
1. A method for processing of packets ingressing a network device, the method comprisingreceiving a packet at a port of the network device;
- performing, with an ingress processor of the network device, ingress processing of the packet, the ingress processing including;
determining a packet type, among a plurality of packet types supported by the network device, corresponding to the packet,identifying, based on the packet type, one or more header fields to be extracted from a header of the packet, including i) determining one or more locations in a memory using the determined packet type, the memory storing respective information identifying header fields to be extracted from headers of packets corresponding to respective packet types among the plurality of packet types, and ii) retrieving, from the determined one or more locations in the memory a) respective indicators of locations of the one or more header fields to be extracted from the header of the packet and b) respective indicators of sizes of the one or more header fields to be extracted from the header of the packet, andextracting, based on i) the respective indicators of the locations retrieved from the memory and ii) the respective identifiers of the sizes retrieved from the memory, the one or more header fields from the header of the packet; and
processing, with a packet processor of the network device, the packet based on the one or more header fields extracted from the header, the processing including determining at least one port to which to forward the packet.
7 Assignments
0 Petitions
Accused Products
Abstract
A packet type corresponding to a packet received by a network device is determined. Based on the packet type, one or more header fields to be extracted from a header of the packet are identified. Identifying the one or more header fields includes extracting, from a memory based on the packet type, respective indicators of locations of the one or more header fields and respective indicators of sizes of the one or more header fields. The one or more identified header fields from the header of the packet, based on the respective indicators of locations of the one or more header fields and respective indicators of sizes of the one or more header fields. The packet is then processed based on the one or more header fields extracted from the header. The processing includes deter mining at least one port to which to forward the packet.
-
Citations
22 Claims
-
1. A method for processing of packets ingressing a network device, the method comprising
receiving a packet at a port of the network device; -
performing, with an ingress processor of the network device, ingress processing of the packet, the ingress processing including; determining a packet type, among a plurality of packet types supported by the network device, corresponding to the packet, identifying, based on the packet type, one or more header fields to be extracted from a header of the packet, including i) determining one or more locations in a memory using the determined packet type, the memory storing respective information identifying header fields to be extracted from headers of packets corresponding to respective packet types among the plurality of packet types, and ii) retrieving, from the determined one or more locations in the memory a) respective indicators of locations of the one or more header fields to be extracted from the header of the packet and b) respective indicators of sizes of the one or more header fields to be extracted from the header of the packet, and extracting, based on i) the respective indicators of the locations retrieved from the memory and ii) the respective identifiers of the sizes retrieved from the memory, the one or more header fields from the header of the packet; and processing, with a packet processor of the network device, the packet based on the one or more header fields extracted from the header, the processing including determining at least one port to which to forward the packet. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A network device, comprising
a plurality of ports configured to receive and to transmit packets; -
a memory storing respective information identifying header fields to be extracted from headers of packets corresponding to respective packet types among a plurality of packet types supported by the network device; an ingress processor coupled to the memory, the ingress processor configured to determine a packet type, among the plurality of packet types supported by the network device, corresponding to a packet received via a port among the plurality of ports, identify, based on the packet type, one or more header fields to be extracted from a header of the packet, including i) determining one or more locations in the memory using the determined packet type, and ii) retrieving, from the determined one or more locations in the memory a) respective indicators of locations of the one or more header fields to be extracted from the header of the packet and b) respective indicators of sizes of the one or more header fields to be extracted from the header of the packet, and extract, based on i) the respective indicators of the locations retrieved from the memory and ii) the respective identifiers of the sizes retrieved from the memory, the one or more header fields from the header of the packet; and a packet processor configured to process the packet based on the one or more header fields extracted from the header, the packet processor being configured to at least determine at least one port to which to forward the packet. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
Specification