本文首先分析了大规模SDN数据中心组网中遇到的问题。一方面,Underlay底层网络的规模受限于设备的实际转发能力和端口密度,单一的spine-leafFabric架构无法满足大规模组网的需求;另一方面,在SDN技术实施方案方面,Openstack和SDN控制器分别在管理控制能力上存在局限性。本文从多POD大型数据中心的底层组网和路由规划,跨POD互联互通SDN技术的实现方案出发,深入技术细节,结合网络业务流量模型的实现,阐述了大型SDN数据中心群。网络架构。一、大规模SDN数据中心组网需求解决问题分析大规模SDN数据中心组网需要实现数万台服务器作为资源池承载和编排调度。从底层组网和SDN方案的实现来看,主要需要解决三个问题。(1)在数据中心Underlay组网层面。虽然随着芯片的不断升级,数据中心交换机的处理和转发能力有了很大的提升,但以目前数据中心交换机的端口能力来看,每个机房的实际机柜数量和跨机房的布线难度是很大的。经过考虑的。,单一的spine-leaf两层架构网络无法满足数万台服务器的负载需求。例如数据中心网络,选用业界主流厂商成熟的16槽核心交换机设备Spine,100G单板端口密度为20/板,40G单板端口密度为30/板;选择Configure4810Gand640Gaccessswitches作为Leaf。Leaftospine全互联,spine核心数满配6台,每台核心交换机配置2块100G单板,用于连接外部防火墙、专网或专线路由设备等。在满足1:1的带宽收敛比的情况下,单个spine-leaf架构最多可以支持5760台服务器,无法满足数万台服务器的负载需求。(2)SDN控制器的管理规模和范围。SDNcontroller管理VSW或者硬件switch会开启TCP长连接,会占用CPU内存资源。被管设备过多会极大地消耗SDN控制器的资源,从而降低控制器的性能。这是SDN控制器。主要的限制因素是管理规模。SDN控制器的管理范围主要受控于控制器与被管设备之间的网络延迟。因此,建议在本地部署SDN控制器,不要远距离远程管理。目前主流设备厂商在3个SDN控制器集群的情况下可以管理2000个VSW或者1000个硬件SDN交换机。(3)云操作系统Openstack的管理能力。Openstack是一种集中式消息处理机制。所有交互操作都将在指令级别进行拆分。但指令的并发处理能力较低,主要在单进程队列中执行。例如资源池同时运行100个虚拟机的场景,在交互操作进行指令拆分处理时,由于指令并发处理能力差,需要排队等待大量拆解指令执行。此时Openstack系统的交互操作响应效率和时效性都会变差,影响用户的实际感知。Cell技术可以大大提高Openstack平台的消息处理效率。Nova可以扩展为多个Nova处理节点,每个节点都有独立的数据库,采用数据库同步的方式实现多个Nova节点的协同分布式工作。但是,Openstack系统的性能与企业的实际研发能力密切相关。目前主流厂商基于开源Openstack开发的产品可以管理500台虚拟化主机(5000台VM)或3000台裸机服务器。2.大型SDN数据中心的多POD组网架构由于单spine-leaf结构Underaly网络接入承载能力、Openstack平台的管理能力以及SDN控制范围和规模的限制控制器、大型SDN在数据中心组网时,需要分解成多个独立的spine-leaf模块进行部署。各模块借助SDN-DCI技术通过统一的应用层协同,实现整个数据中心资源池的统一管理和编排。每个单独的spine-leaf模块都是一个单独的Fabric,也称为POD(交付点)。POD内网采用标准的SDN数据中心架构,每个POD都有自己的Openstack云操作系统和SDN控制器。根据主流厂商Openstack云操作系统产品的性能指标,POD中裸机服务器场景支持服务器数量限制为3000台,虚拟化服务器场景支持服务器主机数量为500台。同时,根据主流厂商SDN控制器的性能,POD中的硬件交换机数量限制在1000个以内,VSW数量不超过2000个。Multi-POD大规模SDN数据中心组网,POD内底层组网为标准spine-leaf架构。POD中的SDN-GW可以与主干位于同一位置,也可以与主干并排部署。防火墙和负载均衡设备可以与SDN-GW一起部署。目前SDN-GW主要采用两个栈部署,方便SDN控制器的统一管理。因此,如果POD规模较大,需要两个以上的spine,不建议SDN-GW和spine一起架设,应该单独安装SDN-GW。挂起部署。为实现POD间流量互通,设置东西向流量汇聚核心交换机Core-Spine承载东西向流量跨POD;为实现POD内外网互访,设置南北流量汇聚核心交换机Out-Spine,用于承载南北流量。东西向流量汇聚核心交换机和南北向流量汇聚核心交换机数量可根据实际POD规模、POD数量、网络收敛比要求灵活计算。POD内骨干与POD之间的汇聚核心交换机一般跨机房互联。为提高链路利用率,互连应采用100G光模块。如果规划POD间东西向流量较大,建议POD内的Spine直连东西向汇聚交换机。此时的流量模型是POD之间的互通流量从POD中的Spine到SDN-GW,SDN-GW解封装原来的VXLAN封装,然后将互通流量导入到不同的互联VNI中发回到Spine,然后Spine发送它。到东西汇聚交换机。在这种流量模型下,同一个业务流量会两次经过POD中的Spine。因此,如果流量规划完全在SDN-GW交换机设备的承受范围内,建议将SDN-GW接入东西汇聚交换机,这样可以减少POD中Spine的数量。来回渗透流量。图1大型SDN数据中心多POD网络架构SDN数据中心转发控制技术在POD中的实施方案可以是Openflow+Netconf或者EVPN+Netconf。在虚拟机场景下,推荐使用条目更大更灵活的VSW作为VTEP,从而采用Openflow+Netconf的方案。在裸机服务器场景下,采用硬件SDN接入交换机作为VTEP,可根据具体网络设备能力灵活选择EVPN+Netconf方案或Openflow+Netconf方案。在Openflow+Netconf和EVPN+Netconf混合部署的场景下,需要在SDN控制器上对两种控制技术方案进行翻译连接。SDN控制器与SDN-GW建立EVPN邻居,将EVPN控制面的信息翻译成Openflow发送给VSW,将VSW的相关Openflow信息翻译成EVPN控制信息发送给硬件SDN交换机。这样就控制了VSW和硬件SDN交换机之间建立VXLAN隧道和转发数据。POD之间的互联方案将完全借鉴SDN-DCI的相关技术,采用EVPN+VXLAN的技术。POD中的SDN-GW将同时作为DCI-GW,与不同POD的SDN-GW建立EVPN邻居,在统一协调层的控制下实现POD间的流量互通。共享分布式块存储、分布式文件存储、分布式对象存储可以单独规划,形成一个存储POD。SDN-GW解封装VXLAN封装后,访问存储POD的流量通过Underaly网络路由转发到存储POD。在POD中配置单独的VRF,以隔离存储访问流量和其他业务流量。如果存储POD需要访问外网,则计划将存储汇聚交换机接入南北汇聚交换机。FCSAN存储建议直接部署在每个POD中。图2.存储POD网络规划图3.大型SDN数据中心底层网络及路由规划POD按500计算,10个POD网络将有5000多个网络设备。因此,如何规划Underlay层的路由配置对于大规模数据中心网络的高性能转发非常重要。常见数据中心场景的IGP路由主要基于OSPF路由。OSPF路由技术成熟,网络建设和运维人员有丰富的使用经验。大型数据中心组网采用OSPF作为IGP路由协议时,每个POD要划分不同的区域,东西向汇聚交换机作为骨干区域Area0,减少LSA的传播区域和数量.每个POD中的SDN-GW作为OSPF区域边界网络设备,不同的接口划分不同的区域。连接东西向汇聚交换机的接口划分为Area0,下行POD中的spine接口划分为每个POD各自的区域。南北汇聚交换机一般工作在二层透传模式,三层终结于外网防火墙,因此南北汇聚交换机不需要运行路由协议。图3大规模数据中心组网的OSPF路由规划与OSPF相比,ISIS支持ISPF(IncrementalSPF),对大规模网络具有更好的支持和收敛性能。ISIS支持灵活的TLV编码,协议具有更好的可扩展性。ISIS以其收敛速度快、结构清晰、适用于大规模网络等特点,作为IGP路由协议广泛应用于城域网场景或IP专网场景。随着数据中心规模越来越大,设备越来越多,ISIS在数据中心场景中的应用也越来越多。ISIS的区域边界是链路,每个网络设备只能属于一个ISIS区域。为了减少传输面积和LSP数量,在大规模数据中心场景下,ISIS分层规划。骨干区域包括POD之间的东西汇聚交换机和每个POD中的SDN-GW。POD之间的东西向汇聚切换运行ISISlevel2,POD内的SDN-GW运行ISISlevel-1-2。每个POD中的主干和叶节点运行ISISlevel1。图4大规模数据中心组网的ISIS路由规划RFC7938提出了将EBGP路由协议应用于大规模数据中心的建议,目前已有少数将EBGP作为底层路由协议应用于数据中心的实例。与OSPF、ISIS等链路状态协议不同,BGP是一种距离矢量路由协议,因此BGP具有更好的可扩展性。在中小型数据中心的组网中,使用BGP与使用ISIS、OSPF等链路状态协议在性能上没有太大区别,但在超大型数据中心的组网中,应用BGP的性能会更好。OSPF、ISIS等链路状态协议需要在网络中传输大量的LSA。路由信息生成过程是先完成LSA信息的同步,然后计算生成路由信息。当网络中的某些节点发生变化或网络发生割接升级时,会产生大量的LSA。而距离矢量路由协议BGP则不存在这样的问题。BGP节点直接发布路由,网络扩容割接升级时网络稳定性更好。目前,OSPF和ISIS路由协议的LSA优化在IETF中都有相应的草案。目的是减少LSA传播的数量和范围,使得OSPF和ISIS在超大规模数据中心网络中的性能更好。然而,目前还没有非常有效和实际应用的解决方案。虽然目前EBGP在数据中心的应用还不是很广泛,但是距离矢量路由协议BGP很可能在未来超大规模数据中心底层路由协议的选择上得到更广泛的应用。与OSPF和ISIS相比,EBGP路由的规划和配置更为复杂。POD中的多台Spine设备规划为同一个AS号,多台东西向汇聚交换机规划为同一个AS号,每组StackedLeafs规划为单独的AS号。虽然每个POD中的叶子只与POD中的spine建立EBGP邻居,叶子之间不建立EBGP邻居,但是spine上仍然需要配置大量的叶子邻居信息。复杂的规划和配置是限制EBGP在数据中心应用的因素之一。在使用EBGP作为底层路由协议的大型数据中心,如果在POD中采用EVPN+Netconf作为转发控制方案,POD中的EVPN必须基于IBGP建立,因此需要配置一个网络设备同时使用EBGP+IBGP。AS号的BGP进程。目前主流厂商的网络设备已经支持不同AS号的BGP双进程。常规BGP报文的AS号长度为16位,取值范围为0~65535,其中私有AS号的范围为64512~65534。因此,网络可使用的私有AS号的个数数据中心规划为1023,按照每个堆叠Leaf一个AS号的原则,显然不能满足多POD大规模数据中心组网的AS号分配需求。RFC6793提出将BGP的AS号扩展到32位。扩容后AS编号数量可满足大规模数据中心组网需求。目前业界主流设备都具备支持32位AS号长度的能力。图5.大规模数据中心组网的EBGP路由规划。SDN数据中心的管理网络除了满足传统的设备带外管理功能外,还需要部署Openstack云管理平台和SDN控制器。因此,与传统的数据中心管理网络相比,更容易重要。随着数据中心规模的扩大,管理网络的规模也必须同步扩大。因此,大型数据中心的管理网络也需要部署在POD中。POD内管理网络核心交换机配置各网段网关,管理网络接入交换机工作在二层VLAN透传模式。管理网络POD之间设置管理汇聚交换机,POD中管理网络的核心与POD之间的汇聚交换机三层互联,可以运行ISIS或OSPF路由协议。为了减少POD中管理网络的广播域,使管理网络更加稳定,还可以在管理接入交换机上配置管理网段的网关,规划从三层到边缘的管理网络。更细化的管理地址规划,过于细分的管理地址规划会在一定程度上浪费地址资源,因此三层到边缘的管理网络规划并不常见。4.大型SDN数据中心POD间互联大型SDN数据中心需要对不同POD内的资源进行统一管理和调度,为大型数据中心构建统一的资源池。大型SDN数据中心采用SDN-DCI技术实现POD之间的互联互通。SDN-DCI技术通过EVPN+VXLAN建立跨POD的互连路径,管理平面采用EVPN协议,数据平面采用VXLAN隧道承载。POD中的SDN-GW同时作为DCI-GW,每个POD中的SDN-GW之间配置运行Fullmesh的EBGP协议。每个POD的SDN-GW基于EBGP协议建立EVPN邻居关系,通过EVPN建立互联的控制平面,在租户的VPC(VirtualPrivateCloud)中传递MAC、ARP、IP网段路由信息。在大型数据中心部署统一的云管理平台,协同布置各POD内的SDN控制器,实现跨POD网络业务流量互通。考虑到在实际网络部署中,POD很可能是不同厂商的设备。因此,云管理平台需要接入不同厂商的SDN控制器。为此,需要定义一个标准的SDN控制器来开放云管理平台的北向API接口。控制器基于这个标准接口,接收来自云管理平台的指令,控制POD中的转发设备完成指令的执行。图6跨POD互通EVPN+VXLAN技术方案示意图通过分析大型数据中心POD间业务互联需求,可以得到如下流量模型:同业务域同租户跨POD互通,但内网防火墙;同一业务域不同Tenant通过内网防火墙跨POD通信;不同业务域的租户通过内网防火墙跨POD通信;不同业务域的租户通过内网防火墙跨POD通信。对以上网络流量模型进行归纳分析后,可以归纳简化为两种互通流量模型,即通过防火墙跨POD互通和不带防火墙跨POD互通。在云管理平台跨POD互通服务接口命令模板中,增加防火墙状态使能开关,判断是否通过防火墙。另外,考虑到流量模型的对称性,在穿墙场景下要求两侧所有POD都穿墙。跨POD互通不允许防火墙流量。租户流量在本地连接到VTEP并封装到本地VXLAN隧道中。当到达POD中的SDN-GW时,将本地的VXLAN封装解封装,重新封装到互连的VXLAN中,然后发送给对端POD中的SDN-GW。流量到达对端POD中的SDN-GW后,将互连VXLAN封装解封装,再封装到对应租户的本地VXLAN隧道中。不同业务的跨POD互通流量应该隔离。需要为每组业务互通流量规划单独的VNI和VRF,并绑定VNI和VRF。图7Cross-PODbutfirewall流量模型Cross-POD互通流量通过防火墙流量模型,租户流量到达POD中的SDN-GW,解封装本地VXLAN,通过VLAN二层转发发送到防火墙。防火墙处理完毕后回传给SDN-GW。SDN-GW被重新封装到互联的VXLAN中,发送给peerPOD中的SDN-GW。流量到达对端POD中的SDN-GW后,对接的VXLAN封装解封装,通过VLAN二层转发到POD中的防火墙,防火墙处理后回传给SDN-GW,然后SDN-GW将流量封装到相应租户的本地VXLAN中。隧道。图8.跨POD但防火墙流量模型不同服务的跨POD互通流量应该隔离。需要为每组业务互通流量规划单独的VNI和VRF,并绑定VNI和VRF。对于一些需要负载均衡设备处理的业务流量,云管理平台可以统一安排流量经过相应的负载均衡。5.大型SDN数据中心的南北向流量简述大型SDN数据中心南北向流量的处理。引入多POD组网后,增加了南北汇聚交换机。南北汇聚交换机分别连接Internet防火墙、IP专网和专线路由器。南北汇聚交换机工作在二层透传模式,用于处理互联网南北业务流量,三层分别终结于SDN-GW和外网防火墙。对于进出IP专网和专线的南北向流量处理,根据具体情况可以工作在二层透传或三层模式。工作在三层模式需要配置VRF来隔离不同的业务流量。
