利用 IPSec VPN 技术,企业能够实现全球通达,并大大节约成本,同时保持内部通信的安全。
然而,如何确保其IPSec协议的一致性,并在网络性能方面管理IPSec VPN的效果,正确的测试方法能够绝妙地应对这些挑战。
企业在其通信与信息基础设施方面投资巨大,而且基础设施的维护与升级费用持续增长,促使这些机构寻找专用通信基础设施的替代方案。同时,因特网的迅猛发展为我们提供了一个惹人注目的替代方案可能性,即将其作为此种替代方案的骨干网。但是,因特网作为企业网络的不足之处就是缺乏安全性,IPSec VPN技术跨越了这一障碍。已经证实,它作为企业借助因特网基础架构,并安全利用这一资源的方法,受到了越来越多的欢迎。
利用IPSec VPN技术,企业能够将公共因特网作为其通信网络基础架构的骨干,实现全球通达,并大大节约成本,同时保持内部通信的安全。然而,成功的 IPSec 产品开发与实施却提出了具体挑战:即如何确保其 IPSec 协议的一致性,并提高IPSec VPN的网络性能。正确的测试方法能够绝妙地应对这些挑战。
一致性测试 应对协议变更
IPSec 实施的动态性需要 IPSec 网关厂商对其实施的 IPSec不断进行检验,使其符合标准,确保正确性与协同性。尽管IETF确立IPSec协议标准已有数年之久,但是早期的实施并不完全符合标准,因而无法协同。对IPSec VPN服务的实施者来说,这已经无法接受。这些问题需要从事 IPSec 的群体予以充分重视,以确保该技术的快速发展。
IETF(因特网工程任务组)正在对使用 IPSec VPN 的一些协议进行更新,多个 RFC 对一系列 IPSec 协议进行了定义,其中包括 IKE、AH、和 ESP,以及若干相关协议与选项。为了达到足够的测试范围,一个一致性测试需要建立数百个测试案例,而且这些测试案例还需要经常更新。由于测试周期非常频繁(某些案例需要每天测试),因此它们需要使用脚本界面实行完全自动化。而且,因为接受测试的设备 (DUT) 需要针对数百个测试案例一一进行重新设置,所以还需要为 DUT 的设置编写脚本,并分批进行测试。
从IPSec网关厂商的角度来看,服务提供商和网络管理员需要IPSec与标准保持一致,他们经常自行校验,以确保协同性。在竞争激烈的市场上,厂商无法负担被客户查证出错误的后果。除了确保协同性之外,一致性测试还为厂商提供了常常被忽视的巨大益处。一致性测试不仅能够确保产品的质量,而且还加快了产品开发――在开发周期中发现一个程序错误,或者更正一个设计逆流,这都会对产品的最终效益产生重大影响。
对于服务提供商和网络管理员来说,多厂商环境是现实的,如果没有基于标准的实施,这种现实性将无法管理。由于他们还定期升级自己的IPSec VPN,因此确保这些升级不会打破现有的服务就变得非常重要。 虽然并非所有的一致性要求都是针对IPSec的,但是将IPSec加到网络上增加了一致性测试的复杂性和必要性。
可扩展性测试 关注隧道建立率
托管服务提供商和网络管理员必须处理IPSec VPN对整个网络中的应用程序性能的影响,以及多厂商环境中各种网络组件和服务的协同性。IPSec要求在发送数据之前先在站点之间或客户端与网关之间建立隧道。使用IPSec VPN服务的用户或站点数量可依照网关所能支持的隧道数量进行扩展。隧道所能支持的最大数,或称隧道容量,是厂商用以区别自己的产品与其他同类竞争产品的一个关键衡量标准。其中一个常常被忽视的相关衡量标准就是隧道建立率 (tunnel setup rate),或者说是一个设备每秒所能建立的隧道数目。对于拥有众多站点或用户的电信公司级大型 IPSec 网关来说,隧道容量和建立率尤其重要。
性能测试 要求精确
增强安全就要以牺牲性能为代价,在IPSec的实施过程中,安全与性能往往会顾此失彼,IPSec会增加延迟和降低吞吐量。在建立隧道之后,IPSec网关将对输出的业务负载进行加密,并对输入网络的业务负载进行解密。加密和解密原本就需要大量的计算―这也是为什么加密数据能够保证安全的部分原因。然而,计算的开销意味着通过IPSec隧道的吞吐量将受到网关的加密与解密能力的限制。此外,加密与解密还会大大增加延迟。
对于IPSec网关厂商来说,可扩展性与性能是需要衡量的竞争优势,朝向基于硬件的高性能系统的发展使这些衡量标准比以往任何时候都更加重要。对于服务提供商和网络管理员来说,性能是选择厂商的首要衡量标准,因为它们直接影响到服务的质量。实施 IPSec 所带来的延迟增加与吞吐量减小会干扰网络的当前应用,并在总体上降低网络性能。总之,IPSec 系统性能测试的关键衡量标准就是延迟以及吞吐量。
第一代 IPSec 网关并不是为可扩展性或高性能而设计的,因此,使用个人电脑的基本功能测试与小规模仿真已经足够了。然而,随着测试规模的扩大,使用个人电脑进行性能测试已经变得不仅难以管理,而且成本高昂。另一种测试方法是让两个 IPSec 网关背对背 (back-to-back),并在每一边均使用业务负载生成程序。这种方法也有许多不足之处。使用背对背设置或基于个人电脑的测试时很难精确测量延迟时间,特别是在涉及到每个隧道、每个阶段计时信息的测试时更是如此。背对背测试并不能指出其他 IPSec 网关可能存在的协同性或计时问题。
Ixia测试方案
Ixia通过开发业界标准一致性测试套件IxANVL(Ixia 自动网络验证库),解决了协议一致性测试的挑战。IxANVL IPSec套件含有 500 多个测试案例,其中包括用于 IKE、AH 和 ESP 的测试,并且支持多种加密与解密算法,其中包括 3DES、AES、Blowfish、MD5和SHA。IxANVL提供正负两类测试案例。IxANVL以对话方式进行测试:它向需要测试的设备发送数据包,接收响应的数据包,再对响应进行分析,以决定下一步要采取的行动。与简单数据包一代相比,这使 IxANVL能够以更加智能和灵活的方式测试复杂情况或反应,并捕捉设备。IxANVL能够使用命令行界面实现完全自动化。IxANVL还向用户提供源代码供定制之用,因而具有更大的灵活性。
Ixia是将IxVPN作为VPN性能测试解决方案而开发该产品的。IxVPN 使用Ixia特意制造的硬件,并为验证下一代IPSec设备与网络的可扩展性与性能提供可以充分扩展的解决方案。IxVPN对一方DUT上的IPSec网关发起隧道和另一方DUT上的主机进行仿真,如图所示。每个Ixia端口均可对成千上万个IPSec安全网关(每个网关都有自己唯一的Source IP and MAC地址)进行仿真,创建出真实的情景。IxVPN非常便于配置带有各种IPSec参数的大量隧道。用户可为每个选项指定一个分配百分比,应用程序将自动创建相应的IPSec隧道组合。 为了测量隧道容量,IxVPN发起端口将一直顺序申请隧道,直至用户定义的隧道数不能实现为止。
IxVPN 网络模型
IPSec测试工具 应该能够……
● 对网关和主机进行仿真,充当IPSec发起方,并使用接受测试的设备(DUT)建立隧道。
● 精确地测量隧道容量和建立率。
● 具有高度的可扩展性。目前一代 IPSec 网关的更高端产品需要单独测试系统以扩展至数百乃至数千个隧道,每秒钟建立数百个隧道,并每秒钟发送千兆比特的加密数据。
● 支持所有重要的IPSec选项以及一系列IPSec选项组合。诸如各种加密算法(3DES、AES)、几种Diffie-Hellman算法(DH2、DH5等)以及几种散列算法(MD5、SHA-1)。
● 提供每个阶段以及每个隧道的详细统计数字。性能测试中的关键问题就是结果的间隔尺寸,总量统计不能提供查出问题的足够信息。延迟应该在每个阶段的基础上进行报告:IKE SA创建延迟以及 IPSec SA创建延迟。同样,也需要在每个隧道的基础上收集统计数字,以便查出特定隧道的问题。
● 通过隧道发送有状态的业务负载。隧道一旦创建,就需要对加密和解密延迟分别测量,以验证每个隧道都在可接受的限度之内。DUT的加密和解密性能可能会有差异,为了测量这个差异,测试解决方案应该既能加密数据,又能解密数据。
● 测试工具应该是自动化的。因为复杂的测试方案需要经常反复进行,对于DUT的每次更新,自动化极为重要。