Clumsy网络模拟工具
2017-10-13 15:15
232 查看
笔者最近因为需要在局域网内模拟一个实际情况(即存在丢包、延迟等情况)。网上搜了很多工具,大多基于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测试,不同丢包率下的实际丢包率。结果如下:
因此从一定程度上证明了该工具的效果很好,延迟也有测试,效果明显。
笔者用该工具测试了UDP的传输、JGroups的组播通信。有兴趣研究可靠性的读者可以参考该工具,目前该工具更新到0.2版本。
如果有人在首次下载使用时,启动失败,应该是版本不对,Clumsy有32和64位2个版本(下载地址:http://jagt.github.io/clumsy/download.html),笔者在首次使用也遇到了该问题。
欢迎交流!
(参考了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
- 差网络模拟工具---clumsy
- 【优秀框架记录】差网络环境模拟工具 Clumsy
- 差网络环境模拟工具 Clumsy
- [测试]Clumsy网络模拟工具
- 差网络模拟工具---clumsy
- Clumsy logo差网络环境模拟工具 Clumsy
- iOS模拟低速网络工具Network Link Conditioner的使用
- 用Fiddler模拟低速网络环境 差网络模拟工具 http 500是什么意思?
- NS2杂项(ns2相关的其他工具、NS2无线模拟相关的网站、计算机网络系列学术讲座、NS2 GDB调试、NS2跨层设计的思想、VANET路由--蚂蚁的一点启发、NS2一些有用的网站)
- tc: 模拟网络异常的工具-----------鸟窝
- 复杂网络环境模拟工具软件
- 基于代理的低速网络模拟工具
- iOS模拟低速网络工具Network Link Conditioner的使用
- facebook网络环境模拟工具atc
- 网络模拟工具
- 一个Linux下的网络模拟工具 Core
- iOS模拟低速网络工具Network Link Conditioner的使用
- iOS模拟低速网络工具Network Link Conditioner的使用
- 【计算机网络】网络诊断工具ping的模拟实现之基础知识