|
|
Fast TCP; an explanation |
![]() |
|---|
| The Transport Control Protocol (TCP) used on the Internet is faster than the X.25 protocol (because of less overhead) and yet just as reliable. But it can be made to use the available transmission capacity better than it commonly does. TCP is the protocol that keep track of the data packets transmitted, and it works closely with IP (the Internet Protocol). TCP:s responsibility is to guarantee that all data packets arrive at their destinations. It does this by numbering the packets and requesting arrival confirmation from the recipients within a certain time interval. If such ACKs (Acknowledgements) are not received, the packets are retransmitted, which of course requires some extra transmission capacity. | ![]() |
|---|
We can see from this short explanation above that there are three factors that can reduce network capacity, as far as TCP is concerned:
|
But then, there are factors that can be remedied. The number of packets that are sent in a bunch, before the sender wants an ACK (= Acknowledgement of their proper arrival). It is not a good idea to make this bunch big, because if no ACK arrives the whole bunch (not just single packets) have to be resent, since the sender cannot know which packets (if any) failed to arrive safely and un-corrupted. Nor should this bunch be too small, because too much total time might then be wasted, waiting for ACKs. The bunch of packets should have an "optimum size". This size is arrived at through "negotiations" between sender and receiver. This is done by the sender sending packets at low speed, and then increasing this speed until the receiverīs buffer for storing incoming data gets full. This happens because the receiver, at a certain speed, can no longer process incoming data fast enough. This is communicated to the sender, which consequently reduces transmission speed. |
Itīs bit more complex than this, however. There can be other computers along they way, such as routers. If their buffers get full, they will discard packets that they cannot handle, and the sender will not receive any ACKs for those. Apart from re-transmitting those packets, this will also cause the sender to reduce transmission speed. But; as soon as things go smoothly, the sender increases transmission speed again, until forced to reduce speed, and so on. This creates the jagged appearance in the figure above, and one can easily see that some network capacity goes unused, insofar as the receiver and routers along the way now and then have capacity in their buffers which is not fully used. The remedy? Well, one can trick the sender into believing that the receiver always has a full buffer. Routers along the way can have their software altered so as to recognize ACKs when they come. If the receiverīs buffer is getting filled, the router can keep these ACKs a moment before sending them on. This delay makes the sender believe that the receiver has a fuller buffer than is actually the case, and the transmission speed stays at a more stable value, closer to the actual capacity of the receiver. Thatīs what is called "Fast TCP". |
|
Last Updated: 2007-01-02
| Author: Ove Johnsson |
|---|