Title: ECE 6160: Advanced Computer Networks
1ECE 6160 Advanced Computer Networks
- Networking Components
- Instructor Dr. Xubin (Ben) He
- Email Hexb_at_tntech.edu
- Tel 931-372-3462
2Prev
- Introduction
- ISPs
- Delays
- Packet Loss
3Intra-AS Routing vs Inter AS Routing
- Routing within an Autonomous System (AS)
- Also known as Interior Gateway Protocols (IGP)
- Most common Intra-AS routing protocols
- RIP Routing Information Protocol
- OSPF Open Shortest Path First
- IGRP Interior Gateway Routing Protocol (Cisco
proprietary)
4Inter-AS routing in the Internet BGP (Border
Gateway Protocol)
BGP provides for routing among autonomous systems
5Why different Intra- and Inter-AS routing ?
- Policy
- Inter-AS admin wants control over how its
traffic routed, who routes through its net. - Intra-AS single admin, so no policy decisions
needed - Scale
- hierarchical routing saves table size, reduced
update traffic - Performance
- Intra-AS can focus on performance
- Inter-AS policy may dominate over performance
6Router Architecture Overview
- Two basic router functions
- run routing algorithms/protocol (RIP, OSPF, BGP)
- switching datagrams from incoming to outgoing link
7High-Level Router Architecture
- Input Ports
- Physical layer functionality, terminates incoming
physical link - Interoperates with the data link layer
- Performs lookup and forwarding functions
- In practice, multiple ports are often gathered
together in a single line card within a router
8High Level Router Architecture
- Switching Fabric
- Connects the routers input ports to its output
ports - Output Ports
- Stores packets forwarded to it through the
switching fabric - Routing Processor
- Executes the routing protocols
- Maintains the routing information and forwarding
tables - Performs network management functions within the
router
9Input Port Functions
- Also known as Decentralized Switching
Physical layer bit-level reception
- A copy of the forwarding table is stored at each
input port and updated as needed - The switching decision can be made locally at
each input port - Decentralized switching avoids a forwarding
bottleneck at a single point within the router
Data link layer e.g., Ethernet
10Complicating Factors
- Backbone routers must operate at high speeds, so
they therefore must be capable of performing
millions of lookups per second. - Line speed a lookup is performed in less than
the amount of time needed to receive a packet at
the input port. - Example Consider an OC48 link that runs at 2.5
Gbps. Assuming a packet size of 256 bytes, this
implies a lookup speed of approximately a million
lookups per second performed.
11Switching Fabrics
Move packets from the input ports to the output
ports
12Switching Via Memory
- First generation routers
- packet copied by systems (single) CPU
- speed limited by memory bandwidth (2 bus
crossings per datagram)
- Modern routers
- input port processor performs lookup, copies
into memory - Cisco Catalyst 8500
13Switching Via a Bus
- Datagram moved from input port memory to output
port memory via a shared bus - Switching speed limited by bus bandwidth
- 1 Gbps bus, Cisco 1900 sufficient speed for
access and enterprise routers (not regional or
backbone)
14Switching Via An Interconnection Network
- Overcomes bus bandwidth limitations
- Some interconnection networks were initially
developed to connect processors in a single
multiprocessor - Advanced design fragments datagram into fixed
length cells, then switches cells through the
fabric. - Cisco 12000 switches Gbps through the
interconnection network
15Crossbar switching network
- N input and N output buses
- Expensive when N is large
- If the vertical bus is being used to transfer a
packet from another input port to the same output
port, the arriving packet is blocked and must be
queued at the inpit port
16Multistage Interconnection Network
17Omega Network
18Omega Network Features
Omega netowrk is a blocking network. When routes
to different destinations share a link, message
may be blocked by another.
19Blocking in Omega Networks
Try Omega by youself! (Thanks,Rick)
20Output Ports
- Transmits the datagrams that have been stored in
the output ports memory and transports them over
the outgoing link - Buffering is required when datagrams arrive from
fabric faster than the transmission rate of the
output port - Scheduling discipline is used to choose among
queued datagrams for transmission onto network
21Queuing at the Output Port
- Buffering occurs when arrival rate via the
switching fabric exceeds output line speed - Consequently, a delay due to queuing occurs and
there is potential packet loss due to output port
buffer overflow
22Queuing at Input Port
- Switching fabric slower than input ports combined
means that queueing may occur at input ports - Head-of-the-Line (HOL) blocking queued datagram
at front of queue prevents others in queue from
moving forward - Consequently, queuing delay and packet loss due
to input buffer overflow
23IPv6
24Addressing Scheme
IPv6 will have 128 bits for the IP address. This
is enough to allow every grain of sand its own IP
address!
25Addressing Scheme
26IPv6
- Additional motivation
- header format helps speed processing/forwarding
- new anycast address route to best of several
replicated servers - IPv6 datagram format
- fixed-length 40 byte header
- no fragmentation allowed
- ICMPv6 new version of ICMP
- additional message types, e.g. Packet Too Big
- multicast group management functions
27Header IPv4 vs IPv6
28IPv6 Header
- A closer look at some of the fields
- Priority identify priority among datagrams in
flow - Flow Label identify datagrams in same flow.
- (concept offlow not well
defined). - Next header identify upper layer protocol for
data - Traffic Class Similar idea to the type of
service field in IPv4 - Checksum Does not exist in IPv6! It was removed
entirely to reduce processing time at each
hop - Options allowed, but outside of header,
indicated by Next Header field
29Transition From IPv4 To IPv6
- Not all routers can be upgraded simultaneously
- no flag days
- How will the network operate with mixed IPv4 and
IPv6 routers? - Two proposed approaches
- Dual Stack some routers with dual stack (v6, v4)
can translate between formats - Tunneling IPv6 carried as payload in IPv4
datagram among IPv4 routers
30Dual Stack Approach
IPv6 nodes have full IPv4 capabilities as well.
When operating with an IPv4 node, the IPv6 node
uses v4 datagrams. The node will be able to
determine the capabilities of the node it is
communicating with by looking at the address
returned by the DNS.
IPv6
IPv6
IPv6
IPv6
IPv4
IPv4
SrcA Dest F data
SrcA Dest F data
A-to-B IPv6
B-to-C IPv4
E-to-F IPv6
D-to-E IPv4
31Tunneling
tunnel
Logical view
IPv6
IPv6
IPv6
IPv6
Physical view
IPv6
IPv6
IPv6
IPv6
IPv4
IPv4
SrcB Dest E
SrcB Dest E
A-to-B IPv6
E-to-F IPv6
B-to-C IPv6 inside IPv4
D-to-E IPv6 inside IPv4
32Summary
- Routing
- Router Architecture
- IPV6
- More about IPV6 by Christoph Litz et al.
- Next
- More about Omega Network