The Transport layer enables delivery of data packets to the
specific application running on the destination host. The Transport layer
divides a data packet into data segments of uniform size, to which it assigns
sequence numbers. Each sequence number identifies the segment and the associated
data packet. The sequence number can identify the data packets that are lost or
corrupted during transmission. The Transport layer also applies flow,
connection, and error control mechanisms to a data packet.
The Transport layer implements two types of connection
controls: connectionless and connection-oriented. In connectionless control, the
Transport layer treats each data segment as a separate message, which is
delivered to the Transport layer of the destination network. However, in
connection-oriented control, the Transport layer of the source network first
establishes a connection with the Transport layer of the destination network,
then transmits the data segments. Thereafter, the connection between the two
Transport layers is terminated.