Presentation is loading. Please wait.

Presentation is loading. Please wait.

University of Delaware CPEG 4191 Distance Vector Routing – Dynamic Programming zLimited state information. Just the next hop and cost. A B D G F C H E.

Similar presentations


Presentation on theme: "University of Delaware CPEG 4191 Distance Vector Routing – Dynamic Programming zLimited state information. Just the next hop and cost. A B D G F C H E."— Presentation transcript:

1 University of Delaware CPEG 4191 Distance Vector Routing – Dynamic Programming zLimited state information. Just the next hop and cost. A B D G F C H E addressNext hop cost AA0 BB1 CC1 DD1 EE2 FD2 GB2 HB3 A addressNext hop cost AA1 BB1 CA2 DD0 EB2 FF1 GB2 HB3 D

2 University of Delaware CPEG 4192 Distance Vector Routing – Dynamic Programming zSuppose a new node comes on line. A B D G F C H E I addressNext hop Cos t A?  B?  C?  D?  E?  F?  G?  H?  II0 I

3 University of Delaware CPEG 4193 Distance Vector Routing – Dynamic Programming zSuppose a new node comes on line. zSuppose I first talks to A. A B D G F C H E I addressNext hop cost AA0 BB1 CC1 DD1 EE2 FD2 GB2 HB3 A addressNext hop cost AA1 BA2 CA2 DA2 EA3 FA3 GA2 HA2 II0 I

4 University of Delaware CPEG 4194 Distance Vector Routing – Dynamic Programming zSuppose a new node comes on line. zSuppose I first talks to A. zNext I talks to D. A B D G F C H E I addressNext hop cost AA1 BA2 CA2 DD1 EA3 FD2 GA2 HA2 II0 I addressNext hop cost AA1 BB1 CA2 DD0 EB2 FF1 GB2 HB3 D

5 University of Delaware CPEG 4195 Distance Vector - Algorithm zStart with all destinations with infinite distance, except for the actual node, which is distance 0. zEvery 30 seconds (RIP), or when a change occurs in the table, send table to neighbors. zIf the distance to a prefix advertised by a neighbor is less plus the distance to the neighbor is less than known distance, reduce distance to prefix and route packets with that destination prefix to that neighbor.

6 University of Delaware CPEG 4196 Count to Infinity Problem ABCDE  initial 1  1 iteration 12  2 iterations 123  3 iterations 12344 iterations ABCDE 1234initial 32341 iteration 34342 iterations 53543 iterations 56564 iterations

7 University of Delaware CPEG 4197 Approaches to Mitigate Count Infinity Why is count to infinity a problem? It generates tons of routing updates – too much traffic The network should report that a route is unreachable. Put upper bound an upper bound the the diameter of the network. But what is the network grows (as it did). Split horizon. A router does not report a distance to the neighbor it learned the distance from. Split horizon with poison reverse. If A advertises the best cost to E to B, then B advertises a cost of infinity to E back to A. This only works for loops that involve two nodes. With larger loops, the mitigation is more difficult and these remedies reduce the rate of convergence. The way to fix it is to use link state routing.

8 University of Delaware CPEG 4198 Link State Routing (IS-IS and OSPF) zEach router learns the entire network. (Compare to distance vector) zIf the entire network is known, the shortest cost routing can be computed. zEach router advertises to its neighbors who it is connected to. zEach router floods any advertisement it receives.

9 University of Delaware CPEG 4199 Link State Routing zHELLO – Determining who the router is connected to. zReliable Flooding of LSA (link state advertisement) and keeping/getting up- to-date information. zCalculate shortest path.

10 University of Delaware CPEG 41910 HELLO zPeriodically, a node sends a HELLO LSP (Link State Packet) to its neighbors. zThe neighbor responds with a HELLO reply. zThis way the router can determine which router it is connected to. zThe default period is 10 – 30sec.

11 University of Delaware CPEG 41911 Reliable Flooding zEach LSP contains yThe ID of the node that created the LSP. yThe list of the neighbors directly connected to that node with the cost of each link. yA sequence number yA time to live zEach LSP reception is ACKed.

12 University of Delaware CPEG 41912 Sequence Number zThe node that generated the LSA increments the sequence number for each LSA it sends out. zThe sequence number is 32 bits long, so wrap around is not possible. zWhen router receives an LSA, it checks if the seq num of the received LSA is larger than the LSA in memory. zIf the LSA has a larger seq. num, it is stored, the old one discarded and the new LSA is flooded to all neighbors, except the one that sent it. zIf the LSA has a smaller or equal seq. no, it is discarded.

13 University of Delaware CPEG 41913 Time to Live (TTL) zEach second a LSA sits in memory, its TTL is decremented. zEach time the LSA is transmitted, its TTL is decremented. zWhen the TTL reaches zero, the LSA is discarded and the router floods the LSA with TTL=0 to tell other routers to delete this information.

14 University of Delaware CPEG 41914 zA LSA is generated periodically (on the order of hours) or when a change is detected (via the HELLO). zWhen a node reboots, it doesn’t know its seq. no. yIt floods its link state with seq. no. 0. yIt sends a Link State Request to its neighbors yThe neighbors respond with the most up to date LSA they have. These LSA may contain the LSA of the before it crashed. In this case, the node updates its seq. no. yRemember that every time a router gets a new info, it floods the information.

15 University of Delaware CPEG 41915 Security Issues zAn attacker could send fake LSAs. zMust filter out LSA from any other source but the neighbor and use authentication. zIf a router is compromised, it could advertise a low cost to all nodes. Then all nodes will send packets to this node and the network would stop working.

16 University of Delaware CPEG 41916 metrics zARPANET – the link cost included the size of the queue (a measure of congestion). yThis does not work.. zStatic cost – just use delay (Juniper seems to do this) zDynamic cost – must make sure that link costs do not vary too much. yThe cost can is restricted to only change slowly over time. yThe cost between links cannot vary much. There cannot be more than a factor of 7 difference between the most and least expensive link. yThe cost of a link can only vary by a factor of 3. yCost only depends on utilization at moderate or high loads. yOnly send updates when the cost crosses a threshold. yIs this stable?

17 University of Delaware CPEG 41917 TOS – Type of Service zA data packet can identify the type of service it wants. zThe router can provide different routing according to the TOS.. zTo support this, OSPF allows the link cost to depend on the TOS. zThis is not widely deployed.

18 University of Delaware CPEG 41918 OSPF Header versiontypelength Source address Area ID ChecksumAuthentication type Authentication Type: 1=hello 2=database description 3=link status request 4=link state update 5=link state ack Which area the packet originated Address of the sender

19 University of Delaware CPEG 41919 OSPF LSA LS AgeOptionsType=1 Link State ID Advertising Router Seq. No ChecksumLength Number of Links Link ID Link Data MetricLink TypeNum TOS Optional TOS More Links Like TTL The same

20 University of Delaware CPEG 41920

21 University of Delaware CPEG 41921

22 University of Delaware CPEG 41922


Download ppt "University of Delaware CPEG 4191 Distance Vector Routing – Dynamic Programming zLimited state information. Just the next hop and cost. A B D G F C H E."

Similar presentations


Ads by Google