/7/5 Roing Elemens of packe forwarding (daaplane) A se of addresses for nodes; each node has a niqe address A each node, a labeling of incoming links and a labeling of ogoing links A se of headers for packes A each node, a forwarding able A each node, a forwarding fncion incoming link label and header + forwarding able > ogoing link label and header
/7/5 Eamples Desinaion-based, fla addresses headers are desinaion addresses forwarding able maps addresses o labels of links forwarding fncion indees addresses Desinaion-based, hierarchical addresses headers are desinaion addresses forwarding able maps prefies o labels of links forwarding fnion is longes prefi mach rle Sorce roing label of an ogoing link is he address of he node a is ail headers are seqences of labels of links forwarding fncion crosses o he ne label Viral circis headers carr a iral circi idenifier (VI) forwarding able maps incoming label and VI o ogoing label and VI Isses in packe forwarding Packes shold no be sen arond in loops Packes shold be sen along good pahs Sie of addresses, headers, and forwarding ables Time complei of he forwarding fncion
/7/5 Roing proocols (conrol plane) Disribed algorihms ha find pahs in a nework; forwarding ables are eenall bild from hem each node has knowledge peraining onl o is ogoing and incoming links aomaic reacion o failres and addiions nodes need o echange roing messages and perform compaions orrecness of roing proocols for desinaion-based forwarding lieness: in he absence of link failres and addiions, he proocol erminaes; a sable sae is eenall reached safe: when in a sable sae, daa packes are sen from heir origins o heir desinaions (addiional condiions ma be imposed) rom Bellman-ord algorihm o disance-ecor proocol A node canno access he disance esimae a an oneighbor o-neighbor has o send roes wih is crren esimae node has o sore las roe receied from o-neighbor There is no global iniialiaion sae. compaion proceeds from crren sae leading o cono-infini Alhogh roes are deliered IO across an link, oerall roes are no deliered in he order he are issed compaional and message complei ma grow eponeniall in he nmber of nodes 3
/7/5 Sae of a disance-ecor proocol Bellman-ord l() d[] disance esimae from o l() is he lengh of link Disance-ecor proocol d disance esimae a node o reach dab [] disance esimae a node o reach ia o-neighbor Q[] IO qee of roes in ransi from o Operaion of a disance-ecor proocol l() Bellman-ord d[] := minfd[]; l() + d[]g Node receies esimae from o-neighbor dab [] := l() + fread from Q[]g d := minfdab [] j o-neighbor of g if d has changed hen for all in-neighbor of do send d o fwrie d in Q[]g 4
/7/5 orwarding along disance esimaes An o-neighbor of sch ha dab [] = d can be sed b o forward daa packes o desinaion Sable sae Q[] = ; ) dab [] = l() + d ied-poin eqaions saisfied in sable sae d = d = minfdab [] j o-neighbor of g = minfl() + d j o-neighbor of g 6= If all ccles are of posiie lengh Disances o are he niqe solion o he preios se of fied-poin eqaions Daa packes are forward o wiho forwarding loops 5
/7/5 Slow erminaion: snchronos behaior d (k) = d (k) = minfl() + d (k ) j o-neighbor of g M d d d Lenghs in black Link fails a k = 3 k = 4 3 k = 5 4 3 k = 5 4 6 k = 3 5 7 6 k = 4 8 7 9 k M M M + M + Slow erminaion: more deail Lenghs in black Link fails a T = M d Q[] d Q[] d Q[] 3 T = (4) 4 3 T = 5 4 3 (5) T = 5 4 (6) 6 T = 3 5 (7) 7 6 T = 4 8 7 6 (8) T M M M + M + 6
/7/5 Terminaion ind a fncion from he sae of he proocol o a well-fonded se ha decreases wih eer arrial of a roe Simplifing assmpion: lenghs are he posiie inegers p o M = f f f M f f i is he nmber of nodes wih disance esimaes eqal o i pls he nmber of roes in qee annoncing disance i Terminaion: eample 4 d Q[] d Q[] d Q[] 3 (3) T = 3 (4) 4 (3) T = 4 4 (4) (3,4) 4 T = 4 4 (4) 4 (4) 5 T = 3 4 (5) 5 4 (4) 3 T = 4 4 5 4 (4) 3 T = 5 4 5 5 Lenghs in black M = 5 Link fails a T = 7
/7/5 Terminaion: general case Node receies roe Q[] preiosl issed b is o-neighbor ; 's disance esimae changes from d o d. d < d ² I ms be he case ha d = l() + ; hs < d. d > d ² f decreases b one. ² f d decreases b one. ² f d increases b jn j. ² f d increases b jn j. ² decreases leicogra call ² decreases leicogra call d = d ² f decreases b one. ² decreases leicogra call Pah componen hi Aribes = srings of nodes wiho repeiions [ f²; ²g Á Á Ã if jáj < jãj Labels hi(á) = ( Á; if 6 Á; ²; oherwise: 8
/7/5 Disances wih pah componen: eample Idenifiers are represened b he nodes hemseles Snchronos behaior M roe roe roe Lenghs in black Link fails a k = (,) (,) (3,) k = (,) (3,) k = (M,) (3,) k = (M,) (M+,) k = 3 (M,) (M+,) (M+,) k = 4 (M,) (M+,) (M+,) Diffsion compaion: idea 4 3 3 Links and fail; all nodes psream of se heir disances o Disance-ecor compaion proceeds as sal 9
/7/5 Diffsion compaion: eample I 3 4 3 4 3 4 4 U U U U Diffsion compaion: eample II U U U 3
/7/5 Message complei 4 3 5 4 4 Lenghs in black Delas in green and nderlined Link is conneced a T = d Q[ 3 ] Q[ 3 ] d 3 Q[ 5 3 ] Q[ 5 4 3 ] d 5 T = () () T = () () () T = (,) (,) T = 3 (,) () 6 T = 4 (,) 5 T = 5 () 4 T = 6 3 Wors-case eponenial message complei Lenghs in black Delas in green and nderlined Link is conneced a T = 4 4 k k- k 4 3 k- 5 k k k+ k-h riangle conains nodes k-, k and k+ wih lenghs and delas depiced Node k+ compes, from ime k - o ime k+ -, disance esimaes wih ales from k+ - down o k - for a oal of k pdaes (proof b indcion)
/7/5 Disance ecor proocols: smmar Slow erminaion ono a sable sae on-o-infini (soled wih pah componen) Pah eploraion Does no presppose rs among nodes A link een ma hae onl local impac Nodes onl hae access o informaion comped b is o-neighbors ailored o daa-packe forwarding based onl on he desinaion Inerne roing: ebgp iner-as link and ebgp session AS Y RX epors a roe o RY5 AS-PATH commniies ebgp AS X RY5 RX RY5 impors a roe from RX Adds LOAL-PRE (possibl as a fncion of commniies) Adds X o AS-PATH Adds RX as NEXT-HOP Epors he roe o he oher roers in AS Y hrogh ibgp I ma epor he roe o border roers in neighbor ASs, omiing LOAL-PRE and NEXT-HOP
/7/5 Inerne roing: ibgp iner-as link and ebgp session ebgp AS Y RY5 RY3 ibgp RY inra-as link ibgp session RX5 epors a roe o RY LOAL-PRE AS-PATH NEXT-HOP AS X RX RY impors a roe from RY5 I is no epored frher Inerne roing: selecion of roes LOAL-PRE AS-PATH lengh inra-as disance o NEXT-HOP (eernal roes are preferred) ideni of NEXT-HOP 3
/7/5 somer-proider, peer-peer: roes AS 6 AS 7 csomer-proider, proider aboe csomer peer-peer AS AS 3 AS 4 Epor rles: AS Desinaion All csomer roes are epored neighbors All roes are epored o csomers AS 5 Selecion rles: somer roes Peer roes Proider roes somer-proider, peer-peer: pahs AS 6 AS 7 csomer-proider, proider aboe csomer peer-peer AS AS 3 AS 4 AS AS 5 Desinaion 4
/7/5 somer-proider, peer-peer: model L[] if L[] =, hen L[] = P if L[] = R, hen L[] = R L[] f; R; Pg c r p c ² ² R r ² ² P p p p c csomer roe r peer roe p proider roe - nsable roe/absence of a roe c r p label of a csomer link R label of a peer link P label of a proider link Ineresing properies L, R, P α, β {c, r, p, } Absorbenc α α L(α) Isoonici α,β α β L(α) L(β) Ne-hop α,β L α, L(β) L(α) = L(β) 5
/7/5 somer-proider, peer-peer: correcness If here are no ccles where each node is a csomer (proider) of he ne arond ccle, hen he roing ecor proocol is correc Pah componen hi Aribes = srings of nodes wiho repeiions [ f²; ²g Á Á Ã if jáj < jãj Labels hi(á) = ( Á; if 6 Á; ²; oherwise: 6
/7/5 somer, proider, peer wih pah componen (L L []; ) = ( L f²g) { } ( f²g) [f²g; { } LOAL-PRE AS-PATH L[] = (L L []; ) A sable sae (c; ) P (c; ) (p; ) P Links no labeled eplicil are csomer links or eer link depiced here is anoher in he opposie direcion 7
/7/5 somer-proider, peer-peer, siblingsibling L[] Aribes = fc; r; pg N [ f²g (; n) Á (; m) if < _ ( = ^ n < m) Labels (c; n) (r; n) (p; n) (c; ) ² ² R (r; ) ² ² L[] f; R; P; Sg P (p; ) (p; ) (p; ) S (c; n + ) (r; n + ) (p; n + ) Oscillaions (c; ; ) S (c; ; ) S S S (c; ; ) S S (c; ; ) (c; ; ) (c; ; ) Iniiall, was a proider of, b hen and merged 8
/7/5 Two sable saes (c; ; ) S (c; ; ) S S S (; ; ) S S (c; ; ) (c; ; ) (c; ; ) somer-proider, peer-peer, siblingsibling: correcness If here are no ccles sch ha: he hae a leas one csomer (proider) link and all oher links are csomer (proider) links or sibling links, hen he roing ecor proocol is correc 9
/7/5 No all pahs are sable R R s P Pah s is no sable; node does no epor a proider roe from o is proider s Pah s is no sable; node does no epor a peer roe from o is peer s Minimm laenc pahs Aribes are pairs (l, c) where l is a posiie lengh and c is a capaci l + K / c is he laenc in deliering a file of sie K across a pah of dela l and capaci c (l ; c ) (l ; c ) = (l + l ; minfc ; c g) (l ; c ) Á (l ; c ) if l + K c < l + K c K is a consan Arbirar ie-break when he laenc is he same Each link has a lengh-capaci pair (l(), c()) where he lengh is posiie P = n n (l(p); c(p)) = (l( ); c( )) (l( n n ); c( n n )) = (l( ) + + l( n n ); minfc( ); : : : ; c( n n )g
/7/5 No opimali 6 (; K=) (; K=3) (; K=3) 3 (; K=) Node elecs pair (, K/); laenc ; pah. Node elecs pair (, K/); laenc 3; pah. Node elecs pair (3, K/3); laenc 6; pah. Howeer, pah wih minimm laenc from o is pah wih pair (, K/3); laenc 5!, K, K 3, K 3, K = 3, K 3, K 3 =, K 3, K 3 Laenc 6 5 Link-sae proocol Each node floods he sae of each of is ogoing links hrogho he nework Each node mainains a daa base wih is percepion of he opolog of he nework Each node seqeniall compes shores pahs o each oher node Each node bilds is forwarding able mapping each node o an or all o-neighbors along a shores pah o ha node
/7/5 Link-Sae Aderisemen (LSA) Link Sae Aderisemen (LSA) node deecs a change in link for all in-neighbor of do send (; ; l(); seq [; ]) o seq [; ] := seq [; ] + Links and are added a a cerain ime lengh seqence nmbers Node sends LSA (,, l(), ) and sends o in-neighbors Node sends LSA (,, l(), 3) and sends o in-neighbors looding of LSAs lengh of as perceied b node receies LSA (,, l, n) from o-neighbor 3 3 if seq [; ] < n hen seq [; ] := n l [; ] := l for all in-neighbor of do send (; ; l; n) o LSA issed b node : insananeos delas nderlined link oer which LSA (,, l, n) is sen link oer which LSA (,, l, n) firs arries a a node looding alwas erminaes Toal nmber of imes an LSA is sen eqals nmber of links
/7/5 looding: addiional consideraions There ma no eis a pah o a node Each LSA has a maimm age, being deleed afer ha age has elapsed Becase of he preios obseraion, LSAs hae o be refreshed eer so ofen When link is added, sends o all is known LSAs; onl propagaes hose ha are more recen han is own orwarding along shores pahs 6 3 3 4 lenghs in black pah raersed b daa packes from o orwarding ables A A A A A Des. Ne Des. Ne Des. Ne Des. Ne Des. Ne local local local local local 3
/7/5 No permanen forwarding loops All ccles are of posiie lengh P Sppose ha a forwarding loop is esablished P arond ccle 5 4 3 P le i+ipi be he shores pah from i+ o 3 P 3 P 4 P 5 4 5 l( P ) = l( ) + l(p ) l(p ) l( P ) = l( ) + l(p ) l(p ) l( 3 P ) = l( 3 ) + l(p ) l(p 3 ) l( 4 3 P 3 ) = l( 4 3 ) + l(p 3 ) l(p 4 ) l( 5 4 P 4 ) = l( 5 4 ) + l(p 4 ) l(p 5 ) l( 5 P 5 ) = l( 5 ) + l(p 5 ) l(p ) l( 5 4 3 ) = l( 5 ) + + l( ) Therefore, ccle 5 4 3 wold no be of posiie lengh Traersing shores-pahs i+ i l( i+ i ) P i P i = P i is a pah followed b daa packes from i o i+ i P i is a shores pah from i+ o P i+ = i+ i P i is a pah followed b daa packes i+ o Indcion hpohesis: P i is a shores pah from i o l(p i ) l(p i ) ) l( i+ i P i ) = l( i+ i ) + l(p i ) l( i+ i ) + l(p i ) = l( i+ i P i ) On he oher hand, l( i+ i P i ) l( i+ i P i ) Therefore, l(p i+ ) = l( i+ i P i ) = l( i+ i P i ) 4
/7/5 Eqal lengh (cos) mlipah 3 3 3 orwarding able a Des. Ne, local Transien loops 3 6 3 3 3 4 Insananeos delas nderlined in green Lenghs in black A T = -, links and do no eis; s forwarding neighbor o is ; s forwarding neighbor o is A T =, links and are added; floods an LSA wih he lengh of link A T =, receies he LSA issed b ; is he new shores pah from o ; s forwarding neighbor o is ; a forwarding loop is esablished beween and A T = 3, receies he LSA issed b ; is he new shores pah from o ; s forwarding neighbor o is ; he forwarding loop is ndone 5
/7/5 Link-sae proocols and iral circis Se p of iral circi i i i+ n n = se 3 A psh node o L o 3 node in se L in A i se 59 node o L o i- i+ 59 se 3 A n pop node in L in n- 3 orwarding of daa packes i i i+ n n = 3 59 3 Link-sae proocols: smmar as erminaion ono a sable sae LSAs arrie along he fases pahs Barel no processing a an node Prespposes rs among nodes One link een is sfficien for flooding Scalabili isses An pah can be chosen from origin o desinaion, wih iral circis Qali-of-serice and raffic engineering 6