CCNAHelp.Com |
|
Archives |
7 layer OSI ModelThe Transport Layer:TCP :- Its stands true to its name (Transmission control protocol) because it not only ensures a reliable transport but also a controlled transport. Let me explain my statement, when I say reliable transport it means the data delivery is ensured and when I say controlled transport it means congestion control in other words, don't send the data if the resources at the other end are busy. Let us talk about how the functionality of reliable transport is accomplished at this layer. The concept is quite straight forward, for every packet which is sent the sender requires an acknowledgement from the receiver. If the acknowledgement is not received the packet is resent. One can imagine that this would definitely slow down the transport of packets but this ensure reliability which is the main stay of several applications. If reliability of data is not a inherent requirement the application would be better off using UDP at the transport layer which is much faster as it does not involve the cumbersome process of acknowledging the receipt of every packet. Another point to remember is that TCP is a connection oriented protocol, for every session that the client establishes towards the server TCP establishes a connection by exchanging initiation or handshake packets and once the connection is established data is sent two-way or full duplex over this connection. TCP follows a three way handshaking mechanism to establish a connection in other words three packets (syc, syc+ack and ack) are involved in making a connection. The sequence of events is as below 1) The client sends the SYC segment which contains information about the initial sequence number (ISN) which would be any random number which the clients seeks to use as the initial sequence number for the packets which would be transferred later. There is no data in the sync segment, its just a control packet. 2) The server sends a SYC+ACK segment, it is just one control packet with SYC and ACK flags set, the purpose of the ACK flag is to acknowledge the reciept of the SYC segment sent by the client. The server also uses this segment to initialize the ISN that would be used by the server while sending packets to the client. I wouldn't want to complicate things here but I would want to mention that the when the server sends this SYC+ACK packet it consumes the first sequence number or ISN so when the data transfer starts it would start with ISN+1. It is the same with the client also. 3) The client sends the response to the SYC+ACK packet sent by the server by sending the ACK segment to finish the 3-way handshake. Just to have the statistics clear remember that SYC segment sent by the client consumes one sequence number, SYC+ACK sent by the server consumes a sequence number but ACK segment sent finally by client doesn't consume any sequence number. The thumb-rule is that ACK packets don't consume sequence number even during the data transfer phase. Continue to... |
|
Home | Advertise | Mail | Contact Form | Legal Notice | Useful Resources
Copyrights © 2006, CCNAhelp.com |
|