什么是Segment Routing?

小o 更新于 4年前

网络技术日新月异,许多技术应运而生,例如物联网(IoT)、5G,云服务等。对于这些新服务,新的要求也随之出现,现有网络逐渐变得不足,分段路由(Segment Routing,SR)作为一种新的概念应运而生,号称“下一代MPLS”。

什么是Segment Routing?

SR脱胎于MPLS,但是又做了革命性的颠覆和创新。使用此协议,数据包将基于源路由转发,更灵活且可扩展。在这个新概念中,不会使用“per application”行为,相反,SR路由器根据数据包内的转发信息来处理每个包。

在SR概念中,网络路径被分为几个段,并且每个分段都有一个 Segment ID(SID)。该SID是一个32位的值,这些段是不同信息的标识符。

许多网络供应商,如思科、华为、Juniper和诺基亚等都提供了针对SR的解决方案。

传统路由的不足之处是什么?

网络技术发展非常迅速,新技术开始不断出现,但是,传统的路由方式对新技术的适应更加复杂,并不是一种有效的组网方式。因此,分段路由(SR)应运而生。

在传统路由中,路径是根据所使用的服务来计算的。如果是最有效的流量,则通过低成本路径路由;如果是关键流量,则通过更安全的路径路由。这种情况太多了,网络需要动态地适应这些变化。但有了Segment Routing,这项艰巨的工作正在改变。

Segment Routing类型

基于所使用的技术,SR概念可能会有所不同。主要有两种类型的SR:

  • SR-MPLS
  • SRv6

SR MPLS使用MPLS作为转发平面,数据通过MPLS网络发送。在这种类型中,IPv4和IPv6均可使用:

  • IPv4,称为SR MPLS IPv4
  • IPv6,则称为SR MPLS over IPv6(SRo6)

SRv6使用IPv6作为转发平面,在这种类型的SR中,数据通过IPv6转发平面发送。

SR-MPLS

SR可以直接添加到MPLS体系结构中,不需要更改转发平面,直接复用已有的MPLS转发平面。与传统的MPLS技术相比,SR-MPLS是一种高效的路由机制。

那么,SR在MPLS体系结构中是如何工作的呢?MPLS与标签一起使用,在节点之间交换标签,并根据此概念发送数据。在SR-MPLS中,每个段都被编码到一个MPLS标签中。如果有多个段或段列表,则使用MPLS标签栈。MPLS标签栈也用于MPLS VPN,它将多个标签一起用于具有不同用途的数据包。

还有另一个关键的问题,在传统的MPLS中,标签分发是通过LDP(Label Distribution Protoco)或RSVP-TE(Resource Reservation Protocl- flow Engineering)完成的,SR不需要此协议。只需要设备通过IGP路由协议对SR的扩展来实现标签分发和同步,或者由控制器统一负责SR标签的分配,并下发和同步给设备。

SRv6

SRv6是SR的第二种类型,转发平面是基于IPv6的。在SRv6中,段被编码为IPv6地址。同样,如果有段列表,则此段列表被编码为IPv6地址列表。

Segment 分类

在SR中,使用了不同类型的分段。每个段均由不同的SID定义。这些不同的SID如下所示:

  • 前缀SID(Prefix SID)
  • 邻接SID(Adjacency SID)
  • 节点SID(Node SID)

那么,这些SR分段之间有什么不同呢?SRGB(SR Global Block)又是什么?SRGB是用于SR的标签范围。默认情况下,此范围是16000到23999。有些SID在这些范围之间,有些则不是。

下图展示了MPLS和SR的不同标签范围:

下面,解释一下不同的SID。

前缀SID是为目的地址前缀分配的标签,标签在SR域内全局唯一,是SRGB之间的值。

邻接SID表示设备上某条链路的单跳路径,仅在设备本地有效,每个设备向与自己相邻一跳的设备通过IGP扩展通告邻接标签。当然,也可以通过SDN控制器直接为SR域内的每条链路进行标签分配。邻接SID是不在SRGB中的值。

节点SID用于表示节点的段,它是一个特殊的前缀ID。如果在节点上使用回送地址,则此前缀SID为节点SID。它也像前缀SID一样在SRGB之间分配。

所有这些分段都可以逐个独立使用,也可以一起使用:

  • 基于前缀分段的模式(Prefix Segment Based Mode)
  • 基于邻接分段的模式(Adjacency Segment Based Mode)
  • 邻接和节点分段组合模式(Adjacency and Node Segment Combination Mode)

在基于前缀分段的模式中,目的地的前缀SID通过IGP(ISIS或OSPF)在网络中传播。在此,网络中的每个路由器都将学习目的地SID,并使用SFP算法计算到达目的地的最短路径。该模式的另一个名称是SR-BE(Segment Routing Best Effort)。

下图是节点分段转发路径,数据包与目的节点SID 400一起从源节点发送过来,在到达目的地之前,此SID都通过这种方式与数据包一起携带。

在基于邻接分段的模式下,有一个中央机制,可以与SDN一起使用。有多个段具有段列表,流量通过这些链接之间确定的严格路径发送。这是Traffic Engineering使用的模式,如果将TE与SR一起使用,则称为SG-TE( Segment Routing-Traffic Enginering)。

下图是邻接分段转发路径,对于此路径,仅使用相邻两个之间的邻接SID。在源节点,邻接SID被添加到数据包adn中,根据这些邻接SID,数据包到达目的地。

最后一种模式是邻接和节点分段组合模式。此模式也可用于Traffic Engineering,如SR-TE。设备根据节点段计算出最短路径,路径不固定。因此,这些类型的路径称为显式路径。

在下面的示例中,给出了邻接节点分段组合转发路径。在源节点,一个节点段(500)和两个邻接段(5555和6666)被添加到分组。通过这些段,数据包以任何方式被发送到具有节点SID 500的节点,并从那里按照确定的邻接SID到达目的地。

Segment Routing优势总结

SR在网络中具有一定的优势:

  • 与SDN结合,继承集中控制带来的好处;
  • 简化的控制平面(去除LDP/RSVP-TE);
  • 更具备实施、排错优势的FRR(快速重路由);
  • 更好的可扩展性:SR的源路由和无状态特性决定了其良好的扩展性;
  • 战术型流量工程:对于普通流量不指定路径,自动负载;对于需要调度的流量计算出显式路径,并下发Segment执行;
  • 标准化,多厂商支持。

“SR项目的目标是简化IP网络的操作,增加其可扩展性和功能,并最终使应用能够控制网络,而不需要在整个网络基础设施上增加流状态。”—Clarence Filsfils

0个评论