□ 文 程东亮 曹小刚

(作者单位:中国人民银行武汉分行;中国人民银行黄石市中心支行)

一、背景

近年来,随着移动互联网技术不断向纵深发展,以大数据、人工智能为代表的现代信息科技正在逐步从根本上改变现代金融的运营模式。作为大数据、人工智能底层的云计算技术也得到蓬勃发展。传统金融业IT架构中,网络仅具备高稳定与高性能,但灵活性和敏捷性不够,如根据业务需求部署上线周期较长,如果业务需求发生变动,重新修改相应网络架构及配置是一件非常繁琐的事情。同时,多数据中心及多活数据中心成为关键业务在现实中的新常态,数据中心间网络流量调度问题影响资源效率。此时,迫切需要一种网络技术,与应用实现一定程度互动,既能实现网络灵活弹性管理,也能实现网络流量精细化控制。软件定义网络(Software-Defined Network,SDN)成为一个重要解决手段。

图1 B4网络整体架构图

SDN于2006年诞生于美国GENI项目资助的斯坦福大学Clean Slate课题。SDN是一种新型的网络结构,它的设计理念是将网络的控制平面与数据转发平面进行分离,通过集中的控制器去实现可编程化控制底层硬件,实现对网络资源灵活的按需调配。SDN的核心是网络可编程。一个典型的SDN架构分为三层:最上层是应用层,通过控制器层编程接口控制底层网络设备,实现各种业务应用;中间为控制器层,集中管理整个网络设备,并提供网络资源;底层为设备层,负责与控制器层通信,实现相应功能。

本文重点分析和研究SDN行业应用较为成功的三个案例:谷歌、阿里巴巴和腾讯,提出金融行业应用策略,以此推动金融网络下一步发展。

二、SDN典型案例分析

(一)谷歌B4网络

谷歌SDN应用主要用于其世界各地的数据中心之间流量传输。其传输的数据可以分为三大类:(1)用户数据备份,包括视频、图片、语音和文字等;(2)远程跨数据中心计算资源和存储资源访问;(3)因分布式访问负载均衡而进行的大规模数据同步。这三类从前往后数据量依次变大,对延时的敏感度和优先级依次降低。

B4网络从低到高分为三个层次,分别是物理设备层(Switch Hardware)、局部网络控制层(Site Controllers)和全局控制层(Global)。第一层的物理交换机和第二层的Controller在每个数据中心出口的地方部署,而第三层的SDN网关和TE服务器是在一个全局统一的控制池。第一层是谷歌自行设计并请其他厂商代工的物理交换机,运行OpenFlow协议,把BGP/IS-IS协议报文送到Controller层进行处理。第二层在每个数据中心出口有一个Controller服务器集群,下层交换机可连接到多个Controller,由Paxos来选出leader(即决定工作状态的Controller)。第三层中全局的TE Server通过SDN Gateway从各个数据中心的控制器收集链路信息、路径信息。这些路径被以IP-In-IP 隧道的方式创建,通过Gateway到Onix Controller,最终下发到交换机中。当一个新的业务数据要开始传输时,应用程序会评估该应用所需要耗用的带宽,为它选择一条最优路径(如负载最轻的但非最短路径,不丢包但延时大),然后把这个应用对应的流,通过Controller安装到交换机中,并跟选择的路径绑定在一起。B4网络整体架构图如图1所示。

改造前,谷歌使用基于静态Hash的负载均衡方式,需使用过量链路,提供比实际需要更多的带宽,实际链路带宽利用率只有30%-40%,网络无法对上述三大类数据进行精细匹配分流,数据传输路径无法做到最优。改造后,通过使用程序来控制网络,实现流量大小及方向的控制。链路数量减少,成本明显降低,但B4网络链路带宽利用率提高了3倍以上,达97%,并且简化了网络的流量管理和控制。

(二)阿里云SDN

图2 阿里云网络架构图

图3 SDN数据中心整体架构视图

阿里云主要利用SDN技术构建一张Overlay虚拟网络,来实现海量的租户相互之间的隔离以及高性能、安全、互联、可靠性要求。网络分为上下两层,上层是虚拟网络,下层是物理网络。在虚拟网络的里面,租户可以看到路由器、交换机、ECS主机以及在主机里运行的各种服务(如SLS负载均衡服务、RDS数据库服务、OCS cache服务等)。在虚拟网络上,它既可以从ECS去访问对应的RDS,也可以从ECS通过交换机和路由器来访问公网。实际承载的是它之下的物理网络。通过Overlay技术,物理网络不再是一个复杂的节点,减少了网络出问题的概率,网络结构稳定。

阿里通过自研设备来实现互通需求。在网络的架构图中部署了三类自研设备:虚拟交换机、数据层自研网络设备和自研控制器。如图2所示,左侧是数据面,右侧是控制面。虚拟交换机的主要作用是实现ECS之间的私网互联(东西向流量)。自研网络设备主要用于连接两个不同的网络,完成南向流量的下发,流量主要来自用户的IDC和公网。所有的虚拟交换机和自研网络设备中的转发表都是由控制器下发,在控制器之上的是控制台,它的分流策略架构保证了网络能够满足互通的需求。

不同于传统的SDN,阿里云将SDN开放给云上的每个用户,让用户可以调用Open API。在基于云的网络上可以自由地连接,配置路由、划分子网、进行流量控制。同时在ECS上,用户可以按照自己的需求创建、释放虚拟机来承载其流量,以实现弹性伸缩。通过阿里云弹性伸缩的能力,微博能应对除夕当天或春晚直播期间的大规模流量。微博可以在10分钟内使它云上的上千台ECS规模翻倍,扩充能力超过了流量增长的数量级,成本比使用SDN技术前下降了40%左右。

(三)腾讯SDN

腾讯是目前流量最高的门户网站、国内用户数量最大的即时通信在线社区。腾讯SDN应用于数据中心内部和数据中心之间。在数据中心内,集中控制器进行控制,采用VXLAN+Service Chain,负责串接和虚拟网络与物理网络的解耦。流的转发利用控制器openflow协议进行控制。采用兼容现网的渐进式南向协议,构建基于腾讯运营场景的控制器和业务编排系统,借助SDN弹性的网络架构模型来应对数据中心云化带来的复杂多变的网络需求,如图3所示。

在数据中心之间,SDN控制器与路由器之间运行BGP-LS/SNMP协议,路由器将通过IGP搜集的网络拓扑和带宽情况通过BGP-LS传递给SDN控制器,使用集中式路径计算与调整,来实现流量的差异化实时调度。通过SDN思路和技术解决广域网络利用率、差异化QoS网络质量保障、业务冗余调度等问题。

(四)小结

三个典型案例对比分析如表1所示。

三、金融业SDN应用策略

金融行业网络面对金融科技发展浪潮,必须结合自身实际,积极应对业务快速发展和变化的需要。SDN为未来金融业网络发展插上了智能和开放的翅膀,成为重构金融业数据中心网络和数据中心互联网络的重要技术。

一是主动适应传统数据中心向云数据中心、虚拟化数据中心发展趋势,积极引入SDN技术和思想,采用VXLAN等大二层技术,结合SDN控制器,实现多租户的云化、自动化运维的数据中心虚拟网络,大幅提升网络运维效率,支持更灵活和更便捷的业务发展需求。

二是基于金融业普遍“两地三中心”甚至多中心的格局,积极在数据中心间互联的广域网部分引入SDN技术,实现更加高效、便捷的广域网流量调度和运维管理,进一步提升广域网带宽价值。

三是尽量采用公有、标准化的SDN技术和产品,实现最广泛软硬件兼容,提升投资价值。

四是利用SDN全局视角特点,进一步采集各种流量、告警、状态等数据,结合大数据分析、人工智能等技术,分析应用流量和安全流量,逐步实现真正智能的SDN网络。■