关于Boost的Asio的信号灯超时时间已到错误

news/2024/10/18 16:52:30/

问题

  最近在测试一个程序的时候,发现过一阵子报了信号灯超时已到错误,ASIO这边的错误码是121。花了点时间,发现了问题所在。

原因

  我自己测了一阵子后发现,大约7分钟左右,就会收到这个错误,此时TCP连接会断开。开始以为腾讯云的问题,接着我添加了心跳…是的,本来只是想看看能不能正常接收,没想到问题就解决了。
  查阅了一些资料,发现根本原因应该是:由于TCP两端在指定时间内未交互数据,所以连接被剔除了。
  但这还不是重点。因为我之前写的很多东西,都是没有心跳的,却能保证几个小时后还能正常通讯,不至于几分钟内连接就挂掉。
  后来,我在StackOverflow找到了一个贴切的答案:

  • If your components:
    * are in a conventional wired network
    * there are no firewalls or NAT routers between them
    * neither of them crash
    * then you do not need to have a heartbeat.
  • If any of these assumptions are false (I am looking at you, GPRS!), a heartbeat becomes necessary rather quickly.

  他的大概意思是:如果是传统的网线直连,中间没有防火墙或者NAT路由的情况下,那么TCP连接是不需要心跳的。
  我这边做的大多是偏向设备的直连,所以就算没有心跳,连接也基本不会出现太大问题。但如果是连到远程服务器,中间就要经过许多路由,在这样的前提下,连接的两端长时间未进行交互,那么连接可能会被剔除。
  不过我之前在查这个错误的时候,有的人是因为一下子Accept太多而报错的,所以,导致这个错误的原因应该也是有很多种的,长时间未交互数据只是我自己这边的一种情况。


http://www.ppmy.cn/news/239940.html

相关文章

0x80070079信号灯超时_windows server 2012 连接共享报0x80070079 信号灯超时时间已到

你好, 请问此错误一直存在么?重试几次是否会消失? 造成错误的原因 这个错误的主要原因是Windows不会重试网络连接并超时。网络问题的原因可能是由于信号较弱或有线链路较慢或网络适配器驱动程序故障。当通过网络传输文件时出现问题的情况。 将…

SecureCRT信号灯超时时间已到

SecureCRT软件一段时间没写入命令后就报信号灯超时时间已到,断开了session连接,之前没理会,一直以为是跳板机的某种自动识别机制导致的,今天查资料看了下,解决方案如下 Options 》 Session Options 》 Terminal 》勾选…

从C语言到C++_16(list的介绍和常用接口函数)

目录 1. list 介绍和简单使用 1.1 list介绍 1.2 list简单接口函数 1.3 push_back 和遍历 1.4 list常规接口函数使用 2. list 的其它接口函数 2.1 splice 接合 2.2 remove 删完一个值 2.3 sort和reverse 本章完。 list是个双向带头循环链表。 带头双向循环链表我们在…

工具类|快递物流的订阅与查询

日常工作中如果有三方给客户发福利类实物的无法追踪物流明细的场景,就需要通过物流单号来定位客户福利的发货进度。 可以采用比较产品化的接口:快递100、聚合数据、51Tracking、快递鸟等专业的物流信息接口API,也可以在阿里云云市场中寻找其…

AI文本生成视频,根据文字就能一键生成视频的模型

const name "AI生成视频";console.log(name); 可以从给定的文字内容就能生成短视频,基于文本到图像生成技术,该技术旨在实现文本到视频的生成,可以通过文本生成独一无二的视频,将无限的想象力带入生活。 我们来看看文…

商品领域十二张基础表设计思路与实现

1 文章概述 商品在电商领域中是一个非常重要的领域,交易行为前提是有商品信息存在。本文我们分析商品表基本设计,其它复杂场景可以在此基础上进行扩展。需要说明第一本文所用数据是测试数据,可能与真实数据有偏差,仅供演示。第二…

K210奇怪问题

K210TTL问题 TPS54331供5V,ISP-RXD引脚对地加入TVS管后,导致显示屏花屏问题,可复现,去掉后正常显示,原因不明。 tvs型号SMF5.0CA,SMF6.5CA均会出现同样问题。 采用电脑USB供电,没有此问题。 串…

i510600kf 参数 i5 10600kf怎么样

酷睿i5-10600Kf基于祖传的14nm制程工艺,全新的LGA 1200接口设计,拥有6核12线程,默认主频4.1Ghz,最大睿频4.8Ghz,三级缓存为12MB,支持超频,设计功耗125W。 i5-10600Kf配什么主板 看完你就知道了 …