Key Characteristics of TCP/IP
How should I design a network protocol to transmit data quickly while keeping the data order without any data loss? TCP/IP has been designed with this consideration. The following are the key characteristics of TCP/IP required to understand the concept of the stack.
TCP and IPTechnically, since TCP and IP have different layer structures, it would be correct to describe them separately. However, here we will describe them as one.
1. CONNECTION-ORIENTED
First, a connection is made between two endpoints (local and remote) and then data is transferred. Here, the "TCP connection identifier" is a combination of addresses of the two endpoints, having
<local IP address, local port number, remote IP address, remote port number>
type.2. BIDIRECTIONAL BYTE STREAM
Bidirectional data communication is made by using byte stream.
3. IN-ORDER DELIVERY
A receiver receives data in the order of sending data from a sender. For that, the order of data is required. To mark the order, 32-bit integer data type is used.
4. RELIABILITY THROUGH ACK
When a sender did not receive ACK (acknowledgement) from a receiver after sending data to the receiver, the sender TCP re-sends the data to the receiver. Therefore, the sender TCP buffers unacknowledged data from the receiver.
5. FLOW CONTROL
A sender sends as much data as a receiver can afford. A receiver sends the maximum number of bytes that it can receive (unused buffer size, receive window) to the sender. The sender sends as much data as the size of bytes that the receiver's receive window allows.
6. CONGESTION CONTROL
The congestion window is used separately from the receive window to prevent network congestion by limiting the volume of data flowing in the network. Like the receive window, the sender sends as much data as the size of bytes that the receiver's congestion window allows by using a variety of algorithms such as TCP Vegas, Westwood, BIC, and CUBIC. Different from flow control, congestion control is implemented by the sender only.
Data Transmission
As indicated by its name, a network stack has many layers. The following Figure 1 shows the layer types.
Figure 1: Operation Process by Each Layer of TCP/IP Network Stack for Data Transmission.
No comments:
Post a Comment