2011-07-29

Discuss : Intermediate TCP/IP

Routers use IP address information on an IP packet header to determine the interface where the packet should be transferred based on its purpose. During the IP does not ensure the package reaches its destination, he is described as an unreliable protocol, which uses connectionless best-effort delivery. If the packets are placed on the route, arriving in the wrong direction, or transmitted faster than the receiver can accept it, IP alone can not fix the problem. To overcome this problem, the IP associated with TCP.
TCP OperationIP addressing to allow for routing packets between networks. However, IP makes no guarantees about the delivery. Transport layer is responsible for reliable transport and control data flow from source to destination. This is accomplished through the use of sliding window and sequencing numbers during the synchronization process. This process ensures that each host is ready and willing to communicate.
To understand the reliability and flow control, imagine a student who learns a foreign language for one year. Now imagine the students visit the country where the language is used. Students should ask people to repeat words for reliability and to speak slowly in order to understand, which is associated with the concept of flow control. Transport layer, which is a layer 4 of the OSI model, using TCP to provide these services to the layer 5.
Synchronization or three-way handshakeTCP is a connection-oriented protocol. During data transmission, two hosts communicating over the synchronization process to establish a virtual connection for each session between hosts. This synchronization process ensures that both sides are ready for data transmission and allow the equipment to determine the initial sequence number for that session. This process is known as a three-way handshake. This is a three-step process that forms a virtual connection between two pieces of equipment. It is also important to note that the three-way handshake initiated by the client host. To establish a TCP session, host client will use the service port number known to be reached on a host server.

 In the first step, initiating host (client) sends a synchronization packet (SYN flag set) to initialize the connection. This signifies that a packet has a start value Sequence Number which is valid in this segment for the session x. SYN bit in the header indicating a connection request. SYN bit is a single bit in the code field of the TCP segment header. Sequence Number is a 32 bit header fields TCP segments.
In the second step, the other host receives the packet, records the Sequence Number x of the client, and reply with an acknowledgment (ACK flag set). ACK control bit indicates a collection of Acknowledgment Number field contains a valid acknowledgment value. ACK flag is a single bit in the code field of the TCP segment header and Acknowledgment Number is a 32 bit header fields TCP segments. Once the connection is established, the ACK flag set for all segments during the session. Acknowledgment number field contains the next expected sequence number received by this host (x +1). Acknowledgment number x +1 means the host has received all bytes including x, and expects to receive next byte x +1. Host also filed a return session. This includes a TCP segment with sequence numbernya own initial values ​​of y and with the SYN flag set.
In the third step, initiating host responds with an acknowledgment number value of y +1, which is the value of the sequence number host B +1. This signifies that the acknowledgment has been received in advance and terminate the connection process for this session.
It's important to understand that the initial sequence number used to file a communication between two devices. They act as an initial reference value between the two devices. Sequence number to each host a way to declare that the recipient knows the sender responds to demand the right connections.
Windowing and window sizeThe amount of data to be transmitted is often too large to be shipped on a single data segment. In this case, the data must be broken down into smaller parts to allow the correct data transmission. This can be compared to feeding a child. Their food is cut into small pieces that can be accommodated their mouths. In addition, a piece of equipment will not be able to receive data as fast as can be the source to send. Equipment may be busy with another task or the sender is a tough labih equipment.
Once the data is segmented, it must be transmitted to the destination equipment. One of the services provided by TCP is flow control, which governs how data is sent over a given period. The process of flow control is known as windowing.
Window size determines the amount of data that can be transmitted at one time before the destination responds with an acknowledgment. Once a host transmits a number of bytes the size of the window, the host must receive an acknowledgment that the data has been received before he can send other data. For example, if the window size is 1, each byte must be the acknowledgment before the next byte is sent.

 TCP uses windowing to dynamically determine the size of the transmission. Equipment negotiate a window size to allow a certain number of bytes to be transmitted before an acknowledgment.
 This process is dynamically increase reliability window size. Window size may vary based on the acknowledgment.

No comments:

Post a Comment