2013-02-01 75 views
6

我是wireshark和一般網絡的新手,但我正在監視我的應用程序的流量,我可以過濾它,所以我可以看到它何時主動傳輸數據,它應該與服務器,但wireshark顯示此:這是什麼wireshark信息

protocol = TCP 
length = 54 
info = 56705 > ms-wbt-server [ACK] Seq=1 Ack=61 Win=252 Len=0 

從我的應用程序每秒鐘觸發到我的應用程序服務器。爲什麼我的應用程序每秒都在發送這些數據包?

這是一個c#.net應用程序,如果有任何幫助。

回答

7

這是一個TCP keepalive數據包,不包含任何數據但設置了ACK標誌。只是告訴另一端你還在那裏,並保持連接打開。

有一個很好的概述這裏: http://tldp.org/HOWTO/TCP-Keepalive-HOWTO/overview.html

+0

謝謝@Vicky,當我被允許時,我會在5分鐘內接受。你能否告訴我keepalive是否適合大型分佈式系統?系統中有大約50000個客戶端向單個應用程序服務器報告,這種保持活動可能會導致性能下降?或者是如此小的包裝以及50000個客戶,數量不多,不應該對網絡性能造成太大影響? – 0xor1

+0

服務器是否需要知道客戶端仍然存在,並且客戶端是否需要立即知道服務器無法訪問?如果沒有,您可以在您的TCP設置中關閉它。是的,keepalive數據包很小,但有50,000個客戶端向同一臺服務器發送一個60字節的keepalive(編輯:當然是回覆),如果*沒有影響,我會感到驚訝網絡性能。 – Vicky

+4

非常感謝:)原來keepalive數據包來自我的遠程桌面連接,而不是我的應用程序hehe,很少。 – 0xor1

7

MS-WBT-服務器端口3389,以及用於遠程桌面協議(RDP),你有你的服務器的任何遠程桌面打開的連接機會?