2013-08-28 107 views
1

建立一个Windows TCP对等体发送一个TCP数据包,并且远程对等体不确认它没有重置连接(内核崩溃,电源/硬件故障等)排除发送重试计数器后,TCP对等方是否重置连接?

窗口对等体是否在排空后重置连接发送重试计数器?

TCP RFC对此有何评论?阅读下面的句子(在本页面http://support.microsoft.com/kb/169292/en-us的“重新传输行为”款)后

我产生疑问:

后计算机“X的”重试次数耗尽,你可能看不到一个“复位” 马上。如果计算机“Y”最终响应,则计算机“X”可能会重置连接。

在此先感谢和原谅我的基本英语。

问候

回答

2

在没有对整个发送窗口的ACK时,发送者假定的是,对等体是否消失并且默默地清理重试之后的连接(没有在这个阶段发送翅片或的RST)。

如果对等方实际上是活着的并在旧连接上发送一个数据包,发送方会发送一个RST。

+0

非常感谢jman。我有另一个问题!如果我尝试使用同一进程的另一个线程中的同一个套接字(没有收到ACK),会发生什么情况。谢谢! – user1720902

+0

如果旧连接仍然存在于服务器上,但客户端尝试使用相同的4元组建立新连接,则SYN将被拒绝,并且服务器以预期序列号的ACK作出响应。客户将发送RST。请参阅RFC中的图10:http://www.faqs.org/rfcs/rfc793.html。 – jman

+0

如果您尝试重新使用未能获取ACK的套接字,则会从您自己的一方获得ECONNRESET。 – EJP

相关问题