The Transport Layer. Why is there a transport layer? Addressing
|
|
- Collin McKenzie
- 5 years ago
- Views:
Transcription
1 The Transport Layer Provides logical communication between processes network layer: data transfer between end systems transport layer: data transfer between processes Two types of transport service is available connection-oriented connectionless application transport network data link physical network data link network physical data link physical logical end-end transport network data link physical network data link physical network data link physical application transport network data link physical 2/6/2006 Transport Layer Issues 1 Why is there a transport layer? Historically the network layer was part of the communications subnet and is run by the carrier. The transport layer forms a boundary between the provider and user of the reliable transmission service Some make the following distinction: transport service provider (layers 1-4) transport service user (above 4) 2/6/2006 Transport Layer Issues 2 Addressing Transport addresses typically need to include more than a machine address Many names, but the idea is essentially the same (IP address, local port) (AAL, SAP) (NSAP, TSAP) One component the destination, the second identifies an end point destination 2/6/2006 Transport Layer Issues 3 1
2 Determining the End-Point How does one determine what end-point a service is installed on? One technique is to agree on a set of well-known end-points Service Name Port Echo 7 Daytime 13 Qotd 17 Ftp 21 Telnet 23 Smtp 25 Time 37 Nameserver 42 2/6/2006 Transport Layer Issues 4 Initial Connection Protocol Each machine wishing to offer services has a special process server The process server scans a series of ports looking for connections When a connection request is received, the process server starts the appropriate process to service the request In UNIX this is handled by inetd 2/6/2006 Transport Layer Issues 5 Name Server A special process, called a name server or sometimes a directory server, to solve the addressing problem Here clients ask the name server what end-point address the desired service is running on This requires services to register themselves with the name server 2/6/2006 Transport Layer Issues 6 2
3 Transport Protocols Transport protocols often need to make an unreliable channel appear to be error free Transport protocols typically deal with error control, sequencing, and flow control Issues that affect transport protocols routing connection establishment storage capacity on the net sophisticated buffering/flow control techniques 2/6/2006 Transport Layer Issues 7 Principles of Reliable data transfer 2/6/2006 Transport Layer Issues 8 Elementary Link Protocols Need to provide enable reliable delivery using an unreliable delivery All packets are received Packets are received in the correct order No duplicates what we send is what is received The discussion that follows is based on Computer Networks, by Tannenbaum 2/6/2006 Transport Layer Issues 9 3
4 Utopia Assumptions Data transmission in one direction only The communication channel is assumed to be error free The receiver is assumed to be able to process all the input infinitely fast Just a simple example to get used to terminology 2/6/2006 Transport Layer Issues 10 Utopia Pseudo-code void sender(void) { frame s; // outbound frame packet p; // outbound packet while (true) { // Get something to send from_network_layer(&p); // Prepare for transmission s.info = p; // Send it to_physical_layer(&s); void receiver(void) { frame r; // inbound frame event_type event; // Not used while (true) { // Only possibility is // frame arrival wait_for_event(&event); // Get frame from_physical_layer(&r); // Pass to Network Layer to_network_layer(&r.info); 2/6/2006 Transport Layer Issues 11 Utopia in Action Frame A Frame B Packet C Frame C Packet C 2/6/2006 Transport Layer Issues 12 4
5 Stop & Wait Assumptions Data transmission in one direction only, from sender to receiver (but can send in both directions) The communication channel is assumed to be error free The receiver has only finite buffer capacity and a finite processing speed 2/6/2006 Transport Layer Issues 13 Stop & Wait Pseudo-code void sender(void) { frame s; // outbound frame packet p; // outbound packet event_type e; void receiver(void) { frame r; // inbound frame frame s; // ack frame event_type event; // Not used while (true) { // Get and send from_network_layer(&p); s.info = p; to_physical_layer(&s); // Wait for wait_for_event( &e ); while (true) { // Only possibility is // frame arrival wait_for_event(&event); // Get and pass up from_physical_layer(&r); to_network_layer(&r.info); // Send to_physical_layer( &s ); 2/6/2006 Transport Layer Issues 14 PAR Assumptions Data transmission in one direction only, from sender to receiver. The receiver has only finite buffer capacity and a finite processing speed. The communication channel is not assumed to be error free. Error recovery is done by error detection and retransmission of corrupted frames. The receiver sends an when the received frame is (considered) error-free a N when the received frame is corrupted Flow control can be achieved by sending nothing for a while. The sender must keep the transmitted frame in a buffer until it is acknowledged. 2/6/2006 Transport Layer Issues 15 5
6 PAR - Normal Frame A Frame B N Frame B ERROR 2/6/2006 Transport Layer Issues 16 PAR Lost Frame TIMEOUT Frame A Frame B Frame B ERROR 2/6/2006 Transport Layer Issues 17 Timeouts Sender waits for and times out and retransmits With time outs, Ns are not necessary But are usually more efficient Flow control is now based on time out Problem is that s can get lost too!! 2/6/2006 Transport Layer Issues 18 6
7 PAR Lost Frame A TIMEOUT Frame B Frame B 2/6/2006 Transport Layer Issues 19 Numbering Messages Assumptions Same as before Protocol Changes Sender maintains a one-bit counter Incremented when is received Value of counter placed in header Receiver Has one-bit counter (tells last frame received) Correct frame No error Right number 2/6/2006 Transport Layer Issues 20 PAR Lost Frame A:0 TIMEOUT Frame B:1 Frame B:1 DUPLICATE DISCARD 2/6/2006 Transport Layer Issues 21 7
8 Race Condition Frame A:0 TIMEOUT Frame B:1 Frame A:0 DUPLICATE DISCARD Packet C Frame C:1 DUPLICATE DISCARD 2/6/2006 Transport Layer Issues 22 Numbering s Assumptions Same as before Protocol Changes s are numbered as well Can be proved correct assuming No re-ordering of messages or s 2/6/2006 Transport Layer Issues 23 It Works!! TIMEOUT DUPLICATE DISCARD TIMEOUT Frame A:0 :0 Frame A:0 Frame B:1 :0 Frame B:1 :1 DUPLICATE DISCARD 2/6/2006 Transport Layer Issues 24 8
9 Simplex Transmission Layer 2 Sender A Data A B Control B A Layer 2 Receiver B Unidirectional data transmission 2/6/2006 Transport Layer Issues 25 Full Duplex Transmission Data A B Layer 2 Sender A Control B A Data B A Layer 2 Receiver B Control A B Seems silly to have two simplex channels 2/6/2006 Transport Layer Issues 26 Piggy-backed s Data A B Control A B Layer 2 Sender A Data B A Control B A Layer 2 Receiver B 2/6/2006 Transport Layer Issues 27 9
10 Stop & Wait Pseudo-code void sender(void) { frame f; int sent = 0; int expect = 0; while (true) { f.ack = 1 - expect; f.frame = sent; // Send 1 st to_physical_layer( &f ); frame from_physical_layer( &f ); if ( f.ack == sent &&!timeout ) { from_network_layer( &f.info ); to_send = 1 to_send; // Receive frame // Handle if ( f.seq == expect &&!timeout) { // Handle data to_network_layer( &f.info ); expect = 1 expect; 2/6/2006 Transport Layer Issues 28 Stop & Wait Pseudo-code void sender(void) { frame f; int sent = 1; int expect = 0; while (true) { from_physical_layer( &f ); if ( f.ack == sent &&!timeout ) { from_network_layer( &f.info ); to_send = 1 to_send; // Receive frame // Handle if ( f.seq == expect &&!timeout) { // Handle data to_network_layer( &f.info ); expect = 1 expect; f.ack = 1 - expect; f.frame = sent; // Send 1st frame to_physical_layer( &f ); 2/6/2006 Transport Layer Issues 29 Piggyback A sends (0, 1, A0) B gets (0, 1, A0) B sends(0, 0, B0) A gets (0, 0, B0) A sends(1, 0, A1) B gets (1, 0, A1) B sends(1, 1, B1) A gets (1, 1, B1) A sends(1, 0, A2) A gets (0, 0, B2) A sends(1, 0, A3) B gets (0, 1, A2) B sends(0, 0, B2) B gets (1, 0, A3) B sends(1, 1, B3) Notation: ( frame number, piggybacked, frame ) 2/6/2006 Transport Layer Issues 30 10
11 Lost Packet A sends (0, 1, A0) B gets (0, 1, A0) B sends(0, 0, B0) A gets (0, 0, B0) A sends(1, 0, A1) B gets (1, 0, A1) B sends(1, 1, B1) TIMEOUT A sends(1, 0, A1) A gets (1, 1, B1) A sends(0, 1, A2) B gets (1, 0, A1) B sends(1, 1, B1) B gets (0, 1, A2) B sends(0, 0, B2) Notation: ( frame number, piggybacked, frame ) 2/6/2006 Transport Layer Issues 31 Simultaneous Start A sends (0, 1, A0) B sends(0, 1, B0) B gets(0, 1, A0) B sends(0, 0, B0) A gets (0, 1, B0) A sends(0, 0, A0) B gets (0, 0, A0) B sends(1, 0, B1) A gets (0, 0, B0) A sends(1, 0, A1) A gets (1, 0, B1) A sends(1, 1, A1) B gets (1, 0, A1) B sends(1, 1, B1) B gets (1, 1, A1) B sends(0, 1, B2) Notation: ( frame number, piggybacked, frame ) 2/6/2006 Transport Layer Issues 32 Analysis L/b R 1 st bit of frame Last bit of frame (one bit long) Usage: (L/b) /( R + L/b) or L / ( L + Rb) Where L = length of the frame b = data rate R = round trip delay L/b = transmission R/2 = transit Bad if R >> (satellite) b >> (high speed) L << (small frame) 2/6/2006 Transport Layer Issues 33 11
12 More Outstanding? Why only 1 outstanding frame? Minimizes buffer size Wastes bandwidth Sliding windows protocols Basically what we have been looking at Except that multiple packets can be un-d How That is the window size 2/6/2006 Transport Layer Issues 34 Transmission Window for the first packet "slides" the window along to the next packet. The window partitions successfully transmitted waiting acknowledgements waiting to be transmitted 2/6/2006 Transport Layer Issues 35 Pipelined protocols Sender allows multiple, in-flight, yet-to-beacknowledged packets range of sequence numbers must be increased buffering at sender and/or receiver 2/6/2006 Transport Layer Issues 36 12
13 How to Handle Loss Assuming a window size greater than 1 What action do you take if you detect a packet loss Two general strategies Go back N Selective Repeat 2/6/2006 Transport Layer Issues 37 Go-Back-N Receiver s packets in order Discards unexpected packets Sender retransmits everything in window when detects loss of 2/6/2006 Transport Layer Issues 38 GBN in action 2/6/2006 Transport Layer Issues 39 13
14 Selective Repeat Receiver individually acknowledges all correctly received packets Buffers packets, as needed, for eventual in-order delivery to upper layer Sender only resends packets for which not received Sender timer for each uned packet Sender window N consecutive sequence # s 2/6/2006 Transport Layer Issues 40 Selective Repeat 2/6/2006 Transport Layer Issues 41 Selective repeat in action 2/6/2006 Transport Layer Issues 42 14
15 Selective Repeat: Dilemma Example: Seq # s: 0, 1, 2, 3 Window size=3 Receiver sees no difference in two scenarios! Incorrectly passes duplicate data as new in (a) Seq #s must be larger than window size 2/6/2006 Transport Layer Issues 43 Problems With Connections The crux of most of the problems are delayed duplicates Throwaway transport addresses Each connection has a unique address Server model cannot work Connection identifiers A unique number that identifies each connection What happens when a host crashes? Try killing old packets (aging) 2/6/2006 Transport Layer Issues 44 Restricting Packet Lifetime Packet lifetime can be restricted Restricted subnet design Hop counters Timestamps Not only do we need to kill packets, but any s of the packets as well T is some multiple of the true packet lifetime. After waiting T units all traces of the packet are gone 2/6/2006 Transport Layer Issues 45 15
16 Generating Sequence Numbers With packet lifetimes limited, it is possible to devise a way to generate sequence numbers safely Basic idea is to generate sequence numbers such that two identically numbered packets are never outstanding at the same time (for one connection) Equip each machine with a clock that never stops Takes on the form of a binary counter Incremented at regular intervals Number of bits equals/exceeds size of sequence number 2/6/2006 Transport Layer Issues 46 Generating Sequence Numbers At connection set up, the low order k bits of the clock are used as the initial sequence number. Each connection starts with a different sequence number Once the initial sequence number is picked, things work as before The sequence space is so large that by the time sequence numbers wrap, the old packets are long gone 2/6/2006 Transport Layer Issues 47 Host Crashes When a host crashes, and then restarts, it does not know where it was in the sequence space One solution is to require transport entities to be idle for T seconds after recovery to let all old packets dies off If T is large, as it would be in a complex internetwork, this strategy is unattractive. 2/6/2006 Transport Layer Issues 48 16
17 Example Let T = 60sec and the clock ticks once per second At time = 30secs, a packet is sent with with sequence number 80 (this is an existing connection, packet lives until time = 90secs) The machine crashes and restarts At time = 70secs, it reopens the connection, and uses initial sequence number 70 Within the next 15secs it sends packets At time=85secs two packets with sequence 80 exist 2/6/2006 Transport Layer Issues 49 Forbidden Regions We must prevent sequence numbers from being used for a time T before their potential use as initial sequence numbers The forbidden region indicates the illegal combinations of time and sequence number Before sending any packet, on any connection, the clock must be checked to be sure the packet is not in a forbidden region 2/6/2006 Transport Layer Issues 50 Problems The protocol can get into trouble if the host sends data too quickly on a newly opened connection This happens if the transmission rate is faster than the clock This means the maximum data rate on any connection is one packet per clock tick It also means the hosts must wait until the clock ticks before opening a connection after restart A short clock tick is desired 2/6/2006 Transport Layer Issues 51 17
18 Problems The protocol can also run into problems if the transmission rate is too slow At any data rate less than the clock rate, the sequence numbers will eventually run into the forbidden region from the left This is fixed by re-synchronizing the sequence numbers 2/6/2006 Transport Layer Issues 52 Establishing A Connection Sounds straight forward one side sends CONNECTION REQUEST other side sends CONNECTION ACCEPTED when originator gets the the connection is established Imagine creating a connection where all the packets are duplicated and you are transferring money!! 2/6/2006 Transport Layer Issues 53 Three Way Handshake The clock based approach solves the delayed duplicate problem, only if a connection has been established CR (seq=x) (seq=y, =x) DATA (seq=x, =y) 2/6/2006 Transport Layer Issues 54 18
19 Problems CR (seq=x) CR (seq=x) (seq=y, =x) (seq=y, =x) DATA (seq=y, =z) REJECT (=y) REJECT (=y) 2/6/2006 Transport Layer Issues 55 Releasing a Connection Releasing connections is easier than establishing one There are two styles of release: asymmetric symmetric Asymmetric release is abrupt and may result in data loss. A more sophisticated protocol is required to avoid data loss 2/6/2006 Transport Layer Issues 56 19
Elements of Transport Protocols
CEN445 Network Protocols and Algorithms Chapter 6 Transport Layer 6.2 Elements of Transport Protocols Dr. Mostafa Hassan Dahshan Department of Computer Engineering College of Computer and Information Sciences
More information6.2 Elements of Transport Protocols
CEN445 Network Protocols and Algorithms Chapter 6 Transport Layer 6.2 Elements of Transport Protocols Dr. Mostafa Hassan Dahshan Department of Computer Engineering College of Computer and Information Sciences
More informationTHE TRANSPORT LAYER UNIT IV
THE TRANSPORT LAYER UNIT IV The Transport Layer: The Transport Service, Elements of Transport Protocols, Congestion Control,The internet transport protocols: UDP, TCP, Performance problems in computer
More informationEEC-682/782 Computer Networks I
EEC-682/782 Computer Networks I Lecture 15 Wenbing Zhao w.zhao1@csuohio.edu http://academic.csuohio.edu/zhao_w/teaching/eec682.htm (Lecture nodes are based on materials supplied by Dr. Louise Moser at
More informationThe OSI Reference Model. EECC694 - Shaaban
The OSI Reference Model #1 lec #11 Spring2000 4-18-2000 The Transport Layer Provides reliable end-to-end service to processes in the application layer: Connection-oriented or connection-less services.
More informationLayer 4 - Transport Layer
Layer 4 - Transport Layer Core of the protocol hierarchy: Network-independent, reliable and economical data transfer Tasks of the transport layer: Connection-oriented or connectionless data transfer Addressing
More informationEEC-484/584 Computer Networks. Lecture 16. Wenbing Zhao
EEC-484/584 Computer Networks Lecture 16 wenbing@ieee.org (Lecture nodes are based on materials supplied by Dr. Louise Moser at UCSB and Prentice-Hall) Outline 2 Review Services provided by transport layer
More informationNWEN 243. Networked Applications. Layer 4 TCP and UDP
NWEN 243 Networked Applications Layer 4 TCP and UDP 1 About the second lecturer Aaron Chen Office: AM405 Phone: 463 5114 Email: aaron.chen@ecs.vuw.ac.nz Transport layer and application layer protocols
More informationThe Transport Layer Reliability
The Transport Layer Reliability CS 3, Lecture 7 http://www.cs.rutgers.edu/~sn4/3-s9 Srinivas Narayana (slides heavily adapted from text authors material) Quick recap: Transport Provide logical communication
More informationLecture 5: Flow Control. CSE 123: Computer Networks Alex C. Snoeren
Lecture 5: Flow Control CSE 123: Computer Networks Alex C. Snoeren Pipelined Transmission Sender Receiver Sender Receiver Ignored! Keep multiple packets in flight Allows sender to make efficient use of
More informationTransport Layer. Application / Transport Interface. Transport Layer Services. Transport Layer Connections
Application / Transport Interface Application requests service from transport layer Transport Layer Application Layer Prepare Transport service requirements Data for transport Local endpoint node address
More informationCRC. Implementation. Error control. Software schemes. Packet errors. Types of packet errors
CRC Implementation Error control An Engineering Approach to Computer Networking Detects all single bit errors almost all 2-bit errors any odd number of errors all bursts up to M, where generator length
More informationIntro to LAN/WAN. Transport Layer
Intro to LAN/WAN Transport Layer Transport Layer Topics Introduction (6.1) Elements of Transport Protocols (6.2) Internet Transport Protocols: TDP (6.5) Internet Transport Protocols: UDP (6.4) socket interface
More informationECE 435 Network Engineering Lecture 9
ECE 435 Network Engineering Lecture 9 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 2 October 2018 Announcements HW#4 was posted, due Thursday 1 HW#3 Review md5sum/encryption,
More informationUNIT IV -- TRANSPORT LAYER
UNIT IV -- TRANSPORT LAYER TABLE OF CONTENTS 4.1. Transport layer. 02 4.2. Reliable delivery service. 03 4.3. Congestion control. 05 4.4. Connection establishment.. 07 4.5. Flow control 09 4.6. Transmission
More informationTransport Protocols & TCP TCP
Transport Protocols & TCP CSE 3213 Fall 2007 13 November 2007 1 TCP Services Flow control Connection establishment and termination Congestion control 2 1 TCP Services Transmission Control Protocol (RFC
More informationChapter 3: Transport Layer Part A
Chapter 3: Transport Layer Part A Course on Computer Communication and Networks, CTH/GU The slides are adaptation of the slides made available by the authors of the course s main textbook 3: Transport
More informationEEC-682/782 Computer Networks I
EEC-682/782 Computer Networks I Lecture 16 Wenbing Zhao w.zhao1@csuohio.edu http://academic.csuohio.edu/zhao_w/teaching/eec682.htm (Lecture nodes are based on materials supplied by Dr. Louise Moser at
More informationJaringan Komputer. The Transport Layer
Jaringan Komputer Transport Layer The Transport Layer The heart of the whole protocol hierarchy Task: To provide reliable, cost-effective data transport from the source machine to the destination machine,
More informationUpper Layer Services. Berkeley Sockets Example of Socket Programming: Internet File Server
The Transport Layer Chapter 6 Transport Service Upper Layer Services Transport Service Primitives Berkeley Sockets Example of Socket Programming: Internet File Server Services Provided to the Upper Layers
More informationTransport Layer Protocols TCP
Transport Layer Protocols TCP Gail Hopkins Introduction Features of TCP Packet loss and retransmission Adaptive retransmission Flow control Three way handshake Congestion control 1 Common Networking Issues
More informationUser Datagram Protocol
Topics Transport Layer TCP s three-way handshake TCP s connection termination sequence TCP s TIME_WAIT state TCP and UDP buffering by the socket layer 2 Introduction UDP is a simple, unreliable datagram
More informationData Link Layer, Part 5 Sliding Window Protocols. Preface
Data Link Layer, Part 5 Sliding Window Protocols These slides are created by Dr. Yih Huang of George Mason University. Students registered in Dr. Huang's courses at GMU can make a single machine-readable
More informationPrinciples of Reliable Data Transfer
Principles of Reliable Data Transfer 1 Reliable Delivery Making sure that the packets sent by the sender are correctly and reliably received by the receiver amid network errors, i.e., corrupted/lost packets
More informationTransport Protocols and TCP: Review
Transport Protocols and TCP: Review CSE 6590 Fall 2010 Department of Computer Science & Engineering York University 1 19 September 2010 1 Connection Establishment and Termination 2 2 1 Connection Establishment
More informationReliable Data Transfer
Reliable Data Transfer Kai Shen Reliable Data Transfer What is reliable data transfer? guaranteed arrival no error in order delivery Why is it difficult? unreliable underlying communication channel, which
More informationComputer Networking. Reliable Transport. Reliable Transport. Principles of reliable data transfer. Reliable data transfer. Elements of Procedure
Computer Networking Reliable Transport Prof. Andrzej Duda duda@imag.fr Reliable Transport Reliable data transfer Data are received ordered and error-free Elements of procedure usually means the set of
More information6.2 Elements of Transport Protocols
Page 1 of 26 [ Team LiB ] 6.2 Elements of Transport Protocols The transport service is implemented by a transport protocol used between the two transport entities. In some ways, transport protocols resemble
More informationData Link Control Protocols
Protocols : Introduction to Data Communications Sirindhorn International Institute of Technology Thammasat University Prepared by Steven Gordon on 23 May 2012 Y12S1L07, Steve/Courses/2012/s1/its323/lectures/datalink.tex,
More informationNT1210 Introduction to Networking. Unit 10
NT1210 Introduction to Networking Unit 10 Chapter 10, TCP/IP Transport Objectives Identify the major needs and stakeholders for computer networks and network applications. Compare and contrast the OSI
More informationLecture 20 Overview. Last Lecture. This Lecture. Next Lecture. Transport Control Protocol (1) Transport Control Protocol (2) Source: chapters 23, 24
Lecture 20 Overview Last Lecture Transport Control Protocol (1) This Lecture Transport Control Protocol (2) Source: chapters 23, 24 Next Lecture Internet Applications Source: chapter 26 COSC244 & TELE202
More informationInst: Chris Davison
ICS 153 Introduction to Computer Networks Inst: Chris Davison cbdaviso@uci.edu ICS 153 Data Link Layer Contents Simplex and Duplex Communication Frame Creation Flow Control Error Control Performance of
More informationThe Transmission Control Protocol (TCP)
The Transmission Control Protocol (TCP) Application Services (Telnet, FTP, e-mail, WWW) Reliable Stream Transport (TCP) Unreliable Transport Service (UDP) Connectionless Packet Delivery Service (IP) Goals
More informationCSCD 330 Network Programming
CSCD 330 Network Programming Lecture 10 Transport Layer Continued Spring 2018 Reading: Chapter 3 Some Material in these slides from J.F Kurose and K.W. Ross All material copyright 1996-2007 1 Last Time.
More informationCMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 11, 2018
CMSC 417 Computer Networks Prof. Ashok K Agrawala 2018 Ashok Agrawala Message, Segment, Packet, and Frame host host HTTP HTTP message HTTP TCP TCP segment TCP router router IP IP packet IP IP packet IP
More informationAnalyzation of Automatic Repeat Request (ARQ) Protocols
RESEARCH ARTICLE OPEN ACCESS Analyzation of Automatic Repeat Request (ARQ) Protocols 1 Jeshvina.S, 2 Sneha.P, 3 Saraanya.S Final year BCA, Dept of Computer Science New Horizon College Kasturinagar, Bangalore
More informationConnection-oriented (virtual circuit) Reliable Transfer Buffered Transfer Unstructured Stream Full Duplex Point-to-point Connection End-to-end service
최양희서울대학교컴퓨터공학부 Connection-oriented (virtual circuit) Reliable Transfer Buffered Transfer Unstructured Stream Full Duplex Point-to-point Connection End-to-end service 1 2004 Yanghee Choi 2 Addressing: application
More informationTransport Protocols and TCP
Transport Protocols and TCP Functions Connection establishment and termination Breaking message into packets Error recovery ARQ Flow control Multiplexing, de-multiplexing Transport service is end to end
More information7. TCP 최양희서울대학교컴퓨터공학부
7. TCP 최양희서울대학교컴퓨터공학부 1 TCP Basics Connection-oriented (virtual circuit) Reliable Transfer Buffered Transfer Unstructured Stream Full Duplex Point-to-point Connection End-to-end service 2009 Yanghee Choi
More informationCMPE 150 Winter 2009
CMPE 150 Winter 2009 Lecture 16 March 3, 2009 P.E. Mantey CMPE 150 -- Introduction to Computer Networks Instructor: Patrick Mantey mantey@soe.ucsc.edu http://www.soe.ucsc.edu/~mantey/ / t / Office: Engr.
More informationChapter 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 informationTCP: Flow and Error Control
1 TCP: Flow and Error Control Required reading: Kurose 3.5.3, 3.5.4, 3.5.5 CSE 4213, Fall 2006 Instructor: N. Vlajic TCP Stream Delivery 2 TCP Stream Delivery unlike UDP, TCP is a stream-oriented protocol
More informationGuide To TCP/IP, Second Edition UDP Header Source Port Number (16 bits) IP HEADER Protocol Field = 17 Destination Port Number (16 bit) 15 16
Guide To TCP/IP, Second Edition Chapter 5 Transport Layer TCP/IP Protocols Objectives Understand the key features and functions of the User Datagram Protocol (UDP) Explain the mechanisms that drive segmentation,
More informationChapter 6. What happens at the Transport Layer? Services provided Transport protocols UDP TCP Flow control Congestion control
Chapter 6 What happens at the Transport Layer? Services provided Transport protocols UDP TCP Flow control Congestion control OSI Model Hybrid Model Software outside the operating system Software inside
More informationThe Transport Layer. The need for the transport layer
The Transport Layer Aims To explain:- The need for the transport layer A simple exemplar Transport in IP and ATM Outcomes To understand the need for the layer and the solution adopted adopted when internetworking
More informationECE697AA Lecture 3. Today s lecture
ECE697AA Lecture 3 Transport Layer: TCP and UDP Tilman Wolf Department of Electrical and Computer Engineering 09/09/08 Today s lecture Transport layer User datagram protocol (UDP) Reliable data transfer
More informationUser Datagram Protocol (UDP):
SFWR 4C03: Computer Networks and Computer Security Feb 2-5 2004 Lecturer: Kartik Krishnan Lectures 13-15 User Datagram Protocol (UDP): UDP is a connectionless transport layer protocol: each output operation
More informationCMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 25, 2018
CMSC 417 Computer Networks Prof. Ashok K Agrawala 2018 Ashok Agrawala Message, Segment, Packet, and Frame host host HTTP HTTP message HTTP TCP TCP segment TCP router router IP IP packet IP IP packet IP
More informationChapter 6. The Transport Layer. The Transport Service. Services Provided to the Upper Layers. Transport Service Primitives (3) 10/7/2010
The Transport Service Chapter 6 The Transport Layer Services Provided to the Upper Layers Transport Service Primitives Berkeley Sockets An Example of Socket Programming: An Internet File Server Services
More informationERROR AND FLOW CONTROL. Lecture: 10 Instructor Mazhar Hussain
ERROR AND FLOW CONTROL Lecture: 10 Instructor Mazhar Hussain 1 FLOW CONTROL Flow control coordinates the amount of data that can be sent before receiving acknowledgement It is one of the most important
More informationCSC 4900 Computer Networks: TCP
CSC 4900 Computer Networks: TCP Professor Henry Carter Fall 2017 Project 2: mymusic You will be building an application that allows you to synchronize your music across machines. The details of which are
More informationTransport Layer Marcos Vieira
Transport Layer 2014 Marcos Vieira Transport Layer Transport protocols sit on top of network layer and provide Application-level multiplexing ( ports ) Error detection, reliability, etc. UDP User Datagram
More informationLecture 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 informationChapter 5 Peer-to-Peer Protocols and Data Link Layer
Chapter 5 Peer-to-Peer Protocols and Data Link Layer PRT I: Peer-to-Peer Protocols Peer-to-Peer Protocols and Service Models RQ Protocols and Reliable Data Transfer Flow Control Timing Recovery TCP Reliable
More informationTransport Layer. -UDP (User Datagram Protocol) -TCP (Transport Control Protocol)
Transport Layer -UDP (User Datagram Protocol) -TCP (Transport Control Protocol) 1 Transport Services The transport layer has the duty to set up logical connections between two applications running on remote
More informationAnnouncements Computer Networking. Outline. Transport Protocols. Transport introduction. Error recovery & flow control. Mid-semester grades
Announcements 15-441 Computer Networking Lecture 16 Transport Protocols Mid-semester grades Based on project1 + midterm + HW1 + HW2 42.5% of class If you got a D+,D, D- or F! must meet with Dave or me
More informationTransport Protocols. Raj Jain. Washington University in St. Louis
Transport Protocols Raj Jain Washington University Saint Louis, MO 63131 Jain@cse.wustl.edu These slides are available on-line at: http://www.cse.wustl.edu/~jain/cse473-05/ 16-1 Overview q TCP q Key features
More informationDLL: Flow Control DLL. Simplex. Fast sender / slow receiver scenario. Various protocols used. Simplified examples implemented in C.
DLL: Flow Control Fast sender / slow receiver scenario Feedback mechanism reqd. Various protocols used Stop and Wait Sliding window protocols Hugh Melvin, Dept. of IT, NUI,G 1 DLL Simplified examples implemented
More information2.1 CHANNEL ALLOCATION 2.2 MULTIPLE ACCESS PROTOCOLS Collision Free Protocols 2.3 FDDI 2.4 DATA LINK LAYER DESIGN ISSUES 2.5 FRAMING & STUFFING
UNIT-2 2.1 CHANNEL ALLOCATION 2.2 MULTIPLE ACCESS PROTOCOLS 2.2.1 Pure ALOHA 2.2.2 Slotted ALOHA 2.2.3 Carrier Sense Multiple Access 2.2.4 CSMA with Collision Detection 2.2.5 Collision Free Protocols 2.2.5.1
More informationC08a: Data Link Protocols
CISC 7332X T6 C08a: Data Link Protocols Hui Chen Department of Computer & Information Science CUNY Brooklyn College 10/16/2018 CUNY Brooklyn College 1 Data Link Layer Responsible for delivering frames
More informationCSC 401 Data and Computer Communications Networks
CSC 401 Data and Computer Communications Networks Transport Layer Connection Oriented Transport: TCP Sec 3.5 Prof. Lina Battestilli Fall 2017 Transport Layer Chapter 3 Outline 3.1 Transport-layer Services
More informationChapter 24. Transport-Layer Protocols
Chapter 24. Transport-Layer Protocols 23.1 Introduction 23.2 User Datagram Protocol 23.3 Transmission Control Protocol 23.4 SCTP Computer Networks 24-1 Position of Transport-Layer Protocols UDP is an unreliable
More informationLecture 7: Flow Control"
Lecture 7: Flow Control" CSE 123: Computer Networks Alex C. Snoeren No class Monday! Lecture 7 Overview" Flow control Go-back-N Sliding window 2 Stop-and-Wait Performance" Lousy performance if xmit 1 pkt
More informationQuestion 1 (6 points) Compare circuit-switching and packet-switching networks based on the following criteria:
Question 1 (6 points) Compare circuit-switching and packet-switching networks based on the following criteria: (a) Reserving network resources ahead of data being sent: (2pts) In circuit-switching networks,
More informationTHE DATA LINK LAYER. From: Computer Networks, 3rd ed. by Andrew S. Tanenbaum, 1996 Prentice Hall
3 THE DATA LINK LAYER Host 1 Host 2 Host 1 Host 2 4 4 4 4 3 2 Virtual data path 3 2 3 2 3 2 1 1 1 Actual data path 1 (a) (b) Fig. 3-1. (a) Virtual communication. (b) Actual communication. Router Data link
More informationCS4700/CS5700 Fundamentals of Computer Networks
CS4700/CS5700 Fundamentals of Computer Networks Lecture 14: TCP Slides used with permissions from Edward W. Knightly, T. S. Eugene Ng, Ion Stoica, Hui Zhang Alan Mislove amislove at ccs.neu.edu Northeastern
More informationPeer-to-Peer Protocols and Data Link Layer. Chapter 5 from Communication Networks Leon-Gracia and Widjaja
Peer-to-Peer Protocols and Data Link Layer Chapter 5 from Communication Networks Leon-Gracia and Widjaja Peer-to-Peer Protocols At each layer two (or more) entities execute These are peer processes For
More informationData Link Control. Outline. DLC functions
Data Link Control #8 1 Outline functions Framing Error and flow control Performance of Example of a standard protocol- >H Open loop flow control 2 Data Link Layer Functions Data Link layer provides a error
More informationUnit 2.
Unit 2 Unit 2 Topics Covered: 1. PROCESS-TO-PROCESS DELIVERY 1. Client-Server 2. Addressing 2. IANA Ranges 3. Socket Addresses 4. Multiplexing and Demultiplexing 5. Connectionless Versus Connection-Oriented
More informationTransport Layer Chapter 6
Transport Service Transport Layer Chapter 6 Elements of Transport Protocols Congestion Control Internet Protocols UDP Internet Protocols TCP Performance Issues Delay-Tolerant Networking Revised: August
More informationCS457 Transport Protocols. CS 457 Fall 2014
CS457 Transport Protocols CS 457 Fall 2014 Topics Principles underlying transport-layer services Demultiplexing Detecting corruption Reliable delivery Flow control Transport-layer protocols User Datagram
More informationET4254 Communications and Networking 1
Topic 9 Internet Protocols Aims:- basic protocol functions internetworking principles connectionless internetworking IP IPv6 IPSec 1 Protocol Functions have a small set of functions that form basis of
More informationECE 333: Introduction to Communication Networks Fall 2001
ECE 333: Introduction to Communication Networks Fall 2001 Lecture 26: Transport layer I 1 Transport Layer In the remaining lectures, we will discuss several issues that are commonly addressed at the transport
More information05 Transmission Control Protocol (TCP)
SE 4C03 Winter 2003 05 Transmission Control Protocol (TCP) Instructor: W. M. Farmer Revised: 06 February 2003 1 Interprocess Communication Problem: How can a process on one host access a service provided
More informationLecture 7: Sliding Windows. CSE 123: Computer Networks Geoff Voelker (guest lecture)
Lecture 7: Sliding Windows CSE 123: Computer Networks Geoff Voelker (guest lecture) Please turn in HW #1 Thank you From last class: Sequence Numbers Sender Receiver Sender Receiver Timeout Timeout Timeout
More informationCOMPUTER NETWORKS - UNIT 4 Y3/S5
UNIT IV TRANSPORT LAYER Transport layer - Services - Berkeley Sockets -Example Elements of Transport protocols Addressing - Connection Establishment - Connection Release - Flow Control and Buffering Multiplexing
More informationTCP Service Model. Today s Lecture. TCP Support for Reliable Delivery. EE 122:TCP, Connection Setup, Reliability
Today s Lecture How does TCP achieve correct operation? EE 122:TCP, Connection Setup, Reliability Ion Stoica TAs: Junda Liu, DK Moon, David Zats Reliability in the face of IP s best effort service 3-way
More informationLecture 3: The Transport Layer: UDP and TCP
Lecture 3: The Transport Layer: UDP and TCP Prof. Shervin Shirmohammadi SITE, University of Ottawa Prof. Shervin Shirmohammadi CEG 4395 3-1 The Transport Layer Provides efficient and robust end-to-end
More information1.What are the services provided by the transport layer to the upper layers?
1.What are the services provided by the transport layer to the upper layers? Services provided to the upper layer: The ultimate goal of the transport layer is to provide efficient, reliable, and cost-effective
More informationOutline. EEC-484/584 Computer Networks. Data Link Layer Design Issues. Framing. Lecture 6. Wenbing Zhao Review.
EEC-484/584 Computer Networks Lecture 6 wenbing@ieee.org (Lecture nodes are based on materials supplied by Dr. Louise Moser at UCSB and Prentice-Hall) Outline Review Data Link Layer Design Issues Error
More informationLesson Schedule: Class No. Portion covered per hour (An estimate)
Chapter -3: The Data Link Layer 1 Slide 29: Contents Lesson Schedule: Class No. Portion covered per hour (An estimate) 1. Data Link Layer Design Issues Dates Planned Engaged 2. Error detecting codes 3.
More informationCommunications Software. CSE 123b. CSE 123b. Spring Lecture 3: Reliable Communications. Stefan Savage. Some slides couresty David Wetherall
CSE 123b CSE 123b Communications Software Spring 2002 Lecture 3: Reliable Communications Stefan Savage Some slides couresty David Wetherall Administrativa Home page is up and working http://www-cse.ucsd.edu/classes/sp02/cse123b/
More information6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1
6. Transport Layer 6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1 6.1 Internet Transport Layer Architecture The
More informationINF4/MSc Computer Networking. Lectures 3-4 Transport layer protocols TCP/UDP automatic repeat request
INF4/MSc omputer Networking Lectures 3-4 Transport layer protocols TP/UDP automatic repeat request Transport services and protocols provide logical communication between app processes running on different
More informationCPSC 3600 HW #4 Fall 2017 Last update: 11/9/2017 Please work together with your project group (3 members)
CPSC 3600 HW #4 Fall 2017 Last update: 11/9/2017 Please work together with your project group (3 members) Name: Q 1 Kurose chapter 3, review question R14 Q 2 Kurose chapter 3, review question R15 Q 3 Kurose
More informationChapter 3. The Data Link Layer. Wesam A. Hatamleh
Chapter 3 The Data Link Layer The Data Link Layer Data Link Layer Design Issues Error Detection and Correction Elementary Data Link Protocols Sliding Window Protocols Example Data Link Protocols The Data
More informationTelecommunication Protocols Laboratory Course. Lecture 3
Telecommunication Protocols Laboratory Course Lecture 3 Course map Last time: we discussed protocols of the Medium Access Control (MAC) sub-layer Deal with broadcast channels and their (multi-party) protocols
More informationSliding Window Protocols, Connection Management, and TCP Reliability
1 Sliding Window Protocols, Connection Management, and TCP Reliability 2 Outline Review Sliding window protocols Go-back-n Selective repeat Connection management for reliability TCP reliability Overview
More informationCSC 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 informationCS 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 informationModule 25 TCP Timers and delayed duplicates problem in TCP
Computer Networks and ITCP/IP Protocols 1 Module 25 TCP Timers and delayed duplicates problem in TCP Introduction TCP uses timers for many cases. We have seen a case where it needs a retransmission timer
More informationReliable Transport I: Concepts and TCP Protocol
Reliable Transport I: Concepts and TCP Protocol Stefano Vissicchio UCL Computer Science COMP0023 Today Transport Concepts Layering context Transport goals Transport mechanisms and design choices TCP Protocol
More informationThe Data Link Layer Chapter 3
The Data Link Layer Chapter 3 Data Link Layer Design Issues Error Detection and Correction Elementary Data Link Protocols Sliding Window Protocols Example Data Link Protocols Revised: August 2011 & February
More informationData Link Layer: Overview, operations
Data Link Layer: Overview, operations Chapter 3 1 Outlines 1. Data Link Layer Functions. Data Link Services 3. Framing 4. Error Detection/Correction. Flow Control 6. Medium Access 1 1. Data Link Layer
More information1.Write about the Data Link layer design issues.
1.Write about the Data Link layer design issues. Data Link Layer Design Issues: The data link layer has a number of specific functions it can carry out. These functions include 1. Providing a well-defined
More information16.682: Communication Systems Engineering. Lecture 17. ARQ Protocols
16.682: Communication Systems Engineering Lecture 17 ARQ Protocols Eytan Modiano Automatic repeat request (ARQ) Break large files into packets FILE PKT H PKT H PKT H Check received packets for errors Use
More informationTDTS06: 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 informationTCP over wireless links
CSc 450/550 Computer Communications & Networks TCP over wireless links Jianping Pan (stand-in for Dr. Wu) 1/31/06 CSc 450/550 1 TCP over wireless links TCP a quick review on how TCP works Wireless links
More informationECE 435 Network Engineering Lecture 9
ECE 435 Network Engineering Lecture 9 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 26 September 2017 Announcements HW#4 was posted, due Thursday Hexdump format Midterm next
More informationTSIN02 - Internetworking
Lecture 4: Outline Literature: Lecture 4: Transport Layer Forouzan: ch 11-12 RFC? Transport layer introduction UDP TCP 2004 Image Coding Group, Linköpings Universitet 2 The Transport Layer Transport layer
More information