2011-04-27 99 views
0

我們有一個LAN網絡和一個ADSL路由器,我想建立一個應用程序來控制客戶端的流量,實際上我想通過限制客戶端的帶寬在網絡中共享Internet。如何從IP地址限制客戶端帶寬? (德爾福)

請注意,在連接到服務器的客戶端中沒有任何應用程序,只需要在服務器中控制流量的一個應用程序。

我可以限制客戶端應用程序的帶寬,當它連接到服務器與更改ans使用Indy組件設置它的IOHandler,但客戶端計算機中沒有任何客戶端應用程序,我想通過IP地址(或主機名)! , 可能嗎 ?! 其實,我們有一些IP地址在網絡中,我們應該限制使用這些IP地址的流量......

有來自先生扎克Gajic一個例子:

http://delphi.about.com/od/fullcodeprojects/l/aa112903a.htm

但it`我只想監控,我想控制交通...

我該怎麼辦?前

感謝...

+0

你爲什麼想從Delphi應用程序中做到這一點?這通常是用一個好的rooter或Linux路由器完成的。 – 2011-04-27 19:53:42

+0

我很好奇,如果有一個API來做到這一點,我想必須有東西,因爲我發現http://www.netlimiter.com/它提供了一個ActiveX來做到這一點 – 2011-04-28 00:17:39

+0

我想它會安裝一個驅動程序到網絡堆棧。 Windows允許安裝「過濾器」驅動程序,該驅動程序可以控制向堆棧中上一個和下一個驅動程序發送/接收的內容。但是這種解決方案不能用Delphi編寫,它需要DDK和一個兼容的C/C++編譯器。 – 2011-04-28 07:20:12

回答

3

基本上你需要爾德通過代理,跟蹤寫一個代理,將所有的流量和計算每個客戶端的帶寬,並開始推遲該要求太多客戶。除非你有充分的理由自己寫,否則有現成的解決方案,即魷魚(https://serverfault.com/questions/79824/limiting-bandwidth-dynamically-in-squid)。

+1

1+ for squid,even在windows – 2011-04-28 08:04:31

+0

謝謝,看來這將是一個麻煩的工作! 我認爲使用調制解調器路由器更好! – 2011-04-28 22:04:46