linux的tcp连接数量最大不能超过65535个吗
【小编提示】本文部分内容摘自网络,仅供参考!如需了解服务器租用\托管相关问题,请咨询YINGSOO专业客服,享受1V1贴心服务!免费热线400-630-3752
【选购帮助】站群服务器租用需要考虑哪些方面
问题有一个概念上的误解,错误的把tcp端口号的上限65535理解成了tcp连接数的上限,进而认为Linux无法实现超过65,535个的并发任务,实际上端口号数量和tcp连接数确实有关联,但并非一一对应的关系。
65,535从哪来的,干啥的?
要解释好这个问题,就要先说清楚65,535的含义。
在Linux系统中,如果两个机器要通信,那么相互之间需要建立tcp连接,为了让双方互相认识,Linux系统用一个四元组来唯一标识一个tcp连接: {local ip, local port, remote ip, remote port},即本机ip、本机端口、远程ip、远程端口,ip和端口就相当于小区地址和门牌号,只有拿到这些信息,通信的双方才能互相认知。在Linux系统中,表示端口号(port)的变量占16位,这就决定了[香港百兆服务器]端口号最多有2的16次方个,即65,536个,另外端口0有特殊含义不给使用,这样每个服务器最多就有65,535个端口可用。因此,65,535代表Linux系统支持的tcp端口号数量,在tcp建立连接时会使用。
tcp怎么建立连接,与端口号是什么关系?
Linux服务器在交互时,一般有两种身份:客户端或者服务器端。典型的交互场景是:
(1)服务器端主动创建监听的socket,并绑定对外服务端口port,然后开始监听
(2)客户端想跟服务器端通信时,就开始连接服务器的端口port
(3)服务端接受客户端的请求,然后再生成新的socket
(4)服务器和客户端在新的socket里进行通信
可以看到,端口port主要用在服务器和客户端的“握手认识”过程,一旦互相认识了,就会生成的的socket进行通信,这时候port就不再需要了,可以给别的socket通信去使用,所以很明显tcp连接的数量可以大于tcp端口号的数量65,535。
考虑一下两个极端场景,即某台Linux服务器只作为客户端或者服务器端
(1)Linux服务器只作为客户端
这时候每发起一个tcp请求,系统就会指定一个空间的本地端口给你用,而且是独占式的,不会被别的tcp连接抢走,这样最多可以建立65535个连接,每个连接都与不同的服务器进行交互。这种场景,就是题主所描述的样子,但是由于条件过于苛刻,属于小概率事件,所以更多的还是理论上的可能,现实的环境中几乎不会出现。
(2)Linux服务器只作为服务端
这种场景下,服务端就会固定的监听本地端口port,等着客户端来向它发起请求。为了计算简单,我们假设服务器端的ip跟端口是多对一的,这样tcp四元组里面就有remote ip和remote port是可变的,因此最大支持创建tcp个数为2的32次方(ip地址是32位的)乘以2的16次方(port是16位的)等于2的48次方。
现实中单台Linux服务器支持的tcp连接数量
通过前面的分析我们知道,在现实场景中,由于存在端口port复用的情况,服务器可同时支持的tcp连接数跟65,535没有一一对应关系,事实上,真正影响tcp连接数量的,是服务器的内存以及允许单一进程同时打开文件的数量,因为每创建一个tcp连接都要创建一个socket句柄,每个socket句柄都占用一部分系统内存,当系统内存被占用殆尽,允许的tcp并发连接数也就到了上限。一般来讲,通过增加服务器内存、修改最大文件描述符个数等,可以做到单台服务器支持10万+的tcp并发。
当然,在真实的商用场景下,单台服务器[云服务器服务]都会编入分布式集群,通过负载均衡算法动态的调度不同用户的请求给最空闲的服务器,如果服务器平均内存使用超过80%的警戒线,那么就会及时采用限流或者扩展集群的方式来保证服务,绝对不会出现服务器的内存被耗尽的情况,那样就算事故了。
总之,65,535只是Linux系统中可使用端口port数量的上限,端口port数量与tcp连接数量并非完全一一对应的关系,服务器支持的tcp并发连接数量主要跟服务器的内存以及允许单个进程同时打开的文件数量有关系,通过端口复用及调整服务器参数等手段,单台服务器支持的tcp并发连接数是可以高于65,535的。
如何选到合适的美国服务器
海外市场上美国服务器知名度越来越高,更多的企业开始用美国的服务器进行业务搭建了。并且随着互联网发展,美国服务器应用在网络中的用途也越来越多了。那么在挑选美国服务器,如何选到适合美国服务器呢?
一、服务器的访问速度快
在海外服务器市场上,美国的带宽是相对于其他海外服务器较大的了,市面上普遍默认的美国地区的服务器带宽是在100M左右的。能够让搭建的网页的访问速度更快一些,使得访问网站的用户的浏览体验感也会更好一些。
二、稳定性要好
一台服务器的稳定性能怎么样,是会直接关系到运营的好坏的。各行各业的运营商在挑选服务器上的基准,都是服务器的稳定性一定要好。所以在挑选服务器时,也一定要关注服务器的稳定性的问题。可以根据自己的实际需求,去搭配较为合适的配置。这样的话在使用时,稳定性基本上都是还可以的。
三、服务器所在机房要好
在美国地[美国仿牌抗攻击服务器一般都会受到什么攻击]区的服务器机房也是比较多的。需要注意的是,在选用服务器时,也应该先对[香港ecs是什么意思]服务器所在的机房进行提前的了解。选择一个具备24小时售后运营,且管理完善的机房的服务器,比较好的机房,服务器在使用上也会更加稳定一些,在紧急事情上的处理上也会相对于其他机房要更高效一些。
以上就是关于如何选择到比较好的美国的服务器的一些挑选技巧了,希望大家都能够选择到适合的美国服务器哦。
YINGSOO电话:400-630-3752
热门文章:【勒索病毒的源头】【香港服务器防御】【最新韩国服务器为什么不找本地IDC】【香港cn2线路推荐】【中国互联网域名知多少】【国外服务器慢】【郑州虚拟主机】【香港服务器租赁不可不知道的4问题】【云虚拟主机价格】【美国云服务器怎么样】【影响国外防攻击服务器租用速度的因素】【手机网游服务器】【服务器被攻击了】【韩国机房服务器租用当真那么好吗】【主机托管多少钱】【浅谈香港服务器托管三大注意事项】【直播视频云解决方案】【美国万兆口服务器有哪些优势】【美国高防云服务器与DDoS高防】【国外免费vps永久】
Yingsoo香港主机商采用CN2电信直连香港,速度延迟低至10ms,快速,安全,稳定,免备案9年运营经验, 服务超过1200家企业客户,连续9年香港主机商销量持续增长
https://www.yingsoo.com/products/cloud-hk.html
9年韩国主机 推荐业务运营经验,1200家企业客户共同选择.韩国Korea Telecom机房核心合作伙伴,机房带宽资源充足,到国内速度平均在80ms左右.
https://www.yingsoo.com/products/cloud-kr.html
版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。