Google proposes to improve the TCP network protocol
Google is proposing a number of improvements to the fundamental operating principles of the TCP internet protocol.
The company promises that these changes will reduce data transfer delays between client computers and servers by reducing the number of steps required to transfer information.
Google considers the existing protocol suboptimal, primarily because the current TCP architecture requires receiving network packets in their entirety and then acknowledging their receipt with a special response. The company believes that such acknowledgments are irrelevant in today's fast broadband internet environment. Today's connections are orders of magnitude faster than those under which the current internet protocol was developed and tested. Therefore, Google representatives believe that acknowledging packet receipt is nothing more than a waste of time and effort.
Currently, when establishing a connection between a client and server, the computer initiates the sending of three packets before receiving confirmation that the communication session is ready to begin. Google is proposing to increase the number of packets sent to ten. At the same time, the company believes it is necessary to reduce the number of network confirmation packets exchanged between the client and server during data transfer.
Another change: Google plans to reduce the RTO (retransmission timeout)—the time it takes to wait for a server response—from three seconds to one, as well as change the TCP algorithm itself to handle data loss. TCP now reduces the packet transmission rate when a packet is lost. Google believes this is unnecessary.
Last summer, Googleproposed another new developmentSPDY is a new network protocol designed to replace traditional HTTP. The company is currently testing SPDY. According to Google representatives, this protocol can increase the speed of web content access by 30-60%.
Experts say Google's new technology can only be implemented if Microsoft's IIS or Apache servers and browsers do not support it.