基于LLDP-MED的VOIP研究与实现
2014-11-25原浩
原 浩
福建星网锐捷网络有限公司,福建福州 350002
0 引言
原有的电话间通信,都是通过固网PSTN 来进行,属于专用网络,运营成本高。VoIP(Voice over Internet Protocol,网络电话)是将模拟的声音讯号引经过压缩与封包之后,以数据封包的形式在IP 网络进行语音讯号的传输的电话设备。VoIP 可通过网线供电,具有简化部署,便于安装,升级等优点,被越来越多地应用在了企业办公网中。
1 基于OUI 配置的VoIP 部署
VoIP 目前的实现架构,是集中式的架构,所有VoIP 话机先要在一个语音控制器上注册,而后方可使用,注册使用的协议包括:MGCP、SIP、H.323、RTP、SCCP 等。其中包括注册协商过程,语音、视频编码、压缩算法等。而后电话间互通,可通过语音控制器转发,也可在两个话机之间直接进行通信。
图1 VoIP 电话部署图
VoIP 的部署见图1,VoIP 电话与交换机相连,VoIP 语音数据流在进入交换机后,支持Voice VLAN 功能的交换机可以根据进入端口的数据报文中的源MAC 地址字段,判断该数据流是否为VoIP 的语音数据流。源MAC 地址符合交换机上配置语音设备的OUI(Organizationally Unique Identifier,全球统一标识符)地址的报文被认为是语音数据流,会被自动划分到Voice VLAN 中进行传输。
OUI 地址为MAC 地址的前24 位,是IEEE(Institute of Electrical and Electronics Engineers,电气和电子工程师学会)为不同设备供应商分配的一个全球唯一的标识符,从OUI 地址可以判断出网络设备是哪一个厂商的产品。
在办公网环境中,传输的数据可以分为数据流和语音流。Voice VLAN 是为VoIP 语音数据流专门划分的 VLAN。通过将数据流和语音流分别限制在数据VLAN 和Voice VLAN 中,从而保证业务报文和语音通话互不影响。同时针对语音流进行有针对性的 QoS(Quality of Service,服务质量)配置,提高语音流量的传输优先级,保证通话质量。
2 运行过程
基于OUI 配置的VoIP 运行前,在交换机上需要先进行初始配置:
1)交换机上配置Voice VLAN ID;
2)交换机上配置运行的OUI 地址。如设定某型号VoIP 设备的OUI,地址0012.3400.0000,掩码是ffff.ff00.0000 设备的报文是语音报文,通过Voice VLAN 转发。
3)交换机上配置,将连接IP 电话的端口加入Voice VLAN。
4)交换机上配置Voice VLAN 的DSCP,如DSCP=40,让语言报文有更高的优先级。
配置后,当VoIP 发出第一个报文后,交换机从端口收到报文会将其源MAC 地址与合法OUI 地址相匹配。如果该源MAC为OUI 范围地址,即认为该报文为语音报文。在该端口上学习这个MAC 地址,同时将MAC 自动加入到Voice VLAN 中。交换机自动下发QoS策略,提高所有通过Voice VLAN报文的优先级。使得语音报文能够优先转发,避免链路拥塞情况下,语音报文丢弃而导致的通话失真。
经过上述步骤后,VoIP 的语音报文以高优先级从交换机中转发出去。
3 存在缺陷
随着技术的发展,基于OUI 配置的VoIP 在部署中暴露出了越来越多的局限性。
首先,生产VoIP 电话的厂商很多,其OUI 各不相同。因此,每当客户接入或更换新厂商的VoIP 电话时,都要通知网络管理员增加新的Voice VLAN OUI 配置。
其次,VoIP 可通过PoE(Power over Ethernet,以太网供电)交换机进行供电。带有液晶显示屏的VoIP 电话,在工作的过程中功率会发生变化。在待机情况下,一般消耗5w;当彩屏打开后,VoIP 的功率会达到10w。而基于OUI 配置的PoE 交换机,无法实现基于VoIP 需求而动态调整供电功率的功能,PoE 交换机只能以最大功率10w 给VoIP 电话供电,从而造成电力能源上的浪费。
4 基于LLDP-MED 配置的VoIP 部署
IEEE 组织在2005 年发布了IEEE 802.1AB 标准,即LLDP(Link Layer Discover Protocol,链路层邻居发现协议)。链路层邻居发现协议顾名思义,用于发现邻居设备,这里的邻居设备包括任何支持LLDP 协议的设备和终端:交换机、VoIP等。而LLDP-MED(Link Layer Discovery Protocol-Media Endpoint Discovery,链路层发现协议媒体终端发现)是LLDP协议的扩展,通过网络设备与终端(例如VoIP 等)之间交换消息来实现对终端设备自动发现及配置等功能,方便VoIP 设备的部署。
4.1 原理
LLDP 协议报文的目的MAC 地址为01:80:c2:00:00:0e,以太网类型为0x88cc。LLDPDU 是封装在 LLDP 报文数据部分的数据单元。在组成 LLDPDU 之前,设备先将本地信息封装成TLV 格式,再由若干个 TLV 组合成一个 LLDPDU 封装在 LLDP报文的数据部分进行传送。
TLV 是组成LLDPDU 的单元,每个TLV 都代表一个信息。LLDP-MED 中定义终端相关的TLV,其中与VoIP 相关的TLV 主要有以下类型:
表1 LLDP-MED 中VoIP 相关TLV 说明
LLDP-MED Capabilities TLV 用于确定设备的类型,对于VoIP 设备,其发出的LLDP 报文中该字段设置为telephone 属性,告知对方自己是电话设备。
LLDP-MED 中Network Policy TLV 能够提供配置策略下发,能够提供VLAN ID、QoS 优先级DSCP 值等内容的下发。交换机可通过Network Policy TLV 将策略发给下联的VoIP 设备。
LLDP-MED 中Extended Power via MDI TLV 提供设备用电相关信息。对于PSE(Power Sourcing Equipment,供电端设备),通过LLDP 可以获取到对端PD(Powered Device,受电端设备)的用电信息。当PD 设备的用电信息发生变化时,也可通过LLDP 模块获取到对应信息,由PoE 模块动态调整端口的供电功率,就可以实现PoE 动态调整。PoE 供电协商过程:
1)PD 和PSE 之间,经过802.3af 协议协商出供电的class 级别(如class3 级别)
2)PD 通告给PSE 当前最大功率X,需要的最大功率X。
3)PSE 查看PoE TLV,如果PD 需要的功能X<class 3 级的功能,通告给PD 最大允许提供的功率X,就以功率X 开始供电
4)一段时间后,PD 需要更多的功率Y,Y>X。PD 向PSE通告当前最大功率X,需要的最大功率Y
5)PSE 确认PD 需求的供电功率在自己供电能力范围,通告PD 最大允许提供的功率Y,并以功率Y 进行供电
6)PD 获得更大的功率,同时通告PSE,当前最大功率Y,需要的最大功率Y。
4.2 VoIP-LLDPMED 应用场景
VoIP-LLDPMED 典型办公网应用场景如图二,VoIP 电话下联PC,再连接到支持LLDP 的交换机。交换机支持PoE,通过网线直接给VoIP 供电。PC 业务是数据流,与数据服务器之间进行业务通信;VoIP 业务是语音流,与语音控制器之间进行业务通信;要求数据流与语音流之间隔离,并保证语音流报文高优先级,避免拥塞导致语音中断。
图2 VoIP 办公网部署图
在VoIP 办公网环境中,交换机需要先进行初始配置:在交换机上配置VoiceVlan ID;打开端口的LLDP 功能;并配置信任VoIP 的Qos 设置。在LLDP 环境中VoIP 运行过程:
1)VoIP 电话上电后,交换机通过硬件检测,检测出的CLASS 级别为2,进行CLASS2 级别的供电,供电功率为7W。
2)VoIP 发送LLDP 报文,报文中包含以下内容:
(1)Capabilities 字段的TLV 是Telephone,告诉交换机我是IP Phone;
(2)报文带有Network Policy 字段,请求Voice 报文的QoS 的优先级更高,如请求优先级DSCP 为32
(3)报文带有PoE 相关的TLV 字段,请求实际需求的最大功率为5W。
3)交换机回应LLDP 报文,报文中包含以下内容:
(1)报文中携带交换机上配置的Voice VLAN ID 策略。而后电话收到后,将在之后发送的IP、ARP 报文的tag 都带此ID。
(2)报文回应实际供电功率为5W,同时以5W 给VoIP 进行供电。
(3)根据VoIP LLDP 请求的Qos 优先级,设置VoiceVlan报文的优先级。
(4)当VoIP 识别到Voice VLAN ID 后,发送DHCP 请求IP 地址,报文的tag=Voice VLAN ID
(5)语音控制器收到DHCP 请求后,发送DHCP ACK,报文中通知VoIP 获取到的IP 地址。
(6)VoIP 获取到地址后,使用SIP、SCCP 等协议,开始向语音控制器发起注册。在语音控制器上注册成功后,控制器上会形成VoIP 话机“IP 地址——电话号码”的绑定。
(7)而后VoIP 就可以进行话机通信了。呼叫过程必须通过语音控制器,查找所要呼叫号码响应的IP 地址,而后由控制器向对方发起会话。被叫方响应后,控制器向呼叫方通告被叫方状态,同时发送被叫方的IP 地址给呼叫方。而后双方就可通过RTP 协议进行通信。
5 结论
对于网络设备来说,设备易部署、易用性和易管理性是衡量产品软件质量的一个重要指标。通过LLDP-MED 能够避免VoIP 部署过程中新增和替换导致配置变更;同时结合PoE动态调节功能,能够避免供电功率方面的浪费,符合当代对VoIP 部署简便、绿色节能方面的要求。
[1]802.1AB-2005.pdfhttp://read.pudn.com/downloads139/sourcecode/others/600448/ieee8023_2005/802.1AB-2005.pdf
[2]ANSI-TIA-1057https://www.ietf.org/proceedings/68/slides/ecrit-1/sld1.htm