我们在Tomcat8上运行了一个应用程序,在https get响应中,有两个重新组装的SSL段。
有没有办法关闭它并发送一个TCP数据包?在这里输入图像描述
发布于 2016-01-04 07:26:43
在Tomcat6中,只有一个数据包,大小约为2700字节。在Tomcat8中,它是两个重新组装的SSL段。一个是包含头部的290,另一个是带有xml主体的左侧。
通过将端口更改为"org.apache.coyote.http11.Http11Nio2Protocol",,它工作得很好。我还尝试了"org.apache.coyote.http11.Http11Nio1Protocol",,它将发送两个包,对于"org.apache.coyote.http11.Http11Protocol",它只发送一个数据包。
发布于 2015-12-15 14:10:58
恐怕答案是“可能不会”,但让我们先确定你的网络正在做正确的事情。响应中的最大段大小受客户端在TCP握手中发送的MSS (最大段大小)值的限制。
由于您可以看到重新组装正在进行,我将假设您拥有Wireshark或tcpdump。查看您的客户端在会话开始时发送的SYN数据包。查找TCP选项,并在此范围内查找MSS值。大多数以太网硬件的正常值将为1460字节。
如果本地网络硬件支持MSS,那么增加MSS的一种方法就是启用巨型框架。
还要注意的是,在复杂的环境中,“智能”路由器和防火墙能够拦截和修改(即减少) MSS值,以满足自身的限制。在这样的环境中,您确实必须在连接的两端都有wireshark,才能看到整个画面。
https://stackoverflow.com/questions/34283167
复制相似问题