The Fundamentals of Routing

Size: px
Start display at page:

Download "The Fundamentals of Routing"

Transcription

1 The Fundamentals of Routing EE22 Fall 20 Scott Shenker Materials with thanks to Jennifer Rexford, Ion Stoica, Vern Paxson and other colleagues at Princeton and UC Berkeley

2 Announcements 94 is set up: 4 units: CCN: 2557 Everyone should be off wait list by now. Waiting for more accounts o Send me if you need one. Will set up bspace for 94 to hand in homework Open today with questions about project Hope you all handed in HW HW2 out on Wednesday Survey will be available after Wednesday s class 2

3 Questions about Project (for Shaddi) 3

4 Warning. This lecture contains detailed calculations Prolonged exposure may induce drowsiness Do not operate heavy machinery while listening 4

5 Where Are We? Motivated our basic design decisions Best-effort, packet-switching, blah, blah, blah Last lecture: how to build reliable transport on top This lecture: how to build the network itself Basic Task: deliver packets Need to route them, from anywhere to anywhere Today, we focus on routing 5

6 The Traditional Routing Curriculum Learning switches Link-state routing Dijkstra s Algorithm Distance-vector routing Bellman-Ford 6

7 I have some bad news.. Don t have anything interesting to say about routing Will follow standard curriculum Much of it covered in the text But will focus more on principles than details Will work through two algorithms, but details may wait until Wednesday..34 slides! Let s just see how timing goes If you don t want to be bored, ask questions! 7

8 Remember. Goal of the first portion of course is conceptual Ignore real networks Think about the basic concepts That s where we are. Later will deal with reality 8

9 Basics of Routing and Forwarding 9

10 Addressing (at a conceptual level) Assume all hosts have unique IDs No particular structure to those IDs Later in course will talk about real IP addressing 0

11 Packets (at a conceptual level) Assume packet headers contain: Source ID, Destination ID, and perhaps other information Destination Identifier Source Identifier Why include this? Payload

12 Switches/Routers Multiple ports (attached to other switches or hosts) incoming links Switch outgoing links Ports are typically duplex (incoming and outgoing) 2

13 Example of Network Graph Six ports, incoming/outgoing Four ports, incoming/outgoing 3

14 A Variety of Networks ISPs: carriers Backbone Edge Border (to other ISPs) Enterprises: companies, universities Core Edge Border (to outside) Datacenters: massive collections of machines Top-of-Rack Aggregation and Core Border (to outside) 4

15 UUNET s North American Network 5

16 Level3 s American Network 6

17 Enterprise Network 7

18 Partial Datacenter Network 8

19 Switches Enterprise/Edge: typically 24 to 48 ports Aggregation switches: 92 ports or more Backbone: typically fewer ports Border: typically very few ports 9

20 Forwarding Decisions When packet arrives, must choose outgoing port incoming links Switch outgoing links Consider packet header and routing table Decision is based on routing state (table) in switch 20

21 Forwarding Decisions When packet arrives.. Must decide which outgoing port to use In single transmission time Forwarding decisions must be simple Routing state dictates where to forward packets Assume decisions are deterministic Global routing state means collection of routing state in each of the routers Will focus on where this routing state comes from But first, a few preliminaries. 2

22 Forwarding vs Routing Forwarding: data plane Directing a data packet to an outgoing link Individual router using routing state Routing: control plane Computing paths the packets will follow Routers talking amongst themselves Jointly creating the routing state Two very different timescales. 22

23 Validity of Routing State 23

24 Valid Routing State Global routing state is valid if it produces forwarding decisions that always deliver packets to their destinations Valid is my terminology, not standard Goal of routing protocols: compute valid state But how can you tell if routing state if valid? 24

25 Necessary and Sufficient Condition Global routing state is valid if and only if: There are no dead ends (other than destination) There are no loops A dead end is when there is no outgoing port A packet arrives, but the forwarding decision does not yield any outgoing port A loop is when a packet cycles around the same set of nodes forever 25

26 Necessary: Obvious If you run into a deadend before hitting destination, you ll never reach the destination If you run into a loop, you ll never reach destination With deterministic forwarding, once you loop, you ll loop forever (assuming routing state is static) 26

27 Wandering Packets Packet reaches deadend and stops Packet falls into loop and never reaches destination 27

28 Sufficient: Easy Assume no deadends, no loops Packet must keep wandering, without repeating If ever enter same switch from same port, will loop Because forwarding decisions are deterministic Only a finite number of possible ports for it to visit It cannot keep wandering forever without looping Must eventually hit destination 28

29 The Secret of Routing Avoiding deadends is easy Avoiding loops is hard The key difference between routing protocols is how they avoid loops! Don t focus on details of mechanisms Just ask how are loops avoided? Will return to this later. 29

30 Making Forwarding Decisions Map PacketState+RoutingState into OutgoingPort At line rates.. Packet State: Destination ID Source ID Incoming Port (from switch, not packet) Other packet header information? Routing State: Stored in router 30

31 Forwarding Decision Dependencies Must depend on destination Could also depend on : Source: requires n 2 state Input port: not clear what this buys you Other header information: let s ignore for now We will focus only on destination-based routing But first consider the alternative 3

32 Source/Destination-Based Routing Paths from two different sources (to same destination) can be very different 32

33 Destination-Based Routing Paths from two different sources (to same destination) must coincide once they overlap 33

34 Destination-Based Routing Paths to same destination never cross Once paths to destination meet, they never split Set of paths to destination create a delivery tree Must cover every node exactly once Spanning Tree rooted at destination 34

35 A Delivery Tree for a Destination 35

36 Checking Validity of Routing State Focus only on a single destination Ignore all other routing state Mark outgoing port with arrow There can only be one at each node Eliminate all links with no arrows Look at what s left. 36

37 Example 37

38 Pick Destination 38

39 Put Arrows on Outgoing Ports 39

40 Remove Unused Links Leaves Spanning Tree: Valid 40

41 Second Example 4

42 Second Example Is this valid? 42

43 Lesson. Very easy to check validity of routing state for a particular destination Deadends are obvious Node without outgoing arrow Loops are obvious Disconnected from rest of graph 43

44 Computing Routing State 44

45 Forms of Route Computation Learn from observing. Not covered in your reading Centralized computation One node has the entire network map Pseudo-centralized computation All nodes have the entire network map Distributed computation No one has the entire network map 45

46 How Can You Avoid Loops? Restrict topology to spanning tree If the topology has no loops, packets can t loop! Central computation Can make sure no loops Minimizing metric in distributed computation Loops are never the solution to a minimization problem 46

47 Self-Learning on Spanning Tree 47

48 Easiest Way to Avoid Loops Use a topology where loops are impossible! Take arbitrary topology Build spanning tree (algorithm covered later) Ignore all other links (as before) Only one path to destinations on spanning trees Use learning switches to discover these paths No need to compute routes, just observe them 48

49 Consider previous graph 49

50 A Spanning Tree 50

51 Another Spanning Tree 5

52 Yet Another Spanning Tree 52

53 Flooding on a Spanning Tree If you want to send a packet that will reach all nodes, then switches can use the following rule: Ignoring all ports not on spanning tree! Originating switch sends flood packet out all ports When a flood packet arrives on one incoming port, send it out all other ports 53

54 Flooding on Spanning Tree 54

55 Flooding on Spanning Tree (Again) 55

56 Flooding on a Spanning Tree This works because the lack of loops prevents the flooding from cycling back on itself Eventually all nodes will be covered, exactly once 56

57 This Enables Learning! There is only one path from source to destination Each switch can learn how to reach a another node by remembering where its flooding packets came from! If flood packet from Node A entered switch from port 4, then to reach Node A, switch sends packets out port 4 57

58 Learning from Flood Packets Node A can be reached through this port Node A can be reached through this port Node A Once a node has sent a flood message, all other switches know how to reach it. 58

59 General Approach Flood first packet All switches learn where you are When destination responds, all switches learn where it is Done. 59

60 Self-Learning Switch When a packet arrives Inspect source ID, associate with incoming port Store mapping in the switch table Use time-to-live field to eventually forget mapping Packet tells switch how to reach A. B A C D 60

61 Self Learning: Handling Misses When packet arrives with unfamiliar destination Forward packet out all other ports Response will teach switch about that destination When in doubt, shout! B A C D 6

62 General Rule When switch receives a packet: index the switch table using destination ID if entry found for destination { } if dest on port from which packet arrived then drop packet else forward packet on port indicated else flood Why do this? forward on all but the interface on which the frame arrived 62

63 Summary of Learning Approach Avoids loop by restricting to spanning tree This makes flooding possible Flooding allows packet to reach destination And in the process switches learn how to reach source of flood No route computation 63

64 Weaknesses of This Approach? Requires loop-free topology (Spanning Tree) Slow to react to failures (entries time out) Very little control over paths Spanning Trees suck. 64

65 On to other routing techniques 65

66 A Little Test How many of you did the reading? 66

67 The Task Remove sheet of paper from beanbag, but do not look at sheet of paper until I say so You will have five minutes to complete this task Each sheet says: You are node X You are connected to nodes Y,Z Your job: find route from source (node ) to destination (node 40) in five minutes 67

68 Ground Rules You may not: Leave your seat (but you can stand) Pass your sheet of paper Let anyone copy your sheet of paper You may: Ask nearby friends for advice Shout to other participants (anything you want) Curse your instructor (sotto voce) You must: Try 68

69 Go! 69

70

71 5 Minute Break Questions Before We Proceed? 7

72 How Can You Avoid Loops? Restrict topology to spanning tree Central computation (can make sure no loops) Minimizing metric in distributed computation Any other techniques? 72

73 Organization for Rest of Lecture Link-state routing Distance-vector routing Goal of today: basic idea May review details on Wednesday Definitely go over details in section 73

74 Link-State Details in Section 74

75 Another Approach to Loop-Avoidance If one has a picture of the entire network, can compute routing state that does not produce loops This route computation can be done in many ways Here we will review Dijkstra s algorithm briefly But that s just because it is expected from such courses o Snore.. The real question is, how do you get picture of entire network? 75

76 Link-State Routing Is Conceptually Simple Each router keeps track of its incident links Each router broadcasts the link state To give every router a complete view of the graph Each router runs Dijkstra s algorithm Compute shortest paths, then construct forwarding table Example protocols Open Shortest Path First (OSPF) Intermediate System Intermediate System (IS-IS) Challenges: scaling, transient disruptions 76

77 Link State Routing Each node floods its local information Each node then knows entire network topology Host C Host A Host D N N2 N3 N5 Host B N4 Host E N6 N7 77

78 Link State: Each Node Has Global View Host A A B C D E Host C A B C D E A B C D Host D E N N2 A C D N3 A C D N5 B E A C D Host B N4 B E A C D B Host EE N6 B E N7 78

79 How to Compute Routes Each node should have same global view They each compute their own routing tables Using exactly the same algorithm Can use any algorithm that avoids loops Computing shortest paths is one such algorithm Associate a cost with each link Don t worry what it stands for. 79

80 Dijkstra s Shortest Path Algorithm INPUT: Network topology (graph), with link costs OUTPUT: Least cost paths from one node to all other nodes Produces tree of routes o Different from what we talked about before o Previous tree was rooted at destination o This is rooted at source o But shortest paths are reversible! 80

81 Least Cost Routes No sensible cost metric will be minimized by traversing a loop Least cost routes an easy way to avoid loops Least cost routes are also destination-based i.e., do not depend on the source Why is this? Therefore, least-cost paths form a spanning tree 8

82 Example 5 2 B 3 C 5 A F D E 82

83 Notation c(i,j): link cost from node i to j; cost infinite if not direct neighbors; 0 D(v): current value of cost of path from source to destination v p(v): predecessor node along path from source to v, that is next to v S: set of nodes whose least cost path definitively known 2 A Source 5 B 2 D 3 3 C E 5 2 F 83

84 Dijsktra s Algorithm Initialization: 2 S = {A}; 3 for all nodes v 4 if v adjacent to A 5 then D(v) = c(a,v); 6 else D(v) = ; c(i,j): link cost from node i to j D(v): current cost source v p(v): predecessor node along path from source to v, that is next to v S: set of nodes whose least cost path definitively known 7 8 Loop 9 find w not in S such that D(w) is a minimum; 0 add w to S; update D(v) for all v adjacent to w and not in S: 2 if D(w) + c(w,v) < D(v) then // w gives us a shorter path to v than we ve found so far 3 D(v) = D(w) + c(w,v); p(v) = w; 4 until all nodes in S; 84

85 Example: Dijkstra s Algorithm Step start S A D(B),p(B) 2,A D(C),p(C) 5,A D(D),p(D),A D(E),p(E) D(F),p(F) A 2 5 B D C E 5 2 F Initialization: 2 S = {A}; 3 for all nodes v 4 if v adjacent to A 5 then D(v) = c(a,v); 6 else D(v) = ; 85

86 Example: Dijkstra s Algorithm Step A 2 start S A 5 B D D(B),p(B) 2,A C E 5 2 F D(C),p(C) 5,A D(D),p(D),A D(E),p(E) D(F),p(F) 8 Loop 9 find w not in S s.t. D(w) is a minimum; 0 add w to S; update D(v) for all v adjacent to w and not in S: 2 If D(w) + c(w,v) < D(v) then 3 D(v) = D(w) + c(w,v); p(v) = w; 4 until all nodes in S; 86

87 Example: Dijkstra s Algorithm Step A 2 start S A AD 5 B D D(B),p(B) 2,A C E 5 2 D(C),p(C) 5,A F D(D),p(D),A D(E),p(E) D(F),p(F) 8 Loop 9 find w not in S s.t. D(w) is a minimum; 0 add w to S; update D(v) for all v adjacent to w and not in S: 2 If D(w) + c(w,v) < D(v) then 3 D(v) = D(w) + c(w,v); p(v) = w; 4 until all nodes in S; 87

88 Example: Dijkstra s Algorithm Step A 2 start S A AD 5 B D D(B),p(B) 2,A C E 5 2 D(C),p(C) 5,A 4,D F D(D),p(D),A D(E),p(E) 2,D D(F),p(F) 8 Loop 9 find w not in S s.t. D(w) is a minimum; 0 add w to S; update D(v) for all v adjacent to w and not in S: 2 If D(w) + c(w,v) < D(v) then 3 D(v) = D(w) + c(w,v); p(v) = w; 4 until all nodes in S; 88

89 Example: Dijkstra s Algorithm Step A 2 start S A AD ADE 5 B D D(B),p(B) 2,A C E 5 2 F D(C),p(C) 5,A 4,D 3,E D(D),p(D),A D(E),p(E) 2,D D(F),p(F) 4,E 8 Loop 9 find w not in S s.t. D(w) is a minimum; 0 add w to S; update D(v) for all v adjacent to w and not in S: 2 If D(w) + c(w,v) < D(v) then 3 D(v) = D(w) + c(w,v); p(v) = w; 4 until all nodes in S; 89

90 Example: Dijkstra s Algorithm Step A 2 start S A AD ADE ADEB 5 B D D(B),p(B) 2,A C E 5 2 F D(C),p(C) 5,A 4,D 3,E D(D),p(D),A D(E),p(E) 2,D D(F),p(F) 4,E 8 Loop 9 find w not in S s.t. D(w) is a minimum; 0 add w to S; update D(v) for all v adjacent to w and not in S: 2 If D(w) + c(w,v) < D(v) then 3 D(v) = D(w) + c(w,v); p(v) = w; 4 until all nodes in S; 90

91 Example: Dijkstra s Algorithm Step A 2 start S A AD ADE ADEB ADEBC 5 B D D(B),p(B) 2,A C E 5 2 F D(C),p(C) 5,A 4,D 3,E D(D),p(D),A D(E),p(E) 2,D D(F),p(F) 4,E 8 Loop 9 find w not in S s.t. D(w) is a minimum; 0 add w to S; update D(v) for all v adjacent to w and not in S: 2 If D(w) + c(w,v) < D(v) then 3 D(v) = D(w) + c(w,v); p(v) = w; 4 until all nodes in S; 9

92 Example: Dijkstra s Algorithm Step A start S A AD ADE ADEB ADEBC ADEBCF 2 5 B D D(B),p(B) 2,A C E 5 2 F D(C),p(C) 5,A 4,D 3,E D(D),p(D),A D(E),p(E) 2,D D(F),p(F) 4,E 8 Loop 9 find w not in S s.t. D(w) is a minimum; 0 add w to S; update D(v) for all v adjacent to w and not in S: 2 If D(w) + c(w,v) < D(v) then 3 D(v) = D(w) + c(w,v); p(v) = w; 4 until all nodes in S; 92

93 Example: Dijkstra s Algorithm Step start S A AD ADE ADEB ADEBC ADEBCF D(B),p(B) 2,A D(C),p(C) 5,A 4,D 3,E D(D),p(D),A D(E),p(E) 2,D D(F),p(F) 4,E A 2 5 B 2 D 3 3 C E 5 2 F To determine path A C (say), work backward from C via p(v) 93

94 The Forwarding Table Running Dijkstra at node A gives the shortest path from A to all destinations We then construct the forwarding table A 2 5 B 2 D 3 3 C E 5 2 F Destination B C D E Link (A,B) (A,D) (A,D) (A,D) F (A,D) 94

95 Complexity How much processing does running the Dijkstra algorithm take? Assume a network consisting of N nodes Each iteration: check all nodes w not in S N(N+)/2 comparisons: O(N 2 ) More efficient implementations: O(N log(n)) 95

96 Flooding the Topology Information Each router sends information out its ports The next node sends it out through all of its ports Except the one where the information arrived Need to remember previous msgs, suppress duplicates! X A X A C B D (a) C B D (b) X A X A C B D (c) C B D (d) 96

97 Making Flooding Reliable Reliable flooding Ensure all nodes receive link-state information Ensure all nodes use the latest version Challenges Packet loss Out-of-order arrival Solutions Acknowledgments and retransmissions Sequence numbers How can it still fail? 97

98 When to Initiate Flood? Topology change Link or node failure Link or node recovery Configuration change Link cost change Potential problems with making cost dynamic! Periodically Refresh the link-state information Typically (say) 30 minutes Corrects for possible corruption of the data 98

99 Convergence Getting consistent routing information to all nodes E.g., all nodes having the same link-state database Forwarding is consistent after convergence All nodes have the same link-state database All nodes forward packets on same paths 99

100 Convergence Delay Time elapsed before every router has a consistent picture of the network Sources of convergence delay Detection latency Flooding of link-state information Recomputation of forwarding tables Storing forwarding tables Performance during convergence period Lost packets due to blackholes and TTL expiry Looping packets consuming resources Out-of-order packets reaching the destination Very bad for VoIP, online gaming, and video 00

101 Transient Disruptions Inconsistent link-state database Some routers know about failure before others The shortest paths are no longer consistent Can cause transient forwarding loops B C B C A F A F D E Loop! D E A and D think that this is the path to C E thinks that this is the path to C 0

102 Reducing Convergence Delay Faster detection Smaller hello timers Link-layer technologies that can detect failures Faster flooding Flooding immediately Sending link-state packets with high-priority Faster computation Faster processors on the routers Incremental Dijkstra algorithm Faster forwarding-table update Data structures supporting incremental updates 02

103 Scaling Link-State Routing Overhead of link-state routing Flooding link-state packets throughout the network Running Dijkstra s shortest-path algorithm Becomes unscalable when 00s of routers Introducing hierarchy through areas Area Area 2 area border router Area 0 Area 3 Area 4 03

104 Distance-Vector Details in Section 04

105 Distributed Computation of Routes More scalable than Link-State No global flooding Each node computing the outgoing port based on: Local information (who it is connected to) Paths advertised by neighbors 05

106 Distributed Computation I am three hops away I am two hops away I am two hops away I am one hop away I am three hops away I am two hops away I am one hop away I am one hop away I am two hops away 06

107 Loops in a Distributed Computation If the nodes choose their paths according to different criterion, then loops can occur Example Node A is minimizing hop count Node B is minimizing latency Node C is maximizing capacity Node D is minimizing price Any of those goals are fine, if globally adopted Only a problem when nodes use different criteria Any criteria that results in destination-based routing is fine. 07

108 Distance Vector Routing Each router knows the links to its neighbors Does not flood this information to the whole network Each router has provisional shortest path E.g.: Router A: I can get to router B with cost via next hop router D Routers exchange this information with their neighboring routers Again, no flooding the whole network Routers update their idea of the best path using info from neighbors This iterative process converges with set of shortest paths 08

109 Information Flow in Distance Vector Host C Host A Host D N N2 N3 N5 Host B N4 Host E N6 N7 09

110 Information Flow in Distance Vector Host C Host A Host D N N2 N3 N5 Host B N4 Host E N6 N7 0

111 Information Flow in Distance Vector Host C Host A Host D N N2 N3 N5 Host B N4 Host E N6 N7

112 Why Is This Different From Flooding? 2

113 Bellman-Ford Algorithm INPUT: Link costs to each neighbor Not full topology OUTPUT: Next hop to each destination and the corresponding cost Does not give the complete path to the destination 3

114 Bellman-Ford - Overview Each router maintains a table Best known distance from X to Y, via Z as next hop = D Z (X,Y) Each local iteration caused by: Local link cost change Message from neighbor Notify neighbors only if least cost path to any destination changes Neighbors then notify their neighbors if necessary Each node: wait for (change in local link cost or msg from neighbor) recompute distance table if least cost path to any dest has changed, notify neighbors 4

115 Bellman-Ford - Overview Each router maintains a table Row for each possible destination Column for each directly-attached neighbor to node Entry in row Y and column Z of node X best known distance from X to Y, via Z as next hop = D Z (X,Y) Node A Neighbor (next-hop) A 2 B 7 3 C D B C B 2 8 C 3 7 D 4 8 Destinations D C (A, D)

116 Bellman-Ford - Overview Each router maintains a table Row for each possible destination Column for each directly-attached neighbor to node Entry in row Y and column Z of node X best known distance from X to Y, via Z as next hop = D Z (X,Y) Node A A 2 B 7 3 C D B C B 2 8 C 3 7 D 4 8 Smallest distance in row Y = shortest Distance of A to Y, D(A, Y)

117 Distance Vector Algorithm (cont d) Initialization: 2 for all neighbors V do c(i,j): link cost from node i to j 3 if V adjacent to A D 4 D(A, V) = c(a,v); Z (A,V): cost from A to V via Z 5 else 6 D(A, V) = ; 7 send D(A, Y) to all neighbors loop: 8 wait (until A sees a link cost change to neighbor V /* case */ 9 or until A receives update from neighbor V) /* case 2 */ 0 if (c(a,v) changes by ±d) /* case */ for all destinations Y that go through V do 2 D V (A,Y) = D V (A,Y) ± d 3 else if (update D(V, Y) received from V) /* case 2 */ /* shortest path from V to some Y has changed */ 4 D V (A,Y) = D V (A,V) + D(V, Y); /* may also change D(A,Y) */ 5 if (there is a new minimum for destination Y) 6 send D(A, Y) to all neighbors 7 forever D(A,V): cost of A s best path to V 7

118 Example: st Iteration (C A) A 2 B 7 7 loop: 3 else if (update D(A, Y) from C) 4 D C (A,Y) = D C (A,C) + D(C, Y); 5 if (new min. for destination Y) 6 send D(A, Y) to all neighbors 7 forever 3 C D Node A B C B 2 8 C 7 D 8 Node C A B D A 7 B D Node B A C D A 2 C D 3 D C (A, B) = D C (A,C) + D(C, B) = 7 + = 8 D C (A, D) = D C (A,C) + D(C, D) = 7 + = 8 Node D B C A B 3 C

119 Example: st Iteration (B A) A 2 B 7 7 loop: 3 else if (update D(A, Y) from B) 4 D B (A,Y) = D B (A,B) + D(B, Y); 5 if (new min. for destination Y) 6 send D(A, Y) to all neighbors 7 forever 3 C D Node A Node B B C A C D B 2 8 A 2 C 3 7 C D 5 8 D 3 D B (A, C) = D B (A,B) + D(B, C) = 2 + = 3 D B (A, D) = D B (A,B) + D(B, D) = = 5 Node C Node D A B D B C A 7 A B B 3 D C

120 Example: End of st Iteration Node A Node B B C A C D A 2 B 7 3 C D B 2 8 C 3 7 D 5 8 A 2 3 C 9 4 D 2 3 End of st Iteration All nodes knows the best two-hop paths Node C A B D A 7 3 B 9 4 D 4 Node D B C A 5 8 B 3 2 C 4

121 Example: 2 nd Iteration (A B) Node A Node B B C A C D A 2 B 7 3 C D B 2 8 C 3 7 D 5 8 A 2 3 C 5 4 D loop: 3 else if (update D(B, Y) from A) 4 D A (B,Y) = D A (B,A) + D(A, Y); 5 if (new min. for destination Y) 6 send D(B, Y) to all neighbors 7 forever D A (B, C) = D A (B,A) + D(A, C) = = 5 D A (B, D) = D A (B,A) + D(A, D) = = 7 Node C Node D A B D B C A 7 3 A 5 8 B 9 4 B 3 2 D 4 C 4

122 Example: End of 2 nd Iteration Node A Node B B C A C D A 2 B 7 3 C D B 2 8 C 3 7 D 4 8 A 2 3 C 5 4 D End of 2 nd Iteration All nodes knows the best three-hop paths Node C A B D A B 9 4 D 2 4 Node D B C A 5 4 B 3 2 C 4

123 Example: End of 3rd Iteration Node A Node B B C A C D A 2 B 7 3 C D B 2 8 C 3 7 D 4 8 A C 5 4 D End of 2 nd Iteration: Algorithm Converges! Node C A B D A B 9 4 D 4 Node D B C A 5 4 B 3 2 C 4

124 Intuition Initial state: best one-hop paths One round: best two-hop paths Two rounds: best three-hop paths Kth round: best (k+) hop paths This must eventually converge.but how does it respond to changes in cost? 24

125 Distance Vector: Link Cost Changes loop: 8 wait (until A sees a link cost change to neighbor V 9 or until A receives update from neighbor V) / 0 if (c(a,v) changes by ±d) /* case */ for all destinations Y that go through V do 2 D V (A,Y) = D V (A,Y) ± d 3 else if (update D(V, Y) received from V) /* case 2 */ 4 D V (A,Y) = D V (A,V) + D(V, Y); 5 if (there is a new minimum for destination Y) 6 send D(A, Y) to all neighbors 7 forever A 4 B 50 C Node B Node C A C A 4 6 C 9 A B A 50 5 A C A 6 C 9 A B A 50 5 A C A 6 C 9 A B A 50 2 A C A 3 C 3 A B A 50 2 good news travels fast B 54 B 54 B 5 B 5 Link cost changes here time Algorithm terminates 25

126 DV: Count to Infinity Problem loop: 8 wait (until A sees a link cost change to neighbor V 9 or until A receives update from neighbor V) / 0 if (c(a,v) changes by ±d) /* case */ for all destinations Y that go through V do 2 D V (A,Y) = D V (A,Y) ± d 3 else if (update D(V, Y) received from V) /* case 2 */ 4 D V (A,Y) = D V (A,V) + D(V, Y); 5 if (there is a new minimum for destination Y) 6 send D(A, Y) to all neighbors 7 forever 60 A 4 B 50 C Node B Node C A C A 4 6 C 9 A B A 50 5 A C A 60 6 C 9 A B A 50 5 A C A 60 6 C 9 A B A 50 7 A C A 60 8 C 9 A B A 50 7 bad news travels slowly B 54 B 54 B 0 B 0 Link cost changes here time 26

127 Distance Vector: Poisoned Reverse If B routes through C to get to A: - B tells C its (B s) distance to A is infinite (so C won t route to A via B) - Will this completely solve count to infinity problem? 60 A 4 B 50 C Node B A C A 4 6 C 9 A C A 60 6 C 9 A C A 60 6 C 9 A C A 60 5 C 9 A C A 60 5 C 9 Node C A B A 50 5 B A B A 50 5 B A B A 50 B A B A 50 B A B A 50 B Link cost changes here; C updates D(C, A) = 60 as B has advertised D(B, A) = time Algorithm terminates 27

128 Aside: Another Way to Avoid Loops? In Distributed Computation? Exchange entire paths, not just cost of paths Nodes can use arbitrary metrics to choose paths No need to agree on single metric No loops, but algorithm might not converge Will discuss later in semester 28

129 Routing: Just the Beginning Link state and distance-vector (and path vector) are the deployed routing paradigms But we know how to do much, much better Stay tuned for a later lecture where we: Reduce convergence time to zero Respond to failures instantly! 29

130 Next Lecture Review computations (if needed) What pieces are we missing? Naming Security Content retrieval??? 30

6.263 Data Communication Networks

6.263 Data Communication Networks 6.6 Data Communication Networks Lecture : Internet Routing (some slides are taken from I. Stoica and N. Mckewon & T. Griffin) Dina Katabi dk@mit.edu www.nms.csail.mit.edu/~dina Books Text Book Data Communication

More information

Lecture 12: Link-state Routing"

Lecture 12: Link-state Routing Lecture 2: Link-state Routing" CSE 23: Computer Networks Alex C. Snoeren HW 3 due next Tuesday! Lecture 2 Overview" Routing overview Intra vs. Inter-domain routing Link-state routing protocols CSE 23 Lecture

More information

Lecture 8: Routing I Distance-vector Algorithms. CSE 123: Computer Networks Stefan Savage

Lecture 8: Routing I Distance-vector Algorithms. CSE 123: Computer Networks Stefan Savage Lecture 8: Routing I Distance-vector Algorithms CSE 3: Computer Networks Stefan Savage This class New topic: routing How do I get there from here? Overview Routing overview Intra vs. Inter-domain routing

More information

Introduction to LAN/WAN. Network Layer

Introduction to LAN/WAN. Network Layer Introduction to LAN/WAN Network Layer Topics Introduction (5-5.1) Routing (5.2) (The core) Internetworking (5.5) Congestion Control (5.3) Network Layer Design Isues Store-and-Forward Packet Switching Services

More information

CS 3251- Computer Networks 1: Routing Algorithms

CS 3251- Computer Networks 1: Routing Algorithms CS 35- Computer Networks : Routing Algorithms Professor Patrick Tranor 0//3 Lecture 3 Reminders The due date for Homework was moved to Thursda. Reason: Allow ou to attend toda s lecture. Project is still

More information

Outline. EE 122: Interdomain Routing Protocol (BGP) BGP Routing. Internet is more complicated... Ion Stoica TAs: Junda Liu, DK Moon, David Zats

Outline. EE 122: Interdomain Routing Protocol (BGP) BGP Routing. Internet is more complicated... Ion Stoica TAs: Junda Liu, DK Moon, David Zats Outline EE 22: Interdomain Routing Protocol (BGP) Ion Stoica TAs: Junda Liu, DK Moon, David Zats http://inst.eecs.berkeley.edu/~ee22/fa9 (Materials with thanks to Vern Paxson, Jennifer Rexford, and colleagues

More information

Chapter 4. Distance Vector Routing Protocols

Chapter 4. Distance Vector Routing Protocols Chapter 4 Distance Vector Routing Protocols CCNA2-1 Chapter 4 Note for Instructors These presentations are the result of a collaboration among the instructors at St. Clair College in Windsor, Ontario.

More information

Chapter 10 Link-State Routing Protocols

Chapter 10 Link-State Routing Protocols Chapter 10 Link-State Routing Protocols CCNA2-1 Chapter 10 Note for Instructors These presentations are the result of a collaboration among the instructors at St. Clair College in Windsor, Ontario. Thanks

More information

Route Discovery Protocols

Route Discovery Protocols Route Discovery Protocols Columbus, OH 43210 Jain@cse.ohio-State.Edu http://www.cse.ohio-state.edu/~jain/ 1 Overview Building Routing Tables Routing Information Protocol Version 1 (RIP V1) RIP V2 OSPF

More information

Internet Control Message Protocol (ICMP)

Internet Control Message Protocol (ICMP) SFWR 4C03: Computer Networks & Computer Security Jan 31-Feb 4, 2005 Lecturer: Kartik Krishnan Lecture 13-16 Internet Control Message Protocol (ICMP) The operation of the Internet is closely monitored by

More information

Internet Firewall CSIS 4222. Packet Filtering. Internet Firewall. Examples. Spring 2011 CSIS 4222. net15 1. Routers can implement packet filtering

Internet Firewall CSIS 4222. Packet Filtering. Internet Firewall. Examples. Spring 2011 CSIS 4222. net15 1. Routers can implement packet filtering Internet Firewall CSIS 4222 A combination of hardware and software that isolates an organization s internal network from the Internet at large Ch 27: Internet Routing Ch 30: Packet filtering & firewalls

More information

COMP 631: COMPUTER NETWORKS. Internet Routing. Jasleen Kaur. Fall 2014. Forwarding vs. Routing: Local vs. Distributed

COMP 631: COMPUTER NETWORKS. Internet Routing. Jasleen Kaur. Fall 2014. Forwarding vs. Routing: Local vs. Distributed OMP 3: OMPUTER NETWORKS // OMP 3: OMPUTER NETWORKS Internet Routing Jasleen Kaur Fall 0 Forwarding vs. Routing: Local vs. istributed oth datagram and virtual-circuit based networks need to know how to

More information

Routing Protocols OSPF CHAPTER. The following topics describe supported routing protocols. Topics include OSPF, page 9-1 IS-IS Protocol, page 9-3

Routing Protocols OSPF CHAPTER. The following topics describe supported routing protocols. Topics include OSPF, page 9-1 IS-IS Protocol, page 9-3 CHAPTER 9 The following topics describe supported routing protocols. Topics include OSPF, page 9-1 IS-IS Protocol, page 9-3 OSPF Open Shortest Path First (OSPF) is a link state Internet routing protocol.

More information

Distance Vector Routing Protocols. Routing Protocols and Concepts Ola Lundh

Distance Vector Routing Protocols. Routing Protocols and Concepts Ola Lundh Distance Vector Routing Protocols Routing Protocols and Concepts Ola Lundh Objectives The characteristics of distance vector routing protocols. The network discovery process of distance vector routing

More information

CSE331: Introduction to Networks and Security. Lecture 8 Fall 2006

CSE331: Introduction to Networks and Security. Lecture 8 Fall 2006 CSE331: Introduction to Networks and Security Lecture 8 Fall 2006 Announcements Reminders: Project I is due on Monday, Sept. 25th. Homework 1 is due on Friday, Sept. 29th. CSE331 Fall 2004 2 Internet Protocol

More information

Routing in packet-switching networks

Routing in packet-switching networks Routing in packet-switching networks Circuit switching vs. Packet switching Most of WANs based on circuit or packet switching Circuit switching designed for voice Resources dedicated to a particular call

More information

Outline. Internet Routing. Alleviating the Problem. DV Algorithm. Routing Information Protocol (RIP) Link State Routing. Routing algorithms

Outline. Internet Routing. Alleviating the Problem. DV Algorithm. Routing Information Protocol (RIP) Link State Routing. Routing algorithms Outline Internet Routing Venkat Padmanabhan Microsoft Research 9 pril 2001 Routing algorithms distance-vector (DV) link-state (LS) Internet Routing border gateway protocol (BGP) BGP convergence paper Venkat

More information

Datagram-based network layer: forwarding; routing. Additional function of VCbased network layer: call setup.

Datagram-based network layer: forwarding; routing. Additional function of VCbased network layer: call setup. CEN 007C Computer Networks Fundamentals Instructor: Prof. A. Helmy Homework : Network Layer Assigned: Nov. 28 th, 2011. Due Date: Dec 8 th, 2011 (to the TA) 1. ( points) What are the 2 most important network-layer

More information

Routing Protocols (RIP, OSPF, BGP)

Routing Protocols (RIP, OSPF, BGP) Chapter 13 Routing Protocols (RIP, OSPF, BGP) INTERIOR AND EXTERIOR ROUTING RIP OSPF BGP 1 The McGraw-Hill Companies, Inc., 2000 1 Introduction Packets may pass through several networks on their way to

More information

6.02 Practice Problems: Routing

6.02 Practice Problems: Routing 1 of 9 6.02 Practice Problems: Routing IMPORTANT: IN ADDITION TO THESE PROBLEMS, PLEASE SOLVE THE PROBLEMS AT THE END OF CHAPTERS 17 AND 18. Problem 1. Consider the following networks: network I (containing

More information

Lecture 13: Distance-vector Routing. Lecture 13 Overview. Bellman-Ford Algorithm. d u (z) = min{c(u,v) + d v (z), c(u,w) + d w (z)}

Lecture 13: Distance-vector Routing. Lecture 13 Overview. Bellman-Ford Algorithm. d u (z) = min{c(u,v) + d v (z), c(u,w) + d w (z)} Lecture : istance-vector Routing S : omputer Networks hris Kanich Quiz TOMORROW Lecture Overview istance vector ssume each router knows its own address and cost to reach each of its directly connected

More information

Dynamic Routing Protocols II OSPF. Distance Vector vs. Link State Routing

Dynamic Routing Protocols II OSPF. Distance Vector vs. Link State Routing Dynamic Routing Protocols II OSPF Relates to Lab 4. This module covers link state routing and the Open Shortest Path First (OSPF) routing protocol. 1 Distance Vector vs. Link State Routing With distance

More information

Routing with OSPF. Introduction

Routing with OSPF. Introduction Routing with OSPF Introduction The capabilities of an internet are largely determined by its routing protocol. An internet's scalability, its ability to quickly route around failures, and the consumption

More information

Module 7. Routing and Congestion Control. Version 2 CSE IIT, Kharagpur

Module 7. Routing and Congestion Control. Version 2 CSE IIT, Kharagpur Module 7 Routing and Congestion Control Lesson 4 Border Gateway Protocol (BGP) Specific Instructional Objectives On completion of this lesson, the students will be able to: Explain the operation of the

More information

Advanced Networking Routing: RIP, OSPF, Hierarchical routing, BGP

Advanced Networking Routing: RIP, OSPF, Hierarchical routing, BGP Advanced Networking Routing: RIP, OSPF, Hierarchical routing, BGP Renato Lo Cigno Routing Algorithms: One or Many? Is there a single routing protocol in the Internet? How can different protocols and algorithms

More information

Project 3 and Software-Defined Networking (SDN)

Project 3 and Software-Defined Networking (SDN) Project 3 and Software-Defined Networking (SDN) EE122 Fall 2011 Scott Shenker http://inst.eecs.berkeley.edu/~ee122/ Materials with thanks to Jennifer Rexford, Ion Stoica, Vern Paxson and other colleagues

More information

Based on Computer Networking, 4 th Edition by Kurose and Ross

Based on Computer Networking, 4 th Edition by Kurose and Ross Computer Networks Internet Routing Based on Computer Networking, 4 th Edition by Kurose and Ross Intra-AS Routing Also known as Interior Gateway Protocols (IGP) Most common Intra-AS routing protocols:

More information

Computer Networks. Main Functions

Computer Networks. Main Functions Computer Networks The Network Layer 1 Routing. Forwarding. Main Functions 2 Design Issues Services provided to transport layer. How to design network-layer protocols. 3 Store-and-Forward Packet Switching

More information

Lecture 2.1 : The Distributed Bellman-Ford Algorithm. Lecture 2.2 : The Destination Sequenced Distance Vector (DSDV) protocol

Lecture 2.1 : The Distributed Bellman-Ford Algorithm. Lecture 2.2 : The Destination Sequenced Distance Vector (DSDV) protocol Lecture 2 : The DSDV Protocol Lecture 2.1 : The Distributed Bellman-Ford Algorithm Lecture 2.2 : The Destination Sequenced Distance Vector (DSDV) protocol The Routing Problem S S D D The routing problem

More information

Multihoming and Multi-path Routing. CS 7260 Nick Feamster January 29. 2007

Multihoming and Multi-path Routing. CS 7260 Nick Feamster January 29. 2007 Multihoming and Multi-path Routing CS 7260 Nick Feamster January 29. 2007 Today s Topic IP-Based Multihoming What is it? What problem is it solving? (Why multihome?) How is it implemented today (in IP)?

More information

Lecture 18: Border Gateway Protocol"

Lecture 18: Border Gateway Protocol Lecture 18: Border Gateway Protocol" CSE 123: Computer Networks Alex C. Snoeren HW 3 due Wednesday! Some figures courtesy Mike Freedman Lecture 18 Overview" Path-vector Routing Allows scalable, informed

More information

Internet Packets. Forwarding Datagrams

Internet Packets. Forwarding Datagrams Internet Packets Packets at the network layer level are called datagrams They are encapsulated in frames for delivery across physical networks Frames are packets at the data link layer Datagrams are formed

More information

Names & Addresses. Names & Addresses. Hop-by-Hop Packet Forwarding. Longest-Prefix-Match Forwarding. Longest-Prefix-Match Forwarding

Names & Addresses. Names & Addresses. Hop-by-Hop Packet Forwarding. Longest-Prefix-Match Forwarding. Longest-Prefix-Match Forwarding Names & Addresses EE 122: IP Forwarding and Transport Protocols Scott Shenker http://inst.eecs.berkeley.edu/~ee122/ (Materials with thanks to Vern Paxson, Jennifer Rexford, and colleagues at UC Berkeley)

More information

CSC458 Lecture 6. Homework #1 Grades. Inter-domain Routing IP Addressing. Administrivia. Midterm will Cover Following Topics

CSC458 Lecture 6. Homework #1 Grades. Inter-domain Routing IP Addressing. Administrivia. Midterm will Cover Following Topics CSC458 Lecture 6 Inter-domain Routing IP Addressing Stefan Saroiu http://www.cs.toronto.edu/syslab/courses/csc458 University of Toronto at Mississauga Homework #1 Grades Fraction of Students 100 80 60

More information

OSPF Version 2 (RFC 2328) Describes Autonomous Systems (AS) topology. Propagated by flooding: Link State Advertisements (LSAs).

OSPF Version 2 (RFC 2328) Describes Autonomous Systems (AS) topology. Propagated by flooding: Link State Advertisements (LSAs). OSPF Version 2 (RFC 2328) Interior gateway protocol (IGP). Routers maintain link-state database. Describes Autonomous Systems (AS) topology. Propagated by flooding: Link State Advertisements (LSAs). Router

More information

Level 2 Routing: LAN Bridges and Switches

Level 2 Routing: LAN Bridges and Switches Level 2 Routing: LAN Bridges and Switches Norman Matloff University of California at Davis c 2001, N. Matloff September 6, 2001 1 Overview In a large LAN with consistently heavy traffic, it may make sense

More information

IP Multicasting. Applications with multiple receivers

IP Multicasting. Applications with multiple receivers IP Multicasting Relates to Lab 10. It covers IP multicasting, including multicast addressing, IGMP, and multicast routing. 1 Applications with multiple receivers Many applications transmit the same data

More information

CS335 Sample Questions for Exam #2

CS335 Sample Questions for Exam #2 CS335 Sample Questions for Exam #2.) Compare connection-oriented with connectionless protocols. What type of protocol is IP? How about TCP and UDP? Connection-oriented protocols Require a setup time to

More information

Exterior Gateway Protocols (BGP)

Exterior Gateway Protocols (BGP) Exterior Gateway Protocols (BGP) Internet Structure Large ISP Large ISP Stub Dial-Up ISP Small ISP Stub Stub Stub Autonomous Systems (AS) Internet is not a single network! The Internet is a collection

More information

Link-State Routing Protocols

Link-State Routing Protocols Link-State Routing Protocols Malin Bornhager Halmstad University Session Number 2002, Svenska-CNAP Halmstad University 1 Objectives Link-state routing protocol Single-area OSPF concepts Single-area OSPF

More information

OSPF Routing Protocol

OSPF Routing Protocol OSPF Routing Protocol Contents Introduction Network Architecture Campus Design Architecture Building Block Design Server Farm Design Core Block Design WAN Design Architecture Protocol Design Campus Design

More information

Administrative Distance

Administrative Distance RIP is a distance vector routing protocol. It shares routing information through the local broadcast in every 30 seconds. In this tutorial we will explain RIP routing fundamentals with examples such as

More information

CHAPTER 10 IP MULTICAST

CHAPTER 10 IP MULTICAST CHAPTER 10 IP MULTICAST This chapter is about IP multicast, the network layer mechanisms in the Internet to support applications where data is sent from a sender to multiple receivers. The first section

More information

Router and Routing Basics

Router and Routing Basics Router and Routing Basics Malin Bornhager Halmstad University Session Number 2002, Svenska-CNAP Halmstad University 1 Routing Protocols and Concepts CCNA2 Routing and packet forwarding Static routing Dynamic

More information

Question 1. [7 points] Consider the following scenario and assume host H s routing table is the one given below:

Question 1. [7 points] Consider the following scenario and assume host H s routing table is the one given below: Computer Networks II Master degree in Computer Engineering Exam session: 11/02/2009 Teacher: Emiliano Trevisani Last name First name Student Identification number You are only allowed to use a pen and

More information

Introduction to IP Multicast Routing

Introduction to IP Multicast Routing Introduction to IP Multicast Routing by Chuck Semeria and Tom Maufer Abstract The first part of this paper describes the benefits of multicasting, the Multicast Backbone (MBONE), Class D addressing, and

More information

- IGRP - IGRP v1.22 Aaron Balchunas

- IGRP - IGRP v1.22 Aaron Balchunas 1 - GRP - GRP (nterior Gateway Routing Protocol) GRP is a isco-proprietary Distance-Vector protocol, designed to be more scalable than RP, its standardized counterpart. GRP adheres to the following Distance-Vector

More information

Introduction to Dynamic Routing Protocols

Introduction to Dynamic Routing Protocols CHAPTER 3 Introduction to Dynamic Routing Protocols Objectives Upon completion of this chapter, you should be able to answer the following questions: Can you describe the role of dynamic routing protocols

More information

Final Exam. Route Computation: One reason why link state routing is preferable to distance vector style routing.

Final Exam. Route Computation: One reason why link state routing is preferable to distance vector style routing. UCSD CSE CS 123 Final Exam Computer Networks Directions: Write your name on the exam. Write something for every question. You will get some points if you attempt a solution but nothing for a blank sheet

More information

WAN Wide Area Networks. Packet Switch Operation. Packet Switches. COMP476 Networked Computer Systems. WANs are made of store and forward switches.

WAN Wide Area Networks. Packet Switch Operation. Packet Switches. COMP476 Networked Computer Systems. WANs are made of store and forward switches. Routing WAN Wide Area Networks WANs are made of store and forward switches. To there and back again COMP476 Networked Computer Systems A packet switch with two types of I/O connectors: one type is used

More information

GregSowell.com. Mikrotik Routing

GregSowell.com. Mikrotik Routing Mikrotik Routing Static Dynamic Routing To Be Discussed RIP Quick Discussion OSPF BGP What is Routing Wikipedia has a very lengthy explanation http://en.wikipedia.org/wiki/routing In the context of this

More information

Introduction to TCP/IP

Introduction to TCP/IP Introduction to TCP/IP Raj Jain The Ohio State University Columbus, OH 43210 Nayna Networks Milpitas, CA 95035 Email: Jain@ACM.Org http://www.cis.ohio-state.edu/~jain/ 1 Overview! Internetworking Protocol

More information

College 5, Routing, Internet. Host A. Host B. The Network Layer: functions

College 5, Routing, Internet. Host A. Host B. The Network Layer: functions CSN-s 5/1 College 5, Routing, Internet College stof 1 Inleiding: geschiedenis, OSI model, standaarden, ISOC/IETF/IRTF structuur Secties: 1.2, 1.3, 1.4, 1.5 2 Fysieke laag: Bandbreedte/bitrate Secties:

More information

Ad hoc On Demand Distance Vector (AODV) Routing Protocol

Ad hoc On Demand Distance Vector (AODV) Routing Protocol Ad hoc On Demand Distance Vector (AODV) Routing Protocol CS: 647 Advanced Topics in Wireless Networks Dr. Baruch Awerbuch & Dr. Amitabh Mishra Department of Computer Science Johns Hopkins 4-1 Reading Chapter

More information

Static IP Routing and Aggregation Exercises

Static IP Routing and Aggregation Exercises Politecnico di Torino Static IP Routing and Aggregation xercises Fulvio Risso August 0, 0 Contents I. Methodology 4. Static routing and routes aggregation 5.. Main concepts........................................

More information

Broadband Networks. Prof. Karandikar. Department of Electrical Engineering. Indian Institute of Technology, Bombay. Lecture - 26

Broadband Networks. Prof. Karandikar. Department of Electrical Engineering. Indian Institute of Technology, Bombay. Lecture - 26 Broadband Networks Prof. Karandikar Department of Electrical Engineering Indian Institute of Technology, Bombay Lecture - 26 Optical Network &MPLS So, as you were discussing in the previous lectures, next

More information

Network Security. Mobin Javed. October 5, 2011

Network Security. Mobin Javed. October 5, 2011 Network Security Mobin Javed October 5, 2011 In this class, we mainly had discussion on threat models w.r.t the class reading, BGP security and defenses against TCP connection hijacking attacks. 1 Takeaways

More information

ECSE-6600: Internet Protocols Exam 2

ECSE-6600: Internet Protocols Exam 2 ECSE-6600: Internet Protocols Exam 2 Time: 75 min (strictly enforced) Points: 50 YOUR NAME: Be brief, but DO NOT omit necessary detail {Note: Simply copying text directly from the slides or notes will

More information

TRILL for Service Provider Data Center and IXP. Francois Tallet, Cisco Systems

TRILL for Service Provider Data Center and IXP. Francois Tallet, Cisco Systems for Service Provider Data Center and IXP Francois Tallet, Cisco Systems 1 : Transparent Interconnection of Lots of Links overview How works designs Conclusion 2 IETF standard for Layer 2 multipathing Driven

More information

The Internet: A Remarkable Story. Inside the Net: A Different Story. Networks are Hard to Manage. Software Defined Networking Concepts

The Internet: A Remarkable Story. Inside the Net: A Different Story. Networks are Hard to Manage. Software Defined Networking Concepts The Internet: A Remarkable Story Software Defined Networking Concepts Based on the materials from Jennifer Rexford (Princeton) and Nick McKeown(Stanford) Tremendous success From research experiment to

More information

Zarząd (7 osób) F inanse (13 osób) M arketing (7 osób) S przedaż (16 osób) K adry (15 osób)

Zarząd (7 osób) F inanse (13 osób) M arketing (7 osób) S przedaż (16 osób) K adry (15 osób) QUESTION NO: 8 David, your TestKing trainee, asks you about basic characteristics of switches and hubs for network connectivity. What should you tell him? A. Switches take less time to process frames than

More information

IP Routing Configuring RIP, OSPF, BGP, and PBR

IP Routing Configuring RIP, OSPF, BGP, and PBR 13 IP Routing Configuring RIP, OSPF, BGP, and PBR Contents Overview..................................................... 13-6 Routing Protocols.......................................... 13-6 Dynamic Routing

More information

Objectives. The Role of Redundancy in a Switched Network. Layer 2 Loops. Broadcast Storms. More problems with Layer 2 loops

Objectives. The Role of Redundancy in a Switched Network. Layer 2 Loops. Broadcast Storms. More problems with Layer 2 loops ITE I Chapter 6 2006 Cisco Systems, Inc. All rights reserved. Cisco Public 1 Objectives Implement Spanning Tree Protocols LAN Switching and Wireless Chapter 5 Explain the role of redundancy in a converged

More information

O 10.16.1.0/27 [110/129] via 192.168.1.5, 00:00:05, Serial0/0/1

O 10.16.1.0/27 [110/129] via 192.168.1.5, 00:00:05, Serial0/0/1 1 Which two statements are true regarding the advantages of the use of static routes? (Choose increased security reduced effort in configuring routes the administrator maintains control over routing easier

More information

Layer 3 Routing User s Manual

Layer 3 Routing User s Manual User s Manual Second Edition, July 2011 www.moxa.com/product 2011 Moxa Inc. All rights reserved. User s Manual The software described in this manual is furnished under a license agreement and may be used

More information

Routing Protocols. Interconnected ASes. Hierarchical Routing. Hierarchical Routing

Routing Protocols. Interconnected ASes. Hierarchical Routing. Hierarchical Routing Routing Protocols scale: with 200 million destinations: can t store all dest s in routing tables! routing table exchange would swamp links! Hierarchical Routing Our routing study thus far - idealization

More information

RARP: Reverse Address Resolution Protocol

RARP: Reverse Address Resolution Protocol SFWR 4C03: Computer Networks and Computer Security January 19-22 2004 Lecturer: Kartik Krishnan Lectures 7-9 RARP: Reverse Address Resolution Protocol When a system with a local disk is bootstrapped it

More information

Network Layer: Network Layer and IP Protocol

Network Layer: Network Layer and IP Protocol 1 Network Layer: Network Layer and IP Protocol Required reading: Garcia 7.3.3, 8.1, 8.2.1 CSE 3213, Winter 2010 Instructor: N. Vlajic 2 1. Introduction 2. Router Architecture 3. Network Layer Protocols

More information

Transport Layer Protocols

Transport Layer Protocols Transport Layer Protocols Version. Transport layer performs two main tasks for the application layer by using the network layer. It provides end to end communication between two applications, and implements

More information

Graph Theory Problems and Solutions

Graph Theory Problems and Solutions raph Theory Problems and Solutions Tom Davis tomrdavis@earthlink.net http://www.geometer.org/mathcircles November, 005 Problems. Prove that the sum of the degrees of the vertices of any finite graph is

More information

PRASAD ATHUKURI Sreekavitha engineering info technology,kammam

PRASAD ATHUKURI Sreekavitha engineering info technology,kammam Multiprotocol Label Switching Layer 3 Virtual Private Networks with Open ShortestPath First protocol PRASAD ATHUKURI Sreekavitha engineering info technology,kammam Abstract This paper aims at implementing

More information

CS 5480/6480: Computer Networks Spring 2012 Homework 4 Solutions Due by 1:25 PM on April 11 th 2012

CS 5480/6480: Computer Networks Spring 2012 Homework 4 Solutions Due by 1:25 PM on April 11 th 2012 CS 5480/6480: Computer Networks Spring 2012 Homework 4 Solutions Due by 1:25 PM on April 11 th 2012 Important: The solutions to the homework problems from the course book have been provided by the authors.

More information

Introducing Basic MPLS Concepts

Introducing Basic MPLS Concepts Module 1-1 Introducing Basic MPLS Concepts 2004 Cisco Systems, Inc. All rights reserved. 1-1 Drawbacks of Traditional IP Routing Routing protocols are used to distribute Layer 3 routing information. Forwarding

More information

Faculty of Engineering Computer Engineering Department Islamic University of Gaza 2012. Network Chapter# 19 INTERNETWORK OPERATION

Faculty of Engineering Computer Engineering Department Islamic University of Gaza 2012. Network Chapter# 19 INTERNETWORK OPERATION Faculty of Engineering Computer Engineering Department Islamic University of Gaza 2012 Network Chapter# 19 INTERNETWORK OPERATION Review Questions ٢ Network Chapter# 19 INTERNETWORK OPERATION 19.1 List

More information

Inter-domain Routing Basics. Border Gateway Protocol. Inter-domain Routing Basics. Inter-domain Routing Basics. Exterior routing protocols created to:

Inter-domain Routing Basics. Border Gateway Protocol. Inter-domain Routing Basics. Inter-domain Routing Basics. Exterior routing protocols created to: Border Gateway Protocol Exterior routing protocols created to: control the expansion of routing tables provide a structured view of the Internet by segregating routing domains into separate administrations

More information

Exercise 4 MPLS router configuration

Exercise 4 MPLS router configuration Exercise 4 MPLS router configuration Computer Network Technologies and Services (CNTS) Tecnologie e Servizi di Rete (TSR) Preliminary note For this exercise you have to use the virtual routing laboratory.

More information

MPLS. Packet switching vs. circuit switching Virtual circuits

MPLS. Packet switching vs. circuit switching Virtual circuits MPLS Circuit switching Packet switching vs. circuit switching Virtual circuits MPLS Labels and label-switching Forwarding Equivalence Classes Label distribution MPLS applications Packet switching vs. circuit

More information

Ethernet (LAN switching)

Ethernet (LAN switching) Ethernet ( switching) 1 Outline Interconnection devices Bridges/ switches vs. Routers Bridges Learning Bridges Transparent bridges 2 1 Bridges/ switches Interconnect multiple, possibly with different type

More information

DEMYSTIFYING ROUTING SERVICES IN SOFTWAREDEFINED NETWORKING

DEMYSTIFYING ROUTING SERVICES IN SOFTWAREDEFINED NETWORKING DEMYSTIFYING ROUTING SERVICES IN STWAREDEFINED NETWORKING GAUTAM KHETRAPAL Engineering Project Manager, Aricent SAURABH KUMAR SHARMA Principal Systems Engineer, Technology, Aricent DEMYSTIFYING ROUTING

More information

High Availability Failover Optimization Tuning HA Timers PAN-OS 6.0.0

High Availability Failover Optimization Tuning HA Timers PAN-OS 6.0.0 High Availability Failover Optimization Tuning HA Timers PAN-OS 6.0.0 Revision C 2013, Palo Alto Networks, Inc. www.paloaltonetworks.com Contents Overview... 3 Passive Link State Auto Configuration (A/P)...

More information

A Comparison Study of Qos Using Different Routing Algorithms In Mobile Ad Hoc Networks

A Comparison Study of Qos Using Different Routing Algorithms In Mobile Ad Hoc Networks A Comparison Study of Qos Using Different Routing Algorithms In Mobile Ad Hoc Networks T.Chandrasekhar 1, J.S.Chakravarthi 2, K.Sravya 3 Professor, Dept. of Electronics and Communication Engg., GIET Engg.

More information

Chapter 3. Enterprise Campus Network Design

Chapter 3. Enterprise Campus Network Design Chapter 3 Enterprise Campus Network Design 1 Overview The network foundation hosting these technologies for an emerging enterprise should be efficient, highly available, scalable, and manageable. This

More information

Towards a Next- Generation Inter-domain Routing Protocol. L. Subramanian, M. Caesar, C.T. Ee, M. Handley, Z. Mao, S. Shenker, and I.

Towards a Next- Generation Inter-domain Routing Protocol. L. Subramanian, M. Caesar, C.T. Ee, M. Handley, Z. Mao, S. Shenker, and I. Towards a Next- Generation Inter-domain Routing Protocol L. Subramanian, M. Caesar, C.T. Ee, M. Handley, Z. Mao, S. Shenker, and I. Stoica Routing 1999 Internet Map Coloured by ISP Source: Bill Cheswick,

More information

Internet Control Protocols Reading: Chapter 3

Internet Control Protocols Reading: Chapter 3 Internet Control Protocols Reading: Chapter 3 ARP - RFC 826, STD 37 DHCP - RFC 2131 ICMP - RFC 0792, STD 05 1 Goals of Today s Lecture Bootstrapping an end host Learning its own configuration parameters

More information

value in arriving packet s header routing algorithm local forwarding table header value output link

value in arriving packet s header routing algorithm local forwarding table header value output link Compter Netorks Roting Algorithms Based on Compter Netorking, 4 th Edition b Krose and Ross Interpla beteen roting, forarding roting algorithm local forarding table header ale otpt link 000 00 0 00 ale

More information

Assignment #3 Routing and Network Analysis. CIS3210 Computer Networks. University of Guelph

Assignment #3 Routing and Network Analysis. CIS3210 Computer Networks. University of Guelph Assignment #3 Routing and Network Analysis CIS3210 Computer Networks University of Guelph Part I Written (50%): 1. Given the network graph diagram above where the nodes represent routers and the weights

More information

Homework 3 assignment for ECE374 Posted: 03/13/15 Due: 03/27/15

Homework 3 assignment for ECE374 Posted: 03/13/15 Due: 03/27/15 1 Homework 3 assignment for ECE374 Posted: 03/13/15 Due: 03/27/15 Note: In all written assignments, please show as much of your work as you can. Even if you get a wrong answer, you can get partial credit

More information

20. Switched Local Area Networks

20. Switched Local Area Networks 20. Switched Local Area Networks n Addressing in LANs (ARP) n Spanning tree algorithm n Forwarding in switched Ethernet LANs n Virtual LANs n Layer 3 switching n Datacenter networks John DeHart Based on

More information

Using OSPF in an MPLS VPN Environment

Using OSPF in an MPLS VPN Environment Using OSPF in an MPLS VPN Environment Overview This module introduces the interaction between multi-protocol Border Gateway Protocol (MP-BGP) running between Provider Edge routers (s) and Open Shortest

More information

Software Defined Networking

Software Defined Networking Software Defined Networking Richard T. B. Ma School of Computing National University of Singapore Material from: Scott Shenker (UC Berkeley), Nick McKeown (Stanford), Jennifer Rexford (Princeton) CS 4226:

More information

Data Networks Project 2: Design Document for Intra-Domain Routing Protocols

Data Networks Project 2: Design Document for Intra-Domain Routing Protocols Data Networks Project 2: Design Document for Intra-Domain Routing Protocols Assigned: Wed, 30 May 2007 Due: 11:59pm, Wed, 20 June 2007 1 Introduction You have just joined Bisco Systems, a networking equipment

More information

Section #6: Addressing

Section #6: Addressing Section #6: Addressing Problem 1: Routing entries Consider the following routing table for router A, given in CIDR ( slash-n ) notation: 56.162.0.0/15: Port 0 56.164.0.0/15: Port 1 56.166.0.0/16: Port

More information

ITRI CCL. IP Routing Primer. Paul C. Huang, Ph.D. ITRI / CCL / N300. CCL/N300; Paul Huang 1999/6/2 1

ITRI CCL. IP Routing Primer. Paul C. Huang, Ph.D. ITRI / CCL / N300. CCL/N300; Paul Huang 1999/6/2 1 IP Routing Primer Paul C. Huang, Ph.D. ITRI / / N300 /N300; Paul Huang 1999/6/2 1 Basic Addressing / Subnetting Class A 0 Network Host Host Host 127 networks / 16,777,216 hosts Class A natural mask 255.0.0.0

More information

Routing in Small Networks. Internet Routing Overview. Agenda. Routing in Large Networks

Routing in Small Networks. Internet Routing Overview. Agenda. Routing in Large Networks Routing in Small Networks Internet Routing Overview AS, IGP,, BGP in small networks distance vector or link state protocols like RIP or OSPF can be used for dynamic routing it is possible that every router

More information

Definition. A Historical Example

Definition. A Historical Example Overlay Networks This lecture contains slides created by Ion Stoica (UC Berkeley). Slides used with permission from author. All rights remain with author. Definition Network defines addressing, routing,

More information

Today. Finishing up inter-domain routing. Review of end-to-end forwarding. How we build routers. Economics of peering/settlement

Today. Finishing up inter-domain routing. Review of end-to-end forwarding. How we build routers. Economics of peering/settlement Today Finishing up inter-domain routing Economics of peering/settlement Review of end-to-end forwarding How we build routers 1 A History of Settlement The telephone world LECs (local exchange carriers)

More information

CROSS LAYER BASED MULTIPATH ROUTING FOR LOAD BALANCING

CROSS LAYER BASED MULTIPATH ROUTING FOR LOAD BALANCING CHAPTER 6 CROSS LAYER BASED MULTIPATH ROUTING FOR LOAD BALANCING 6.1 INTRODUCTION The technical challenges in WMNs are load balancing, optimal routing, fairness, network auto-configuration and mobility

More information

Data Center Convergence. Ahmad Zamer, Brocade

Data Center Convergence. Ahmad Zamer, Brocade Ahmad Zamer, Brocade SNIA Legal Notice The material contained in this tutorial is copyrighted by the SNIA unless otherwise noted. Member companies and individual members may use this material in presentations

More information

Data Networking and Architecture. Delegates should have some basic knowledge of Internet Protocol and Data Networking principles.

Data Networking and Architecture. Delegates should have some basic knowledge of Internet Protocol and Data Networking principles. Data Networking and Architecture The course focuses on theoretical principles and practical implementation of selected Data Networking protocols and standards. Physical network architecture is described

More information

How To Understand Bg

How To Understand Bg Table of Contents BGP Case Studies...1 BGP4 Case Studies Section 1...3 Contents...3 Introduction...3 How Does BGP Work?...3 ebgp and ibgp...3 Enabling BGP Routing...4 Forming BGP Neighbors...4 BGP and

More information