远程主机强迫关闭了一个现有的连接,该怎办?关于这个问题,小编整理得出解答,一起来看看吧。
症状和问题: 在达到某连接数后,新建立的连接会直接断开,错误提示如下两条: 无法将数据写入传输连接: 远程主机强迫关闭了一个现有的连接。
。
无法从传输连接中读取数据: 远程主机强迫关闭了一个现有的连接。
。
之前建立的连接正常收发包。
错误代码定位到:System.Net.Sockets.TcpListener类下的EndAcceptTcpClient()方法。
补充描述: 模拟终端和服务端同时提示以上错误,应该不是模拟终端问题。
之前觉得百兆交换机影响,年前换成了千兆的,却没什么大的提升; 服务器硬件应该是千兆网卡,但win2003在VMware 虚拟机内,所以提示100Mbps,但使用率从没超过1%还是0.1%。
如图很详细的啰嗦描述: 0、cpu/内存/线程数 都不高,比如某时刻值: CPU 13%,线程数51,内存859696k 1、如果不发数据包,只建立TCP连接,测试能到2W,甚至更大都没有问题(没有进行更大连接测试)。
2、收发数据包,到1W都正常,再增加模拟终端数量就报如上错误。
3、尝试加长和缩短数据包大小,最大TCP连接数有反比变化,但很小。
(不清楚交换机怎么分包转发的) 4、个人猜测,数据包在某个环节处理不过来引起的问题。
但我程序任何资源的占用都不高。
所以一直怀疑是网络交换机。
另外是否操作系统某些设置也影响,或者虚拟机也影响。
相关远程主机强迫关闭了一个现有的连接,该怎办就介绍到这,谢谢阅读。