TCP 是一种面向连接的、可靠的、基于字节流的传输层通信协议。
功能特点:
分段:
应用层向 TCP 层发送应用数据流, TCP 则把数据流分割成适当长度的报文段,最大传输段大小( MSS)通
常受该计算机连接的网络的数据链路层的最大传送单元( MTU)限制。之后 TCP 把数据包传给 IP 层,由它
来通过网络将包传送给接收端实体的 TCP 层。
可靠性保证:
TCP 为了保证报文传
[
输的可靠,就给每个包一个序号,同时序号也保证了传送到接收端实体的包的按序接
收。然后接收端实体对已成功收到的字节发回一个相应的确认 (ACK) ;如果发送端实体在合理的往返时延
(RTT) 内未收到确认,那么对应的数据(假设丢失了)将会被重传。
正确性校验:
在数据正确性与合法性上, TCP 用一个校验和函数来检验数据是否有错误,在发送和接收时都要计算校验
和。在保证可靠性上,采用超时重传和捎带确认机制。
在流量控制上,采用滑动窗口协议,协议中规定,对于窗口内未经确认的分组需要重传。
在拥塞控制上,采用广受好评的 TCP 拥塞控制算法(也称 AIMD 算法)。该算法主要包括三个主要部分:
1 )加性增、乘性减; 2 )慢启动; 3 )对超时事件做出反应。