TOP
|
[ 录入者:admin | 时间:2007-11-22 23:22:22
| 作者: | 来源:
| 浏览:517次 ] |
网络环境: 3745,2611 各一台,都装有vic-2fxo-m2 模块。做VOIP 的实验。3745 和2611 之间的带宽为 64K。 实验1:在2个路由器采用优先级队列,设置语音数据的优先级为最高。然后用接在路由器上的2台PC传 数据(PC1传数据给PC2)的方式测试优先队列的是否在起作用。发现接受数据的路由器端的的电话收听 效果不好,而发送数据的路由器端的电话收听效果很好。反复测试结果一样。 实验2:在2个路由器采用RSVP协议做的QOS,保留给语音的带宽为16(都采用了CRTP)。然后同样采用 PC传数据的方法来测试,仍然有第一个实验所存在的问题。 实验3:在2 个路由器的串口上加了MTU 128 配置后,用PC传数据测试发现,先前存在的问题消失了, 两边通话质量非常好。 结论:前1,2次实验由于没有改变路由器默认的MTU值的大小(默认为1500 字节),所以造成发送数 据端的路由器在发送语音包时遇到阻塞。因为:1500 字节的包在64K 的链路下的串行延时为187 毫 秒,此VOIP 模块的默认语音编码G.729r8,它在没有语音时则不产生数据,所以语音包虽然有高优先 级但是当进入接口缓冲区的时候,已经有1500 字节的数据包正在发送,所以语音数据包必须等待187 毫秒才能被传送出去。要知道187 毫秒对于语音数据来说是太长了些,所以话音质量就很不好。只有采 用MTU命令改变默认的MTU值为128字节(128字节是针对64K带宽来考虑的,计算MTU大小根据延时为20 毫秒来计算),才能让语音数据包的延时在任何时候都不超过20毫秒的要求。但是采用MTU后,发现MTU 命令必须在相邻的路由器上成对使用。因为如果一个MTU 为128 的接口接受到从对面路由器传来的数据 包超过128 字节,会认为它是个坏包而丢弃。
|
|
|
|