第一卷
第一章 简介
1.11 SRv6
SRv6:将SR框架应用到IPv6数据平面
SRv6对IPv6的价值至关重要,将极大地影响未来的IP基础设施部署,无论是在数据中心,大规模汇聚网络,还是在骨干网中。
第二章 Segment Routing基础
2.1 什么是SR
定义:基于源路由。用于节点选择路径。
原理:在数据包头部插入带顺序的Segment列表,以指示接收到这些数据包的节点怎么去处理和转发这些数据包。其中,Segment可以表示任何类型的指令,例如:与拓扑相关的、基于服务的、基于上下文的等等。
优势:
1.转发链路的节点无需存储所有可能经过的流维持状态信息,而只需执行数据包中的Segment指令。
2.源节点通过在数据报头中添加适当命令,可以实现基于单条流颗粒度的数据包引导。
特点:1、在IP和MPLS网络中提供高级流量引导能力;2、在数据平面和控制平面中保持可扩展性。
2.2 Segment概念
2.2.1 Segment和Segment标识
segment:节点针对所接收到的数据包要执行的指令,存于数据包报头中。
例子:指示按照最短路径传输、指示特定接口接收、指示发送的特定目的应用/实例。
segment标识(SID segment identifier):用于标识segment。格式取决于实现。
例子:MPLS标签、MPLS标签空间中的索引、IPv6地址。
2.2.2 segment组合
segment作为构建网络卢静的基本模块。可以单独使用,也可以组合使用。即使用segment有序列表(即“segment列表”或“SID列表”)
组合使用的优势:
1、可以引导数据包到网络的任何路径上,而不受最短路径、域边界、路由协议等的影响;
2、通过segment列表,数据包可以被引导通过服务链。
2.2.3 segment列表操作
①压入(PUSH)
在segment列表头部或者尾部插入一个或多个segment,其中第一个segment为活动segment。(与链表非常相似)
②继续(CONTINUE)
活动segment还没完成时,使其保持活动状态。
③下一个(NEXT)
活动segment已经完成时,设立下一个segment为活动segment。
2.2.4 全局和本地segment
2.2.4.1 全局segment
每个节点在其转发表中均安装全局segment指令,每个节点都学习并知道这个segment。
2.2.4.2 本地segment
本地segment只有在数据包被引导至特定节点时才可执行,一般搭配全局使用。
例子:有个本地segment为发送至特定特定端口,但需要一个前置的全局segment来将数据包引导到特定节点才可执行指定本地segment。
PS:本地segment虽然只能在特定的节点执行,但是所有的节点都需要知道该segment的存在。
2.3 SR控制平面
SR体系结构不基于特定的控制平面实现。虽然理论上,在各个节点配置segment也是可能的,但一般都是利用路由协议进行segment列表分发。
现在可用的路由协议有:IGP ISIS OSPF BGP
命名规则:IGP分发的segment称为“IGP segment”,ISIS的称为“ISIS segment”,以此类推。
第12章 segment routing ipv6数据平面
SR可以使用IPv6和MPLS数据平面。两者区别不在于架构,而在于架构的实现。
区别:
MPLS:当使用MPLS数据平面传送IPv6数据包时,segment列表以MPLS标签栈的形式压入数据包报头。当活动segment完成后,会被删除。
SRv6:当使用SR IPv6数据平面传送IPv6数据包时,segment列表被压入到数据包报头的SR报头中(SRH)(该报头是一种新型路由报头,IETE RFC 2460 IPv6协议规范中的一种扩展报头。)使用指针指向活动segment,活动segment执行后,指针指向下一segment,但原segment并不会删除。
PS:SRv6不需要网络中的所有节点都支持SRv6,只需必须处理报头的节点支持就可以,因为SRv6和非SRv6节点是可以相互操作的。
12.1 IPv6 segment
图中显示了SRv6不同类型的节点。
①源节点:
-产生带有SRH的IPv6数据包的节点。
-SRv6域的入口节点(一般是路由器),其在IPv6报头中插入SRH或在数据包上压入带有SRH的外层IPv6报头。
②segment端节点:
segment端节点是终结一个segment的节点。带有SRH的IPv6数据包的目的地址对应于segment端节点的其中一个地址。segment端节点检查并更新SRH,执行与活动segment相关联的指令,此时活动segment即数据包的目的地址。
③中转节点:
中转节点是数据包路径上的节点,更具体地说,就是路由器。但不是segment端节点。数据包的目的地址不对应于中转节点上的地址。
RFC协议规范中规定,如果节点不对应于数据包的目的地址,则节点不处理路由报头。
中转节点基于IPv6目的地址转发IPv6数据包,不对SRH进行查找或改动,因此中转节点不需要支持SRv6。
重点:SRv6中很少使用真正的本地segment。一般使用的是关联性指令来代替本地segment,例如某个节点检测到分发的全局segment的某部分与其本身具有关联性,则会执行相关操作。
12.2 SRv6 SID
SRv6中的segment用128位的IPv6地址进行标识,相较于MPLS更加简单,不需要通过除了IPv6前缀(SID)之外的任何信息。
IPv6地址不仅可以表示路由器,还可以表示接口、设备、业务和应用等,或者也可以表示上述任何一种对象的集合。
同样,IPv6地址可以进行汇总,这也适用于用作SID的IPv6地址。但是,MPLS SID不能进行汇总。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)