1 / 18

The Transport Layer (L4)

The Transport Layer (L4). Provides an end-to-end, reliable transport service between l4 entities Reliable - error-free, in-sequence, no loss or duplication Typically connection-oriented can be connectionless depends on needs of application. ISO Transport Layer.

sebastian
Download Presentation

The Transport Layer (L4)

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. The Transport Layer (L4) • Provides an end-to-end, reliable transport service between l4 entities • Reliable - error-free, in-sequence, no loss or duplication • Typically connection-oriented • can be connectionless • depends on needs of application

  2. ISO Transport Layer • ISO classify subnets as type A, B and C • (reliable to unreliable) • Define 5 different Layer 4 protocols to operate over these 3 types • Class 4 protocols (TP4) is defined to operate over an unreliable network • TP4 functionality almost identical to TCP

  3. Connection oriented service • typical 3 phase connection • establish connection • data transfer • terminate connection • T-Connect, T-Data, T-Disconnect services, with service primitives • .request • .indication • .response • .confirm

  4. Parameters associated with primitives, e.g. • Addressing • Quality of Service parameters • Addresses are T-SAP identifiers • (Sockets in TCP/IP terminology) • Can be well known addresses • Can be ‘discovered’ at connection set-up time • T-Connect can then be directed to appropriates • address, T-SAP identifier (socket)

  5. Quality of service is negotiated. • Source specifies requirements • network and destination agree or modify these. • Typical QoS parameters • throughput, end-to-end delay, error rate, etc • Connection requests can be denied by local or remote L4 entity

  6. L4 has very similar functionality to L2 (link layer), but • L2 operates (typically) across a link • L4 operates end-to-end (across a network)

  7. Main issues are:- • Connection establishment and termination. • Error and flow control • Buffering and multiplexing.

  8. The problems arising from these issues are:- • how to guarantee ordered delivery of PDUs to the users • how to ensure that only legitimate connections are established • how to ensure that connections are broken down in a proper manner • how to ensure that connections are terminated correctly • how to separate acknowledgements from flow control, i.e. • Tell source everything has arrived OK • send / don’t send any more (yet)

  9. Ordered delivery • relies on every (data) TPDU being numbered • SREJ typically used at L4 for error recovery, this impacts on • number of TPDUs which can be ‘in transit’ • remember connection is across a network • connection distance is long • potential inefficient use of channel capacity • need long sequence numbers • buffering at destination

  10. Long connection distance can cause other problems • if connectionless layer 3 in operation • TPDUs can take different routes • therefore can get delayed (lost) • Can’t therefore allow same sequence numbers to be reused between different connections • else a delayed TPDU, from a terminated call, could arrive and be accepted • Initial Sequence Numbers defined at connection establishment

  11. Connection establishment phase - three-way handshake • CR(Connection Request) sent by source, with proposed start sequence no • CR(ISN = x) • CC (Connect Confirm) sent by destination, with ack of x, and their own start sequence no • CC(ISN=y, ack=x) • Source acks CC • ACK(seq = x, ack=y) • Only valid connections will be established

  12. Connection Termination • Three way handshake also used to ensure all TPDUs have arrived before connection terminated • TPDUs are DR and DC, e.g. • DR(last sent = a, ack =b) • DC(last sent = b + 2, ack = a) • Ack(last sent = a, ack = b+2) • Connection will remain opern until final Ack is received

  13. Error Control • Typical ARQ, but with sequence numbers constraints outlined above • clearly includes acks, retransmissions, etc, as appropriate • Can also use checksum on data

  14. Flow Control • Flow Control is a more difficult problem • SREJ typically used for error recovery • essential if error control is across the network • essential if connectionless network (L3) under L4 • Need to buffer out of sequence frames • Need large buffers at destination, to buffer out of sequence TPDUs

  15. Hence, Ack cannot be misinterpreted as meaning • ‘I have acked another 2 TPDUs’ • ‘So, you can send 2 more TPDUs’ • Ack means TPDUs have arrived correctly • Permission to transmit more data must be signalled separately • this is a flow control issue

  16. Mechanics of separate Acks and Flow Control • Acks (and certain other TPDUs) have a separate CR(credit field) • e.g. (AK=n, CR=m) • Acking upto TPDU n, permission to send m TPDUs (after n) • Flow control is achieved by adjusting value of m • m may be zero • Timers used (as for L2) to ensure deadlock doesn’t occur

  17. Multiplexing • Upwards and Downwards multiplexing allowed • Upwards Multiplexing • Several transport connections using one layer 3 connection • Multiple calls to the same destination • Downwards Multiplexing • One L4 connection spread over multiple L3 connections • Necessary if L3 connect slow, and high data rate to transmit • One-to-one multiplexing more common

  18. Summary - L4 Functionality • To insulate application (upper layers from subnet (lower 3 layers) • End-to-end (connection oriented) service • Ordered delivery of TPDUs • Issues and sequence number selection and sequence number length • Ensuring only valid connections accepted • Need for 3 way hand shake • Ensuring connections terminated correctly

More Related