《武汉工程大学学报》  2014年12期 1-8   出版日期:2014-12-31   ISSN:1674-2869   CN:42-1779/TQ
虚拟专用网中语音的应用及网络性能


0 引 言

基于TCP/IP体系的Internet存在网络安全的缺陷,企业通过Internet来连接远程站点和传输数据,容易对内部网络构成安全威胁。IPSec-VPN技术能够让企业在互联网的基础上创建私有网络来提供机密性和安全性[1-4]。目前,采用IPSec标准的VPN技术日臻成熟,得到国际上几乎所有主流网络和安全供应商的鼎力支持,可以断定,IPSec将成为未来相当一段时间内企业构筑VPN的主流标准[1,4]

VoIP 将模拟的语音讯号经过压缩与封包之后,经过IP网络将数据包传送到目的地。VoIP可以低资费甚至免费传送语音、传真和视频等业务,提供比传统业务更多、更好的服务[5-6]。因此,一方面在企业内部尤其是远程站点中,VoIP的应用具有机密性和安全性的需求,利用现有的IPSec-VPN技术来提供支持和保障,不失为一种便捷经济的选择,另一方面由于加载VoIP负荷而对网络性能产生的影响以及语音在虚拟专用网中的传输质量也是需要考量的因素

1 技术原理和隧道封装模式

1.1 IPSec 工作原理

IPSec 的工作原理类似于包过滤防火墙,当接收到一个IP数据包时,通过查询SPD(Security Po1icy Database,安全策略数据库)决定对数据包进行丢弃或转发的处理[1,7]。通信双方如果用IPSec建立一条安全的传输通道,需要双方事先协商好采用的安全策略,包括加密算法、密钥、密钥的生存期等,安全策略可以由AH或ESP提供。IPSec既可以仅对IP数据包进行加密或认证,也可以同时实施二者,但无论是加密还是认证,其工作模式都有两种:传输模式和隧道模式。传输模式仅对 IP 有效负载进行加密,只适合PC到PC的场景,而隧道模式对 IP 报头和有效负载进行加密,可以适用于任何场景[1-2,8]

1.2 隧道封装模式

隧道是封装、路由与解封装的整个过程。隧道将原始数据包隐藏(或封装)在新的数据包内部,该新数据包可能会有新的寻址与路由信息,从而使其能够通过网络进行传输。封装的数据包到达目的地后,会拆除封装,原始数据包头用于将数据包路由到最终目的地。隧道是不可见的,而只能看到网络路径中的点对点连接,连接双方并不关心隧道起点和终点之间的任何路由器、交换机、代理服务器或其它安全网关等。隧道模式下的IPSec报文要进行分段和重组操作,将隧道和数据保密性结合使用时,可用于提供VPN [8-9]

1.3 VPN 技术原理

VPN (Virtual Private Network,虚拟专用网)。虚拟专用网络可以理解为虚拟出来的企业内部专线,它可以通过特殊加密的通讯协议使Internet上位于不同地方的多个企业内部网络之间建立一条专有的通讯线路 [1,10] 。VPN通过公众IP网络建立私有数据传输通道,将远程的分支办公室、商业伙伴、移动办公人员等连接起来,减轻了企业的远程访问费用负担,节省了电话费用开支,提供了安全的端到端数据通信。

2 网络部署与配置

2.1 背景资料及拓扑图

某公司总部和分部分别接入Internet,但总部和分部都只有一个公网IP地址,如图1所示。总部和分部之间除了日常通信业务外,内部还设置了语音话机,分别配置了语音交换机和语音路由器,并通过VPN集线器建立私有网络进行数据传输。要保证公司总部和分部的用户都能访问Internet,同时综合考虑办公、安全性和费用等方面的要求,公司总部和分部的内部PC和VoIP话机通过VPN互访

图1 企业IPSec-VPN虚拟专用网拓扑图

Fig.1 The network topology of the enterprise’s IPSec-VPN

2.2 主要配置命令及解析

2.2.1 企业语音路由器的配置 以企业总部路由器Voice Enabled Router1(简称VR1)的主要配置命令为例进行解析,分部路由器Voice Enabled Router2的配置可以参考总部路由器,不再赘述。

在VR1设置两个DHCP池,分别为企业PC和语音话机动态分配IP地址、网关和DNS服务器地址。Cisco语音话机需要从TFTP服务器下载配置文件,如果没有相应的TFTP服务器,则向DHCP动态池发送option 150命令请求配置信息,配置命令如下。

VR1 (config)#ip dhcp pool // 动态池名称

VR1 (dhcp-config)#network // 动态分配的地址范围

VR1 (dhcp-config)#default-router // 语音话机动态获取的默认网关

VR1 (dhcp-config)#ip dhcp excluded-address // 在获取的动态IP中剔除网关地址

VR1 (dhcp-config)#option 150 ip //Cisco 语音话机请求配置信息

Cisco IP 电话的呼叫控制由Cisco CallManager完成,支持各种标准通信协议的语音网关,如H.323/MGCP/SIP等,提供电话号码注册分配,完成信令控制和通话控制,配置命令如下:

VR1 (config)#telephony-service // 开启电话服务

VR1 (config-telephony)#max-ephones // 容许的最大电话数

VR1 (config-telephony)#max-dn // 容许的最大目录号

VR1 (config-telephony)#ip source-address // 注册到Callmanager上的IP和端口号

VR1 (config)#ephone-dn // 逻辑电话目录号

VR1 (config-ephone-dn)#number // 电话号码

VR1 (config)#ephone // 电话物理参数配置

VR1 (config-ephone)#mac-address // 绑定IP电话的MAC地址

VR1 (config-ephone)#type 7960 // IP Phone 电话类型

VR1 (config-ephone)#button 1:1 // 电话按钮与电话目录号绑定

VR1 (config)#dial-peer voice 1 voip // 定义拨号对等体之间的端对端呼叫为语音

VR1 (config-dial-peer)#destination-pattern //指定通信对方的IP地址

VR1 (config-dial-peer)#session target ipv4: //定义VoIP路由

IPSec-VPN虚拟专用网提供的保护功能有数据机密性、数据完整性和认证等。

数据机密性(Data Confidentiality)用于对发送和接收的数据进行加密和解密,加密算法大致可以分为对称式加密和非对称式加密两类,对称式加密算法包括DES、3DES、AES,非对称式加密算法为RSA。数据完整性(Data Integrity)用于保证数据在传输过程中不被修改,发送方在发送数据时,为消息附加一个Hash值1,接收方在接收数据时,根据消息内容和共享密钥计算出Hash值2,两者相符则说明数据内容没有被篡改,目前常用的Hash值算法(散列算法)有两种:HMAC-MD5和HMAC-SHA-1。认证(Authentication)也叫起源认证,即对对等体进行验证,也称对等体验证(Peer Authentication),是指对数据发送者的身份识别,确保信息的来源真实可靠,目前有两种方法:预共享密钥(PSK)、RSA签名,配置命令如下:

VR1 (config)#crypto isakmp policy //建立isakmp策略

VR1 (config-isakmp)#hash md5 //数据完整性加密算法

VR1 (config-isakmp)#encryption des //数据机密性对称式加密算法

VR1(config-isakmp)#authentication pre-share //预共享密钥认证

VR1(config)#crypto isakmp key //IKE验证密码,对等体两端需一致

VR1(config)#crypto ipsec transform-set ah-md5-hmac esp-des //为交换集命名和设定封装方式,*为交换集名称(下同),两端可以不同,但ah-md5-hmac esp-des必须一致

VR1(config)#crypto map 1 ipsec-isakmp //创建密码图,调用密钥策略号,﹡为密码图名称(下同)

VR1(config-crypto-map)#set peer //密码图指向对端外网端口IP

VR1(config-crypto-map)#set transform-set //调用交换集

VR1(config-crypto-map)#match address //应用访问控制列表ACL

企业总部和分部的PC,除了通过虚拟专用网进行通信外,还有访问外网获取信息的需求,通过问控制列表(ACL)和NAT地址转换技术来实现这两个目的。

VR1(config)#access-list //配置ACL,控制企业私网内部数据的流向

VR1(config-if)#ip nat outside

//配置NAT,除VPN隧道外的其它流量都允许访问外网

VR1(config-if)#crypto map //将密码图放置在ACL上,迫使内网流量(包括语音流量)走VPN隧道

VR1(config)#ip route //默认路由用于本地私网访问外网

2.2.2 企业语音交换机的配置 Cisco 语音交换机支持一种独特的功能称为语音VLAN它将Cisco IP电话和工作站加入不同的VLAN中。通过使用语音VLAN,可将端口的VoIP通信流加入到另一个VLAN中,而且只需要配置交换机,无需在Cisco IP电话上做额外的配置。企业总部语音交换机Voice Enabled Switch1(简称VS1)的主要配置命令如下,分部语音交换机Voice Enabled Switch2的配置可参考之。

VS1 (config-if)#switchport access vlan //Cisco IP电话连接交换机的端口设置VLAN

VS1 (config-if)#switchport voice vlan 1 //语音VLAN

VS1 (config-if)#switchport mode trunk //语音路由器连接交换机的端口设置trunk干道

2.2.3 外网服务器的配置 WWW服务器中制作一个简单网页index.html,网页域名http://www.lqp.com,作为企业内网主机访问外网服务器中Web页面的验证DNS服务器中建立对应http://www.lqp.com的域名解析,并使用公网IP地址202.101.172.1,如图2所示。

图2 WWW和DNS服务器的配置

Fig.2 The configuration of WWW server and DNS server

3 测试结果

企业总部的IP phone1设置电话号码0571-86877072,分部的IP phone4设置电话号码13511112222,彼此之间能相互通话,如图3所示。

图3 企业内部IP phone之间的通话

Fig.3 The calls between internal IP phones of the enterprise

企业内网的PC通过域名http://www.lqp.com访问WWW服务器中的Web页面,如图4所示。

图4 企业内网PC访问WWW服务器中的Web页面

Fig.4 The web page in WWW server accessed by the enterprise intranet PC

隧道模式中,IPSec的AH头或ESP头插入原来的IP地址之前,加密和认证之后重新产生的IP头加到AH头或ESP头之前。通过“show ip route”命令查询VR1的路由信息可以看出,真正的IP源地址和目的地址都隐藏在Internet传送的普通数据中,如下所示。

Gateway of last resort is 20.0.0.2 to network 0.0.0.0

C 20.0.0.0/8 is directly connected, Serial1/0

C 192.168.10.0/24 is directly connected, FastEthernet0/0.1

C 192.168.20.0/24 is directly connected, FastEthernet0/0.2

S* 0.0.0.0/0 [1/0] via 20.0.0.2

4 网络性能影响

IPSec-VPN是需要消耗资源的保护性措施,一方面隧道模式加密的复杂性需要占有一定的网络带宽,另一方面IPSec保护的兴趣流会触发协商,触发的过程通常是将数据包中的源、目的地址、协议以及源、目的端口号与ACL进行匹配,协商的内容主要包括双方身份的确认、密钥种子刷新周期、AH/ESP的组合方式及各自使用的算法、封装模式等,这些都是网络延迟的影响因素。

在OPNET平台上对网络性能进行仿真和分析[10~ 11],图5显示,企业总部网络的吞吐量和分部网络的吞吐量基本相当,说明在IPSec-VPN隧道中数据的丢包率比较低,VoIP语音数据基本上能完整到达对方。

图5 企业总部和分部网络的吞吐量

Fig.5 The network throughput of HQ and division

从图6可以看出,企业总部PC机开始时数据包的发送速度很快,VR1路由器接到数据包后进行加密、封装,接收速率逐渐缓慢下来,一直到数据发送完毕。在接收方,开始时由于与发送方建立会话和协商,数据包的传输速率比较平缓,当发送方的数据全部发送完成后,接收方VR2路由器进行解密和解封装,还原数据,企业分部PC机的输送速率陡然提高,直到全部接受数据完毕。

图6 企业总部和分部PC数据包的传输速率

Fig.6 The data packet transmission rate of HQ and division

IPSec-VPN的机制对网络延迟的影响比较明显。图7显示,企业总部网络随着IPSec的会话协商、数据的加密认证和VoIP数据包的发送出现3次较为明显的延迟现象,分部网络由于没有VPN隧道的数据发送,网络延迟有所减缓。

图7 企业总部和分部网络的网络延迟

Fig.7 The network delay of HQ and division

5 结语

随着企业组织机构区域性扩展及员工日益分散,分支机构采用VPN方式与总部建立一个大的虚拟专用网并进行集中管理操作,从而达到节省成本和实时管理的目的。基于IPSec标准的VPN技术为企业内部网络数据的安全传输提供了技术保障,但VPN的数据机密性、数据完整性、起源认证等加密措施和隧道封装技术使得网络配置变得复杂。在IPSec-VPN专用网中虽然数据包的传送基本上是完整的,但IPSec采用的安全策略对数据包的传输速率尤其是网络延迟的变化无疑会产生较大的影响,导致网络抖动明显,收敛速度慢,VoIP语音的质量也随之减低。因此,采取诸如数据高速透明压缩、流量整形、智能带宽分配、VPN数据双向加速等技术,提高上/下行带宽速度,减少网络延迟,以获得高速应用性能,是IPSec-VPV技术关注和研发的重点。

致 谢

感谢学院同仁和合作企业提供的大力支持和帮助。