TCP如何提供可靠的数据传输(参考资料:TCP如何提供可靠传输

TCP的连接的建立是TCP进行可靠的数据传输的基础。后续在建立连接基础上,TCP又提供了如下技术保障数据的可靠的传输

  • TCP根据MSS等数据,把需要传输的数据分割成TCP认为最合适的大小发送。
  • TCP在交付了其报文给网络层后,将启动一个重传定时器,如果在该TCP报文的确认报文不能及时到达,将会启动重传。(差错控制,确认重传)
  • 当TCP数据报到达了目的后,会发送确认报文段给源主机。这个确认不是立即发送,通常将推迟几分之一秒 。(可能会先对报文进行校验)
  • 校验出包有错,丢弃报文段,不给出响应,TCP发送数据端,超时时会重发数据
  • 因为IP数据报的达到可能是无序的,所以我们的TCP报文段也可能是无序到达的,所以需要先对这无序的多个报文段排序后,才交付给应用层
  • 如果收到的TCP报文段是重复的,将丢弃该重复的报文段
  • TCP提供的流量控制
  • TCP提供的拥塞控制
总结

上述说的每个点都是TCP的重要知识点,后续的博客将会一一总结各个点中的重要知识,学习完上面的全部知识,那么TCP也就过关了。另外,差错控制、流量控制和拥塞控制都是要使用一个叫:滑动窗口协议的东西