gpt4 book ai didi

java - 服务器在建立后立即通过 FIN、ACK 和 RST 关闭 TCP 连接

转载 作者:可可西里 更新时间:2023-11-01 02:54:43 28 4
gpt4 key购买 nike

在 Mac OS X 10.8 机器上,我有一个 Tomcat 7.0.40 服务器和一个客户端,它们都在本地运行。通过 3 次握手建立 TCP 连接,紧接着是来自服务器的 FIN、ACK 和 RST。客户端收到“来自服务器的文件结束”或“连接重置”。

TCP 序列:

客户端同步
服务器 SYN, ACK
客户端确认

服务器 [TCP 窗口更新] ACK
服务器 FIN, ACK
客户端ACK
服务器 [TCP Dup ACK] ACK
客户端 GET/myurl/...
服务器 RST

详情
- 客户端和服务器都在本地运行
- 第一个 GET 请求失败。以下请求成功。
- 没有防火墙
- maxfiles 已经增加,徒劳

服务器关闭套接字的原因是什么?感谢提示和想法。

编辑:Tomcat 的日志具有以下堆栈跟踪:

    FINE: Error parsing HTTP request header    java.net.SocketException: Invalid argument    at java.net.SocketInputStream.socketRead0(Native Method)    at java.net.SocketInputStream.read(SocketInputStream.java:150)    at java.net.SocketInputStream.read(SocketInputStream.java:121)    at org.apache.coyote.http11.InternalInputBuffer.fill(InternalInputBuffer.java:516)    at org.apache.coyote.http11.InternalInputBuffer.fill(InternalInputBuffer.java:501)    at org.apache.coyote.http11.InternalInputBuffer.parseRequestLine(InternalInputBuffer.java:98)    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:928)    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)    at java.lang.Thread.run(Thread.java:724)

    Aug 14, 2013 5:15:17 PM org.apache.coyote.http11.AbstractHttp11Processor process    FINE: Error parsing HTTP request header    java.io.EOFException: Unexpected EOF read on the socket    at org.apache.coyote.http11.Http11Processor.setRequestLineReadTimeout(Http11Processor.java:174)    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:926)    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)    at java.lang.Thread.run(Thread.java:724)

最佳答案

您必须违反配置的访问规则,例如 IP 地址黑名单,或者向它发送它不理解的内容。

关于java - 服务器在建立后立即通过 FIN、ACK 和 RST 关闭 TCP 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18142836/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com