所以,如果客户端已使用端口 64992 与服务端 A 建立了连接,那么客户端要与服务端 B 建立连接,还是可以使用端口 64992 的,因为内核是通过四元祖信息来定位一个 TCP 连接的,并不会因为客户端的端口号相同,而导致连接冲突的问题 。
客户端 TCP 连接 TIME_WAIT 状态过多,会导致端口资源耗尽而无法建立新的连接吗?
要看客户端是否都是与同一个服务器(目标地址和目标端口一样)建立连接 。
如果客户端都是与同一个服务器(目标地址和目标端口一样)建立连接,那么如果客户端 TIME_WAIT 状态的连接过多,当端口资源被耗尽,就无法与这个服务器再建立连接了 。即使在这种状态下,还是可以与其他服务器建立连接的,只要客户端连接的服务器不是同一个,那么端口是重复使用的 。
如何解决客户端 TCP 连接 TIME_WAIT 过多,导致无法与同一个服务器建立连接的问题?
打开 net.ipv4.tcp_tw_reuse 这个内核参数 。
因为开启了这个内核参数后,客户端调用 connect 函数时,如果选择到的端口,已经被相同四元组的连接占用的时候,就会判断该连接是否处于 TIME_WAIT 状态 。
如果该连接处于 TIME_WAIT 状态并且 TIME_WAIT 状态持续的时间超过了 1 秒,那么就会重用这个连接,然后就可以正常使用该端口了 。
完,搞定!
原文链接:https://mp.weixin.qq.com/s/3fMZN_LidCi5fiD16nNWWA 作者:小林coding
推荐阅读
- 霉菌和支原体合并感染治疗
- 张凌赫|“新晋男友”张凌赫和“一线小花”白鹿的绯闻恋情无人塌房?
- 罗纳德·里根|泽连斯基和里根,均是演员从政当选总统,谁演戏更成功?
- 和田玉籽料|明以前 熟坑 和田玉籽料 白玉 工字珮 挂件
- 有理数和无理数的区别 无理数包括哪些-有理数和无理数的区别怎么区分-
- 李荣浩|评价杨淳和张艺雯的时候,李荣浩特意加了两个前提,体现了高情商
- 想和你谈一场以结婚为目的的恋爱?抱着结婚的目的谈恋爱
- 时间简史和空间简史的作者?时间飞逝随笔
- TFBOYS|TFBOYS和TNT哪个更火\t呢?
- 傅娟|1995年,33岁傅娟怀孕7个月,才和恋爱10年的欧阳龙举行婚礼
