文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>TCP的4个定时器

TCP的4个定时器

时间:2009-08-24  来源:famdestiny

对每个连接,TCP管理4个不同的定时器。

  • 重传定时器使用于当希望收到另一端的确认。

TCP在发送一份数据后,启动重传定时器,在经过若干时间后如果没有收到ACK,则重传该数据,这个时间间隔通常如下:1s, 3s, 6s, 12s, 24, 48s, 和多个64s。这个指数关系被称为指数退避。TCP会一直尝试重传该数据,在9分钟以后放弃。

  • 坚持定时器使窗口大小信息保持不断流动,即使另一端关闭了其接收窗口。

假定有如下情况:接收方接收到一定量的数据,发现本地缓存满了,于是发送一个窗口大小为0的ACK给发送方,发送方在接收到该ACK后停止发送。一段时间后,接收方有空余的窗口,于是发送一个窗口大小非0的ACK以更新窗口,不幸的是该ACK丢失了,于是整个连接被停止。坚持定时器正是为了解决这个问题,它在接收到一个窗口大小为0的ACK以后,启动一个定时器,定时去查询是否窗口已经更新(同样采用指针退避)。

  • 保活定时器可检测到一个空闲连接的另一端何时崩溃或重启。

有如下情况,连接建立好以后,发送方不发送任何数据,这样一直下去(有可能是发送方系统崩溃,或者网络被意外切断),这就导致服务端一直占用该连接,浪费资源。保活定时器通常每两小时发送一个探测请求以查看对方是否存活。

  • 2MSL定时器测量一个连接处于TIME_WAIT状态的时间。

2MSL时间是为了让TCP有时间发送最后一个ACK,防止该ACK丢失。

相关阅读 更多 +
排行榜 更多 +
试着飞手游下载

试着飞手游下载

休闲益智 下载
血染小镇(功能菜单)中文版下载

血染小镇(功能菜单)中文版下载

飞行射击 下载
泰坦之旅高爆版下载

泰坦之旅高爆版下载

角色扮演 下载