Distance Vector link cost changes Link cost changes

  • Slides: 11
Download presentation
Distance Vector: link cost changes Link cost changes: 60 x r good news: travels

Distance Vector: link cost changes Link cost changes: 60 x r good news: travels fast 4 r bad news: travels slow - “count to infinity” problem! y 50 1 z At time t 0, y detects the link-cost change, updates its DV, and informs its neighbors. Dy(x) = min{c(y, x)+Dx(x), c(y, z)+Dz(x)} = min{60+0, 1+5} = 6 “Routing Loop” occurs (from y to x: y send to z and z send to y) At time t 1, z receives the update from y and updates its table. Dz(x) = min{c(z, x)+Dx(x), c(z, y)+Dy(x)} = min{50+0, 1+6} = 7 It computes a new least cost to x and sends its neighbors its DV. At time t 2, y receives z’s update and updates its DV, and inform its neighbor Dy(x) = min{c(y, x)+Dx(x), c(y, z)+Dz(x)} = min{60+0, 1+7} = 8 … … r 44 iterations before algorithm stabilizes Network Layer 4 -1

Distance Vector: link cost changes r Increase from cost to Y X Z {4,

Distance Vector: link cost changes r Increase from cost to Y X Z {4, x } {1, z } Y 4 X 1 50 Z Z X Y {5, y } {1, y } Network Layer 4 -2

Distance Vector: link cost changes Dy(x) = min{c(y, x)+Dx(x), c(y, z)+Dz(x)} = min{60+0, 1+5}

Distance Vector: link cost changes Dy(x) = min{c(y, x)+Dx(x), c(y, z)+Dz(x)} = min{60+0, 1+5} = 6 r Increase Y X Z {6, z } {1, z } Y 60 4 X 1 50 Dy(x)=6 Z Z X Y {5, y } {1, y } Network Layer 4 -3

Distance Vector: link cost changes r Increase Y X Z {6, z } {1,

Distance Vector: link cost changes r Increase Y X Z {6, z } {1, z } Y 60 4 1 Dz(x)=7 Routing loop X 50 Z Z X Y {7, y } {1, y } Dz(x) = min{c(z, x)+Dx(x), c(z, y)+Dy(x)} = min{50+0, 1+6} = 7 Network Layer 4 -4

Distance Vector: link cost changes Dy(x) = min{c(y, x)+Dx(x), c(y, z)+Dz(x)} = min{60+0, 1+7}

Distance Vector: link cost changes Dy(x) = min{c(y, x)+Dx(x), c(y, z)+Dz(x)} = min{60+0, 1+7} = 8 r Increase Y X Z {8, z } {1, z } Y 60 4 1 Dy(x)=8 Routing loop X 50 Z Z X Y {7, y } {1, y } Network Layer 4 -5

Distance Vector: link cost changes r Increase Y X Z {8, z } {1,

Distance Vector: link cost changes r Increase Y X Z {8, z } {1, z } Dz(x)=9 Y 60 4 1 Routing loop X 50 Too many iterations! (count-to-infinity problem) Z Z X Y {9, y } {1, y } Dz(x) = min{c(z, x)+Dx(x), c(z, y)+Dy(x)} = min{50+0, 1+8} = 9 Network Layer 4 -6

Distance Vector: link cost changes A Solution of “count to infinity” problem : Poisoned

Distance Vector: link cost changes A Solution of “count to infinity” problem : Poisoned reverse: 60 x r If z routes through y to get to x : m 4 y 1 50 z z tells y its (z’s) distance to X is infinite (so Y won’t route to X via Z) r will this completely solve count to infinity problem? Network Layer 4 -7

Distance Vector: link cost changes r Poisoned Reverse Y 3) Dy(x) = min{c(y, x)+Dx(x),

Distance Vector: link cost changes r Poisoned Reverse Y 3) Dy(x) = min{c(y, x)+Dx(x), c(y, z)+Dz(x)} = min{60+0, 1+ ∞} = 60 X Z {60, x} {1, z} Y 60 4 X 1 50 2) Send Dz(x)=∞ Z Z X Y {9, y } {1, y } Too many iterations! : 1) Detect count-toinfinity problem

Distance Vector: link cost changes r Poisoned Reverse Y X Z {60, x }

Distance Vector: link cost changes r Poisoned Reverse Y X Z {60, x } {1, z } Y 60 4 X 1 50 4) Send Cy(x)=60 Z Z X Y {50, x } {1, y } 5) Dz(x) = min{c(z, x)+Dx(x), c(z, y)+Dy(x)} = min{50+0, 1+60} = 50 Network Layer 4 -9

Distance Vector: link cost changes r Poisoned Reverse Y 7) Dy(x) = min{c(y, x)+Dx(x),

Distance Vector: link cost changes r Poisoned Reverse Y 7) Dy(x) = min{c(y, x)+Dx(x), c(y, z)+Dz(x)} = min{60+0, 1+ 50} = 51 X Z {51, z } {1, z } Y 60 4 X 1 50 6) Send Cz(x)=50 Z Z X Y {50, x } {1, y } Network Layer 4 -10

Distance Vector: link cost changes r Poisoned Reverse Y X Z {51, z }

Distance Vector: link cost changes r Poisoned Reverse Y X Z {51, z } {1, z } Y 60 4 X 1 50 8) Send Cy(x)=51 Z X Z {50, x } Y {1, y } No Change! 5) Dz(x) = min{c(z, x)+Dx(x), c(z, y)+Dy(x)} = min{50+0, 1+51} = 50 Count-to-Infinite comes to end