[Contents] [Prev] [Next] [Index] [Report an Error]


Product Architecture

The router is composed of two components (see Figure 1):

The Packet Forwarding engine uses ASICs to perform Layer 2 and Layer 3 packet switching, route lookups, and packet forwarding. On M-series routers, the Packet Forwarding Engine includes the router (on the midplane, except on the M40 router, where it is on the backplane), Flexible PIC Concentrators (FPCs), Physical Interface Cards (PICs), and other components, unique to each router, that handle forwarding decisions.

The T-series routers feature multiple Packet Forwarding Engines, up to a maximum of 16 for the T640 Internet Routing Node and 8 for the T320 Internet Router. Each FPC has one or two Packet Forwarding Engines, each with its own memory buffer. Each Packet Forwarding Engine maintains a high-speed link to the Routing Engine. For information about T-series routers, see the T640 Internet Routing Node Hardware Guide and T320 Internet Router Hardware Guide.

Because this architecture separates control operations such as routing updates and system management from packet forwarding, the router can deliver superior performance and highly reliable Internet operation.


Figure 1: Product Architecture

Packet Forwarding Engine

The Packet Forwarding Engine forwards packets between input and output interfaces. The M-series and T-series routers use a different architecture for packet forwarding, and T-series routers can have multiple Packet Forwarding Engines.

Packet Flow through an M-Series Router

You can understand the function of the Packet Forwarding Engine by following the flow of a packet through the router—first into a PIC, then through the switching fabric, and finally out another PIC for transmission on a network link.

When a packet arrives on an input interface, a media-specific PIC performs all the media-specific actions, such as framing and checksum verification.

The PIC then passes a serial stream of bits into the FPC, which parses and appropriately deencapsulates the packet. For M-series routers, the FPC also breaks the packet into 64-byte memory blocks and passes each memory block to the Distributed Buffer Manager ASIC. The Distributed Buffer Manager ASIC or the Queuing and Memory Interface ASIC (on the T640 Internet routing node), and then writes the blocks into packet buffer memory, which is distributed evenly across all the FPCs installed in the router.

In parallel with the buffering, the Distributed Buffer Manager ASIC extracts the information from the packet needed for route lookup and passes that information to the Internet Processor ASIC or Internet Processor II ASIC, which performs a lookup in its full forwarding table and finds the outgoing interface and the specific next hop. The forwarding table can forward all unicast packets that do not have options and multicast packets that have been previously cached. Unicast packets with options and noncached multicast packets are sent to the Routing Engine for resolution.

After the Internet Processor ASIC has determined the next hop, it passes the results of the lookup to the second Distributed Buffer Manager ASIC or Queuing and Memory Interface ASIC, which in turn passes the results to the outgoing interface. (Note that there can be multiple outgoing interfaces if you are using multicast routing.)

At this stage, a pointer to the packet is queued, not the packet itself. Each output port has four queues, each of which has a configured share of the link bandwidth. Several factors can account for queuing order, including the value of the precedence bits, utilization of the input interface, destination address, and Random Early Detection (RED) and Weighted Random Early Detection (WRED) algorithms. If the outgoing interface decides to queue the packet to be sent, when the packet reaches the front of the queue and is ready for transmission, the memory blocks are read from packet buffer memory. Then the packet is reassembled and passed to the media-specific PIC for transmission on the line.

Packet Flow through a T-series Router

When a packet arrives on an input interface, the PIC performs media-specific operations such as framing and checksum verification and passes the packet to the FPC housing it. On the FPC, the Layer 2/Layer 3 Packet Processing ASIC parses the packet and divides it into data cells. The cells are sent to the Switch Interface ASIC, which extracts the notification and passes it to the T-series Internet Processor. The data cells are sent to the Queueing and Memory Interface ASIC, which manages data buffering on the FPC.

The Queuing and Memory ASIC sends the notification to the Switch Interface ASIC facing the switch fabric, which sends bandwidth requests to the destination FPC and issues read requests back to the Queueing and Memory ASIC to begin reading the data cells out of memory. The Switch Fabric ASIC on the destination FPC sends bandwidth grants to the originating Switch Fabric ASIC, which sends a cell to the destination FPC for each grant received.

On the destination FPC, the Switch Interface ASIC receives cells from the switch fabric. It extracts the route lookup key, places it in a notification, and forwards the notification to the T-series Internet Processor. The T-series Internet Processor performs the route lookup and forwards the notification to the Queuing and Memory ASIC, which passes it to the Switch Interface ASIC facing the network. The Switch Interface ASIC passes the cells to the Layer 2/Layer 3 Packet Processing ASIC, which reassembles them into packets, performs encapsulation, and sends the packets to the outgoing PIC. The PIC sends the packets out into the network.

Routing Engine

The Routing Engine handles all the routing protocol processes and other software processes that control the router's interfaces, a few of the chassis components, system management, and user access to the router. These routing and software processes run on top of a kernel that interacts with the Packet Forwarding Engine.

The Routing Engine has these features:

The Routing Engine constructs and maintains one or more routing tables. From the routing tables, the Routing Engine derives a table of active routes, called the forwarding table, which is then copied into the Packet Forwarding Engine. The forwarding table in the Packet Forwarding Engine can be updated without interrupting the router's forwarding.


[Contents] [Prev] [Next] [Index] [Report an Error]