TCP协议又叫传输控制协议,是一种面向连接的可靠传输协议。
优势:1、面向连接2、可靠
面向连接:数据传输前,收发双方会先建立一条逻辑通路。可以简单理解为两个人打电话需要优先与附近的信号基站建立连接才可以通话。
可靠:不丢 不会被更改
以上是TCP的头部信息
任何一款协议的工作机制一定是通过报文来完成的
一、源端口以及目标端口:作用与源IP目标IP类似
二、序列号(Sequence Number简:seq)--------------
三、确认序列号(Acknowledgment Number)-------------------
四、数据偏移(Data Offset):TCP头部当中的数据大小
五、六位标志位(URG、ACK、PSH、RST、SYN、FIN):
1、SYN---同步位---是在TCP三次握手建立通道时的标记
2、ACK---确认位---当该标记位置为1时,确认序列号有意义
3、FIN---代表释放TCP连接
六、窗口(window)-------------------
七、checksum:用于检查数据是否完整
八、Urgent Pointer---------------
九、可选项(options)-----------
十、填充位(Padding)-----------
TCP分段:因为IP分片后,TCP协议无法保证数据的可靠性传输;故而使用TCP协议进行封装的文件不允 许进行IP分片,而又因为MTU存在,需要将大文件分为小文件,该操作由TCP协议完成。
MTU---最大传输单元----在以太网当中为1500字节----设备双方通过协商得出MTU数值后,则在链路中 传输的报文的最大字节为MTU数值。
MSS---最大传输段===MTU-IP头部-TCP头部
在TCP协议中,每一个报文都需要有序列号信息。
可靠性 确认机制----每收到一个TCP数据段,都需要发送一次确认报文。
重传机制----超时重传,当一个数据段中的某个报文丢失,发送端会主动重新发送一次该报文。
排序机制----传输数据段时,被分为多个报文,从不同路径传输,最终达到目的地的顺序会被打乱, 需要根据序列号字段进行重新排序。
流控机制(滑动窗口机制):可以通过调节窗口大小(Windows)来对流量进行控制
面向连接
三次握手四次挥手机制
三次握手:
四次挥手: