随着网络技术的发展及应用领域的不断扩大,政府以及公司不同分支机构之间的网络互连成为了必然趋势。能够为了实现不同机构之间的安全互联,同时避免 高昂的租用专线费用,虚拟专用网(Virtual Private Network ,VPN)技术得到了广泛的应用。其中SSL VPN是VPN技术的一种,它以简单的接入方式、灵活细粒度的权限控制、可靠的安全保障成为了目前VPN应用技术新的亮点。但是随着用户业务量的增大、用 户并发数量的增多、以及应用过程中的对响应速度,以及通讯联络通畅性的要求越来越高,导致单台VPN在业务量大、用户多、网络环境复杂的情况下,会存在应 答反应慢、用户感受差、数据转发处理存在瓶颈、设备出现问题导致业务流量中断等用户无法接受的问题。为了解决上述问题,集群作为一种新的解决方案被提了出 来。
集群(Cluster)技术是指,一组相互独立的服务器在网络中表现为单一的系统,并以单一系统的模式加以管理,此单一系统为客户工作站提供高可用 性的服务。那么在SSL VPN中集群的整体思路为,将多台VPN形成一个VPN集群,对外提供统一接口。这样,SSL VPN用户在通过VPN访问相应服务时,并不知道总共有多少台VPN,也不知道到底是哪台VPN在服务。但在数据处理上,由于多台VPN设备并行进行数据 处理,使得VPN数据处理能力得到了极大加强。同时,因为集群内各台VPN设备配置相同,处理能力相同,如果其中一台设备出现故障,这台设备的数据处理功 能会自动移交给其他设备,使得具体业务应用不会因为某一台设备宕机而受到影响,从而为用户使用环境的稳定性提供了有力的保障。
下面我们通过政务外网的具体使用案例来看集群在实际使用过程中两种部署方式以及所解决的问题。
政务外网是一个环形网络,各政府机构(如,公安局、审计局等)网站都通过这个环网接入。这个环形的网络是一个信息高度集中,应用比较广泛且数据量大 覆盖面广的一个网络,对于该网络中要采用VPN进行数据访问加密,并对后台服务器进行保护这样一个应用来说,就要求VPN系统具有强大的数据处理能力,稳 定的运行和备份能力,以及简单易行的可扩展能力。为了满足这样一个应用场景,我们首先看看传统VPN的集群部署方式,具体拓扑如下图所示:
在该环境中,采用了4台VPN设备来建立集群,每台集群的型号以及配置均相同,其中一台设备作为主墙,进行接收任务的分配工作,分配有多种原则,数 据由主墙进行统一分发,可以分配到四台VPN设备的任何一台设备上进行处理。如果主墙出现问题,那么后面三台备墙会按照规则选定其中一台继续履行主墙的职 责,而主墙上以前没有完成的任务会分给后面三台设备继续处理,使用户访问损失达到最小。同时,在环境中每台设备均有一个端口与内网服务器相连,如果内网服 务器出现问题,会在VPN设备上启动接口联动功能,使得外网口会向用户反馈服务中断的响应。在该集群环境中,对外宣布的访问地址只有一个,但是处理访问的 VPN设备却同时有四台,大大提高了数据实际处理能力。如果想要扩展集群的处理能力,只需要在原有基础上,多加集群设备即可,如增加到8台。在配置上要将 后增加的设备的配置及时同步到其他服务器上。这种实现要求每台VPN设备之间连接相应的心跳线、负载均衡线,以便于实时的探测各台VPN设备的运行情况, 以及进行相应的配置同步。
该集群环境能够很好的满足用户对数据处理高性能、响应及时以及可靠的稳定性方面的需求,但还是有其缺陷的,首先:这种集群环境要求所有的设备都在一 起,不能分布实施:其次,这种集群环境需要一台主墙作分发,那么这台主墙的性能也直接决定了整体集群的处理能力;第三,这种集群环境要求每台墙的配置除了 基本的网络配置外都要相同,这就要求每台墙的配置需要实时同步,且配置量会很大,给后期维护带来一定的困难;第四,虽然这种集群方式在规模上理论上是可以 大范围扩展的,但是由于配置量大、物理接口需求多、且对分发主墙性能要求高,所以事实上10台以内的集群环境是可能的,再多就会给使用和维护带来困难。基 于上述原因,提出了分布式的集群解决方案。拓扑如下图所示:
在该方案中,多台VPN作为各自独立的设备分布到用户的环形网络中,每一台设备的作用都是相同的,不存在主次之分。设备上分别接入内网和外网,也就 是说,每台设备都拥有单独的外网接口。服务器1作为权限分发中心,负责集群中每台设备的注册以及每台设备配置的下发。认证服务器区作为认证中心,负责所有 用户认证。当用户第一次访问内网资源的时候,首先通过服务器区1获得集群中所有VPN设备的访问地址列表,并缓存在本地。这样后续访问内网资源的时候,就 可以通过缓存的设备地址列表随机通过任何一台VPN设备访问其保护的内网资源,当然这些操作都是自动的,用户不用手工进行。同时服务器1还负责对所有注册 在本服务器内的VPN设备进行配置的下发和维护,这样就避免了各台服务器之间进行同步所耗费的资源,也使各台VPN分布式实施成为了可能。用户在访问 VPN设备时的认证操作由认证服务器区的一组认证服务器来进行,这一组认证服务器互相之间处于热备份状态,以增加认证功能的稳定性。同时由于将认证功能单 独出来,简化了VPN设备的认证操作,而且使用户认证信息更容易维护。通过这种分布式的集群架构,使得集群环境提供的服务更加稳定高效,而且使得集群的大 规模扩充成为可能,充分的解决了在大型网络中上述传统集群所面临的问题。