转载自:
badguy的个人空间
客户端connect服务器,执行一定时间后,接口返回-99的错误。
查看错误信息: OS error code 99: Cannot assign requested address
猜想端口被用光的原因,网络搜索得到一个解释:客户端频繁的连服务器,由于每次连接都在很短的时间内结束,导致很多的TIME_WAIT,以至于用光了可用的端口号,所以新的连接没办法绑定端口,即 “Cannot assign requested address”。
通过netstat,的确看到很多TIME_WAIT状态的连接。
因为是调用API,所以无法对连接进行opt设置,只能通过设置系统配置得以解决。
解决办法:
执行命令修改如下2个内核参数:
// 开启对于TCP时间戳的支持,若该项设置为0,则下面一项设置不起作用。
# sysctl -w net.ipv4.tcp_timestamps=1
// 表示开启TCP连接中TIME-WAIT sockets的快速回收。
# sysctl -w net.ipv4.tcp_tw_recycle=1
关于 TIME_WAIT 状态,可参看这篇文章:
TCP/IP状态图的TIME_WAIT作用
分享到:
相关推荐
2024最新版手把手教你入门vue+springboot开发SpringBoot + vue 管理系统2024最新版手把手教你入门vue+springboot开发SpringBoot + vue 管理系统2024最新版手把手教你入门vue+springboot开发SpringBoot + vue 管理系统2024最新版手把手教你入门vue+springboot开发SpringBoot + vue 管理系统2024最新版手把手教你入门vue+springboot开发SpringBoot + vue 管理系统2024最新版手把手教你入门vue+springboot开发SpringBoot + vue 管理系统2024最新版手把手教你入门vue+springboot开发SpringBoot + vue 管理系统2024最新版手把手教你入门vue+springboot开发SpringBoot + vue 管理系统2024最新版手把手教你入门vue+springboot开发SpringBoot + vue 管理系统2024最新版手把手教你入门vue+springboot开发SpringBoot
R语言学习记录_R-learning
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 替换数据可以直接使用,注释清楚,适合新手
小程序&小工具类&生活圈(源码+截图+源码导入教程和视频).zip
实验已预配IP和相关底层路由
OSD_Lyrics是受lrcdis的启发而开发的一款第三方歌词显示程序,它为Linux下的多款播放_osd-lyrics
仿wireshark的简易抓包协议分析_qt5-sniffer
变压器变频器配电柜电路控制原理图CAD施工图纸设备控制图罗茨风机-变频控制柜110KW
1111111111111111111111111111111111111
变压器变频器配电柜电路控制原理图CAD施工图纸设备控制图某干燥窑电气原理图
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 替换数据可以直接使用,注释清楚,适合新手
数学建模 【作品名称】:2023年数学建模国赛B题代码 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【项目介绍】: 问题一 结果存储于q1_result.xlsx文件,由q1.py代码进行生成 问题二 结果存储q2_result.xlsx中,由q2.py代码计算生成 问题三 52条测线,路线效果图 【资源声明】:本资源作为“参考资料”而不是“定制需求”,代码只能作为参考,不能完全复制照搬。需要有一定的基础能够看懂代码,能够自行调试代码并解决报错,能够自行添加功能修改代码。
R语言与结构方程模型_R_SEM
行业报告
自制Arduino 扩展板,AD软件做的,包含原理图,PCB.主要是在学习Arduino不想用杜邦线连接LED灯,搞得座位乱七八糟,所以画了一块板,直接插到Arduino上使用,兼容Arduino MEGA 2560
R语言层次聚类_R_hclust
车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别车辆识别
在Qt中实现固件升级的进度条显示窗口,你可以通过创建一个自定义的对话框(Dialog)来完成。这个对话框可以包含一个进度条(QProgressBar)、一些文本标签(QLabel)用于显示状态信息,以及可能的按钮(如取消按钮)来允许用户中断升级过程。
小程序&模版&招聘行业&仿拉钩App小程序(源码+截图+源码导入教程和视频).zip
本项目是基于Javascript开发的未央支教队官网,包含116个文件,其中包括58个JPG图像文件、42个PNG图像文件、6个JavaScript脚本文件、3个CSS样式表文件、2个JPG图像文件、1个CNAME文件、1个Markdown文档文件、1个PNG图像文件和1个HTML页面文件。此外,还有1个MP3音频文件。该项目旨在为未央支教队提供一个展示其支教活动的平台,支持活动信息发布、支教团队介绍、在线捐赠等功能,以提升支教队的形象和影响力。