• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

SDWAN技术白皮书-6W102

手册下载

SDWAN技术白皮书-6W102-整本手册.pdf  (1.14 MB)

  • 发布时间:2024/2/1 22:38:30
  • 浏览量:
  • 下载量:

SDWAN技术白皮书

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Copyright © 2021-2022 新华三技术有限公司 版权所有,保留一切权利。

非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传播。

除新华三技术有限公司的商标外,本手册中出现的其它公司的商标、产品标识及商品名称,由各自权利人拥有。

本文中的内容为通用性技术信息,某些信息可能不适用于您所购买的产品。


 

1 概述··· 1

1.1 产生背景·· 1

1.2 技术优点·· 1

2 SDWAN技术实现··· 2

2.1 网络模型·· 2

2.2 TTE· 3

2.3 SDWAN报文封装格式·· 4

2.4 BGP扩展·· 5

2.5 通道建立·· 7

2.5.2 管理通道·· 8

2.5.3 控制通道·· 8

2.5.4 数据通道·· 9

2.6 路由信息发布·· 9

2.7 报文转发·· 10

2.8 VPN实例和租户隔离·· 11

2.9 Overlay灵活拓扑·· 11

2.10 IPsec保护SDWAN隧道·· 13

2.10.1 SA简介·· 13

2.10.2 SA生成方式与交互·· 14

2.10.3 IPsec抗重放功能·· 14

3 穿越NATSDWAN技术实现··· 14

3.1 静态NAT技术·· 15

3.2 STUN技术·· 15

3.2.1 STUN典型组网·· 15

3.2.2 NAT映射和过滤·· 16

3.2.3 NAT类型·· 20

3.2.4 STUN报文结构·· 21

3.2.5 STUN工作机制·· 22

3.2.6 STUN客户端重传机制·· 25

3.3 穿越NAT建立SDWAN隧道·· 26

3.3.2 控制通道建立·· 27

3.3.3 数据通道建立·· 27

4 基于SDWAN的智能选路技术实现··· 28

4.1 简介·· 28

4.2 业务流量模板·· 29

4.3 链路·· 29

4.4 基于链路优先级选路·· 30

4.4.1 链路优先级·· 30

4.4.2 优先级策略·· 30

4.5 基于链路质量选路·· 30

4.5.1 链路探测机制·· 30

4.5.2 链路通断探测·· 30

4.5.3 iNQA链路质量探测·· 31

4.5.4 质量评估机制和质量策略·· 34

4.6 基于链路带宽选路·· 34

4.6.1 链路带宽·· 34

4.6.2 带宽策略·· 35

4.7 负载分担·· 35

4.8 智能选路机制·· 35

4.8.1 选路机制总述·· 35

4.8.2 链路优先级选路·· 36

4.8.3 质量勉强选路·· 38

4.8.4 带宽勉强选路·· 39

4.9 选路延迟和选路抑制·· 39

5 SaaS路径优化技术实现··· 39

5.1 SaaS应用·· 39

5.1.1 SaaS应用简介·· 39

5.1.2 SaaS应用访问方式·· 40

5.2 SaaS路径质量探测与评估·· 41

5.2.1 SaaS路径质量探测·· 41

5.2.2 SaaS路径质量评估·· 42

5.3 SaaS路径优化机制·· 43

5.3.1 使用动态获取的IP地址访问SaaS应用的路径优化·· 43

5.3.2 使用静态IP地址访问SaaS应用的路径优化·· 43

5.3.3 最优路径信息表项的老化·· 43

6 典型组网应用··· 43

6.1 总部分支扁平化组网·· 43

6.2 多总部分支扁平化组网·· 44

6.3 分层组网·· 45

6.4 云管理组网·· 46

6.5 运营商POP点组网·· 47

6.6 运营商POP点分层组网·· 48

7 参考文献··· 49

 


1 概述

1.1  产生背景

云计算技术的发展引发了IT产业的变革,互联网+带动了传统行业的转型,to B的互联网化在2014年赶超了to C。聚焦于企业市场和广域网范畴的SDWANSoftware Defined Wide Area Network,软件定义广域网)服务正是在这样的行业背景和期待中产生。

SDWAN是将SDN技术应用到WAN场景中的一种VPN技术。如1-1所示,SDWAN技术旨在帮助用户降低广域网的开支、提升网络连接的灵活性,为分散在广阔地理范围内的企业网络、数据中心网络等提供安全可靠的互联服务。

图1-1 SDWAN业务场景示意图

 

1.2  技术优点

SDWAN具有如下特点:

·     降低网络部署的费用:引入点到多点的SDWAN隧道,节约了设备性能。本地站点设备与多个远端站点设备之间只需要建立一条隧道,使低性能设备也能支持Full-Mesh组网。

·     简化网络部署和维护,方便网络快速部署:

¡     两台设备间只需要建立一个BGP邻居,通过一个BGP邻居来承载所有VPN的私网路由。

¡     引入RRRoute Reflector,路由反射器),在RR上基于路由策略灵活控制用户业务拓扑。

¡     引入密钥通告机制,取消设备间的IPsec IKE协商,通过控制器集中在RR上部署IPsec策略,通过RRIPsec SA直接下发给各站点设备,有效减轻设备的IPsec协商压力。

¡     引入STUN协议,通过STUN协议实现在具有NAT转换的动态IP地址的分支间建立隧道。

·     提供更好的用户体验:通过VPN实例实现用户之间的隔离,通过IPsec实现对用户数据的安全传输。

2 SDWAN技术实现

2.1  网络模型

图2-1 SDWAN网络模型示意图

 

2-1所示,SDWAN的典型网络模型包含如下部分:

·     CPECustomer Premise Equipment,用户端设备用户网络的边缘设备

·     RRRoute Reflector,路由反射器):用于在CPE之间反射TTE信息和私网路由等。

·     TNTransport Network,传输网络):运营商提供的广域接入网络,用来实现分支站点之间的互联,主要包括运营商专线网络和Internet公用网络等。传输网络可以通过TN ID或传输网络的名称来标识。TN是构建SDWAN Overlay网络的基础。

·     RDRouting Domain,路由域):由彼此之间路由可达的不同传输网络构成的区域。只能在位于同一个路由域内的CPE之间或CPERR之间建立SDWAN隧道。

·     Site ID:站点ID,是分支站点在SDWAN网络中的唯一标识,通常用一串数字表示,由网络控制器统一自动分配。

·     Device ID:设备ID,是支持SDWAN功能的设备(SDWAN设备)在站点内的唯一标识,由网络管理员统一分配。一个站点通常包含一台或两台SDWAN设备。

·     System IP:设备的系统IP地址由网络管理员统一分配。通常采用设备上某个Loopback接口的IP地址作为System IP

·     Interface ID:设备接口ID由网络管理员统一分配。同一台设备上,不同隧道接口的接口ID不同。

·     SDWAN隧道:两个SDWAN设备之间的点到多点逻辑通道。不同站点之间通过SDWAN隧道传输数据报文等,实现不同站点之间的互联。隧道的物理出接口是CPE/RR上的广域网接口,该广域网接口所属的TN在同一个RD内,即两端的广域网接口可以在Underlay网络层面互通。两个站点可以通过多个不同运营商的TN进行互联,因此站点之间可以建立多个不同的隧道。

·     SSLSecure Sockets Layer,安全套接字层)连接:在SDWAN网络中,CPERR之间建立SSL连接,通过该连接交互TTE信息,实现控制通道的建立。

·     TTETransport Tunnel Endpoint,传输隧道端点):SDWAN设备接入传输网的连接点和SDWAN隧道的端点。设备的TTE信息主要包括Site IDTN IDPrivate IP AddressPublic IP Address和隧道的封装类型等。TTE IDSite IDDevice IDInterface ID组成,用来唯一标识一个TTETTE ID作为TTE的属性,通过BGP路由发布给其它网络节点。

·     TTE连接:两个TTE之间的点到点逻辑连接。

2.2  TTE

TTESDWAN技术的重要组成部分,是SDWAN设备接入传输网的连接点和SDWAN隧道的端点。TTE IDSite IDDevice IDInterface ID构成,唯一标识一个TTESDWAN设备通过交互TTE信息,完成SDWAN隧道的动态建立和维护,实现网络管理的简化。TTE包含如下属性:

·     Site ID

·     Device ID

·     System IP

·     Site role:设备所属站点的角色,取值包括RRCPE、和NAT-transferNAT-transferNAT传输设备,用于在公网中为穿越NATCPE设备建立转发路径。

·     接口ID

·     传输网络名称/ID

·     路由域名称/ID

·     封装类型:取值为UDP,表示采用UDP封装。

·     NAT-TypeNAT转换类型,取值包括:

¡     Full Cone NAT:完全锥型NAT

¡     Restricted Cone NAT:限制锥型NAT

¡     Port Restricted Cone NAT:端口限制锥型NAT

¡     Symmetric NAT:对称NAT

¡     NO NAT:不存在NAT

¡     -:未知类型

·     Public IPNAT转换后的IP地址和端口号。

·     Private IPNAT转换前的IP地址和端口号。

·     IPsec SPI

·     IPsec认证算法和密钥

·     IPsec加密算法和密钥

2.3  SDWAN报文封装格式

SDWAN报文分为控制报文和数据报文。

·     控制报文用于在SDWAN网络中通告TTE信息、EVPN路由和本端NAT转换后的Public IP等。NAT的详细介绍,请参见“3.3  穿越NAT建立SDWAN隧道”。

·     数据报文用于转发用户的报文。

1. 控制报文格式

2-2所示,SDWAN控制报文封装格式为:在数据部分外添加16字节SDWAN头、8字节UDP头和20字节IP头;如需对报文进行安全保护,则还会封装IPsec头。其中,UDP头的目的端口号为SDWAN UDP端口号(缺省为4799)。SDWAN头主要包括如下部分:

·     Type:表示报文的类型,长度为8比特。取值为1时,表示SDWAN控制报文;为2时,表SDWAN数据报文。

·     Sub Type:表示控制报文的子类型,长度为8比特。取值为1时,表示NAT地址探测请求报文。

·     Version:表示SDWAN协议报文号,目前取值固定为0

·     Reserved:保留字段,取值固定为0

·     Length:表示SDWAN头的长度,长度为16比特。

·     Local TTE ID:标识一个本地TTE,长度为32比特。

·     Remote TTE ID:标识一个远端TTE,长度为32比特。

图2-2 SDWAN控制报文封装示意图

 

2. 数据报文格式

2-3所示,SDWAN数据报文封装格式为:在原始数据报文外添加12字节SDWAN头、8字节UDP头和20字节IP头;如需对报文进行安全保护,则还会封装IPsec头。其中,UDP头的目的端口号为SDWAN UDP端口号(缺省为4799)。SDWAN头主要包括如下部分:

·     Type:表示报文的类型,长度为8比特。取值为1时,表示SDWAN控制报文;为2时,表示SDWAN数据报文。

·     Protocol:表示内层数据报文的类型,长度为8比特。取值为1时,表示IPv4报文;为2时,表IPv6报文。

·     Length:表示SDWAN头的长度,长度为16比特。

·     VN ID:表示SDWAN数据报文所属的VPN实例的VN ID,长度为32比特。若报文属于公网实例,则本字段取值为0

·     Flow ID:表示SDWAN数据报文所属的流ID,长度为32比特。若未通过QoS对报文标记流ID,则取值为0

图2-3 SDWAN数据报文封装示意图

 

2.4  BGP扩展

1. BGP IPv4 Tnl-Encap-Ext地址族

为了支持SDWANBGP定义了新的地址族——BGP IPv4 Tnl-Encap-Ext地址族。该地址族为IPv4地址族的子地址族,SAFISubsequent Address Family Identifier,子地址族标识符)为74。该地址族下交换的路由,称为IPv4 Tnl-encap-ext路由。IPv4 Tnl-encap-ext路由可以在路径属性MP_REACH_NLRIMultiprotocol Reachable NLRI,多协议可达NLRI)中,携带如下两类信息:

·     TTE信息:Site IDTN IDPublic IPPrivate IPTunnel Encapsulation等。该信息用来在CPE之间建立数据通道。数据通道的详细介绍,请参见“2.5.4  数据通道”。

·     SaaS访问路径质量信息:包括DelayJitterLossCQI等。该信息用于在智能选路场景下,为不同的应用选择最佳访问路径。SaaS的详细介绍,请参见“5 SaaS路径优化技术实现”。

图2-4 IPv4 Tnl-encap-ext路由的MP_REACH_NLRI属性示意图

 

2-4所示,IPv4 Tnl-encap-ext路由的MP_REACH_NLRI属性包含如下字段:

·     FlagsBGP属性标记位,取值为0x90,表示该属性为包含了完整信息的可选非传递属性。

·     Type CodeBGP属性类型,取值为14

·     LengthMP_REACH_NLRI属性的长度。

·     AFI:地址族标识符,取值为1,表示IPv4地址族。

·     SAFI:子地址族标识符,取值为74,表示IPv4 Tnl-Encap-Ext地址族。

·     Next hop network address:下一跳IP地址。

·     Number of SNPAs:下面字段中SNPASubnetwork Point of Attachment,子网连接点)的数量,取值为0,表示属性中不包含SNPA

·     NLRI:网络层可达性信息。

MP_REACH_NLRI属性的网络层可达性信息包含如下字段:

·     NLRI TypeNLRI信息类型。取值1表示携带的是TTE信息,取值2表示携带的是SaaS访问路径质量信息。

·     NLRI LengthNLRI的长度。

·     ProtocolNLRI信息使用的协议栈,取值为2,表示IPv4协议。

·     Prefix TypeNLRI的前缀类型,取值为1

·     Prefix LengthNLRI的前缀长度。

·     PrefixNLRI的前缀信息。TTE信息的内容为TTE IDSaaS访问路径质量信息的内容为站点ID和设备ID

·     Data TypeNLRI的数据部分类型,取值为2

·     Data LengthNLRI的数据部分长度。

·     DataNLRI的数据部分。本字段携带了TTE信息或SaaS访问路径质量信息的具体内容。TTE的详细介绍,请参见“2.2  TTE”;SaaS访问路径质量信息的详细介绍,请参见“5.2.2  SaaS路径质量评估”。

2. EVPN路由

SDWAN租户隔离场景中,CPEVPN实例中的私网路由信息以EVPN IP前缀路由的形式发布给其他CPE。为支持SDWANEVPN路由进行了如下扩展:

·     TUNNEL_ENCAPSULATION_ATTRIBUTE属性中,新增加了一种SDWAN封装类型。

·     IP前缀路由的NLRI字段携带了VN ID,用来区分属于不同VPN实例的私网路由。

2.5  通道建立

2-5所示,SDWAN网络包含管理通道、控制通道和数据通道三种类型的通道。

表2-1 通道概要

通道类型

通道连接类型

通道所处位置

具体作用

管理通道

NETCONF连接

控制器与CPE/RR之间

·     控制器向CPE/RR下发配置

·     CPE/RR向控制器上报网络运维需要的信息

控制通道

SSL连接

RRCPE之间

CPERR之间交互TTE信息

BGP连接

RRCPE之间

CPERR发布TTE信息和私网路由,RRTTE信息和私网路由反射给其他CPE

数据通道

SDWAN隧道

CPE之间、RRCPE之间

转发数据报文

 

图2-5 通道示意图

 

2.5.2  管理通道

管理通道是指控制器与CPE/RR等网络设备之间的连接,通过管理通道可以实现如下功能:

·     控制器通过管理通道(例如NETCONF协议建立的通道)向CPE/RR等网络设备下发配置,主要包括网络基础配置、VPN业务参数、智能选路和IPsec等配置。

·     CPE/RR等网络设备通过管理通道向控制器上报网络运维需要的信息,主要包括设备的告警、日志以及网络流量等性能采集信息。

2.5.3  控制通道

控制通道是RRCPE之间发布TTE信息和私网路由的通道。具体的建立过程为:

(1)     CPERR之间使用网络侧出接口地址建立SSL连接(控制通道),其中CPE作为SSL的客户端,称为SDWAN SSL clientRR作为SSL的服务器端,称为SDWAN SSL server

(2)     CPERR之间通过SSL报文交互各自的TTE信息。

(3)     CPERR收到对端发送的TTE信息后,比较TTE信息中携带的路由域、组ID和传输网络。若路由域、组ID和传输网络均相同,则建立到达对端的SDWAN隧道;若路由域、组ID和传输网络存在不同,则不建立SDWAN隧道。SDWAN隧道可以用于在CPERR之间转发报文。

(4)     完成SDWAN隧道建立后,CPERR自动在本地添加到达对端Systerm IPUNRUser network route,用户网络路由)路由。

(5)     CPERR之间基于Systerm IP建立IPv4 Tnl-Encap-Ext地址族EVPN地址族下的BGP连接(控制通道),通过BGP连接发布TTE信息和私网路由。

2.5.4  数据通道

数据通道是CPE之间、CPERR之间转发数据报文的通道。具体的建立过程为:

(1)     CPE通过IPv4 Tnl-encap-ext路由向RR发送TTE信息。

(2)     RRTTE信息反射给其他CPE

(3)     CPE收到由RR反射的TTE信息后,比较TTE信息中携带的路由域、组ID和传输网络。若路由域、组ID和传输网络均相同,则建立到达对端CPESDWAN隧道;若路由域、组ID和传输网络存在不同,则不建立SDWAN隧道。

(4)     完成SDWAN隧道建立后,CPE自动在本地添加到达对端Systerm IPUNR路由。

为了保证数据安全传输,可以对数据报文进行IPsec加密。有关IPsec的详细介绍,请参见“2.10  IPsec保护SDWAN隧道”。

2.6  路由信息发布

2-6所示,在SDWAN网络中,站点间的路由发布过程包含三部分:本地站点向CPE发布路由、CPE之间发布路由、CPE向本地站点发布路由。完成这三部分后,站点之间将建立可达路由。

图2-6 路由信息发布示意图

 

1. 本地站点向本端CPE发布路由

本地站点使用静态路由、RIPOSPFIS-ISEBGPIBGP,将本站点的VPN路由发布给本端CPE。本地站点发布给CPE的是标准的IPv4路由。

2. 本端CPE与远端CPE之间发布路由

(1)     CPE从本地站点学到VPN路由信息后,将其存放到VPN实例的路由表中。

(2)     CPEVPN路由信息封装到IP前缀路由中发布给RRIP前缀路由携带RDRT,且该路由的下一跳地址为本端CPE 1System IP

(3)     RR将收到的IP前缀路由反射给远端CPE

(4)     远端CPE收到RR反射的IP前缀路由后,将IP前缀路由的Export Target属性与自己维护的VPN实例的Import Target属性进行匹配。如果远端CPE上某个VPN实例的Import Target属性与路由的Export Target属性中存在相同的属性值,则接收该IP前缀路由并将其添加到VPN路由表中,其中路由的出接口为接收到该路由的SDWAN隧道接口,下一跳为远端CPESystem IP

3. 远端CPE向远端站点发布路由

与本地站点向CPE发布路由信息相同,远端站点可以通过多种方式从远端CPE学习VPN路由,包括静态路由、RIPOSPFIS-ISEBGPIBGP

2.7  报文转发

图2-7 数据报文转发示意图

 

2-7所示,数据报文的转发过程为:

(1)     Site 1内主机发送的目的地址为10.1.4.3IP报文由Device 1转发至CPE 1

(2)     CPE 1根据报文到达的接口及目的地址查找对应VPN实例的路由表,其中路由表项的出接口为SDWAN隧道接口,下一跳为CPE 2Systerm IP

(3)     CPE 1根据该路由的详细信息查找到远端的TTE ID,根据TTE连接信息为报文进行SDWAN封装,并沿着SDWAN隧道的出接口转发该报文。具体的封装信息如下:

¡     外层IP头的源/目的IP地址分别为TTE连接信息的中的Source IPDestination IPSource IPCPE 1上该SDWAN隧道的物理出接口的IP地址,Destination IPCPE 2上接收SDWAN报文的物理接口的IP地址

¡     外层UDP的源端口号为配置的SDWAN报文采用UDP封装时的源UDP端口号;

¡     SDWAN报头的VN IDCPE 1接收该报文的接口绑定的VPN实例的VN ID

(4)     SDWAN网络内,P根据报文的目的IP地址转发报文,将报文转发到CPE 2

(5)     CPE 2对报文进行解封装,根据SDWAN封装的VN ID确定报文所属的VPN实例,通过查找该VPN实例的路由表,确定报文的出接口,将解封装的报文转发至Device 2

(6)     Device 2根据正常的IP转发过程将报文转发给目的主机。

2.8  VPN实例和租户隔离

图2-8 租户隔离示意图

 

2-8所示,在SDWAN组网中,使用VPN实例为租户提供隔离功能。

·     控制平面:CPE之间交互的EVPN路由中携带VN ID标识不同租户的私网路由,每个VPN实例之间互相独立,拥有自己的转发表和路由表。

·     数据平面:租户通过CPE上的接口接入设备,CPE通过该接口上关联的VPN实例识别租户所属的VPN。查找该VPN实例的转发表,为租户报文添加SDWAN封装后,将报文转发到远端CPESDWAN封装中携带VN ID,用来标识租户所属的VPN。当远端CPE收到报文后,可以根据VN ID识别出报文所属的VPN。远端CPE查找该VPN实例的转发表,将报文转发给租户。

这种隔离方式可以实现多个VPN共享同一条SDWAN隧道,在实现流量隔离的同时,减少设备间隧道数量,减少网络资源的消耗。

2.9  Overlay灵活拓扑

2-9所示,Overlay灵活拓扑是指在Underlay网络互联的基础上,通过在RR上配置路由策略灵活地控制Overlay网络的拓扑结构。

图2-9 UnderlayOverlay网络示意图

 

2-10所示,在部署路由策略前,CPE 2CPE 3之间存在SDWAN隧道,CPE 2CPE 3之间的流量直接通过两者之间的SDWAN隧道进行转发。由于租户业务的变更,需要CPE 2CPE 3之间的流量绕行到CPE 1进行转发。此时,可以在RR上部署路由策略,将CPE 2/CPE 3发送的EVPN路由的下一跳地址修改为CPE 1的地址,从而灵活改变Overlay网络的拓扑。

图2-10 Overlay灵活拓扑示意图

 

2.10  IPsec保护SDWAN隧道

为了保障SDWAN隧道数据传输的机密性和完整性,设备支持通过IPsecSDWAN报文提供安全保护。IPsec提供了两大安全机制:认证和加密。认证机制使得SDWAN的数据接收方能够确认数据发送方的真实身份以及数据在传输过程中是否被篡改。加密机制通过对数据进行加密运算来保证数据的机密性,以防数据在传输过程中被窃听。

IPsecSDWAN数据报文提供的安全服务具体包括以下几种:

·     数据机密性(Confidentiality):发送方通过网络传输用户报文前,IPsec对报文进行加密。

·     数据完整性(Data Integrity):接收方对发送方发送来的IPsec报文进行认证,以确保数据在传输过程中没有被篡改。

·     数据来源认证(Data Origin Authentication):接收方认证发送IPsec报文的发送端是否合法。

·     抗重放(Anti-Replay):接收方可检测并拒绝接收过时或重复的IPsec报文。

2.10.1  SA简介

SASecurity Association,安全联盟)是IPsec的基础,也是IPsec的本质。IPsec在两个端点之间提供安全通信,这类端点被称为IPsec对等体。SAIPsec对等体间对某些要素的约定,例如,使用的安全协议(AHESP或两者结合使用)、协议报文的封装模式(传输模式或隧道模式)、认证算法(HMAC-MD5HMAC-SHA1SM3)、加密算法(DES3DESAESSM)、特定流中保护数据的共享密钥以及密钥的生存时间等。

SA是单向的,在两个对等体之间的双向通信,最少需要两个SA来分别对两个方向的数据流进行安全保护。同时,如果两个对等体希望同时使用AHESP来进行安全通信,则每个对等体都会针对每一种协议来构建一个独立的SA

SA由一个三元组来唯一标识,这个三元组包括SPISecurity Parameter Index,安全参数索引)、目的IP地址和安全协议号。其中,SPI是用于标识SA的一个32比特的数值,它在AHESP头中传输。

2.10.2  SA生成方式与交互

传统的IPSec采用IKE自动协商方式生成SA,并由IKE协议维护SA。这种方式需要对等体之间两两建立IKE协商通道,效率低下,占用带宽。在SDWAN网络中,CPE本地生成IPsec SA,首先通过SSL连接,在RRCPE间交互IPsec SA。然后通过BGPIPv4 Tnl-encap-ext路由将该IPsec SA发布给RR,并由RR反射给其他CPE,从而实现IPsec SA的交互。同一SDWAN隧道上的不同TTE使用相同的IPsec SA,有效减轻设备的IPSec协商压力。

SDWAN设备会定期更新IPSec SA,以进一步提高网络的安全性。

2.10.3  IPsec抗重放功能

重放报文,通常是指设备再次接收到的已经被IPsec处理过的报文。IPsec通过滑动窗口(抗重放窗口)机制检测重放报文。AHESP协议报文中带有序列号,如果收到的报文的序列号与已经解封装过的报文序列号相同,或收到的报文的序列号出现得较早,即已经超过了抗重放窗口的范围,则认为该报文为重放报文。

对重放报文的解封装无意义,并且解封装过程涉及密码学运算,会消耗设备大量的资源,导致业务可用性下降,造成了拒绝服务攻击。通过开启IPsec抗重放检测功能,将检测到的重放报文在解封装处理之前丢弃,可以降低设备资源的消耗。

SDWAN网络下,BGP协议报文和业务流量报文的接收顺序可能与正常的顺序差别较大,虽然并非有意的重放攻击,但会被抗重放检测认为是重放报文,导致业务数据报文被丢弃,影响业务的正常运行。因此,这种情况下可以通过关闭IPsec抗重放检测功能来避免业务数据报文的错误丢弃,也可以通过适当地增大抗重放窗口的宽度,来适应业务正常运行的需要。

3 穿越NATSDWAN技术实现

SDWAN网络中,为了节省IP地址资源,分支站点的用户经常会使用私网IP地址。通过NAT将私网IP地址转换为公网IP地址后,该站点的用户才能访问其他站点。CPE发出的报文在经过NAT设备后,IP地址会发生变化。如果无法获取NAT转换后的IP地址,则CPECPE/RR之间无法建立SDWAN通道。为了解决此问题,需要使用静态NATSTUNSession Traversal Utilities for NATNAT环境下的会话传输)技术获取NAT相关信息,并穿越NATCPE之间建立SDWAN隧道。

3.1  静态NAT技术

静态NAT技术是指在NAT设备上采用静态NAT转换方式的场景中,管理员通过在CPE/RR上部署静态NAT技术,手工指定隧道的源IP地址和端口号(即SDWAN报文封装时的源UDP端口号)NAT转换后的公网IP地址和公网端口号,而无需部署STUN功能来探测NAT转换后的公网IP地址和公网端口号。

3.2  STUN技术

STUN是一种处理NAT穿越问题的协议,用来为隧道模块确定网络中是否存在NAT设备,以及NAT设备为通信端点分配的IP地址和端口号。STUN基于UDP传输协议报文,默认使用的端口号为3478

3.2.1  STUN典型组网

STUN采用C/S模式,由STUN客户端(STUN Client)和STUN服务器(STUN Server)组成,典型组网如3-1所示。

·     STUN客户端:STUN探测的发起者,主动向STUN服务器发送探测请求,根据服务器的响应报文判断NAT设备是否存在,并获取NAT信息。通常部署在CPE设备上。

·     STUN服务器:STUN探测的响应者,接收来自STUN客户端的探测请求,并通过在响应报文内填充特定的地址和端口信息向客户端提供判断的依据。通常部署在公网上。

图3-1 STUN典型组网

 

STUN客户端和STUN服务器通过交互捆绑请求和捆绑响应协议报文,探测NAT转换后的IP地址和端口号,以及NAT类型。

3.2.2  NAT映射和过滤

1. 概念介绍

NAT映射和NAT过滤是NAT穿越技术里经常用到的两个概念。在STUN里,需要通过NAT映射类型和NAT过滤方式来判断NAT类型,从而确定STUN是否能正常工作。

相关术语如下:

·     Endpoint:一对IP地址和端口号的组合。例如,Endpoint(X,x)表示IP地址为X、端口号为x

·     NAT映射:NAT设备对内网主动发到外网的报文进行映射。当内网主机向外网主机发起访问时,NAT设备会建立内网Endpoint和外网Endpoint之间的映射关系表,并根据该映射关系将报文的内网Endpoint转换成外网Endpoint转发出去。

·     NAT过滤:NAT设备对外网主动发到内网的报文进行过滤。为了防止内网主机受到攻击,NAT设备会对外网主动发到内网的报文进行过滤,即过滤非法报文,转发正常通信报文。

2. NAT映射类型

NAT映射类型包括三种:EIMADMAPDM。下面以3-23-33-4为例,详细介绍三种NAT映射类型。假设内网主机Host A的内网Endpoint(X,x),经过NAT映射后的外网Endpoint(Y,y)。外网Host BEndpoint(M,m),外网Host CEndpoint(N,n)

·     EIMEndpoint-Independent Mapping,外部地址无关映射):仅根据内网Endpoint进行NAT映射,不考虑报文的目的IP地址和端口号,即同一个内网Endpoint发送到外部网络的任何报文,NAT映射后的结果均相同。如3-2所示,对于内网Endpoint(X,x)NAT映射后的外网Endpoint均为(Y,y)

图3-2 EIM示意图

 

·     ADMAddress-Dependent Mapping,外部地址相关映射):根据内网Endpoint和报文的目的IP地址进行NAT映射,不考虑报文的目的端口号。即,同一个内网Endpoint发送到外部网络中相同IP地址、任意端口号的报文,NAT映射后的结果相同;同一个内网Endpoint发送到外部网络中不同IP地址的报文,NAT映射后的结果不同。如3-3所示,对于内网Endpoint(X,x)访问Host BEndpoint(M,m1)Endpoint(M,m2)的报文,NAT映射后的外网Endpoint均为(Y1,y1)

图3-3 ADM示意图

 

·     APDMAddress and Port-Dependent Mapping,外部地址和端口相关映射):根据内网Endpoint和外Endpoint进行NAT映射。即,同一个内网Endpoint发送到同一外网Endpoint的报文,NAT映射后的结果相同;同一个内网Endpoint发送到不同外网Endpoint的报文,NAT映射后的结果不同。如3-4所示,对于内网Endpoint(X,x)访问Host B的报文,NAT映射后的外网Endpoint(Y1,y1);内网Endpoint(X,x)访问Host C的报文,NAT映射后的外网Endpoint(Y2,y2)

图3-4 APDM示意图

 

3. NAT过滤方式

NAT过滤方式包括三种:EIFADFAPDF。下面以3-53-63-7为例,详细介绍三种NAT过滤类型。假设内网主机Host A的内网Endpoint(X,x),经过NAT映射后的外网Endpoint(Y,y)。外网Host BEndpoint(M,m),外网Host CEndpoint(N,n)

·     EIFEndpoint-Independent Filtering,外部地址无关过滤):对于内网Endpoint(X,x),只要它曾经向某个外网主机发送过数据,外网主机收到数据报文后就可以根据报文的源IP和源端口获取到内网主机NAT映射后的外网Endpoint(Y,y)那么,对于任意外部网络主机发送到Endpoint(Y,y)的报文,NAT设备都会进行地址转换并转发到内网。NAT设备接收到外部网络主机发送的报文后,若NAT设备上的映射表中不存在该报文目的Endpoint对应的表项,则NAT设备会将此类报文丢弃。

图3-5 EIF示意图

 

·     ADFAddress-Dependent Filtering,外部地址相关过滤):对于内网Endpoint(X,x),只有它曾经向IP地址为M的外网主机Host B发送过报文,NAT设备才会对外网主机Host B使用外网地址M、任意端口号发送到Endpoint(Y,y)的报文进行地址转换。除此之外的外部网络报文都会被NAT设备过滤。

图3-6 ADF示意图

 

·     APDFAddress and Port-Dependent Filtering,外部地址和端口相关过滤):对于内网Endpoint(X,x),如果它仅向外网Endpoint(M1,m1)发送过报文,那么NAT设备只会对Endpoint(M1,m1)发送到Endpoint(Y,y)的报文进行地址转换并转发到内网。除此之外的外部网网络报文都会被NAT设备丢弃。

图3-7 APDF示意图

 

3.2.3  NAT类型

NAT类型是由映射类型和过滤方式组合而成的,有如下四种组合方式:

·     Full Cone NAT(完全锥型NATEIMEIF的组合。

所有从同一个私网IP地址和端口(IP1:Port1)发送到NAT设备的报文的地址和端口都会被映射成同一个公网IP地址和端口(IP:Port)。并且,任何外部主机都可以通过该公网IP地址和端口(IP:Port)与内部主机进行通信。

·     Restricted Cone NAT(限制锥型NATEIMADF的组合。

所有从同一个私网IP地址和端口(IP1:Port1)发送到NAT设备的报文的地址和端口都会被映射成同一个公网IP和端口号(IP:Port)。与Full Cone NAT不同的是,只有内部主机之前已经访问过的外部主机可以与内部主机通信,其余外部主机不能与内部主机通信。

·     Port Restricted Cone NAT(端口限制锥型NATEIMAPDF的组合。

所有从同一个私网IP地址和端口(IP1:Port1)发送到NAT设备的报文的地址和端口都会被映射成同一个公网IP和端口号(IP:Port)。与Restricted Cone NAT不同的是,一台公网主机(IP2:Port2)能够内网主机进行通信的前提是,内网主机曾经通过(IP2:Port2)访问过该公网主机。

·     Symmetric NAT(对称NATAPDMAPDF的组合。

所有从同一个私网IP地址和端口(IP1:Port1)发送到一个特定目的IP地址和端口的报文的地址和端口,都会被映射到同一个公网IP地址和端口。如果同一台私网主机使用相同的源地址和端口号发送报文,但是发往不同的目的地,NAT将会使用不同的映射。公网主机(IP2:Port2)与某个内网主机(IP1:Port1)通信的前提是,内网主机(IP1:Port1)曾经通过(IP2:Port2)访问过该公网主机。

3.2.4  STUN报文结构

STUN基于UDP传输协议报文,协议报文的封装格式如3-8所示。

图3-8 STUN报文结构

 

3-9所示,STUN消息(STUN Message)包括STUN消息头和STUN消息属性两部分。STUN消息头的长度为20字节,后面跟着零个或多个属性。

图3-9 STUN消息结构

 

STUN消息头包含如下字段:

·     STUN Message TypeSTUN消息类型,长度为14比特。当前仅支持STUN捆绑请求和STUN捆绑响应两种类型的消息。

·     Message LengthSTUN消息长度,长度为16比特(不包括消息头长度)。

·     Magic Cookie:魔术字,长度为32比特。魔术字包含固定值0x2112A442,用于STUN服务器检测STUN客户端是否可以识别特定属性。此外,当STUN与其他协议使用相同的端口号时,通过魔术字可以将STUN和其他协议区分开。

·     Transaction ID:事务ID,长度为96比特,用于唯一标识一次STUN探测。事务IDSTUN客户端来选择。在一次STUN探测中,STUN服务器收到STUN客户端发送的STUN捆绑请求消息后,回复的STUN捆绑响应消息的事务IDSTUN捆绑请求消息的事务ID相同。同时,STUN服务器根据事务ID来唯一标识STUN客户端的不同探测请求。

STUN消息属性采用TLVType/Length/Value,类型/长度/值)格式,结构如3-10所示。其中,TypeLength字段的长度均为16比特,Value字段的长度可变。

图3-10 STUN消息属性结构

 

常见的STUN消息属性包括如下几种:

·     CHANGE-REQUEST:捆绑请求中携带的消息属性,STUN客户端使用此属性来请求STUN服务器改变发送捆绑响应报文的IP地址、端口号。

·     MAPPED-ADDRESS:捆绑响应中携带的消息属性,表示经过地址转换后的STUN客户端的IP地址和端口。

·     XOR-MAPPED-ADDRESS:捆绑响应中携带的消息属性,表示经过地址转换后的STUN客户端的IP地址和端口。与MAPPED-ADDRESS不同的是,XOR-MAPPED-ADDRESS属性中携带的IP地址经过了异或(XOR)处理。

·     RESPONSE-ORIGIN:捆绑响应中携带的消息属性,表示STUN服务器发送数据的IP地址和端口。

·     OTHER-ADDRESS:捆绑响应中携带的消息属性,表示STUN服务器的另一个IP地址和端口号。假设STUN服务器的IP地址为Y1,替代IP地址为Y2,端口号为YP1,替代端口号为YP2Da表示STUN客户端发送捆绑请求的目的IP地址,Dp表示STUN客户端发送捆绑请求的目的端口号。如果DaY1,那么OTHER-ADDRESS中的IP地址为Y2;如果DaY2,那么OTHER-ADDRESS中的IP地址为Y1。如果DpYP1,那么OTHER-ADDRESS中的端口号为YP2;如果DpYP2,那么OTHER-ADDRESS中的端口号为YP1。当STUN客户端要求STUN服务器使用不同的IP地址发送捆绑响应时,如果DaY1,则捆绑响应报文OTHER-ADDRESS中的IP地址为Y2;如果DaY2,则OTHER-ADDRESS中的IP地址为Y1。类似地,当STUN客户端要求STUN服务器使用不同的端口号发送捆绑响应时,如果DpYP1,那么OTHER-ADDRESS中的端口号为YP2;如果DpYP2,那么OTHER-ADDRESS中的端口号为YP1

3.2.5  STUN工作机制

STUN客户端通过和STUN服务器交互STUN协议报文,探测网络中NAT设备上的NAT映射的类型和NAT过滤的方式,并根据探测结果判断NAT类型。

1. NAT映射类型探测

假设STUN服务器进行STUN探测使用的IP地址为Y1Y2,端口号为YP1YP2STUN客户端的IP地址和端口号为(XXP)。STUN进行NAT映射探测的流程如3-11所示,具体步骤为:

(1)     STUN客户端以EndpointXXP)为源地址和源端口向STUN服务器的外网EndpointY1YP1)发送捆绑请求。STUN服务器使用EndpointY1YP1)给STUN客户端发送捆绑响应,响应内容包括:STUN客户端经过NAT映射后的外网EndpointX1XP1),以及STUN服务器的另一个外网EndpointY2YP2)。

(2)     STUN客户端收到STUN服务器发送的捆绑响应报文后,判断NAT映射后的EndpointX1XP1)是否与内网EndpointXXP)相同:

a.     如果EndpointX1XP1)与EndpointXXP)相同,则SUTN客户端认为不存在NAT映射。

b.     如果EndpointX1XP1)与EndpointXXP)不同,则STUN客户端使用第(3)步进行探测。

(3)     STUN客户端以EndpointXXPSTUN服务器的外网EndpointY2YP1)发送捆绑请求。STUN服务器使用EndpointY2YP1STUN客户端发送捆绑响应,响应内容包括:STUN客户端经过NAT映射后的外网EndpointX2XP2)。

(4)     STUN客户端收到STUN服务器发送的捆绑响应报文后,判断NAT映射后的EndpointX2XP2)是否与第(1)步中NAT映射后的EndpointX1XP1)相同:

a.     如果EndpointX2XP2)与EndpointX1XP1)相同,则STUN客户认为NAT映射类型为EIM

b.     如果EndpointX2XP2)与EndpointX1XP1)不同,则STUN客户端使用第(5)步进行探测。

(5)     STUN客户端以EndpointXXPSTUN服务器的外网EndpointY2YP2)发送捆绑请求。STUN服务器使用EndpointY2YP2STUN客户端发送捆绑响应,响应内容包括:STUN客户端经过NAT映射后的外网EndpointX3XP3)。

(6)     STUN客户端收到STUN服务器发送的捆绑响应报文后,判断NAT映射后的EndpointX3XP3)是否与第(3)步中NAT映射后的EndpointX2XP2)相同:

a.     如果EndpointX3XP3)与EndpointX2XP2)相同,则STUN客户认为NAT映射类型为ADM

b.     如果EndpointX3XP3)与EndpointX2XP2)不同,则STUN客户认为NAT映射类型为APDM

图3-11 NAT映射类型探测流程图

 

2. NAT过滤方式探测

假设STUN服务器的IP地址为Y1,替代IP地址为Y2,端口号为YP1,替代端口号为YP2STUN客户端的IP地址和端口号为(XXP)。STUN进行NAT映射探测的流程如3-12所示,具体步骤为:

(1)     STUN客户端以EndpointXXP)为源地址和源端口向STUN服务器的外网EndpointY1YP1)发送捆绑请求,请求报文中携带CHANGE-REQUEST属性,要求STUN服务器改变IP地址和端口号来发送捆绑响应。STUN服务器使用EndpointY2YP2)向STUN客户端发送捆绑响应。

(2)     STUN客户端根据是否能收到响应报文进行如下判断:

a.     如果STUN客户端收到了捆绑响应报文,则STUN客户端认为NAT过滤类型为EIF

b.     如果STUN客户端未收到捆绑响应报文,则STUN客户端使用第(3)步进行探测。

(3)     STUN客户端以EndpointXXPSTUN服务器的外网EndpointY1YP1)发送捆绑请求,请求报文中携带CHANGE-REQUEST属性,要求STUN服务器改变端口号来发送捆绑响应。STUN服务器使用EndpointY1YP2)给STUN客户端发送捆绑响应。

(4)     STUN客户端根据是否能收到响应报文进行如下判断:

a.     如果STUN客户端收到了捆绑响应报文,则STUN客户端认为NAT过滤类型为ADF

b.     如果STUN客户端未收到捆绑响应报文,则STUN客户端认为NAT过滤类型为APDF

图3-12 NAT过滤方式探测流程图

 

3.2.6  STUN客户端重传机制

STUN基于UDP传输协议报文,STUN协议报文有可能在传输过程中被丢弃。通过STUN客户端的重传机制可以提高STUN协议报文传输的可靠性。具体机制如下:

(1)     STUN客户端发送捆绑请求报文后,如果在一定时间没有收到捆绑响应报文,STUN客户端会以一定的时间间隔重传捆绑请求报文。

(2)     STUN客户端收到捆绑响应报文,或者STUN报文的重传次数达到最大,STUN客户端将停止重传。

(3)     如果STUN客户端重传STUN报文的次数达到最大后,还未收到捆绑响应报文,则STUN客户端认为捆绑请求报文传输失败,无法进行STUN探测。

3.3  穿越NAT建立SDWAN隧道

SDWAN网络中,通常将CPE部署为STUN客户端,将RR部署为STUN服务器。客户端通过与服务器进行报文交互,能够发现网络中是否存在NAT设备,并确定经过NAT设备转换后的IP地址和端口号。STUN客户端探测到转换后的IP地址和端口号后,采用该IP地址与其他CPE建立SDWAN隧道;若CPE之间无法直接建立数据通道,则需要通过在公网中部署Nat transferNAT传输)设备来实现互通。

图3-13 穿越NAT建立SDWAN隧道示意图

 

图3-14 部署Nat transferSDWAN隧道示意图

 

部署Nat transferSDWAN组网如3-14所示。下面以该组网为例,说明穿越NAT建立SDWAN隧道的过程。

3.3.2  控制通道建立

(1)     STUN clientSTUN server之间交互STUN协议报文,STUN client探测到本端NAT类型、Public IP地址(即访问STUN serverNAT转换后的Public IP)和端口号。

(2)     SDWAN clientSDWAN server之间建立SSL连接,然后互相发送TTE信息(包含STUN探测到的NAT类型、Public IP等)。

(3)     CPE 1CPE 2Nat transfer收到RRTTE信息后,比较TTE信息中的路由域与本地是否相同。若路由域相同,则建立到达RRSDWAN隧道,使用RRTTE信息中Public IP作为隧道的目的IP;若路由域不同,则不建立SDWAN隧道。

(4)     RR收到CPE 1CPE 2Nat transferTTE信息后,比较TTE信息中的路由域与本地是否相同。若路由域相同,则分别建立到达CPE 1CPE 2Nat transferSDWAN隧道。

由于NAT transfer部署在公网中,RR只需建立到达Public IP地址的SDWAN隧道。该Public IP地址为Nat transferTTE信息中的Public IP

CPE 1CPE 2TTE信息中NAT类型为完全锥型NAT,则RR建立到达Public IP地址的SDWAN隧道。该Public IP地址为CPETTE信息中的Public IP

CPE 1CPE 2TTE信息中NAT类型为对端口限制锥型NAT、限制锥型NAT或对称NAT,则RR无法通过TTE信息中的Public IP访问CPE 1CPE 2,所以RR无法按照当前获取的信息建立到达CPE 1CPE 2SDWAN隧道。需要按照如下步骤建立SDWAN隧道。

a.     CPE 1CPE 2设备通过CPERRSDWAN隧道周期性地发送SDWAN控制报文。

b.     RR将接收到的SDWAN控制报文的外层源IP地址作为Public IP地址,建立到达CPE 1CPE 2Public IP地址的SDWAN隧道。

(5)     完成SDWAN隧道建立后,CPE 1CPE 2Nat transferRR在设备上添加到达对端Systerm IPUNRUser network route,用户网络路由)路由。路由的出接口为SDWAN隧道接口,下一跳为远端TTE ID

(6)     CPE 1CPE 2Nat transferRR之间基于Systerm IP建立IPv4 Tnl-Encap-Ext地址族下的BGP连接(控制通道)。

3.3.3  数据通道建立

(1)     CPE 1CPE 2Nat transferRR建立BGP连接(控制通道)CPE 1CPE 2Nat transfer通过IPv4 Tnl-encap-ext路由向RR发送TTE信息,由RRTTE信息反射到其他BGP邻居。

(2)     CPE之间能否建立数据通道,除了比较路由域是否相同外,还会比较NAT类型,如3-1所示。

a.     CPE之间可以直接建立数据通道,建立过程请参见步骤3.3.2  (4)

b.     CPE之间无法直接建立数据通道,则需要通过在网络中部署Nat transfer设备来实现互通。CPENat transfer之间建立数据通道,CPE之间的数据转发需要先通过数据通道转发到Nat transfer设备,再由Nat transfer设备通过数据通道转发到其他CPE,从而实现CPE之间的互通。CPENat transfer之间建立数据通道的过程与CPERR之间建立SDWAN隧道的过程相同,具体参见步骤3.3.2  (4)

表3-1 SDWAN网络中的NAT类型组合

CPE 1NAT类型

CPE 2NAT类型

CPE之间是否可以直接建立隧道

是否需要部署Nat transfer实现CPE互通

NAT

完全锥型NAT

×

NAT

端口限制锥型NAT/限制锥型NAT

×

NAT

对称NAT

×

NAT

未知类型NAT

×

NAT

静态NAT

×

完全锥型NAT

完全锥型NAT

×

完全锥型NAT

端口限制锥型NAT/限制锥型NAT

×

完全锥型NAT

对称NAT

×

完全锥型NAT

未知类型NAT

×

完全锥型NAT

静态NAT

×

端口限制锥型NAT/限制锥型NAT

端口限制锥型NAT/限制锥型NAT

×

端口限制锥型NAT/限制锥型NAT

对称NAT

×

端口限制锥型NAT/限制锥型NAT

未知类型NAT

×

端口限制锥型NAT/限制锥型NAT

静态NAT

×

对称NAT

对称NAT

×

对称NAT

未知类型NAT

×

对称NAT

静态NAT

×

未知类型NAT

未知类型NAT

×

 

4 基于SDWAN的智能选路技术实现

4.1  简介

传统的链路优选一般基于链路开销或路由策略,无法根据实际的业务需求选择最适合的链路。RIRResilient Intelligent Routing,智能选路)可以根据不同业务流量的链路需求,如链路质量、链路带宽等,为其选择最适合的链路。如果业务流量当前选择的链路由于链路状态变化而不再符合要求,智能选路还可以自动将流量切换到另一条符合要求的链路上。

4-1所示,智能选路可以应用于SDWAN组网环境。智能选路可以根据链路优先级、链路质量和链路带宽等,在CPE之间为不同业务流量选择不同的SDWAN隧道进行传输。

图4-1 RIR应用于SDWAN场景示意图

 

4.2  业务流量模板

业务流量模板用于为一类业务流量定义选路策略,通过Flow ID标识。

设备可以为标识为Flow ID的业务流量选择其对应的业务流量模板,并基于业务流量模板下配置的选路策略进行选路。

目前支持通过QoS重标记功能为流量标识Flow ID。当接口收到业务流量报文时,设备会根据流量报文五元组区别业务特征,为业务流量标识其相应业务流量模板的Flow ID。该业务流量标识仅在设备选路流程中使用,不会被报文携带出去。

4.3  链路

SDWAN组网中的链路是SDWAN隧道,在两个CPE之间则是一条TTETransport Tunnel Endpoint,传输隧道终结点)连接。每条SDWAN隧道连接一个传输网络,通过传输网络名称可以唯一标识一条SDWAN隧道。智能选路通过SDWAN隧道使用的传输网络名称区分不同的链路。如4-2所示,RR通过TN 1TN 2分别建立了一条到CPESDWAN隧道。

图4-2 SDWAN中的链路

 

4.4  基于链路优先级选路

4.4.1  链路优先级

对于某一业务类型流量,用户可以根据链路特征、业务需求等因素,如链路价格,为其可选链路定义优先级。设备为业务流量选路时,会优先选择优先级较高的链路。

基于SDWAN隧道部署智能选路时,可以在业务流量模板下基于传输网络名称,为SDWAN隧道配置链路优先级。

4.4.2  优先级策略

在同一业务流量模板下可以为不同的链路配置相同的链路优先级。

设备为某业务流量选路时,会按照业务流量模板下配置的链路优先级从高到低的顺序,依次选路:

·     如果该优先级下没有链路符合业务要求,则继续选择次一优先级下的链路。

·     如果该优先级下有且只有一条链路符合业务要求,则选择该链路进行传输。

·     如果该优先级下有两条及以上的链路符合业务要求,则按照智能选路负载分担方式选择链路。

4.5  基于链路质量选路

4.5.1  链路探测机制

智能选路对待选链路进行链路探测,并基于探测结果实现基于链路质量的链路优选。

智能选路定义了两种链路探测:

·     链路通断探测:通过SDWAN keepaliveBFD功能探测每条链路的通断情况。

·     iNQA链路质量探测:通过iNQA功能探测每条链路的时延、抖动和丢包率。

4.5.2  链路通断探测

设备可以通过BFD方式或Keepalive方式检测SDWAN隧道上TTE连接的连通性。当SDWAN隧道上TTE连接出现故障时,设备可以快速检测到故障,以便及时进行相应地处理,如将流量切换到其他TTE连接。

BFD方式通过在SDWAN隧道的所有TTE连接上,周期性地向TTE连接对端发送BFD控制报文,来检测TTE连接的连通性。如果在检测时间内没有收到对端发送的BFD控制报文,则认为本端与对端的TTE连接不可达。

Keepalive方式通过在SDWAN隧道的所有TTE连接上,按照指定的时间间隔向对端发送Keepalive请求报文,来检测TTE连接的连通性:

·     如果本端在发送Keepalive请求报文的时间间隔内收到对端发送的Keepalive应答报文,则认为本端与对端的TTE连接可达。

·     如果本端未在发送Keepalive请求报文的时间间隔内收到对端发送的Keepalive应答报文,则本端会尝试重新发送Keepalive请求报文。若在发送Keepalive请求报文的时间间隔×允许未收到Keepalive应答报文的最大连续次数时间内没有收到Keepalive应答报文,则认为本端与对端的TTE连接不可达,将不再使用该TTE连接转发报文。

4.5.3  iNQA链路质量探测

1. iNQA简介

iNQAIntelligent Network Quality Analyzer,智能网络质量分析)是一种适用于大规模IP网络、可快速测量网络性能的检测机制。iNQA目前支持丢包测量,可测量正向、反向以及双向的丢包情况(包括丢失的报文数、报文的丢失率、丢失的字节数、字节的丢失率),利用测量结果可快速定位丢包时间、丢包位置、丢包严重程度。

SDWAN网络中,基于每个TTE连接启动iNQA测量实例,探测TTE连接的丢包率、时延和抖动。

2. 基本概念

4-3所示为iNQA网络模型,其中包含以下重要概念:MPMeasurement Point,测量点)、Collector(采集器)、Analyzer(分析器)和AMSAtomic Measurement Span,原子测量段)等。

图4-3 iNQA网络模型示意图

 

·     Collector负责管理和控制MP,周期性收集MP产生的统计数据并上报给Analyzer

·     Analyzer负责收集Collector上送的统计数据并完成数据的汇总和计算。

·     目标流:指的是iNQA统计的目标对象,是网络中符合指定匹配规则的业务报文流。用户可通过源IP地址/网段、目的IP地址/网段、协议类型、源端口号、目的端口号和DSCP参数来定义一条目标流。这些参数可以任意组合来匹配业务报文。指定的参数越多,目标流就越精准。

·     MP:是一个逻辑的概念,在iNQA统计系统中负责测量动作的执行和测量数据的产生,是目标流的实际测量点。MP需要和Collector上的接口绑定,完成对接口收发报文丢包情况的测量。MP包含两种属性:

¡     MP类型:包括In-pointOut-pointMid-point

-     In-point:表示目标流进入某一网络区域时的入口测量点。

-     Out-point:表示目标流离开网络区域时的出口测量点。

-     Mid-point:表示目标流传输路径的中间测量点。

¡     报文方向:包括InboundOutbound,主要用于指定要统计的对象。当需要统计进入接口的报文数量时,指定为Inbound属性;当需要统计离开接口的报文数量时,指定为Outbound属性。

·     AMS:配置在Analyzer上,用于定义一个测量区段。通过AMS可以实现逐段排查丢包位置。一个实例下配置多个AMS,每个AMS和这个实例下的任意Collector上的MP绑定,可以实现任意一段网络区间正向、反向或者双向流的数据的汇总和计算。

AMS包含入MP组(In-group)和出MP组(Out-group)。入MP组是这段AMS上流量的入MP的集合,出MP组是这段AMS上流量的出MP的集合。

·     实例:在实际网络中,经常需要在同一台设备上测量多条目标流的丢包率。iNQA通过实例来实现不同目标流丢包率的独立测量和统计。

实例是一个逻辑概念,是iNQA的最小配置单元。实例中可以指定目标流、测量方向、测量位置、测量周期等参数,用于实现对指定目标流丢包情况的测量和统计。一个实例下绑定一条目标流,在CollectorAnalyzer上分别创建相同编号的实例,可以测量和统计该目标流的丢包情况。配置多个实例,绑定不同的目标流,可以同时测量和统计多种目标流的丢包情况。

·     染色位:又叫特征标识位,它能够对目标流进行周期性地标识,以达到对目标流进行周期性采样、统计的目的。iNQA使用IPv4报文头中ToSType of Service,服务类型)字段的57位作为染色位。

3. 工作机制

iNQA是一个多点收集、单点计算的模型,Collector(多个)按周期收集和上报报文计数,Analyzer(单个)按周期汇总和计算测量数据。

iNQA以时间同步为基础。在测量开始前,要求所有Collector时间已经同步,从而确保各个Collector能够基于相同的周期进行报文染色、上报、统计。如果时间不同步,会导致iNQA计算结果不准确。AnalyzerCollector的时间同步与否不影响计算结果,但为了便于管理和维护,建议Analyzer和所有Collector的时间均保持同步。iNQA使用NTPNetwork Time Protocol,网络时间协议)或者PTPPrecision Time Protocol,精确时间协议)协议进行时间同步。

4. 丢包率

iNQA丢包计算依据报文守恒原理,即一段时间(多个周期)内、一个网络的入报文数量和出报文数量应该相等。如果不相等,则说明网络内存在丢包现象。

4-4所示组网为例,目标流经过网络中的三台设备,在这三台设备上部署CollectorNTP客户端,在汇聚设备上部署AnalyzerNTP服务器,测量流量从MP 100进入、途径MP 200的时候是否存在丢包,以及从MP 300流出时是否存在丢包。

iNQA的工作流程如下:

(1)     Analyzer和所有Collector之间通过NTPNetwork Time Protocol,网络时间协议)协议完成时间的同步。

(2)     Collector 1在报文入MP上根据匹配规则,从业务流中筛选出目标流,对报文进行一个周期染色一个周期不染色的交替动作,同时按周期对报文计数并上报给Analyzer

(3)     Collector 2在中间MP上根据匹配规则,从业务流中筛选出目标流,按周期对报文计数并上报给Analyzer

(4)     Collector 3在报文出MP上根据匹配规则,从业务流中筛选出目标流,对染色报文进行去染色操作,按周期对报文计数并上报给Analyzer

(5)     Analyzer对相同周期、相同实例、相同流量进行丢包分析,计算丢失的报文数、报文的丢失率、丢失的字节数、字节的丢失率。

丢失的报文数=入口总报文个数-出口总报文个数

报文的丢失率=丢失的报文数/入口总报文个数

丢失的字节数=入口总字节数-出口总字节数

字节的丢失率=丢失的字节数/入口总字节数

¡     MP 100收到的报文计数减去MP 300收到的报文计数为网络入口到出口的丢包情况。

¡     MP 100收到的报文计数减去MP 200收到的报文计数为AMS 1的丢包情况。

¡     MP 200收到的报文计数减去MP 300收到的报文计数为AMS 2的丢包情况。

图4-4 iNQA工作流程示意图

 

5. 时延&抖动检测

4-4所示组网为例,Collector 1通过对周期内的首个报文进行时延染色并记录发送时戳SndTime 1Collector 2识别时延染色报文记录接收时戳RcvTime 2和发送时戳SndTime 2Collector 3识别时延染色报文记录接收时戳RcvTime 3和发送时戳SndTime 3,此周期网络时延Delay=RcvTime 2+RcvTime 3-SndTime 1-SndTime 2

4.5.4  质量评估机制和质量策略

1. SLA

SLAService Level Agreement,服务等级协议)用来区分不同业务对链路质量的差异化需求。SLA中定义了用于评估链路质量的各类阈值,包括延迟、抖动、丢包率等。智能选路基于SLA实现业务流量的质量策略,即用户可以为不同的业务流量指定具有不同SLA要求的质量策略。

2. 质量评估

RIR根据CQIComprehensive Quality Indicator,综合质量指标)算法评估各链路的质量优劣。CQI算法的工作机制如下:

(1)     当通过iNQA探测到的单项质量(时延、时延抖动或丢包率)探测结果低于或等于SLA下相应的质量阈值时,认为单项CQI值为100

(2)     当单项质量探测结果高于SLA下相应的质量阈值时,单项CQI值(时延CQIDs时延抖动CQIJs或丢包率CQILs=(单项阈值 * 100/单项质量探测结果。

(3)     综合质量CQI=x* Ds+ y*Js + z* Ls/x + y + z其中xyz分别为时延、时延抖动和丢包率的权重(取值范围为010,且不可以全为0

为避免链路频繁切换,设备选路时使用综合质量近似CQI值来评估链路优劣。综合质量近似CQI值为不大于综合质量CQI值的最大的5的倍数。例如,如果综合质量CQI值为82.5,则综合质量近似CQI值为80

3. 质量策略

CPE基于链路质量为业务流量选路时,如果为该业务流量指定了质量策略,则CPE会根据链路探测和SLA计算综合质量近似CQI值,并基于该值进行选路。对于某一业务流量的待选链路:

·     如果链路的综合质量近似CQI值小于100,则认为该链路不符合业务质量要求。

·     如果链路的综合质量近似CQI值等于100,则认为该链路符合业务质量要求。

如果没有为该业务流量指定质量策略,则选路时不考虑链路质量因素,直接认为链路质量符合业务质量要求。

4.6  基于链路带宽选路

通过基于链路带宽选路,不仅可以为业务流量选择带宽符合要求的链路,还可以均衡地使用各链路带宽,尽量避免出现个别链路带宽占用过高,甚至链路拥塞的情况。

4.6.1  链路带宽

基于链路带宽选路时,设备会根据可选链路和所属物理接口的已使用带宽、链路总带宽以及会话预计使用的带宽等多个方面为业务流量选择合适的链路。链路带宽是Tunnel接口带宽,而链路所属物理接口带宽则是发送隧道报文的物理出接口带宽。

同时,设备以会话为最小粒度,而非业务类型,进行基于链路带宽的选路,以实现更精细的链路带宽管理。会话通过五元组唯一定义,报文的源IP地址、目的IP地址、源端口、目的端口以及传输层协议中任一元素不同,则属于不同的会话。

4.6.2  带宽策略

为某个会话的流量进行智能选路时,设备会实时获取会话预计使用的带宽,并基于获取的带宽进行带宽检测;如果获取不到,则采用手工配置的会话预计使用的带宽进行带宽检测。如果同时满足以下条件,则认为待选链路当前可用带宽符合会话带宽要求,带宽检测通过:

·     待选链路所属物理接口的已使用带宽与会话预计使用的带宽之和小于待选链路所属物理接口总带宽的80%

·     待选链路已使用带宽与会话预计使用的带宽之和小于待选链路总带宽的80%

属于相同业务类型的不同会话使用同一选路策略时,选路结果可能不同。

4.7  负载分担

当某一业务流量存在多条链路可选时,设备会基于链路带宽将业务流量的不同会话分布到多条链路上传输,以实现链路的负载分担。智能选路支持多种链路负载分担模式,包括:

·     逐流加权选路模式:RIR全局级的链路负载分担模式,对参与智能选路的所有业务流量生效。该模式可以按照一定权重将同一业务流量的不同会话分布到不同链路上进行传输,一个会话只选择一条链路进行传输。

·     逐流周期调整模式:RIR全局级的链路负载分担模式,对参与智能选路的所有业务流量生效。该模式不但可以将同一业务流量的不同会话分布到不同链路上进行传输,而且会进行周期性地调整。在一个调整周期内,一个会话只选择一条链路进行传输。

·     逐包模式:业务级的链路负载分担模式,只对参与智能选路的指定业务流量生效。该模式可以将指定业务流量的同一会话分布到多条链路上进行传输。

逐包链路负载分担模式的优先级高于逐流链路负载分担模式。

4.8  智能选路机制

4.8.1  选路机制总述

设备收到报文后,首先根据五元组对业务流量进行分类,并通过QoS功能重标记Flow ID。然后设备会在路由表中查询是否存在可转发路由,若存在则进入智能选路流程,否则丢弃报文。

进入智能选路流程后,选路过程大致为:

(1)     设备根据报文携带的Flow ID选择业务流量模板。

(2)     在业务流量模板配置的链路中选择最优链路,依次进行:

a.     链路优先级选路

b.     质量勉强选路

c.     带宽勉强选路

(3)     如果在任一类型选路中找到最优链路,则返回选路结果,剩余类型的选路不再进行;否则,继续进行下一类型选路。如果所有类型的选路都没有找到最优链路,则认为没有最优链路,并返回选路结果。

(4)     设备根据返回的选路结果决定业务流量如何转发。如果找到最优链路,则选择该链路进行报文传输;如果没有找到,则按原路由表项进行普通转发。

完成第一次选路后,后续收到的相同业务流量按照第一次选路结果进行转发。

图4-5 智能选路流程总图

 

4.8.2  链路优先级选路

智能选路会优先为业务流量选择质量和带宽均满足业务要求的链路,这一选路过程称为链路优先级选路。链路优先级选路过程如4-6所示,设备会按照从高到低的顺序遍历业务流量模板下的所有优先级,对于当前优先级:

(1)     设备会遍历优先级下的所有链路,判断链路是否为等价路径之一:

¡     如果链路是等价路径之一,则继续判断该链路是否为链路带宽和质量均符合业务要求的主用链路。如果是,则将该链路计入当前优先级可选链路;否则,继续判断该链路是否为链路带宽符合要求的链路:

-     如果是,则将该链路计入质量勉强选路可选链路,并继续判断当前优先级下的其他链路。

-     如果不是,则继续判断当前优先级下的其他链路。

¡     如果链路不是等价路径之一,继续判断当前优先级下的其他链路。

(2)     当遍历完当前优先级下的所有链路后,设备会确认业务流量在当前优先级下有几条可选链路:

¡     如果只有一条可选链路,则直接选择该链路为最优链路。

¡     如果有多条可选链路,则根据链路负载分担模式选择一条或多条链路作为最优链路。业务报文在逐流链路负载分担模式下,只会选择一条链路作为最优链路;在逐包链路负载分担模式下会选择多条链路作为最优链路。

¡     如果没有可选链路,则继续遍历下一优先级下的链路。

(3)     如果所有优先级下均无可选链路,则认为链路优先级选路没有为该业务流量找到最优链路。

关于如何判断链路质量是否符合要求,请参见“4.5.4  质量评估机制和质量策略”。关于如何判断链路带宽是否符合要求,请参见“4.6.2  带宽策略”。

图4-6 链路优先级选路流程图

 

4.8.3  质量勉强选路

当链路优先级选路未找到最优链路时,设备进行质量勉强选路。

质量勉强选路的对象为链路优先级选路过程中,计入质量勉强选路可选链路的所有链路。这些链路的链路质量不满足业务要求,但链路带宽满足业务要求。质量勉强选路即是在没有链路质量满足业务要求时,勉强为业务流量选择一条带宽满足业务要求的链路。

为业务流量进行质量勉强选路时,首先选择待选链路中综合质量近似CQI值最高的链路,如果存在多条综合质量近似CQI值相同的可选链路,则根据链路负载分担模式选择一条或者多条链路作为最优链路。

4.8.4  带宽勉强选路

如果质量勉强选路仍未找到最优链路,即所有等价路径的链路带宽均不满足业务要求,设备进行带宽勉强选路。带宽勉强选路会在业务流量模板下属于等价路径之一的链路中,勉强为业务选择一条链路作为最优链路。

为业务流量进行带宽勉强选路时,如果存在多条可选链路,设备会根据链路负载分担模式选择一条或者多条链路作为最优链路。

4.9  选路延迟和选路抑制

为提高报文转发效率,业务流量完成第一次智能选路后,后续相同业务的流量均按照第一次选路结果进行转发。当业务流量模板中的任一链路发生如下任一变化时,设备会重新选路:

·     链路质量由满足业务质量要求变为不满足业务质量要求或由不满足业务质量要求变为满足业务质量要求。

·     链路已使用带宽达到该链路最大带宽的90%,或者链路所属的物理接口已使用带宽达到所属物理接口最大带宽的90%

为避免链路震荡时设备频繁选路,智能选路定义了选路延迟时间和选路抑制周期。

设备执行一次选路后,如果配置了选路抑制周期,则会进入选路抑制周期。设备在选路抑制周期内不会重新选路,但会一直维护链路状态数据。当选路抑制周期结束后,如果设备链路状态满足重新选路条件,并在周期结束后的选路延迟时间内一直满足该条件,设备在选路延迟时间超时后重新选路。如果选路延迟时间内设备链路状态变为不满足重新选路条件,设备不会重新选路。

5 SaaS路径优化技术实现

通过SaaS路径优化功能,设备可以为访问SaaS应用的流量选择最优路径,并能够根据路径质量的变化进行调整。

5.1  SaaS应用

5.1.1  SaaS应用简介

SaaS应用分为定制SaaS应用和非定制SaaS应用。定制SaaS应用一般是常用的SaaS应用,由系统预先定义;非定制SaaS应用则是用户根据实际需求配置的SaaS应用。

5.1.2  SaaS应用访问方式

设备访问SaaS应用有直接访问、通过网关访问(间接访问)和混合模式三种方式。

1. 直接访问

5-1所示,设备通过本地接口直接访问SaaS应用,并基于本地直接访问SaaS应用的路径质量进行SaaS路径优化。

图5-1 直接访问方式示意图

 

2. 通过网关访问

5-2所示,设备作为客户端,通过网关间接访问SaaS应用,并基于间接访问SaaS应用的路径质量进行SaaS路径优化。

图5-2 通过网关访问方式示意图

 

3. 混合模式

在混合方式下,设备可以直接访问SaaS应用,也可以通过网关访问SaaS应用。设备进行SaaS路径优化时,会根据设备直接访问SaaS应用的路径质量和间接访问SaaS应用的路径质量,从中选择最优路径。

5.2  SaaS路径质量探测与评估

5.2.1  SaaS路径质量探测

1. 健康监测URL

设备进行指定SaaS应用的路径优化时,会探测通过健康监测URL访问该SaaS应用的路径质量,并根据质量探测结果为访问该SaaS应用的流量选择最优路径。

非定制SaaS应用的健康监测URL通过手工配置。定制SaaS应用的健康监测URL由系统缺省配置,不可以修改。

2. 探测机制

设备直接访问SaaS应用,或者作为其他设备访问SaaS应用的网关设备时,会以30秒为周期探测接口(手工配置的直接访问SaaS应用的接口)通过健康监测URL直接访问SaaS应用的路径质量。

间接访问路径由客户端与网关之间的SDWAN隧道和网关访问SaaS应用的路径组成。设备会通过RIR-SDWAN服务的质量探测机制探测SDWAN隧道质量,并收集网关通告的网关访问SaaS应用的最优路径质量(网关站点中的CPE通过BGP IPv4 Tnl-encap-ext路由向RR发送SaaS路径质量信息,然后由RR反射给其他CPE),以得出间接访问路径质量。

5.2.2  SaaS路径质量评估

1. CQI

设备进行指定SaaS应用的路径优化时,会探测访问该SaaS应用的路径质量,并根据质量探测结果和质量(时延、时延抖动和丢包率)期望值,使用CQI算法进行路径质量的评估。

CQI算法的工作机制如下:

(1)     当单项质量(时延、时延抖动或丢包率)探测结果满足访问SaaS应用的期望质量时,认为单项CQI值为100

(2)     当单项质量探测结果不满足访问SaaS应用的期望质量时,单项CQI值(时延CQIDs时延抖动CQIJs或丢包率CQILs=(单项期望值 * 100/单项质量探测结果。

(3)     综合质量CQI=x* Ds+ y*Js + z* Ls/x + y + z其中xyz分别为时延、时延抖动和丢包率的权重(取值范围为010,且不可以全为0

2. 评估机制

为了评估设备访问SaaS应用的路径质量,首先需要获得路径的综合质量CQI值。

·     当评估设备直接访问SaaS应用的路径质量时,可以基于设备本地接口探测的路径质量得出路径综合质量CQI值。

·     当评估设备间接访问(通过网关访问)SaaS应用的路径质量时,可以基于网关本地接口探测的路径质量得出网关直接访问SaaS应用的路径综合质量CQI值,再基于RIR-SDWAN服务的质量探测机制探测的SDWAN隧道质量得出设备到网关的路径综合质量CQI。设备通过网关访问SaaS应用的路径综合质量CQI值为前两者的平均值。

为避免链路频繁切换,设备使用综合质量近似CQI值评估链路优劣。综合质量近似CQI值为不大于综合质量CQI值的最大的5的倍数。例如,如果设备间接访问SaaS应用的路径综合质量CQI值为82.5,则综合质量近似CQI值为80。根据路径综合质量近似CQI值,设备为路径划分色区。其中:

·     综合质量近似CQI80100的路径属于绿区。

·     综合质量近似CQI5580的路径属于黄区。

·     综合质量近似CQI050的路径属于红区。

3. 根据CQI值选择最优路径

设备为访问SaaS应用的流量选择最优路径时,首先按照绿、黄、红的顺序选择最优色区,然后在最优色区中选择最优路径。如果最优色区中只有一条路径,则选择该路径作为最优路径;如果最优色区中有多条路径,则随机选择一条路径作为最优路径。

5.3  SaaS路径优化机制

5.3.1  使用动态获取的IP地址访问SaaS应用的路径优化

用户一般基于SaaS应用的URL,通过DNS请求动态获取SaaS应用的IP地址,以访问该SaaS应用。设备收到访问该SaaS应用的DNS请求报文(DNS请求报文中的URLSaaS应用实例的URL)时,会按照如下步骤进行SaaS路径优化:

(1)     根据CQI算法评估的访问SaaS应用的路径质量选择最优路径。

(2)     通过最优路径转发DNS请求报文。

(3)     将收到的DNS应答报文中的IP地址与最优路径关联,并记录为最优路径信息表项。

(4)     DNS应答报文发送给用户。

(5)     用户使用DNS应答报文中的IP地址访问SaaS应用。

(6)     设备接收到用户发送的报文后,根据报文的目的IP地址查找匹配的最优路径信息表项,以便通过记录的最优路径转发访问SaaS应用的报文。

5.3.2  使用静态IP地址访问SaaS应用的路径优化

系统在定制SaaS应用中预先定义了该应用的IP地址(即静态IP地址)。用户访问定制SaaS应用时可以使用静态IP地址。

当设备收到以定制SaaS应用的静态IP地址作为目的IP地址的业务报文时,如果不存在该静态IP地址对应的最优路径信息表项,则会根据静态IP地址所属SaaS应用的路径质量,为该业务报文选择最优路径进行转发,并将静态IP地址与最优路径关联,记录为最优路径信息表项。设备根据最优路径信息表项转发后续收到的、以静态IP地址作为目的IP地址的报文。

5.3.3  最优路径信息表项的老化

最优路径信息表项经过一定时间将会被老化。对于为动态IP地址建立的最优路径信息表项,当通过DNS解析到的IP地址失效时间达到两分钟时,最优路径信息表项也会被老化。

6 典型组网应用

6.1  总部分支扁平化组网

6-1所示,总部与分支、分支与分支之间通过SDWAN隧道互通。为了避免CPE设备的单点故障造成报文转发中断,总部通常采用VRRP等技术部署双CPE。可以通过控制器部署CPE设备,以简化网络部署难度。站点之间SDWAN隧道支持MPLS L3VPN专线、MSTPInternet4G/5G等丰富的链路类型。

图6-1 总部分支扁平化组网示意图

 

6.2  多总部分支扁平化组网

6-2所示,在多总部的组网中,总部与总部、总部与分支、分支与分支之间通过SDWAN隧道互通。为了避免CPE设备的单点故障造成报文转发中断,总部通常采用VRRP等技术部署双CPE。站点之间SDWAN隧道支持MPLS L3VPN专线、MSTPInternet4G/5G等丰富的链路类型。

图6-2 多总部分支扁平化组网示意图

 

6.3  分层组网

6-3所示,此组网一般用于大型企业网中存在区域汇聚的场景中。按照分支与汇聚层之间部署专线、汇聚层与总部之间部署专线的方式分层组网可以节省跨省专线成本。站点之间SDWAN隧道支持MPLS L3VPN专线、MSTPInternet4G/5G等丰富的链路类型。

图6-3 分层组网示意图

 

6.4  云管理组网

6-4所示,此组网适用于中小运营商。运营商提供SDWAN运维管理服务和用户侧CPE设备租用服务,且提供统一的控制器为多个企业提供SDWAN服务。企业作为租户,租用运营商提供的SDWAN服务(自购/租用设备+SDWAN软件),企业租户可以管控本企业范围内所有站点的SDWAN业务,但是无法看到其他租户的业务。

图6-4 云管理组网示意图

 

6.5  运营商POP点组网

·     在运营商/MSPManaged Service Provider,托管服务提供商)的骨干网边缘部署POPPoint Of Presence,网络服务提供点),在POP点里部署SDWAN服务以接入企业站点。POP点网关之间基于骨干网实现overlay互联,不同地域的POP点之间组成一个POP骨干网络。

·     通过SDN控制器和因特网链路或本地低成本专线,在企业分支站点CPEPOP点网关间部署SDWAN隧道,从而将企业分支站点的流量引入运营商POP点网络,借助跨地域互联的POP骨干网络,实现跨地域站点之间的低成本高品质互联。

·     运营商通过将POP点网络与SDWAN技术结合,为跨域跨国访问用户提供了一种优质、低价、可快速部署、有保障的新类型的“广域网”和运营级的SDWAN服务。

图6-5 运营商POP点组网示意图

 

6.6  运营商POP点分层组网

6-6所示,此组网一般用于跨国或跨地区POP组网场景中。运营商POP点按地域分隔成不同区域,不同区域的POP点网关需通过专门的区域互通POP网关才能互通。

图6-6 运营商POP点分层组网示意图

 

7 参考文献

·     RFC 7348Virtual eXtensible Local Area Network (VXLAN): A Framework for Overlaying Virtualized Layer 2 Networks over Layer 3 Networks

·     RFC 4301Security Architecture for the Internet Protocol.

·     RFC 4303IP Encapsulating Security Payload

·     RFC 4271A Border Gateway Protocol 4 (BGP-4)

·     RFC 4760Multiprotocol Extensions for BGP-4

·     draft-dunbar-idr-sdwan-port-safi

·     draft-ietf-idr-sdwan-edge-discovery/00

·     draft-dunbar-bess-bgp-sdwan-usage

新华三官网
联系我们