1 Network Layer
Goals:
understand principles
behind network layer services:
forwarding routing (path selection) dealing with scale (how a router works)
Overview:
last time
network layer services virtual circuit and datagram
networks
IP: Internet Protocol (what’s inside a router?)
t d
29/9-09 Datakommunikation - Jonny Pettersson, UmU (how a router works) advanced topics: IPv6,
(multicast) instantiation and
implementation in the Internet
today
routing algorithms
- Link state
- Distance Vector
- Hierarchical routing
routing in the Internet
- RIP
- OSPF
- BGP
(broadcast and multicast
routing)
routing algorithm local forwarding table header value output link
0100 0101 0111 3 2 2
Interplay between routing and forwarding
29/9-09
1
2 3
0111
value in arriving packet’s header
1001 1
u y
x
w v
z
2 2 1 3 1 1 2 5 3 5 Graph: G = (N E)
Graph abstraction
29/9-09 Datakommunikation - Jonny Pettersson, UmU
y
1 Graph: G = (N,E) N = set of routers = { u, v, w, x, y, z } E = set of links ={ (u,v), (u,x), (u,w), (v,x), (v,w), (x,w), (x,y), (w,y), (w,z), (y,z) } Remark: Graph abstraction is useful in other network contexts Example: P2P, where N is set of peers and E is set of TCP connections
Graph abstraction: costs
u y
x
w v
z
2 2 1 3 1 2 5 3 5
- c(x,x’) = cost of link (x,x’)
- e.g., c(w,z) = 5
- cost could always be 1, or
inversely related to bandwidth, l l d
29/9-09 Datakommunikation - Jonny Pettersson, UmU
y
x
1
- r inversely related to
congestion Cost of path (x1, x2, x3,…, xp) = c(x1,x2) + c(x2,x3) + … + c(xp-1,xp) Question: What’s the least-cost path between u and z ?
Routing algorithm: algorithm that finds least-cost path
Routing Algorithm classification
Global or decentralized information?
Global:
all routers have complete
topology, link cost info
“link state” algorithms
Static or dynamic?
Static:
routes change slowly over
time Dynamic:
routes change more quickly
29/9-09 Datakommunikation - Jonny Pettersson, UmU
- link state algorithms
Decentralized:
router knows physically-
connected neighbors, link costs to neighbors
iterative process of
computation, exchange of info with neighbors
“distance vector” algorithms routes change more quickly
periodic update in response to link cost
changes
Link State
Förutsättning
Varje nod kan kolla om närmsta granne är
uppe/nere och kan kostnaden för varje länk Basidé
29/9-09 Datakommunikation - Jonny Pettersson, UmU
Alla noder vet hur de ska nå närmsta granne, låt
alla veta det (alla får komplett bild)
Beror av två mekanismer
- Tillförlitlig spridning av link-state information
- Beräkning av vägar från summan av all ackumulerad