Protocoles et Interconnexions

Size: px
Start display at page:

Download "Protocoles et Interconnexions"

Transcription

1 Protocoles et Interconneions Course Overview and Introduction Dario Vieira Department of Computer Science EFREI

2 Routing Protocol BGP TCP

3 Computer Networking Preliminaries Transport Laer Network Laer Introduction Terminolog UDP TCP Internet protocol Routing Link Laer Phsical Laer Ethernet Transmission media Other Topics Aplication Laer, advanced topics (e.g., wirelless, P2P, Multimedia, securit, and management

4 Chapter 3 Transport Laer Computer Networking: A Top Down Approach 5 th edition. Jim Kurose, Keith Ross Addison-Wesle, April Transport Laer 3-4

5 Chapter 3: Transport Laer Our Goals Learn about transport laer protocols in the Internet UDP: connectionless transport TCP: connection-oriented transport Application Transport Network Link Phsical Transport Laer 3-5

6 Transport services and protocols Transport protocols run in end sstems send side: breaks app messages into segments, passes to network laer application transport network data link phsical rcv side: reassembles segments into messages, passes to app laer More than one transport protocol available to apps Internet: TCP and UDP application transport network data link phsical Transport Laer 3-6

7 Transport vs. Network laer Network laer Logical communication between hosts application transport network data link phsical Transport laer Logical communication between processes Relies on, enhances, network laer services application transport network data link phsical Transport Laer 3-7

8 Internet Transport-laer Protocols Reliable, in-order deliver (TCP) congestion control flow control connection setup application transport network data link phsical network data link phsical network data link phsical Unreliable, unordered deliver (UDP) no-frills etension of best-effort IP Services not available dela guarantees bandwidth guarantees network data link phsical network data link phsical network data link phsical network data link phsical application transport network data link phsical Transport Laer 3-8

9 Chapter 3 outline 3.1 Transport-laer services 3.2 Connectionless Transport: UDP 3.3 Principles of reliable data transfer 3.4 Connection-oriented transport: TCP 3.5 Principles of congestion control 3.6 TCP congestion control Transport Laer 3-9

10 UDP: User Datagram Protocol [RFC 768] No frills, bare bones Internet transport protocol Best effort service, UDP segments ma be: lost delivered out of order to app Connectionless No handshaking between UDP sender, receiver Each UDP segment handled independentl of others Wh is there a UDP? No connection establishment (which can add dela) Simple: no connection state at sender, receiver Small segment header No congestion control: UDP can blast awa as fast as desired Transport Laer 3-10

11 UDP: more Often used for streaming multimedia apps loss tolerant rate sensitive Other UDP uses DNS SNMP Reliable transfer over UDP: add reliabilit at application laer application-specific error recover! Length, in btes of UDP segment, including header 32 bits source port # dest port # length Application data (message) checksum UDP segment format Transport Laer 3-11

12 Chapter 3 outline 3.1 Transport-laer services 3.2 Connectionless Transport: UDP 3.3 Principles of reliable data transfer 3.4 Connection-oriented transport: TCP 3.5 Principles of congestion control 3.6 TCP congestion control Transport Laer 3-12

13 Principles of Reliable Data Transfer Important in app., transport, link laers top-10 list of important networking topics! Transport Laer 3-13

14 Principles of Reliable Data Transfer Important in app., transport, link laers top-10 list of important networking topics! Characteristics of unreliable channel will determine compleit of reliable data transfer protocol Transport Laer 3-14

15 Principles of Reliable Data Transfer Important in app., transport, link laers top-10 list of important networking topics! Characteristics of unreliable channel will determine compleit of reliable data transfer protocol (rdt) Transport Laer 3-15

16 Reliable Data Transfer: Getting Started rdt_send(): called above, (e.g., b app.). Passed data to deliver to receiver upper laer deliver_data(): called b rdt to deliver data to upper send side receive side udt_send(): called b rdt, to transfer packet over unreliable channel to receiver rdt_rcv(): called when packet arrives on rcv-side of channel Transport Laer 3-16

17 Reliable Data Transfer: Getting Started Incrementall develop sender, receiver sides of Reliable Data Transfer protocol (rdt) Consider onl unidirectional data transfer but control info will flow on both directions! Use Finite State Machines (FSM) to specif sender, receiver state: when in this state net state uniquel determined b net event State 1 event causing state transition actions taken on state transition event actions State 2 Transport Laer 3-17

18 Rdt1.0: Reliable Transfer over a Reliable Channel Underling channel perfectl reliable no bit errors no loss of packets Separate FSMs for sender, receiver sender sends data into underling channel receiver read data underling channel Wait for call above rdt_send(data) packet =make_pkt(data) udt_send(packet) Wait for call below rdt_rcv(packet) Etract (packet,data) deliver_data(data) sender receiver Transport Laer 3-18

19 Rdt2.0: channel with bit errors Underling channel ma flip bits in packet checksum to detect bit errors The question: how to recover errors? acknowledgements (ACKs): receiver eplicitl tells sender that pkt received OK How do humans recover errors during conversation? negative acknowledgements (NAKs): receiver eplicitl tells sender that pkt had errors sender retransmits pkt on receipt of NAK new mechanisms in rdt2.0 (beond rdt1.0): error detection receiver feedback: control msgs (ACK,NAK) rcvr->sender Transport Laer 3-19

20 Rdt2.0: channel with bit errors Underling channel ma flip bits in packet checksum to detect bit errors The question: how to recover errors? acknowledgements (ACKs): receiver eplicitl tells sender that pkt received OK negative acknowledgements (NAKs): receiver eplicitl tells sender that pkt had errors sender retransmits pkt on receipt of NAK New mechanisms in rdt2.0 (beond rdt1.0): error detection receiver feedback: control msgs (ACK,NAK) rcvr->sender Transport Laer 3-20

21 rdt2.0: FSM specification Receiver sndpkt = make_pkt(data, checksum) udt_send(sndpkt) Wait for call above rdt_send(data) rdt_rcv(rcvpkt) && isack(rcvpkt) L Wait for ACK or NAK Sender rdt_rcv(rcvpkt) && isnak(rcvpkt) udt_send(sndpkt) rdt_rcv(rcvpkt) && corrupt(rcvpkt) udt_send(nak) Wait for call below rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) etract(rcvpkt,data) deliver_data(data) udt_send(ack) Transport Laer 3-21

22 TCP: Overview Point-to-point: one sender, one receiver Reliable, in-order bte steam: no message boundaries Pipelined: TCP congestion and flow control set window sie Send & receive buffers Full duple data: bi-directional data flow in same connection MSS: maimum segment sie Connection-oriented: handshaking (echange of control msgs) inits sender, receiver state before data echange Flow controlled: sender will not overwhelm receiver socket door application writes data TCP send buffer application reads data TCP receive buffer socket door 3-22 segment

23 TCP segment structure URG: urgent data (generall not used) ACK: ACK # valid PSH: push data now (generall not used) RST, SYN, FIN: connection estab (setup, teardown commands) Internet checksum (as in UDP) 32 bits source port # dest port # head len sequence number acknowledgement number not used checksum U A P R S F application data (variable length) Receive window Urg data pnter Options (variable length) counting b btes of data (not segments!) # btes rcvr willing to accept Transport Laer 3-23

24 TCP seq. # s and ACKs Seq. # s: ACKs: bte stream number of first bte in segment s data seq # of net bte epected other side cumulative ACK User tpes C Host A Host B host ACKs receipt of C, echoes back C Q: how receiver handles out-oforder segments A: TCP spec doesn t sa, - up to implementor host ACKs receipt of echoed C time simple telnet scenario Transport Laer 3-24

25 Seq=92 timeout timeout Seq=92 timeout TCP: Retransmission Scenarios Host A Host B Host A Host B X loss SendBase = 100 SendBase = 120 SendBase = 100 time lost ACK scenario SendBase = 120 premature timeout time Transport Laer 3-25

26 timeout TCP Retransmission Scenarios (more) Host A Host B X loss SendBase = 120 time Cumulative ACK scenario Transport Laer 3-26

27 TCP Congestion Control (a) A fast network feeding a low capacit receiver. (b) A slow network feeding a high-capacit receiver.

28 TCP Connection Management Recall: TCP sender, receiver establish connection before echanging data segments initialie TCP variables: Initial seq. #s Buffers, flow control info (e.g. RcvWindow) client: connection initiator Socket clientsocket = new Socket("hostname","port number"); server: contacted b client Socket connectionsocket = welcomesocket.accept(); Three wa handshake: Step 1: client host sends TCP SYN segment to server specifies initial seq # no data Step 2: server host receives SYN, replies with SYNACK segment server allocates buffers specifies server initial seq. # Step 3: client receives SYNACK, replies with ACK segment, which ma contain data Transport Laer 3-28

29 timed wait TCP Connection Management (cont.) Closing a connection: client closes socket: clientsocket.close(); close client server Step 1: client end sstem sends TCP FIN control segment to server close Step 2: server receives FIN, replies with ACK. closed Transport Laer 3-29

30 timed wait TCP Connection Management (cont.) Step 3: client receives FIN, replies with ACK. Enters timed wait - will respond with ACK to received FINs closing client server closing Step 4: server, receives ACK. Connection closed. Step 5: after timeout, client s connection closed closed closed Transport Laer 3-30

31 TCP Connection Management (cont) TCP client lifeccle TCP server lifeccle 3-31

32 TCP Finite State Machine Step 2 of the 3-wa handshake Step 1 of the 3-wa handshake TCP connection management Finite State Machine: 3-Wa Handshake The heav solid line is the normal path for a client. The heav dashed line is the normal path for a server. Step 3 of the 3-wa handshake

33 Chapter 4 Network Laer Computer Networking: A Top Down Approach 5 th edition. Jim Kurose, Keith Ross Addison-Wesle, April Network Laer 4-33

34 Network Laer Goals Understand principles behind network laer services Network laer service models Forwarding versus routing How a router works Routing (path selection) Broadcast, multicast Instantiation, implementation in the Internet Network Laer 4-34

35 Chapter 4: Network Laer 4. 1 Introduction 4.2 What s inside a router 4.4 IP: Internet Protocol 4.5 Routing algorithms Link state Distance Vector 4.6 Routing in the Internet RIP OSPF BGP Network Laer 4-35

36 Network laer Transport segment sending to receiving host On sending side encapsulates segments into datagrams On rcving side, delivers segments to transport laer Network laer protocols in ever host, router Router eamines header fields in all IP datagrams passing through it application transport network data link phsical network data link phsical network data link phsical network data link phsical network data link phsical network data link phsical network data link phsical network data link phsical network data link phsical network data link phsical network data link phsical network data link phsical application transport network data link phsical Network Laer 4-36

37 Two Ke Network-Laer Functions Forwarding move packets router s input to appropriate router output Routing determine route taken b packets source to dest. routing algorithms Analog: Routing process of planning trip source to destination Forwarding process of getting through single interchange Network Laer 4-37

38 Routing vs. Forwarding Default to upstream router A D R R1 R4 R R2 B R5 E R3 R Net Forwarding: determine net hop A B C D E default C Routing: establish end-to-end paths Nt Hop Net R1 Direct R3 R1 R3 R1 A B C D E default Nt Hop R4 R3 R3 R4 Direct R4 Forwarding alwas works Routing can be badl broken Net A B C D E default Nt Hop R2 R2 Direct R5 R5 R2 38 Thanks to T. Griffin

39 How Are Forwarding Tables Populated to I Implement Routing? Staticall Administrator manuall configures forwarding table entries + More control + Not restricted to destination-based forwarding - Doesn t scale - Slow to adapt to network failures Dnamicall Routers echange network reachabilit information using ROUTING PROTOCOLS. Routers use this to compute best routes + Can rapidl adapt to changes in network topolog + Can be made to scale well - Comple distributed algorithms - Consume CPU, Bandwidth, Memor - Debugging can be difficult - Current protocols are destination-based In practice : a mi of these. Static routing mostl at the edge Thanks to T. Griffin 39

40 Network reachabilit Routing info Routing info 4-40

41 Interpla between routing and forwarding routing algorithm local forwarding table header value output link value in arriving packet s header Network Laer 4-41

42 Chapter 4: Network Laer 4. 1 Introduction 4.2 What s inside a router 4.4 IP: Internet Protocol 4.5 Routing algorithms Link state Distance Vector 4.6 Routing in the Internet RIP OSPF BGP Network Laer 4-42

43 Datagram Networks No call setup at network laer Routers: no state about end-to-end connections no network-level concept of connection Packets forwarded using destination host address packets between same source-dest pair ma take different paths application transport network data link phsical 1. Send data 2. Receive data application transport network data link phsical Network Laer 4-43

44 Datagram Forwarding Table routing algorithm local forwarding table dest address output link address-range 1 address-range 2 address-range 3 address-range billion IP addresses, so rather than list individual destination address list range of addresses (aggregate table entries) IP destination address in arriving packet s header Network Laer 4-44

45 Longest prefi matching Longest prefi matching when looking for forwarding table entr for given destination address, use longest address prefi that matches destination address. Destination Address Range *** ********* ********* *** ********* otherwise Link interface Eamples: DA: Which interface? DA: Which interface? Network Laer 4-45

46 Chapter 4: Network Laer 4. 1 Introduction 4.2 What s inside a router 4.4 IP: Internet Protocol 4.5 Routing algorithms Link state Distance Vector 4.6 Routing in the Internet RIP OSPF BGP Network Laer 4-46

47 Router Architecture Overview Two ke router functions: run routing algorithms/protocol (RIP, OSPF, BGP) forwarding datagrams incoming to outgoing link switching fabric router input ports routing processor router output ports Network Laer 4-47

48 The Internet Network Laer Host, router network laer functions: Transport laer: TCP, UDP Network laer Routing protocols path selection RIP, OSPF, BGP forwarding table IP protocol addressing conventions datagram format packet handling conventions ICMP protocol error reporting router signaling Link laer phsical laer Network Laer 4-48

49 Chapter 4: Network Laer 4. 1 Introduction 4.2 Virtual circuit and datagram networks 4.3 What s inside a router 4.4 IP: Internet Protocol Datagram format IPv4 addressing ICMP IPv6 4.5 Routing algorithms Link state Distance Vector Hierarchical routing 4.6 Routing in the Internet RIP OSPF BGP 4.7 Broadcast and multicast routing Network Laer 4-49

50 Chapter 4: Network Laer 4. 1 Introduction 4.2 What s inside a router 4.4 IP: Internet Protocol 4.5 Routing algorithms Link state Distance Vector 4.6 Routing in the Internet RIP OSPF BGP Network Laer 4-52

51 Graph abstraction 5 Graph: G = (N,E) u 1 2 v w N = set of routers = { u, v, w,,, } E = set of links ={ (u,v), (u,), (v,), (v,w), (,w), (,), (w,), (w,), (,) } Remark: Graph abstraction is useful in other network contets Eample: P2P, where N is set of peers and E is set of TCP connections Network Laer 4-53

52 Graph Abstraction: Costs c(, ) = cost of link (, ) 5 - e.g., c(w,) = 5 u 1 2 v w Cost could alwas be 1, or inversel related to bandwidth, or inversel related to congestion Cost of path ( 1, 2, 3,, p ) = c( 1, 2 ) + c( 2, 3 ) + + c( p-1, p ) Question: What s the least-cost path between u and? Routing algorithm: algorithm that finds least-cost path Network Laer 4-54

53 Routing Algorithm Classification Global or decentralied information? Global: All routers have complete topolog, link cost info Link state algorithms Decentralied: Router knows phsicallconnected neighbors, link costs to neighbors Iterative process of computation, echange of info with neighbors Static or dnamic? Static: routes change slowl over time Dnamic: routes change more quickl periodic update in response to link cost changes Distance vector algorithms Network Laer 4-55

54 Routing Algorithm Classification Link State Topolog information is flooded within the routing domain Best end-to-end paths are computed locall at each router Best end-to-end paths determine net-hops Based on minimiing some notion of distance Works onl if polic is shared and uniform Eamples: OSPF, IS-IS Vectoring Each router knows little about network topolog Onl best net-hops are chosen b each router for each destination network Best end-to-end paths result composition of all net-hop choices Does not require an notion of distance Does not require uniform policies at all routers Eamples: RIP, BGP

55 The Gang of Four IGP Link State OSPF IS-IS Vectoring RIP EGP BGP ICNP 2002

56 Routers Talking to Routers Routing info Routing info Routing computation is distributed among routers within a routing domain Computation of best net hop based on routing information is the most CPU/memor intensive task on a router 4-58

57 Architecture of Dnamic Routing AS 1 OSPF BGP IGP = Interior Gatewa Protocol Metric based: OSPF, IS-IS, RIP, EIGRP (cisco) EGP = Eterior Gatewa Protocol Polic based: BGP AS 2 EIGRP 4-59

58 Chapter 4: Network Laer 4. 1 Introduction 4.2 What s inside a router 4.4 IP: Internet Protocol 4.5 Routing algorithms Link state Distance Vector 4.6 Routing in the Internet RIP OSPF BGP Network Laer 4-60

59 A Link-State Routing Algorithm Dijkstra s Algorithm Net topolog, link costs known to all nodes accomplished via link state broadcast all nodes have same info Computes least cost paths one node ( source ) to all other nodes gives forwarding table for that node Iterative: after k iterations, know least cost path to k dest. s Notation c(,): link cost node to = if not direct neighbors D(v): current value of cost of path source to dest. v p(v): predecessor node along path source to v N': set of nodes whose least cost path definitivel known Network Laer 4-61

60 Dijkstra s Algorithm: Eample 5 u 1 2 v w v, w and are u s neighbors Step 0 N' u D(v),p(v) 2,u D(w),p(w) 5,u D(),p() 1,u D(),p() D(),p() Step 0: Add D(v) for all v on the graph Network Laer 4-62

61 Dijkstra s Algorithm: Eample 5 u 1 2 v w Step 0 1 N' u u D(v),p(v) 2,u 2,u D(w),p(w) 5,u 4, D(),p() 1,u D(),p() 2, D(),p() Step 1: a. Find node not in N such that D() is a minimum b. Add in set N c. Update D(v) for all v adjacent to and not in N using D(v) = min(d(v), D() + c(,v)) //update costs to reach s neighbors Network Laer 4-63

62 Dijkstra s Algorithm: Eample 5 u 1 2 v w Step N' u u u D(v),p(v) 2,u 2,u 2,u D(w),p(w) 5,u 4, 3, D(),p() 1,u D(),p() 2, D(),p() 4, Step 2: Find node not in N such that D() is a minimum; add in N Update costs to reach s neighbors v that are not in N using D(v) = min(d(v), D() + c(,v) ) Network Laer 4-64

63 Dijkstra s algorithm: Eample (2) Resulting shortest-path tree u: u v w Resulting forwarding table in u: destination link v w (u,v) (u,) (u,) (u,) (u,) Network Laer 4-66

64 Dijsktra s Algorithm 1 Initialiation: 2 N' = {u} 3 for all nodes v 4 if v adjacent to u 5 then D(v) = c(u,v) 6 else D(v) = 7 8 Loop 9 find w not in N' such that D(w) is a minimum 10 add w to N' 11 update D(v) for all v adjacent to w and not in N' : 12 D(v) = min( D(v), D(w) + c(w,v) ) 13 /* new v is either old v or known 14 shortest path w plus cost w to v */ 15 until all nodes in N' Network Laer 4-67

65 Dijkstra s algorithm: eample D(v) D(w) D() D() D() Step N' p(v) p(w) p() p() p() 0 u 7,u 3,u 5,u 1 uw 6,w 5,u 11,w 2 uw 6,w 11,w 14, 3 uwv 10,v 14, 4 5 uwv uwv 12, 9 Notes: Construct shortest path tree b tracing predecessor nodes Ties can eist (can be broken arbitraril) u 5 3 w v Network Laer 4-68

66 Dijkstra s Algorithm: Discussion Algorithm compleit: n nodes Each iteration: need to check all nodes, w, not in N n(n+1)/2 comparisons: O(n 2 ) More efficient implementations possible: O(nlogn) Oscillations possible: e.g., link cost = amount of carried traffic 1 1 A 1+e D 0 0 B 0 e C 1 e initiall A 2+e 0 D B 0 1+e 1 0 C recompute routing A 0 2+e D 0 0 B 1 C 1+e recompute A 2+e 0 D B 0 1+e 1 e C recompute D A, B A, C A Network Laer 4-69

67 Chapter 4: Network Laer 4. 1 Introduction 4.2 What s inside a router 4.4 IP: Internet Protocol 4.5 Routing algorithms Link state Distance Vector 4.6 Routing in the Internet RIP OSPF BGP Network Laer 4-70

68 Distance Vector Algorithm Bellman-Ford Equation (dnamic programming) Define d () := cost of least-cost path to Then d () = min {c(,v) + d v () } v where min is taken over all neighbors v of Network Laer 4-71

69 Bellman-Ford eample 5 Clearl, d v () = 5, d () = 3, d w () = 3 u 1 2 v w B-F equation sas: d u () = min { c(u,v) + d v (), c(u,) + d (), c(u,w) + d w () } = min {2 + 5, 1 + 3, 5 + 3} = 4 Node that achieves minimum is net hop in shortest path forwarding table Network Laer 4-72

70 Distance Vector Algorithm D () = estimate of least cost to maintains distance vector D = [D (): є N ] Input to node : Node knows each neighbor v: c(,v) maintains its neighbors distance vectors. For each neighbor v, maintains D v = [D v (): є N ] Network Laer 4-73

71 Distance vector algorithm (4) Basic idea From time-to-time, each node sends its own Distance Vector (DV) estimate to neighbors When receives new DV estimate neighbor, it updates its own DV using B-F equation: D () min v {c(,v) + D v ()} for each node N Under minor, natural conditions, the estimate D () converge to the actual least cost d () Network Laer 4-74

72 Distance Vector Algorithm (5) Iterative, asnchronous each local iteration caused b local link cost change DV update message neighbor Each node wait for (change in local link cost or msg neighbor) Distributed: each node notifies neighbors onl when its DV changes neighbors then notif their neighbors if necessar recompute estimates if DV to an dest has changed, notif neighbors Network Laer 4-75

73 node table node table node table time

74 node table node table node table Each node sends its own DV to its neighbors time 2 7 1

75 node table node table node table D () = min{c(,) + D (), c(,) + D ()} = min{2+0, 7+1} = the net-hop router to reach is time 2 7 1

76 node table node table node table D () = min{c(,) + D (), c(,) + D ()} = min{2+1, 7+0} = the net-hop router to reach is time 2 7 1

77 D () = min{c(,) + D (), c(,) + D ()} = min{2+0, 7+1} = 2 node table node table node table time D () = min{c(,) + Network Laer D (), c(,) + D ()} = min{2+1, 7+0} = 3 1

78 node table node table node table time 4-81

79 node table node table node table

80 node table node table node table time

81 D () = min{c(,) + D (), c(,) + D ()} = min{2+0, 7+1} = 2 node table node table node table D () = min{c(,) + D (), c(,) + D ()} = min{2+1, 7+0} = time

82 Distance Vector: Link cost changes Link cost changes: node detects local link cost change updates routing info, recalculates distance vector if DV changes, notif neighbors good news travels fast t 0 : detects link-cost change, updates its DV, informs its neighbors. t 1 : receives update, updates its table, computes new least, sends its neighbors its DV. t 2 : receives s update, updates its distance table. s least costs do not change, so does not send a message to. Network Laer 4-85

83 Distance Vector Algorithm Input to : Node knows each neighbor v: c(,v) Decentralied algorithm since it onl needs local knowledge Distance vectors: Node maintains distance ( ) vector D = [D (): є N ] Node also maintains its neighbors distance vectors: D v = [D v (): є N ], for each neighbor v of Iterative, asnchronous: From time-to-time, each node sends its own DV estimate D to neighbors When a node receives new DV estimate neighbor, it updates its own DV using Bellman-Ford equation: D () min v {c(,v) + D v ()} where v are neighbors of, (for each node N) Output: least-cost paths to all other nodes Network Laer 4-86

84 Distance Vector: link cost changes Link cost changes: Good news travels fast Bad news travels slow - count to infinit problem! 44 iterations before algorithm stabilies Bef: D v () =4, D v () =1, D (v) =1, D () =4+1 =5 Aft: D v () = min{60, c(v,)+ D ()} = 6 Net: D () = = c(,v)+d v () =1+6=7 Then: D v () = c(v,)+d () = 1+7=8 Poisoned reverse: If routes through to get to : tells v: D () = (so v won t route to via ) D v () = 60 D () = 50 D v () = v 50 1 Will this completel solve count to infinit problem? 4-87

85 Comparison of LS and DV algorithms Message compleit LS: with n nodes, E links, O(nE) msgs sent DV: echange between neighbors onl convergence time varies Speed of Convergence LS: O(n 2 ) algorithm requires O(nE) msgs ma have oscillations DV: convergence time varies ma be routing loops count-to-infinit problem Robustness: what happens if router malfunctions? LS: DV: node can advertise incorrect link cost each node computes onl its own table DV node can advertise incorrect path cost each node s table used b others error propagate thru network 4-88

86 Routing Algorithm Classification Link State Topolog information is flooded within the routing domain Best end-to-end paths are computed locall at each router Best end-to-end paths determine net-hops Based on minimiing some notion of distance Works onl if polic is shared and uniform Eamples: OSPF, IS-IS Vectoring Each router knows little about network topolog Onl best net-hops are chosen b each router for each destination network Best end-to-end paths result composition of all net-hop choices Does not require an notion of distance Does not require uniform policies at all routers Eamples: RIP, BGP

87 The Gang of Four IGP Link State OSPF IS-IS Vectoring RIP EGP BGP ICNP 2002

88 Protocoles et Interconneions Course Overview and Introduction Dario Vieira Department of Computer Science EFREI

Chapter 4: Network Layer

Chapter 4: Network Layer Chapter 4: Network Laer 4. Introduction 4. Virtual circuit and datagram networks 4. What s inside a router 4.4 IP: Internet Protocol Datagram format IPv4 addressing ICMP IPv6 4. Routing algorithms Link

More information

Interplay between routing, forwarding

Interplay between routing, forwarding Chapter 4: outline 4. introduction 4. virtual circuit and datagram networks 4. what s inside a router 4.4 IP: Internet Protocol datagram format IPv4 addressing ICMP IPv6 4.5 routing algorithms link state

More information

Network Layer: Routing

Network Layer: Routing Network Laer: Routing Instructor: Anirban Mahanti Office: ICT 74 Email: mahanti@cpsc.ucalgar.ca Class Location: ICT Lectures: MWF :00 :0 hours Notes derived Computer Networking: A Top Down Approach Featuring

More information

Chapter 4: outline. 4.5 routing algorithms link state distance vector hierarchical routing. 4.6 routing in the Internet RIP OSPF BGP

Chapter 4: outline. 4.5 routing algorithms link state distance vector hierarchical routing. 4.6 routing in the Internet RIP OSPF BGP Chapter 4: outline 4. introduction 4. irtual circuit and datagram networks 4. what s inside a router 4.4 IP: Internet Protocol datagram format IP4 addressing ICMP IP6 4.5 routing algorithms link state

More information

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 14

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 14 CMPE 150/L : Introduction to Computer Networks Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 14 1 Two notes on routing algorithm Do not believe ou can understand an routing protocol, e.g.,

More information

Chapter IV: Network Layer

Chapter IV: Network Layer Chapter IV: Network Laer UG3 Computer Communications & Networks (COMN) Mungjin Lee mungjin.lee@ed.ac.uk Slides copright of Kurose and Ross IP addresses: how to get one? Q: How does a host get IP address?

More information

Computer Networks. Instructor: Niklas Carlsson

Computer Networks. Instructor: Niklas Carlsson Computer Networks Instructor: Niklas Carlsson Email: niklas.carlsson@liu.se Notes derived Computer Networking: A Top Down Approach, b Jim Kurose and Keith Ross, Addison-Wesle. The slides are adapted and

More information

Protocoles et Interconnexions

Protocoles et Interconnexions Protocoles et Interconnexions Course Overview and Introduction Dario Vieira Department of Computer Science EFREI Computer Networking Preliminaries Transport Layer Network Layer Introduction Terminology

More information

CS 3516: Advanced Computer Networks

CS 3516: Advanced Computer Networks Welcome to CS 56: Adanced Computer Networks Prof. Yanhua Li Time: 9:00am 9:50am M, T, R, and F Location: Fuller 0 Fall 06 A-term Some slides are originall from the course materials of the tetbook Computer

More information

Network Layer: Control Plane 5-2

Network Layer: Control Plane 5-2 Network Laer: Control Plane EECS34 8-03-05 4- Chapter 5: network laer control plane chapter goals: understand principles behind network control plane traditional routing algorithms SDN controlllers Internet

More information

CS 3516: Advanced Computer Networks

CS 3516: Advanced Computer Networks Welcome to CS 56: Adanced Computer Networks Prof. Yanhua Li Time: 9:00am 9:50am M, T, R, and F Location: Fuller 0 Fall 07 A-term Some slides are originall the course materials of the tetbook Computer Networking:

More information

Agenda. distance-vector (what you invented last Friday) hierarchical routing routing in the Internet. v DNS assignment Q&A v Routing Algorithms

Agenda. distance-vector (what you invented last Friday) hierarchical routing routing in the Internet. v DNS assignment Q&A v Routing Algorithms Agenda v DNS assignment Q&A v Routing Algorithms distance-vector (what ou invented last Frida) hierarchical routing routing in the Internet Network Laer 4- Chapter 4 Network Laer A note on the use of these

More information

Routing Algorithm Classification. A Link-State Routing Algorithm

Routing Algorithm Classification. A Link-State Routing Algorithm Routing Algorithm lassification Global or decentralied information? Global: All routers have complete topolog, link cost info Link state algorithms Decentralied: Router knows phsicallconnected neighbors,

More information

Announcement. Homework 1 due last night, how is that? Will discuss some problems in the lecture next week

Announcement. Homework 1 due last night, how is that? Will discuss some problems in the lecture next week Announcement Homework 1 due last night, how is that? Will discuss some problems in the lecture next week Should have completed at least part II of project 1 Homework 2 will be out next week Review of Previous

More information

Chapter 4: Network Layer: Part II

Chapter 4: Network Layer: Part II 4: Network Laer Chapter 4: Network Laer: Part II (last revision 9/04/05. v3) 4. Introduction 4. Virtual circuit and datagram networks 4.3 What s inside a router 4.4 IP: Internet Protocol Datagram format

More information

Chapter III: Transport Layer

Chapter III: Transport Layer Chapter III: Transport Layer UG3 Computer Communications & Networks (COMN) Mahesh Marina mahesh@ed.ac.uk Slides thanks to Myungjin Lee and copyright of Kurose and Ross Transport services and protocols

More information

Computer Networking. Rou1ng Algorithms. Rou1ng Algorithms. Interplay between rou1ng, forwarding. routing algorithm

Computer Networking. Rou1ng Algorithms. Rou1ng Algorithms. Interplay between rou1ng, forwarding. routing algorithm Computer Networking Interpla between roung, forwarding routing algorithm local forwarding table header alue output link 000 00 0 00 alue in arriing packet s header 0 Graph abstracon Graph: G = (N,E) u

More information

CSC358 Week 4. Adapted from slides by J.F. Kurose and K. W. Ross. All material copyright J.F Kurose and K.W. Ross, All Rights Reserved

CSC358 Week 4. Adapted from slides by J.F. Kurose and K. W. Ross. All material copyright J.F Kurose and K.W. Ross, All Rights Reserved CSC358 Week 4 Adapted from slides by J.F. Kurose and K. W. Ross. All material copyright 1996-2016 J.F Kurose and K.W. Ross, All Rights Reserved Logistics Assignment 1 due this Friday Office hour on Feb

More information

Suprakash Datta. Office: CSEB 3043 Phone: ext Course page:

Suprakash Datta. Office: CSEB 3043 Phone: ext Course page: CSE 3214: Computer Networks Protocols and Applications Suprakash Datta datta@cse.yorku.ca Office: CSEB 3043 Phone: 416-736-2100 ext 77875 Course page: http://www.cse.yorku.ca/course/3214 These slides are

More information

Initial motivation: 32-bit address space soon to be completely allocated. Additional motivation:

Initial motivation: 32-bit address space soon to be completely allocated. Additional motivation: IPv6 Initial motivation: 3-bit address space soon to be completel allocated. Additional motivation: Header format helps speed processing/forwarding Header changes to facilitate QoS (service classes) Reduction

More information

11/13/2017 Network Layer (SSL) Network-layer functions. Recall the two network-layer functions:

11/13/2017 Network Layer (SSL) Network-layer functions. Recall the two network-layer functions: Chapter 5: outline 5. introduction 5.2 routing protocols link state distance vector 5.3 intra-as routing in the Internet 5.4 inter-as routing: BGP 5.5 The SDN control 5.6 ICMP: The Internet Control Message

More information

Transport layer. UDP: User Datagram Protocol [RFC 768] Review principles: Instantiation in the Internet UDP TCP

Transport layer. UDP: User Datagram Protocol [RFC 768] Review principles: Instantiation in the Internet UDP TCP Transport layer Review principles: Reliable data transfer Flow control Congestion control Instantiation in the Internet UDP TCP 1 UDP: User Datagram Protocol [RFC 768] No frills, bare bones Internet transport

More information

Transport layer. Review principles: Instantiation in the Internet UDP TCP. Reliable data transfer Flow control Congestion control

Transport layer. Review principles: Instantiation in the Internet UDP TCP. Reliable data transfer Flow control Congestion control Transport layer Review principles: Reliable data transfer Flow control Congestion control Instantiation in the Internet UDP TCP 1 UDP: User Datagram Protocol [RFC 768] No frills, bare bones Internet transport

More information

COSC4377. Useful Linux Tool: screen

COSC4377. Useful Linux Tool: screen Lecture 10 Useful Linux Tool: screen Alternative to having multiple ssh/putty screens, you can have multiple virtual screens within the same session. To open a screen session: ~$ screen To suspend the

More information

Chapter 4 Network Layer

Chapter 4 Network Layer Chapter 4 Network Laer A note on the use of these ppt slides: The notes used in this course are substantiall based on powerpoint slides developed and coprighted b J.F. Kurose and K.W. Ross, 1996-2007 Computer

More information

Internet transport-layer protocols. Transport services and protocols. Sending and receiving. Connection-oriented (TCP) Connection-oriented

Internet transport-layer protocols. Transport services and protocols. Sending and receiving. Connection-oriented (TCP) Connection-oriented Transport services and protocols Internet -layer protocols logical communication between processes protocols run in end systems send side: breaks app messages into segments, passes to layer rcv side: reassembles

More information

Computer Networks & Security 2016/2017

Computer Networks & Security 2016/2017 Computer Networks & Security 2016/2017 Transport Layer (04) Dr. Tanir Ozcelebi Courtesy: Kurose & Ross Courtesy: Forouzan TU/e Computer Science Security and Embedded Networked Systems Transport Layer Our

More information

Graph abstraction: costs. Graph abstraction 10/26/2018. Interplay between routing and forwarding

Graph abstraction: costs. Graph abstraction 10/26/2018. Interplay between routing and forwarding 0/6/08 Interpla between routing and forwarding Routing Algorithms Link State Distance Vector BGP routing routing algorithm local forwarding table header value output link 000 00 0 00 value in arriving

More information

Lecture 5. Transport Layer. Transport Layer 1-1

Lecture 5. Transport Layer. Transport Layer 1-1 Lecture 5 Transport Layer Transport Layer 1-1 Agenda The Transport Layer (TL) Introduction to TL Protocols and Services Connectionless and Connection-oriented Processes in TL Unreliable Data Transfer User

More information

Intra-AS Routing. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley.

Intra-AS Routing. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley. Intra-AS Routing Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesle http://xkcd.com/85/ Some materials copright 1996-2012 J.F Kurose and K.W. Ross, All Rights Reserved

More information

Chapter 4 Network Layer. Network Layer 4-1

Chapter 4 Network Layer. Network Layer 4-1 Chapter 4 Network Layer Network Layer 4- Chapter 4: Network Layer 4. Introduction 4. Virtual circuit and datagram networks 4. What s inside a router 4.4 IP: Internet Protocol Datagram format IPv4 addressing

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer Lec 9: Reliable Data Transfer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 All material copyright 1996-2012 J.F Kurose

More information

CSE 4213: Computer Networks II

CSE 4213: Computer Networks II Next CSE 4213: Computer Networks II The layer Suprakash Datta datta@cs.yorku.ca Office: CSEB 3043 Phone: 416-736-2100 ext 77875 Course page: http://www.cs.yorku.ca/course/4213 These slides are adapted

More information

Chapter 3: Transport Layer. Chapter 3 Transport Layer. Chapter 3 outline. Transport services and protocols

Chapter 3: Transport Layer. Chapter 3 Transport Layer. Chapter 3 outline. Transport services and protocols Chapter 3 Transport Layer A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you can add, modify, and delete

More information

CC451 Computer Networks

CC451 Computer Networks CC451 Computer Networks Lecture 5 Transport Layer Transport Layer 3-1 Chapter 3 Transport Layer A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students,

More information

Distributed Systems. 5. Transport Protocols. Werner Nutt

Distributed Systems. 5. Transport Protocols. Werner Nutt Distributed Systems 5. Transport Protocols Werner Nutt 1 5. Transport Protocols 5.1 Transport-layer Services 5.1 Transport-layer Services 5.2 Multiplexing and Demultiplexing 5.3 Connectionless Transport:

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 6 Network Architecture and Protocols Lecture 8 Godmar Back Project A due Apr 8 (toda) Project B due in parts: Apr 9 and Ma 6 See link to NY Times article on RFC Project B Project B Highlevel

More information

CS 3516: Computer Networks

CS 3516: Computer Networks Welcome to CS 3516: Computer Networks Prof. Yanhua Li Time: 9:00am 9:50am M, T, R, and F Location: AK 219 Fall 2018 A-term 1 Some slides are originally from the course materials of the textbook Computer

More information

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 7

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 7 CMPE 150/L : Introduction to Computer Networks Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 7 1 Lab2 and Homework questions Available on course website 2 Chapter 3 outline 3.1 transport-layer

More information

Transport layer. Our goals: Understand principles behind transport layer services: Learn about transport layer protocols in the Internet:

Transport layer. Our goals: Understand principles behind transport layer services: Learn about transport layer protocols in the Internet: Transport layer Our goals: Understand principles behind transport layer services: Multiplexing/demultiplexing Reliable data transfer Flow control Congestion control Learn about transport layer protocols

More information

Distributed Systems. 5. Transport Protocols

Distributed Systems. 5. Transport Protocols Distributed Systems 5. Transport Protocols Werner Nutt 1 5. Transport Protocols 5.1 Transport-layer Services 5.1 Transport-layer Services 5.2 Multiplexing and Demultiplexing 5.3 Connectionless Transport:

More information

Last time. Mobility in Cellular networks. Transport Layer. HLR, VLR, MSC Handoff. Introduction Multiplexing / demultiplexing UDP 14-1

Last time. Mobility in Cellular networks. Transport Layer. HLR, VLR, MSC Handoff. Introduction Multiplexing / demultiplexing UDP 14-1 Last time Mobility in Cellular networks HLR, VLR, MSC Handoff Transport Layer Introduction Multiplexing / demultiplexing UDP 14-1 This time Reliable Data Transfer Midterm review 14-2 Chapter 3 outline

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you see the animations;

More information

Network layer. Network Layer 4-1. application transport network data link physical. network data link physical. network data link physical

Network layer. Network Layer 4-1. application transport network data link physical. network data link physical. network data link physical Network layer transport segment from sending to receiving host on sending side encapsulates segments into datagrams on receiving side, delivers segments to transport layer network layer protocols in every

More information

CSCD 330 Network Programming

CSCD 330 Network Programming CSCD 330 Network Programming Lecture 9 Transport Layer Spring 2018 Reading: Begin Chapter 3 Some Material in these slides from J.F Kurose and K.W. Ross All material copyright 1996-2007 1 Outline Overview

More information

CSC 401 Data and Computer Communications Networks

CSC 401 Data and Computer Communications Networks CSC 40 Data and Computer Communications Networks Network Layer NAT, Routing, Link State, Distance Vector Prof. Lina Battestilli Fall 07 Chapter 4 Outline Network Layer: Data Plane 4. Overview of Network

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer Reti degli Elaboratori Canale AL e MZ Prof.ssa Chiara Petrioli a.a. 2016/2017 We thank for the support material Prof. Kurose-Ross All material copyright 1996-2012 J.F Kurose and

More information

Chapter 5: Network Layer Control Plane. understand principles behind network control plane : traditional routing algorithms

Chapter 5: Network Layer Control Plane. understand principles behind network control plane : traditional routing algorithms Introduction to Computer Networking Gu Leduc Chapter 5 Network Laer: The Control Plane Computer Networking: A Top Down Approach, 7 th edition. Jim Kurose, Keith Ross Addison-Wesle, April 06. From Computer

More information

Lecture 08: The Transport Layer (Part 2) The Transport Layer Protocol (TCP) Dr. Anis Koubaa

Lecture 08: The Transport Layer (Part 2) The Transport Layer Protocol (TCP) Dr. Anis Koubaa NET 331 Computer Networks Lecture 08: The Transport Layer (Part 2) The Transport Layer Protocol (TCP) Dr. Anis Koubaa Reformatted slides from textbook Computer Networking a top-down appraoch, Fifth Edition

More information

TDTS06: Computer Networks

TDTS06: Computer Networks TDTS06: Computer Networks Instructor: Niklas Carlsson Email: niklas.carlsson@liu.se Notes derived from Computer Networking: A Top Down Approach, by Jim Kurose and Keith Ross, Addison-Wesley. The slides

More information

Transport layer: Outline

Transport layer: Outline Transport layer Our goals: Understand principles behind transport layer services: Multiplexing/demultiplexing Reliable data transfer Flow control Congestion control Learn about transport layer protocols

More information

Chapter 4: Network Layer, partb

Chapter 4: Network Layer, partb Chapter 4: Network Layer, partb The slides are adaptations of the slides available by the main textbook authors, Kurose&Ross Network Layer 4-1 Interplay between routing, forwarding routing algorithm local

More information

Chapter 6 Transport Layer

Chapter 6 Transport Layer Chapter 6 Transport Layer A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you can add, modify, and delete

More information

CNT 6885 Network Review on Transport Layer

CNT 6885 Network Review on Transport Layer CNT 6885 Network Review on Transport Layer Jonathan Kavalan, Ph.D. Department of Computer, Information Science and Engineering (CISE), University of Florida User Datagram Protocol [RFC 768] no frills,

More information

Chapter 4: Network Layer. Chapter 4 Network Layer. Chapter 4: Network Layer. Network Layer. Chapter goals:

Chapter 4: Network Layer. Chapter 4 Network Layer. Chapter 4: Network Layer. Network Layer. Chapter goals: Chapter 4 Network Laer A note on the use of these ppt slides: The notes used in this course are substantiall based on powerpoint slides developed and coprighted b J.F. Kurose and K.W. Ross, 996-7 Computer

More information

Interplay tra routing e forwarding

Interplay tra routing e forwarding Interpla tra routing e forwarding routing algorithm local forwarding table header value output link 000 00 0 00 value in arriving packet s header 0 Network Laer 4- Grafi Grafo: G = (N,E) u v w N = insieme

More information

CSC 401 Data and Computer Communications Networks

CSC 401 Data and Computer Communications Networks CSC 401 Data and Computer Communications Networks Transport Layer Principles of Reliable Data Transfer Sec 3.4 Prof. Lina Battestilli 2017 Fall Transport Layer Chapter 3 Outline 3.1 Transport-layer Services

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer These slides are adapted from the original slides provided by J.Kurose and K.W Ross. All material copyright 1996-2012 J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking:

More information

Transport services and protocols. Chapter 3 outline. Internet transport-layer protocols Chapter 3 outline. Multiplexing/demultiplexing

Transport services and protocols. Chapter 3 outline. Internet transport-layer protocols Chapter 3 outline. Multiplexing/demultiplexing Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless : UDP 3.4 Principles of reliable data transfer 3.5 Connection-oriented : TCP segment structure reliable

More information

Application. Transport. Network. Link. Physical

Application. Transport. Network. Link. Physical Transport Layer ELEC1200 Principles behind transport layer services Multiplexing and demultiplexing UDP TCP Reliable Data Transfer TCP Congestion Control TCP Fairness *The slides are adapted from ppt slides

More information

Lecture 9: Transpor Layer Overview and UDP

Lecture 9: Transpor Layer Overview and UDP Lecture 9: Transpor Layer Overview and UDP 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

Transport Layer: outline

Transport Layer: outline Transport Layer: outline Transport-layer services Multiplexing and demultiplexing Connectionless transport: UDP Principles of reliable data transfer Connection-oriented transport: TCP Segment structure

More information

CS 3516: Advanced Computer Networks

CS 3516: Advanced Computer Networks Welcome to CS 3516: Advanced Computer Networks Prof. Yanhua Li Time: 9:00am 9:50am M, T, R, and F Location: Fuller 320 Fall 2017 A-term 1 Some slides are originally from the course materials of the textbook

More information

CSE 3214: Computer Network Protocols and Applications Transport Layer (Part 2) Chapter 3 outline. UDP checksum. Port numbers

CSE 3214: Computer Network Protocols and Applications Transport Layer (Part 2) Chapter 3 outline. UDP checksum. Port numbers CSE 3214: Computer Network Protocols and Applications Transport Layer (Part 2) Dr. Peter Lian, Professor Department of Computer Science and Engineering York University Email: peterlian@cse.yorku.ca Office:

More information

RSC Part III: Transport Layer 3. TCP

RSC Part III: Transport Layer 3. TCP RSC Part III: Transport Layer 3. TCP Redes y Servicios de Comunicaciones Universidad Carlos III de Madrid These slides are, mainly, part of the companion slides to the book Computer Networking: A Top Down

More information

Chapter 3 outline. TDTS06 Computer networks. Principles of Reliable data transfer. Reliable data transfer: getting started

Chapter 3 outline. TDTS06 Computer networks. Principles of Reliable data transfer. Reliable data transfer: getting started Chapter 3 outline TDTS06 Computer networks Lecture 4: Transport layer II Reliable data delivery and TCP Jose M. Peña, jospe@ida.liu.se IDA/ADIT, LiU 2009-08-28 3.1 Transport-layer services 3.2 Multiplexing

More information

Chapter 5 Network Layer: The Control Plane

Chapter 5 Network Layer: The Control Plane Chapter 5 Network Layer: The Control Plane A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you

More information

CSC 4900 Computer Networks: Routing Algorithms

CSC 4900 Computer Networks: Routing Algorithms CSC 4900 Computer Networks: Routing Algorithms Professor Henry Carter Fall 2017 Last Time Subnets provide granularity for address assignment and ease management. What is 192.168.8.0? 192.168.32.0? 192.168.8.0:

More information

10 minutes survey (anonymous)

10 minutes survey (anonymous) 10 minutes survey (anonymous) v Comments/Suggestions to my lecture/lab/ homework/exam v If you like this course, which part do you like? v If you don t like it, which part do you not like? Thanks! Transport

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 Transport Layer II Dmitri Loguinov Texas A&M University February 27, 2018 Original slides copyright 1996-2004 J.F Kurose and K.W. Ross 1 Chapter

More information

Chapter 4 Network Layer

Chapter 4 Network Layer Chapter 4 Network Layer CPSC 335 Data Communication Systems Readings: 4.4.3, 4.4.4, 4.5, 4.5.1 David Nguyen Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer All material copyright 1996-2016 J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking: A Top Down Approach 7 th edition Jim Kurose, Keith Ross Pearson/Addison Wesley

More information

Chapter 3 outline. 3.5 connection-oriented transport: TCP segment structure reliable data transfer flow control connection management

Chapter 3 outline. 3.5 connection-oriented transport: TCP segment structure reliable data transfer flow control connection management Chapter 3 outline 3.1 transport-layer services 3.2 multiplexing and demultiplexing 3.3 connectionless transport: UDP 3.4 principles of reliable data transfer 3.5 connection-oriented transport: TCP segment

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer All material copyright 1996-2009 J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking: A Top Down Approach 5 th edition. Jim Kurose, Keith Ross Addison-Wesley, April

More information

DATA COMMUNICATOIN NETWORKING

DATA COMMUNICATOIN NETWORKING DATA COMMUNICATOIN NETWORKING Instructor: Ouldooz Baghban Karimi Course Book & Slides: Computer Networking, A Top-Down Approach By: Kurose, Ross Introduction Course Overview Basics of Computer 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

Chapter 3: Transport Layer

Chapter 3: Transport Layer Chapter 3: Transport Layer Chapter goals: understand principles behind transport layer services: multiplexing/demultiplex ing reliable data transfer flow control congestion control instantiation and implementation

More information

Chapter 4 Network Layer

Chapter 4 Network Layer Chapter 4 Network Layer A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you see the animations; and

More information

Chapter 2: outline. 2.1 principles of network applications app architectures app requirements

Chapter 2: outline. 2.1 principles of network applications app architectures app requirements Chapter 2: outline 2.1 principles of network applications app architectures app requirements 2.2 Web and HTTP 2.3 FTP 2.4 electronic mail SMTP, POP3, IMAP 2.5 DNS 2.6 P2P applications 2.7 socket programming

More information

The Transport Layer Multiplexing, Error Detection, & UDP

The Transport Layer Multiplexing, Error Detection, & UDP CPSC 852 Internetworking The Transport Layer Multiplexing, Error Detection, & UDP Michele Weigle Department of Computer Science Clemson University mweigle@cs.clemson.edu http://www.cs.clemson.edu/~mweigle/courses/cpsc852

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer Reti degli Elaboratori Canale AL Prof.ssa Chiara Petrioli a.a. 2013/2014 We thank for the support material Prof. Kurose-Ross All material copyright 1996-2012 J.F Kurose and K.W.

More information

Announcements. CS 5565 Network Architecture and Protocols. Count-To-Infinity. Poisoned Reverse. Distance Vector: Link Cost Changes.

Announcements. CS 5565 Network Architecture and Protocols. Count-To-Infinity. Poisoned Reverse. Distance Vector: Link Cost Changes. Announcements CS 6 Network Architecture and Protocols Lecture 20 Project 2B Part/ due Wed Apr 27 :9pm Part/2 due Wed Ma :9pm Current reading assignment: Chapter.6.7, Chapter Final Ma 0, 3:2pm, MCB 26 Godmar

More information

CC451 Computer Networks

CC451 Computer Networks CC451 Computer Networks Lecture 6 Transport Layer (cont d) Transport Layer 3-1 Chapter 3 Transport Layer A note on the use of these ppt slides: We re making these slides freely available to all (faculty,

More information

32 bits. source port # dest port # sequence number acknowledgement number not used. checksum. Options (variable length)

32 bits. source port # dest port # sequence number acknowledgement number not used. checksum. Options (variable length) Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4 Principles of reliable data transfer 3.5 Connectionoriented transport: TCP segment

More information

Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley

Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Intra- AS Rou-ng h0p://kcd.com/85/ Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesle Some materials copright 1996-2012 J.F Kurose and K.W. Ross, All Rights Reserved

More information

Transport Layer: Outline

Transport Layer: Outline Transport Layer: Outline Transport-layer services Multiplexing and demultiplexing Connectionless transport: UDP Principles of reliable data transfer Connection-oriented transport: TCP Segment structure

More information

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 13

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 13 CMPE 50/L : Introduction to Computer Networks Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 3 Lab3 online Due March 4 th. Introduction -2 IP addresses: how to get one? Q: how does network

More information

CMSC 332 Computer Networks Reliable Data Transfer

CMSC 332 Computer Networks Reliable Data Transfer CMSC 332 Computer Networks Reliable Data Transfer Professor Szajda Last Time Multiplexing/Demultiplexing at the Transport Layer. How do TCP and UDP differ? UDP gives us virtually bare-bones access to the

More information

Data Communications & Networks. Session 6 Main Theme Reliable Data Transfer. Dr. Jean-Claude Franchitti

Data Communications & Networks. Session 6 Main Theme Reliable Data Transfer. Dr. Jean-Claude Franchitti Data Communications & Networks Session 6 Main Theme Reliable Data Transfer Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical Sciences Adapted

More information

TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581

TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581 TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581 ocket door point-to-point: one sender, one receiver reliable, in-order byte steam: no message boundaries pipelined: TCP congestion and flow control set window

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you see the animations;

More information

CSC 4900 Computer Networks: Reliable Data Transport

CSC 4900 Computer Networks: Reliable Data Transport CSC 4900 Computer Networks: Reliable Data Transport Professor Henry Carter Fall 2017 Last Time Multiplexing/Demultiplexing at the Transport Layer. How do TCP and UDP differ? UDP gives us virtually bare-bones

More information

Chapter 3 outline. 3.5 connection-oriented transport: TCP segment structure reliable data transfer flow control connection management

Chapter 3 outline. 3.5 connection-oriented transport: TCP segment structure reliable data transfer flow control connection management Chapter 3 outline 3.1 transport-layer services 3.2 multiplexing and demultiplexing 3.3 connectionless transport: UDP 3.4 principles of reliable data transfer 3.5 connection-oriented transport: TCP segment

More information

Correcting mistakes. TCP: Overview RFCs: 793, 1122, 1323, 2018, TCP seq. # s and ACKs. GBN in action. TCP segment structure

Correcting mistakes. TCP: Overview RFCs: 793, 1122, 1323, 2018, TCP seq. # s and ACKs. GBN in action. TCP segment structure Correcting mistakes Go-back-N: big picture: sender can have up to N unacked packets in pipeline rcvr only sends cumulative acks doesn t ack packet if there s a gap sender has r for oldest unacked packet

More information

Different Layers Lecture 20

Different Layers Lecture 20 Different Layers Lecture 20 10/15/2003 Jian Ren 1 The Network Layer 10/15/2003 Jian Ren 2 Network Layer Functions Transport packet from sending to receiving hosts Network layer protocols in every host,

More information

Computer Networking Introduction

Computer Networking Introduction Computer Networking Introduction Halgurd S. Maghdid Software Engineering Department Koya University-Koya, Kurdistan-Iraq Lecture No.10 Chapter 3 outline 3.1 transport-layer services 3.2 multiplexing and

More information

Lecture 10: Transpor Layer Principles of Reliable Data Transfer

Lecture 10: Transpor Layer Principles of Reliable Data Transfer Lecture 10: Transpor Layer Principles of Reliable Data Transfer COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition: 1996-2016,

More information

Chapter III: Transport Layer

Chapter III: Transport Layer Chapter III: Transport Layer UG3 Computer Communications & Networks (COMN) Mahesh Marina mahesh@ed.ac.uk Slides thanks to Myungjin Lee and copyright of Kurose and Ross TCP: Overview RFCs: 793,1122,1323,

More information

Course on Computer Communication and Networks. Lecture 4 Chapter 3; Transport Layer, Part A

Course on Computer Communication and Networks. Lecture 4 Chapter 3; Transport Layer, Part A Course on Computer Communication and Networks Lecture 4 Chapter 3; Transport Layer, Part A EDA344/DIT 420, CTH/GU Based on the book Computer Networking: A Top Down Approach, Jim Kurose, Keith Ross, Addison-Wesley.

More information

Internet rou)ng. V. Arun CS491G: Computer Networking Lab University of MassachuseFs Amherst

Internet rou)ng. V. Arun CS491G: Computer Networking Lab University of MassachuseFs Amherst Internet rou)ng V. Arun CS491G: Computer Networking Lab University of MassachuseFs Amherst Slide material copyright 1996-2013 J.F Kurose and K.W. Ross, All Rights Reserved Graph abstraction 5 graph: G

More information