![](/img/trans.png)
[英]How do i tell EclipseLink to stop ServerSession Connection Queries
[英]How to tell the first fin packet of tcp connection from the second with tcpdump?
我正在開發一個http服務器。 現在我想做一些統計,具體來說,我想知道客戶端關閉了多少個tcp連接,以及我的服務器關閉了多少個。
我在我的http服務器上關閉了保持活動功能,所以正常情況是我的服務器發送第一個FIN數據包而客戶端發送第二個數據包,這意味着我的服務器正常關閉連接。 如果它們的順序相反,則表示關閉異常,我關心。
這是一個問題,如何通過tcpdump告訴第二個FIN數據包? 由於它們都設置在FIN和ACK標志位中。
在此先感謝新年快樂!
我正在通過ssh
將連接隧道連接到我的web服務器,它正在監聽5000 / tcp。 我運行了一個會話的tcpdump
,即使你忽略了時間戳,它仍然清楚誰從TCP源端口號發送了什么。
05:42:06.344592 IP localhost.5000 > localhost.37924: Flags [F.], seq 243,
ack 419, win 529, options [nop,nop,TS val 120830308 ecr 120830308], length 0
05:42:06.381872 IP localhost.37924 > localhost.5000: Flags [.], ack 244,
win 513, options [nop,nop,TS val 120830318 ecr 120830308], length 0
05:42:06.382504 IP localhost.37924 > localhost.5000: Flags [F.], seq 419,
ack 244, win 513, options [nop,nop,TS val 120830318 ecr 120830308], length 0
05:42:06.382535 IP localhost.5000 > localhost.37924: Flags [.], ack 420,
win 529, options [nop,nop,TS val 120830318 ecr 120830318], length 0
在05:42:06.344592
,我的網絡服務器從客戶端確認了字節並設置了FIN
標志。 我知道它是網絡服務器,因為源端口是5000.在現實世界中,它更容易,你的源IP地址就讓它消失了。
在05:42:06.382504
,客戶端向服務器的FIN
發送了ACK。 我們再次知道,因為源端口不是5000。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.