Segment Routing(SR)简单介绍

1.什么是segment routing(SR)

1.1 基本概念

  • SR架构基于源路由。节点(路由器、主机或设备)选择路径,并且引导数据包沿着该路径通过网络,具体实施是在数据报头中插入带顺序的段列表(segment list),以指示收到这些数据包的节点怎么去转发和处理这些数据包。

  • SR能够使网络更加简化,并具有良好的可扩展能力,主要体现在以下方面:

    1. 更简单的控制平面

      对现在的控制平面进行简化,如:在MPLS网络中,不再需要部署复杂的LDP/RSVP-TE协议,只需要设备通过IGP路由协议对SR的扩展来实现标签分发和同步,或者由控制器统一负责SR标签的分配,并下发和同步给设备。

    2. 易扩展的数据平面

      复用已有的MPLS和IPv6转发平面,网络设备不做改动或者进行小的改动,如:在MPLS网络中,segment就是MPLS标签,路径就是标签栈,在IPv6网络中,segment就是IPv6 地址路径就是封装在路由表项中的IPv6地址列表

2.Segment Routing的优势

  • 协议栈瘦身(简单)
  • 无需再使用LDP、RSVP等负载的标签分发协议,也无需担心LDP和IGP同步、LDP对负载均衡支持力度不够等问题。
  • 更具备实施、排错优势的FRR(快速重路由)
  • 自动50ms保护
  • 易于操作和理解
  • 关键业务选取低时延路径(少量segment就可以指示一条显式路径)
  • 对SDN和OpenFlow的影响

3.概念和术语

  • SR Domain:SR节点的集合,可以是连接到相同物理架构的节点,也可以是远端互联的节点
  • SR Global Block(SRGB):SR节点的本地属性,在MPLS中,为全局segment预留的本地标签集合;在IPv6中,是一些用以表示全局segment的地址集合,在一个SR Domain中,建议所有节点使用相同的SRGB,以方便实际应用中的管理维护与故障排除。
  • Segment:Segment是指导设备处理报文的任何指令,如:根据最短路径转发到目的地,通过在指定端口转发报文,将报文转发到指定应用。指令类型的标识符或字段,表示转发和服务,SR中使用数字来代表segment。(**segment就是数字 **)
  • 端标识(Segment ID):-SID用于标识segment,其格式取决于实现SID格式的例子,包括:MPLS(多协议标签交换)标签、MPLS标签空间的索引或者IPv6地址等。很多时候SID和segment混用。(SID=MPLS label)
  • Active segment:收到报文的SR节点必须处理的segment,在MPLS中为标签栈的最外层标签,在IPv6中为携带了SRH头的报文的目的地址。
  • Segment Actions:
    1. PUSH:在Segment List的顶部插入一个segment,在MPLS中为标签栈的最外层标签,在IPv6中为SRH头中的第一个IPv6地址。
    2. NEXT:当前的active segment处理完时,the next segment变为active segment。
    3. CONTINUE:当前的active segment还没有处理完,还继续保持active状态,在MPLS相当于SWAP操作,在IPv6为IPv6报文依据目的地址转发的常规操作。
  • SR Tunnel:在头节点上将Segment List封装到报文头中的隧道,可以由管理员手工创建,也可以是控制器通过NETCONF或PCEP等接口协议自动创建。一个SR隧道既可用于TE流量工程应用,也可用于OAM、FRR等目的。
  • Segment List Depth:一个SR隧道中能封装的segment数量,也就是Segment List的深度,创建SR隧道的节点应该清楚它能处理的Segment List最大深度。

3.1 Segment

  • 全局(global)Segment:SR域的任一节点都明白该Segment的相关指令。SR域的每个节点的转发表中都安装了该Segment相关指令(到达目的地的最短路径)。在MPLS SR 中:为段路由全局块(SRGB)中的全局标签值。--SRGB(标签范围)
  • 本地(local)Segment:只有该Segment的始发节点明白他的相关指令。在MPLS SR 中,为本地分发的标签。

3.2 SR的全局块(SRGB)

  • 预留给SR全局segment的MPLS标签范围(理论值为16000到2的20次方-1)
  • 默认的SRGB范围是16000-23000。
  • prefix-SID是作为整个SR域范围唯一特定的索引在IGP中进行通告
  • prefix-SID索引指向SRGB内特定的标签(--索引是基于0开始,第一个索引=0,--标签=prefix-SID索引+SRGB基值(SRGB的第一个值)例如:prefix1.1.1.65/32,它的prefix-SID索引被设定为65,则在此SRGB中,得到的MPLS标签是16065)

4. SR的控制层面

  • 标签的分配和分发:传统的MPLS网络需要LDP等协议同步和分发各个节点的标签信息,SR不再需要LDP协议,只需要通过IGP协议(ISIS或OSPF)的SR扩展来同步,或者由控制器统一进行分配和下发,大大简化了设备运行的协。
  • 标签转发表的建立:同样的传统MPLS需要通过LDP协议分发标签后形成标签转发表,而且标签转发表的规模会非常大,而SR只需要IGP协议就可以完成标签转发表的建立,并且非常容易扩展,规模也很小,条目数为N(节点标签数量,一般为全网节点数量)+A(邻接标签数据,一般为设备接口数量)
  • 路径的标识和建立:在MPLS网络中,一个报文经过的路径为LSP,通过手工指定或使用LDP、RSVP-TE协议逐跳动态建立,非常复杂且难以维护。在SR协议中,路径是由一个有序的segment列表(在MPLS中为标签栈)来表示,且被封装在报文头中进行转发,因此,SR路径不再依赖于逐跳的信令协议(LDP或RSVP-TE)来建立,而是直接由报文源节点或者控制器指定一个标签栈即可,中间的转发设备只需按标签栈的信息进行转发,非常简单。
  • 通常使用路由协议在网络中分发段信息,支持的协议包括ISIS、OSPF和BGP协议
  • IGP(包括ISIS和OSPF)分发的段称之为IGP segment
  • BGP分发的段称之为BGP segment

5.Segment routing转发层面

  • SR使用MPLS数据层面承载IPv4和IPv6数据报文,(--Segment->MPLS标签,Segment list->标签堆栈)
  • SR遵循了MPLS的一系列动作(压入,交换、弹出,PHP,显式空

6. IGP segment

IGP段分为IGP前缀segment和IGP邻接segment,使用链路状态协议通告和分发,这表明IGP网络中的所有节点都能接收到IGP segment

6.1 IGP前缀段(IGP-Prefix Segment)

  • IGP前缀segment,也成prefix-SID,即由路由协议通告的全局的Segment(用标签关联一个32位前缀是最通常的用法),通常情况下在SR域内全局唯一。
  • 一般为一个IGP Prefix分配一个Prefix-SID,不能为多个IGP Prefix分配同一个Prefix-SID,但可以会为同一个IGP Prefix分配多个Prefix-SID,用以在同一拓扑中通过不同的算法计算出不一样的选路结果。
  • Prefix-SID可以由管理员或控制器分配,且分配后基本不变。
  • 在IGP协议对Prefix-SID进行通告时,会携带相应的算法信息,用来指明使用的算法。并且会在头结点中进行检查,如果节点对算法不支持则丢弃。

6.1.1 Prefix-SID 特点

  • 表示到IGP Prefix的最短路径,且具备ECMP感知能力
  • SR域内全局唯一,即index,每个Prefix-SID为【SRGB+index】
  • 由IS-IS/OSPF SR扩展协议或控制器在SR/IGP域内通告

6.1.2 IGP-Node Segment

  • 一种IGP-Prefix Segment,用以标识一台节点设备,叫做IGP-Node Segment或Node-SID,同一Node-SID不能关联到多个节点通告的前缀,Node-SID用来指导到对应节点的最短路径报文转发,默认具备ECMP感知能力

6.1.3

  • 一种IGP-Prefix Segment,用以标识一系列节点设备,叫做IGP-Anycast Segment或Anycast-SID,Anycast-SID用来指导到相关集合节点的最短路径报文转发,默认具备ECMP感知能力
IGP-Prefix.jpg

6.2 IGP邻接段

  • 用数字来表明邻居
  • 引导流量由与该segment关联的链接链路转发出去(不一定是最短路径)
  • 从路由器的某个接口转发流量出去
  • 一种IGP segment,代表单向的某个邻接或一组邻接,由节点通告给邻居,通常是本地有效,但若配置为全局的,也是可以的,叫做Adjacency Segment或Adj-SID。通常情况下,一个节点应该为它所有的每个邻接分配一个Adj-SID,当然也可以为同一个邻接分配多个Adj-SID,也可以为多个邻接分配同一个Adj-SID。

6.2.1 Parallel Adjacencies

  • 在两个相邻的节点间可以用一个Adj-SID来表示一系列的并行链路,叫做Parallel Adjacencies,为了在这些并行链路链路之间实现灵活的负载均衡,可以在通告Parallel Adjacencies时为每个邻接指明不同权重值。
  • 当节点上的Adj-SID W表明一系列的链路B时,其FIB表:

​ 入口活动段: W

​ 入口操作: NEXT

​ 出接口: 在链路集合B中进行负载均衡

6.2.2 LAN Adjacency Segments

  • 在LAN子网中,OSPF的DR和IS-IS的DIS环境下,每个节点只给DR/DIS通告其连通性,而不互相通告,因此,定义了LAN Adjacency Segments,以保证节点之间互相通告其连通性。
IGP-Adjacency.jpg

参考:http://www.h3c.com/cn/d_201706/1000459_30004_0.htm#_Toc484881411

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,948评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,371评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,490评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,521评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,627评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,842评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,997评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,741评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,203评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,534评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,673评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,339评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,955评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,770评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,000评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,394评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,562评论 2 349

推荐阅读更多精彩内容