TCP窗口大小分配,TCP窗口零错误和networking延迟

我的想法即将爆炸,因为每个人都在指责networking人员的networking断开和缓慢,但Solarwinds报告说,在networking设备和链接的所有使用情况是好的。 所以我尝试嗅探,然后我得到“零窗口”的错误。 所以如果我可能会问:

1.)如何分配TCP窗口大小? (它是每个TCP对话,就像你有1应用程序(Mozilla Firefox)和5个标签打开,然后操作系统分配每个标签的窗口大小?)

2.)是什么原因造成的以及如何解决“TCP零窗口”问题? (股票交易服务器是一个难以处理突发stream量并向交易者发送TCP零窗口消息的人,但是基于Solarwinds和性能监控中的networking利用率(CPU,内存和链路利用率) CPU,磁盘空间,内存,网卡利用率)在股票交易服务器和数据库服务器,它表明,是完美的正常,甚至利用不足!)

3.)它可能在交易服务器的设置? (32 GB的内存,但只使用64 MB的默认TCP窗口分配大小)

4.)或者,交易应用程序处理数据的速度有多慢? (我计划将TCP缓冲区大小从64KB增加到大约256KB,但如果Trading Application Server本身缓慢处理数据,则可能无济于事。)

5.)此外,所有交易者都遇到“无法连接到交易服务器”和“间歇性连接”错误。 (但没有像“下载链接”或“充分利用的链接”的networking问题的报告,我甚至试图改变轮询数据,每隔1分钟捕获短的断开连接,但我仍然没有问题)所以我认为那里可能是延迟问题

6.)如何有效地测量networking通信的延迟? 你推荐什么免费和付费的软件解决scheme? (Traceroute报告4ms,即使我增加ping数据包到1MB,它也显示1-3ms的延迟,所以我不认为这是有帮助的)

7.)如果源端口和目标端口是相同的,并且数据是encryption的,那么如何分离每个TCP线程/对话? (如果股票交易服务器和SQL Server在相同的端口号上进行交谈,但是有多个交易正在进行)。

对不起,我只是networking世界的新手,所以有很多东西我不知道,在图书和其他资源找不到。 我觉得这种事情是通过经验来学习的,所以请分享一下你的智慧。

谢谢你,有一个美好的一天! 🙂