一台linux服务器最多能支持多少个TCP连接?(要区分客户端还是服务端)
admin
2024-04-19 07:31:19
0

参考大佬文章:

  • 一台机器最多能撑多少个TCP连接? 今天掰扯清楚!

这个问题要分场景,先说下结论:

  • 客户端:最多支持TCP连接数 = IP数 * 端口数 = IP数 * 65535,其中的IP数是由于linux下可以配置多IP
  • 服务端:取决于linux服务器的内存大小,内存数 / 静默TCP连接所占大小 3.3k,若linux服务器有4GB的内存,那么最终理论值为:4GB / 3.3k ≈ 127w个 连接。

客户端

对于仅有一个IP的客户端来说,最多能支持的连接数受限于端口 ip_local_port_range参数,一般为65535。但是由于linux环境下是能配置多IP的,所以理论值:最多支持TCP连接数 = IP数 * 端口数 = IP数 * 65535

服务端

服务端不同于客户端,最大连接数并不仅仅受限于端口数。否则Nginx服务器只监听了一个80端口,那岂不是最多只能支持一个TCP连接了?显然绝不可能。
一个TCP连接是由一个【四元组:源IP、源端口、目标IP、目标端口】来唯一确定的。

在不考虑地址重用(socket中的 SO_REUSEADDR端口复用选项)的情况下,例如:对只监听80端口Nginx服务器来说,服务器IP和端口是固定的,因此四元组中仅有 客户端IP、客户端端口 是可变的。所以服务端能建立的TCP连接数是:客户端IP数 * 客户端端口数 = 2³² * 2¹⁶

然而linux上不仅仅只能监听80端口,还可以监听其他端口号,比如:MySQL-3306,Redis-6379,一共有2¹⁶=65535个端口,因此服务器理论上最多可以支持的TCP连接数为:客户端IP数 * 客户端端口数 * 服务端监听端口数 = 2³² * 2¹⁶ * 2¹⁶,这个理论上的结果值几乎可以认为是无限大。

其中客户端IP数为何是 2³²
因为32位长度的IPv4地址,共有 2³²个地址,范围是:00000000,00000000,00000000,00000000(十进制表示为0)—— 11111111,11111111,11111111,11111111(十进制表示为2³²-1,4个2⁸ 拼接为2³²)
而端口数默认为65535个,即 2¹⁶ 个

不过理论和实际是有差距的,因为linux每维护一条TCP连接都要消耗资源(处理连接请求、保活、数据收发都需消耗CPU,而维持TCP连接又要消耗内存)。这里我们先不考虑数据的收发,只考虑静止状态下的TCP连接,此状态下对CPU的消耗可以忽略不计,主要考虑内存的影响即可。

一条TCP连接如果不考虑收发数据的话,占用的内存大概是3.3k(如果有数据收发,就需要另外为每条TCP分配发送缓冲区,其大小受参数 net.ipv4.tcp_wmem的配置影响,初始默认为4k。如果收发结束。缓冲区所占的内存才会被回收)。

然而我们linux服务器的内存是有限的,假设只保持连接不收发数据,那么服务器可以建立的最大连接数是:内存数 / 静默TCP连接所占大小 3.3k。假设你的linux服务器有4GB的内存,那么最终理论值为:4GB / 3.3k ≈ 127w条 连接。

所以最终结论:
每一个监听的端口虽然理论值很大,但是这个数字没有实际意义,不现实。服务器最多能支持的TCP连接数最终要取决于linux服务器的内存大小。

相关内容

热门资讯

谈妥了!国资网开一面,湖北首富... 在资本市场的浮沉录中,很少有故事能像湖北知名企业家艾路明这样跌宕起伏。从风光无限的湖北首富,到如今为...
长安汽车朱华荣首谈为什么卸任阿... 21世纪经济报道记者 易思琳 报道9月20日,阿维塔07上市。发布会后,阿维塔举行了一次小范围的媒体...
5万亿市场高歌猛进!这些隐忧,... ETF高速发展背后暗藏的“隐秘角落”与潜在风险不可轻视。ETF发展势头迅猛,规模呈爆发式增长,继20...
浙江大学教授、50岁A股公司董... 记者丨黎雨桐编辑丨吴桂兴9月21日晚间,臻镭科技发布《关于公司重大事项的公告》称,公司实控人、董事长...
荀玉根:如何理解股强经弱? 荀... 荀玉根、王开(荀玉根系国信证券首席经济学家、经济研究所所长,中国首席经济学家论坛理事)核心结论:①近...
伯克希尔哈撒韦已清仓比亚迪股份 每经AI快讯,据 CNBC 9月21日报道,伯克希尔哈撒韦已清仓比亚迪股份。报道称,截至3月31日,...
赵伟:财政“下半场”,可能的“... 赵伟、贾东旭、侯倩楠(赵伟系申万宏源证券首席经济学家、中国首席经济学家论坛理事)摘要2025 年上半...
殷剑峰:在低利率时代寻找投资机... 殷剑峰系浙商银行首席经济学家、中国首席经济学家论坛理事注:本文为陆家嘴金融沙龙演讲速记稿。一、低利率...
储能订单爆满谁在眼红?老牌锂电... 储能行业需求旺盛、储能电芯生产商纷纷爆出满产之际,消费类电池仍贡献过半收入的欣旺达电子股份有限公司(...
基金到期清算减持 华创鑫睿仍是... 21世纪经济报道特约记者 文静 重庆报道9月21日,山西汾酒(600809.SH)发布公告称,其大股...