cs427: Zebra Generic Router
href="http://wiki.cs.uiuc.edu/cs427/EDIT/Zebra+Generic+Router">Edit
href="http://wiki.cs.uiuc.edu/cs427/RENAME/Zebra+Generic+Router">Rename
href="http://wiki.cs.uiuc.edu/cs427/DIFF/24/23/Zebra+Generic+Router">Changes
href="http://wiki.cs.uiuc.edu/cs427/HISTORY/Zebra+Generic+Router">History
href="http://wiki.cs.uiuc.edu/cs427/UPLOAD">Upload
href="http://wiki.cs.uiuc.edu/cs427/DOWNLOAD/">Download
Back to
Top
href="http://wiki.cs.uiuc.edu/cs427/SEARCH/Zebra+Generic+Router">Zebra Generic
Router
--------
[NEXT> http://wiki.cs.uiuc.edu/cs427/Zebra+Overview] [HOME > http://wiki.cs.uiuc.edu/cs427/Software+Architecture+of+Zebra]
---------
We thought it would be a good idea to start with understanding and getting a general idea of how a router works and what is the common architecture of routers.
How routers work
From "How routers work" by Curt Franklin and from ["How intranet routers work" >http://www.cclub.metu.edu.tr/book/intra/ch4.htm]
Routers connect together networks of the global Internet, giving the illusion of one single entity. Routers are specialized computers that send messages to their respective destinations along thousands of pathways via the most effective route. They are responsible for moving messages mainly between the networks rather than within the network.
When you sit down at your computer on an intranet and send or receive data, that information generally must first go through at least one router, and often more than one router before it reaches its final destination. Routers can be simple or quite sophisticated. Factors that determine the required complexity of a router include the size of the intranet, the type and quantity of traffic on segments, and security concerns of the intranet. The more complex the intranet, and, in particular, the greater number of possible destinations for data, the greater the need for sophisticated router hardware and software.
Routers open the IP packet to read the destination address, calculate the best route, and then send the packet toward the final destination. If the destination is on the same part of an intranet, the packet would be sent directly to the destination computer by the router. If the packet is destined for another intranet or subnetwork (or if the destination is on the Internet), the router considers factors like traffic congestion and the number of hops-a term that refers to the number of routers or gateways on any given path. The IP packet carries with it a segment that holds the hop count and a router will not use a path that would exceed a predefined number of hops. Multiple routes within an acceptable hop count range are desirable in intranets to provide redundancy and assure that data can get through. For example, if a direct route between San Francisco and New York were unavailable, sophisticated routers would send data to New York via another router probably in another city on the intranet-and this would all be transparent to the users.
Dynamic routing tables are built using routing protocols. These protocols are ways in which routers communicate with one another, giving each other information about the most efficient way of routing data given the current state of the intranet. A router with a dynamic routing table can automatically switch data to a backup route if the primary route is down. It can also always determine the most efficient way of routing data toward its final destination. Routers advertise their IP addresses and know the IP addresses of their neighbors. Routers can use this information in an algorithm to calculate the best route to send packets.
Architecture of a generic router
From Issues and trends in router design, S. Keshav and Rosen Sharma, May 1998
We start with giving the general components found in routers. A generic router normally has four components, namely: input ports; output ports; a switching fabric; a routing processor. An input port is the point of attachment for a physical link and is the point of entry for incoming packets. Ports are instantiated on line cards, which typically support 4, 8, or 16 ports. The switching fabric interconnects input ports with output ports. A router is classified as input-queued or output-queued depending on the relative speed of the input ports and the switching fabric. If the switching fabric has a bandwidth greater than the sum of the bandwidths of the input ports, then packets are queued only at the outputs, and the router is called an output-queued router. Otherwise, queues might build up at the inputs, and the router is called an input-queued router. An output port stores packets and schedules them for service on an output link. Finally, the routing processor participates in routing protocols and creates a forwarding table that is used in packet forwarding. We now discuss the components of this generic router in more detail. The following diagram shows these major components.
[http://wiki.cs.uiuc.edu/cs427/DOWNLOAD/ZGeneral_Router_Components.gif]
Router抯 physical ports: receiving (input) ports and sending (output) ports are in actuality bi-directional and can receive or send data. When a packet is received at an input port, a software routine called a routing process is run. This process looks inside the header information in the IP packet and finds the address where the data is being sent. It then compares this address against an internal database called a routing table that has information detailing to which port packets with various IP addresses should be sent. Based on what it finds in the routing table, it sends the packet to a specific output port. This output port then sends the data to the next router or to the destination itself.
----------
[NEXT> http://wiki.cs.uiuc.edu/cs427/Zebra+Overview] [HOME > http://wiki.cs.uiuc.edu/cs427/Software+Architecture+of+Zebra]
//-- unformatted page contents -->
NEXT
href="http://wiki.cs.uiuc.edu/cs427/Software+Architecture+of+Zebra">HOME
We thought it would be a good idea to start with understanding and getting a
general idea of how a router works and what is the common architecture of
routers.
How routers work
From "How routers work" by Curt Franklin and from href="http://www.cclub.metu.edu.tr/book/intra/ch4.htm">"How intranet routers
work"
Routers connect together networks of the global Internet, giving the illusion
of one single entity. Routers are specialized computers that send messages to
their respective destinations along thousands of pathways via the most effective
route. They are responsible for moving messages mainly between the networks
rather than within the network.
When you sit down at your computer on an intranet and send or receive data,
that information generally must first go through at least one router, and often
more than one router before it reaches its final destination. Routers can be
simple or quite sophisticated. Factors that determine the required complexity of
a router include the size of the intranet, the type and quantity of traffic on
segments, and security concerns of the intranet. The more complex the intranet,
and, in particular, the greater number of possible destinations for data, the
greater the need for sophisticated router hardware and software.
Routers open the IP packet to read the destination address, calculate the
best route, and then send the packet toward the final destination. If the
destination is on the same part of an intranet, the packet would be sent
directly to the destination computer by the router. If the packet is destined
for another intranet or subnetwork (or if the destination is on the Internet),
the router considers factors like traffic congestion and the number of hops-a
term that refers to the number of routers or gateways on any given path. The IP
packet carries with it a segment that holds the hop count and a router will not
use a path that would exceed a predefined number of hops. Multiple routes within
an acceptable hop count range are desirable in intranets to provide redundancy
and assure that data can get through. For example, if a direct route between San
Francisco and New York were unavailable, sophisticated routers would send data
to New York via another router probably in another city on the intranet-and this
would all be transparent to the users.
Dynamic routing tables are built using routing protocols. These protocols are
ways in which routers communicate with one another, giving each other
information about the most efficient way of routing data given the current state
of the intranet. A router with a dynamic routing table can automatically switch
data to a backup route if the primary route is down. It can also always
determine the most efficient way of routing data toward its final destination.
Routers advertise their IP addresses and know the IP addresses of their
neighbors. Routers can use this information in an algorithm to calculate the
best route to send packets.
Architecture of a generic router
From Issues and trends in router design, S. Keshav and Rosen Sharma, May 1998
We start with giving the general components found in routers. A generic
router normally has four components, namely: input ports; output ports; a
switching fabric; a routing processor. An input port is the point of attachment
for a physical link and is the point of entry for incoming packets. Ports are
instantiated on line cards, which typically support 4, 8, or 16 ports. The
switching fabric interconnects input ports with output ports. A router is
classified as input-queued or output-queued depending on the relative speed of
the input ports and the switching fabric. If the switching fabric has a
bandwidth greater than the sum of the bandwidths of the input ports, then
packets are queued only at the outputs, and the router is called an
output-queued router. Otherwise, queues might build up at the inputs, and the
router is called an input-queued router. An output port stores packets and
schedules them for service on an output link. Finally, the routing processor
participates in routing protocols and creates a forwarding table that is used in
packet forwarding. We now discuss the components of this generic router in more
detail. The following diagram shows these major components.
border=0>
Router抯 physical ports: receiving (input) ports and sending (output) ports
are in actuality bi-directional and can receive or send data. When a packet is
received at an input port, a software routine called a routing process is run.
This process looks inside the header information in the IP packet and finds the
address where the data is being sent. It then compares this address against an
internal database called a routing table that has information detailing to which
port packets with various IP addresses should be sent. Based on what it finds in
the routing table, it sends the packet to a specific output port. This output
port then sends the data to the next router or to the destination itself.
NEXT
href="http://wiki.cs.uiuc.edu/cs427/Software+Architecture+of+Zebra">HOME
name=COMMAND> name=SEARCHPATTERN>
href="http://wiki.cs.uiuc.edu/cs427/EDIT/Zebra+Generic+Router">Edit
href="http://wiki.cs.uiuc.edu/cs427/RENAME/Zebra+Generic+Router">Rename
href="http://wiki.cs.uiuc.edu/cs427/DIFF/24/23/Zebra+Generic+Router">Changes
href="http://wiki.cs.uiuc.edu/cs427/HISTORY/Zebra+Generic+Router">History
href="http://wiki.cs.uiuc.edu/cs427/UPLOAD">Upload
href="http://wiki.cs.uiuc.edu/cs427/DOWNLOAD/">Download
Back to
Top