Tcp/IP 端口耗尽
原文链接:http://msdn.microsoft.com/zh-cn/library/aa560610(v=bts.10).aspx
本文内容:1.查看端口使用状况的方法;2、端口耗尽所带来的问题;3、解决办法
当客户端启动到服务器的 TCP/IP 套接字连接时,客户端通常连接到服务器上的特定端口,并请求服务器通过临时(或暂时)TCP 或 UDP 端口进行响应。在 Windows Server 2003 和 Windows XP 中,客户端应用程序所使用的临时端口的默认范围为 1025 到 5000。在某些情况下,有可能耗尽默认范围的可用端口。
- 在运行 Windows XP 或 Windows Server 2003 的计算机上单击“开始”,再单击“运行”,然后键入 cmd,单击“确定”打开命令提示。
- 执行以下操作之一:
- 在 Windows XP 或 Windows Server 2003 计算机上的命令提示中输入以下命令,显示此计算机上 TCP/IP 协议所使用的活动连接:
netstat -n
这将列出绑定到客户端计算机的 TCP/IP 地址以及 TCP/IP 地址与远程服务器通信所使用的端口。如果列出的端口使用了所有可用的端口,则出现了 TCP/IP 端口耗尽现象。- 在基于 Windows Server 2003 的客户端计算机的命令提示中输入以下命令,以显示 TCP/IP 协议所使用的活动连接:
netstat -b
与 TCP/IP 端口耗尽有关的问题
当客户端应用程序尝试使用 TCP/IP 套接字连接到 Server,可能会出现类似于下面的情况:
- 或者 -
System.Net.Sockets.SocketException: Only one usage of each socket address (protocol/network address/port) is normally permitted.
原因
如果客户端计算机中存在数目超常的 TCIP/IP 套接字连接,则客户端计算机上可能出现 TCP/IP 端口耗尽的情况。如果多个客户端应用程序都在建立连接,则可能出现这种情况。
如果所有可用的临时端口都分配给了客户端应用程序,则客户端将出现 TCP/IP 端口耗尽的情况。当 TCP/IP 端口耗尽时,将无法预留客户端端口,并且尝试通过 TCP/IP 套接字连接到服务器的客户端应用程序也将出错。
在高负载情况下,比处于正常负载时更容易出现 TCP/IP 端口耗尽的情况。
解决方法
执行以下步骤以避免 TCP/IP 端口耗尽及其相关问题:
- 验证客户端应用程序没有生成过多的 TCP/IP 套接字连接。这一点可以用上面提到的方法来检查,即在 Windows Server 2003 和 Windows XP 上运行 netstat -n,或者在 Windows Server 2003 和 2008 上运行 netstat -b。
如果某个客户端应用程序使用了数量超常的 TCP/IP 套接字连接,则应考虑重新设计客户端应用程序,以便更有效地使用 TCP/IP 套接字连接。
如果大量客户端应用程序要启动已知数量的 TCP/IP 套接字连接,但没有足够数量的可用临时端口来满足连接请求,则需要进行以下注册表修改。 - 增加动态分配到客户端 TCP/IP 套接字连接的临时端口的上限。
- 启动注册表编辑器,在注册表中,浏览到并单击以下注册表项。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
- 在“编辑”菜单中单击“新建”、“DWORD 值”,然后添加以下注册表值,以增加可以动态分配到客户端的临时端口的数量:
值名称
MaxUserPort
值数据
<在此输入一个 5000 到 65534 之间的十进制值>
- 关闭注册表编辑器。
注意 必须重新启动计算机,此更改才会生效。
降低客户端 TCP/IP 套接字连接的超时值(默认值为 240 秒)
- 启动注册表编辑器。
- 在注册表中,浏览到并单击以下注册表项。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters - 在“编辑”菜单中单击“新建”、“DWORD 值”,然后添加以下注册表值,以缩短关闭连接时,该连接处于 TIME_WAIT 状态的时间。当连接处于 TIME_WAIT 状态时,套接字对无法重新使用:
值名称
TcpTimedWaitDelay
值数据
<在此输入一个 30 到 240 之间的十进制值。>
- 关闭注册表编辑器。
注意 必须重新启动计算机,此更改才会生效。
转载于:https://www.cnblogs.com/kevinGao/archive/2011/11/29/2270746.html
Tcp/IP 端口耗尽相关推荐
- SQL Server 默认和命名实例连接问题-TCP/IP 端口
TCP/IP的基本工作原理这里就不浪费口水了.现在这网络年代,谁不知道TCP/IP啊.不要跟我抬杠说你偏就没听说过TCP/IP阿,真是这样那你得自己去补补课了. TCP/IP协议有两个基本的东西,一个 ...
- Socket网络编程(TCP/IP/端口/类)和实例
原文:C# Socket网络编程精华篇 转自:微冷的雨 我们在讲解Socket编程前,先看几个和Socket编程紧密相关的概念: TCP/IP层次模型 当然这里我们只讨论重要的四层 01,应用层(Ap ...
- xp系统简单tcpip服务器,Win XP系统下添加打印机的方式手工添加TCP/IP端口
1.在安装TCP/IP打印机之前.先准备好打印机的相关驱动. 2.在安装的电脑上能用ping命令,测验打印服务器网络是否处于联通状态. 点开始 运行 ping 服务器的IP -t 或者键盘左下角微软键 ...
- tcp/ip 端口号有哪些
按端口号可分为3大类: (1)公认端口(WellKnownPorts):从0到1023,它们紧密绑定(binding)于一些服务.通常这些端口的通讯明确表明了某种服务的协议.例如:80端口实际上总是H ...
- xp系统远程计算机需要网络打印机驱动,WinXP手动添加TCP/IP端口及安装打印机驱动(系统向导安装,不需要任何软件)...
打印机驱动安装,一般情况下我们都建议客人使用"打印机驱动安装助手"安装,但有些电脑运行软件出错:或者是有些客人顾虑软件安全性:或者是服务器版本太老无法支持,所以做这个教程,脱离任何 ...
- TCP/IP 端口号大全
端口:0 服务:Reserved 说明:通常用于分析操作系统.这一方法能够工作是因为在一些系统中"0"是无效端口,当你试图使用通常的闭合端口连接它时将产生不同的结果.一种典型的扫描 ...
- http/tcp/ip/端口
http是www服务器和本地浏览器之间传输超文本的协议. 每一台机器都有一个属于自己的ip地址,计算机也需要知道是哪个程序来接受信息,这里也就引入了端口号,可以简单地理解每一个程序都有一个唯一的端口号 ...
- win10系统打印服务器,Win10手动添加TCP/IP端口及安装打印机驱动(系统向导安装,不需要任何软件)...
1.00) 在电脑上添加您的打印机. 1.01) 点击屏幕左下角的小圆圈–输入"-设备和打印机"– 然后点击上面的 设备和打印机. 1.02) 点击"添加打印机" ...
- TCP/IP协议号和端口
TCP/IP协议号和端口类似于PC机的并口或串口,也可以将其想象成交通中的交叉路口.程序员使用TCP/IP协议号和端口的目的是在TCP/IP的高层(传输层和应用层)为用户数据包选择路径,只不过协议号用 ...
最新文章
- 【技术贴】火狐的悬停激活标签扩展插件下载。Tab Focus
- 基于云的CRM系统到底好在哪里?
- openid saml2_单一登录云:SAML和OpenId
- 云厂商靠不靠谱?“国家级标准”鉴定结果来啦
- CocosCreator发布web-desktop获取本地资源
- VisualAssistX中文注释提示错误 解决办法
- 使用ip rule查询路由策略, 使用ip route修改静态路由表
- openwrt源码分析_编译个性化的OPENWRT固件(openWRT源码修改)
- win10 基础之上安装 Linux-Manjaro-Deepin 连夜采坑,快速整理下
- java删除非空文件夹
- 使用HTML制作静态网站(圣诞节案例)
- CSS设计彻底研究-读书笔记
- 【空气质量数据分析专题四】超标状况分析
- laravel集合collect中的implode
- c语音程序加密题(字母后加四位)
- “让数据多跑腿,让群众少跑路” 京东区块链助力司法体系实现高效透明
- 【设计模式】设计模式总结 ( 七大设计原则 | 创建型模式 | 结构型模式 | 行为型模式 ) ★★★
- CSAPP(深入理解计算机系统)
- 【独家】彩虹最新6.6版本/免授权/后台同步官方版本升级
- 三菱5uplc伺服电机指令_三菱FX3U PLC如何控制松下伺服