ece544lec4_15.ppt
TRANSCRIPT
-
8/18/2019 ECE544Lec4_15.ppt
1/71
ECE544: Communication
Networks-II, Spring 2015
D. Raychaudhuri & D.
Reininger
Lecture 4
Includes teaching materials from L. Peterson
-
8/18/2019 ECE544Lec4_15.ppt
2/71
Toda!s "ecture
• IP basics
– Service model, ac!et synta"
– IP address structure
– #RP, D$%P
– IP ac!et or'arding
• Routing rinciles
– (ellman)*ord algorithm & distance vector+RIP
– Di-!stra algorithm and lin! state +SP*
-
8/18/2019 ECE544Lec4_15.ppt
3/71
I# $asics
(est /0ort Service 1odel
2lobal #ddressing Scheme
#RP & D$%P
IP Pac!et or'arding
-
8/18/2019 ECE544Lec4_15.ppt
4/71
I# Internet
• %oncatenation o 3et'or!s
• Protocol Stac!
R2
R1
H4
H5
H3H2H1
Network 2 (Ethernet)
Network 1 (Ethernet)
H6
Network 3 (FDDI)
Network 4(point-to-point)
H7 R3 H8
R1
ETH FDDI
IPIP
ETH
TP R2
FDDI PPP
IP
R3
PPP ETH
IP
H1
IP
ETH
TP
H8
-
8/18/2019 ECE544Lec4_15.ppt
5/71
Ser%ice &ode'! onne"tion#e$$ (%&t&'r&-&$e%)! *e$t-e++ort %e#i,er (.nre#i&#e $er,i"e)
/ p&"ket$ &re #o$t / p&"ket$ &re %e#i,ere% o.t o+ or%er
/ %.p#i"&te "opie$ o+ & p&"ket &re %e#i,ere% / p&"ket$ "&n e %e#&e% +or & #on' tie
! D&t&'r& +or&t 0er$ion Hen T en'thI%ent F#&'$ ++$et
TT Proto"o# he"k$.
o.r"e%%r
De$tin&tion%%r
ption$ (,&ri&#e) P&%(,&ri&#e)
4 8 16 1 31
D&t&
-
8/18/2019 ECE544Lec4_15.ppt
6/71
(ragmentation and
)eassem*'• /ach net'or! has some 15• Strategy
– ragment 'hen necessary +15 6 Datagram
– try to avoid ragmentation at source host– re)ragmentation is ossible– ragments are sel)contained datagrams– use %S)PD5 +not cells or #1– delay reassembly until destination host
– do not recover rom lost ragments
-
8/18/2019 ECE544Lec4_15.ppt
7/71
E+amp'e
H1 R1 R2 R3 H8
ETH IP (14) FDDI IP (14) PPP IP (512)
PPP IP (376)
PPP IP (512)
ETH IP (512)
ETH IP (376)
ETH IP (512)
I%ent ++$et
t&rt o+ he&%er
Re$t o+ he&%er
14 %&t& te$
I%ent ++$et
t&rt o+ he&%er
1
Re$t o+ he&%er
512 %&t& te$
I%ent ++$et 512
t&rt o+ he&%er
1
Re$t o+ he&%er
512 %&t& te$
I%ent ++$et 124
t&rt o+ he&%er
Re$t o+ he&%er
376 %&t& te$
-
8/18/2019 ECE544Lec4_15.ppt
8/71
'o*a' ddresses
• Proerties– globally uni7ue
– hierarchical8 net'or! 9 host
• Dot 3otation– :;..?@.
-
8/18/2019 ECE544Lec4_15.ppt
9/71
.atagram (orwarding• Strategy
– every datagram contains destinationBs address– i directly connected to destination net'or!, then or'ard to
host– i not directly connected to destination net'or!, then
or'ard to some router– or'arding table mas net'or! number into ne"t ho
– each host has a deault router– each router maintains a or'arding table
• /"amle +R= 3et'or! 3umber 3e"t $o : R<
= R:
< interace :
4 interace ;
-
8/18/2019 ECE544Lec4_15.ppt
10/71
ddress Trans'ation• 1a IP addresses into hysical addresses
– destination host
– ne"t ho router
• echni7ues– encode hysical address in host art o IP address
– table)based
• #RP– table o IP to hysical address bindings
– broadcast re7uest i IP address not in table
– target machine resonds 'ith its hysical address– table entries are discarded i not rereshed
-
8/18/2019 ECE544Lec4_15.ppt
11/71
)# .etai's
• Re7uest *ormat– $ard'areye8 tye o hysical net'or! +e.g., /thernet
– Protocolye8 tye o higher layer rotocol +e.g., IP
– $L/3 & PL/38 length o hysical and rotocol addresses
– eration8 re7uest or resonse– SourceCarget)PhysicalCProtocol addresses
• 3otes– table entries timeout in about :; minutes
– udate table 'ith source 'hen you are the target
– udate table i already have an entry– do not reresh table entries uon reerence
-
8/18/2019 ECE544Lec4_15.ppt
12/71
)# #acket (ormat
T&r'etH&r%w&re%%r (te$ 2 / 5)
T&r'etProto"o#%%r (te$ / 3)
o.r"eProto"o#%%r (te$ 2 / 3)
H&r%w&re tpe 1 Proto"o#Tpe 8
o.r"eH&r%w&re%%r (te$ 4 / 5)
T&r'etH&r%w&re%%r (te$ / 1)
o.r"eProto"o#%%r (te$ / 1)
Hen 48 Pen 32 per&tion
o.r"eH&r%w&re%%r (te$ / 3)
8 16 31
-
8/18/2019 ECE544Lec4_15.ppt
13/71
T& )#
H2
R
H1
I 1
I 12
T: network
1;;;2
1;;;112;;;3
12;;;5
• #1 #RP or maing IP6)#1 addr– medium is not a broadcast tye unli!e /thernet
– re7uires servers 'hich maintain #RP tables
– concet o multile Elogical IP subnetsF +LIS
-
8/18/2019 ECE544Lec4_15.ppt
14/71
.namic /ost Contro'
#rotoco' ./C#• D$%P server er net'or! or IPaddress assignment
• Static list o IP6)hysical addr ordynamic binding rom common ool
• $ost boot)u via 'ell)!no'n address=GG.=GG.=GG.=GG
• D$%P Erelay agentF can be used toavoid one server er net'or!
-
8/18/2019 ECE544Lec4_15.ppt
15/71
.namic /ost Contro'
#rotoco' ./C#• D$%P ac!et ormat +runs over5DP
Operation HType HLen Hops
Xid
Secs Flag
ciaddr
yiaddr
siaddr
giaddr
chaddr (1!"
....
-
8/18/2019 ECE544Lec4_15.ppt
16/71
Internet Contro' &essage
#rotoco' IC• /cho +ing• Redirect +rom router to source host
• Destination unreachable +rotocol, ort, or
host• L e"ceeded +so datagrams donBt cycle
orever
• %hec!sum ailed
• Reassembly ailed
• %annot ragment
-
8/18/2019 ECE544Lec4_15.ppt
17/71
)outing $asics
-
8/18/2019 ECE544Lec4_15.ppt
18/71
)outing #ro*'em• 3et'or! as a 2rah
Problem8 *ind lo'est cost ath bet'een t'onodes
• *actors
– static8 toology– dynamic8 load
4
36
21
1
1
D
FE
*
-
8/18/2019 ECE544Lec4_15.ppt
19/71
Two main approaces• DH8 Distance)vector rotocols
• LS8 Lin! state rotocols
• Hariations o above methods alied to8– Intra)domain routing +smallCmed net'or!s•RIP, SP*
– Inter)domain routing +largeCglobal
net'or!s•(2P)4
-
8/18/2019 ECE544Lec4_15.ppt
20/71
.istance 3ector #rotoco's
• /mloyed in the early #ranet
• Distributed ne"t ho comutation
– adative
• 5nit o inormation e"change
– vector o distances to destinations
• Distributed (ellman)*ord #lgorithm
-
8/18/2019 ECE544Lec4_15.ppt
21/71
.istance 3ector
• /ach node maintains a set o triles– (Destination, Cost, NextHop)
• /"change udates directly connected neighbors– eriodically +on the order o several seconds– 'henever table changes +called triggered udate
• /ach udate is a list o airs8– +Destination, Cost)
• 5date local table i receive a EbetterF route– smaller cost
– came rom ne"t)ho• Reresh e"isting routes delete i they time out
-
8/18/2019 ECE544Lec4_15.ppt
22/71
.istri*uted $e''man-(ordStart Conditions:
Each router starts with a vector of (zero) distancesto all directly attached networks
Send step:
Each router advertises its current vector to allneighboring routers.
Receive step:pon receiving vectors fro! each of its neighbors"router co!putes its own distance to each neighbor.#hen" for every network $" router finds that neighbor
who is closer to $ than to any other neighbor.Router updates its cost to $. %fter doing thisfor all $" router goes to send step.
-
8/18/2019 ECE544Lec4_15.ppt
23/71
E+amp'e - initia' distances
%
&
E
C
'
nfo at
node%
&
C
'
% & C
* +
* ,+ ,
+ + -
*
,
,
-
-
'istance to node
'
+
+-
E , + -
,
+
-
E
-
8/18/2019 ECE544Lec4_15.ppt
24/71
E recei%es .!s routes
%
&
E
C
'
nfo at
node%
&
C
'
% & C
* +
* ,+ ,
+ + -
*
,
,
-
-
'istance to node
'
+
+-
E , + -
,
+
-
E
-
8/18/2019 ECE544Lec4_15.ppt
25/71
E updates cost to C
%
&
E
C
'
nfo at
node%
&
C
'
% & C
* +
* ,+ ,
+ + -
*
,
,
-
-
'istance to node
'
+
+-
E , / -
,
+
-
E
-
8/18/2019 ECE544Lec4_15.ppt
26/71
recei%es $!s routes
%
&
E
C
'
nfo at
node%
&
C
'
% & C
* +
* ,+ ,
+ + -
*
,
,
-
-
'istance to node
'
+
+-
E , / -
,
+
-
E
-
8/18/2019 ECE544Lec4_15.ppt
27/71
updates cost to C
%
&
E
C
'
nfo at
node%
&
C
'
% & C
*
* ,+ ,
+ + -
*
,
,
-
-
'istance to node
'
+
+-
E , / -
,
+
-
E
-
8/18/2019 ECE544Lec4_15.ppt
28/71
recei%es E!s routes
%
&
E
C
'
nfo at
node%
&
C
'
% & C
*
* ,+ ,
+ + -
*
,
,
-
-
'istance to node
'
+
+-
E , / -
,
+
-
E
-
8/18/2019 ECE544Lec4_15.ppt
29/71
updates cost to C and .
%
&
E
C
'
nfo at
node%
&
C
'
% & C
* 0
* ,+ ,
+ + -
*
,
,
-
-
'istance to node
'
1
+-
E , / -
,
+
-
E
-
8/18/2019 ECE544Lec4_15.ppt
30/71
(ina' distances
%
& C
'
nfo at
node%
&
C
'
% & C
2 0
2 ,0 ,
1 1 -
*
,
,
-
-
'istance to node
'
1
1-
E , 0 / -
,
0/
-
E
E
-
8/18/2019 ECE544Lec4_15.ppt
31/71
(ina' distances ater 'ink
ai'ure
%
& C
'
nfo at
node%
&
C
'
% & C
*
* ,
,
, 1 -
*
,
,
-
-
'istance to node
'
,
1
-
E , 3 ,,
,
3
,,
E
E
-
8/18/2019 ECE544Lec4_15.ppt
32/71
3iew rom a node
%
&
E
C
'
dest
%
&
C
'
% & '
, ,/ 0
* 02 3 /
/ ,, -
*
,
,
-
-
4e5t hop
E6s routing table
-
8/18/2019 ECE544Lec4_15.ppt
33/71
.istance 3ector E+amp'e
#1 #$
#%
#& #'
%
$
%1
Inoat
3ode
R: R= R< R4 RG
R: ; 4 ) ) )
R= 4 ; = 4 )
R< ) = ; : ?
R4 ) 4 : ; )
RG ) ) ? ) ;
-
8/18/2019 ECE544Lec4_15.ppt
34/71
.3 E+amp'e cont
#1 #$
#%
#& #'
%
$
%1
Inoat
3ode
R: R= R< R4 RG
R: ; 4 @ > )
R= 4 ; = < ::
R< @ = ; : ?
R4 > < : ; :;
RG ) :: ? :; ;
-
8/18/2019 ECE544Lec4_15.ppt
35/71
.3 E+amp'e cont
#1 #$
#%
#& #'
%
$
%1
Inoat
3ode
R: R= R< R4 RG
R: ; 4 @ A :G
R= 4 ; = < ::
R< @ = ; : ?
R4 A < : ; :;
RG :G :: ? :; ;
-
8/18/2019 ECE544Lec4_15.ppt
36/71
.3 E+amp'e 6 ater 'ink )2-)7 *reaks
#1 #$
#%
#& #'
%
%1
Inoat
3ode
R: R= R< R4 RG
R: ; 4 @ A :G
R= 4 ; ) < ::
R< @ ) ; : ?
R4 A < : ; :;
RG :G :: ? :; ;
-
8/18/2019 ECE544Lec4_15.ppt
37/71
.3 E+amp'e 6 ater 'ink )2-)7 *reaks
#1 #$
#%
#& #'
%
%1
Inoat
3ode
R: R= R< R4 RG
R: ; 4 ) ) )
R= 4 ; G 4 :4
R< ) ) ; : ?
R4 ) 4 : ; :;
RG ) :4 ? :; ;
-
8/18/2019 ECE544Lec4_15.ppt
38/71
.3 E+amp'e 6 ater 'ink )2-)7 *reaks
#1 #$
#%
#& #'
%
%1
Inoat
3ode
R: R= R< R4 RG
R: ; 4 ? > :>
R= 4 ; G 4 :4
R< ? G ; : ?
R4 > 4 : ; :;
RG :> :4 ? :; ;
-
8/18/2019 ECE544Lec4_15.ppt
39/71
Te *ouncing eect
%
-0
,
,
&
C
&
C -,
dest cost
%C ,
,
dest cost
%
& ,-
dest cost
-
8/18/2019 ECE544Lec4_15.ppt
40/71
C sends routes to $
%
-0 ,
&
C
&
C -,
dest cost
%C ,
+
dest cost
%
& ,-
dest cost
-
8/18/2019 ECE544Lec4_15.ppt
41/71
$ updates distance to
%
-0 ,
&
C
&
C -,
dest cost
%C ,
1
dest cost
%
& ,-
dest cost
-
8/18/2019 ECE544Lec4_15.ppt
42/71
$ sends routes to C
%
-0 ,
&
C
&
C -,
dest cost
%C ,
1
dest cost
%
& ,/
dest cost
-
8/18/2019 ECE544Lec4_15.ppt
43/71
C sends routes to $
%
-0 ,
&
C
&C -
,
dest cost
%C ,
0
dest cost
%
& ,/
dest cost
-
8/18/2019 ECE544Lec4_15.ppt
44/71
/ow are tese 'oops caused8
• bservation :8
– (Bs metric increases
• bservation =8– % ic!s ( as ne"t ho to #
– (ut, the imlicit ath rom % to #
includes itselJ
-
8/18/2019 ECE544Lec4_15.ppt
45/71
%oiding te $ouncing
Eect• Select loo)ree aths
• ne 'ay o doing this8
– each route advertisement carriesentire ath
– i a router sees itsel in ath, it re-ects
the route• (2P does it this 'ay
– Sace roortional to diameterCheng" Riley et al
-
8/18/2019 ECE544Lec4_15.ppt
46/71
Computing Imp'icit #ats
• o reduce the sace re7uirements
– roagate or each destination not only thecost but also its redecessor
– can recursively comute the ath
– sace re7uirements indeendent o diameter
5 y z
w u
v v uu w
w z
z y
y z
-
8/18/2019 ECE544Lec4_15.ppt
47/71
.istance 3ector in #ractice
• RIP and RIP=
– uses slit)horiKonCoison reverse
• (2PCIDRP– roagates entire ath
– ath also used or e0ecting olicies
-
8/18/2019 ECE544Lec4_15.ppt
48/71
)I# #acket (ormat
)ommand* +er ,eros
-et 1 Family -et 1 ddr
-et 1 ddr (cont."
/istance to -et 1
/istance to -et $
-et $ Family -et $ ddr
00
(net addr* distance pairs"
pdates sent 2&3 sec
-
8/18/2019 ECE544Lec4_15.ppt
49/71
"ink State )outing
• /ach node assumed to !no' stateo lin!s to its neighbors
• Ste :8 /ach node broadcasts itsstate to all other nodes
• Ste =8 /ach node locally
comutes shortest aths to allother nodes rom global state
-
8/18/2019 ECE544Lec4_15.ppt
50/71
"ink State )outing: $ui'ding
*'ocks• Reliable broadcast mechanism
– ooding
– se7uence number issues
• Shortest ath tree +SP algorithm
– Di-!straBs SP algorithm
-
8/18/2019 ECE544Lec4_15.ppt
51/71
"ink state packets "S#s
• Periodically, each node creates aLin! state ac!et containing8
– 3ode ID– List o neighbors and lin! cost
– Se7uence number
– ime to live +L• 3ode oututs LSP on all its lin!s
-
8/18/2019 ECE544Lec4_15.ppt
52/71
)e'ia*'e 'ooding• Mhen node i receives LSP rom node -8
– I LSP is the most recent LSP rom - that ihas seen so ar, i saves it in databaseand or'ards a coy on all lin!s e"cetlin! LSP 'as received on.
– ther'ise, discard LSP.
-
8/18/2019 ECE544Lec4_15.ppt
53/71
S#T a'goritm .i9kstra
• SP N Oa
• or all nodes v – i v ad-acent to a then D(v) N cost +a, v
– else D(v) = infnity
• Loo– fnd w not in SP, 'here D(w) is min
– add w in SP
– or all v ad-acent to w and not in SP• D(v) = min (D(v), D(w) + C(w, v))
• until all nodes are in SP
-
8/18/2019 ECE544Lec4_15.ppt
54/71
"ink State 'goritm
7looding:,) 8eriodically distribute link9stateadvertise!ent (S%) to neighbors
9 S% contains delays to each
neighbor-) nstall received S% in S database1) Re9distribute S% to all neighbors
8ath Co!putation,) se 'i;kstra6s shortest path algorith!
to co!pute distances to all destinations-) nstall
-
8/18/2019 ECE544Lec4_15.ppt
55/71
(orward Searc 'goritm
.i9kstra:. InitialiKe Confrmed list 'ith sel entry ;=. *or node -ust added to confrmed list, call it EnextF
and select is LSP
-
8/18/2019 ECE544Lec4_15.ppt
56/71
.i9kstra;S#( &etod 1
#1 #$
#%
#& #'
%
$
%1
Ste %onQrmed+R, cost, ne"tho
entative+R, cost, ne"tho
: +R:,;,) )
= +R:,;,) +R=,4,R=
< +R:,;,)
+R=,4,R=
+R,R=
.i9k t ;S#( & t d 1
-
8/18/2019 ECE544Lec4_15.ppt
57/71
.i9kstra;S#( &etod 1
#1 #$
#%
#& #'
%
$
%1
Ste %onQrmed+R, cost, ne"tho
entative+R, cost, ne"tho
4 +R:,;,)
+R=,4,R=
+R,R=
+R4,A,R
-
8/18/2019 ECE544Lec4_15.ppt
58/71
.i9kstra;S#( &etod 1
#1 #$
#%
#& #'
%
$
%1
Ste %onQrmed+R, cost, ne"tho
entative+R, cost, ne"tho
@ +R:,;,)
+R=,4,R=
+R
-
8/18/2019 ECE544Lec4_15.ppt
59/71
.i9kstra S#T &etod 2
F
!
/ 4
)$
$
$
&
1
1
1
&
'
$tep PT D()< P() D(")< P(") D(%)< P(%) D(e)< P(e) D(+)< P(+)
2< 5< 1< = =
'
! ) / 4 F
.i9kst S#T & t d 2
-
8/18/2019 ECE544Lec4_15.ppt
60/71
F
!
/ 4
)$
$
$
&
1
1
1
&
'
$tep PT D()< P() D(")< P(") D(%)< P(%) D(e)< P(e) D(+)< P(+)
2< 5< 1< = =
1 D 2< 4< D 2< D =
'
! ) / 4 F
.i9kstra S#T &etod 2
.i9kst S#T & t d 2
-
8/18/2019 ECE544Lec4_15.ppt
61/71
F
!
/ 4
)$
$
$
&
1
1
1
&
'
$tep PT D()< P() D(")< P(") D(%)< P(%) D(e)< P(e) D(+)< P(+)
2< 5< 1< = =
1 D 2< 4< D 2< D =
2 DE 2< 3< E 4< E
'
! ) / 4 F
.i9kstra S#T &etod 2
-
8/18/2019 ECE544Lec4_15.ppt
62/71
F
!
/ 4
)$
$
$
&
1
1
1
&
'
$tep PT D()< P() D(")< P(") D(%)< P(%) D(e)< P(e) D(+)< P(+)
2< 5< 1< = =
1 D 2< 4< D 2< D =
2 DE 2< 3< E 4< E3 DE* 3< E 4< E
'
! ) / 4 F
.i9kstra S#T &etod 2
-
8/18/2019 ECE544Lec4_15.ppt
63/71
F
!
/ 4
)$
$
$
&
1
1
1
&
'
$tep PT D()< P() D(")< P(") D(%)< P(%) D(e)< P(e) D(+)< P(+)
2< 5< 1< = =
1 D 2< 4< D 2< D =
2 DE 2< 3< E 4< E
3 DE* 3< E 4< E
4 DE* 4< E
'
! ) / 4 F
.i9kstra S#T &etod 2
.i9kstra S#T &etod 2
-
8/18/2019 ECE544Lec4_15.ppt
64/71
F
!
/ 4
)$
$
$
&
1
1
1
&
'
$tep PT D()< P() D(")< P(") D(%)< P(%) D(e)< P(e) D(+)< P(+)
2< 5< 1< = =
1 D 2< 4< D 2< D =
2 DE 2< 3< E 4< E
3 DE* 3< E 4< E
4 DE* 4< E
5 DE*F
'
! ) / 4 F
.i9kstra S#T &etod 2
-
8/18/2019 ECE544Lec4_15.ppt
65/71
"ink State in #ractice
• SP* +en Shortest Path *irstProtocol
– most commonly used routing rotocolin the Internet
– suort or authentication, addlhierarchy, load balancing
-
8/18/2019 ECE544Lec4_15.ppt
66/71
;S#( #ackets 'e ption$ Tpe1
F#&'$ N.er o+ #ink$
ink tpe N.>T :etri"
ink $t&te ID
%,erti$in' ro.ter
$e?.en"e n.er
ink ID
ink %&t&
ption T in+or&tion:ore #ink$
"he"k$. en'th
-
8/18/2019 ECE544Lec4_15.ppt
67/71
"ink State Caracteristics
• Mith consistent LSD(s, all nodes
comute consistent loo)ree aths• Limited by Di-!stra comutation
overhead, sace re7uirements
• %an still have transient loos
%
&
C
'
,1
0 -
,
Pac5et from )67
may loop around !/)
-
8/18/2019 ECE544Lec4_15.ppt
68/71
;S#( Se
-
8/18/2019 ECE544Lec4_15.ppt
69/71
#ro*'em: )outer (ai'ure
• # ailed router and comes u butdoes not remember the last
se7uence number it used beore itcrashed
• 3e' LSPs may be ignored i they
have lo'er se7uence number
-
8/18/2019 ECE544Lec4_15.ppt
70/71
;ne so'ution: "S# ging
• 3odes eriodically decrement age+L o stored LSPs
• LSPs e"ire 'hen L reaches ;– LSP is re)ooded once L N ;
• Rebooted router 'aits until all LSPs
have e"ired• rade)o0 bet'een re7uency o LSPs
and router 'ait ater reboot
-
8/18/2019 ECE544Lec4_15.ppt
71/71
Toda!s /omework• Peterson & Davie
) 4.: