APP下载

基于SDN技术的双活服务链在智慧校园网中的应用

2019-01-18周翔

中国教育网络 2018年12期
关键词:校园网交换机路由

文/周翔

随着网络的快速发展,传统互联网出现了如传统网络配置复杂度高等诸多问题[1]。SDN诞生于美国GENI项目资助的斯坦福大学Clean Slate课题,以斯坦福大学教授Nick McKeown为首的研究团队提出了Openflow的概念用于校园网络的试验创新,后续基于Openflow给网络带来可编程的特性,SDN的概念应运而生[1]。SDN核心思想有三点:(1)将网络控制面与数据面分离开;(2)使用逻辑上的集中控制器定义基于网络流的安全控制策略;(3)提供开放的API接口。基于Openflow的SDN开源控制器有很多,例如OpenDaylight、ONOS、Floodlight。经过几年的发展,商用SDN控制器带来了完整的SDN解决方案,例如基于软件的NSX、基于硬件的ACI 和 Contrail将商业软件运行在白盒交换机中。

传统网络

1.跨校区间通讯

跨校区二层通讯问题:当前高校业务系统大多运行在虚拟化环境中,为了保证虚拟机跨校区迁移和虚拟机之间二层通讯,如多校区的业务承载能力,建立跨校区的大二层网络是必要条件。双活数据中心网络的概念已经提出很多年,大多数厂商已经提供了成熟的大二层解决方案,例如华三的EVI、思科的OTV和华为的EVN[2]。他们原理基本相同,都是通过采用“MAC in IP”隧道封装的方式,前两个之间的路由采用IS-IS(Intermediate System-to-Intermediate System,中间系统到中间系统),华为采用扩展BGP(Border Gateway Protocol,边界网关协议)方式实现。

“MAC in IP”这种方式确实解决了跨校区的大二层的问题,但仍然面临配置的复杂度大大增加的问题,每个参与的边界设备都要配置,且配置需要根据后期的运行而维护,例如VLAN信息,而且必须要求VLAN信息对应。这样大大降低VLAN的利用率,增大了后期网络运维的复杂度。

跨校区三层通讯问题:为了保证跨校区三层通讯,必须在所有网关上配置VRRP(Virtual Router Redundancy Protocol,虚拟路由冗余协议)实现多活网关。VRRP在同校区实现时较为简单,但在实现跨校区双活时将面临延迟要求高、安全访问控制策略一致性和多校区多出口路由等复杂问题。

从上述问题点就可以看出,只是实现跨校区的IP访问就需要多个关键技术和复杂的配置。如果出现通讯异常的情形,则需要逐一检查所有关键点,这给后期网络的运维增加很多难度。

2.外部访问

智慧校园应用对外提供业务服务时需要通过网络上各种设备,例如网络防火墙、Web应用防火墙和应用交付等。这些设备部署方式大致有两种:

(1)串联方式,将网络防火墙、Web应用防火墙和应用交付以串联方式接入网络中,所有从外部访问内部的数据都必须依次通过以上设备。串联方式主要问题在于数据包必须穿过这个设备,且后期无法调整,例如有新的应用只需要经过应用交付无需经过网络防火墙,这时此方式无法满足需求。

(2)旁路方式,将网络防火墙、Web应用防火墙和应用交付以旁路方式接入网络中,使用例如PBR(Policy Based Routing,策略路由)方式,将需要经过某设备的IP路由单独引流至目标设备。相比串联方式这确实方便了后期的调整,但是策略路由是基于IP地址的,无法做网络应用层端口级的策略。且PBR引流回至原路由会加重网络资源消耗。

SDN技术

SDN通过将网络设备控制面与数据面分离开来,从而实现了网络流量的灵活控制,使网络变得更加智能。双活网络设计与以往传统的主备设计方案相比优势在于:(1)两个或者多个园区网络同时承载应用业务,有别于主备方式,当主节点发生故障,切换至从节点需要较长切换时间,双活设计在一个校区发生故障时,业务可以快速自动转移至其他校区承载业务;(2)由于是多个园区同时承载业务,相比传统备数据中心,提高了业务的承载能力并降低整体运行成本;(3)传统的主备网络需要定期做主备切换和数据回写演练,用于维护和验证主备切换的有效性,业务中断时间较长且需要定期演练,双活网络是同时承载无需进行耗时的主备切换和数据回写。

1.基于SDN技术构建双活网络

SDN构架在网络区域上把网络分成Underlay(基础层)网络和Overlay(叠加层)网络。Underlay网络是最基础的网络,实现两点之间的点与点的通讯。由于大多数SDN网络是运行在虚拟化环境中,此时Underlay网络很可能是虚拟交换机与虚拟机之间的网络。在只能使用物理机的个别应用场景中才会将接入层交换机与物理机之间作为Underlay网络。Overlay网络是基础网络架构上叠加的虚拟化技术模式,作为Underlay之上的网络。相对于虚拟化环境就是物理宿主机和物理网络设备之间的网络。

SDN从拓扑结构上又分为Spine(脊)网络设备和Leaf(叶)网络设备。Leaf设备和终端主机进行通讯,可以是虚拟的软件交换机和虚拟机通讯,也可以是硬件交换机和物理终端通讯;还有一类Leaf设备被称为Border leaf(边界叶),Border leaf通常和边界路由器或者外部防火墙进行三层互联,用于SDN网络内主机与外部网络进行通讯。Spine网络设备属于Overlay,负责Underlay网络的转发,当前SDN的趋势是Spine和Leaf之间采用VxLAN封装Underlay网络的数据,在Overlay上通过路由协议进行转发[3]。通过延展Overlay网络可以建立大型SDN网络,包括跨地域的网络。

2.基于SDN技术的服务链

网络中的主机对外提供服务需要经过各种各样的业务节点,当网络流量按照业务逻辑所要求的既定顺序,经过这些业务节点(节点一般为防火墙、负载均衡等),这就是服务链(Service Chain)[4]。传统网络也有服务链概念,但是应用方式和网络硬件拓扑相关联,所以无法实现服务链后期调整或按照业务需求自由组合业务节点。SDN的转发和控制的分离、分布式的结构非常适合服务链的编排。在服务链里每个业务节点都指定数据包的进出端口,然后按照服务链上的业务节点顺序进入下一个业务节点。这一切都依赖于SDN的控制层面作转发处理。利用网络端口及协议的区分可以实现同一个目标主机经过多个不同的服务链。

以Web服务为例编排服务链。外部网络访问Web应用服务,首先经过防火墙进行安全防护,接下来由于Web服务大多采用分布式集群模式,这时还需要HTTP的负载均衡。以尽可能使用原有传统设备为原则,防火墙和负载均衡均使用硬件设备。首先防火墙使用三层路由模式接入SDN网络,SDN通过策略路由方式将报文转发至防火墙,报文经过防火墙后再回到SDN中,并最终达到HTTP负载均衡的服务IP,HTTP负载均衡通过反向代理方式最终到达Web应用服务器。

双活服务链在智慧校园中的应用

随着SDN技术的发展,各种SDN产品走向成熟。SDN已经由多年前的概念、实验性的模型转变为可落地的商业产品。谷歌、亚马逊和阿里巴巴等互联网巨头率先使用SDN应用于自己的业务。在高校领域,随着智慧校园和校园微服务的推出,SDN对于网络的运营效率和灵活性都带来了很大帮助。当前已有高校建立双活校园网络承载数字化校园业务,本文结合SDN的服务链技术融入校园网双活设计中,并且在服务链中加入防火墙、负载均衡设备,最终实现智慧校园的横向可扩展能力、高可用性、安全性,并提高双活网络运维效率,降低复杂度。

本文利用ACI(Application Centric Infrastructure,以应用为中心的基础构架)商业SDN控制器为例,在尽可能不改变校园网中原有设施的前提下,实现了SDN的双活网络改造。SDN的改造工作主要是在两个校区之间建立以Spine和Leaf交换机为结构的Overlay网络,将原有的汇聚交换机、刀片交换机、防火墙和负载均衡等设备接入至Leaf交换机。并在原有的Vmware虚拟化平台中安装虚拟Leaf交换机,将VxLAN的Overlay网络深入至虚拟交换机。网络中的主机以应用进行区分并划分为不同的EPG(End-Point Group,终点组),EPG之间的访问依靠Contract(合约)中的策略进行通讯。

在建设SDN双活网络中主要解决以下关键技术:

1. 跨校区的Overlay网络的建设

本文采用ACI控制器解决方案。每个校区都有自己Spine和Leaf交换机,各自组成一个完整的Overlay网络用于转发VxLAN报文,Spine和Leaf之间采用IS-IS路由协议。利用原有三层网络设备和原有校园网跨校区互联链路打通各校区之间的Overlay网络。为了实现原有校园网络和SDN的Overlay网络共存,跨校区互联采用OSPF(Open Shortest Path First,开放式最短路径优先)路由并使用VRF(Virtual Routing Forwarding, 虚拟路由转发)和现有校园网隔离,以实现路由表在两个校区间的Overlay网络中分发。跨校区的Overlay网络拓扑如图1所示。

图1 跨校区的Overlay网络拓扑

2. 双校区多出口

ACI中网络边界路由也同样接入Border leaf交换机,传统网络中的北向出口流量也在SDN网络中转化为东西向流量。在SDN网络中将多个出口配置为一个资源,只需EPG和出口建立Contract即可实现互联,后续增加或调整出口只需维护一个配置文件即可,大大简化了运维复杂度。逻辑拓扑如图2所示。

图2 双校区多出口逻辑拓扑

3. 建立基于应用的服务链

为校园网Web服务建立经过防火墙和负载均衡的服务链。通常对于一个智慧校园应用需要多个服务链:(1)Web的HTTP服务需要经过防火墙和负载均衡;(2)服务器需要通过SSH被远程管理时需要通过防火墙。以ACI控制为例建立服务链:首先建立应用的EPG与外部出口的Contract,然后利用Contract中基于网络端口的过滤器建立两条不同的服务链。一条服务链是先经过PBR引流至防火墙,然后到达负载均衡服务IP端口,服务IP端口通过HTTP代理模式将HTTP 请求发送至EPG内的Web服务器;另一条是通过PBR引流至防火墙后直接到达EPG内的Web服务器。Web和SSH的数据包在SDN网络内不会被转发,减轻了SDN内防火墙和负载均衡的负载,并且提高了应用服务器的安全性。服务链如图3所示。

图3 基于应用的服务链

4. 实现双活服务链

服务链中的防火墙和负载均衡分别放置于两个校区,ACI控制器方案采用负载均衡方式将流量分发至校区内各防火墙,SDN采用策略路由方式将所需流量引流至防火墙,其中引流策略里加入Pod校区的参数,实现防火墙的就近转发。通过这种就近转发的原则在尽可能提高防火墙可用性的前提下降低了两个校区间带宽的消耗。

随着云计算、移动互联网、物联网等技术发展,教育信息化呈现出多样化、灵活化等特征。完全固化的网络已经无法应对当前的教育信息化的需求,SDN网络通过自身强大的可编程能力,可根据需求不停的演化。随着X86技术的发展,X86的性能和总线带宽越来越高,现在,越来越多的防火墙和负载均衡等都可以运行在虚拟机上,以纯软件的方式在网络中提供服务,也就是NFV(Network Function Virtualization,网络功能虚拟化)[5]。校园网也需要紧跟技术潮流,实现教育信息化的大发展。

猜你喜欢

校园网交换机路由
数字化校园网建设及运行的几点思考
铁路数据网路由汇聚引发的路由迭代问题研究
多点双向路由重发布潜在问题研究
一种基于虚拟分扇的簇间多跳路由算法
更换汇聚交换机遇到的问题
试论最大匹配算法在校园网信息提取中的应用
基于地铁交换机电源设计思考
路由重分发时需要考虑的问题
基于VRRP和MSTP协议实现校园网高可靠性
NAT技术在校园网中的应用