Cannot assign requested address 问题

news/2024/5/17 15:50:53 标签: 服务器, 线程, tcp, server
测试一个简单的TCP套接字程序,clientserver请求建立连接然后释放。

在一台主机上同时运行两个client时,出现报错“Cannot assign requestedaddress”

server的请求处理改为3线程线程池后问题解决。

但同时运行的client数量继续增加时,如15client同时运行,该问题再次出现。

在网上找到问题分析如下:

客户端频繁的连服务器,由于每次连接都在很短的时间内结束,导致很多的TIME_WAIT,以至于用光了可用的端口号,所以新的连接没办法绑定端口,即“Cannot assign requested address”。是客户端的问题不是服务器端的问题。通过netstat,的确看到很多TIME_WAIT状态的连接。

可见问题不在于server端,而是client端频繁建立连接,而端口释放较慢,导致建立新连接时无可用端口。

网上的解决方法:

执行命令修改如下2个内核参数(需要root权限) 
sysctl -w net.ipv4.tcp_timestamps=1  
开启对于TCP时间戳的支持,若该项设置为0,则下面一项设置不起作用

sysctl -w net.ipv4.tcp_tw_recycle=1  表示开启TCP连接中TIME-WAITsockets的快速回收。





http://www.niftyadmin.cn/n/950832.html

相关文章

迅视资管 “仪式感消费”折射观念之变

“仪式感消费”是经济快速发展的产物,也是人们消费观念转变的鲜明体现。当今社会,网络高度发达,微博、微信等社交媒体占据了人们的大部分业余生活,一个富有仪式感的行为、一个能引起人们兴趣的热点话题往往会以爆炸式的速度在人们…

迅视资管 华为哈勃入股中蓝电子,持股7.83%

11月26日,辽宁中蓝电子科技有限公司发生工商变更,新增股东哈勃科技投资有限公司,持股7.83%。同时公司注册资本由7675.65万元人民币增加至8328.08万元人民币,增幅为8.5%。

迅视资管 人工智能对失语者的关切照顾

人工智能技术的精进与开发无疑对人工智能的应用至关重要,而人工智能除了在与生活强关联方面的应用,回应少数群体的需求也将成为人工智能发展的必然方向。 近日,加州大学伯克利分校的研究人员表示,他们正在使用无声语言和收集肌肉…

error MSB8031 Building an MFC project for a non-Unicode character set is deprecated

VS2013多字节工程问题 使用VS2013编译旧版VC程序时,提示Building an MFC project for anon-Unicode character set is deprecated,微软提供了解决方案。 一、错误信息 1>C:\ProgramFiles (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppBuild.t…

迅视财经—一本关于《迅视财经》的介绍

一、引言: 《迅视财经》杂志是一本专业报道国际金融行业热点事件、解读金融行业大政方针、分析金融投资市场热点话题;重点为金融、财经从业者提供专业人力资源资讯的期刊杂志。它不但具备实用性更加注重其内容可读性,是一本真正的高品质的集时…

迅视财经 如何在“算法过滤”的世界里生活

从数字化到智能化,生活世界正在悄无声息地发生着根本性的变化。一个层层过滤、慢慢引导、逐渐上瘾、摆脱不掉的“阿得拉社会”正在全方位渗透我们的日常生活。 在这个由信息组成的技术形态中,一方面,我们享受着智能应用带来的精准定制&#x…

广东迅视资管 阻碍携号转网,阻碍的是什么

11月27日,携号转网服务全国施行满一年。然而,这项惠民工程在具体推进的过程中却遇到了各种阻碍。广东迅视觉得这一方面可能是因为一些用户怕麻烦,没有转网需求。另一面,诸多坑点的存在确实让不少用户放弃了携号转网。 这些暗戳戳的…

error LNK2026 module unsafe for SAFESEH image

error LNK2026 module unsafe for SAFESEH image 1.打开该项目的“属性页”对话框。 2.单击“链接器”文件夹。 方法一: 1.单击“命令行”属性页。 2.将 /SAFESEH:NO 键入“附加选项”框中,然后点击应用。 方法二: 去掉相应连接属性即可…