目录
SDN对网络的影响——以下讲解主要为SDN+SR-MPLS的网络部署方式
传统IP/MPLS网络出现问题
LDP: 标签分发协议
优点:
为了解决IP网络依靠路由转发时每一条都要查询路由表的问题;MPLS通过LDP协议来为网段分配标签,建立标签转发表,通过分发标签来代替三层路由转发,提升转发效率
缺点:
状态化信息(同步、算路),LDP的LSP无法控路(通过IGP选路)
路由黑洞问题,LDP与IGP无法同步的问题(可以让IGP等LDP收敛)
初始路径: A→B→E→F
当B到E之间的链路发生故障时,IGP收敛完成后,需要等待LDP协议收敛分发标签,再等段的这段时间,LDP就无法分发新的标签,就相当于停运了,出现瞬间丢包行为,造成路由黑洞
MSTP-TE:流量工程协议
通过MPLS TE,可以建立基于一定的约束条件的MPLS隧道,并将流量引入到隧道中进行转发,解决LDP无法控路的问题
使得特定的网络流量按照指定的路径进行传输,达到优化流量的目的
通过RSVP-TE协议来实现标签建立过程:
发送PATH,从头端到尾端
尾端回复RESV
每个路由器都会维护大量表项,整个路径的带宽、目的地这些每个路由器都知道
优点:
只用压一层标签,所有设备都知道这个标签是谁的
为了解决LDP不支持流量工程的问题,MPLS中引入了RSVP-TE控制面
传统路由是依据目的IP进行查找转发,且只关心下一跳怎么走,而并不关心流量的完整路径
而RSVP-TE隧道技术引入了源路由的概念:
当流量进入RSVP网络后,在源节点就会计算出完整的每一条条径(显式路径)。
收集了整网拓扑和链路状态信息,根据业务灵活选择路径,实现带宽资源预留
缺点:不能完全适应在大型广域网
1.状态维护消耗性能
2.配置极其复杂 (配单点通都要配置20条命令左右)
RSVP信令非常复杂,每个节点都需要维护一个庞大的链路信息数据库
3.可扩展性差
为了准确预留带宽,RSVP-TE要求所有IP流量都需要通过隧道转发,节点之间建立Full-mesh隧道导致扩展性差,大规模部署几无可能
4.RSTP-TE对ECMP的支持并不好(等价多路径)
从源路由的机制我们可以看到,RSVP-TE只会选择一条最优路径进行转发。如果想要实现流量分担,还需要在相同的源和目的之间预先建立多条隧道。
SDN对网络的影响——以下讲解主要为SDN+SR-MPLS的网络部署方式
传统MPLS是分布式架构
每台设备只可以看到自己的状态
如果需要知道邻居状态,就必须依靠大量指令去实现(例如:RSVP-TE、LDP等)
所以引出了集中式架构-SDN——控制器
统一进行路径计算和标签分发
SR技术分类
以下内容只是简要概括,详解请看后续文章
广域网技术——SR-MPLS技术基础理论讲解_静下心来敲木鱼的博客-CSDN博客
广域网技术——SRv6 SID讲解_静下心来敲木鱼的博客-CSDN博客
广域网技术——SRv6隧道类型及数据转发_静下心来敲木鱼的博客-CSDN博客
SR控制与转发平面
主要分为SR-MPLS和SRV6两种技术
控制平面:
SR-MPLS和SRV6都是基于IGP/BGP路由协议扩展实现
数据转发平面:
SR体系结构并不基于特定的数据平面实现,可以基于MPLS,也可以基于IPv6
1.MPLS转发平面(上述所说的SR都是MPLS转发平面下的)
此平面的Segment称为 SR-MPLS,其中SID为MPLS标签,为段分配SID
2.IPv6转发平面
此平面的Segment称为 SRv6,其中SID为IPV6地址,为段分配SID
SR关键点:
网络路径分段
段‘的含义:
1.网络节点 可以是路由器、交换机、防火墙
2.链路
为段分配SID
1.邻接SID:链路的SID
2.前缀SID:一个地址段的SID(一个网络节点的SID)
3.节点SID:loopback 地址(设备本身)
SR-MPLS隧道建立方式:
SR-TE:
1.手动配置:适合网络规模比较小的网络,不需要控制器的配合,但是不支持带宽预留等。
2.头节点使用CSPF算法,支持带宽的预留。但是这种形式只是站在局部视角角度计算最优路径,无法做到全局最优
3.控制器算路(引出了SDN,通过SDN进行算路)----接下来主要讲解的就是此种方式
SR-BE:
通过扩展IGP协议将标签在IGP域中扩散,动态生成的隧道。
SR-MPLS隧道类型:
SR-TE:
使用多个SID组合来实现一条转发路由
SID组合方式:
1.使用多个邻接SID(Adjacency SID)
(严格路径,指定一条严格的路径,就走这条路)
2.多用多个前缀SID(Node SID)
(松散路径,自己通过IGP计算到节点SID有几条路,然后选择最优的)
3.可以两个组合
SR-BE:
使用一个SID来指导设备进行最短路径转发
SR-BE本质是实现传统IGP和LDP的最短路径转发。
如果中间存在多个等价路径,也可以实现业务流量的负载分担。
控制器算路
工作大致原理
SR由业务驱动网络,即由业务来定义网络的架构(不同业务对网络有不同的要求,控制器收集网络拓扑、带宽利用率、时延等信息,根据业务的需求计算出显式路径)
SDN控制器在在源头位置对Segment组合(在报文头部添加带顺序的Segment列表),提前确定整个出行规则,以指示接收到这个数据包的节点怎么去处理和转发该数据包。(中间节点并不感知和维护链路)
通过SDN控制下发指令(标签)给头节点,规划路径
所以只有SDN控制器知道整个网络路径的情况,其它网络节点不知道
控制器算路工作步骤:
a- 在转发器上(不是白盒交换机)配置IGP和SR,由IGP完成拓扑发现和标签生成;
b- 转发器使用BGP LS将拓扑信息和标签信息上报给控制器(BGP-LS传递链路状态);
c- 控制器完成路径计算,通过BGP SR Policy/PCEP下发路径(根据业务提出的网络需求下发不同的网络路径);
控制器算路辅助协议讲解
BGP LS——转发器汇总IGP协议收集的拓扑信息上送给上层控制器。
优势:
1.降低对上层控制器计算能力的要求,且不再对控制器的IGP能力有要求;
2.BGP协议将各个进程或各个AS的拓扑信息做汇总,直接将完整的拓扑信息上送给控制器,有利于路径选择和计算;
3.网络中所有拓扑信息均通过BGP协议上送控制器,使拓扑上送协议归一化。
Netconf——下发设备配置
PCEP——下发控制器计算出来的显式路径
把路径计算的控制逻辑从转发设备中抽离到远端,实现了部分数据平面和控制平面的分离。
专门让SDN控制器算路,其它网元都不用管。
将Netconf和PCEP协议结合使用实现SDN网络和传统网络的统一管理和调度
BGP SR Policy——下发控制器计算出来的显式路径
后续下发隧道等不使用PCEP了,而是使用BGP SR Policy来下发了
BGP不只是可以传递路由,还可以传递链路状态(拓扑)、标签等信息
控制器算路的优势:
1.控制器支持带宽计算和资源预留,可以站在全局的视角计算最优路径
2.控制器可以和网络中的应用进行配合,实现应用驱动网络 (根据应用的需求来选择网络路径)
SDN控制器根据应用需求下发不同SID
3.控制器下发隧道配置使无需大量的手工配置,更适合大规模网络,方便运维