VoIP常见编码的带宽计算

网友投稿 420 2022-10-21


VoIP常见编码的带宽计算

voip带宽计算VOIP计算方法与所选用的编码方法有关,而与哪个厂家的没有什么关系,公式如下:

带宽=包长度×每秒包数

=包长度×(1/打包周期)

=(Ethernet头+IP头+UDP头+RTP头+有效载荷)×(1/打包周期)

=(208bit +160bit+64bit+96bit +有效载荷)×(1/打包周期)

=(528bit+(打包周期(秒)×每秒的比特数))×(1/打包周期)

=( 528 / 打包周期 ) + 每秒比特数

根据各种编码方式,得出:

G711:20ms打包,带宽为 ( 528/20 + 64) Kbit/s=90.4 Kbit/s

G729:20ms打包,带宽为 ( 528/20 + 8 ) Kbit/s= 34.4 Kbit/s

G723:5.3k,30ms打包,带宽为 ( 528/30 + 5.3 ) Kbit/s=22.9 Kbit/s

业界一般按照下表提供的IP网带宽系数和以太网带宽系数来设计网络带宽:

编解码技术        压缩速率(Kbps)        打包周期(ms)        IP网带宽系数        以太网带宽系数

G.711 a/u           64                     20                  1.25                      1.41

G.729 a/b           8                      20                  0.38                      0.54

G.723.1(5.3kbit/s)  5.3                    30                  0.27                      0.37

G.723.1(6.3Kbit/s)  6.3                    30                  0.25                      0.36

H.263(384Kbit/s)    ≈384                  10                   6                         6.2

备注:采用某种编码方式时,用64K乘以相应的带宽系数就可以得出其实际占用的带宽。当然如果是中继接口,还需要考虑信令占据一定的带宽,一般按照2.5%来计算。

举例:

PBX--E1--Router---IP----Router---E1---PBX

这里的带宽占用分为2个部分,1是与PBX连接的POTS部分,1是路由器之间的VOIP部分。一般来说,每路模拟线路的带宽占用是64Kbps,而IP语音的占用会因不同的编码标准有所不同,从8K到80K可供选择。QoS的保证有个要求,就是延迟<=150ms,抖动<=30ms,丢包率<=1%

SPEEX 带宽

We have finally almost finished Speex coding on AR1688 DSP. This open source voice codec turned out to be much more complicated than we expected. There are 8 different bitrate with 8k sampling from 2.15kpbs to 24.6kpbs. I am writing this article to answer a question of how much bandwidth this codec actually use during a call.

Let us calculate based on 802.3 ethernet using SIP protocol:

Ethernet CRC: 4 bytes

MAC header: 14 bytes

IP header: 20 bytes

UDP header: 8 bytes

RTP header: 12 bytes

Speex data: x bytes x depends on bitrate used and number of frames packed in an ethernet packet ("Voice frames per TX" option in AR1688)

Total: (58 + x) bytes

Speex uses 20ms as a frame the size of compressed data in a frame with different bitrate are:

2.15kbps: 6 bytes

3.95kbps: 10 bytes

5.95kbps: 15 bytes

8kbps: 20 bytes

11kbps: 28 bytes

15kbps: 38 bytes

18.2kbps: 46 bytes

24.6kbps: 62 bytes

When only 1 frame is included in an ethernet frame the actually used bandwidth are:

2.15k: 25.6k

3.95k: 27.2k

5.95k: 29.2k

8k: 31.2k

11k: 34.4k

15k: 38.4k

18.2k: 41.6k

24.6k: 48k

When 2 frames are included in an ethernet frame the actually used bandwidth are:

2.15k: 14k

3.95k: 15.6k

5.95k: 17.6k

8k: 19.6k

11k: 22.8k

15k: 26.8k

18.2k: 30k

24.6k: 36.4k

When 3 frames are included in an ethernet frame the actually used bandwidth are:

2.15k: 10.1k

3.95k: 11.7k

5.95k: 13.7k

8k: 15.7k

11k: 18.9k

15k: 22.9k

18.2k: 26.1k

24.6k: 32.5k

When 4 frames are included in an ethernet frame the actually used bandwidth are:

2.15k: 8.2k

3.95k: 9.8k

5.95k: 11.8k

8k: 13.8k

11k: 17k

15k: 21k

18.2k: 24.2k

24.6k: 30.6k

Speex 带宽计算方法

计算公式:(  网络包数据  +  数据包数据  )  /  采样时间

网络包数据 :  58 bytes

由以下五个部分组成

网络 CRC: 4 bytes

(2)mac 地址: 14 bytes

(3)IP 头: 20 bytes

(4)UDP 头: 8 bytes

(5)RTP 头: 12 bytes

数据包数据: 20bytes

采样时间:20ms

如果每个rtp包只传输1个数据包:

(58 +20)*8 /20*1000 = 31.2kb/s

如果每个rtp包只传输2个数据包:

(58 +40)*8 /40*1000 = 19.6 kb/s

如果每个rtp包只传输3个数据包:

(58 +60)*8 /60*1000 = 15.7 kb/s

如果每个rtp包只传输4个数据包:

(58 +80)*8 /80*1000 = 13.8 kb/s


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:SSL证书的 6 大属性
下一篇:IDEA整合Dubbo+Zookeeper+SpringBoot实现
相关文章

 发表评论

暂时没有评论,来抢沙发吧~