The Transport Layer Chapter 6 12/14/2015www.ishuchita.com1.

Slides:



Advertisements
Similar presentations
Transport Layer. Context of various layers upto Network layer NL : present in LAN and subnet MAC sublayer : not present in Subnets, only in LANs DLL :
Advertisements

CMPE 150 – Winter 2009 Lecture 16 March 3, 2009 P.E. Mantey.
Chapter 6 The Transport Layer.
Computer Networks, Fifth Edition by Andrew Tanenbaum and David Wetherall, © Pearson Education-Prentice Hall, 2011 The Transport Layer Chapter
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Chapter 6 Transport Layer.
Computer Networks NYUS FCSIT Spring 2008 Milos STOLIC, Bs.C. Teaching Assistant
Chapter 6 The Transport Layer.
Transmission Control Protocol (TCP)
I N THE N AME OF G OD C OMPUTER N ETWORKS C HAPTER 6: T HE T RANSPORT L AYER Dr. Shahriar Bijani Shahed University May 2014.
Chapter 6-2 The Transport Layer
TELE202 Lecture 14 TCP/UDP (2) 1 Lecturer Dr Z. Huang Overview ¥Last Lecture »TCP/UDP (1) »Source: chapter 17 ¥This Lecture »TCP/UDP (2) »Source: chapter.
TRANSPORT LAYER  Session multiplexing  Segmentation  Flow control (TCP)  Connection-oriented (TCP)  Reliability (TCP)
Copyright 1999, S.D. Personick. All Rights Reserved. Telecommunications Networking II Lecture 32 Transmission Control Protocol (TCP) Ref: Tanenbaum pp:
Chapter 6 The Transport Layer.
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 26 Introduction to Computer Networks.
Transport Layer Problems with network layer services
The Transport Layer Chapter 6. The TCP Segment Header TCP Header.
The Transport Layer Chapter 6. Performance Issues Performance Problems in Computer Networks Network Performance Measurement System Design for Better Performance.
1 © 2003, Cisco Systems, Inc. All rights reserved. CCNA 1 v3.0 Module 11 TCP/IP Transport and Application Layers.
The Transport Layer Chapter 6. The Transport Service Services Provided to the Upper Layers Transport Service Primitives Berkeley Sockets An Example of.
The Transport Layer Chapter 6. The Transport Service Services Provided to the Upper Layers Transport Service Primitives Berkeley Sockets An Example of.
William Stallings Data and Computer Communications 7 th Edition (Selected slides used for lectures at Bina Nusantara University) Transport Layer.
The OSI Reference Model
TCP. Learning objectives Reliable Transport in TCP TCP flow and Congestion Control.
Gursharan Singh Tatla Transport Layer 16-May
Process-to-Process Delivery:
Chapter 6 The Transport Layer.
The Transport Layer.
The Transport Layer Chapter 6.
Computer Networks, Fifth Edition by Andrew Tanenbaum and David Wetherall, © Pearson Education-Prentice Hall, 2011 The Transport Layer Chapter 6.
1 7-Oct-15 OSI transport layer CCNA Exploration Semester 1 Chapter 4.
SMUCSE 4344 transport layer. SMUCSE 4344 transport layer end-to-end protocols –transport code runs only on endpoint hosts encapsulates network communications.
The Transport Layer.
ECE453 – Introduction to Computer Networks Lecture 14 – Transport Layer (I)
The Transport Layer Chapter 6. The Transport Service The transport layer is the heart of the whole protocol hierarchy It provides reliable data transport.
TCP/IP Transport and Application (Topic 6)
Fall 2005 By: H. Veisi Computer networks course Olum-fonoon Babol Chapter 6 The Transport Layer.
CCNA 1 v3.0 Module 11 TCP/IP Transport and Application Layers.
(from Tanenabaum: “Computer Networks” Chapter 1) and
CSCI 465 D ata Communications and Networks Lecture 27 Martin van Bommel CSCI 465 Data Communications & Networks 1.
Networking Basics CCNA 1 Chapter 11.
The Transport Layer Chapter 6. Transport Service Primitives The primitives for a simple transport service.
The Transport Layer Chapter Computer Networks, Fifth Edition by Andrew Tanenbaum and David Wetherall, © Pearson Education-Prentice Hall,
5. The Transport Layer 5.1 Role of Transport Layer It bridge the gab between applications and the network layer. Provides reliable cost-effective data.
Page 12/9/2016 Chapter 10 Intermediate TCP : TCP and UDP segments, Transport Layer Ports CCNA2 Chapter 10.
Chapter 6 Transport Layer
4343 X2 – The Transport Layer Tanenbaum Ch.6.
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).
Distributed Systems 8. Transport Layer Simon Razniewski Faculty of Computer Science Free University of Bozen-Bolzano A.Y. 2014/2015.
Computer Networks 1000-Transport layer, TCP Gergely Windisch v spring.
The Transport Layer Dr. ir. S.S. Msanjila RIS 251.
Distributed Systems 12. Transport Layer Simon Razniewski Faculty of Computer Science Free University of Bozen-Bolzano A.Y. 2015/2016.
The Transport Layer Implementation Services Functions Protocols
Unit-7 The Transport Layer.
Chapter 6 The Transport Layer.
PART 5 Transport Layer Computer Networks.
Chapter 6 The Transport Layer.
The Transport Layer Chapter
Transport Layer: Sliding Window Reliability
Magda El Zarki Professor, ICS UC, Irvine
Transport layer issues Johan Lukkien
Transport Layer Unit 5.
Chapter 6 The Transport Layer The Transport Service & Elements of Transport Protocols.
Process-to-Process Delivery:
PART V Transport Layer.
The Transport Layer Chapter 6.
Process-to-Process Delivery: UDP, TCP
Computer Networks Protocols
Transport Layer 9/22/2019.
Presentation transcript:

The Transport Layer Chapter 6 12/14/2015www.ishuchita.com1

The Transport Service Services Provided to the Upper Layers Transport Service Primitives Berkeley Sockets An Example of Socket Programming: –An Internet File Server 12/14/2015www.ishuchita.com2

Services Provided to the Upper Layers The network, transport, and application layers. 12/14/2015www.ishuchita.com3

Transport Service Primitives The primitives for a simple transport service. 12/14/2015www.ishuchita.com4

Transport Service Primitives (2) The nesting of TPDUs, packets, and frames. 12/14/2015www.ishuchita.com5

Transport Service Primitives (3) A state diagram for a simple connection management scheme. Transitions labeled in italics are caused by packet arrivals. The solid lines show the client's state sequence. The dashed lines show the server's state sequence. 12/14/2015www.ishuchita.com6

Berkeley Sockets The socket primitives for TCP. 12/14/2015www.ishuchita.com7

Socket Programming Example: Internet File Server Client code using sockets /14/2015www.ishuchita.com8

Socket Programming Example: Internet File Server (2) Client code using sockets. 12/14/2015www.ishuchita.com9

Elements of Transport Protocols Addressing Connection Establishment Connection Release Flow Control and Buffering Multiplexing Crash Recovery 12/14/2015www.ishuchita.com10

Transport Protocol (a) Environment of the data link layer. (b) Environment of the transport layer. 12/14/2015www.ishuchita.com11

Addressing TSAPs, NSAPs and transport connections. 12/14/2015www.ishuchita.com12

Connection Establishment How a user process in host 1 establishes a connection with a time-of-day server in host 2. 12/14/2015www.ishuchita.com13

Connection Establishment (2) (a) TPDUs may not enter the forbidden region. (b) The resynchronization problem. 12/14/2015www.ishuchita.com14

Connection Establishment (3) Three protocol scenarios for establishing a connection using a three-way handshake. CR denotes CONNECTION REQUEST. (a) Normal operation, (b) Old CONNECTION REQUEST appearing out of nowhere. (c) Duplicate CONNECTION REQUEST and duplicate ACK. 12/14/2015www.ishuchita.com15

Connection Release Abrupt disconnection with loss of data. 12/14/2015www.ishuchita.com16

Connection Release (2) The two-army problem. 12/14/2015www.ishuchita.com17

Connection Release (3) Four protocol scenarios for releasing a connection. (a) Normal case of a three-way handshake. (b) final ACK lost. 6-14, a, b 12/14/2015www.ishuchita.com18

Connection Release (4) (c) Response lost. (d) Response lost and subsequent DRs lost. 6-14, c,d 12/14/2015www.ishuchita.com19

Flow Control and Buffering (a) Chained fixed-size buffers. (b) Chained variable-sized buffers. (c) One large circular buffer per connection. 12/14/2015www.ishuchita.com20

Flow Control and Buffering (2) Dynamic buffer allocation. The arrows show the direction of transmission. An ellipsis (…) indicates a lost TPDU. 12/14/2015www.ishuchita.com21

Multiplexing (a) Upward multiplexing. (b) Downward multiplexing. 12/14/2015www.ishuchita.com22

Crash Recovery Different combinations of client and server strategy. 12/14/2015www.ishuchita.com23

A Simple Transport Protocol The Example Service Primitives The Example Transport Entity The Example as a Finite State Machine 12/14/2015www.ishuchita.com24

The Example Transport Entity The network layer packets used in our example. 12/14/2015www.ishuchita.com25

The Example Transport Entity (2) Each connection is in one of seven states: 1.Idle – Connection not established yet. 2.Waiting – CONNECT has been executed, CALL REQUEST sent. 3.Queued – A CALL REQUEST has arrived; no LISTEN yet. 4.Established – The connection has been established. 5.Sending – The user is waiting for permission to send a packet. 6.Receiving – A RECEIVE has been done. 7.DISCONNECTING – a DISCONNECT has been done locally. 12/14/2015www.ishuchita.com26

The Example Transport Entity (3) 12/14/2015www.ishuchita.com27

The Example Transport Entity (4) 12/14/2015www.ishuchita.com28

The Example Transport Entity (5) 12/14/2015www.ishuchita.com29

The Example Transport Entity (6) 12/14/2015www.ishuchita.com30

The Example Transport Entity (7) 12/14/2015www.ishuchita.com31

The Example Transport Entity (8) 12/14/2015www.ishuchita.com32

The Example Transport Entity (9) 12/14/2015www.ishuchita.com33

The Example Transport Entity (10) 12/14/2015www.ishuchita.com34

The Example as a Finite State Machine The example protocol as a finite state machine. Each entry has an optional predicate, an optional action, and the new state. The tilde indicates that no major action is taken. An overbar above a predicate indicate the negation of the predicate. Blank entries correspond to impossible or invalid events. 12/14/2015www.ishuchita.com35

The Example as a Finite State Machine (2) The example protocol in graphical form. Transitions that leave the connection state unchanged have been omitted for simplicity. 12/14/2015www.ishuchita.com36

The Internet Transport Protocols: UDP Introduction to UDP Remote Procedure Call The Real-Time Transport Protocol 12/14/2015www.ishuchita.com37

Introduction to UDP The UDP header. 12/14/2015www.ishuchita.com38

Remote Procedure Call Steps in making a remote procedure call. The stubs are shaded. 12/14/2015www.ishuchita.com39

The Real-Time Transport Protocol (a) The position of RTP in the protocol stack. (b) Packet nesting. 12/14/2015www.ishuchita.com40

The Real-Time Transport Protocol (2) The RTP header. 12/14/2015www.ishuchita.com41

The Internet Transport Protocols: TCP Introduction to TCP The TCP Service Model The TCP Protocol The TCP Segment Header TCP Connection Establishment TCP Connection Release TCP Connection Management Modeling TCP Transmission Policy TCP Congestion Control TCP Timer Management Wireless TCP and UDP Transactional TCP 12/14/2015www.ishuchita.com42

The TCP Service Model Some assigned ports. PortProtocol Use 21 FTP File transfer 23 Telnet Remote login 25 SMTP 69 TFTP Trivial File Transfer Protocol 79 FingerLookup info about a user 80 HTTP World Wide Web 110 POP-3 Remote access 119 NNTP USENET news 12/14/2015www.ishuchita.com43

The TCP Service Model (2) (a) Four 512-byte segments sent as separate IP datagrams. (b) The 2048 bytes of data delivered to the application in a single READ CALL. 12/14/2015www.ishuchita.com44

The TCP Segment Header TCP Header. 12/14/2015www.ishuchita.com45

The TCP Segment Header (2) The pseudoheader included in the TCP checksum. 12/14/2015www.ishuchita.com46

TCP Connection Establishment (a) TCP connection establishment in the normal case. (b) Call collision /14/2015www.ishuchita.com47

TCP Connection Management Modeling The states used in the TCP connection management finite state machine. 12/14/2015www.ishuchita.com48

TCP Connection Management Modeling (2) TCP connection management finite state machine. The heavy solid line is the normal path for a client. The heavy dashed line is the normal path for a server. The light lines are unusual events. Each transition is labeled by the event causing it and the action resulting from it, separated by a slash. 12/14/2015www.ishuchita.com49

TCP Transmission Policy Window management in TCP. 12/14/2015www.ishuchita.com50

TCP Transmission Policy (2) Silly window syndrome. 12/14/2015www.ishuchita.com51

TCP Congestion Control (a) A fast network feeding a low capacity receiver. (b) A slow network feeding a high-capacity receiver. 12/14/2015www.ishuchita.com52

TCP Congestion Control (2) An example of the Internet congestion algorithm. 12/14/2015www.ishuchita.com53

TCP Timer Management (a) Probability density of ACK arrival times in the data link layer. (b) Probability density of ACK arrival times for TCP. 12/14/2015www.ishuchita.com54

Wireless TCP and UDP Splitting a TCP connection into two connections. 12/14/2015www.ishuchita.com55

Transitional TCP (a) RPC using normal TPC. (b) RPC using T/TCP. 12/14/2015www.ishuchita.com56

Performance Issues Performance Problems in Computer Networks Network Performance Measurement System Design for Better Performance Fast TPDU Processing Protocols for Gigabit Networks 12/14/2015www.ishuchita.com57

Performance Problems in Computer Networks The state of transmitting one megabit from San Diego to Boston (a) At t = 0, (b) After 500 μsec, (c) After 20 msec, (d) after 40 msec. 12/14/2015www.ishuchita.com58

Network Performance Measurement The basic loop for improving network performance. 1.Measure relevant network parameters, performance. 2.Try to understand what is going on. 3.Change one parameter. 12/14/2015www.ishuchita.com59

System Design for Better Performance Rules: 1.CPU speed is more important than network speed. 2.Reduce packet count to reduce software overhead. 3.Minimize context switches. 4.Minimize copying. 5.You can buy more bandwidth but not lower delay. 6.Avoiding congestion is better than recovering from it. 7.Avoid timeouts. 12/14/2015www.ishuchita.com60

System Design for Better Performance (2) Response as a function of load. 12/14/2015www.ishuchita.com61

System Design for Better Performance (3) Four context switches to handle one packet with a user-space network manager. 12/14/2015www.ishuchita.com62

Fast TPDU Processing The fast path from sender to receiver is shown with a heavy line. The processing steps on this path are shaded. 12/14/2015www.ishuchita.com63

Fast TPDU Processing (2) (a) TCP header. (b) IP header. In both cases, the shaded fields are taken from the prototype without change. 12/14/2015www.ishuchita.com64

Fast TPDU Processing (3) A timing wheel. 12/14/2015www.ishuchita.com65

Protocols for Gigabit Networks Time to transfer and acknowledge a 1-megabit file over a 4000-km line. 12/14/2015www.ishuchita.com66