[问答] 关于packet loss rate的解释

楼主: ken1325 (优质水瓶男)   2016-09-09 00:27:31
我现在有一个网络实验,这个实验总共会跑100次,测出这100次所花费的
时间是多少,然后再算出这100次的平均是多少。我在做实验时,会使用 Linux 底下的
netem 工具去模拟 packet loss rate。
例如:
假设我设定packet loss rate = 25%,这表示每次在传送封包时,会有25%的机率遗失掉
,遗失掉后会再重传一次。
跑出来的平均数有可能是下面这样:
跑第一个100次的平均是 1.57 second
跑第二个100次的平均是 2.43 second
跑第三个100次的平均是 70.33 second
跑第四个100次的平均是 0.68 second
可以看到每次跑出来的平均数都不一样,有时候非常高,有时候又很低,教授问为什么每
次都不一样,
我的解释是因为我有设定packet loss rate = 25%,
当在测试时,如果每次封包都刚好loss掉,则测出来的时间就会变得很高;而如果每次封
包都刚好没有loss,则测出来的时间就会很低。
我想请问关于packet loss rate的解释,我这样解释是对的吗?
因为教授好像不是很满意这个解释,他希望每次出来的时间都要差不多。
作者: deadwood (T_T)   2016-09-09 01:32:00
感觉你的测试是把封包遗失机率设定25%,然后送100次单一封包才会出现这个结果...一般来说设定几%的遗失率,就是固定遗失总数量几%的封包不会有所谓"每次封包都刚好遗失掉"的状况发生才对看了一下netem的文件,发现loss 机能确实是乱数产生因此会有原PO的情况发生,有个方法是后面再加一个XX%叫做correlation的功能,让机率随着发生次数再减少不过文件也有说明,loss random的功能可能是因为程式本身的乱数运算法的问题,模拟出来的行为不太正确新版的似乎又加入了套用不同运算模型(这个就不太懂了)的作法,不过实际上运作如何可能要自己去试了另外补充一点,样本数太低也是加大误差的原因改成每次都传1000个封包看看吧

Links booklink

Contact Us: admin [ a t ] ucptt.com