TCP连接会断开吗? 已经建立了TCP连接,并可能互通信息。但是如果长时间不进行信息的传递。这个TCP连接会自动断开吗?如果能自动断开的话,这个时间大约是多少呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 TCP的保活定时器能够保证TCP连接一直保持,但是TCP的保活定时器不是每个TCP/IP协议栈就实现了,因为RFC并不要求TCP保活定时器一定要实现。摘自《TCP/IP详解》卷1第23章:保活并不是T C P规范中的一部分。Host Requirements RFC提供了3个不使用保活定时器的理由: (1) 在出现短暂差错的情况下,这可能会使一个非常好的连接释放掉;(2)它们耗费不必要的带宽;(3)在按分组计费的情况下会在互联网上花掉更多的钱。然而,许多实现提供了保活定时器。更具体的资料,请参阅RFC。 补充一点,TCP保活定时器的功能是每隔一个时间t (可能t=2小时,依赖具体的实现。)发送保活分组。 但是如果长时间不进行信息的传递。这个TCP连接会自动断开吗?下个结论吧, 不一定 它自己是不会断开但是很多防火墙都会把长时间不进行通信的TCP关掉所以最好有心跳机制类维护或者设置keepalive属性,可以把时间弄短点记得好多防火墙一般40秒关链接 感觉TCP连接名义上是提供了一个可靠的连接,但在实际中往往是不可靠的。还不如使用UDP来的方便,然后自己来控制重发、超时什么的。 只能说明你使用的问题,估计你的问题就是粘包没有处理好,难道你比写tcp协议栈的人还牛? 不要想当然!TCP是提供了有连接的可靠的字节流服务。UDP才是无连接的不可靠的数据报服务。 你可以使用抓包工具,去看看的,有助于你理解TCP。 看什么应用场景了,tcp可靠也只是相对的。另外keeplive一般不建议使用,有bug。 有什么bug,可不可以说具体一些? 有些网络设备会切断长时间无数据传输的连接,SOCKET有个KEEPALIVE参数就是保活功能可以防止这个 keeplive一般不建议使用,有bug。请问有人知道吗 ? 高手在VC中如何让绘制后的曲线具有回放功能 怎么结束远程线程? 自绘按钮 鼠标移动到上面改变鼠标形状 很有挑战性的一个问题:关于虚拟键盘模拟键盘输入中文的问题 系统托盘的图标显示 VC做声卡驱动的问题 为什么不能显示MessageBox消息框?? 急,如何用一个对话框类实现象选择文件一样选择一个文件夹? 帮个忙 难道Receive()只能一下子接收所有发送的数据量? [求正则表达式] CFile读文件出现乱码 送高分!
时器的理由: (1) 在出现短暂差错的情况下,这可能会使一个非常好的连接释放掉;
(2)它们耗费不必要的带宽;(3)在按分组计费的情况下会在互联网上花掉更多的钱。
然而,许多实现提供了保活定时器。更具体的资料,请参阅RFC。
下个结论吧, 不一定
但是很多防火墙都会把长时间不进行通信的TCP关掉
所以最好有心跳机制类维护
或者设置keepalive属性,可以把时间弄短点
记得好多防火墙一般40秒关链接
不要想当然!
TCP是提供了有连接的可靠的字节流服务。
UDP才是无连接的不可靠的数据报服务。
有助于你理解TCP。