思华SDN技术在盛大游戏G云2.0中的应用

在当今云计算、人工智能、大数据平台等一系列颠覆性的技术创新背后,软件的价值被前所未有的推向高峰,“软件吞噬一切”在整个IT行业中盛行,几十年沉淀下来的网络也未能幸免。各大标准组织和学术派争先恐后的制定网络行业标准,试图打破传统网络的技术限制和商业壁垒,用标准软件来定义功能,用通用硬件来承载软件,最终为用户带来物美价廉、互通性高、可持续性升级换代的新一代网络解决方案。

SDN应运而生,提出了将网络控制平面和转发平面解耦,采用相对集中式的控制器替代原有分布式控制,通过开放的可编程接口实现“软件定义”。这种可编程的网络架构特性,为网络资源的设计、管理和使用提供了更多的可能性,从而更容易推动整个网络的变革与发展。

盛大游戏一直通过采用先进云计算技术助推游戏产业的发展,打造出国内一流的私有云平台G云1.0。随着游戏运营环境的急剧变化,为承载纷繁复杂的业务体系及线上游戏运营系统,盛大游戏希望能紧跟行业技术发展态势,进而重构整个游戏混合云网络架构。

在设计盛大游戏G云2.0网络过程中,要求充分考虑盛大游戏系统架构的通用性和易用性,同时需要针对游戏行业的特殊性,例如网络延时、弹性扩容、安全等进行定制化的架构设计,所以新的网络架构必须要着眼于以下几点:

  • 标准且开放化:无论是物理网络还是虚拟化网络,必须采用业界相对标准的组网模型和网络协议,兼顾开放性和互通性,实现网络的模块化设计,为今后平台的演进提供标准化模型;
  • 灵活扩展性:需要引入Overlay VxLAN技术替代原有的VLAN来更加灵活的支持云主机对于网络的要求,包括:热迁移、租户隔离、多租户等;
  • 高性能:对于虚拟化网络Overlay,必须满足游戏场景下对网络延时的苛刻要求。VPC网络需要满足租户各云主机(虚机、物理机)之间高吞吐、低延时的网络互通要求;
  • 高可靠性:无论是Underlay网络,还是SDN控制器,必须充分考虑单点故障和HA等机制,从而保障整个网络 7 x 24小时高可靠性要求;
  • 解耦合:需要充分考虑控制和转发平面的解耦合,以及虚拟化网络和物理设备的解耦,以便实现云主机的灵活接入,热迁移等功能;
  • 自动化:引入SDN控制器,实现对租户网络VPC的集中管理,支持物理网络和虚拟化网络的快速部署和灵活扩展。

盛大游戏引入思华ExpressNET

SDN产品打造新一代混合云网络架构

经过双方充分的需求分析和论证工作,引入以盛科SDN白牌交换机为网络承载(同时支持华为等数据中心交换机),思华科技ExpressNET为控制平面的方案。该方案没有僵化地采用纯OpenFlow的方式,而采用了支持VxLAN的数据中心交换机和开放API相结合方式,由网络设备提供出足够灵活的API供思华的SDN控制器(ExpressNET)调用,思华ExpressNET整体架构如下图所示:

<图示1:思华ExpressNET整体架构>

盛大游戏G云2.0 整体网络部署架构如下图所示:

<图示2:G云2.0 网络部署架构>

思华ExpressNET网络平台为云主机、裸机提供了必要的实体和虚拟网络环境,包括但不限于:VPC内部二三层东西向访问、南北向公网访问、虚机和物理机访问、跨云跨IDC访问等,同时以VPC为单元对租户进行安全隔离、公网QoS限制。整个网络架构主要包含了下列组件及其功能特点:

1. 可编程标准化网络硬件设备(例如盛科E系列,华为CloudEngine系列等)组成Clos IP Fabric:其承担了整个底层网络(Underlay)功能,为上层的虚拟化网络提供了坚实的网络基础,同时作为VxLAN的端点,提供高性能的VTEP隧道终结。该架构具有运维简单、等价多路径、水平扩容和可编程化特点,已被互联网公司,数据中心和传统企业IT所广泛接受;

2. 位于各计算节点和Neutron节点的思华ExpressNET分布式控制器:作为思华ExpressNET尤为重要的虚拟化网络的控制平面,提供二层、三层网络、DHCP、NAT、QoS、ARP Proxy等功能,各功能采用App Plugin的方式实现,易于扩展。采用分布式控制器的好处在于消除了单点故障,性能有保障,同时兼顾了SDN的设计理念,将控制和转发平面进行了解耦;

3. 位于Neutron节点的思华ExpressNET交换机控制器:该控制器负责通过厂商自定义RPC或者标准的NetConf协议对Underlay网络设备进行管控,从而打通虚拟和物理网络的控制平面,真正做到虚实网络的结合与联动

4. 位于各计算节点的Open vSwitch(以下简称为OVS):以OpenFlow流表的形式提供了高效的网络转发平面,并支持Intel DPDK扩展,以满足今后对性能的进一步要求;

5. 采用VxLAN隧道封装技术提供租户VPC虚拟化网络:不仅实现了虚机到虚机的二/三层网络连通,同时实现了VPC内虚机到裸机的二/三层直通,以及G云2.0到用户线下IDC的直通,各VPC安全隔离;

6. 考虑到Host VxLAN性能的限制,采用VxLAN Offloading技术将VxLAN加/解封装上移到物理交换机ToR上,不仅提高了网络吞吐、降低了网络延时,同时将宝贵的主机计算资源预留给云主机。

ExpressNET , 重新定义网络

网络设计之初,充分分析了OpenStack 原生Neutron网络架构上的一些缺陷和不足,在兼容Neutron ML2 Framework的基础上,参考了市面上已有的开源项目,引入了思华ExpressNET全面替换原生Neutron网络方案,从而弥补了原生方案的不足,主要体现在以下几个方面:

1、ExpressNET以OpenFlow流表实现分布式DHCP取代集中式的DHCP:OpenStack原生模型设计会在Neutron节点上造成大量的资源占用和单点故障风险,例如有100个租户,每个租户有100个子网,那么在Neutron节点上就要维持100 x 100 = 10,000个DHCP进程,消耗大量CPU资源,并且增加了维护和排障难度。

<图示3:OpenStack原生集中式的DHCP模型>

思华ExpressNET解决方案利用OVS OpenFlow流表将DHCP功能分散到各个计算节点实现,不仅有效的避免单点故障,同时减少了对计算资源的消耗,简化了系统部署,降低了运维排障难度。

<图示4:思华Express NET分布式DHCP模型>

2、ExpressNET以OpenFlow流表方式实现的分布式vRouter和DNAT替代原生Neutron的vRouter模型。OpenStack原生的Neutron有两种vRouter模型:一种是早期版本的集中式vRouter实现,该模型下所有的三层流量都会经过位于Neutron节点的虚拟路由器(通过网络Namespace实现),不仅增加了网络单点故障、限制了网络吞吐,同时加大了网络延时,如下图所示:

<图示5:OpenStack原生集中式的vRouter>

随后OpenStack提出了分布式vRouter即DVR的概念,在各计算节点上为租户创建多个Namespace并安装相应路由作为租户本地化的vRouter,虽然该方案在一定程度上解决了集中式模型的一些问题,但由于其依旧采用Namespace的实现方式,不仅耗费计算节点大量的CPU资源,公网IP地址(用于Floating IP Namespace),同时并未降低网络延时和排障难度,如下图所示:

<图示6:OpenStack原生分布式的vRouter>

而在盛大游戏的案例中,思华ExpressNET拥有L2/L3和DNAT App Plugin,使得位于各计算节点的本地控制器提供路由和地址转换等控制平面功能,并结合OVS OpenFlow流表实现转发平面功能,不仅有效的解决了集中式路由带来的诸多问题,同时降低了复杂度、提高了网络弹性,释放了本地计算资源,减少了公网IP地址浪费以及降低了网络延时,如下图所示:

<图示7:思华ExpressNET 以OVS流表方式实现分布式vRouter>

3、ExpressNET支持多公网网段(Multiple Elastic IP Pool):原生的OpenStack无法很好的支持多外网功能,导致平台无法使用多个公网IP网段,从而增加了网络实际部署难度。如下图所示,当申请了多个公网网段后,由于OpenStack的限制,无法让虚机VM1申请缺省公网网段Pool 1以外的地址段,如EIP Pool 2 & Pool 3(每个虚机一个公网EIP):

<图示8:OpenStack原生的单一外网限制>

思华ExpressNET取消该限制并增加相应的保护机制,使得平台可以将任何可用的公网地址段与分布式的路由器相关联,极大的降低了对IDC网络的需求。如下图所示,在平台管理员创建完额外的外网及网段后(External Network 2 & 3),租户可以在控制台中从EIP Pool 1, 2 &3中随机挑出一个公网IP,绑定到其指定的虚机或者物理机上

<图示9:思华ExpressNET取消限制,支持多公网网段>

4、ExpressNET扩展OpenStack 网络功能,支持VPC与线下IDC互联互通:盛大游戏案例中必须要考虑用户云上资源和原有IDC的互联互通,典型的应用场景是各工作室或者技术部门既有在原平台中的Legacy系统,又有新业务在G云2.0上开展,同时新旧系统需要二层或者三层网络直通而不经过NAT。如下图所示,思华ExpressNET方案利用分布式虚拟路由器和底层Underlay网络设备,实现了云上VPC与云下IDC不经过NAT转换的网络直通,云上的虚机或者物理机可以直接访问盛大游戏原有Legacy系统的IP,不仅满足了用户原有的使用习惯,降低了上云的复杂度,同时保证了网络的延续性和透明性。

<图示10:思华ExpressNET实现VPC与线下IDC互联互通>

5、ExpressNET支持跨IDC的VPC Peering:虽然该需求目前在盛大云平台中并不是非常强烈,但是伴随着多地IDC服务的提供,部分平台使用者希望将分散在各地IDC的VPC进行互通,这也是很多公有云例如 AWS、阿里云所推出的VPC Peering网络服务。相应的解决方案可以按照以前AWS或者阿里云以用户VPC为单位,部署相应的软件VPN网关,实现VPC的互联互通,但是缺点是用户参与度过高,部署方案复杂,性能受限。参考了最新的阿里云和AWS的VPC Peering高速互联方案,依托盛大游戏原有的内网资源,思华ExpressNET通过在虚拟路由器中引入成熟的静/动态路由协议,结合外部网络设备,打造一张高性能、高扩展性的DCI(数据中心互连)网络。数据中心之间的网络设备借助成熟的BGP-EVPN技术实现控制平面,依旧采用VxLAN作为转发平面保证整个设计的一致性。

<图示11:思华ExpressNET实现跨IDC的VPC Peering>

通过引入思华科技ExpressNET SDN解决方案后,盛大游戏G云2.0网络平台SDN收获的不仅仅是数据中心、基础架构,而是包括盛大游戏各个场景的服务和功能,都能在通用的策略框架下实现高效、可靠、安全地运营,实现无缝的移动性、无缝的工作负载迁移。

盛大游戏技保平台中心总监应华说,“在建设G云2.0之初,我们也分析参考了市面上多家SDN的技术,包括原生Neutron,多少都存在一些缺陷和不足,并考虑到被单一厂家从软件到硬件全部绑定的风险。最终我们决定选择思华ExpressNET作为G云2.0的网络架构,主要还是看重ExpressNET采用了SDN白牌交换机和开放API相结合的方式,各个IDC可以选择不同厂家的网络设备,有效降低了对单一硬件厂商的依赖度。再加上思华多年的技术积累,能够为盛大游戏提供定制化的SDN开发服务,是我们值得信赖的长期合作伙伴。”

作者简介

张琳,思华科技美国公司云计算和网络架构师,拥有近18年运营商和大型企业IT基础架构、云计算和网络方面的咨询、设计和实施相关经验。加入思华之前,在美国Juniper Networks从事专业技术服务工作5年,为美国Tier 1 运营商,包括Verizon、AT&T、Google等提供专业的网络技术服务。曾就职于IBM Global Service,Dimension Data公司从事大型IT咨询和架构设计工作。拥有多项行业技术认证,包括Cisco CCIE #11122,Juniper JNCIE #300,VMWare VCP,IBM Accredited IT Architect等。

如果您对本文感兴趣,可联系yang.zhang@sihuatech.com。

关注思华科技

领先的云计算产品和大视频解决方案专家

上海思华科技股份有限公司于2000年在上海成立,是一家长期专注于云计算产品和大视频解决方案的高新技术企业,提供设计、开发、实施和技术服务的一站式服务。总部位于上海,并在北京、美国硅谷、杭州、成都、西安等地设有营销和技术服务中心。

原文发布于微信公众号 - SDNLAB(SDNLAB)

原文发表时间:2018-03-21

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏云计算D1net

混合云备份机制实现成本节约的七种方式

自然灾害对于数据内容的影响绝不仅仅像好莱坞大片中所描述或者说美化出来的那样。事实上,网络攻击、人为失误、暴雪、飓风乃至其它一些常见的突发性事件往往会令大家的业务...

3705
来自专栏java一日一条

Java:过去、未来的互联网编程之王

Java对你而言是什么?一门你大学里学过的语言?一个IT行业的通用语言?你相信Java已经为下一次互联网爆炸做好了准备么?Java 一方面为嵌入式计算做了增强,...

852
来自专栏about云

老外对中国式App设计趋势的分析:中国移动应用设计趋势解读

导读: 作为一个开发者,如果你还不关注移动云开发,那么你很快就被淘汰了。下面来看看老外对中国移动的分析 ? 今年夏天,我收拾好所有行李,从旧金山搬到了广州工...

45912
来自专栏闰土大叔

AngularJS、React 是真的被淘汰了吗?

是这样,最近有个朋友跟我聊起,说前几天去面试北京的一家公司,和某度有点关系。面试官看我简历上写着 AngularJS,告诉我以后别用这个了,还有 React,并...

9723
来自专栏Java学习网

5种类型的程序员

5种类型的程序员 在我的代码旅程和编程冒险中,我遇到过很多奇怪的敌人,以及陌生的盟友。我发现至少有五种不同类型的代码战士,有的人能成为并肩合作的战友,而有些人似...

2808
来自专栏养码场

一周播报|忙成狗的DBA,为啥老被误会混日子?

DBA的工作到底是一天天喝茶看报混日子,还是忙成狗?很多人也许不知道DBA到底在忙什么,发展路径又是怎样的。养码场的群友们对此的讨论,也许对你未来跳新坑的方向有...

612
来自专栏极乐技术社区

小程序 · 一周报

“同声传译”插件是由微信智聆语音团队、微信翻译团队与公众平台联合推出的同传开放接口,可通过语音转文字、文本翻译、语音合成接口,为开发者赋能。

900
来自专栏FreeBuf

认知指纹:颠覆性的身份认证技术

导读 如果一个网站只需要输入用户名,然后点击“登录”按钮,就可以成功登录,并且其他人无法进入你的账户,听起来是不是很不可思议? —— 事实上,你输入用户名的时候...

20610
来自专栏花叔的专栏

头号小游戏玩家 小游戏科普指南

参与小游戏首发计划,也正试着做一些别的小游戏,不总结点什么好像不大好,但一总结又发现好多内容,只好通过“2W1H”的方式来抛砖引玉一下(以下为科普内容): ? ...

3107
来自专栏云计算D1net

高性能的云存储不再是白日梦

“任何时候,只要当您将您的基础设施迁移到数据中心以外的地方时,都会涉及到延迟,您将遭遇到以光的速度运行的问题。”位于马萨诸塞州米尔福德的企业策略集团公司(Ent...

37113

扫码关注云+社区