The Transport Layer

Introduction

It is the heart of the entire protocol hierarchy, providing reliable, efficient, and inexpensive transport from source machine to destination machine, regardless of the physical network(s) in use. To achieve this goal, the Transport Layer makes use of the services provided by the network layer. The hardware or software that does the work is called  a transport entity. 

  • On the network interface card

  • At the core of the operating system

  • In a separate user process

  • In a library package that is part of the network applications

In some cases, the carrier can provide reliable transport services, in which case the transport entity resides in special interface machines at the edge of the subnet to which the HOSTs connect.

There are two types of transport service: connection-oriented and connectionless, (as in the network service), in both cases the connections have 3 phases: Establishment, Data Transfer, Release (transport services, and release). network are very similar) so why isn't a single layer enough? The answer is that because the Network Layer is part of a communication subnetwork, it has disadvantages. Therefore, what happens when there are connection problems? Users, not having control over the subnet, cannot troubleshoot. For this reason, a layer is necessary, a layer above the network layer that improves the quality of service. If in the middle of a long transmission, the transport entity is informed that its network connection has terminated, with no indication of what happened, the transport entity , you can communicate with the  remote transport entity , and through this new connection ask to be informed about what data arrived and what did not restart from the interruption.

transport_layer

The transport layer insulates the upper layers from the technology, design, and imperfections of the subnetwork.

The transport layer is the boundary between the provider and the user of the reliable data transmission service.

Quality of service parameters, specific to the transport layer

Connection Establishment Delay Time that elapses between the request for a connection and the confirmation of the user
Connection establishment failure probability Possibility that a connection will not be established within a maximum amount of time.
Performance Measures the number of bytes of data transferred per second
transit delay It measures the time between the sending of a message and its reception by the destination.
Residual error rate Measures the number of lost or altered messages as a fraction of the total sent.
Protection Mechanism by which the user indicates his interest in the transport layer providing protection against unauthorized third parties
Priority Mechanism for a user to indicate which connections are more important.
Tenacity The probability that the transport layer itself will terminate a transmission due to internal problems or congestion.

Primitives of a simple transport service

All these primitives are encapsulated in TPDU (Transport Protocol Data Unit)

TPDU

LIST
CONNECT
SEND
RECEIVE
DISCONNECT

Transport Protocol Elements

The transport service is implemented by means of a transport protocol that performs functions such as error control, sequence and flow control, etc.

Addressing

To establish a connection between two application processes, the method normally used is to define transport addresses at which the processes can wait for connection requests. On the Internet these endpoints are peers:

· IP address, local port àNSAP

AAL-SAP (run: yes">&nbe: EN-US"> TSAP

Connection scheme.

A connection scheme used by UNIX HOSTs on the Internet is known as the initial connection protocol. Instead of every conceivable server listening on a well-known TSAP, every machine that wants to serve remote users has a special process server that acts as a proxy. (proxy

Establishing a connection.

Establishing a connection is surprisingly complicated. Since the problem occurs when the network can lose, store or duplicate packets, therefore the solution is to try to maintain a subnet with the least possible congestion, for this the lifetime of the packets must be restricted, for this there are the following techniques:

1. Restricted Subnet Design

2. Hop counter in each packet

3. Timestamp on each package.

The first prevents packets from cycling, the second consists of incrementing the hop count each time the packet is forwarded, and the third requires that each packet carry the time it was created. By having the lifetime of the packets limited, it is possible to propose an error-proof way of establishing secure connections.

Release a connection

Asymmetric release.- It is the way the telephone system works, when a party hangs up, the connection is lost.

Symmetric release.- treats the connection as two different unidirectional connections, and requires that each of them be released separately.

If neither party is ready to disconnect until it is sure that the other is ready to disconnect as well, run: yes"> the disconnect will occur.

INTERNET TRANSPORT PROTOCOLS

The Internet has 2 main protocols, TCP (it is connection oriented) and UDP (basically IP with the addition of a short header)

TCP(Transmission Control Protocol) Transmission Control Protocol: It was designed to provide a reliable stream of bytes. An internetwork is different than a single network because the different parts can have vastly different topologies, bandwidths, delays, packet sizes, and other parameters. TCP was designed to dynamically adapt to the properties of lrun: yes"> and to be robust against different types of failures.

It was formally defined in RFC-793.

A TCP-aware machine has a TCP transport entity. The transport service is obtained by having both the sender and the receiver create endpoints, called sockets.