在TCP传输中,是通过让接收方指明希望从发送方接收的数据字节数(即通告窗口的大小)来进行流量控制的。当窗口大小为0时将能有效地阻止发送方传送数据,直到窗口变为非0为止。
通常情况下,我们之所以说TCP是一种可靠的传输方式,那是因为它对所接收到的数据报文段都会发送一个ACK确认报文。但ACK的传输却是不可靠的,也就是说,TCP不对ACK报文段进行确认,而只对那些包含有数据的报文段进行确认。
如果一个确认丢失了,则双方就有可能因为等待对方而使连接终止:接收方等待接收数据(因为它已经向发送方通过了一个非0的窗口),而发送方在等待允许它继续发送数据的窗口更新。为了防止这种死锁情况的发生,发送方使用一个坚持定时器(persist timer)来周期性地向接收方查询,以便发现窗口是否已增大。这些从发送方发出的报文段就称为窗口探查。
计算坚持定时器时采用了普通的TCP指数退避算法。比如对一个典型的局域网连接,首次超时时间算出来是1.5秒,那么第二次的超时时间值就增加一倍,为3秒,再下次就为6秒等。但是坚持定时器总是在5到60秒之间。
窗口探查包含一个字节的数据。TCP总是允许在关闭连接前发送一个字节的数据。不过所返回的窗口为0的ACK并不是确认该字节,而是确认了包括上一个序号在内的所有数据,因此这个字节被持续重传。
坚持状态和重传超时之间一个不同的特定就是TCP从不放弃发送窗口探查。这些探查每隔60秒发送一次,这个过程将持续到窗口被打开或者应用进程使用d连接被终止。
参考资料:《TCP/IP详解卷一》第22章--TCP的坚持定时器。
分享到:
相关推荐
TCP的定时器机制,TCP设置多个定时器帮助其完成所承担的服务。
TCP的坚持定时器PPT教案.pptx
linux c 在tcp服务端或客户端设置保活定时器、ip选项域等。
TCP-IP:TCP-IP卷2-25_TCP定时器
TCP Sliding Window滑动窗口协议演示动画,Flash播放,可以调整参数
传输控制协议(TCP)[Pos81]使用一个重发定时器,在缺乏任何远端的数据接收方...RFC 2581[APS99]描述了该算法,TCP使用它在RTO超时之后和一次重发被发出之后开始发送。本文档不改变在RFC 2581[APS99]中所描述的行为。
TCP 滑动窗口模拟VC++ 包括一比特和ARQ
我们在学习LwIP时,总会看到关于TCP定时器的描述,但大多数资料都是从功能的角度来介绍TCP定时器。而LwIP中,TCP定时功能到底是如何实现的?网上能找到的资料却比较少。 本文从LwIP的源代码入手,详细分析了定时过程...
用NS-3仿真TCP拥塞窗口控制机制,把拥塞窗口各个参数的变化用图片的格式体现出来
TCP拥塞学习资料,TCP滑动窗口协议,TCP拥塞窗口,网络间对象的传输与调用[new]
01TCP-IP基础视频教程概述.wmv 02TCPP基础视频教程 Datalink Layer. wm 03TCPP基础视频教程IPwm...16TCP-P基础视频教程tcp的坚持定时器wm 17TCP-P基础视频教程tcp的保活定时器wmv 18TCPP基础视频教程tcp的未来和性能wmv
主要介绍了TCP 四种定时器,重传定时器,坚持计时器,保活定时器,时间等待计时器的相关资料,需要的朋友可以参考下
TCP序列号和确认号详解 TCP序列号和确认号详解 TCP序列号和确认号详解
此资源包括stm32的点灯程序,定时器、串口、中断、flash的读写、I2C等例程。 循序渐进。
"TCP 重传、滑动窗口、流量控制、拥塞控制" TCP 是一个可靠的传输协议,它为了保证可靠性,使用了许多机制来保证,如序列号、确认应答...它们可以帮助我们更好地理解 TCP 协议,并且可以提高网络传输的效率和可靠性。
第22章 TCP的坚持定时器 245 第23章 TCP的保活定时器 251 第24章 TCP的未来和性能 256 第25章 SNMP:简单网络管理协议 270 第26章 Telnet和Rlogin:远程登录 293 第27章 FTP:文件传送协议 316 第28章 SMTP:简单...
TCP重传、滑动窗口、流量控制、拥塞控制 TCP重传机制是保证数据传输的可靠性的重要机制。其中超时重传是TCP重传机制的一种方式,即在发送数据时,设定一个定时器,当超过指定的时间后,没有收到对端的ACK确认应答...
滑动窗口机制及TCP中的相关实现,详细介绍了滑动窗口机制的原理。
主要介绍了详解TCP的四种定时器的相关资料,需要的朋友可以参考下
TCP拥塞控制机制包括重传机制、滑动窗口、流量控制和拥塞控制等。 一、重传机制 TCP的重传机制是通过序列号与确认应答来实现的。在TCP中,当发送端的数据到达接收主机时,接收端主机会返回一个确认应答消息,表示...