2011-11-08 198 views
5

我可以在Java監控程序上創建網絡流量嗎?該程序必須控制從計算機程序(包括OS模塊)到網絡驅動程序並返回的所有網絡通信量。如果是,如何?監控網絡流量

注:

我想不僅監控流量也進行控制。我想在Windows NT上實現這樣的系統。它不能完全依靠Java來實現。我如何在JNI的幫助下執行它?

或者也許是另一種變體。我不熟悉Windows服務,但仍然。我將在C++上編寫一個程序並將其註冊爲Windows服務。然後,我從我的Java應用程序調用此服務(我不知道如何執行此操作)並請求網絡流量。在C++程序的部分,如果沒有Java程序(或者它不請求流量),所有流量都將被阻塞;另一方面傳輸到這個程序。可能是Java部分可以實現並在Java服務器上工作(Glass Fish,JBoss)。 C++部分反過來將流量傳輸到本地主機。

您對這些方式有什麼看法?

+0

你想爲此構建哪個操作系統? –

+0

我想在Windows NT,特定Windows 7上使用它。 – itun

+0

您想要控制流量,還是要監控流量?這是兩件非常不同的事情...... – Brad

回答

9

「監測網絡流量」然後pcap,我會說。

使用Google搜索「pcap java」給我帶來了第一擊:jNetPcap

沒有測試它,但pcap是原生C程序的標準解決方案。無法分辨Java包裝是否好,但至少它的網站看起來不錯。 ;-)