Networking - Network Models - OSI - Transport Layer
The Transport Layer provides services for segmenting, transmitting, and reassembling data between source and destination hosts. It establishes logical connections and manages the reliability and flow control of data transmission.
- Segmentation and Reassembly: The Transport Layer breaks down the data received from the Session Layer into smaller segments for transmission. At the receiving end, it reassembles the segments into the original data.
- Connection-oriented or Connectionless: The Transport Layer can operate in either connection-oriented mode (reliable but with overhead) or connectionless mode (less reliable but with less overhead). This choice depends on the specific transport protocol being used.
- Connection Establishment and Termination: The Transport Layer establishes and terminates logical connections between source and destination hosts. This involves establishing session parameters, negotiating communication settings, and ensuring synchronization.
- Segmentation and Reassembly: It divides the data received from the Session Layer into smaller segments or packets for transmission over the network. At the receiving end, it reassembles these segments into the original data.
- Reliability and Error Control: The Transport Layer ensures reliable delivery of data by implementing error detection, error correction, and retransmission mechanisms. It also handles packet loss, reordering, and duplicate elimination.
- Flow Control: The Transport Layer manages the flow of data between sender and receiver to prevent congestion and ensure that the receiving host can handle the incoming data at an appropriate rate.
The Transport Layer is used in various network applications and protocols, such as the Transmission Control Protocol (TCP) and the User Datagram Protocol (UDP). It provides services for applications requiring reliable data transfer (TCP) or low-latency, connectionless communication (UDP).
- Transmission Control Protocol (TCP): TCP is a widely used transport protocol that operates in a connection-oriented manner. It provides reliable, ordered, and error-checked delivery of data packets. TCP is commonly used for applications that require guaranteed delivery and error recovery, such as web browsing and file transfers.
- User Datagram Protocol (UDP): UDP is a transport protocol that operates in a connectionless manner. It provides fast, lightweight communication but does not guarantee reliable delivery. UDP is often used for real-time applications, such as video streaming and online gaming, where low latency is crucial.
- Ports: Ports are used to identify specific processes or services running on a host. The Transport Layer uses port numbers to direct incoming data packets to the appropriate application or service on the destination host.