+ All Categories
Home > Documents > Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

Date post: 20-Dec-2015
Category:
View: 221 times
Download: 4 times
Share this document with a friend
Popular Tags:
90
Routing1 Broadband Network Architectures Router Design TEMangir Sp02
Transcript
Page 1: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

Routing1

Broadband Network Architectures

Router Design

TEMangir Sp02

Page 2: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing2

Outline

Introduction Router Fundamentals Routing Algorithms and Protocols Fast Forwarding Layer-3 Switching IP over WDM

Page 3: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

Routing3

Introduction

Page 4: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing4

A Fine Distinction

Imprecision surrounds the terms “routing” and “forwarding”

Forwarding is the act of transferring a packet from one interface of a router to another, after consulting a forwarding table

Routing is the act building routing tables by means of a routing algorithm

We frequently abuse this convention

Page 5: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing5

What is a Router?

A packet forwarder Multiprotocol – IP, IPX, AppleTalk

A routing-protocol execution machine Multiprotocol – IGRP, RIP, OSPF, IS-IS

A packet monitor A general-purpose computer A firewall A switch

Page 6: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing6

Internet Forwarder Functions

Parse the datagram header Checksum actions Select the network protocol Decrement the TTL field Use the TOS field to prioritize the datagram Process the options fields Forward (route) the datagram to next hop Fragment the datagram

Page 7: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing7

Internet Router Functions

Execute one or more routing protocols Exchange state information with other routers Use a transport protocol Authentication

Collect network-management statistics Packet counts, lengths, and types Source-destination matrix

Configuration support User interface Tunnel management

Page 8: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing8

Internet Firewall Functions

Filtering of destinations Source Destination

Filtering of services Block protocols Block transport port numbers

Virtual private networks Encrypted tunnels

IP

TCP UDP

FTP HTTP X

ProtoID

PortNums

Page 9: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing9

Control and Data Planes

RouteDetermination

Function

DataForwarding

Function

Data Plane

Control Plane

control packets to &from other control

plane entities

Router

control packets to &from other controlplane entities

data packets to &from other data

plane entities

data packets to &from other dataplane entities

Page 10: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

Routing10

Router Fundamentals

Page 11: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing11

ARP

Address Resolution Protocol translates an IP address to a media (link) address

Simple request-response protocol First host broadcasts a request packet

containing desired IP address Second host recognizes its IP address Second host sends a response packet to

first host containing its media (link) address First host caches address mapping for later

use

Page 12: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing12

ARP Header

Protocol Type

0 3115

Hardware Type

OperationHLen PLen

Source Hardware Address

Source Protocol Address

Target Hardware Address

Target Protocol Address

Page 13: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing13

ARP Header Fields

Hardware type: e.g. Ethernet = 1 Protocol type: e.g. IPv4 = 0080 HLen: Hardware address length (e.g.

Ethernet = 48 bits) PLen: Protocol address length (e.g. IPv4 =

32 bits) Operation: a query (0) or a reply (1) Source: where packet came from Target: system it is querying about

Page 14: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing14

ARP Operation (1)

FTP

TCP

IP ARP

DNS

EthernetDriver

ARP

EthernetDriver

TCP

IP ARP

EthernetDriver

(1)(2)

(3) (5)

(4)

(6)(7)(8)

FTP

(8)

(8)

(8)

Page 15: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing15

ARP Operation (2)

1. IP datagram with destination address2. Next-hop address is passed to ARP3. ARP request passed to Ethernet driver4. ARP request broadcast in Ethernet frameRouting ARP request recognized by next-hop

node6. ARP reply sent by next-hop node7. ARP reply updates ARP cache8. IP datagram sent through next-hop node

Page 16: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing16

Proxy ARP

Allows a router to answer ARP requests from one of its networks for a host on another of its networks

Router substitutes its link address for the responding host’s

Proxy gives the illusion that the host is connected to another network

Page 17: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing17

RARP

Reverse ARP translates a media (link) address to an IP address

Used by system without nonvolatile storage

Requires a network-wide RARP server

Similar to BOOTP (Bootstrap Protocol)

Page 18: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing18

Router Advertisement (1)

Routers announce presence by broadcasting ICMP router advertisements All-hosts multicast address: 224.0.0.1 Limited broadcast address: Routing

Advertisements are periodic 7-minute period Advertisement becomes stale after 30

minutes

Page 19: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing19

Router Advertisement (2)

Advertisements contain a list of addresses Router IP addresses Preference level of each address

Higher values are preferred Highest value is the normal router Lower value is a backup router Lowest values do not wish to receive default

traffic

Page 20: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing20

Router Solicitation (1)

A host should not have to wait 7 minutes for the next ICMP router advertisement

ICMP router solicitation messages allow the host to request the identity of a router

The host broadcasts the solicitation All-routers multicast address: 224.0.0.2 Limited broadcast address: 255.255.255.255

The host receives many advertisements The host chooses the router on its subnet

Page 21: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing21

Router Solicitation (2)

Host bootstrap operation Broadcasts 3 solicitations Broadcasts 1 message every 3 seconds Broadcasting stops as soon as a valid

router advertisement is received

Page 22: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing22

Broadcast Storms

Mechanisms that rely on broadcasting messages within a LAN are vulnerable to broadcast storms, i.e. long, uncontrolled exchanges of broadcast packets.

Because everyone must process a broadcast, storms put a heavy load on uninvolved nodes.

Therefore, protocol exchanges – such as ARP, RARP, DHCP, Router Solicitation, and Router Announcement – must control broadcasts with timers and by limiting message counts.

Page 23: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing23

Redirect

ICMP redirect error is sent by a router to a host to indicate that the host should send its datagrams through another router

1. First Datagram

2. Redirect

3. First Datagram

4. Successive Datagrams

Security concern!

Page 24: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing24

A Simple Router

MainMemory

CPU NIC

NIC

NIC

I/O Bus

SystemBus

Fast Ethernet

FDDI

ATM

DMAXfer

DMACtrl

NIC = Network Interface ControllerDMA = Direct Memory Access

1. Packet input2. Header processing Routing table lookup DMA transaction3. Packet output

32

1

Page 25: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing25

IP Layer

IP-Layer Processing

RoutingTable

ICMP

IP OutputCalculateNext Hop

IP InputQueue

ProcessIP Options

AddressedHere?

TCPUDPRouting

Algorithm

No

Yes

RoutingTable Mgmt

Data

Control

Network Output(s) Network Input(s)

SourceRoutedPacket

ForwardedPacket

Page 26: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing26

Routing Table Structure

Destination IPv4 address Host address (32 bits) Network address (<32 bits)

Next-hop router IP address Router on a directly connected network

Flags Network or host Router or interface

Network interface

Page 27: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing27

Routing Table

zap % netstat -rnRouting tablesDestination Gateway Flags Refcnt Use Interface128.9.192.24 128.9.112.24 UGH 0 0 myri0128.9.192.72 128.9.112.72 UGH 9 54173 myri0128.9.192.73 128.9.112.73 UGH 0 0 myri0224.0.0.9 127.0.0.1 UH 1 118606 lo0127.0.0.1 127.0.0.1 UH 8 3541986 lo0128.9.192.146 128.9.112.146 UGH 0 0 myri0128.9.192.100 128.9.112.100 UGH 0 0 myri0128.9.192.69 128.9.112.69 UGH 0 0 myri0128.9.192.126 128.9.112.126 UGH 0 0 myri0default 128.9.112.72 UG 22 8601210 myri0128.9.192.0 128.9.192.151 U 7 2109258 le0128.9.112.0 128.9.112.151 U 0 51 myri0

Host address

Network address

Multicast address

Loopback address

Next-hop router

U = route is upG = route is via gatewayH = route is to a hostD = route was redirected

Myrinet

EthernetLoopback

Page 28: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing28

IP Output Processing

Search table for match of host address If found, then send datagram to next-hop router

or directly connected interface

Search table for match of network address If found, then send datagram to next-hop router

or directly connected interface Use subnet mask, if necessary

Search table for default entry If found, then send the datagram to next-hop

router

Page 29: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing29

Routing

Assumptions Router knows the addresses of all other routers Router knows the “costs” to reach its neighbors

Network viewed as a collection of nodes and (bidirectional) links

From any given router find next hop on shortest path to any other router

Tolerance of failures

Page 30: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing30

Distance-Vector Routing

Based on the sharing of distance vectors A router’s distance vector is a list of its

“distances” to every other router in the routing domain

Router tells its neighbors its distance (cost) to every other router in the network

Cost = Distance Usually we assume that cost = distance = hops Other metrics: bandwidth, delay, charging

Page 31: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing31

Distance-Vector Algorithm

Router maintains a distance vector List of <dest, cost> entries

Router periodically sends a copy of its distance vector to all neighboring routers

Upon receipt of a distance vector, the router determines its new distance vector cost(v) min {cost(v), costw(v)+cost(w)}

Converges to shortest-path routes O(MN), M=num_links, N=num_nodes

Page 32: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing32

Distance-Vector Problems

Slow convergence Packet bouncing after link failure

Counting to infinity Race condition after network partition Algorithm keeps adding to current cost, never

reaching infinity Solution: represent infinity by a large number

Large number is 16 in RIP

Caused by routers repeating information that was valid before failures

Page 33: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing33

Link-State Routing

Based on sharing of link state Link-state packets: <ID, Nbr_ID, cost> Link-state information is flooded throughout the

network

Each router computes shortest paths independently

Router tells every other router its distance (cost) to its neighbors

Cost = distance = hops

Page 34: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing34

Link-State Algorithm

Router maintains a database of link-state packets that describe its links

Router floods a copy of every link-state packet throughout the network Uses sequence numbers and duplicate elimination

to control the flood

Router applies Dijkstra algorithm to find shortest path

Converges to shortest-path routes O(M logM), M = num_links

Page 35: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing35

Two Routing Schemes

Router

DV

DV

DV

Router’sNeighbors

Router All OtherRouters

LSLS

LSLS

Distance Vector RoutingRouter sends a large amount ofinformation to a few recipients

Link State RoutingRouter sends a small amount ofinformation to many recipients

Page 36: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing36

Link-State & Distance-Vector Routing

Link-state Loopless routing Fast convergence Precise, multiple metrics (costs)

Distance-vector Simplicity Less memory required

Both in use in today’s Internet

Page 37: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing37

Internet Routing Hierarchy

Interior routing Within an AS Intradomain routing

Exterior routing Between ASs Interdomain routing

Page 38: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing38

Internet Routing Protocols

Interior Gateway Protocols (IGPs) RIP RIPv2 is the current standard IGRP EIGRP OSPF IS-IS

Exterior Gateway Protocol (EGP) Border Gateway Protocol (BGP) BGP-4 is the current standard

Page 39: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing39

Routing Protocol ComparisonRouting Protocol

Supported Protocols

Strengths Limitations

Enhanced IGRP

IP, IPX, AppleTalk

load balancing, metrics

IGRP IP, OSI-IP

RIPv2 IP simplicity improved convergence

OSPF IP rapid convergence

complexity

IS-IS IP, OSI-IP

RIP IP simplicity count to

Page 40: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing40

IGP Example

128.9.Routing0/24 (10)

128.9.2.0/24 (2000)

128.9.6.0/24 (10)

128.9.1.0/24 (10)

128.9.1.2 Rtr A

Rtr C

Rtr B 128.9.Routing2

128.9.6.2

128.9.4.0/24 (60)128.9.3.0/24 (60)e0

s1

s2

Destination Next Hop Hop Count129.9.1.0 e0 -128.9.2.0 s1 -128.9.3.0 s2 -

128.9.4.0128.9.2.2 (s1)128.9.3.2 (s2)

11

128.9.Routing0128.9.2.2 (s1) 1128.9.6.0 128.9.3.2 (s2) 1

.2

.2

RIP Routing Table at Rtr ADestination Next Hop Hop Count129.9.1.0 e0 -128.9.2.0 s1 -128.9.3.0 s2 -

128.9.4.0 128.9.3.2 (s2) 120

128.9.Routing0128.9.2.2 (s1) 130128.9.6.0 128.9.3.2 (s2) 70

OSPF Routing Table at Rtr A

Page 41: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing41

Lollipop Sequence Space

-N/2 0

N/2 - 1

a

b

d

Sequence numbersstart here (bootup)and circle around

repeatedly

If d<N/4 (halfcircumference) thenb is the newersequence number,otherwise a isnewer

Problem: Sequence numbers of link-state packets wrap around or are restarted

Sequence numbers in this subspace are generatedonly after bootup, and recipients notify the

booting router of last sequence number received

Page 42: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing42

Routing in the Internet

Autonomous System (AS) Set of routers and hosts administered

by a single entity Customer network (e.g., 128.9.0.0) ISP Backbone provider

Assigned a unique 16-bit number AS represents a routing domain

Page 43: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing43

Classification of ASs (1)

Stub AS Single connection to another AS All traffic is local (i.e., originates or terminates

at the AS) E.g., a typical corporation

Multihomed AS Multiple connections to other ASs Refuses to carry nonlocal (transit) traffic E.g., a well-connected corporation

Page 44: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing44

Classification of ASs (2)

Transit AS Multiple connections to other ASs Accepts local and nonlocal (transit)

traffic E.g., ISP or backbone operator

Page 45: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing45

Types of ASs

AS 3(transit)

AS 5(stub)

AS 1(transit)

AS 6(multihomed)

AS 2(transit)

AS 4(stub)

Page 46: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing46

First 20 AS Numbers

AS Number Name Handle

1 GNTY-1 [CS15-ARIN]2 DCN-AS [DW19-ARIN] 3 MIT-GATEWAYS [RH164-ARIN] 4 ISI-AS [JKR1-ARIN] 5 SYMBOLICS [SG52-ARIN] 6 BULL-HN [JLM23-ARIN] 7 UK-MOD [RNM1-ARIN] 8 RICE-AS [RUH-ORG-ARIN] 9 CMU-ROUTER [HC-ORG-ARIN] 10 CSNET-EXT-AS [CS15-ARIN] 11 HARVARD [WJO3-ARIN] 12 NYU-DOMAIN [ZN68-ARIN] 13 BRL-AS [RR33-ARIN] 14 COLUMBIA-GW [ZC26-ARIN] 15 NET-DYNAMICS-EXP [ZSU-ARIN] 16 LBL [CAL3-ARIN] 17 PURDUE [JRS8-ARIN] 18 UTEXAS [DLN12-ARIN] 19 CSS-DOMAIN [CR11-ARIN] 20 UR [LB16-ARIN]

http://www.arin.net/library/internet_info/asn.txt

Page 47: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing47

CIDR — Problems

Classless Interdomain Routing (CIDR) Class A IP addresses are too large (16M hosts) Class C IP addresses are too small (256 hosts) Class B addresses are just right (64K hosts), but

we are running out of class B addresses

Routing table explosion Core routers act upon network numbers Routing tables grow as number of networks

increases

Page 48: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing48

CIDR — Solutions

Allocate the class C address space among geographical regions Europe, the Americas, Asia, Africa Eases routing problems

Assign blocks of class C addresses to users Can attach more than 256 hosts Allows for the aggregation of routes

Page 49: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing49

CIDR — Rules

User may ask for 2n contiguous class C address blocks (0 n 5) Yields 2n+8 host addresses

A block of class C addresses is listed in a core routing table by address prefix Like a subnet mask E.g., the prefix 192.4.16.0/20 specifies

network numbers 192.4.16.0 through 192.4.31.255

Page 50: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing50

CIDR Aggregation

Backbone Provider

ISP

Customer

4096 Customer Addresses192.4.16.0 - 192.4.31.255

192.4.16.0/20

Routing Table

One routingprefix replaces4096 entries

“192.4.16.0/20” is shorthand notation for “192.4.16.0 - 192.4.31.255”

Page 51: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing51

CIDR Block Allocations

194.0.0.0 – 195.255.255.255: Europe198.0.0.0 - 199.255.255.255: North America200.0.0.0 - 201. 255.255.255 : Central and South America202.0.0.0 - 203. 255.255.255 : Asia and the Pacific

fewer than 256 addresses: 1 class C networkfewer than 512 addresses: 2 class C networksfewer than 1024 addresses: 4 class C networksfewer than 2048 addresses: 8 class C networksfewer than 4096 addresses:16 class C networksfewer than 8192 addresses:32 class C networksfewer than 16384 addresses:64 class C networks

Page 52: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing52

Network Address Translation

A form of IP masquerading Used when a large customer network can

obtain only a small IP address allocation For example, a corporation with thousands of

hosts receives only a class C address space Private network address space used

internally 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16

Page 53: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing53

User Tools for Routing

netstat Unix and MS-DOS Display routing table with -rn

arp Unix and MS-DOS Examine or modify the ARP cache

ifconfig Unix Report details of network interfaces with -a

Page 54: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing54

Evolution of Router Design

Generation 1: shared backplane and shared buffer memory

Generation 2: shared backplane and local buffer memory

Generation 3: switched backplane and local buffer memory

Generation 4: clusters of routers

Page 55: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing55

Generation 1

CPUPACKET

BUFFERS

DMA

MAC

DMA DMA

MAC MAC

LINKINTERFACE

CARDS

BACKPLANEBUS

Page 56: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing56

Generation 2

DMA

MAC

DMA DMA

MAC MAC

CPU

PACKETBUFFERS

PACKETBUFFERS

PACKETBUFFERS

LINKINTERFACE

CARDS

BACKPLANEBUS

Page 57: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing57

Generation 3

DMA

MAC

DMA DMA

MAC MAC

CPU

PACKETBUFFERS

PACKETBUFFERS

PACKETBUFFERS

LINKINTERFACE

CARDS

SWITCH

Page 58: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing58

Generation 4

FAST INTERCONNECT

ROUTER

ROUTER

ROUTER

LINKINTERFACES

Page 59: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

Routing59

Fast Forwarding

Page 60: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing60

Cisco Forwarding Performance

Switching Path

Cisco 2500

Cisco 4500

Cisco 7000

Cisco 7500

Process 1000 pps10,000

pps2500 pps 10,000 pps

Fast 6000 pps45,000

pps30000 pps

150,000 pps

Hardware N/A N/A271,000

pps275,000

pps

Page 61: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing61

Cisco Performance Notes

Process Fast Hardware

Page 62: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing62

Importance of Lookups

The routing table must have an entry for every possible Internet address

Routing-table size has grown steadily The problem is to match the destination

address of an incoming packet to a routing-table entry in a small amount of time Entry is usually an aggregated prefix Best (longest) prefix match

Page 63: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing63

Routing Table Growth

www.telstra.net/ops/bgptable.html

Page 64: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing64

Address Lookup

Router must be able to look up all assigned IPv4 addresses Millions of addresses are assigned

There is not enough high-speed memory to store all assigned IPv4 (and IPv6) addresses

We must aggregate addresses to compress the routing table as much as possible

Page 65: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing65

Address Aggregation

128.9.160.38 8

128.9.191.7 8

154.23.16.134 4

194.47.10.72 4

128.12Routing50.89 1

130.39.213.66 1

171.9.160.38 5

193.77.50.7 3

193.9.14.38 5

202.197.160.67 3

Address Interface

128.9.0.0/16 8

128.0.0.0/1 4

128.0.0.0/6 1

171.9.0.0/16 5

193.0.0.0/4 3

193.9.14.0/24 5

Address Interface

Original Table

Compressed Table

Page 66: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing66

A Simple Scheme

In IPv4 at most only the first 24 bits are used by core routers Those bits specify the network number toward

which the packet is headed

Given a fast random-access memory of 224 locations (16 Mword), we can store the next hop of net address x.y.z.* in memory location x.y.z

Only one memory access per lookup is needed

Page 67: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing67

Updating Routing Tables

Compressed routing tables must be updated periodically

New information about routes can affect address aggregation

The compression effort can be significant

Compression must be computationally efficient

Page 68: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing68

Hash Tables for Fast Address Lookup

Length Hash

8

12

16

24

10

10.128, 10.64

10.1, 10.2

10.1.1, 10.1.2, 10.2.1

Lists of Prefixes

Page 69: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing69

Level-1 Lookup Scheme

10 162 4

IP Address31 0

bix

ix

bit0 1 15

base[1K]maptable[676]

sixcode[4K] ten

0

675

pointer = + +

Page 70: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing70

Level-2/3 Lookup

Level-1 pointer points to either: Next hop, or Indicator to continue search at levels

2/3 Levels 2/3 use the lower 16 bits of

the address to look up the next hop

Page 71: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing71

Performance of Scheme

Data structures fit in data cache memory

Fewer than 100 instructions per address are required for lookup

Therefore, can forward several million packets per second through a conventional CPU-based router

Page 72: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

Routing72

Layer-3 Switching

Page 73: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing73

Tag Switching

Sometimes called layer-3 or IP switching

Combines a switch with a router Fast switch Slower router

Attempts to detour around the slow routing path by taking a fast switching path

Page 74: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing74

Observations (ca. 1997)

Routers are expensive and slow $187,000 for 1-Gb/s router

Switches are cheap and fast $41,000 for 5-Gb/s switch

It costs 20 times as much to route a bit as to switch it

Page 75: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing75

IP Flows

A flow is a stream of IP packets that follow the same route for several hops

Common flow types Streams from a specific source address to a

specific destination address Streams from a specific source address/port to

a specific destination address/port

Flows have limited lifetimes Analogous to a VC

Page 76: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing76

Flow Classification

Flows should be long-lived Disregard DNS packets Disregard ICMP packets (e.g., ping) Disregard most HTTP packets

Flows should be high-throughput Disregard Telnet sessions

Detect a flow if the number of packets received in a specified time interval exceeds a threshold

Page 77: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing77

Flow Statistics

Count packets and flows over a period of time Flow is defined by IP source and

destination addresses Measure the duration of each flow Count the number of packets in each

flow

Page 78: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing78

Flow Statistics Illustrated

FLOWS

PACKETS

PER

CEN

TA

GE

FLOW DURATION (seconds)

0

0 50 100 150 200 250 300

50

100

Page 79: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing79

Flows and Packet TracesProtocol Packets/ s Flows/ s Flow Duration (s) Packets/ Flow

News(NNTP+TCP)

1096 0.7 177 627

Mbone(IP in IP)

456 0.1 173 2307

X Windows(TCP)

111 0.2 161 276

FTP Data(TCP)

2018 2.2 118 525

Rlogin(Telnet+TCP)

803 4.2 114 114

Web(HTTP+TCP)

6717 73.0 57 74

Mail(POP+TCP)

9 0.4 27 21

Mail(SMTP+TCP)

802 49.5 18 15

Management(SNMP+TCP)

43 6.1 18 6

Name Server(DNS+UDP)

929 216.6 15 4

Page 80: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing80

Flow Classifier

X/Y flow classifier Flow recognition by stream characteristics

X packets Y seconds Flow is declared switchable

Flow deletion by stream characteristics W packets Z seconds Flow is declared unswitchable

Analogous to calculating first derivative df/dt

Page 81: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing81

Basic Tag-Switch Strategy

Determine whether a flow exists Use normal hop-by-hop IP forwarding

for short-lived flows Use “short-cut” ATM switching for

long-lived, high-throughput flows

Page 82: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing82

Tag-Switch Architecture

IP SwitchController

ATMSwitch

Remove from ATM switchSignalingLANEMPOAIS-IS routing

Add to ATM switchFlow management protocolSwitch management protocolFlow classifier

Claim: added software is 10% the size of removed software!

Page 83: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing83

Default Mode

Controller

Switch

IP flow is initially forwardedTwo default VCs are used

Upstream Downstream

Page 84: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing84

Flows Detected

Controller

Switch

Controller detects a flowInstructs upstream switch to use a new VCUpstream flow is now labelled by a new VC

Downstream controller detects a flowInstructs this switch to use a new VCDownstream flow is now labelled by a new VC

Upstream Downstream

Page 85: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing85

Cut-Through Action

Controller

Switch

Controller directs the switch to reconfigureTwo VCs are joined into one VCFlow is now carried at switching speedsPeriodic messages to maintain new VCTimeout of inactive flows

Upstream Downstream

Page 86: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing86

Features of Tag Switching

IP header and LLC/SNAP encapsulation header can be removed Compression benefits throughput Added back later at the exit tag switch

TTL is adjusted at the exit tag switch Preserve the value that it would have had in

default mode Update the IP checksum too Avoids mismatches in TTL for a flow

Page 87: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing87

Tag-Switching Performance

Analysis based on San Francisco NAP packet traces

Evaluate switching gain, i.e. the fraction of all packets that are directly switched

Simulations of Ipsilon IP switch 86% of packets are switched 92% of bytes are switched Switching gain is maximized at a detection

threshold of about 10 packets

Page 88: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing88

Layer-3 Switching

Data-driven approaches: use only packet statistics Ipsilon IP Switching Cisco Tag Switching

Topology-driven approaches: use routing-table or other topological information IBM ARIS Multiprotocol Label Switching (MPLS)

Page 89: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing89

MPLS

Multiprotocol Label Switching (MPLS) Generalized MPLS (GMPLS)

Page 90: Routing1 Broadband Network Architectures Router Design zTEMangir Sp02.

TEM 497 Routing90

IP over WDM

Place IP flows on their own lightpaths Lightpath is formed by the concatenation of

wavelengths Lightpath is all-optical

Idea is similar to IP switching Wavelength-selective crossconnect (vs. ATM cell

switch) There are only a few wavlelengths to carry flows

(vs. many ATM virtual channels) A signaling protocol is required to set up

lightpaths


Recommended