Router - Ohio Supercomputer Center

CSE677: Lecture
“Router Architecture and
Configuration Basics”
Prasad Calyam,
Senior Systems Developer/Engineer
OARnet, A Division of Ohio Super Computer Center
[email protected]
21st May 2007
Topics of Discussion
 What kinds of Routers are on the Internet?
 Introduction to Router Architecture
 Switching Fabrics
 Input and Output Port Queuing
 Look-up Requirements and Techniques
 How to access Router’s features?
 Introduction to Cisco IOS
 Configuring OSPF and BGP on a Cisco router
 Conclusion
What kinds of Routers are on the Internet?
 Router is a physical device in a network that
directs packets to their intended destinations
 Routers are used at Three levels in the Internet
Access Level
• Ex. Cisco 700 to 2500 Series
Enterprise/Distribution Level
• Ex. Cisco 2600 to 3600 Series
Core/Backbone Level
• Ex. Cisco 12000 GSR Series
Types and Sizes of Routers
Home Networking
or Access Router
10s of $$
Router for Large
Backbone Networks
Routers for Small/Medium
sized Enterprise Networks
100s-1000s of $$
> 10,000s of $$
IP Network View: ISPs
(E.g. Internet2 - USA, DANTE - Europe, CANARIE - Canada,…)
(E.g. OARnet - Ohio, MERIT - Michigan,…)
(E.g. Time Warner, SBC Yahoo, WOW,…)
Point of Presence (PoP)
 PoP (Point of Presence) is a
term used to reference a
physical location where network
equipment such as routers,
switches, etc. are deployed.
 It is also where
telecommunication lines meet
An ISP hands-off traffic to
another ISP
In-class Problem
 “What is the approximate diameter of the Internet?”
 Diameter definition: Maximum number of routers between two
extreme hosts on the Internet.
 You can discuss with your neighbors
 HINT: Imagine how IP handles packets that may indefinitely
circulate on the Internet and ultimately cause flooding.
Router Architecture Overiew
 Router’s Primary Functions
 Orchestrate routing algorithms/protocol (RIP, OSPF, BGP)
 Switching datagrams from incoming to outgoing link at line
Router Interface
Router Internal Functions
Input and Output Port Queuing
 Input Queue
 Line speed > switching fabric speed
Data link processing
 Output Queue
 Line speed < switching fabric speed
involves the Frame Check
Sequence calculation to
confirm whether a frame is
corrupted - before passing it
to a switch fabric
Queueing (delay) and loss
occurs due to input or output
port buffer overflow!
Scheduling discipline
performs contention
management by choosing
among queued datagrams for
transmission; FIFO, QoS –
TOS based, …
Switching Fabrics
 Switching fabric transfers
datagrams from input port memory
to appropriate output port memory
(avoids contention)
 Switching via Shared memory
Speed is limited by memory access
speed (i.e., Read/Write speed)
 Switching via Shared Bus
 Single frame at a time – Serial;
Buffering allows Parallel frame
 Speed is limited by bus capacitance
 1 Gbps bus, Cisco 1900: sufficient
speed for access and enterprise
routers (not regional or backbone)
 Switching via Space division
Each input interface has access to
the matrix that directly connects to
the multiple output interfaces
Speed is limited by the scheduler
Look-up Requirements
 Line speed switching versus forwarding decision making
 IP lookup algorithm decides which output interface needs
to be selected for packet forwarding
 Requirements
Speed: Number of memory accesses
Storage requirements: Amount of memory
• With length of prefix
– IPv4 unicast (32b), IPv6 unicast (128b)
• With size of routing table
• Number and Types of QoS options
Flexibility in implementation (allows customization for
different protocols)
In-class Problem
 “If you are a router architect, how would you design
a router to handle routing decisions?”
Consider the different lookup requirements
You can discuss with your neighbors
HINT: Recall the data search and retrieval tricks used in your
database course
Look-up Techniques
MPLS, Ethernet
IPv4, IPv6
Techniques Used
Exact match
–Direct lookup
match search
-Radix trie and variants
Not suitable for large tables,
ex. > 1012
–Hashing using Hash Functions
–Binary/Multi-way Search Trie/Tree
–Associative lookup using Content
Addressable Memory (CAM)
–Compares all entries in parallel
against incoming data
-Compressed trie
-Binary search on prefix intervals
Content Addressable Memory
 CAM is a special type of computer memory used in
certain very high speed searching applications
It utilizes a hardware-based search-table concept to
provide a higher performance alternative to softwarebased searching algorithms
CAM can be compared to the inverse of the RAM. When
read, RAM produces the data for a given address.
Conversely, CAM produces an address for a given data
word (if data word is found in memory)
CAM is much faster than RAM – entire memory search in
one clock cycle
CAM is very expensive compared to RAM – because
additional comparison circuitry is required for every bit
to match stored bits with input bits
How to access Router’s features?
 Cisco Internetwork Operating System (IOS)
It’s the kernel of all Cisco routers and switches
It controls hardware to allow for configuring, monitoring and
troubleshooting various router functions. Ex.:
• Setup of various network protocols
• Add security to control access and stop unauthorized network use
 Memory in a Cisco Router
Cisco IOS resides in the Flash Memory
Startup configurations reside in NVRAM
All other temporary tables/buffers are created in RAM
 Cisco IOS had 3 command modes of operation
Router> “User Mode” to generally view statistics and
stepping-stone to logging into privileged mode
Router# “Privileged Mode” to view the router’s configuration,
restart system, logon to config mode, …
Router(config)# “Configuration Mode” to change the
router’s configuration, configure interfaces, …
Router# ? Gives a list of all features available
Router# ?
Configuring OSPF on a router
Link-state routing protocol that utilizes Dijkstra’s Shortest
Path First Algorithm which allows for faster network
Configuration Steps
Configure IP addresses on Router Interfaces – R1 and R2
Create loopback (logical/virtual interface) on R1 and R2
Create OSPF on R1 with Area0
Create OSPF on R2 with Area0
Establish OSPF on R1 and R2
“Ping” both logical interfaces!
#sh ip route ospf
Configuring BGP on a router
Internet routing protocol that allows
sharing of routing information
between different autonomous
Configuration Steps for eBGP
• Configure IP addresses on Router
Interfaces – R1 and R2
• Create loopback (logical/virtual
interface) on R1 and R2
• Create BGP on R1 by creating AS 100
(Ex. OSU) domain
• Create BGP on R2 by creating AS 200
(Ex. UC) domain
• Establish BGP between R1 and R2
• “Ping” both logical interfaces!
#sh ip route bgp