2012-12-04 111 views
0

我有一個客戶端,是得到一個基於Wireshark的網絡sniifer

java.io.IOException: End of message stream 

客戶端Wireshark的申請以下信息,這都突出顯示灰色,當連接拋出異常的分析產生java.io.IOException。

亮點表示:tcp.flags & 0×02 || tcp.flags.fin == 1

297 2012-11-30 14:36:49.926004309 10.17.31.1 192.175.217.57 TCP 64 synchronet-db > zymed-zpp [FIN, ACK] Seq=5476 Ack=5648 Win=64688 Len=0 

301 2012-11-30 14:36:57.932469330 192.175.217.57 10.17.31.1 TCP 66 pda-gate > synchronet-db [SYN] Seq=0 Win=65535 Len=0 MSS=1380 SACK_PERM=1 
302 2012-11-30 14:36:57.932663669 10.17.31.1 192.175.217.57 TCP 66 synchronet-db > pda-gate [SYN, ACK] Seq=0 Ack=1 Win=8192 Len=0 MSS=1460 SACK_PERM=1 
305 2012-11-30 14:36:58.277517580 10.17.31.1 192.175.217.57 TCP 64 synchronet-db > pda-gate [FIN, ACK] Seq=1 Ack=88 Win=64860 Len=0 


309 2012-11-30 14:37:08.276802200 192.175.217.57 10.17.31.1 TCP 66 esnm-zoning > synchronet-db [SYN] Seq=0 Win=65535 Len=0 MSS=1380 SACK_PERM=1 
310 2012-11-30 14:37:08.276975480 10.17.31.1 192.175.217.57 TCP 66 synchronet-db > esnm-zoning [SYN, ACK] Seq=0 Ack=1 Win=8192 Len=0 MSS=1460 SACK_PERM=1 
313 2012-11-30 14:37:08.594186629 10.17.31.1 192.175.217.57 TCP 64 synchronet-db > esnm-zoning [FIN, ACK] Seq=1 Ack=88 Win=64860 Len=0 
315 2012-11-30 14:37:08.594592509 192.175.217.57 10.17.31.1 TCP 64 esnm-zoning > synchronet-db [FIN, ACK] Seq=88 Ack=2 Win=65535 Len=0 

317 2012-11-30 14:37:18.588553260 192.175.217.57 10.17.31.1 TCP 66 nirp > synchronet-db [SYN] Seq=0 Win=65535 Len=0 MSS=1380 SACK_PERM=1 
318 2012-11-30 14:37:18.588744940 10.17.31.1 192.175.217.57 TCP 66 synchronet-db > nirp [SYN, ACK] Seq=0 Ack=1 Win=8192 Len=0 MSS=1460 SACK_PERM=1 
321 2012-11-30 14:37:18.906341549 10.17.31.1 192.175.217.57 TCP 64 synchronet-db > nirp [FIN, ACK] Seq=1 Ack=88 Win=64860 Len=0 
323 2012-11-30 14:37:18.906758749 192.175.217.57 10.17.31.1 TCP 64 nirp > synchronet-db [FIN, ACK] Seq=88 Ack=2 Win=65535 Len=0 

任何想法可能會導致異常?這僅僅是一個網絡問題,還是它可能成爲應用程序的問題?

+0

它是否反覆出現? – Mob

+0

它反覆發生,但偶爾發生。 – richs

回答

2

拋出異常期待更多的數據比它收到了當FIN到達的類。這不是網絡問題,這是一個應用協議問題。

+0

你能解釋一下嗎?該應用程序正在使用Java的套接字庫,並沒有做任何特別的事情。 – richs

+2

@richs'消息流結束'是一個應用程序消息。 JDK中沒有這樣的消息。應用程序拋出'新的IOException(「消息流結束」)'。 – EJP