网络工程师学习日记-11

一、 SR概述

1. SR简介:

段路由SR(Segment Routing)是基于源路由理念而设计的在网络上转发数据包的一种技术架构。

本文档介绍了Segment Routing的源路由机制、Segment定义、SR-      MPLS与SRv6区别和基于华为NetEngine系列路由器的SR-MPLS场景化应用。

2. MPLS LDP与RSVP-TE存在的问题

MPLS LDP如下:

(1)LDP本身并无算路能力,需依赖IGP进行路径计算。

(2)控制面需要iGP及LDP,设备之间需委发送大量的消息交维持。

(3)邻属关系及路径状态,浪费了链路带亮及设备资源。

(4)若LDP与IGP未同步,则可能出现数察转发问题。

RSVP-TE如下:

(1)RSVP-TE的配置复杂,不支持负裁分担。

(2)为了实现TE。设备之间需要发送大量RSVP报文来维持邻居关系及路径状态,浪费了链路带及设备资源。

(3)RSVP-TE本质上是分布式架构,每台设备只知道自己的状态,设备之间需要交互信令授文。

本质上MPLS仅是指导数据转发的腿道技术,有完整的隧道创建、隧道管理和维护机制。以上机制都是从网络运营和管理角度驱动的需求,不是由应用驱动网络需求。

3. SR概述:

(1)SR 是基于源路由理念而设计的在网络上转发数据包的一种架构。

(2)SR将网络路径分成一个个段,并且为这些段和网络中的转发节点分配段标识ID。通过对段和网络节点进行有序排列 (SegmentList),就可以得到一条转发路径。

(3)SR将代表转发路径的段序列编码在数据包头部,随数据包传输。接收端收到数据包后,对段序列进行解析,如果段序列的顶部段标识是本节点时,则弹出该标识,然后进行下一步处理;如果不是本节点,则使用ECMP方式将数据包转发到下一节点。

(4)SR具有如下特点:

   a)通过对现有协议(例如IGP)进行扩展,能使现有网络更好的平滑演进。

   b)同时支持控制器的集中控制模式和转发器的分布控制模式,提供集中控制和分布控制之间的平衡。

   c)采用源路由技术,提供网络和上层应用快速交互的能力。

4. SR的优势:

(1)简化MPLS网路控制平面:

  a)SR使用控制器或者1GP集中算路和分发标签,不再需要RSVPTE、LDP等隧道协议。

  b)SR可以直接应用于MPLS架构,转发平面没有变化。

(2)高效TI-LFA保护实现路径故障快速恢复:

  a)在SR技术的基础上结合TI-LFA FRR算法,形成高效的TLFA算法。 

  b)TILA FRR支持任意拓扑的节点和链路保护,能够弥补传统越道保护技术的不足。

(3)SR具有网络容量扩展能力

  a)传统MPLSTE是一种面向连接的技术,为了维护连接状态,节点间需要发送和处理大量Keepalive报文,设备控制层面压力大。

  b)SR仅在头节点对报文进行标签提作即可任像控制业务路径,中间节点不需要维护路径信息,设备控制层面压力小。此外,SR技术的标签数量是: 全网节点数+本地邻接数,只和网络规模相关,与隧道数量和业务规模无关。

(4)更好的向SDN网络平滑演进:

  a)SR技术基于源路由理今而设计,遇过源节点即可控制数据包在网络中的转发路径。

  b)配合集中算路模块,即可灵活简便地实现路径控制与调整。

  c)SR同时支持传统网络和SDN网络,黄容现有设备,保障现有网络平滑演进到SDN网络。

二、SR技术原理

1. 基本概念

segment是节点针对所收到的数据包要执行的指令,该指令包含在数据包头部中。

指令1:沿着最短路径到达R4 (支持ECMP)

指令2: 沿着R4的GE0/0/2接口转发数据包

指令3:沿着最短路径到达R8

2. Segment ID

SID用于标识Segment,它的格式取决于具体的技术实现,例如可以使用MPLS标签、MPLS标签空间中的索引、IPv6地址。

Segment List是一个或多个SID构成的有序列表。

指令1(400):沿着支持ECMP的最短路径到达R4

指令2(1046):沿着R4的GEO/0/2接口转发数据包

指令3(800):沿着支持ECMP的最短路径到达R8

3. 源路由

源路由 (Source Routing):源节点选择一条路径并在报文中压入一个有序的segment List,网络中的其他节点按照报文封装的segment List进行转发。

4. SR分类

SR分类

说明

Prefix Segment(前缀段)

用于标识网络中的某个目的地址前缀

生成方式:手工配置

通过IGP协议扩散到其他网元,全局可见,全局有效

Node Segment是特殊的Prefix Segment

Adjacency Scgment(邻接段)

用于标识网络中的某个邻接

生成方式:源节点通过协议动态分配

通过IGP协议扩散到其他网元,全局可见,本地有效

(1)Prefix Segment(前缀段)

  a)用于标识网络中的某个目的地址前缀。通过GP协议扩散到其他网元,   全局可见,全局有效。

  b)Prefix Segment通过Prefix SID (Segment ID)标识。

  c)Prefix SID是发布端通告的的SRGB (Segment Routing Global Block)范围内的偏移值,接收端会根据自己的SRGB计算实际标签值用于生成MPLS转发表项。

  d)Node Segment是特殊的Prefix Segment,用于标识特定的节点(Node)

  e)在节点的Loopback接口下配置IP地址作为前缀,这个节点的PrefixSID实际就是Node SID。

(2)Adjacency Segment (邻接段)

用于标识网络一个邻接。通过IGP协议扩散到其他网元,全局可见,但是仅本地有效

  a)Adjacency Segment通过Adjacency Segment ID (SID)标识

  b)Adjacency SID为SRGB范围之外的本地SID

5. SRGB

(1)SRGB : 用户指定的为Segment Routing MPLS预留的全局标签集合。

(2)每台设备通过扩展的路由协议通告自己的SRGB。

(3)节点通过扩展的路由协议通告前缀SID索引 (Index)后,各台设备分别根据SRGB计算入站及出站SID。

(4)在实际部署中,建议设备采用统一的SRGB。

(5)为什么需要SRGB:

  a)SR要求前缀SID全局有效

  b)在MPLS中,设备的一部分标签空间可能被其他协议,例如LDP占用,因此需指定明确的空间用于SR全局标签。Index+SRGB算出标签值及SID。

6. AS内Prefix SID及Adjacency SID的泛洪

prefix sid

出标签:下一跳SRGB+始发prefix sid值

入标签:本地SRGB+始发prefix sid值

如果全网SRGB均一致,则全网去同一个目标网段的SID均一致,方便维护。

7. OSPF for SR-MPLS

不透明LSA泛洪范围如下:

类型9 LSA,本链路 (link-local) 范围的不透明 LSA。这种类型的 LSA 不会泛洪到本地(子)网络之外。(适用于GR)

类型10 LSA,本区域 (area-local) 范围的不透明LSA。这种类型的 LSA 不会泛洪到生成它们的区域之外。(适用于SR)

类型11 LSA,本自治域 (AS-wide) 范围的不透明 LSA。这种类型的 LSA 在整个AS 中泛洪(具有与类型5 LSA相同的范围)。AS 范围的不透明LSA不会泛洪到末稍区域(StubArea)。

8. ISIS for SR-MPLS

9. SR Policy

(1)RFC 8402中定义SR Policy是一段有序的段列表 。更完整的说法是SR Policy最终呈现为一段有序的段列表,还包含了计算、生成和维护这个段列表及引入流量等SR技术的一种框架。SR Policy是当前最主流的实现SR的方式。

(2)一个SR Policy由头端节点引导流量进入这个段策略中。它的段列表被精确的分配为标签栈指导流量转发。这个段列表由一系列的优化目标和限制综合计算得到。这个计算可由本地或者控制器完成,然后应用到网络中。

(3)SR Policy示例

  a)可以由CLI、NETCONF、PCEP、BGP SR Policy等多种方式生成.

  b)包含Segment List,完整的指导流量引入和转发。

10. 标签栈、粘连标签与粘连节点

(1)标签栈:

  a)标签栈是标签的排序集合,用于标识一条完整的LSP。

  b)标签栈中每一个邻接标签标识一条具体的邻接,整个标签栈标识了整条转发路径LSP的所有邻接。

  c)在报文转发过程中,通过标签栈中每个邻接标签查找对应的邻接,并将标签弹出后转发,将标签栈中所有邻接标签弹出后,报文就走完了整条LSP,到达隧道的目的地。

(2)粘连标签与粘连节点

  a)当标签栈深度超过转发器所支持的标签栈深度时,控制器需要为转发器分配多个标签栈,在合适的节点下发标签栈的同时分配一种特殊的标签,然后将这些标签栈关联起来,实现逐段转发。

  b)这种特殊的标签称为粘连标签,这个合适的节点称为粘连节点

控制器为粘连节点分配粘连标签,并将其压在标签栈底。

11. SID的使用

(1)通过按序组合前缀(节点) SID和邻接SID,可以构建出网络内的任何路径。

(2)在路径中的每一跳,使用栈顶段信息区分下一跳。

(3)段信息按照顺序堆叠在数据头的顶部。

(4)当栈顶段信息包含另一个节点的标识时,接收节点使用ECMP的方式将数据包转发到下一跳。

(5)当栈顶段信息是本节点的标识时,接收节点弹出顶部段并执行下一个段所需的任务。

(6)实际应用中Prefix Segment、 Adjacency Segment可以单独使用,也可以结合使用。

(7)场景1:基于Prefix Segment的转发路径(SR-BE)

  a)基于Prefix Segment的转发路径是由IGP通过最短路径算法 (SPF)计算得出。

  b)通过IGP扩散之后,整个IGP域的所有设备学习到R2的Prefix SID (100)。

  c)以R1为例(其他设备类似) ,它通过SPF算法计算出一条到达R2的最短路径。

总结:基于Prefix Segment的转发路径并不是一条固定路径,头节点也无法控制报文的整条转发路径。

(8)场景2:基于Adjacency Scgment的转发路径(SR-TE)

  a)通过给网络中每个邻接分配一个Adjacency Segment,然后在头节点定义一个包含多个Adjacency Segment的Segment List。

  b)通过这种方式可以严格指定任意一条显式路径 (strict Explicit),可更好的配合实现SDN。

(3)场景2:基于Adjacency Scgment+Node Segment的转发路径

  a)将Adjacency Segment和Node Segment结合,通过Adjacency Segment,可以强制整条路径包含某一个邻接。而对于Node Segment,节点可以使用SPF算法计算最短路径,也可以负载分担。

  b)这种方式的路径并不是严格固定,所以也称作松散路径 (Loose Explicit)

SR-MPLS-BE

(1)使用SID来指导设备基于最短路径进行数据转发,这种工作机制称为SR-MPLS BE (Best Effort)。

(2)例如在本例中使用R6的Node SID 606可以指导数据沿着去往R6的最短路径来转发数据,该最短路径是基于路由协议计算得出的,并且支持等价路径。

(3)SR-MPLSBE是一种替代“LDP+IGP方案”的一种新方案

  1. SR-MPLS-TE

使用多个SID进行组合来指导数据转发,这种工作机制可以对数据的转发路径进行一定约束,从而满足流量工程的需求,因此被称为SR-MPLS TE (Traffic Engine)。

SID的组合形式:

使用多个Node SID.

使用多个Adjacency SID

使用Node SID与Adjacency SID组合,如上图所示。

12. SR-MPLS BE LSP

(1)SR-MPLS BE LSP是指使用SR技术建立的标签转发路径,由一个Prefix或Node Segment指导数据包转发。

(2)其中,SR-MPLS BE是指IGP使用最短路径算法计算得到的最优SR LSP。

(3)SR-MPLS BE LSP的创建过程和数据转发与LDP LSP类似。这种LSP不存在Tunnel接口。

  1. 数据转发流程

(1)Push(压入):当报文进入LSP时,入节点设备在报文二层首部和IP首部之间插入一个标签;或者根据需要,在报文标签栈的栈顶增加一个新的标签。

(2)Swap(置换):当报文在SR域内转发时,根据标签转发表,用下一跳分配的标签替换SR报文的栈顶标签。

(3)Pop(弹出):当报文在离开SR域时,根据栈顶的标签查找转发出接口,然后将SR报文的栈顶的标签剥掉。

  • 16
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值