TCP高性能的保证
TCP传输相比于UDP传输,其更具有可靠性,安全性。但是传输效率与速度都比UDP要稍逊一筹。不过TCP协议自身是保证其效率及性能的。
TCP协议保证高性能的方式有:
- 滑动窗口
- 快速重传
- 延迟应答
- 捎带应答
滑动窗口
在保证TCP传输的可靠的性的时候,其中有一条就是确认应答。倘若是每发送一条数据,就等待一次ACK应答的话。大量的时间就会浪费在数据的往返上,这样性能会大大降低。如果能够一次发送多条数据,就可以大大的提高性能(实质是将多个数据等待的ACK响应时间重叠)。
窗口大小指的是无需等待ACK应答可发送的数据最大值。
如图,假设窗口大小为4000。那么就是是说图上1001~5001之间的数据是可以一次性全部发送,并且不需要等待ACK响应的。当发送完这4000的数据后,此时等待。等到ACK响应中确认收到1001~2000的数据时,滑动窗口右移。
以此类推。滑动窗口内部的数据都是已经发送但是没有收到ACK应答的