语音VLAN介绍
在默认时,语音VLAN特性是禁用的。但可以使用接口命令 switchportvoicevlan 启用它。在启用了语音VLAN特性之后,能够让Access端口携带来自IP电话的IP语音流量,当交换机连接到思科IP电话(例如Cisco 7960 IP电话)时,IP电话发送的语音流量带有三层的IP优先级和二层的CoS值,默认这2个值均设置为5。对于IEEE 802.1Q或IEEE 802.1p带标记的流量,默认COS值是非信任的。
所有不带标记的流量都按照端口的默认COS优先级发送。交换机能够支持基于IEEE 802.1p CoS值进行QoS处理。QoS使用分类和调度机制来发送流量,从而保证语音的质量。
具体工作原理:
1.用于将cisco IP电话连接到配置了语音VLAN的交换机
2.链路被激活后,交换机立刻向cisco IP电话发送cisco发现协议(CDP)消息,其中包含典型的CDP消息,包括语音VLAN-ID
3.cisco IP电话收到CDP帧后,解释语音VLAN-ID,并开始给VoIP通信流加上802.1q标记,然后将其发送给该语音VLAN。
4. Cisco IP电话还指定出站帧标记的DSCP(Differentiated Services CodePoint,区分服务编码点)和Cos(Class ofService,服务类别)值。使用语音VLAN时,对于来自其PC端口连接的工作站的入站帧,CiscoIP电话不添加VLAN标记。因此工作站仍位于接入的VLAN。
IP电话网络设计
1.为IP电话组件(如ciscoIP电话、cisco CallManager、Cisco IPSoftphone客户端、IP网关等)实现Qos分类、标记和拥塞管理。Qos要将VoIP通信流设置为高优先级,并优先传输高优先级队列中的通信流。
2.将VoIP通信流放在一个独立的VLAN中。为给Cisco IP电话部署一个独立的VLAN,一种简单的方法是使用语音VLAN(辅助VLAN)。
3.考虑使用线上供电(inline power)给CiscoIP电话供电。Cisco IP电话要求由交换机电源或线上供电。
4.核实物理电缆是否支持IP电话。IP电话和VoIP解决方案要求电缆至少是5类电缆。
思科IP电话的语音流量
其中端口P1连接到交换机、P2是一个内部的接口来承载IP电话的流量、P3(Access口)连接到PC
你可以在交换机Access端口配置一个Voice VLAN来承载语音流量和另一个VLAN来承载数据流量。可以设置交换机的Access口使之发送CDP报文来指示IP电话以哪种方式向交换机发送语音流量:
・通过VoiceVLAN发送,带有Voice VLAN的标签以及二层CoS优先级值
・通过AccessVLAN发送,带有Access VLAN的标签以及二层CoS优先级值
・通过AccessVLAN发送,不带VLAN标签(没有二层CoS优先级值)
注:在上述3种情况下,语音流量均携带有三层IP优先级(默认语音流量为5,而语音控制流量为3)
思科IP电话的数据流量
交换机可以处理IP电话下挂主机发送的带有VLAN标签的数据流量。你可以配置交换机的Access口使之发送CDP报文来指示IP电话将下挂主机的端口(图中的P3口)设置为以下2种模式之一:
・ 信任模式:IP电话从P3口收到的来自PC的所有流量透明地通过IP电话(没有任何变化)
・ 非信任模式:IP电话从P3口收到的来自PC的所有流量将被设置一个二层CoS值。默认的CoS值为0,并且端口默认是非信任模式。
语音 VLAN配置指南
・Voice VLAN配置只在交换机的Access口上支持,不能配置在Trunk口
・Voice VLAN必须在交换机上存在
・不要在PVLAN端口上设置Voice VLAN
・在使用VoiceVLAN前,建议开启交换机的QoS(全局配置命令mlsqos)功能并设置端口信任状态(接口配置命令mls qos trust cos)将端口状态设置为信任模式。
・你必须启用连接思科IP电话的交换机端口的CDP,以发送配置信息。默认是它是启用的,因此,除非你禁用了它,否则就不会用问题。
・当配置VoiceVLAN后,端口的PortFast特性自动启用;当你禁用VoiceVLAN时,端口的PortFast没有自动禁用
・不能在VoiceVLAN中配置静态的安全MAC地址
・要让端口回到默认设置,可以使用接口配置命令 no switchport voice vlan.
以下用于设置边界交换机对于COS值的承认方式:
interface f0/1
mls qostrustcos
设置此端口信任收到的数据帧中携带的CoS值;对于未带VLAN标签的数据,则使用端口默认的CoS值(缺省为0)
mls qos trustdevicecisco-phone
与mls qostrust cos配合,配置本命令后,只有在本端口下检测到思科IP电话,才会信任此端口收到的数据帧中携带的CoS值;若未检测则不信任。这样可以防止用户将IP电话移除,直接将PC连接到交换机的端口,从而导致交换机错误地信任来自PC的数据帧中携带的CoS值。
switchport priorityextend cos[0~7]
设置从IP电话的Access口(即P3口)收到的数据流量的CoS值,默认为0。
switchport priorityextendtrust
设置信任从IP电话的Access口(即P3口)收到的数据流量的CoS值。
mls qoscos0~7
设置端口默认的CoS(缺省为0)
语音 VLAN配置
配置接入VLAN和语音VLAN
1) 进入全局模式 configure terminal
2) 配置接入VLAN和语音VLAN
vlan vlan号
3) 配置接入VLAN接口和语音VLAN接口,用于第3层路由选择
interface vlan vlan号
ip address 地址 掩码
no shut
配置接入VLAN和语音VLAN的接口
1)进入接口模式 interface 接口
2)将接口加入到接入VLAN
switchport access vlan 接入VLAN号
3) 接口加入到语音VLAN
switchport voicevlan vlan号 |dot1p | none | untagged
vlan号:在指定的VLAN中转发所有的语音流量。缺省下,IP电话转发语音流量通过802.1Q及优先级为5标记VLAN,用于接收/发送Cisco IP电话的通信流。
Dot1p:对于IP电话通信流,使用802.1p优先级标记,对于其它通信流,使用默认的本地vlan(vlan0)转发。对于不支持CDP的第3方IP电话,常采用这种配置。
Untagged:Cisco IP电话显式的使用未标记的帧(语音和PC都使用本征VLAN)。
None:禁用语音VLAN功能,cisco IP电话将根据自己的配置来发送未标记的帧。
配置相应的Qos
1) 启用Qos
mls qos
2) 配置接口,将语音帧的Cos值映射到出站队列
wrr-queue cos-map 4 5
wrr-queue cos-map 3 4 6 7
3) 将队列4配置为严格优先级队列
priority-queue out
配置接口的Qos分类
1) 进入接口模式 interface 接口
2) 配置接口基于那种信任类型的分类
mls qos trust cos|dscp
配置流量的优先级
1) 进入全局模式 configure terminal
2) 进入接口模式 ineterface 接口
3) 设置从IP电话接入端口收到数据报的优先级
switchport priority extend [cos 值|trust]
cos 值:取值为0-7,7为最高
trust:配置电话接入端口信任从PC收到的数据优先级
switchportpriority extend cos 5 的作用是发CDP包给IP phone让它在连PC的端口上收到包时,如果是Dot1p的帧就用 5 换掉它的 cos,如果是untagged的包则不会进行处理(不能改变它的帧状态加一个Dot1p的帧头cos是5)。
mlsqos trust cos这个命令影响的是在连IP电话的交换机,对收到的来自IP电话的流量(所有流量包括语音和PC的)进行处理。进入交换机的包有COS, 也有DSCP。你要通过哪一个作为分类的依据从而进行处理(队列,流量控制等)呢?所谓的trust cos就是告诉交换机用cos作为分类依据。进入交换机的包的COS和DSCP不一定有关联。如果一个包的cos是5,它的DSCP完全有可能是0。
【查看】
1)showinterface 接口名称 switchport
SW1#show int f0/1 switchport
Name: Fa0/1
Switchport: Enabled
Administrative Mode: staticaccess
Operational Mode: staticaccess
Administrative TrunkingEncapsulation:negotiate
Operational TrunkingEncapsulation:native
Negotiation of Trunking: Off
Access Mode VLAN: 10(VLAN0010)
Trunking Native Mode VLAN: 1(default)
Administrative Native VLANtagging:enabled
Voice VLAN: 110 (VLAN0110)
Administrativeprivate-vlanhost-association: none
Administrative private-vlanmapping:none
Administrative private-vlantrunk nativeVLAN: none
Administrative private-vlantrunk NativeVLAN tagging: enabled
Administrative private-vlantrunkencapsulation: dot1q
Administrative private-vlantrunk normalVLANs: none
Administrative private-vlantrunkassociations: none
Administrative private-vlantrunkmappings: none
Operational private-vlan:none
Trunking VLANs Enabled: ALL
Pruning VLANs Enabled:2-1001
Capture Mode Disabled
Capture VLANs Allowed: ALL
Protected: false
Unknown unicast blocked:disabled
Unknown multicast blocked:disabled
Appliancetrust:none
若F0/1下配置了switchportpriority extend trust命令,此处将显示为Appliance trust: trusted。
若F0/1下配置了switchportpriority extend cos 2命令,此处将显示为Appliance trust: 2。
2)show mls qos
SW1#show mls qos
QoSisenabled
表示本交换机在全局已经启用QoS功能
3)show mls qos interface [接口名称]
SW1#showmls qosinterface f0/1
FastEthernet0/1
trust state: nottrusted
当前此端口的信任状态为不信任(虽然本端口设置为信任收到的数据帧携带的CoS值,但是由于此端口未检测到思科IP电话,所以当前状态为不信任)
trust mode:trustcos
信任此端口收到的数据帧携带的CoS值
COS override: dis
defaultCOS:0
此端口默认的CoS值为0
DSCP Mutation Map: DefaultDSCP MutationMap
Trustdevice:cisco-phone
只有当此端口下挂思科IP电话时才信任收到的数据帧携带的CoS值
相关附文:
VoIP电话推荐特性
1. Qos
VoIP通信流对延迟和抖动(数据包延迟的变化)有严格要求。为满足IP电话的要求,Cisco使用大量的IPQos特性,对通信流进行分类、排队、拥塞监测和流量整形和压缩,以保障最大限度地降低数据包丢失、延迟和抖动。当网络发生拥赛后,Qos配置赋予关键应用较高的服务优先级,以便在网络发生拥塞时,关键应用的服务质量降低的较少。
2.语音VLAN(辅助VLAN)
Cisco IP电话有一个用于连接PC的端口,因此很多CiscoIP电话配置都让cisco IP电话串连一台PC。由于CiscoIP电话和工作站连接的是同一个交换机接口,因此将该接口加入VLAN中后,相应的Cisco IP电话和工作站将位于同一个VLAN中。Cisco 交换机支持一种独特的功能,这种功能在cisco IOS中被称为语音VLAN,它将Cisco IP和工作站加入不同的vlan中。通过使用语音VLAN,可将接口端口的VoIP通信流加入到另一个VLAN中。如果希望使用语音VLAN,那么只需要配置交换机,而无需在cisco IP电话上做额外的配置。
网络带宽供应
如果希望设计成功的IP电话网络,正确的供应网络带宽至关重要。所有应用(包括语音、视频和数据应用)的总带宽不能超过链路可用带宽的75%。即使所有应用的带宽总需求低于可用带宽的75%,仍必须采用Qos设计,然而,如果应用的需求超过了可用带宽的75%,应增加链路或使用带宽更高地链路。
从通信流的角度看,单个IP电话呼叫由两个流组成。
1.语音载波流---由包含实际语音样本的RTP(Real-TimeTransport Protocol,实时传输协议)数据包组成
2.呼叫控制信令---由属于多种协议之一(如H.323或MGCP media Gateway Control Protocol,媒体网关控制协议)的数据包组成。具体属于那种协议,取决于参与呼叫的端点,呼叫控制功能包括建立、维护、拆除和重定向呼叫等
VoIP数据包由第2层链路报头(14字节)、IP报头(20字节)、用户数据报(UDP)报头(8字节)、RTP报头(12字节)和语音负载组成。链路报头的长度随使用的第2层介质而异。VoIP数据报传输的开销很重要。此外,语音采样率决定了比特率。采样率随语音编码/解码器而异。最常见的编码/解码器是G.711和G.729,它们使用的总带宽(包括IP报头和第2层链路报头)分别是87.2kbit/s和31.2kbit/s。在提出IP电话的解决方案时,必须使用包括所有报头在内的总比率,计算并行语音呼叫数量多时所需要的带宽量,尤其对于低速WAN接口。