Clumsy 弱網路環境模擬工具使用介紹
Clumsy弱網路環境模擬工具使用介紹
簡介
利用封裝Winodws Filtering Platform的WinDivert庫, clumsy能實時的將系統接收和發出的網路資料包攔截下來,人工的造成延遲,掉包和篡改操作後再進行傳送。無論你是要重現網路異常造成的程式錯誤,還是評估你的應用程式在不良網路狀況下的表現,clumsy都能讓你在不需要額外新增程式碼的情況下,在系統層次幫你達到想要的效果
下載地址
http://jagt.github.io/clumsy/cn/download
介面簡介
如下圖,大致三部分,過濾器;預知過濾器;功能設定
過濾器語法介紹
outbound:是否為輸出資料包
inbound:是否為輸入資料包
ifldx:網路裝置index
subIfIdx:副網路裝置index
ip:是否為IPv4
ipv6:是否為Ipv6
icmp:是否為ICMP
tcp:是否為TCP
udp:是否為UDP
ip.*: IPv4的引數(見DIVERT_IPHDR
ipv6.*:IPv6的引數(見DIVERT_IPV6DHR
icmp.*:ICMP的引數(見DIVERT_ICMPHDR
icmpv6.*:ICMPV6的引數(見DIVERT_ICMPV6HDR
tcp.*:TCP的引數(見DIVERT_TCPHDR
tcp.PayloadLength:TCP資料長度
udp.*:UDP的引數(見DIVERT_UDPHDR
可以用“< ==”,“> ==”,“and”,“or”,“=”進行過濾器設定
預設過濾器
可以將常用個過濾器寫到clumsy.exe所在資料夾下的config.txt中。
功能設定
勾選左側的複選框後才可對右與左側複選框功能對應的引數進行設定。每個功能左邊都有一個小圓點圖示,其起作用時就會變綠。在資料包捕獲開啟的情況下,可以實時開啟/關閉任何功能,它們都會即時生效。
1)延遲(Lag),把資料包快取一段時間後再發出,這樣可以模擬網路延遲的狀況
2)掉包(Drop),隨機丟棄一些資料
3)節流(Throttle),把一小段時間內的資料攔截下來,並再在之後的統一時間一起發出去
4)亂序(Out of order),打亂資料包傳送的順序
5)篡改(Tamper),隨機修改小部分的資料包內容
其中
Lag time設定延遲毫秒數,
Chance設定該功能發生的概率;
Inbound/Outboud設定是否處理輸入/輸出資料包。這裡是filter基礎上提供的一個選擇的機會,可實時生效。
使用方法
1.設定過濾器
2.功能設定(可選)
3.點選Start
4.其它測試操作
5.點選Stop
學而不思則罔,思而不學則殆