Voice VLAN
1. Voice VLAN简介
Voice VLAN是为用户的语音数据流专门划分的VLAN。通过划分Voice VLAN并将连接语音设备的端口加入Voice VLAN,系统自动为语音报文修改QoS(Quality of Service,服务质量)参数,来提高语音数据报文优先级、保证通话质量。
1.1 Voice VLAN工作过程
当IP电话接入设备时,需要设备完成以下两个任务:
(1) 识别IP电话,获取IP电话的MAC地址,从而进行安全认证及提高语音报文的优先级。
(2) 将Voice VLAN信息通告给IP电话,IP电话能够根据收到的Voice VLAN信息完成自动配置,使IP电话发出的语音报文在Voice VLAN内传输。
常见的语音设备有IP电话、IAD(Integrated Access Device,综合接入设备)等。本文中以IP电话为例进行说明。
1.2 设备识别IP电话
1.2.1 OUI地址
设备可以根据端口接收的报文的源MAC地址来判断该数据流是否为语音数据流。源MAC地址符合系统配置的语音设备OUI(Organizationally Unique Identifier,全球统一标识符)地址的报文被认为是语音数据流。
用户可以预先配置OUI地址,也可以使用缺省的OUI地址作为判断标准。
设备缺省的OUI地址
| 序号 | OUI地址 | 生产厂商 |
|---|---|---|
| 1 | 0001-e300-0000 | Siemens phone |
| 2 | 0003-6b00-0000 | Cisco phone |
| 3 | 0004-0d00-0000 | Avaya phone |
| 4 | 000f-e200-0000 | H3C Aolynk phone |
| 5 | 0060-b900-0000 | Philips/NEC phone |
| 6 | 00d0-1e00-0000 | Pingtel phone |
| 7 | 00e0-7500-0000 | Polycom phone |
| 8 | 00e0-bb00-0000 | 3Com phone |
-
通常意义下,OUI地址指的是MAC地址的前24位(二进制),是IEEE为不同设备供应商分配的一个全球唯一的标识符。本文中的OUI地址有别于通常意义的OUI地址,它是设备判断收到的报文是否为语音报文的依据,是voice-vlan mac-address命令中的mac-address和oui-mask参数相与运算后的结果。
-
设备缺省的OUI地址可以手工删除,删除之后也可再次手工添加。
1.2.2 通过LLDP自动识别IP电话
通过设备上配置的OUI地址识别IP电话的方法受限于设备上可配置的OUI地址的数量,并且当网络中IP电话数量众多时,网络管理员的配置工作量较大。如果IP电话支持LLDP(Link Layer Discovery Protocol,链路层发现协议)功能,可以配置LLDP自动识别IP电话功能。
在设备上配置了通过LLDP自动发现IP电话功能后,设备将通过LLDP自动发现对端设备,并与对端设备通过LLDP的TLV进行信息交互。如果通过端口收到的LLDP System Capabilities TLV中的信息发现对端设备具有电话能力,则认为对端设备是IP电话并将设备上配置的Voice VLAN信息通过LLDP发送给对端设备。这种方式使接入网络的IP电话类型不再受限于OUI地址的数量。
在完成IP电话的发现过程后,端口将继续完成Voice VLAN的其他功能,即端口将自动加入Voice VLAN,并提高从该IP电话发出的语音数据的优先级。为防止IP电话无法通过端口上配置的认证功能,设备还会将IP电话的MAC地址添加到MAC地址表中。
1.3 设备将Voice VLAN信息通告给IP电话
设备可以通过三种方式将Voice VLAN信息通告给IP电话,这三种方式的优先顺序如下图所示。
-
通过命令行指定LLDP或CDP(Cisco Discovery Protocol,思科发现协议)发布的Voice VLAN ID。
-
当IP电话配合接入认证功能使用时,将认证服务器下发的授权VLAN信息通告给IP电话。
-
直接将端口配置的Voice VLAN信息通告给IP电话。
1.4 IP电话的接入方式
1.4.1 主机和IP电话串联接入
如下图所示,主机连接到IP电话,IP电话连接到接入设备。在串联接入的环境下,需要将主机和IP电话划分到不同的VLAN,且需要IP电话能发出携带VLAN Tag的报文,从而区分业务数据流和语音数据流。同时,需要配置端口允许Voice VLAN和PVID通过。
主机与IP电话串联接入组网图
1.4.2 IP电话单独接入
如下图所示,IP电话单独接入设备。单独接入适用于IP电话发出Untagged语音报文的情况,此时需要配置PVID为Voice VLAN,并配置端口允许PVID通过。
IP电话单独接入组网图
2. Voice VLAN的工作模式
2.1 Voice VLAN的自动模式和手动模式
根据端口加入Voice VLAN的不同方式,可以将Voice VLAN的工作模式分为自动模式和手动模式。
自动模式
自动模式适用于主机和IP电话串联接入(端口同时传输语音数据和普通业务数据)的组网方式。
自动模式下,系统利用IP电话上电时发出的协议报文,识别报文的源MAC地址,匹配OUI地址。匹配成功后,系统将自动把语音报文的入端口加入Voice VLAN,并下发ACL规则、配置报文的优先级。用户可以在设备上配置Voice VLAN的老化时间,当在老化定时器停止前系统没有从入端口收到任何语音报文时,系统将把该端口从Voice VLAN中删除。端口的添加/删除到Voice VLAN的过程由系统自动实现。当Voice VLAN正常工作时,如果遇到IP电话重新启动,为保证已经建立的语音连接能够正常工作,系统会在IP电话重新启动完成后,将配置为自动模式的端口重新加入Voice VLAN,而不需要再次通过语音流触发。
手动模式
手动模式适用于IP电话单独接入(端口仅传输语音报文)的组网方式。该组网方式可以使该端口专用于传输语音数据,最大限度避免业务数据对语音数据传输的影响。
手动模式下,需要手工将连接IP电话的端口加入Voice VLAN中。再通过识别报文的源MAC地址,匹配OUI地址。匹配成功后,系统将下发ACL规则、配置报文的优先级。端口的添加/删除到Voice VLAN的过程由网络管理员手动实现。
Voice VLAN工作模式和IP电话的配合
由于IP电话类型较多,因此需要用户保证端口的链路类型与IP电话匹配
- IP电话发送Tagged语音数据
不同类型端口支持Tagged语音数据配置要求
- IP电话发送Untagged语音数据
当IP电话发送Untagged语音数据,则端口的Voice VLAN工作模式只能为手工模式,不能为自动模式。
不同类型端口支持Untagged语音数据配置要求
-
如果用户的IP电话发出的是Tagged语音流,且接入端口上开启了802.1X认证和Guest VLAN/Auth-Fail VLAN/Critical VLAN,为保证各种功能的正常使用,请为Voice VLAN、PVID和802.1X的Guest VLAN/Auth-Fail VLAN/Critical VLAN分配不同的VLAN ID。
-
如果用户的IP电话发出的是Untagged语音流,为实现Voice VLAN功能,只能将PVID配置为Voice VLAN,此时将不能实现802.1X认证功能。
2.2 Voice VLAN的安全模式和普通模式
开启了Voice VLAN功能的端口会对接收到的报文进行过滤,根据过滤机制的不同,可以将Voice VLAN的工作模式分为普通模式和安全模式:
-
普通模式下,端口加入Voice VLAN后,设备对于接收的语音报文不再一一进行识别,凡是带有Voice VLAN Tag的报文,设备将不再检查其源MAC地址是否为语音设备的OUI地址,均接收并在Voice VLAN中转发。对于PVID就是Voice VLAN的手工模式端口,会导致任意的Untagged报文都可以在Voice VLAN中传输。这样的处理方式很容易使Voice VLAN收到恶意用户的流量攻击。恶意用户可以构造大量带有Voice VLAN Tag或Untagged的报文,占用Voice VLAN的带宽,影响正常的语音通信。
-
安全模式下,设备将对每一个要进入Voice VLAN传输的报文进行源MAC地址匹配检查,对于不能匹配OUI地址的报文,则将其丢弃。
对于比较安全的网络,用户可以配置Voice VLAN的普通模式,以减少检查报文的工作对系统资源的占用。
-
只有匹配了OUI地址的报文才能被修改优先级。比如在普通模式下,报文在Voice VLAN中转发,但如果该报文未匹配OUI地址,则该报文不会被修改优先级。
-
建议用户尽量不要在Voice VLAN中同时传输语音和业务数据。如确有此需要,请确认Voice VLAN的安全模式已关闭,否则业务数据会被丢弃。
Voice VLAN的安全/普通模式对报文的处理
3. Voice VLAN配置限制和指导
聚合接口以及聚合组的成员端口均不支持Voice VLAN功能。
Voice VLAN的老化定时器需在对应的MAC地址表项老化之后才能启动,因此Voice VLAN实际的老化时间为设备上配置的Voice VLAN老化时间与动态MAC地址表项老化时间之和。
不建议Voice VLAN功能与MAC地址禁止学习功能或MAC地址数学习上限功能同时使用,否则部分流量可能被丢弃:
-
同时配置Voice VLAN功能与MAC地址禁止学习功能时,仅精确匹配了OUI地址的报文能够正常转发,未精确匹配的报文将被丢弃。
-
同时配置Voice VLAN功能与MAC地址数学习上限功能时,当接口学习到的MAC地址到达所配置的上限后,仅匹配MAC地址表中已学习到的表项和OUI地址的报文能够正常转发,其余报文将被丢弃。
Voice VLAN配置任务简介
4. 配置Voice VLAN
4.1 配置语音报文的QoS优先级
Voice VLAN在实现中,通过提高语音报文的QoS优先级(CoS和DSCP值)来保证语音通信的质量。语音报文会自带QoS优先级,通过配置,用户可以选择在语音报文通过设备时修改或者不修改报文的QoS优先级。
配置语音报文的QoS优先级时,需要注意:
-
在Voice VLAN已开启的情况下,不允许配置/修改语音报文的QoS优先级。必须关闭端口上的Voice VLAN功能后,才能配置/修改语音报文的QoS优先级。
-
在同一端口多次执行本配置,最后一次执行的配置生效。
interface interface-type interface-number // 进入二层以太网接口视图
voice-vlan qos trust // 配置端口信任Voice VLAN内语音报文的优先级
voice-vlan qos cos-value dscp-value // 配置端口将Voice VLAN内语音报文的CoS和DSCP值修改为指定值
二者选其一,缺省情况下,端口将Voice VLAN内语音报文的CoS值修改为6,DSCP值修改为46
4.2 配置自动模式下的Voice VLAN
配置自动模式下的Voice VLAN时,需要注意:
- 自动模式下的Voice VLAN只支持Hybrid端口对Tagged的语音流进行处理,而协议VLAN特性要求Hybrid入端口的报文格式为Untagged的,因此,不能将某个VLAN同时配置为Voice VLAN和协议VLAN。
- 配置MSTP多实例情况下,如果端口在要加入的Voice VLAN对应的MSTP实例中是阻塞状态,则端口会丢弃收到的报文,造成MAC地址不能上送,不能完成动态触发功能。自动模式Voice VLAN的使用场景为接入侧,不建议和多实例MSTP同时使用。
- 配置PVST情况下,如果端口要加入的Voice VLAN不为端口允许通过的VLAN,则端口处于阻塞状态,会丢弃收到的报文,造成MAC地址不能上送,不能完成动态触发功能。自动模式Voice VLAN的使用场景为接入侧,不建议和PVST同时使用。
- 当端口配置了动态触发端口加入静态MAC VLAN,又配置本功能时,两个功能可能会相互影响,导致其中某个功能不可用。当端口同时配置了本功能和动态触发端口加入静态MAC VLAN,再取消其中任何一个功能的配置,会导致另一个功能不可用。因此不建议同一端口同时配置本功能和动态触发端口加入静态MAC VLAN。
voice-vlan aging minutes // (可选)配置Voice VLAN的老化时间
缺省情况下,老化时间为1440分钟,老化时间只对自动模式下的端口有效
voice-vlan security enable // (可选)开启Voice VLAN的安全模式
缺省情况下,Voice VLAN工作在安全模式
voice-vlan mac-address oui mask oui-mask [ description text ] // (可选)配置Voice VLAN识别的OUI地址
Voice VLAN启动后将有缺省的OUI地址
interface interface-type interface-number // 进入二层以太网接口视图
配置端口的链路类型
port link-type trunk
port link-type hybrid
voice-vlan mode auto // 配置端口的Voice VLAN工作模式为自动模式
缺省情况下,端口的Voice VLAN工作模式为自动模式
voice-vlan vlan-id enable // 开启端口的Voice VLAN功能
缺省情况下,端口的Voice VLAN功能处于关闭状态
开启端口的Voice VLAN功能之前,须确保对应的VLAN已存在
4.3 配置手动模式下的Voice VLAN
配置手动模式下的Voice VLAN时,需要注意:
-
同一设备同一时刻可以给不同的端口配置不同的Voice VLAN,但一个端口只能配置一个Voice VLAN,而且这些VLAN必须是已经存在的静态VLAN。
-
当端口开启了Voice VLAN并工作在手工模式时,必须手工将端口加入Voice VLAN,才能保证Voice VLAN功能生效。
voice-vlan security enable
voice-vlan mac-address oui mask oui-mask [ description text ]
interface interface-type interface-number
undo voice-vlan mode auto // 配置端口的Voice VLAN工作模式为手动模式
缺省情况下,端口的Voice VLAN工作模式为自动模式
将手动模式端口加入Voice VLAN
Access端口、Trunk端口、 Hybrid端口三者选其一,将Access端口加入Voice VLAN后,Voice VLAN会自动成为PVID
(可选)配置PVID为Voice VLAN
Trunk端口、 Hybrid端口,二者选其一,当输入的语音流是Untagged语音流时,需要进行该项配置;当输入的语音流是Tagged语音流时,不能将PVID配置为Voice VLAN
voice-vlan vlan-id enable // 开启端口的Voice VLAN功能
缺省情况下,端口的Voice VLAN功能处于关闭状态
开启端口的Voice VLAN功能之前,须先创建对应的VLAN
4.4 配置通过LLDP自动发现IP电话功能
配置通过LLDP自动发现IP电话功能时,需要注意:
- 在配置本功能前,需要在全局和接入端口均开启LLDP功能。
- 通过LLDP自动发现IP电话功能只能与Voice VLAN自动模式配合使用,不能与手动模式配合使用。
- 通过LLDP自动发现IP电话功能与LLDP兼容CDP功能不能同时配置。
voice-vlan track lldp // 开启通过LLDP自动发现IP电话功能
缺省情况下,通过LLDP自动发现IP电话功能处于关闭状态
4.5 配置通过LLDP通告Voice VLAN信息
对于支持LLDP的IP电话,可以通过LLDP-MED中的Network Policy TLV将Voice VLAN信息通告给IP电话。
需要注意的是,在配置本功能前,需要在全局和接入端口开启LLDP功能。
interface interface-type interface-number // 进入二层以太网接口视图
lldp tlv-enable med-tlv network-policy vlan-id // 配置端口上发布的Voice VLAN ID
缺省情况下,未配置端口上发布的Voice VLAN ID
LLDP-MED Network Policy TLV中的信息可以通过display lldp local-information命令查看。
4.6 配置通过CDP通告Voice VLAN信息
如果IP电话只支持CDP,不支持LLDP,当设备与这类IP电话直连时,IP电话将会向设备发送CDP报文以请求在设备上所配Voice VLAN的VLAN ID;如果在指定时间内没有收到设备发送的Voice VLAN的VLAN ID,IP电话将会把语音数据流以Untagged方式发送,从而导致语音数据流与其他类型的数据流混在一起,无法进行区分。
通过在设备上配置LLDP兼容CDP功能,可以利用LLDP来接收、识别从IP电话发送的CDP报文,并向IP电话发送CDP报文,该CDP报文携带设备配置的Voice VLAN信息,使IP电话完成Voice VLAN的自动配置。之后IP电话的语音数据流将被限制在配置的Voice VLAN内,与其他数据流区分开来。
需要注意的是,在配置本功能前,需要在全局和接入端口开启LLDP功能。
lldp compliance cdp // 开启LLDP兼容CDP功能
缺省情况下,LLDP兼容CDP功能处于关闭状态
interface interface-type interface-number // 进入二层以太网接口视图
lldp compliance admin-status cdp txrx // 配置LLDP兼容CDP功能的工作模式为TxRx
缺省情况下,LLDP兼容CDP功能的工作模式为Disable
cdp voice-vlan vlan-id // 配置CDP报文携带的Voice VLAN ID
缺省情况下,未配置CDP报文携带的Voice VLAN ID
设备发送给IP电话的CDP报文中不包含优先级信息。
5. Voice VLAN显示和维护
display voice-vlan state // 显示Voice VLAN的状态
display voice-vlan mac-address // 显示系统当前支持的OUI地址
6. 自动模式下Voice VLAN的配置举例
组网需求
- IP phone A的MAC地址为0011-1100-0001,下行连接PC A(MAC地址为0022-1100-0002),上行连接到Device A的GigabitEthernet1/0/1端口。
- IP phone B的MAC地址为0011-2200-0001,下行连接PC B(MAC地址为0022-2200-0002),上行连接到Device A的GigabitEthernet1/0/2端口。
- Device A使用Voice VLAN 2传输IP phone A产生的语音报文;使用Voice VLAN 3传输IP phone B产生的语音报文。
- Device A的端口GigabitEthernet1/0/1和GigabitEthernet1/0/2工作在自动模式,如果它们在30分钟内没有收到语音流,就将相应的Voice VLAN老化。
组网图
配置自动模式下Voice VLAN组网图
DeviceA
# 创建VLAN 2和VLAN 3。
<DeviceA> system-view
[DeviceA] vlan 2 to 3
# 配置Voice VLAN的老化时间为30分钟。
[DeviceA] voice-vlan aging 30
# 由于端口GigabitEthernet1/0/1可能会同时收到语音和数据两种流量,为了保证语音报文的质量以及带宽的高效利用,配置Voice VLAN工作在安全模式,即Voice VLAN只用于传输语音报文。(可选,缺省情况下,Voice VLAN工作在安全模式)
[DeviceA] voice-vlan security enable
# 配置允许OUI地址为0011-1100-0000和0011-2200-0000的报文通过Voice VLAN,即当报文源MAC地址前缀为0011-1100-0000或0011-2200-0000时,Device A会把它当成语音报文来处理。
[DeviceA] voice-vlan mac-address 0011-1100-0001 mask ffff-ff00-0000 description IP phone A
[DeviceA] voice-vlan mac-address 0011-2200-0001 mask ffff-ff00-0000 description IP phone B
# 配置端口GigabitEthernet1/0/1为Hybrid类型端口。
[DeviceA] interface gigabitethernet 1/0/1
[DeviceA-GigabitEthernet1/0/1] port link-type hybrid
# 将端口GigabitEthernet1/0/1上Voice VLAN的工作模式配置为自动模式。(可选,缺省情况下,端口的Voice VLAN工作在自动模式。)
[DeviceA-GigabitEthernet1/0/1] voice-vlan mode auto
# 开启端口Voice VLAN功能。
[DeviceA-GigabitEthernet1/0/1] voice-vlan 2 enable
[DeviceA-GigabitEthernet1/0/1] quit
# 在端口GigabitEthernet1/0/2上进行相应的配置。
[DeviceA] interface gigabitethernet 1/0/2
[DeviceA-GigabitEthernet1/0/2] port link-type hybrid
[DeviceA-GigabitEthernet1/0/2] voice-vlan mode auto
[DeviceA-GigabitEthernet1/0/2] voice-vlan 3 enable
[DeviceA-GigabitEthernet1/0/2] quit
显示和验证
# 显示当前系统支持的OUI地址、OUI地址掩码和描述信息。
[DeviceA] display voice-vlan mac-address
OUI Address Mask Description
0001-e300-0000 ffff-ff00-0000 Siemens phone
0003-6b00-0000 ffff-ff00-0000 Cisco phone
0004-0d00-0000 ffff-ff00-0000 Avaya phone
000f-e200-0000 ffff-ff00-0000 H3C Aolynk phone
0011-1100-0000 ffff-ff00-0000 IP phone A
0011-2200-0000 ffff-ff00-0000 IP phone B
0060-b900-0000 ffff-ff00-0000 Philips/NEC phone
00d0-1e00-0000 ffff-ff00-0000 Pingtel phone
00e0-7500-0000 ffff-ff00-0000 Polycom phone
00e0-bb00-0000 ffff-ff00-0000 3Com phone
# 显示当前Voice VLAN的状态。
[DeviceA] display voice-vlan state
Current voice VLANs: 2
Voice VLAN security mode: Security
Voice VLAN aging time: 30 minutes
Voice VLAN enabled ports and their modes:
Port VLAN Mode CoS DSCP
GE1/0/1 2 Auto 6 46
GE1/0/2 3 Auto 6 46
7. 手动模式下Voice VLAN的配置举例
组网需求
- IP Phone A接入Device A的Hybrid类型端口GigabitEthernet1/0/1。IP Phone A发出的报文为Untagged报文。
- Device A上VLAN 2为Voice VLAN。
- 手工将Device A的端口GigabitEthernet1/0/1工作加入Voice VLAN,其PVID为VLAN 2,添加OUI地址0011-2200-0000,使该端口专用于传输语音报文。
组网图
配置手动模式下Voice VLAN组网图
DeviceA
# 配置Voice VLAN为安全模式,使得Voice VLAN端口只允许合法的语音报文通过。(可选,缺省情况下,Voice VLAN工作在安全模式)
<DeviceA> system-view
[DeviceA] voice-vlan security enable
# 配置允许OUI地址为0011-2200-0000的报文通过Voice VLAN,即报文源MAC地址前缀为0011-2200-0000时,Device A会把它当成语音报文来处理。
[DeviceA] voice-vlan mac-address 0011-2200-0001 mask ffff-ff00-0000 description test
# 创建VLAN 2。
[DeviceA] vlan 2
[DeviceA-vlan2] quit
# 配置端口GigabitEthernet1/0/1工作在手动模式。
[DeviceA] interface gigabitethernet 1/0/1
[DeviceA-GigabitEthernet1/0/1] undo voice-vlan mode auto
# 配置端口GigabitEthernet1/0/1为Hybrid类型。
[DeviceA-GigabitEthernet1/0/1] port link-type hybrid
# 配置Voice VLAN是端口GigabitEthernet1/0/1的缺省VLAN,且在该端口允许通过的Untagged VLAN列表中。
[DeviceA-GigabitEthernet1/0/1] port hybrid pvid vlan 2
[DeviceA-GigabitEthernet1/0/1] port hybrid vlan 2 untagged
# 开启端口GigabitEthernet1/0/1的Voice VLAN功能。
[DeviceA-GigabitEthernet1/0/1] voice-vlan 2 enable
[DeviceA-GigabitEthernet1/0/1] quit
显示与验证
# 显示当前系统支持的OUI地址、OUI地址掩码和描述信息。
[DeviceA] display voice-vlan mac-address
OUI Address Mask Description
0001-e300-0000 ffff-ff00-0000 Siemens phone
0003-6b00-0000 ffff-ff00-0000 Cisco phone
0004-0d00-0000 ffff-ff00-0000 Avaya phone
000f-e200-0000 ffff-ff00-0000 H3C Aolynk phone
0011-2200-0000 ffff-ff00-0000 test
0060-b900-0000 ffff-ff00-0000 Philips/NEC phone
00d0-1e00-0000 ffff-ff00-0000 Pingtel phone
00e0-7500-0000 ffff-ff00-0000 Polycom phone
00e0-bb00-0000 ffff-ff00-0000 3Com phone
# 显示当前Voice VLAN的状态。
[DeviceA] display voice-vlan state
Current voice VLANs: 1
Voice VLAN security mode: Security
Voice VLAN aging time: 1440 minutes
Voice VLAN enabled ports and their modes:
Port VLAN Mode CoS DSCP
GE1/0/1 2 Manual 6 46

浙公网安备 33010602011771号