公司软件产品EB的采集端在网络状况正常时,可进行视频直播,但在网络较差时会出现卡顿,现使用NEWT(Network Emulator for Windows Toolkit)模拟延时的网络环境下进行直播测试。
NEWT是一个简单实用的网络模拟工具软件。开始是微软内部为搭建网络模拟服务于网络的研究工作而开发,之后开发维护并将NEWT的核心代码先后成功地转移到了微软的产品Xbox XDK,Games for Windows Live,以及Visual Studio 2010中,才广泛运用于用户,但找到相关的文档较少。
NEWT的下载地址:https://blog.mrpol.nl/2010/01/14/network-emulator-toolkit/ (注意32和64位系统)
软件界面:
正常的网络时ping一下其他PC:
正常的网络环境下没有丢包,延迟时间<1ms
接下来使用NEWT,创建一个过滤器,可以在菜单中点击configuration->new filter,也可以点击快捷按钮进行创建:
弹出的界面中,点击add按钮后,点击close按钮
Filter List Property框的下方列表中为排除的网段和协议的选项,由于Network Type中勾选的是All Network,点击add的按钮默认添加的是所有网段和协议,故此处不点击勾选按钮
接着创建一个新的连接,同样可以在菜单中点击configuration->new link,也可以点击快捷按钮进行创建:
创建好后:
现在连接图标处点击右键或双击连接图标
接着就可设置上行和下行的丢包及延时等网络数据
在设置前先看一下上行和下行的概念,按照百度百科的说法:上行是指用户电脑向网络发送信息时的数据传输,下行是指网络向用户电脑发送信息时的传输速率。按照这种理解的话,NEWT中的上行是Downstream Property(Outgoing Traffic),下行是UpStream Property(Incoming Traffic)
在网络模拟设置时,比如延迟上行和下行都设置延迟100ms时,此时网络延时ping的值为200ms(100+100),下面我们只设置UpStream Property
好,我们现在开始进行网络模拟设置
UpStream Property的设置窗口为:
其中Loss为设置丢包,Error为设置错包,Latency为设置网络延迟,BW&Queue为设置带宽,BG Traffic为设置边界网关流量,Disconnection为设置断开连接数,(BG Traffic、Reorder与Disconnection木有使用过,具体作用有机会再探索探索)
下面我们设置丢包和延迟,设置丢包率固定为10%,延迟时间为100ms~200ms
设置丢包:
设置延迟:
其中丢包率可设置随机丢包等,延迟时间中设置的为叠加到原先网络基础上的延迟(比如若初始网络延时为10ms,按照此设置后,网络延迟为110ms~210ms)
设置完成后点击应用按钮后点击确定按钮,弹出Downstream Property设置窗口直接点击确认按钮
完成后点击start按钮:
此时模拟网络设置成功,我们再ping一下其他PC:
可以看到丢包率为11%(我们设置的丢包率为10%,但是ping的包的数量较少,可能存在一些误差),延迟时间在100ms~199ms之间(我们初始网络环境的延迟<1ms,故此时数值较为精确)
相对于NEWT,开源移动网络测试工具Augmented Traffic Control(ATC),可模拟移动APP高的延迟,经常丢包,频繁的断线等复杂的网络环境
http://www.cnblogs.com/coderzh/p/AugmentedTrafficControl.html
原文地址:http://blog.csdn.net/lluozh2015/article/details/50545159