最近看到VoIP业界的同仁对IPv6时代的来临有一定的疑惑,认为因为IPv6包头的扩大,在SIP协议中使用IPv6协议,会导致包大小的增加,影响性能,故,从此话题出发,进行了一些调查工作。
课题来源:IPv6:VoIP的机遇还是灾难?
资料1:Evaluating Performance Characteristics of SIP over IPv6,Thomas Hoeher、Martin Petraschek等四人著
文章对SIP这一VoIP常用的协议在纯IPv6网络、IPv6各种隧道网络(6to4,Teredo)上的应用性能进行了研究,研究表明在使用纯IPv6的情况下,80%的链接可以在5ms时完成三次握手(INVITE-OK—ACK),对比IPv4下的数值是4ms,有25%的延长,考虑到文章所进行的实验在本地环境下进行,在公网上运行的时候,速度应该还会稍慢。请注意,这里假设公网的网络环境是类似于本地网络(LAN)的。
在语音流传输方面,文章使用了G.711编码格式进行了网络传输的测试,相关的数据包括包大小:160Bytes,每秒RTP包流量:50个,结果表明IPv6确实会有延迟,但是延迟“难以察觉(indiscernible)”,“可能”是由于IPv6包头过大引起的,但是由于差别很小,无法辨别是测量误差还是真实误差,所以无法准确判别(This could be argued with the larger IP-header but the difference is so small that it is within uncertainty of measurement)。
资料2:A comparison of VoIP Performance On IPv6 and IPv4 Networks,Roman Yasinovskyy、Alexander L. Wijesinha等四人著
不同于资料1的实验结果,该实验在多跳网络环境下对IPv6和IPv4下面,基于SIP的VoIP性能进行了大量的实验工作,表明在延迟率、时延、包丢失率、吞吐量等方面,IPv6和IPv4的差别都是不显著的(there is no significant performance difference with IPv6 compared to IPv4)。
这些学术界的研究都表明了,在IPv6下面部署和使用VoIP,不会因为包头和包结构的变化,对VoIP造成影响,更不用提“灾难”了,同时,跳出这些LAN下或者是多跳环境下进行的性能测试,到实际的中国网络中再想想IPv4网络环境下,应用VoIP而不得不面临的包括NAT性能,STUN性能,UPNP性能等众多不可不避免对VoIP造成拖累的“附加”因素时,我的答案更倾向于IPv6:VoIP的机遇!了。
PS: 由于IPv6使用的均为可直接访问的“公网地址”,不再需要NAT进行内网地址翻译,以及STUN,UPNP技术在NAT穿越方面的使用,这方面将带来性能提升。