UDP:无连接;不保证可靠;面向报文的;
TCP:面向连接;提供可靠交付;面向字节流(把应用层的数据分包,每个包装一些字节;不关心应用层给的包多大,而是根据网络状况,窗口大小决定)
TCP报文:
序号:原数据中的第几个字节
确认号(ack):到第几个字节都收到
窗口:我的窗口(接受窗口)有多大
ACK:1用于一般的数据包,0用于握手确认
选项:MSS(最大数据报文)+ 首部=数据包,MSS可以尽量大,但是在IP层不被分片
滑动窗口——以字节为单位
超时重传时间的选择
TCP流量控制
零窗口探测报文:探测对方的窗口是0之后是否有所恢复
TCP的传输效率:Nagle算法,糊涂窗口综合症
TCP拥塞控制
用来控制整个网络的负载均衡,发送窗口的上限 = min(rwnd,cwnd)rwnd是对方的接受窗口,cwnd是用腮控制得到的
TCP 三次握手四次分手:
由图:握手的第一轮不能携带数据,并且一定要消耗一个序号(发送方和接收方都要消耗1个序号)
注:图片来源:《计算机网络第7版》,谢希仁
本人对图片不保留任何版权!