1 / 20

Transport Layer

Transport Layer. Foreleser: Carsten Griwodz Email: griff@ifi.uio.no. Transport service. Transport Layer Function. To provide data transport Reliably Efficiently At low-cost For Process-to-process (applications) I.e. at endsystem-to-endsystem

kenyon
Download Presentation

Transport Layer

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Transport Layer Foreleser: Carsten Griwodz Email: griff@ifi.uio.no 1

  2. Transport service 2

  3. Transport Layer Function • To provide data transport • Reliably • Efficiently • At low-cost • For • Process-to-process (applications) • I.e. at endsystem-to-endsystem • If possible independent fromparticularities of the networks used

  4. Transport Protocol Service Access Point Service Interface Application Layer Application Layer 5 Transport Entity Transport Entity 4 Network Layer Network Layer 3 1-2 IP: Message ISO: Transport Protocol Data Unit Transport Service • Connection oriented service • 3 phases • connection set-up • data transfer • disconnect • Connectionless service • Transfer of isolated units • Realization: transport entity • Software and/or hardware • Software part usually contained within the kernel (process, library)

  5. Transport Protocols & Network Services • Transport layer protocoldepends on the quality of the network layer service • ISO Network type A • Network is reliable • Network recognizes data loss as an error • Errors are displayed to the user i.e. acceptable rate of the errors • Minor (for the user acceptable) error rate • Network never duplicates or manipulates packets • Order of sent packets is always maintained • Typically connection oriented network service (CONS) on LANs • ISO Network type B • Like type A, except • Remaining error rate (for data loss) is not acceptable • Typically CONS on (old) WANs • ISO Network type C • Network is unreliable • Errors due to losses, duplication and manipulation of packets, as well as faulty packet sequence errors possible • Errors might remain undetected • Transport protocol has to / should compensate for this • Typically connectionless network service (CNLS) on WANs

  6. End system End system 5 Intermediate system 4 3 3 2 2 1 1 Transport Service • Similar services of • Network layer and transport layer • Why 2 Layers? • Network service • Not to be self-governed or influenced by the user • Independent from application & user • enables compatibility between applications • Provides for example • “only” connection oriented communications • or “only” unreliable data transfer • Transport service • To improve the Network Service Quality • Users and layers want to get from the network layer, e.g. • reliable service • necessary time guarantees

  7. Transport Service • Transport layer • Isolates upper layers from technology, design and imperfections of subnet • Traditionally distinction made between • Layers 1 – 4 • transport service provider • Layers above 4 • transport service user • Transport layer has key role • Major boundary between provider and user of reliable data transmission service

  8. Layer Data Unit Transport Message or TPDU Network Packet Packet header Message header Data link Frame Physical Bit/byte (bitstream) Frame header Message Payload Packet Payload Frame Payload Transport Service: Terminology • Entities exchanged • ISO: Transport Protocol Data Unit (TPDU) • IP: Message • Nesting of messages, packets, and frames

  9. Transport protocols • ISO defines 5 classes: ISO OSI TP0..TP4

  10. Transport Protocols • Class TP 0: simple class • Mechanisms for connect and disconnect • Segmentation / reassembly • No error, sequence or flow control • No expedited data • Class TP 2: multiplexing class • Class 0 including additional multiplexing capability • Multiplexing: several transport layer connections on one network layer connection • Flow control optional • Expedited data optional

  11. Transport Protocols • Class TP 1: basic error recovery • Class 0 including additional error recovery • Error recovery masks resets • TPDU numbering • TPDU storage until ACK • after reset: resynchronization • Expedited data optional • important data for example have a higher priority • i.e. preferred processing before current data is processed • Class TP 3: including multiplexing and error recovery • Class 1 and 2 functions combined • i.e. error recovery, expedited data, multiplexing

  12. Transport Protocols • Class TP 4: error monitoring and recovery • Detects and recovers • TPDU losses and TPDU duplication • sequence errors • Flow control • Multiplexing • Splitting (one transport connection uses several network connections) • Expedited data • Note • IPv4 and IPv6 are connectionless • Unavailable concepts in TCP/IP • Multiplexing • Splitting • No clear definition for ST-II

  13. Transport Protocols • TCP/IP specifies protocols • Services provided implicitely UDP DCCP TCP SCTP Connection-oriented service X X X Connectionless service X Ordered X X Partially Ordered X Unordered X X X Reliable X X Partially Reliable X Unreliable X X X With congestion control X X X Without congestion control X Multicast support X X Multihoming support X

  14. Telnet client Telnet server FTP client FTP server Web client Web server Transport Network Data link Physical Addressing at the Transport Layer • Application • Communication between applications required • Application communicate • locally by interprocess communication • between system via transport services • Transport layer • Interprocess communication via communication networks • Internet Protocol IP • Enables endsystem-to-endsystem communication

  15. 5 Transport Entity Transport Entity 4 Network Layer Network Layer 3 1-2 Addressing at the Transport Layer • Transport address different from network address • Sender (process) must address receiver (process) • for connection setup or individual message • Receiver (process) can be approached by the sender (process) • Define transport addresses: • ISO term: Transport Service Access Point (TSAP) • Internet: port • ATM: AAL-SAP Processes Transport addresses Network addresses

  16. Port 1 Port 2 Port 3 Service B Service A Service C Port 4 Port 5 Addressing at the Transport Layer • 3 types of identifiers: names, addresses and routes • [Shoch 78] • “The name of a resource indicates WHAT we seek,an address indicates WHERE it is,and a route tells HOW TO GET THERE” • Address identifies • Type of service or application • Addresses of services must be known • Addressing by process number is unsuitable • Processes are generated/terminated dynamically, i.e. the process number rarely known • Relationship “service - process” not fix • 1 process can supply multiple services • Various processes can provide same service

  17. Service B C Service A Port 1 Port 2 Port 3 Port Buffer Buffer 1 Buffer 2 Buffer 3 Buffer 4 Buffer 5 Addressing at the Transport Layer • Communication ports • Service • Related to exactly one single port • Port access • Asynchronous or • Synchronous • Port • Associated with buffer

  18. Addressing at the Transport Layer • TCP and UDP have their own assignments • this table shows some examples for TCP (read /etc/services for more)

  19. Addressing at the Transport Layer

  20. Addressing at the Transport Layer • Application • Example • decompression of video data • read process from database or file system • Implementation of application • process, thread • Interface to communication systems • buffers with predefined access mechanisms • Sender and receiver create • Stream or • Socket • several connections share a socket • address: IP address of the endsystem • address: 16-bit port number • 0..1024: predefined ports, “well known” • additional ones managed dynamically • Example • 192.169.100.17:80 socket with IP address 192.169.100.17 and port no. 80

More Related