TCP协议的一些要点知识

1、发送是双向的,即发送方有发送窗口,接收窗口,拥塞窗口,接收方也有自己的发送窗口,接收窗口,拥塞窗口。

2、有三个窗口的概念,即发送窗口,接收窗口,拥塞窗口。只有接收窗口在数据包格式字段中有定义,里面的值表示可以接收的窗口大小,字节表示。

3、发送窗口、接收窗口概念上不是滑动窗口,滑动窗口是一种协议算法,发送窗口、接收窗口用的就是这种算法。

4、发送缓存--需要发送的数据量队列;
接收缓存--可接收待处理的队列数据,此缓存数据是要被上层协议处理的,处理完后才空出缓存;
发送窗口--发送端一次性可以发送的数据量,但不一定要一个包发完,可以分多个包发送;
接收窗口--接收端还可以接收多少数据,注意,收到数据发送应答后,窗口不一定向前移,而是要上层协议对这数据处理完后才会前移;
拥塞窗口--是发送端根据自己估计的网络拥塞程度而设置的窗口值,是来自发送端的流量控制。


5、接收窗口总大小是会变化的,接收端根据其目前的接收缓存大小所许诺的最新的窗口值,是来自接收端的流量控制。

6、发送窗口、拥塞窗口是不带在数据包格式字段中,而是根据接收对方返过来的接收窗口值来计算处理的。

7、发生超时重传的话,拥塞窗口就会变小,而发送窗口的值就取拥塞窗口和接收窗口的最小值。

8、发送方自己维护一对seq和ack号,接收方也维护自己的一对seq和ack号,是全双工模式。

9、发送方发出一个数据包中,seq表示这个包发送的第一个字节编号,ack表示它想接收到的下一个数据包第一个字节的编号。

10、seq编号是按1递增的。

11、ack确认可以累加确认。

12、Wireshark软件可以自动诊断出重传包,应答丢失包,接收窗口满等功能,推荐的抓包工具。

13、校验和:用于检验数据准确性的,算法比较简单,把各字段值累加后取反,校验时就是反向过程。有多种报文带有校验和字段,IP报文只校验IP报文头,TCP、UDP报文则校验报文头和数据,这样的话,就相当于各个字段都有校验到了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值