【Linux】单机可建立的最大TCP连接数

news/发布时间2024/5/19 10:10:41

【Linux】单机可建立的最大TCP连接数

  • 背景
  • 介绍
  • 环境
  • 客户端
  • 服务端
  • 总结

背景

本文内容大多基于网上其他参考文章及资料整理后所得,并非原创,目的是为了需要时方便查看。

介绍

本文介绍Linux单机作为客户端或服务端时可建立的最大TCP连接数。

环境

分类名称版本
操作系统LinuxUbuntu 22.04.3 LTS

客户端

Linux作为客户端时,可建立的最大TCP连接数量受内核参数 net.ipv4.ip_local_port_range 限制,net.ipv4.ip_local_port_range 是可配置的,最大理论范围是 0 ~ 65535

可以通过命令 sysctl -a | grep ip_local_port_range 命令查看机器端口数量配置。

net.ipv4.ip_local_port_range = 15000   65000

基于以上结果计算出剩余 50000(65000 - 15000)个端口可供TCP连接使用。

此限制仅限于单个IP,当机器存在多个网卡,或可以配置多个IP(如K8S)时,最大连接数理论是:

net.ipv4.ip_local_port_range限制的值 * IP数量

服务端

一个TCP连接由一个TCP四元组组成,TCP四元组由TCP协议中唯一标识一个TCP连接的四个参数组成,分别是:

  • 源IP地址
  • 源端口号
  • 目标IP地址
  • 目标端口号

对于服务器来说,可用于建立TCP连接的IP和端口号是固定的(即 目标IP地址目标端口号 固定),因此可建立的TCP连接数量取决于 源IP地址源端口号 数量的限制。IPv4地址数量理论最大值为 2^32232次方),源端口号数量理论最大值为2^16216次方),所以理论最大连接数 = 2^32 * 2^16

最大连接数除受以上限制外,还受内存大小限制,每个TCP连接都会消耗内存,通常一个静态TCP连接(不发送数据)占用内存是 3.1K ~ 3.5K,所以Linux单机作为服务端可建立的最大连接数 = Linux单机内存 ÷ 单条TCP连接占用内存,以单机内存 8G、单条TCP连接占用内存 3.1K 为例,最大连接数:8 * 1024 * 1024 ÷ 3.1 ≈ 270万。如果TCP连接有数据发送,则还需要为每个TCP连接分配发送缓冲区,缓冲区大小受 net.ipv4.tcp_wmem 配置影响,默认情况下最小是 4K

总结

注意:本文基于IPv4场景。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.bcls.cn/sNZp/113.shtml

如若内容造成侵权/违法违规/事实不符,请联系编程老四网进行投诉反馈email:xxxxxxxx@qq.com,一经查实,立即删除!

相关文章

深度学习之梯度下降算法

梯度下降算法 梯度下降算法数学公式结果 梯度下降算法存在的问题随机梯度下降算法 梯度下降算法 数学公式 这里案例是用梯度下降算法,来计算 y w * x 先计算出梯度,再进行梯度的更新 import numpy as np import matplotlib.pyplot as pltx_data [1.0,…

Apache httpd 换行解析漏洞复现(CVE-2017-15715)

Web页面&#xff1a; 新建一个一句话木马&#xff1a; 0.php <?php system($_GET[0]); ?> 上传木马&#xff0c; burpsuite 抓包。 直接上传是回显 bad file。 我们查看数据包的二进制内容&#xff08;hex&#xff09;&#xff0c;内容是以16进制显示的&#xff0c;…

如何流畅进入Github

前言 以下软件是免费的&#xff0c;放心用 一、进入右边的下载链接https://steampp.net/ 二、点击下载 三、点击接受并下载 四、随便选一个下载链接进行下载 五、软件安装好打开后&#xff0c;找到Github 六、点击全部启用 七、再点击左上角的一键加速 八、这个时候你再进Git…

oauth2 授权码模式 流程说明和接口整理

一、说明 oauth2 授权模式一共有四种&#xff0c;即隐式授权模式、授权码授权模式、密码授权模式和客户端授权模式。 这里仅对授权码授权模式所包含的流程和接口做说明和整理。 具体的概念和源码解读&#xff0c;资料有很多&#xff0c;可以自行去搜索学习。 二、流程说明 假…

开工大吉!龙年第一个赚钱机会,是AI知识付费?人工智能文生视频大模型Sora,颠覆性的革命?

2月16日&#xff0c;OpenAI推出AI大模型Sora。美国知名科技博主马克斯布朗利表示&#xff0c;相比一年前的AI视频工具&#xff0c;Sora有了长足的进步&#xff0c;或将拉响影视行业失业警报。 OpenAI推出AI大模型Sora Sora&#xff0c;OpenAI发布的人工智能文生视频大模型&…

企业计算机服务器中了mkp勒索病毒怎么办?Mkp勒索病毒解密处理

随着网络技术的不断发展&#xff0c;企业的生产运营也加大了步伐&#xff0c;网络为企业的生产运营提供了强有力保障&#xff0c;但网络是一把双刃剑&#xff0c;给企业带来便利的同时也为企业带来了严重的数据威胁。春节期间&#xff0c;云天数据恢复中心接到很多企业的值班人…

AlexNet的出现推动深度学习的巨大发展

尽管AlexNet&#xff08;2012&#xff09;的代码只比LeNet&#xff08;1998&#xff09;多出几行&#xff0c;但学术界花了很多年才接受深度学习这一概念&#xff0c;并应用其出色的实验结果。 AlexNet&#xff08;由Alex Krizhevsky、Ilya Sutskever和Geoffrey Hinton共同设计…

【自然语言处理】seq2seq模型—机器翻译

清华大学驭风计划课程链接 学堂在线 - 精品在线课程学习平台 (xuetangx.com) 代码和报告均为本人自己实现&#xff08;实验满分&#xff09;&#xff0c;只展示主要任务实验结果&#xff0c;如果需要详细的实验报告或者代码可以私聊博主 有任何疑问或者问题&#xff0c;也欢…

DS:八大排序之归并排序、计数排序

创作不易&#xff0c;感谢三连支持&#xff01;&#xff01; 一、归并排序 1.1 思想 归并排序&#xff08;MERGE-SORT&#xff09;是建立在归并操作上的一种有效的排序算法,该算法是采用分治法&#xff08;Divide andConquer&#xff09;的一个非常典型的应用。将已有序的子…

并发编程-多线程并发特性

多线程并发的三个特性 原子性&#xff1a;即一个操作或多个操作&#xff0c;要么全部执行&#xff0c;要么就都不执。执行过程中&#xff0c;不能被打断有序性&#xff1a;程序代码按照先后顺序执行 为什么会出现无序问题呢&#xff1f;因为指令重排&#xff08;重排序是编译器…

openlayers地图点击标记点,弹出当前位置自定义弹窗(三)

1. 效果图 2. 代码 <template><div class"container"><div id"map" stylewidth: 100%; height: 100%;border: 5px solid #a4cdff;><div class"toolBox"><div class"messageBox" v-show"isShow&quo…

算法沉淀——BFS 解决最短路问题(leetcode真题剖析)

算法沉淀——BFS 解决最短路问题&#xff08;leetcode真题剖析&#xff09; 01.迷宫中离入口最近的出口02.最小基因变化03.单词接龙04.为高尔夫比赛砍树 BFS&#xff08;广度优先搜索&#xff09;是解决最短路径问题的一种常见算法。在这种情况下&#xff0c;我们通常使用BFS来…

【漏洞复现-通达OA】通达OA report_bi存在前台SQL注入漏洞

一、漏洞简介 通达OA(Office Anywhere网络智能办公系统)是由北京通达信科科技有限公司自主研发的协同办公自动化软件,是与中国企业管理实践相结合形成的综合管理办公平台。通达OA为各行业不同规模的众多用户提供信息化管理能力,包括流程审批、行政办公、日常事务、数据统计…

MySQL篇之SQL优化

一、表的设计优化 表的设计优化&#xff08;参考阿里开发手册《嵩山版》&#xff09;&#xff1a; 1. 比如设置合适的数值&#xff08;tinyint int bigint&#xff09;&#xff0c;要根据实际情况选择。 2. 比如设置合适的字符串类型&#xff08;char和varchar&#xff09…

MSS与cwnd的关系,rwnd又是什么?

cwnd初始状态是多少&#xff1f; 拥塞窗口&#xff08;cwnd&#xff09;的初始状态通常设为1&#xff08;MSS)&#xff0c;即cwnd1。 在TCP连接建立初期&#xff0c;为了谨慎地探测网络容量&#xff0c;拥塞窗口&#xff08;cwnd&#xff09;会被设置为一个较小的值&#xff…

详解tomcat中的jmx监控

目录 1.概述 2.如何开启tomcat的JMX 3.tomcat如何实现JMX的源码分析 1.概述 本文是博主JAVA监控技术系列文章的第二篇&#xff0c;前面一篇文章中我们介绍了JAVA监控技术的基石——jmx&#xff1a; 【JMX】JAVA监控的基石-CSDN博客 本文我们将从使用和源码实现两个方面聊…

【c++】list详细讲解

> 作者简介&#xff1a;დ旧言~&#xff0c;目前大二&#xff0c;现在学习Java&#xff0c;c&#xff0c;c&#xff0c;Python等 > 座右铭&#xff1a;松树千年终是朽&#xff0c;槿花一日自为荣。 > 目标&#xff1a;熟悉list库 > 毒鸡汤&#xff1a;你的脸上云淡…

【java苍穹外卖项目实战三】nginx反向代理和负载均衡

文章目录 1、nginx反向代理2、nginx 反向代理的好处3、nginx 反向代理的配置方式5、nginx 负载均衡的配置方式6、nginx 负载均衡策略 我们思考一个问题&#xff1a; 前端发送的请求&#xff0c;是如何请求到后端服务的&#xff1f; 前端请求地址&#xff1a;http://localhost/…

快速搭建PyTorch环境:Miniconda一步到位

快速搭建PyTorch环境&#xff1a;Miniconda一步到位 &#x1f335;文章目录&#x1f335; &#x1f333;一、为何选择Miniconda搭建PyTorch环境&#xff1f;&#x1f333;&#x1f333;二、Miniconda安装指南&#xff1a;轻松上手&#x1f333;&#x1f333;三、PyTorch与Minic…

MySQL篇----第十四篇

系列文章目录 文章目录 系列文章目录前言一、MySQL 数据库作发布系统的存储,一天五万条以上的增量,预计运维三年,怎么优化?二、锁的优化策略三、索引的底层实现原理和优化四、什么情况下设置了索引但无法使用前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽…
推荐文章