cs 453 computer networks lecture 24 ip routing. see…
TRANSCRIPT
Routing
In layer 1 and layer 2 we, logically and conceptually anyway, treated communications links as point-to-point…
While that was not technically true is a viable was to organize networks because
The layer hardware and protocols took care of the point-to-pointness for us
Routing
Remember that the Internet is a network of networks…
… of autonomous networks (or automous systems – we get back to this idea later)…
With a conglomerations of networks – layer 3) we introduce …
A number of new issues and complications
Routing
Notably – paths and routes
Recall one of the principles of the internet is that … Any node is reachable (in principle) from any
other node
Routing
Our packets and messages must be able to navigator through an immensely complete irregular mesh of nodes and links to get from A to BBut A and B don’t know how to do this…so in reality the packets and message are navigated through the network……by the networkThis is Routing
Routing
Devices (routers) within the network are waypoints for messages…
…and must make decisions about the “best” path to get the messages from A to B…
… and, then, move the messages along that path
Routing
Routing is the job of moving message across the network…
..by the routers
AB
How to get from A to B?
Routing
Non-adaptive Routing (Static Routing) Routes from any source to any destination… Predefined Fixed Established when routers boot Does reflect router/link failures, loads, etc
Routing
Adaptive Routing Routes are dynamic Routers “teach” other routers routes Routers swap routing information to reflect
changes in available routes, down links, …many other things
Routing
Shortest Path Routing Conceptualize a network as an undirected graph
(easy to do!) Better yet, a weighted undirected graph Shortest Path algorithm finds the short path through
this graph from A to B Shortest, that is distance can be defined in a number
of waysHops, physical distance, delay, etc.
Such metrics are the weights Most common: Dijkstra’s Shortest Path Algorithm
Routing
Flooding Algorithm Router sends message out on every port
except the one that it came in on – concurrently
So, the same message “flying” on every route but one
Selective routing – flood routes that make sense
…all routes to Europe, rather than all routes
Routing
Flooding Algorithm Very inefficient Wastes a lot of bandwidth Resilient Good for high failure networks
Military – combat deployments
Catastrophe deployment
Routing
Distance Vector Routing Algorithms Bellman-Ford algorithm Each router maintains a table of routes Initially each router table has entry or each
neighbor and distance to that neighbor Periodically each router swaps with its
neighbor all of the routes and distances to every location that it knows about
Routing
Distance Vector Routing Algorithms Over time, due to this swapping, each router
builds and maintains a table of routes and distances to all destinations
Networks changes (link or router failures) are reflected in these route swaps
“Distance” in this algorithm can be any defined network metric
Hops, delay, cost,…
Routing
Count-to-infinity problem
A B C D
•Consider – each link = 1 hop
B has message for A – distance = 1
A-B link goes down, B knows this and looks for another route to A
B has route to C and C has route to A – distance 2 + 1(from B)…
So update the routing table in B, C, D in this scenario
Routing
Link State Algorithms Replaced distance vector routing on Internet
in 1979 Each router –
Floods the network to discover its neighborsMeasures the cost/delay to discovered neighborsFloods network with information about every node it can reach (LSA)Constructs a topology map with this informationCalculates shortest path to every router/node in network (Dijkstra’s Shortest Path algorithm
Routing
Link State Algorithms Result
Tree graph with each router as the root …
… and the least cost path to every other node
Build a routing table with best next hop for from current node to every other node in network
Routing
Each router is responsible for maintaining its own route tables
Although it may follow principles, there is no single router or control point responsible for selecting routes
In a sense it is like politics All routing is local routing
Routing
Hot-potato routing
Carrier X
Carrier Y
125 ms latency
100 ms latencyA C
B D
10 ms latency 5 ms latency
Router A needs to get a packet to Route D
What is the best way to get it there?
…but…
Routing
Remember the idea of Autonomous Systems
One of the key principles that makes the Internet work is that it is a network of Autonomous Systems (AS)
Issues associated with routing within an AS (interior) are different from routing between AS (exterior)
Routing
Intra-AS routing
RIP – Routing Information Protocol One the earliest interior routing protocols Distance Vector algorithm Distance = hop count Hops = number of subnets to tranverse to get
from source router to destination subnet Hops max limited to 15
Routing
Intra-AS routingRIP – Routing Information Protocol DV algorithm – neighbors exchange distance
vectors RIP – distance vector messages are called
RIP advertisements In RIP – RIP advertisements occur every 30
seconds Collections of RIP information used for routing
tables at each router
Routing
Intra-AS routing
OSPF – Open Shortest Path First protocol OSPF successor to RIP Link-State algorithm
Avoids count-to-infinity problem
Routing
Intra-AS routing
OSPF – Open Shortest Path First protocol OSPF – floods AS with Link State information –
Called Link State Advertisements (LSAs) Each router uses LSA to build a complete map
(graph) of the AS Router then runs Dijkstra’s Shortest Path
algorithm to find shortest to each destination
Routing
Intra-AS routing
OSPF – Open Shortest Path First protocol AS are organized in to areas Areas have boundary routers to route from one
area to another (can have more than one inter area router)
Routing
Border Gateway Protocol – BGP Exterior Gateway Routing Protocol Inter- AS routing DV algorithm, except rather than exchanging
costs… BGP exchanges complete routes After all paths come in from neighboring
routers… BGP router examines them and discards
useless ones…
Routing
Border Gateway Protocol – BGP OSPF does not consider politics BGP deals with politics …through routing policies
Routing
Border Gateway Protocol – BGP …then scores each possible route from x to y Scoring function can be anything… Determined by network administrator