Patent ID: 8000324
Filing Date: 2011-08-16
Classification: H04L

Abstract:
1. A network device for processing packets, the network device comprising: an ingress module configured to perform switching functions on an incoming packet, the ingress module comprising a centralized ingress pipeline, wherein the centralized ingress pipeline is configured such that the incoming packet, when processed by the ingress module, proceeds serially through the centralized ingress pipeline; a memory management unit configured to store packets and perform resource checks on each packet; an egress module configured to perform packet modification and transmit the packet to an appropriate destination port, the egress module comprising a centralized egress pipeline, wherein the centralized egress pipeline is configured such that the incoming packet, when processed by the egress module, proceeds serially through the centralized egress pipeline; wherein instructions associated with each of the switching of the ingress module, the storing of the memory management unit and packet modification of the egress module are each configured to complete processing of one packet every clock cycle, and wherein the egress module further comprises an initial buffer configured to store packet data and keep track of any empty cycles transmitted from a CPU, wherein the initial buffer is configured to output its write address to a parser, the parser being configured to pass the write address to a modification stage, the parser being configured to parse packets for table lookups and modifications and the modification stage being configured to construct a tunnel IP header and a module header for the packet, make modifications in the packet and compute a checksum for outer and inner headers.