Ch 3. Transport Layer Myungchul Kim

Slides:



Advertisements
Similar presentations
Introduction 1 Lecture 13 Transport Layer (Transmission Control Protocol) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer.
Advertisements

Transport Layer3-1 Transport Overview and UDP. Transport Layer3-2 Goals r Understand transport services m Multiplexing and Demultiplexing m Reliable data.
Transport Layer 3-1 Transport services and protocols  provide logical communication between app processes running on different hosts  transport protocols.
EEC-484/584 Computer Networks Lecture 12 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
CPSC 441: Intro, UDP1 Transport Layer Instructor: Carey Williamson Office: ICT Class Location:
Chapter 3 outline 3.1 transport-layer services
EEC-484/584 Computer Networks Lecture 14 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Computer Communication Digital Communication in the Modern World Transport Layer Multiplexing, UDP
Chapter 3: Transport Layer
EEC-484/584 Computer Networks Lecture 12 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Chapter 3: Transport Layer Part A
EEC-484/584 Computer Networks Lecture 6 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Transport Layer3-1 Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable data transfer.
Announcement Project 1 due last night, how is that ? Project 2 almost ready, out tomorrow, will post online –Much harder than project 1, start early!
EEC-484/584 Computer Networks Lecture 14 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Announcement Project 1 due last night, how is that ? Homework 1 grade, comments out –Will be discussed in the next lecture Homework 2 out Project 2 almost.
Transport Layer3-1 Reliable Data Transfer. Transport Layer3-2 Principles of Reliable data transfer r important in app., transport, link layers r top-10.
Lecture 8 Chapter 3 Transport Layer
CPSC 441: Intro, UDP1 Instructor: Anirban Mahanti Office: ICT Class Location: ICT 121 Lectures: MWF 12:00 – 12:50 Notes.
1 Internet transport-layer protocols r reliable, in-order delivery (TCP) m congestion control m flow control m connection setup r unreliable, unordered.
2: Application Layer 1 1DT066 Distributed Information System Chapter 3 Transport Layer.
Some slides are in courtesy of J. Kurose and K. Ross Review of Previous Lecture Electronic Mail: SMTP, POP3, IMAP DNS Socket programming with TCP.
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.
9/30/ /2/2003 The Transport Layer September 30-October 2, 2003.
3-1 Transport services and protocols r provide logical communication between app processes running on different hosts r transport protocols run in end.
1 Transport Layer goals: r understand principles behind transport layer services: m multiplexing/demultiplexing m reliable data transfer m flow control.
8-1 Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable data transfer m flow.
Transport Layer Transport Layer. Transport Layer 3-2 Chapter 3 Transport Layer Computer Networking: A Top Down Approach Featuring the Internet,
Previous Lecture r P2P file sharing r Socket programming with TCP r Socket programming with UDP.
Gursharan Singh Tatla Transport Layer 16-May
Process-to-Process Delivery:
Ch 3. Transport Layer Myungchul Kim
1 Transport Layer Computer Networks. 2 Where are we?
Review: –What is AS? –What is the routing algorithm in BGP? –How does it work? –Where is “policy” reflected in BGP (policy based routing)? –Give examples.
Transport Layer3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 5 th edition. Jim Kurose, Keith Ross Addison-Wesley, April 2009.
Data Communications and Computer Networks Chapter 3 CS 3830 Lecture 12 Omar Meqdadi Department of Computer Science and Software Engineering University.
CS 1652 The slides are adapted from the publisher’s material All material copyright J.F Kurose and K.W. Ross, All Rights Reserved Jack Lange.
Network LayerII-1 RSC Part III: Transport Layer 1. Basic Concepts Redes y Servicios de Comunicaciones Universidad Carlos III de Madrid These slides are,
Transport layer 1 Reliable Transport Protocols Part 1.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 Part.
TCP1 Transmission Control Protocol (TCP). TCP2 Outline Transmission Control Protocol.
Transport Layer3-1 Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable.
Transport Layer3-1 Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable.
Transport Layer1 Ram Dantu (compiled from various text books)
Transport Layer Moving Segments. Transport Layer Protocols Provide a logical communication link between processes running on different hosts as if directly.
Lecture91 Administrative Things r Return homework # 1 r Review some problems in homework # 1 r Questions about grading? Yona r WebCT for CSE245 is working!
15-1 Last time □ Reliable Data Transfer ♦ Provide rdt over unreliable network layer ♦ FSM model ♦ rdt 1.0: rdt over reliable channels ♦ rdt 2.0: rdt over.
Transport Layer Goals: Overview:
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
Transport Layer 3-1 Chapter 3 Outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP.
Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable data transfer.
Transport Layer3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition. Jim Kurose, Keith Ross Addison-Wesley,
Transport Layer 3-1 Internet Transport Layer Lecture 8 Dr. Najla Al-Nabhan.
Prof. Younghee Lee 1 1 Computer Networks u Lecture 5: Transport services and protocols Prof. Younghee Lee * Some part of this teaching materials are prepared.
MULTIPLEXING/DEMULTIPLEXING, CONNECTIONLESS TRANSPORT.
Chapter 13 Introduction to the Transport Layer
Ch 3. Transport Layer (from Computer Networking by Jim Kurose and Keith Ross) Myungchul Kim
Transport Layer3-1 Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable.
McGraw-Hill Chapter 23 Process-to-Process Delivery: UDP, TCP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
Introduction 1-1 source application transport network link physical HtHt HnHn M segment HtHt datagram destination application transport network link physical.
CSEN 404 Transport Layer II Amr El Mougy Lamia AlBadrawy.
2: Transport Layer 11 Transport Layer 1. 2: Transport Layer 12 Part 2: Transport Layer Chapter goals: r understand principles behind transport layer services:
Ch 3. Transport Layer Myungchul Kim
Chapter 3 outline 3.1 Transport-layer services
Transport Layer Our goals:
Transport Layer Our goals:
Process-to-Process Delivery: UDP, TCP
Presentation transcript:

Ch 3. Transport Layer Myungchul Kim

2 o Logical communication between application processes running on different hosts o A network-layer protocol provides logical communication between hosts. o A transport protocol can offer reliable data transfer service to an application even when the underlying network protocol is unreliable. o IP service model: best-effort delivery service o UDP: unregulated

3 – Fig 3.1

4 o Intermediate routers neither act on, nor recognize, any information that the transport layer may have added to the application messages. o Transport-layer multiplexing: extending host-to-host delivery to process-to-process delivery

5 o Host-to-host delivery vs process-to-process delivery o Multiplexing o Demultiplexing o Transport-layer multiplexing – Sockets have unique identifiers – Each segment have special fields, port number fields, that indicate the socket to which the segment is to be delivered. – Port number: 16-bit number: from 0 to 65535, well-known port numbers from 0 to e.g., HTTP (80), FTP(21) – Fig 3.3 Multiplexing and Demultiplexing

6 o A UDP socket is fully identified by a two-tuple consisting of a destination IP address and a destination port number. o Fig 3.4

7 o A TCP socket is identified by a 4-tuple: (source IP address, source port number, destination IP address, destination port number). o In contrast with UDP, two arriving TCP segments with different source IP addresses or source port numbers will be directed to two different sockets. o The HTTP server distinguishes the segments from the different clients by the source IP addresses and source port numbers. o Persistent HTTP vs Nonpersistent HTTP

8 o Fig 3.5

9 o Multiplexing and demultiplexing o Light error checking o The application is almost directly talking with IP. o Connectionless o No handshaking o Merits – No connection establishment -> no delay – No connection state – Small packet header overhead: TCP(20), UDP(8 bytes) – Finer application-level control over what data is sent, and when. o How about congestion due to UDP? – New mechanism to force all sources including UDP sources to perform adaptive congestion control. – Applications have built acknowledgements and retransmissions into the applications. UDP

10 o Fig 3.6

11 o UDP segment structure – Fig 3.7 o UDP checksum – For error detection – UDP at the sender side performs the 1’s complement of the sum of all the 16-bit words in the segment. – At the receiver, all four 16-bit words are added, including the checksum. – If no errors, If one of the bits is a zero, then errors. o No recovery from an error.

12 o The transport layer, the link layer and the application layer o Fig 3.8 Principles of Reliable Data Transfer

13 o Reliable data transfer over a Perfectly Reliable Channel: rdt1.0 – Separate FSM – Event/action – Initial state – Fig 3.9 – No difference between a unit of data and a packet – No feedback: reliable channel – No flow control

14 o Reliable data transfer over a Channel: rdt2.0 – Bits in a packet may be corrupted – All transmitted packets are received in the order in which they were sent. – Positive ack and negative ack – ARQ(Automatic Repeat reQuest) protocols – Capabilities handling the presence of bit errors:  Error detection  Receiver feedback: a 0 value indicate a NAK and a value of 1 could indicate an ACK  Retransmission

15 – Fig. 3.10

16 o Reliable data transfer over a Channel: rdt2.0 – When the receiver is in the wait-for-ACK-or-NAK state, it cannot get more data from the upper layer. – Stop-and-wait protocol – Drawbacks  The ACK or NAK packet could be corrupted. -> checksum  How the protocol should recover from errors in ACK or NAK packets. – A one-bit sequence number: allow the receiver to know whether the sender is sending the previously transmitted packet. – Since we are currently assuming a channel that does not lose packets, ACK and NAK packets do not themselves need to indicate the sequence number of the packet they are acknowledging. – When an out-of-order packet is received, the receiver sends a positive acknowledgement for the packet it has received. -> duplicate ACKs – When a corrupted packet is received, the receiver sends a negative acknowledgement.

17 – Fig. 3.11

18 – Fig. 3.12

19 o Reliable data transfer over a Lossy Channel with Bit Errors: rdt3.0 – How to detect packet loss and what to do when packet loss occurs – Use of checksuming, sequence numbers, ACK packets and retransmissions – Choose a time value such that packet loss is likely, although not guaranteed, to have happened. – Duplicate data packets. – A delayed ACK: with an acknowledgement field – Alternating-bit protocol

20 – Fig. 3.15

21 – Fig. 3.16

22 o RTT: 30msec between the coasts, t trans = L/R = 8000bits/packet / 10 9 bits/sec = 8 microsec o Utilization of the channel: U sender = L/R / RTT + L/R = o Effective throughput = 267kbps on 1Gbps o Pipelining : the sender is allowed to send multiple packets without waiting for acknowledgements. – The range of sequence numbers must be increased. – The sender and receiver sides of the protocols may have to buffer more than one packet. – Go-Back-N and Selective Repeat approaches Pipelined reliable data transfer protocols

23 o No more than some max allowable number, N, of unacknowledged packets in the pipeline o Base: the seq number of the oldest unacknowledged packet o Nextseqnum: the smallest unused sequence number (= the seq number of the next packet to be sent) o Fig 3.19 o [0, base-1], [base, nextseqnum-1], [nextseqnum, base+N-1], [base+N, ] o Window size, sliding-window protocol Go-Back-N (GBN)

24 o EFSM of GBN sender – Invocation from above – Cumulative acknowledgement: all packets with a seq number up to and including n have been correctly received at the receiver. – A timeout event for the oldest transmitted but not yet acknowledged packet. o EFSM of GBN sender – The receiver discards out-of-order packets – The receiver need not buffer any out-of-order packets.

25 o When the window size and bandwidth-delay product are both large, many packets can be in the pipeline. o The sender retransmit only those packets that it suspects were received in error (were lost or corrupted) o The receiver individually acknowledge correctly received packets. o The sender will have already received ACKs for some of the packets in the window. o Synchronization between sender and receiver windows -> the window size must be less than or equal to half the size of the seq number space for SR protocols. Selective Repeat (SR)

26 o Synchronization between sender and receiver windows -> the window size must be less than or equal to half the size of the seq number space for SR protocols.