首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Netscaler:突发ACK,RST数据包

Netscaler:突发ACK,RST数据包
EN

Stack Overflow用户
提问于 2015-11-30 13:40:48
回答 2查看 3.4K关注 0票数 2

我们的客户之一使用Netscaler作为Fuse服务器和Tomcat托管软件之间的平衡器中间件。目前,我们的软件和netscaler之间正经历着奇怪的通信行为(我们正在使用Spring进行SOAP请求):一段时间后,由于正在向netscaler发出请求并等待响应,netscaler将向我们的服务器发送ACK、RST数据包,并因此抛出“连接重置”IOException。tcp转储如下:

根据netscaler,重置数据包的Win字段包含错误代码,在这种情况下是9300,这意味着‘清理空闲连接’,这反过来意味着netscaler运行“僵尸”进程,清除空闲连接,并且该进程已经将我们的连接识别为空闲。

为什么在这种情况下,netscaler将连接视为idle

更新在这里是更完整的通信日志:

EN

回答 2

Stack Overflow用户

发布于 2015-12-01 11:23:53

服务器和重置数据包之间的时间增量是多少?您可以在netscaler上为空闲的客户端调优空闲超时值,对于需要很长时间响应的服务器也可以调优空闲超时值。

票数 0
EN

Stack Overflow用户

发布于 2015-12-03 06:12:48

好吧,这就是我读到的,有人说过:

  1. 在TCP层,连接挂起的协议没有问题(即在较长的一段时间内不发送任何消息,也没有连接终止序列);
  2. 尽管如此,问题还是在更高的级别出现(为每个连接分配系统资源),为了解决这个问题,挂起的连接有一个非官方的(因为它容易出错)解决方法:为了优雅地终止连接,连接的任何一方都可能发送keepalive数据包(探测),并在发送了几个数据包之后采取行动,而没有接收到来自另一方的响应。
  3. Netscaler通过两种方式来响应挂起连接的问题:它要么在一定的(可配置的)时间之后关闭挂起连接,要么它可以使用“保持活动-探测分配”(并且在其中也有可配置的参数)。

尽管我们的客户确实发现了隐藏在服务实现(长请求处理)中的更深层次的问题,但我们也可以应用保留活动探测方法来停止连接重置。

链接:

TCPConnectionManagementandProblemHandlingtheConnec-3.htm

https://www.citrix.com/blogs/2012/07/26/netscaler-10-keep-alive-value-add-to-the-tcp-stack-with-profiles/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34000012

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档