IGP协议对SR-MPLS的扩展

目录

 OSPF对于SR-MPLS的扩展

OSPF对邻接SID做了细分

10类LSA定义的TLV类型

10类LSA定义的TLV的报文格式            

ISIS对SR-MPLS的扩展

ISIS对邻接SID做了细分

ISIS定义的Sub-TLV的类型

ISIS定义的Sub-TLV的报文格式


 OSPF对于SR-MPLS的扩展

OSPF为了支持SR-MPLS通过新增LSA来实现(通过OSPF下发拓扑信息、前缀信息、SRGB和标签信息的通告)

新增了10类LSA(在10类LSA中又新增了TLV和Sub-TLV)

注意事项:

To-Way的邻居状态也可以分配标签

运行OSPF的接口不需要再开启MPLS,只需要全局开启MPLS就可以

OSPF对邻接SID做了细分

在OSPF中,将Adj SID细分为LAN Adj SID和Adj SID

什么情况下产生

当设备为DR时,产生的Adj SID类型就为LAN Adj SID

当设备为非DR或P2P网络类型时,产生的Adj SID类型就为Adj SID

两者的报文有什么区别(具体在TLV的报文格式有介绍)

Adj SID直接通过Link ID表明DR的router id地址,知道自己的直连设备

LAN Adj SID的Link ID是自己,无法知道自身和哪些设备相连,需要多携带一个 Neighbor ID字段,表明此接口的邻居是谁

10类LSA定义的TLV类型

10类LSA (Opaque LSA,即不透明的LSA)通过定义TLV和Sub-TLV来完成对SR-MPLS技术的支持

SR Local Block TLV              用于通告自己SRLB范围

10类LSA的Type 8下定义了2个TLV和1个Sub TLV支持SR-MPLS

SR-Algorithm TLV(TLV 8)              用于对外通告自己使用的算法

SID/Label Range TLV(TLV 9)           用于通告自己的SRGB范围

SID/Label Sub-TLV(TLV9的Sub TLV1)  与TLV9一起确定SRGB的范围

10类LSA的Type 7下定义了1个TLV和1个Sub-TLV支持SR-MPLS

OSPFv2 Extended Prefix TLV(TLV 1)        用于通告自身的前缀信息

Prefix SID Sub-TLV(TLV1的Sub Tlv 2)     用于通告节点SID信息

10类LSA的Type 7下定义了1个TLV和2个Sub-TLV支持SR-MPLS

OSPFv2 Extended Link TLV(TLV1)        用于通告自身的链路状态信息

Adj-SID Sub-TLV(TLV1的Sub TLV2)     用于通告自身的Adj信息(非DR)

LAN Adj-SID Sub-TLV(TLV1的Sub-TLV3)用于通告自身的LAN Adj SID信息(DR)

10类LSA定义的TLV的报文格式            

10类LSA的头部信息

IGP协议对SR-MPLS的扩展_第1张图片

LS Type:标识LSA的类型(10类LSA可以细分为3大类型)

Opq-Link  (分别代表链路上泛洪)

Opq-Area (OSPF区域内泛洪)

Opq-AS   (AS域内泛洪)

Link State ID:由Type和ID两部分组成(共8字节)

常见的1类等LSA此字段为4字节,只有Link State ID部分(无Type)

Advertising Router:产生此LSA的设备的Router-id

10类LSA的Type 4下的TLV

IGP协议对SR-MPLS的扩展_第2张图片

SR-Algorithm TLV

SR-Algorithm:算法类型

SID/Label Range TLV

Range Size:标识SRGB的范围,与SID.Label共同决定一个SRGB的空间范围

SID/Label Sub-TLV

TLV Length:3标识此字段最右边的20位用于标记MPLS标签值

                      4标识此字段代表32位的SID

10类LSA的Type 7下的TLV

IGP协议对SR-MPLS的扩展_第3张图片

OSPFv2 Extended Prefix RLV

Atttach:    只有在多区域的时候才会用得到(单区域为0)

Node Flag : 1表示是Node SID,0表示不是Node节点

(手动配置Prefix节点时,默认都是Node节点)

Prefix SID Sub-TLV

NP:No-PHP,倒数第二条弹出标志(默认0)

        1表示不用倒数第二条弹出,0表示要倒数第二跳弹出

E:Explicit-Null,显式空标签标志(默认0)

        1表示启用显式空标签特性,0表示启用隐藏空标签特性

V:Value/Label标志(默认0)

       1表示Prefix-SID携带完整标签值而不是索引值,0表示携带索引值

L:Local标志(默认0)

       1表示Prrfix SID携带的标签值/索引值只具有本地意义,0表示全局意义

SID/Lavel:

        此处表示索引值为1,即针对前缀1.1.1.1分得的索引值为1

10类LSA的Type 8下的TLV

IGP协议对SR-MPLS的扩展_第4张图片

OSPFv2 Extended Link TLV

Link ID:DR的Router ID

Link Data:产生此TLV1的接口IP地址

Adj SID Sub-TLV

V:Value/Index字段(默认为1)

       1表示Adj-SID携带完整标签值而不是索引值,0表示携带索引值

L:Local/Global字段(默认为1)

       1表示Adj SID携带的标签值/索引值只具有本地意义,0表示全局意义

P:表示标签是否是永久的(即是动态生成的还是手工配置的)默认0

       0表示动态生成的,1表示手工配置的(永久的)

LAN Adj SID Sub-TLV同Adj SID Sub-TLV字段(多了个Neighbor ID字段)

IGP协议对SR-MPLS的扩展_第5张图片


ISIS对SR-MPLS的扩展

ISIS通过在原有的TLV的基础上添加子的TLV(Sub-TLV)来支持SR-MPLS

使用ISIS为SR-MPLS分配标签时,带宽模式必须改为Wide模式(因为窄带不支持Sub-TLV)

ISIS对邻接SID做了细分

在ISIS中,将Adj SID细分为LAN Adj SID和Adj SID

什么情况下产生

当链路为广播链路时,产生的Adj SID类型就为LAN Adj SID

当链路为P2P链路时,产生的Adj SID类型就为Adj SID

ISIS定义的Sub-TLV的类型

ISIS常用TLV的含义可参考下文

ISIS——图解9种报文与TLV讲解_静下心来敲木鱼的博客-CSDN博客_isis几种报文https://blog.csdn.net/m0_49864110/article/details/126069383?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166988209516782390546976%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=166988209516782390546976&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-5-126069383-null-null.nonecase&utm_term=LSP&spm=1018.2226.3001.4450icon-default.png?t=N4P3https://blog.csdn.net/m0_49864110/article/details/126069383?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166988209516782390546976%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=166988209516782390546976&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-5-126069383-null-null.nonecase&utm_term=LSP&spm=1018.2226.3001.4450

Prefix-SID Sub-TLV

通告Prefix SID;存在于TLV 135(Extended IPv4 Reachability)、TLV 235(Multitopology IPv4 Reachability)、TLV 236(IPv6 IP Reachability)、TLC 237(Multitopology IPv6 IP Reachability)

LAN Adj-SID Sub-TLV

在广播网络通告Adj SID;存在于TLV 22(Extended IS reachability)、TLV 23(IS Neighbor Attribute)、TLV 141(Inter-AS reachability information)、TLV 222(Multitopology IS)、TLV 223(Multitopology IS)

Adj-SID Sub-TLV

在P2P网络通告Adj SID;目前仅支持携带在TLV 22中

SR-Capabilities Sub-TLV

通告自己的SRGB范围;存在于TLV 242(Router Capability)

SR-Algorithm Sub-TLV

通告自己使用的算法;存在于TLV 242(Router Capability)

Local Block Sub-TLV

通告自己的SRLB算法;存在于TLV 242(Router Capability)

SID/Label Binding TLV

通告前缀和SID的映射信息;TLV 149(一般用于SR为LDP设备分配前置SID)

OSPF通告前缀和SID的映射信息通过Prefix SID Sub-TLV实现

ISIS定义的Sub-TLV的报文格式

Prefix-SID Sub-TLV

IGP协议对SR-MPLS的扩展_第6张图片

Flags字段

R:重发布标志位,有没有做泄露

       1表示此前缀是从其它协议引入或者从其它Level级别泄露而来的

       0表示就是本地产生的

N:Node-SID标志(默认为1)

       1表示是Node SID,0表示不是Node节点

    (手动配置Prefix节点时,默认都是Node节点)

P:No-PHP,倒数第二条弹出标志(默认为0)

        1表示不用倒数第二条弹出,0表示要倒数第二跳弹出

E:Explicit-Null,显式空标签标志(默认0)

        1表示启用显式空标签特性,0表示启用隐藏空标签特性

V:Value/Label标志(默认0)

       1表示Prefix-SID携带完整标签值而不是索引值,0表示携带索引值

L:Local标志(默认0)

       1表示Prrfix SID携带的标签值/索引值只具有本地意义,0表示全局意义

LAN-Adj-SID Sub-TLV

IGP协议对SR-MPLS的扩展_第7张图片

F:地址簇标志

       1表示IPv6,未置位表示IPv4

V:Value/Index字段(默认为1)

       1表示Adj-SID携带完整标签值而不是索引值,0表示携带索引值

L:Local/Global字段(默认为1)

       1表示Adj SID携带的标签值/索引值只具有本地意义,0表示全局意义

S:序列标志

       1表示Adj-SID是一个Adjacency序列

P:表示标签是否是永久的(即是动态生成的还是手工配置的)默认0

       0表示动态生成的,1表示手工配置的(永久的)

Weight:代表Adj-SID的权重,可以用于负载分担

SR-Capabilities Sub-TLV

IGP协议对SR-MPLS的扩展_第8张图片

I:MPLS IPv4标志

        1表示可以处理从所有接口接收到的SR-MPLS IPv4报文

V:MPLS IPv6标志

        1表示可以处理从所有接口接收到的SR-MPLS IPv6报文

通过Range和Label字段共同确定SRGB的范围(范围为Label值~Label值+Range值)

SID/Label Binding TLV

IGP协议对SR-MPLS的扩展_第9张图片

BGP通过BGP-LU(BGP标签单播) 方式通告Segment信息

你可能感兴趣的:(广域网技术,网络,网络协议,运维)