版本号:WANem_3.0_Beta2
运行平台:Knoppix 6.7.1
一、 概述
WANem—WAN emulator广域网模拟器,可以模拟在各种网络状况比如带宽,延迟,丢包,抖动等。
高级功能有:随机复位连接、按概率发重复包、按概率使包乱序和按概率瞬时断开网络,按协议随机断开连接等,而且可以针对不同的协议,不同的主机,不同的网络甚至是不同的应用程序来模拟。
其优点如下:
WANem在单网卡设备上即可实现所有功能
WANem支持从光盘启动,不需要将它安装到硬盘也可使用,甚至可以运行于虚拟机上,此时桥接主机的网卡即可使用,非常方便
支持完全图形化的界面配置,方便设置
可以设置多条规则,不同规则不同用户使用互不干扰,方便用于集中式的测试环境
仅需要调整路由表即可应用设置的规则
二、 安装WANem
下载WANem镜像文件,以安装普通操作系统的方式安装WANem即可。具体步骤如下:(这里以安装在虚拟机为例。)
-
将WANem_3.0_Beta2.iso镜像文件挂载到光驱里。
-
打开虚拟机电源。
-
安装过程中不需要进行任何操作。安装界面显示内核版本号,系统内存,cpu等
-
检查IP地址,这里没有自动获取IP地址,所以之后需要手动配置一个。
-
显示WANem版本号,作者以及基于的linux系统。
-
进入WANem主界面。
-
至此,安装完成。
-
设置IP地址。打开左下角的LXTerminal终端模拟器,输入help可以查看基础命令。
-
输入exit2shell。
-
输入ifconfig eth0 192.168.10.100 netmask 255.255.255.0(此种方法即使生效,重启后恢复为原来的IP)
-
输入ifconfig查看IP
-
在另一台计算机的浏览器地址栏输入http://192.168.10.100/WANem”(这个IP是虚拟机里面配置的IP,后面的WANem区分大小写。)进入到WANem主界面。
三、 WANem 功能介绍
1、WANalyzer
-
WANalyzer是广域网学习工具,通过学习到目标主机的丢包,时延,抖动,自动模拟该网络环境。输入远程计算机的IP地址,单击右侧Start WAN Characterization.
-
弹出新窗口,新窗口将显示到目标IP的延时、丢包、抖动、可用带宽等。
2、Basic Module
如果选择基本模式,只有一组网络特性可以用于每一个网络接口。这样的集合被称为一个规则集,在基本模式中,每个规则集将允许用户使用以下指定网络特性:带宽和延迟。用户可以选择带宽也可以指定带宽。
3、AdvancedModule
高级模式:
选择正确的网络接口后(通常选择默认的eth0),单击start按钮,进入高级模式主界面。
在高级模式中,上面的页面显示的是一个规则集。具体使用参见下文。
4、Save/Restore
保存、恢复
在高级模式中可以保存规则集到本地,也可以从本地恢复规则集。
5、RemoteTerminal
远程终端
四、 使用
目的:要模拟PC-1跟PC-2之间丢包,延迟,抖动等。通过ping命令查看它们之间的通信情况;限制带宽,通过jperf查看PC-1跟PC-2之间数据传输的带宽。
1、创建了3台虚拟机。
虚拟机名称 | 操作系统 | IP地址 |
---|---|---|
WANem | WANem | 192.168.10.100 |
PC-1 | windows10 | 192.168.10.1 |
PC-2 | windows10 | 192.168.10.2 |
2、 以管理员身份运行PC-1的命令提示符,输入route print,查看PC-1的路由表。
3、输入routeadd192.168.10.2 mask 255.255.255.0 192.168.10.100,回车。
4、 输入route print查看路由表,路由表中显示刚刚添加成功的路由。
4、输入tracert 192.168.10.2(路由跟踪,tracert命令用IP生存时间和ICMP错误消息来确定一个主机到网络上其他主机的路由),显示如图结果,说明测试机PC-1是通过虚拟机WANem的路由访问目标机器PC-2的.
5、测试网络延迟情况下PC-1和PC-2之间的通信。在基本模式中将时延设置为5ms,单击apply settings。
6、以管理员身份运行PC-1的命令提示符,输入ping192.168.10.2-t,回车。观察一段时间后输入Ctrl+C,屏幕上显示数据包的丢失情况,最长往返时间,最短往返时间时延等。与之前设置的一致。
7、测试丢包情况下PC-1和PC-2之间的通信,在高级模式中将丢包率设置为50%,单击apply settings。
8、以管理员身份运行PC-1的命令提示符,输入ping192.168.10.2-t,回车。观察一段时间后输入Ctrl+C,屏幕上显示数据包的丢失情况,最长往返时间,最短往返时间时延等。与之前设置的一致。
9、测试带宽限制情况下PC-1和PC-2之间的通信,在高级模式中将带宽限制设置为100Mbps,单击apply settings。
10、在PC-2中安装jperf,以管理员身份运行PC-1的命令提示符,输入cd D:DocumentsDesktopjperf-windowsin(即cd+iperf.exe文件所在地址)回车。输入iperf.exe–s
11、在PC-1中安装jperf,以管理员身份运行PC-1的命令提示符,输入cd D:DocumentsDesktopjperf-windowsin(即cd+iperf.exe文件所在地址)回车。输入iperf.exe–c 192.168.10.2输入观察一段时间后输入Ctrl+C,屏幕上显示数据包的丢失情况,最长往返时间,最短往返时间时延等。与之前设置的一致。
五、基础英文对照
Packet Limit:用来设置包的队列大小,默认为1000,当队列超过1000时,超过的包将被丢弃
Symmetrical network:对称网络,选中为Yes的时候,应用网络的规则将在数据包来回的方向上都生效
Choose BW:从快速列表选择带宽
Specify BW:自定义带宽
Delay:延时,这里设置的是单向的延时。Jitter,抖动;Correlation,相关性,用来设置这个包的延迟时间与上一个包的时间的相关度
Loss:丢包率;Correlation,相关性,以一定的概率发生突发的大量的丢包,但平均丢包率不会超过Loss定义的值
Duplication:重包率,以一定概率生成某个包的多份拷贝,并按随机时间到达目标端。Correlation,相关性,类似Loss。
Packet reordering:包重排序率,按概率将包的顺序打乱,gap用来确定包重排序的个数,不设置更接近真实的环境
Corruption:错包率,按概率产生噪音,即格式错误的包
Idle timer Disconnect:空闲断开定时器,当网络空闲时,按设定的时间对Type定义的协议断开连接。
Random Disconnect:按Type随机断开,MTTF,平均失效前时间,用Low和High定义两个极值,MTTF,平均恢复前时间
IP source address:匹配的源IP地址
IP source subnet:源IP地址的子网
IP dest address:匹配的目标IP地址