CS 138: Communication I. CS 138 V 1 Copyright 2012 Thomas W. Doeppner. All rights reserved.

Size: px
Start display at page:

Download "CS 138: Communication I. CS 138 V 1 Copyright 2012 Thomas W. Doeppner. All rights reserved."

Transcription

1 CS 138: Communication I CS 138 V 1 Copyright 2012 Thomas W. Doeppner. All rights reserved.

2 Topics Network Metrics Layering Reliability Congestion Control Routing CS 138 V 2 Copyright 2012 Thomas W. Doeppner. All rights reserved.

3 The Fallacies of Distributed Computing 1. The network is reliable 2. Latency is zero 3. Bandwidth is infinite 4. The network is secure 5. Topology doesn't change 6. There is one administrator 7. Transport cost is zero 8. The network is homogeneous CS 138 V 3 Copyright 2012 Thomas W. Doeppner. All rights reserved.

4 Performance Metrics Bandwidth Number of bits/unit of time the medium can transmit Latency How long for message to cross network Process + Queue + Transmit + Propagation Throughput Effective number of bits received/unit of time e.g. 10Mbps Goodput - Useful bits received per unit of time Discounts protocol overhead Jitter Variation in latency CS 138 V 4 Copyright 2012 Thomas W. Doeppner. All rights reserved.

5 Latency Processing Delay Per message, small, limits throughput e.g. to achieve full rate at a 100Mbps link, you have a budget of 120µs/pkt: 100Mb s pkt 1500B B 8b 8,333pkt /s Queueing Delay Highly variable, offered load vs outgoing b/w Transmission Delay depends on medium Size/Bandwidth Propagation Delay depends on medium Distance/Speed of Light CS 138 V 5 Copyright 2012 Thomas W. Doeppner. All rights reserved.

6 Sending Packets Across Transmission Delay Propagation Delay Latency CS 138 V 6 Copyright 2012 Thomas W. Doeppner. All rights reserved.

7 Sending Packets Across Throughput: bits / s CS 138 V 7 Copyright 2012 Thomas W. Doeppner. All rights reserved.

8 Which matters most, bandwidth or delay? How much data can we send during one RTT? E.g., send request, receive file Request Response Time For small transfers, latency more important, for bulk, throughput more important CS 138 V 8 Copyright 2012 Thomas W. Doeppner. All rights reserved.

9 Many Requirements Modulation, encoding, framing Routing Reliability Flow control Congestion control Security How to organize all of these? CS 138 V 9 Copyright 2012 Thomas W. Doeppner. All rights reserved.

10 ISO OSI Reference Model 7 application application 6 presentation presentation 5 session session 4 transport transport 3 network link network link network link network link 2 data link data link data link data link 1 physical physical physical physical CS 138 V 10 Copyright 2012 Thomas W. Doeppner. All rights reserved.

11 Internet Architecture OSI Layer 5-7 Application Application End-to-End OSI Layer 4 End-to-End OSI Layer 3 Internet Internet Internet Internet Net Interface OSI Layers 1-2 Net Interface Net Interface Net Interface CS 138 V 11 Copyright 2012 Thomas W. Doeppner. All rights reserved.

12 Layers Application what the users sees, e.g., HTTP Presentation crypto, conversion between representations Session can tie together multiple streams (e.g., audio & video) Transport demultiplexes, provides reliability, flow and congestion control Network sends packets, using routing Data Link sends frames, handles media access Physical sends individual bits CS 138 V 12 Copyright 2012 Thomas W. Doeppner. All rights reserved.

13 How to Place Functionality Don t provide functionality on a layer that some of the users won t need E.g. security, in-order-delivery conflicts with timeliness Don t provide functionality on a layer when it is insufficient E.g. error correction, reliability This is the End-to-end Principle Can violate when there is a performance gain Do provide a functionality that can be reused E.g., IP routing and forwarding is useful to many layers above CS 138 V 13 Copyright 2012 Thomas W. Doeppner. All rights reserved.

14 Reliable Delivery Several sources of errors in transmission Error detection can discard bad frames Problem: if bad packets are lost, how can we ensure reliable delivery? Exactly-once semantics = at least once + at most once CS 138 V 14 Copyright 2012 Thomas W. Doeppner. All rights reserved.

15 At Least Once Semantics How can the sender know packet arrived at least once? Acknowledgments + Timeout Stop and Wait Protocol S: Send packet, wait R: Receive packet, send ACK S: Receive ACK, send next packet S: No ACK, timeout and retransmit CS 138 V 15 Copyright 2012 Thomas W. Doeppner. All rights reserved.

16 Sender Receiver Frame 0 ACK 0 Time Frame 1 ACK 1 Frame 0 ACK 0 CS 138 V 16 Copyright 2012 Thomas W. Doeppner. All rights reserved.

17 Sender Receiver Sender Receiver Frame Frame Time Timeout ACK Timeout ACK Frame Timeout ACK (a) (c) Sender Receiver Sender Receiver Frame Frame Timeout ACK Frame Timeout Timeout Timeout Frame ACK ACK (b) CS 138 V 17 Copyright 2012 Thomas W. Doeppner. All rights reserved. (d)

18 Stop and Wait Problems Duplicate data Duplicate acks Slow (channel idle most of the time!) May be difficult to set the timeout value CS 138 V 18 Copyright 2012 Thomas W. Doeppner. All rights reserved.

19 Duplicate data: adding sequence numbers Sender Receiver Frame 0 ACK 0 Time Frame 1 ACK 1 Frame 0 ACK 0 CS 138 V 19 Copyright 2012 Thomas W. Doeppner. All rights reserved.

20 At Most Once Semantics How to avoid duplicates? Uniquely identify each packet Have receiver and sender remember Stop and Wait: add 1 bit to the header Why is it enough? CS 138 V 20 Copyright 2012 Thomas W. Doeppner. All rights reserved.

21 Going faster: sliding window protocol Still have the problem of keeping pipe full Generalize approach with > 1-bit counter Allow multiple outstanding (unacked) frames Upper bound on unacked frames, called window Sender Receiver Time CS 138 V 21 Copyright 2012 Thomas W. Doeppner. All rights reserved.

22 How big should the window be? Sender Receiver Time How many bytes can we transmit in one RTT? BW B/s x RTT s => Bandwidth-Delay Product CS 138 V 22 Copyright 2012 Thomas W. Doeppner. All rights reserved.

23 Maximizing Throughput Delay Bandwidth Can view network as a pipe For full utilization want bytes in flight bandwidth delay But don t want to overload the network What if protocol doesn t involve bulk transfer? Get throughput through concurrency service multiple clients simultaneously CS 138 V 23 Copyright 2012 Thomas W. Doeppner. All rights reserved.

24 Problem: on the Internet, the pipe varies Different paths Queues along the way Other flows Q: How to set the window size then? CS 138 V 24 Copyright 2012 Thomas W. Doeppner. All rights reserved.

25 Efficiency 3 goals: Utilize the network Don t overwhelm the receiver: flow control Don t overwhelm the network: congestion control CS 138 V 25 Copyright 2012 Thomas W. Doeppner. All rights reserved.

26 Congestion Control 3 Key Challenges Determining the available capacity in the first place Adjusting to changes in the available capacity Sharing capacity between flows Idea Each source determines network capacity for itself Rate is determined by window size Uses implicit feedback (drops, delay) ACKs pace transmission (self-clocking) CS 138 V 26 Copyright 2012 Thomas W. Doeppner. All rights reserved.

27 Ack Clocking CS 138 V 27 Copyright 2012 Thomas W. Doeppner. All rights reserved.

28 Fast Start CS 138 V 28 Copyright 2012 Thomas W. Doeppner. All rights reserved.

29 Slow Start CS 138 V 29 Copyright 2012 Thomas W. Doeppner. All rights reserved.

30 Congestion Control (1) 1) 2) 3) CS 138 V 30 Copyright 2012 Thomas W. Doeppner. All rights reserved.

31 Dealing with Congestion Assume losses are due to congestion After a loss, reduce congestion window How much to reduce? CS 138 V 31 Copyright 2012 Thomas W. Doeppner. All rights reserved.

32 How much to reduce window? Crude model of the network Let L i be the load (# pkts) in the network at time I If network uncongested, roughly constant L i = N What happens under congestion? Some fraction γ of packets can t exit the network Now L i = N + γl i-1, or L i g i L 0 Exponential increase in congestion Sources must decrease offered rate exponentially i.e, multiplicative decrease in window size TCP chooses to cut window in half CS 138 V 32 Copyright 2012 Thomas W. Doeppner. All rights reserved.

33 Congestion Control (2) 4) 5) CS 138 V 33 Copyright 2012 Thomas W. Doeppner. All rights reserved.

34 How to use extra capacity? Network signals congestion, but says nothing of underutilization Senders constantly try to send faster, see if it works So, increase window if no losses By how much? Multiplicative increase? Easier to saturate the network than to recover Too fast, will lead to saturation, wild fluctuations Additive increase? Won t saturate the network Remember fairness? CS 138 V 34 Copyright 2012 Thomas W. Doeppner. All rights reserved.

35 Chiu Jain Phase Plots Fair: A = B Flow Rate B Goal: fair and efficient! Flow Rate A Efficient: A+B = C CS 138 V 35 Copyright 2012 Thomas W. Doeppner. All rights reserved.

36 Chiu Jain Phase Plots Flow Rate B MI MD Fair: A = B Flow Rate A Efficient: A+B = C CS 138 V 36 Copyright 2012 Thomas W. Doeppner. All rights reserved.

37 Chiu Jain Phase Plots Flow Rate B AI AD Fair: A = B Flow Rate A Efficient: A+B = C CS 138 V 37 Copyright 2012 Thomas W. Doeppner. All rights reserved.

38 Chiu Jain Phase Plots Flow Rate B AI MD Fair: A = B Flow Rate A Efficient: A+B = C CS 138 V 38 Copyright 2012 Thomas W. Doeppner. All rights reserved.

39 AIMD Trace AIMD produces sawtooth pattern of window size Always probing available bandwidth KB Time (seconds) 10.0 CS 138 V 39 Copyright 2012 Thomas W. Doeppner. All rights reserved.

40 CS 138 V 40 Copyright 2012 Thomas W. Doeppner. All rights reserved. Traceroute map of the Internet, ~5 million edges, circa opte.org

41 Problem: How to Route at Scale? All-to-all routes? Central directory? We saw one way of doing this scalably: structured P2P networks (Chord, Tapestry) Assume any-to-any connectivity Internet uses another approach to scalability: hierarchy Natural fit to how the world is organized Matches how networks are connected and administered IP addresses allocated in hierarchical blocks (mostly) Unit of routing: prefixes CS 138 V 41 Copyright 2012 Thomas W. Doeppner. All rights reserved.

42 Finding a Route ISP 2 ISP 3 ISP 1 Z ISP 4 A V U B W X C Y D CS 138 V 42 Copyright 2012 Thomas W. Doeppner. All rights reserved.

43 Types of Routing Protocols Interior RIP OSPF Exterior Routing Exterior Gateway Protocol (EGP) - obsolete Border Gateway Protocol (BGP) - RFC 1771 CS 138 V 43 Copyright 2012 Thomas W. Doeppner. All rights reserved.

44 Dynamic Routing Distance vector each router maintains table containing best known distance to each destination and the first hop of the associated path routers periodically exchange tables with their neighbors Link state each router maintains table containing description of entire network each router computes best route based on global information routers periodically send all others their local network-description information (i.e., the state of their connections with neighbors) CS 138 V 44 Copyright 2012 Thomas W. Doeppner. All rights reserved.

45 DV Example B s routing table B Destination Cost Next Hop A C D A 1 A C 1 C E D 2 C F G E 2 A F 2 A G 3 A CS 138 V 45 Copyright 2012 Thomas W. Doeppner. All rights reserved.

46 Adapting to Failures G, 3,C,- 2, F A B G, 3, D C G, 2, D D G, 1, G E G, 4, 3, A F G G,, 4, 1, A G - F-G fails F sets distance to G to infinity, propagates A sets distance to G to infinity A receives periodic update from C with 2-hop path to G A sets distance to G to 3 and propagates F sets distance to G to 4, through A CS 138 V 46 Copyright 2012 Thomas W. Doeppner. All rights reserved.

47 Count-to-Infinity B A C D E F G Link from A to E fails A advertises distance of infinity to E B and C advertise a distance of 2 to E B decides it can reach E in 3 hops through C A decides it can reach E in 4 hops through B C decides it can reach E in 5 hops through A, When does this stop? CS 138 V 47 Copyright 2012 Thomas W. Doeppner. All rights reserved.

48 How to avoid loops IP TTL field prevents a packet from living forever Does not repair a loop Simple approach: consider a small cost n (e.g., 16) to be infinity After n rounds decide node is unavailable But rounds can be long, this takes time Problem: distance vector based only on local information` CS 138 V 48 Copyright 2012 Thomas W. Doeppner. All rights reserved.

49 Better loop avoidance Split Horizon When sending updates to node A, don t include routes you learned from A Prevents B and C from sending cost 2 to A Split Horizon with Poison Reverse Rather than not advertising routes learned from A, explicitly include cost of. Faster to break out of loops, but increases advertisement sizes CS 138 V 49 Copyright 2012 Thomas W. Doeppner. All rights reserved.

50 Warning Split horizon/split horizon with poison reverse only help between two nodes Can still get loop with three nodes involved Might need to delay advertising routes after changes, but affects convergence time CS 138 V 50 Copyright 2012 Thomas W. Doeppner. All rights reserved.

51 Autonomous Systems Autonomous System Autonomous System Autonomous System CS 138 V 51 Copyright 2012 Thomas W. Doeppner. All rights reserved.

52 Types of Routing Protocols Interior RIP OSPF Exterior Routing Exterior Gateway Protocol (EGP) - obsolete Border Gateway Protocol (BGP) - RFC 1771 CS 138 V 52 Copyright 2012 Thomas W. Doeppner. All rights reserved.

53 Exterior Routing Long-Haul 3 Long-Haul 4 Long-Haul 1 Long-Haul 2 Long-Haul 3 ISP 1 ISP 2 ISP 3 Customer 1 Customer 2 Customer 3 CS 138 V 53 Copyright 2012 Thomas W. Doeppner. All rights reserved.

54 Addressing Each AS has a 16-bit AS number in short supply later increased to 32 bits AS advertises which prefixes it owns Ideally easy mapping from IP address to AS number But no people move machines highly decentralized (hierarchical) process change ISPs Result routers with no default entries have lots of entries - Over 500,000 entries as of 2015 CS 138 V 54 Copyright 2012 Thomas W. Doeppner. All rights reserved.

55 BGP References: RFCs 1771, 1772, 1773, 1774 A path-vector protocol unit of routing is the AS avoids count-to-infinity problems by using path vectors (of ASs) routers must enforce policy constraints no notion of determining optimal routes: reachability is the goal CS 138 V 55 Copyright 2012 Thomas W. Doeppner. All rights reserved.

56 Extra Slides These were not covered in class, but are really good if you want to understand classic routing protocols better. CS 138 V 56 Copyright 2012 Thomas W. Doeppner. All rights reserved.

57 Routing Information Protocol (RIP) Distance-vector protocol In use since the 70s Formerly in widespread use implemented on Unix as routed Described in RFCs 1058, 1723 CS 138 V 57 Copyright 2012 Thomas W. Doeppner. All rights reserved.

58 RIP Theory (1) E 20 w b B F 30 x b G 40 y b 5 H 50 z b E?? F?? G?? H?? A 10 5 C E 10 w c F 50 x c G 20 y c H 60 z c D E 90 w d F 5 x d G 70 y d H 10 z d CS 138 V 58 Copyright 2012 Thomas W. Doeppner. All rights reserved.

59 RIP Theory (2) E 20 w b B F 30 x b G 40 y b 5 H 50 z b E 20 C F 10 D G 30 C H 15 D A 10 5 C E 10 w c F 50 x c G 20 y c H 60 z c D E 90 w d F 5 x d G 70 y d H 10 z d CS 138 V 59 Copyright 2012 Thomas W. Doeppner. All rights reserved.

60 RIP Theory (3) B E 20 w b F 15 A G 35 A 5 H 20 A E 20 C F 10 D G 30 C H 15 D A 10 5 C E 10 w c F 20 A G 20 y c H 25 A D E 25 A F 5 x d G 35 A H 10 z d CS 138 V 60 Copyright 2012 Thomas W. Doeppner. All rights reserved.

61 Loss of Route (1) 1 D 2 B A B D 1 D 1 1 D 2 B C 1 10 D CS 138 V 61 Copyright 2012 Thomas W. Doeppner. All rights reserved.

62 Loss of Route (2) 1 D 2 B A B D D 2 B C 10 D CS 138 V 62 Copyright 2012 Thomas W. Doeppner. All rights reserved.

63 Loss of Route (3) 1 D 2 B A B D 3 A 1 1 D 2 B C 10 D CS 138 V 63 Copyright 2012 Thomas W. Doeppner. All rights reserved.

64 Loss of Route (4) 1 D 3 C A B D 3 A 1 1 D 3 A C 10 D CS 138 V 64 Copyright 2012 Thomas W. Doeppner. All rights reserved.

65 Loss of Route (5) 1 D 4 C A B D 4 A 1 1 D 4 A C 10 D CS 138 V 65 Copyright 2012 Thomas W. Doeppner. All rights reserved.

66 Loss of Route (6) D 10 C A 1 B D 10 A 1 1 D 10 A C 10 D CS 138 V 66 Copyright 2012 Thomas W. Doeppner. All rights reserved.

67 Loss of Route (7) D 11 C A 1 B D 11 C 1 1 D 10 D C 10 D CS 138 V 67 Copyright 2012 Thomas W. Doeppner. All rights reserved.

68 Loss of Route (8) D 11 C A 1 B D 11 C C D CS 138 V 68 Copyright 2012 Thomas W. Doeppner. All rights reserved.

69 Loss of Route (9) D 12 B A 1 B D 13 A C D CS 138 V 69 Copyright 2012 Thomas W. Doeppner. All rights reserved.

70 Loss of Route ( ) D - A 1 B D - C D CS 138 V 70 Copyright 2012 Thomas W. Doeppner. All rights reserved.

71 Counting to Infinity Make infinity small 16 is chosen as infinity in RIP longest path in network can be no longer than 15 CS 138 V 71 Copyright 2012 Thomas W. Doeppner. All rights reserved.

72 Split Horizon Don t tell neighbor about routes obtained from it quicker convergence in many cases CS 138 V 72 Copyright 2012 Thomas W. Doeppner. All rights reserved.

73 Split Horizon s Not Perfect (1) 1 D 2 C A B D 2 C 1 1 D 1 D C 1 D CS 138 V 73 Copyright 2012 Thomas W. Doeppner. All rights reserved.

74 Split Horizon s Not Perfect (2) 1 D 2 C (C) A B D 2 C (C) 1 1 D - C D CS 138 V 74 Copyright 2012 Thomas W. Doeppner. All rights reserved.

75 Split Horizon s Not Perfect (3) 1 D 2 C (C) A B D 3 A (A) 1 1 D - C D CS 138 V 75 Copyright 2012 Thomas W. Doeppner. All rights reserved.

76 Split Horizon s Not Perfect (4) 1 D 2 C (C) A B D 3 A (A) 1 1 D 4 B (B) C D CS 138 V 76 Copyright 2012 Thomas W. Doeppner. All rights reserved.

77 Split Horizon s Not Perfect (5) 1 D 5 C (C) A B D 3 A (A) 1 1 D 4 B (B) C D CS 138 V 77 Copyright 2012 Thomas W. Doeppner. All rights reserved.

78 Path Vectors (1) 1 D 2 C,D A B D 2 C,D 1 1 D 1 D C 1 D CS 138 V 78 Copyright 2012 Thomas W. Doeppner. All rights reserved.

79 Path Vectors (2) 1 D 2 C,D A B D 2 C,D 1 1 D - C D CS 138 V 79 Copyright 2012 Thomas W. Doeppner. All rights reserved.

80 Path Vectors (3) D - A 1 B D D - C D CS 138 V 80 Copyright 2012 Thomas W. Doeppner. All rights reserved.

81 RIP Problems Slow convergence Infinity is too small increasing infinity causes backwards compatibility problems and lengthens convergence Routing metric is number of hops could easily be modified Utilizes only a single path, even if multiple paths are possible CS 138 V 81 Copyright 2012 Thomas W. Doeppner. All rights reserved.

82 To the Rescue: Link-State Routing Routers flood internet with information about their direct links Each router computes shortest path independently, using global information CS 138 V 82 Copyright 2012 Thomas W. Doeppner. All rights reserved.

83 Quick Convergence B B C C D C A B A A C C D C C A A B B D D 1 A C B C C C D CS 138 V 83 Copyright 2012 Thomas W. Doeppner. All rights reserved.

84 Quick Convergence (2) A B: 1 C: B B C C D C A 1 C B A A C C D C B A: 1 C: A C B C C C D CS 138 V 84 Copyright 2012 Thomas W. Doeppner. All rights reserved.

85 Quick Convergence (3) A B: 1 C: B B C D A 1 C B A A C D B A: 1 C: A C B C C C D CS 138 V 85 Copyright 2012 Thomas W. Doeppner. All rights reserved.

86 Link-State Advantages Quicker convergence Load sharing Better scaling CS 138 V 86 Copyright 2012 Thomas W. Doeppner. All rights reserved.

87 Finding the Shortest Path B 6 E 1 H A D G J C 1 F 4 I CS 138 V 87 Copyright 2012 Thomas W. Doeppner. All rights reserved.

88 Shortest Path (1) B 6 E 1 H A D G J C 1 F 4 I CS 138 V 88 Copyright 2012 Thomas W. Doeppner. All rights reserved.

89 Shortest Path (2) 2, A B 6, - E 1, - H , - A D G, - J, , C 4, A 1 F, - 4 I, - CS 138 V 89 Copyright 2012 Thomas W. Doeppner. All rights reserved.

90 Shortest Path (3) 2, A B 6 8, B E 1, - H D A D G, - J 4, B 4 3 2, C 4, A 1 F, - 4 I, - CS 138 V 90 Copyright 2012 Thomas W. Doeppner. All rights reserved.

91 Shortest Path (4) 2, A B 6 6, D E 1, - H A D G, - J 4, B 4 3 2, C 4, A 1 F 6, D 4 I, - CS 138 V 91 Copyright 2012 Thomas W. Doeppner. All rights reserved.

92 Shortest Path (5) 2, A B 6 6, D E 1, - H A D G, - J 4, B 4 3 2, C 4, A 1 F 5, C 4 I, - CS 138 V 92 Copyright 2012 Thomas W. Doeppner. All rights reserved.

93 Shortest Path (6) 2, A B 6 6, D E 1, - H A D G, - J 4, B , F C 4, A 1 F 5, C 4 I 9, F CS 138 V 93 Copyright 2012 Thomas W. Doeppner. All rights reserved.

94 Shortest Path (7) 2, A B 6 6, D E 1 7, E H A D G, - J 4, B , E G C 4, A 1 F 5, C 4 I 9, F CS 138 V 94 Copyright 2012 Thomas W. Doeppner. All rights reserved.

95 Shortest Path (8) 2, A B 6 6, D E 1 7, E H A D G 12, H J 4, B , E C 4, A 1 F 5, C 4 I 9, F CS 138 V 95 Copyright 2012 Thomas W. Doeppner. All rights reserved.

96 Shortest Path (9) 2, A B 6 6, D E 1 7, E H A D G 10, I J 4, B , E C 4, A 1 F 5, C 4 I 9, F CS 138 V 96 Copyright 2012 Thomas W. Doeppner. All rights reserved.

97 Flooding (1) B 6 E 1 H A D G J C 1 F 4 I CS 138 V 97 Copyright 2012 Thomas W. Doeppner. All rights reserved.

98 Flooding (2) B 6 E 1 H A D G J C 1 F 4 I CS 138 V 98 Copyright 2012 Thomas W. Doeppner. All rights reserved.

99 Flooding Problems Reliability new information must replace old Robustness misbehaving routers don t bring down everyone CS 138 V 99 Copyright 2012 Thomas W. Doeppner. All rights reserved.

100 Reliability New information must replace old use sequence numbers and acks but - sequence-number wraparound - restarting a router state info is lost CS 138 V 100 Copyright 2012 Thomas W. Doeppner. All rights reserved.

101 General Link-State Flooding Strategy Each router: periodically and whenever there s a change: - flood internet with new link-state information when receive link-state update: - if update is new, copy it into database recompute routes CS 138 V 101 Copyright 2012 Thomas W. Doeppner. All rights reserved.

102 Approach 1 Sequence numbers each router assigns its next highest sequence number to its link-state updates (LSUs) when receiving an LSU, ack it, but ignore its contents unless it has a higher sequence number than what s already received (in which case, forward it on) Restart each router gives its LSUs an age - each router decrements the age of its copy of an LSU until it reaches zero or is replaced if age is zero, then new LSU, regardless of sequence number, replaces old CS 138 V 102 Copyright 2012 Thomas W. Doeppner. All rights reserved.

103 Sequence-Number Wraparound < a n > a a CS 138 V 103 Copyright 2012 Thomas W. Doeppner. All rights reserved.

104 Whoops c b a a < b < c < a CS 138 V 104 Copyright 2012 Thomas W. Doeppner. All rights reserved.

105 Solution Sequence numbers not allowed to easily wraparound: when max value is reached, no wraparound allowed until LSU ages out thus after receiving LSUs with sequence numbers a, b, and c, by the time sequence numbers are allowed to wrap, a repeat occurrence of a will have aged out Sequence-number space made large enough so that wraparound occurs only on misbehaving routers CS 138 V 105 Copyright 2012 Thomas W. Doeppner. All rights reserved.

106 Open Shortest Path First (OSPF) Link-state protocol Predecessors developed starting in late 70s Implemented on Unix as gated (which also does RIP) In use since 1990 Described in RFC 2328 CS 138 V 106 Copyright 2012 Thomas W. Doeppner. All rights reserved.

107 The OSPF Approach All communication layered directly on top of IP OSPF is a transport-layer protocol Discover neighbors hello messages sent periodically on point-to-point links, multicast on LANs Measure or obtain cost of transmission to each neighbor Transmit routing information to all other routers use reliable flooding algorithm Compute shortest path based upon current link-state information (use Dijkstra s algorithm) modify Dijkstra s algorithm to obtain all shortest paths CS 138 V 107 Copyright 2012 Thomas W. Doeppner. All rights reserved.

Congestion. Can t sustain input rate > output rate Issues: - Avoid congestion - Control congestion - Prioritize who gets limited resources

Congestion. Can t sustain input rate > output rate Issues: - Avoid congestion - Control congestion - Prioritize who gets limited resources Congestion Source 1 Source 2 10-Mbps Ethernet 100-Mbps FDDI Router 1.5-Mbps T1 link Destination Can t sustain input rate > output rate Issues: - Avoid congestion - Control congestion - Prioritize who gets

More information

Flow and Congestion Control Marcos Vieira

Flow and Congestion Control Marcos Vieira Flow and Congestion Control 2014 Marcos Vieira Flow Control Part of TCP specification (even before 1988) Goal: not send more data than the receiver can handle Sliding window protocol Receiver uses window

More information

CSCI-1680 Link Layer Reliability Rodrigo Fonseca

CSCI-1680 Link Layer Reliability Rodrigo Fonseca CSCI-1680 Link Layer Reliability Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Janno< Last time Physical layer: encoding, modulation Link layer framing Today Getting

More information

CSCI-1680 Link Layer Reliability John Jannotti

CSCI-1680 Link Layer Reliability John Jannotti CSCI-1680 Link Layer Reliability John Jannotti Based partly on lecture notes by David Mazières, Phil Levis, Rodrigo Fonseca Roadmap Last time Physical layer: encoding, modulation Link layer framing Today

More information

CSCI-1680 Transport Layer II Data over TCP Rodrigo Fonseca

CSCI-1680 Transport Layer II Data over TCP Rodrigo Fonseca CSCI-1680 Transport Layer II Data over TCP Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Janno< Last Class CLOSED Passive open Close Close LISTEN Introduction to TCP

More information

CSCI-1680 Link Layer I Rodrigo Fonseca

CSCI-1680 Link Layer I Rodrigo Fonseca CSCI-1680 Link Layer I Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti Last time Physical layer: encoding, modulation Today Link layer framing Getting frames

More information

Basic Idea. Routing. Example. Routing by the Network

Basic Idea. Routing. Example. Routing by the Network Basic Idea Routing Routing table at each router/gateway When IP packet comes, destination address checked with routing table to find next hop address Questions: Route by host or by network? Routing table:

More information

Routing by the Network

Routing by the Network Routing Basic Idea Routing table at each router/gateway When IP packet comes, destination address checked with routing table to find next hop address Questions: Route by host or by network? Routing table:

More information

Routing. Advanced Computer Networks: Routing 1

Routing. Advanced Computer Networks: Routing 1 Routing Advanced Computer Networks: Routing 1 Gateway To internet or wide area network Metropolitan Area Network (MAN) s s Organization Servers Backbone R S R R Departmental Server s R S R s S R s s s

More information

Bandwidth Allocation & TCP

Bandwidth Allocation & TCP Bandwidth Allocation & TCP The Transport Layer Focus Application Presentation How do we share bandwidth? Session Topics Transport Network Congestion control & fairness Data Link TCP Additive Increase/Multiplicative

More information

Network Layer: Routing

Network Layer: Routing Network Layer: Routing The Problem A B R 1 R 2 R 4 R 3 Goal: for each destination, compute next hop 1 Lecture 9 2 Basic Assumptions Trivial solution: Flooding Dynamic environment: links and routers unreliable:

More information

II. Principles of Computer Communications Network and Transport Layer

II. Principles of Computer Communications Network and Transport Layer II. Principles of Computer Communications Network and Transport Layer A. Internet Protocol (IP) IPv4 Header An IP datagram consists of a header part and a text part. The header has a 20-byte fixed part

More information

Chapter 22 Network Layer: Delivery, Forwarding, and Routing 22.1

Chapter 22 Network Layer: Delivery, Forwarding, and Routing 22.1 Chapter 22 Network Layer: Delivery, Forwarding, and Routing 22.1 Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 22-3 UNICAST ROUTING PROTOCOLS 22.2 A routing

More information

ETSF05/ETSF10 Internet Protocols. Routing on the Internet

ETSF05/ETSF10 Internet Protocols. Routing on the Internet ETSF05/ETSF10 Internet Protocols Routing on the Internet Circuit switched routing ETSF05/ETSF10 - Internet Protocols 2 Routing in Packet Switching Networks Key design issue for (packet) switched networks

More information

CSCE 463/612 Networks and Distributed Processing Spring 2018

CSCE 463/612 Networks and Distributed Processing Spring 2018 CSCE 463/612 Networks and Distributed Processing Spring 2018 Network Layer IV Dmitri Loguinov Texas A&M University April 12, 2018 Original slides copyright 1996-2004 J.F Kurose and K.W. Ross 1 Chapter

More information

CS118 Discussion Week 7. Taqi

CS118 Discussion Week 7. Taqi CS118 Discussion Week 7 Taqi Outline Hints for project 2 Lecture review: routing About Course Project 2 Please implement byte-stream reliable data transfer Cwnd is in unit of bytes, not packets How to

More information

Networking Link Layer

Networking Link Layer Networking Link Layer ECE 650 Systems Programming & Engineering Duke University, Spring 2018 (Link Layer Protocol material based on CS 356 slides) TCP/IP Model 2 Layer 1 & 2 Layer 1: Physical Layer Encoding

More information

Overview. Problem: Find lowest cost path between two nodes Factors static: topology dynamic: load

Overview. Problem: Find lowest cost path between two nodes Factors static: topology dynamic: load Dynamic Routing Overview Forwarding vs Routing forwarding: to select an output port based on destination address and routing table routing: process by which routing table is built Network as a Graph C

More information

ETSF05/ETSF10 Internet Protocols Routing on the Internet

ETSF05/ETSF10 Internet Protocols Routing on the Internet ETSF05/ETSF10 Internet Protocols Routing on the Internet 2014, (ETSF05 Part 2), Lecture 1.1 Jens Andersson Circuit switched routing 2014 11 05 ETSF05/ETSF10 Internet Protocols 2 Packet switched Routing

More information

Routing Protocols. Autonomous System (AS)

Routing Protocols. Autonomous System (AS) Routing Protocols Two classes of protocols: 1. Interior Routing Information Protocol (RIP) Open Shortest Path First (OSPF) 2. Exterior Border Gateway Protocol (BGP) Autonomous System (AS) What is an AS?

More information

Unit 3: Dynamic Routing

Unit 3: Dynamic Routing Unit 3: Dynamic Routing Basic Routing The term routing refers to taking a packet from one device and sending it through the network to another device on a different network. Routers don t really care about

More information

Routing, Routing Algorithms & Protocols

Routing, Routing Algorithms & Protocols Routing, Routing Algorithms & Protocols Computer Networks Lecture 6 http://goo.gl/pze5o8 Circuit-Switched and Packet-Switched WANs 2 Circuit-Switched Networks Older (evolved from telephone networks), a

More information

Routing in a network

Routing in a network Routing in a network Focus is small to medium size networks, not yet the Internet Overview Then Distance vector algorithm (RIP) Link state algorithm (OSPF) Talk about routing more generally E.g., cost

More information

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste Outline 15-441 Computer Networking Lecture 18 TCP Performance Peter Steenkiste Fall 2010 www.cs.cmu.edu/~prs/15-441-f10 TCP congestion avoidance TCP slow start TCP modeling TCP details 2 AIMD Distributed,

More information

ICMP, ARP, RARP, IGMP

ICMP, ARP, RARP, IGMP Internet Layer Lehrstuhl für Informatik 4 Raw division into three tasks: Data transfer over a global network Route decision at the sub-nodes Control of the network or transmission status Routing Protocols

More information

EECS 122, Lecture 16. Link Costs and Metrics. Traffic-Sensitive Metrics. Traffic-Sensitive Metrics. Static Cost Metrics.

EECS 122, Lecture 16. Link Costs and Metrics. Traffic-Sensitive Metrics. Traffic-Sensitive Metrics. Static Cost Metrics. EECS 122, Lecture 16 Kevin Fall kfall@cs.berkeley.edu edu Link Costs and Metrics Routing protocols compute shortest/cheapest paths using some optimization criteria Choice of criteria has strong effect

More information

Reliable Transport II: TCP and Congestion Control

Reliable Transport II: TCP and Congestion Control Reliable Transport II: TCP and Congestion Control Stefano Vissicchio UCL Computer Science COMP0023 Recap: Last Lecture Transport Concepts Layering context Transport goals Transport mechanisms and design

More information

Lecture 16: Interdomain Routing. CSE 123: Computer Networks Stefan Savage

Lecture 16: Interdomain Routing. CSE 123: Computer Networks Stefan Savage Lecture 16: Interdomain Routing CSE 123: Computer Networks Stefan Savage Overview Autonomous Systems Each network on the Internet has its own goals Path-vector Routing Allows scalable, informed route selection

More information

Top-Down Network Design

Top-Down Network Design Top-Down Network Design Chapter Seven Selecting Switching and Routing Protocols Original slides by Cisco Press & Priscilla Oppenheimer Selection Criteria for Switching and Routing Protocols Network traffic

More information

Introduc)on to Computer Networks

Introduc)on to Computer Networks Introduc)on to Computer Networks COSC 4377 Lecture 9 Spring 2012 February 15, 2012 Announcements HW4 due today Start working on HW5 In- class student presenta)ons TA office hours this week TR 1030a 100p

More information

Routing. Jens A Andersson Communication Systems

Routing. Jens A Andersson Communication Systems Routing Jens A Andersson Communication Systems R1 Choosing an Optimal Path R4 5 R7 5 10 40 R6 6 5 B R2 15 A 20 4 10 10 R8 R3 5 R5 10 Router A router is a type of internetworking device that passes data

More information

Review problems (for no credit): Transport and Network Layer

Review problems (for no credit): Transport and Network Layer Review problems (for no credit): Transport and Network Layer V. Arun CS 653, Fall 2018 09/06/18 Transport layer 1. Protocol multiplexing: (a) If a web server has 100 open connections, how many sockets

More information

What is the difference between unicast and multicast? (P# 114)

What is the difference between unicast and multicast? (P# 114) 1 FINAL TERM FALL2011 (eagle_eye) CS610 current final term subjective all solved data by eagle_eye MY paper of CS610 COPUTER NETWORKS There were 30 MCQs Question no. 31 (Marks2) Find the class in 00000001.001011.1001.111

More information

Communication Networks

Communication Networks Communication Networks Spring 2018 Laurent Vanbever nsg.ee.ethz.ch ETH Zürich (D-ITET) April 30 2018 Materials inspired from Scott Shenker & Jennifer Rexford Last week on Communication Networks We started

More information

CSE 461. TCP and network congestion

CSE 461. TCP and network congestion CSE 461 TCP and network congestion This Lecture Focus How should senders pace themselves to avoid stressing the network? Topics Application Presentation Session Transport Network congestion collapse Data

More information

Routing in the Internet

Routing in the Internet Routing in the Internet Daniel Zappala CS 460 Computer Networking Brigham Young University Scaling Routing for the Internet 2/29 scale 200 million destinations - can t store all destinations or all prefixes

More information

CHAPTER 9: PACKET SWITCHING N/W & CONGESTION CONTROL

CHAPTER 9: PACKET SWITCHING N/W & CONGESTION CONTROL CHAPTER 9: PACKET SWITCHING N/W & CONGESTION CONTROL Dr. Bhargavi Goswami, Associate Professor head, Department of Computer Science, Garden City College Bangalore. PACKET SWITCHED NETWORKS Transfer blocks

More information

Topics for This Week

Topics for This Week Topics for This Week Routing Protocols in the Internet OSPF, BGP More on IP Fragmentation and Reassembly ICMP Readings Sections 5.6.4-5.6.5 1 Hierarchical Routing aggregate routers into regions, autonomous

More information

Computer Networking. Intra-Domain Routing. RIP (Routing Information Protocol) & OSPF (Open Shortest Path First)

Computer Networking. Intra-Domain Routing. RIP (Routing Information Protocol) & OSPF (Open Shortest Path First) Computer Networking Intra-Domain Routing RIP (Routing Information Protocol) & OSPF (Open Shortest Path First) IP Forwarding The Story So Far IP addresses are structured to reflect Internet structure IP

More information

Last time. Transitioning to IPv6. Routing. Tunneling. Gateways. Graph abstraction. Link-state routing. Distance-vector routing. Dijkstra's Algorithm

Last time. Transitioning to IPv6. Routing. Tunneling. Gateways. Graph abstraction. Link-state routing. Distance-vector routing. Dijkstra's Algorithm Last time Transitioning to IPv6 Tunneling Gateways Routing Graph abstraction Link-state routing Dijkstra's Algorithm Distance-vector routing Bellman-Ford Equation 10-1 This time Distance vector link cost

More information

COMPUTER NETWORK. Homework #3. Due Date: May 22, 2017 in class

COMPUTER NETWORK. Homework #3. Due Date: May 22, 2017 in class Computer Network Homework#3 COMPUTER NETWORK Homework #3 Due Date: May 22, 2017 in class Question 1 Host A and B are communicating over a TCP connection, and Host B has already received from A all bytes

More information

CSc 450/550 Computer Networks Internet Routing

CSc 450/550 Computer Networks Internet Routing CSc 450/550 Computer Networks Internet Routing Jianping Pan Summer 2007 7/12/07 CSc 450/550 1 Review Internet Protocol (IP) IP header addressing class-based, classless, hierarchical, NAT routing algorithms

More information

Routing Unicast routing protocols

Routing Unicast routing protocols Routing Unicast routing protocols Jens A Andersson Electrical and Information Technology R1 Choosing an Optimal Path R4 5 R7 5 10 40 R6 6 5 B R2 15 A 20 4 10 10 R8 R3 5 10 R5 1 Router A router is a type

More information

NET ID. CS519, Prelim (March 17, 2004) NAME: You have 50 minutes to complete the test. 1/17

NET ID. CS519, Prelim (March 17, 2004) NAME: You have 50 minutes to complete the test. 1/17 CS519, Prelim (March 17, 2004) NAME: You have 50 minutes to complete the test. 1/17 Q1. 2 points Write your NET ID at the top of every page of this test. Q2. X points Name 3 advantages of a circuit network

More information

CSCD 330 Network Programming Spring 2018

CSCD 330 Network Programming Spring 2018 CSCD 330 Network Programming Spring 018 Lecture 16 Network Layer Routing Protocols Reading: Chapter 4 Some slides provided courtesy of J.F Kurose and K.W. Ross, All Rights Reserved, copyright 017 1 Network

More information

Lecture 4 The Network Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Lecture 4 The Network Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it Lecture 4 The Network Layer Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it Network layer functions Transport packet from sending to receiving hosts Network layer protocols in every

More information

Lecture 11. Transport Layer (cont d) Transport Layer 1

Lecture 11. Transport Layer (cont d) Transport Layer 1 Lecture 11 Transport Layer (cont d) Transport Layer 1 Agenda The Transport Layer (continue) Connection-oriented Transport (TCP) Flow Control Connection Management Congestion Control Introduction to the

More information

CSCD 330 Network Programming Spring 2017

CSCD 330 Network Programming Spring 2017 CSCD 330 Network Programming Spring 017 Lecture 16 Network Layer Routing Protocols Reading: Chapter 4 Some slides provided courtesy of J.F Kurose and K.W. Ross, All Rights Reserved, copyright 1996-007

More information

ICS 351: Today's plan. OSPF BGP Routing in general routing protocol comparison encapsulation network dynamics

ICS 351: Today's plan. OSPF BGP Routing in general routing protocol comparison encapsulation network dynamics ICS 351: Today's plan OSPF BGP Routing in general routing protocol comparison encapsulation network dynamics OSPF OSPF generally used within a single Autonomous System (AS), i.e. within an organization

More information

Why dynamic route? (1)

Why dynamic route? (1) Routing Why dynamic route? (1) Static route is ok only when Network is small There is a single connection point to other network No redundant route 2 Why dynamic route? (2) Dynamic Routing Routers update

More information

Outline. Internet. Router. Network Model. Internet Protocol (IP) Design Principles

Outline. Internet. Router. Network Model. Internet Protocol (IP) Design Principles Outline Internet model Design principles Internet Protocol (IP) Transmission Control Protocol (TCP) Tze Sing Eugene Ng Department of Computer Science Carnegie Mellon University Tze Sing Eugene Ng eugeneng@cs.cmu.edu

More information

Introduction to Routing

Introduction to Routing 1 Introduction to Routing Session 2 Presentation_ID.scr 1 Agenda Addressing Concepts Routing Protocols Statics and Defaults 3 ISO OSI Reference Model Routing Information Protocol (RIP and RIPv2) L7 L6

More information

Networking: Network layer

Networking: Network layer control Networking: Network layer Comp Sci 3600 Security Outline control 1 2 control 3 4 5 Network layer control Outline control 1 2 control 3 4 5 Network layer purpose: control Role of the network layer

More information

Lecture 15: Transport Layer Congestion Control

Lecture 15: Transport Layer Congestion Control Lecture 15: Transport Layer Congestion Control COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition: 1996-2016, J.F Kurose

More information

ICS 351: Today's plan. OSPF BGP Routing in general

ICS 351: Today's plan. OSPF BGP Routing in general ICS 351: Today's plan OSPF BGP Routing in general link-state routing in distance-vector (Bellman-Ford, Ford-Fulkerson, RIP-style) routing, each router distributes its routing table to its neighbors an

More information

Routing. Info 341 Networking and Distributed Applications. Addresses, fragmentation, reassembly. end-to-end communication UDP, TCP

Routing. Info 341 Networking and Distributed Applications. Addresses, fragmentation, reassembly. end-to-end communication UDP, TCP outing Info 341 Networking and Distributed Applications Context Layer 3 Addresses, fragmentation, reassembly Layer 4 end-to-end communication UDP, TCP outing At layer 3 Often relies on layer 4 Application

More information

Inter-Domain Routing: BGP

Inter-Domain Routing: BGP Inter-Domain Routing: BGP Richard T. B. Ma School of Computing National University of Singapore CS 3103: Compute Networks and Protocols Inter-Domain Routing Internet is a network of networks Hierarchy

More information

Overview. TCP & router queuing Computer Networking. TCP details. Workloads. TCP Performance. TCP Performance. Lecture 10 TCP & Routers

Overview. TCP & router queuing Computer Networking. TCP details. Workloads. TCP Performance. TCP Performance. Lecture 10 TCP & Routers Overview 15-441 Computer Networking TCP & router queuing Lecture 10 TCP & Routers TCP details Workloads Lecture 10: 09-30-2002 2 TCP Performance TCP Performance Can TCP saturate a link? Congestion control

More information

Network Routing. Packet Routing, Routing Algorithms, Routers, Router Architecture

Network Routing. Packet Routing, Routing Algorithms, Routers, Router Architecture Network Routing Packet Routing, Routing Algorithms, Routers, Router Architecture Routing Routing protocol Goal: determine good path (sequence of routers) thru network from source to dest. Graph abstraction

More information

CS519: Computer Networks. Lecture 5, Part 4: Mar 29, 2004 Transport: TCP congestion control

CS519: Computer Networks. Lecture 5, Part 4: Mar 29, 2004 Transport: TCP congestion control : Computer Networks Lecture 5, Part 4: Mar 29, 2004 Transport: TCP congestion control TCP performance We ve seen how TCP the protocol works Sequencing, receive window, connection setup and teardown And

More information

CSE/EE 461. TCP congestion control. Last Lecture. This Lecture. Focus How should senders pace themselves to avoid stressing the network?

CSE/EE 461. TCP congestion control. Last Lecture. This Lecture. Focus How should senders pace themselves to avoid stressing the network? CSE/EE 461 TCP congestion control Last Lecture Focus How should senders pace themselves to avoid stressing the network? Topics congestion collapse congestion control Application Presentation Session Transport

More information

CSE 123A Computer Networks

CSE 123A Computer Networks CSE 123A Computer Networks Winter 2005 Lecture 14 Congestion Control Some images courtesy David Wetherall Animations by Nick McKeown and Guido Appenzeller The bad news and the good news The bad news: new

More information

Prof. Shervin Shirmohammadi SITE, University of Ottawa. Internet Protocol (IP) Lecture 2: Prof. Shervin Shirmohammadi CEG

Prof. Shervin Shirmohammadi SITE, University of Ottawa. Internet Protocol (IP) Lecture 2: Prof. Shervin Shirmohammadi CEG Lecture 2: Internet Protocol (IP) Prof. Shervin Shirmohammadi SITE, University of Ottawa Prof. Shervin Shirmohammadi CEG 4185 2-1 Network Layer Provides the upper layers with independence from the data

More information

COMPUTER NETWORK. Homework #3. Due Date: May 22, 2017 in class

COMPUTER NETWORK. Homework #3. Due Date: May 22, 2017 in class Computer Network Homework#2 COMPUTER NETWORK Homework #3 Due Date: May 22, 2017 in class Question 1 Host A and B are communicating over a TCP connection, and Host B has already received from A all bytes

More information

cs/ee 143 Communication Networks

cs/ee 143 Communication Networks cs/ee 143 Communication Networks Chapter 4 Transport Text: Walrand & Parakh, 2010 Steven Low CMS, EE, Caltech Recap: Internet overview Some basic mechanisms n Packet switching n Addressing n Routing o

More information

Reliable Transport I: Concepts and TCP Protocol

Reliable Transport I: Concepts and TCP Protocol Reliable Transport I: Concepts and TCP Protocol Brad Karp UCL Computer Science CS 3035/GZ01 29 th October 2013 Part I: Transport Concepts Layering context Transport goals Transport mechanisms 2 Context:

More information

Announcements. CS 5565 Network Architecture and Protocols. Project 2B. Project 2B. Project 2B: Under the hood. Routing Algorithms

Announcements. CS 5565 Network Architecture and Protocols. Project 2B. Project 2B. Project 2B: Under the hood. Routing Algorithms Announcements CS 5565 Network Architecture and Protocols Lecture 20 Godmar Back Project 2B due in 2 parts: Apr 29 and May 6 Extra Credit Opportunities: Expand simulator (and your implementation) to introduce

More information

Overview 4.2: Routing

Overview 4.2: Routing Overview 4.2: Routing Forwarding vs Routing forwarding: to select an output port based on destination address and routing table routing: process by which routing table is built Network as a Graph A 6 1

More information

Module objectives. Integrated services. Support for real-time applications. Real-time flows and the current Internet protocols

Module objectives. Integrated services. Support for real-time applications. Real-time flows and the current Internet protocols Integrated services Reading: S. Keshav, An Engineering Approach to Computer Networking, chapters 6, 9 and 4 Module objectives Learn and understand about: Support for real-time applications: network-layer

More information

Outline. Routing. Introduction to Wide Area Routing. Classification of Routing Algorithms. Introduction. Broadcasting and Multicasting

Outline. Routing. Introduction to Wide Area Routing. Classification of Routing Algorithms. Introduction. Broadcasting and Multicasting Outline Routing Fundamentals of Computer Networks Guevara Noubir Introduction Broadcasting and Multicasting Shortest Path Unicast Routing Link Weights and Stability F2003, CSG150 Fundamentals of Computer

More information

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP CS 5520/ECE 5590NA: Network Architecture I Spring 2008 Lecture 13: UDP and TCP Most recent lectures discussed mechanisms to make better use of the IP address space, Internet control messages, and layering

More information

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet Chapter 2 - Part 1 The TCP/IP Protocol: The Language of the Internet Protocols A protocol is a language or set of rules that two or more computers use to communicate 2 Protocol Analogy: Phone Call Parties

More information

Internet Protocol: Routing Algorithms. Srinidhi Varadarajan

Internet Protocol: Routing Algorithms. Srinidhi Varadarajan Internet Protocol: Routing Algorithms Srinidhi Varadarajan Routing Routing protocol Goal: determine good path (sequence of routers) thru network from source to dest. Graph abstraction for routing algorithms:

More information

CSCI-131 Networking: the End-to-End Layer. Rodrigo Fonseca March 12 th, 2013

CSCI-131 Networking: the End-to-End Layer. Rodrigo Fonseca March 12 th, 2013 CSCI-131 Networking: the End-to-End Layer Rodrigo Fonseca March 12 th, 2013 Today Transport layer Provides useful abstractions for applications Uses (the fairly minimal) services provided by the network

More information

CS118 Discussion 1A, Week 7. Zengwen Yuan Dodd Hall 78, Friday 10:00 11:50 a.m.

CS118 Discussion 1A, Week 7. Zengwen Yuan Dodd Hall 78, Friday 10:00 11:50 a.m. CS118 Discussion 1A, Week 7 Zengwen Yuan Dodd Hall 78, Friday 10:00 11:50 a.m. 1 Outline Network control plane Routing Link state routing (OSPF) Distance vector routing (RIP) BGP ICMP Midterm/Project 2

More information

Lecture on Computer Networks

Lecture on Computer Networks Lecture on Computer Networks Historical Development Copyright (c) 28 Dr. Thomas Haenselmann (Saarland University, Germany). Permission is granted to copy, distribute and/or modify this document under the

More information

Data Communication Networks Final

Data Communication Networks Final Data Communication Networks Final Saad Mneimneh Visiting Professor Hunter College of CUNY NAME: This final test is take home... There are 8 Problems (but each problem has multiple parts, possibly on separate

More information

Computer Networks. Course Reference Model. Topic. Congestion What s the hold up? Nature of Congestion. Nature of Congestion 1/5/2015.

Computer Networks. Course Reference Model. Topic. Congestion What s the hold up? Nature of Congestion. Nature of Congestion 1/5/2015. Course Reference Model Computer Networks 7 Application Provides functions needed by users Zhang, Xinyu Fall 204 4 Transport Provides end-to-end delivery 3 Network Sends packets over multiple links School

More information

Congestion control in TCP

Congestion control in TCP Congestion control in TCP If the transport entities on many machines send too many packets into the network too quickly, the network will become congested, with performance degraded as packets are delayed

More information

Routing. Routing. Overview. Overview. Routing vs. Forwarding. Why Routing

Routing. Routing. Overview. Overview. Routing vs. Forwarding. Why Routing Routing Dr. Arjan Durresi Department of Computer Science Louisiana State University Overview Routing vs. Forwarding Routing Algorithms, Distance Vector, Link State Dijkstra s Algorithm ARPAnet Routing

More information

CS 457 Networking and the Internet. Shortest-Path Problem. Dijkstra s Shortest-Path Algorithm 9/29/16. Fall 2016

CS 457 Networking and the Internet. Shortest-Path Problem. Dijkstra s Shortest-Path Algorithm 9/29/16. Fall 2016 9/9/6 S 7 Networking and the Internet Fall 06 Shortest-Path Problem Given: network topology with link costs c(x,y): link cost from node x to node y Infinity if x and y are not direct neighbors ompute:

More information

Routing Protocols of IGP. Koji OKAMURA Kyushu University, Japan

Routing Protocols of IGP. Koji OKAMURA Kyushu University, Japan Routing Protocols of IGP Koji OKAMURA Kyushu University, Japan Routing Protocol AS (Autonomous System) Is operated autonomous in the organization. 6bit IGP (Interior Gateway Protocol) Routing Control inside

More information

Reliable Transport II: TCP and Congestion Control

Reliable Transport II: TCP and Congestion Control Reliable Transport II: TCP and Congestion Control Brad Karp UCL Computer Science CS 3035/GZ01 31 st October 2013 Outline Slow Start AIMD Congestion control Throughput, loss, and RTT equation Connection

More information

UDP, TCP, IP multicast

UDP, TCP, IP multicast UDP, TCP, IP multicast Dan Williams In this lecture UDP (user datagram protocol) Unreliable, packet-based TCP (transmission control protocol) Reliable, connection oriented, stream-based IP multicast Process-to-Process

More information

RIP Version 2. The Classless Brother

RIP Version 2. The Classless Brother RIP Version 2 The Classless Brother (C) Herbert Haas 2005/03/11 1 Why RIPv2 Need for subnet information and VLSM Need for Next Hop addresses for each route entry Need for external route tags Need for multicast

More information

PRACTICE QUESTIONS ON RESOURCE ALLOCATION

PRACTICE QUESTIONS ON RESOURCE ALLOCATION PRACTICE QUESTIONS ON RESOURCE ALLOCATION QUESTION : Internet Versus Station Wagon A famous maxim, sometimes attributed to Dennis Ritchie, says Never underestimate the bandwidth of a station wagon full

More information

BLM6196 COMPUTER NETWORKS AND COMMUNICATION PROTOCOLS

BLM6196 COMPUTER NETWORKS AND COMMUNICATION PROTOCOLS BLM696 COMPUTER NETWORKS AND COMMUNICATION PROTOCOLS Prof. Dr. Hasan Hüseyin BALIK (7 th Week) 7. Routing 7.Outline Routing in Packet-Switching Networks Examples: Routing in ARPANET Internet Routing Protocols

More information

C13b: Routing Problem and Algorithms

C13b: Routing Problem and Algorithms CISC 7332X T6 C13b: Routing Problem and Algorithms Hui Chen Department of Computer & Information Science CUNY Brooklyn College 11/20/2018 CUNY Brooklyn College 1 Acknowledgements Some pictures used in

More information

Lecture 5 The Network Layer part II. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Lecture 5 The Network Layer part II. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it Lecture 5 The Network Layer part II Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it IP datagram format IP protocol version number header length (bytes) type of data max number remaining

More information

TCPIP Protocol Suite & Utilities. Revision no.: PPT/2K403/02

TCPIP Protocol Suite & Utilities. Revision no.: PPT/2K403/02 TCPIP Protocol Suite & Utilities Revision no.: PPT/2K403/02 Comparing the TCP/IP protocol Suite, the OSI Model, and the DoD Model Comparing the TCP/IP protocol Suite, the OSI Model, and the DoD Model (contd.)

More information

Chapter 5 RIP version 1

Chapter 5 RIP version 1 Cisco CCNA 2 Exploration - Routing Chapter 5 RIP version 1 João José jjose@ualg.pt http://w3.ualg.pt/~jjose/cisco/ Based on: Graziani, R. (2008) CIS 82 Routing Theory and Concepts RIPv1: A Distance Vector,

More information

TCP congestion control:

TCP congestion control: TCP congestion control: Probing for usable bandwidth: Ideally: transmit as fast as possible (cwnd as large as possible) without loss Increase cwnd until loss (congestion) Loss: decrease cwnd, then begin

More information

Lecture 19: Network Layer Routing in the Internet

Lecture 19: Network Layer Routing in the Internet Lecture 19: Network Layer Routing in the Internet COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition: 1996-2016, J.F

More information

6.033 Spring 2015 Lecture #11: Transport Layer Congestion Control Hari Balakrishnan Scribed by Qian Long

6.033 Spring 2015 Lecture #11: Transport Layer Congestion Control Hari Balakrishnan Scribed by Qian Long 6.033 Spring 2015 Lecture #11: Transport Layer Congestion Control Hari Balakrishnan Scribed by Qian Long Please read Chapter 19 of the 6.02 book for background, especially on acknowledgments (ACKs), timers,

More information

ADVANCED COMPUTER NETWORKS

ADVANCED COMPUTER NETWORKS ADVANCED COMPUTER NETWORKS Congestion Control and Avoidance 1 Lecture-6 Instructor : Mazhar Hussain CONGESTION CONTROL When one part of the subnet (e.g. one or more routers in an area) becomes overloaded,

More information

Computer Networks ICS 651. IP Routing RIP OSPF BGP MPLS Internet Control Message Protocol IP Path MTU Discovery

Computer Networks ICS 651. IP Routing RIP OSPF BGP MPLS Internet Control Message Protocol IP Path MTU Discovery Computer Networks ICS 651 IP Routing RIP OSPF BGP MPLS Internet Control Message Protocol IP Path MTU Discovery Routing Information Protocol DV modified with split horizon and poisoned reverse distance

More information

CSC458 Lecture 6. Administrivia. Inter-domain Routing IP Addressing. Midterm will Cover Following Topics (2) Midterm will Cover Following Topics

CSC458 Lecture 6. Administrivia. Inter-domain Routing IP Addressing. Midterm will Cover Following Topics (2) Midterm will Cover Following Topics CSC458 Lecture 6 Inter-domain Routing IP Addressing Administrivia Homework: #2 due today #3 out today, due in two weeks (same date as midterm) No lecture next week Reading Week Midterm in two weeks 60

More information

Basic Reliable Transport Protocols

Basic Reliable Transport Protocols Basic Reliable Transport Protocols Do not be alarmed by the length of this guide. There are a lot of pictures. You ve seen in lecture that most of the networks we re dealing with are best-effort : they

More information

ECE 435 Network Engineering Lecture 11

ECE 435 Network Engineering Lecture 11 ECE 435 Network Engineering Lecture 11 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 11 October 2018 Midterm on Tues Announcements 1 HW#4 Review maine.edu created? What is a

More information

ECE4110, Internetwork Programming, QUIZ 2 - PRACTICE Spring 2006

ECE4110, Internetwork Programming, QUIZ 2 - PRACTICE Spring 2006 Email Address ECE4110, Internetwork Programming, QUIZ 2 - PRACTICE Spring 2006 Name (Print) Prof. John A. Copeland Practice for April 11, 2006 Tel.: 404-894-5177 E-Mail: copeland@ece.gatech.edu RULES.

More information