VoIP?Voice VLAN?是如何实现的?

电子说

1.2w人已加入

描述

前言

Voice VLAN是为用户的语音流专门划分的VLAN。

网络中经常有数据、语音、视频等多种流量同时传输。因为丢包和时延对通话质量的影响很大,用户对语音的质量比数据或者视频的质量更为敏感,因此在带宽有限的情况下就需要优先保证通话质量。通过配置Voice VLAN,交换机可识别语音流,将语音流加入到Voice VLAN中传输,并对其进行有针对性的QoS保障,当网络发生拥塞时可以优先保证语音流的传输。

01

Voice VLAN原理

若要提高语音数据流的传输优先级,首先要能识别出语音数据流。识别出语音数据流后,再对语音数据流提升优先级后传输。

Voice VLAN可以通过以下两种方式来实现对语音数据流的识别:

通过收到报文的源MAC地址,即基于MAC地址的方式

设备可以根据进入接口的数据报文中的源MAC地址字段来判断该数据流是否为语音数据流。源MAC地址匹配系统设置的语音设备的组织唯一标识符OUI(Organizationally Unique Identifier)的报文被认为是语音数据流。用户需要预先设置OUI,适用于IP电话上送untagged语音报文的场景。

通过报文携带的VLAN Tag,即基于VLAN的方式

若有大量IP电话接入交换机,配置IP电话的OUI会非常繁琐。可在交换机上配置基于VLAN来提升语音报文的优先级,此时设备会根据进入接口的报文的VLAN ID来判断该数据报文是否为语音报文。当VLAN ID匹配系统配置的Voice VLAN后,则认为是语音数据流。这种方式实现的前提是IP电话支持获取交换机上配置的Voice VLAN信息的功能,在大量IP电话接入的情况下,可以简化配置。

以上方案是从方便配置的角度给出的。实际上,不管IP电话上送的语音报文是否带VLAN Tag,基于MAC地址和基于VLAN的Voice VLAN都可以实现。主要区别在于:当IP电话上送的是untagged语音报文时,必须配置OUI,才能把语音报文和数据报文区分开来;如果IP电话上送的是带Tag语音报文,则可配置基于VLAN的Voice VLAN,这样在大量IP电话接入的情况下,就不用配置繁琐的OUI,简化配置。

1.1   基于MAC地址的Voice VLAN

OUI

OUI指的是MAC地址的前24位(二进制),可以用来表示一个MAC地址段,是IEEE为不同设备供应商分配的一个全球唯一的标识符,各设备厂商再从这个地址段中分配24位,从而形成48位的MAC地址。所以根据OUI识别IP电话机的原理就是根据IP电话厂商申请的MAC地址段来识别哪些报文是电话机发送的,以此来判断哪些报文属于语音报文。

Voice VLAN中的OUI有别于上述的通常意义的OUI,这个OUI是由用户来配置的,而且可以使用掩码,即不需要一定是24位掩码的,掩码长度用户可以自己指定。OUI的值为voice-vlan mac-address命令中的mac-address和mask参数相与的结果。

实现原理

如图 1 所示,交换机接收到PC和IP Phone发出的untagged报文后会做如下处理:如果源MAC匹配交换机上配置的OUI(源MAC地址与配置的OUI掩码进行与运算后等于OUI视为匹配),则为该报文加上Voice VLAN的Tag,并提升报文优先级;如果不匹配,就会为其加上PVID的VLAN Tag,从而保证语音报文的优先发送。

LLDP技术

图 1  基于MAC地址的Voice VLAN示意图

1.2  基于VLAN的Voice VLAN

基于VLAN的Voice VLAN实现原理为:交换机收到PC和IP Phone发来的报文后会判断报文的VLAN ID与接口上配置的Voice VLAN ID是否相同,如果相同则认为此数据流为语音数据流并提升优先级。PC发出的untagged报文则会被加上PVID的VLAN Tag。因此基于VLAN的Voice VLAN需要IP Phone可以获取交换机上配置的Voice VLAN信息。

IP Phone获取交换机上Voice VLAN信息的方法有很多种,以下以IP Phone通过LLDP协议获取交换机Voice VLAN信息为例介绍一下实现过程。

LLDP技术

图 2 基于VLAN的Voice VLAN示意图

如图 2 所示,IP电话上线会主动发送LLDP报文,以获取交换机上配置的Voice VLAN信息;

交换机收到IP电话发送的LLDP报文,会在相关字段填充Voice VLAN信息发给IP电话;

IP电话收到携带Voice VLAN信息的LLDP报文后,再次发送语音报文时就会带Tag发送;

交换机收到带Tag的语音报文,如果Tag和交换机上配置的Voice VLAN匹配,则为其提升优先级后转发。

交换机收到untagged报文,仍然会加入到PVID所在的VLAN中。这样,当发生网络拥塞的时候交换机就能保证语音报文的优先发送。

02

Voice VLAN应用场景

如图 3 所示,PC和IP电话同时通过交换机接入网络。因用户对语音的时延和抖动比较敏感,所以需要提高网络中语音数据流的传输优先级,在网络发生拥塞时优先保证语音数据的传输。


LLDP技术

图 3  Voice VLAN的应用场景

可根据IP电话上送的语音报文是否带Tag选择以下的一种方案:

如果IP电话发送的是untagged或Tag0语音报文,可配置基于MAC地址的Voice VLAN。

如果IP电话支持通过协议获取交换机上配置的Voice VLAN信息,此时IP电话发送的是带Tag的语音报文,可配置基于VLAN的Voice VLAN。

03

Voice VLAN配置举例

3.1  配置基于MAC地址的Voice VLAN示例(IP Phone上送Untagged语音报文)

组网需求

如图 4 所示,Switch下行连接数据业务和语音业务,Switch使用VLAN2传输语音报文,使用VLAN3传输数据报文。IP Phone A和PC A串行接入Switch,IP Phone B单独接入Switch,IP Phone发送的都是untagged语音报文。用户对语音质量较敏感,需要提高语音数据流的传输优先级,以保证用户的通话质量。

LLDP技术

图 4  配置基于MAC地址Voice VLAN组网

配置思路

因为Switch收到的语音报文和数据报文都是untagged报文,需要配置OUI来区分语音和数据流量。采用如下的思路配置:

在Switch上创建VLAN,并配置各接口加入VLAN,实现二层互通。

配置OUI,实现根据收到报文的源MAC地址匹配OUI给语音报文加VLAN Tag。

配置VLAN 2为Voice VLAN,允许语音报文通过。

操作步骤

【1】配置Switch的VLAN和接口

# 创建VLAN

 

 system-view
[HUAWEI] sysname Switch
[Switch] vlan batch 2 3

 

# 配置接口GE1/0/1允许通过的VLAN。

 

[Switch] interface gigabitethernet 1/0/1
[Switch-GigabitEthernet1/0/1] port link-type hybrid
[Switch-GigabitEthernet1/0/1] port hybrid pvid vlan 3
[Switch-GigabitEthernet1/0/1] port hybrid untagged vlan 2 to 3
[Switch-GigabitEthernet1/0/1] quit
[Switch] interface gigabitethernet 1/0/2
[Switch-GigabitEthernet1/0/2] port link-type hybrid
[Switch-GigabitEthernet1/0/2] port hybrid untagged vlan 2
[Switch-GigabitEthernet1/0/2] quit

 

【2】配置OUI

 

[Switch] voice-vlan mac-address 0003-6B00-0000 mask ffff-ff00-0000

 

【3】配置接口Voice VLAN功能,GE1/0/2的配置与GE1/0/1类似,不再赘述。

 

[Switch] interface gigabitethernet 1/0/1
[Switch-GigabitEthernet1/0/1] voice-vlan 2 enable include-untagged
[Switch-GigabitEthernet1/0/1] voice-vlan remark-mode mac-address
[Switch-GigabitEthernet1/0/1] quit

 

【4】检查配置结果

执行命令display voice-vlan 2 status,查看Voice VLAN的配置是否正确。

 

[Switch] display voice-vlan 2 status
Voice VLAN Configurations: 
-----------------------------------------------------------
Voice VLAN ID            : 2
Voice VLAN status        : Enable
Voice VLAN 8021p remark  : 6
Voice VLAN dscp remark   : 46
-----------------------------------------------------------
Port Information: 
-------------------------------------------------------------------------------
Port                       Add-Mode  Security-Mode  Legacy  PribyVLAN  Untag
-------------------------------------------------------------------------------
GigabitEthernet1/0/2       Manual    Normal         Disable Disable    Enable
GigabitEthernet1/0/1       Manual    Normal         Disable Disable    Enable

 

配置文件

Switch的配置文件。

 

#
sysname Switch
#
voice-vlan mac-address 0003-6b00-0000 mask ffff-ff00-0000
#
vlan batch 2 to 3
#
interface GigabitEthernet1/0/1
 port link-type hybrid
 voice-vlan 2 enable include-untagged
 voice-vlan remark-mode mac-address    
 port hybrid pvid vlan 3
 port hybrid untagged vlan 2 to 3
#
interface GigabitEthernet1/0/2
 port link-type hybrid
 voice-vlan 2 enable include-untagged
 voice-vlan remark-mode mac-address    
 port hybrid untagged vlan 2
#
return

 

3.2  配置基于VLAN的Voice VLAN示例(IP Phone上送带Tag语音报文)


组网需求

如图 5 所示,Switch下行连接数据业务和语音业务,Switch使用VLAN2传输语音报文,使用VLAN3传输数据报文。IP Phone A和PC A串行接入Switch,IP Phone B单独接入Switch,IP Phone支持通过LLDP协议获取Voice VLAN信息,发送的是带Tag语音报文。用户对语音通话质量较敏感,需要提高语音数据流的传输优先级,以保证用户的通话质量。网络管理员同时管理大量的IP Phone,希望能使用尽可能简单的配置来完成以上需求。

LLDP技术

图 5  配置基于VLAN提升优先级的Voice VLAN组网

配置思路

采用如下的思路配置:

在Switch上创建VLAN,并配置各接口加入VLAN,实现二层互通。

使能LLDP,实现IP Phone能通过LLDP协议获取到Voice VLAN信息。

配置VLAN 2为Voice VLAN,允许语音报文通过;并使用基于VLAN的Voice VLAN(此为缺省情况),不用配置繁琐的OUI,简化配置。

操作步骤

【1】配置Switch的VLAN和接口

# 创建VLAN

 

 system-view
[HUAWEI] sysname Switch
[Switch] vlan batch 2 3

 

# 配置接口GE1/0/1允许通过的VLAN。

 

[Switch] interface gigabitethernet 1/0/1
[Switch-GigabitEthernet1/0/1] port link-type hybrid
[Switch-GigabitEthernet1/0/1] port hybrid pvid vlan 3
[Switch-GigabitEthernet1/0/1] port hybrid untagged vlan 3
[Switch-GigabitEthernet1/0/1] port hybrid tagged vlan 2
[Switch-GigabitEthernet1/0/1] quit
[Switch] interface gigabitethernet 1/0/2
[Switch-GigabitEthernet1/0/2] port link-type hybrid
[Switch-GigabitEthernet1/0/2] port hybrid tagged vlan 2
[Switch-GigabitEthernet1/0/2] quit

 

【2】使能LLDP

 

[Switch] lldp enable

 

【3】配置接口Voice VLAN功能,GE1/0/2的配置与GE1/0/1类似,不再赘述。

 

[Switch] interface gigabitethernet 1/0/1
[Switch-GigabitEthernet1/0/1] voice-vlan 2 enable
[Switch-GigabitEthernet1/0/1] voice-vlan remark-mode vlan
[Switch-GigabitEthernet1/0/1] quit

 

【4】检查配置结果

执行命令display voice-vlan 2 status,查看Voice VLAN的配置是否正确。

 

[Switch] display voice-vlan 2 status
Voice VLAN Configurations: 
-----------------------------------------------------------
Voice VLAN ID            : 2
Voice VLAN status        : Enable
Voice VLAN 8021p remark  : 6
Voice VLAN dscp remark   : 46
-----------------------------------------------------------
Port Information: 
-------------------------------------------------------------------------------
Port                       Add-Mode  Security-Mode  Legacy  PribyVLAN  Untag
-------------------------------------------------------------------------------
GigabitEthernet1/0/2       Manual    Normal         Disable Enable     Disable
GigabitEthernet1/0/1       Manual    Normal         Disable Enable     Disable

 

配置文件

Switch的配置文件。

 

#
sysname Switch
#
vlan batch 2 to 3
#
lldp enable
#
interface GigabitEthernet1/0/1
 port link-type hybrid
 voice-vlan 2 enable
 port hybrid pvid vlan 3
 port hybrid tagged vlan 2
 port hybrid untagged vlan 3
#
interface GigabitEthernet1/0/2
 port link-type hybrid
 voice-vlan 2 enable
 port hybrid tagged vlan 2
#
return
 

 





审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分