日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Clumsy网络模拟工具

發布時間:2025/3/15 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Clumsy网络模拟工具 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

筆者最近因為需要在局域網內模擬一個實際情況(即存在丟包、延遲等情況)。網上搜了很多工具,大多基于linux。后來好不容易在網上搜索到一款2014年出現的網絡模擬工具----Clumsy。


(參考了http://jagt.github.io/clumsy/)

Clumsy是基于C語言開發的一款開源網絡模擬工具。它能在Windows平臺下人工造成不穩定的網絡狀態,應用它可以方便調試應用程序在極端網絡狀態下的表現。

Clumsy?首先根據用戶選擇的filter來攔截指定的網絡數據。在?filter中可以設定你感興趣的協議(tcp/udp),端口號,是接收還是發出的端口。你也可以通過簡單的邏輯語句來進一步縮小范圍。當?Clumsy?被激活時,只有符合這些標準的網絡數據會被進行處理,而你不感興趣的數據仍然會由系統正常傳輸。當被?filter?的網絡數據包被攔截后,你可以選擇?Clumsy?提供的功能來有目的性的調整網絡情況,下面是Clumsy提供的功能介紹。

(1)延遲(Lag):把數據包緩存一段時間后再發出,這樣能夠模擬網絡延遲的狀況;

(2)丟包(Drop):隨機丟棄一些數據;

(3)截流(Throttle):把一小段時間內的數據攔截下來后再在之后的同一時間一同發出去;

(4)重發(Duplicate):隨機復制一些數據并與其本身一同發送;

(5)亂序(Out?of?order):打亂數據包發送的順序;

(6)篡改(Tamper):隨機修改小部分的包裹內容。

圖1是Clumsy界面(此時丟包率為50%)。

?

圖1:Clumsy?0.2?運行頁面

在局域網(正常情況下,零丟包)環境下,通過ping測試,不同丟包率下的實際丟包率。結果如下:

Clumsy設置的丟包率

0%

5%

10%

20%

30%

40%

50%

60%

70%

80%

90%

ping實驗丟包率

0%(734次)

6%(677次)

11%(782次)

19%(506次)

31%(664次)

38%(725次)

51%(1120次)

58%(823次)

70%(544次)

84%(604次)

91%(455次)


因此從一定程度上證明了該工具的效果很好,延遲也有測試,效果明顯。


筆者用該工具測試了UDP的傳輸、JGroups的組播通信。有興趣研究可靠性的讀者可以參考該工具,目前該工具更新到0.2版本。

如果有人在首次下載使用時,啟動失敗,應該是版本不對,Clumsy有32和64位2個版本(下載地址:http://jagt.github.io/clumsy/download.html),筆者在首次使用也遇到了該問題。

歡迎交流!


總結

以上是生活随笔為你收集整理的Clumsy网络模拟工具的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。