MPLS LDP标签分发协议

标签在整个网络中没有全局意义。为了使相邻路由器同意为哪个前缀使用哪个标签,它们之间需要某种形式的通信。否则,路由器不知道哪个传出标签需要与哪个传入标签匹配。标签分发协议是必需的。

通常,有两种方法可以在网络中分发MPLS标签:

  •  existing带现有IP路由协议上的标签
  •  有单独的协议分发标签

本文深入介绍了上述每种方法。此外,它还解释了MPLS的不同模式,包括标签分发,标签保留和LSP控制。

参照现有IP路由协议上的标签

第一种方法的优点是不需要在LSR上运行新协议,但是每个现有IP路由协议都需要扩展以携带标签。这并不总是一件容易的事。路由协议带有标签的最大优点是,路由和标签分发始终保持同步,这意味着如果前缀丢失,则不能拥有标签,反之亦然。

它还消除了在LSR上运行另一个协议进行标签分发的需求。距离矢量路由协议(例如 EIGRP)的实现非常简单,因为每个路由器都从其路由表中产生一个前缀。然后,路由器仅将标签绑定到该前缀。

链路状态路由协议(例如 IS-IS 和 OSPF)无法以此方式运行。每个路由器都会发起链路状态更新,然后将其转发,而区域内的所有路由器都不会更改。问题在于,要使MPLS工作,每个路由器都必须为每个IGP前缀分配标签,即使不是该前缀的始发者的路由器也是如此。

没有任何IGP更改为部署第一种方法。但是,  BGP 是一种路由协议,可以携带前缀并同时分发标签。但是,BGP不是IGP。它用于携带外部前缀。BGP主要用于MPLS VPN网络中的标签分发。

运行单独的标签分发协议

第二种方法是运行用于标签分发的单独协议,该协议的优点是与路由协议无关。无论IP路由协议是什么,无论它是否能够分发标签,都由单独的协议分发标签并让路由协议分发前缀。这种方法的缺点是在LSR上需要新的协议。

所有路由器供应商的选择是让新的标签分发协议分发IGP前缀的标签。这是标签分发协议(LDP)。但是,LDP并不是唯一可以分发MPLS标签的协议。多种协议分发标签:

  • 标签分发协议(TDP)
  • 标签分发协议(LDP)
  • 资源预留协议(RSVP)

TDP由思科实施,它是第一个标签分发协议。IETF随后正式制定了LDP。

LDP的标签分发

对于其IP路由表中的每个IGP IP前缀,每个标签交换路由器(LSR)都会创建一个本地绑定-即,它将标签绑定到IPv4前缀。然后,LSR将此绑定分发到其所有LDP邻居。这些收到的绑定成为远程绑定。然后,邻居将这些远程和本地绑定存储在称为标签信息库(LIB)的特殊表中。 

至少当标签空间是每个平台时,每个LSR的每个前缀只有一个本地绑定。如果标签空间是每个接口的,则每个接口的每个前缀可以存在一个本地标签绑定。因此,每个前缀可以有一个标签,每个接口每个前缀可以有一个标签,但是LSR获得多个远程绑定,因为它通常具有多个相邻的LSR。

LSR选择从下游LSR接收到的远程绑定,该绑定是路由表中该前缀的下一跳。它使用此信息来建立其标签转发信息库(LFIB),其中本地绑定中的标签用作传入标签,而通过路由表选择的一个远程绑定中的标签用作传出标签。

因此,当LSR收到带标签的数据包时,它现在能够将其分配的传入标签与相邻的下一跳LSR分配的传出标签交换。下图显示了通过LDP发布的IPv4前缀10.0.0.0/8的LSR之间的绑定。每个LSR为每个IPv4前缀分配一个标签。本地绑定是该前缀及其关联的标签。

MPLS-LDP上的IPv4

您可以在下图中看到目的地为10.0.0.0/8的IPv4数据包在入口LSR上进入MPLS网络,在该网络上,它带有标签129,并切换到下一个LSR。

第二个LSR将输入标签129与输出标签17交换,并将数据包转发给第三个LSR。第三LSR将输入标签17与输出标签33交换,并将分组转发到下一个LSR,依此类推。

MPLS-LDP-分组交换


标签转发实例库

LFIB是用于转发标记数据包的表。它用LSP的传入和传出标签填充。传入标签是来自特定LSR上本地绑定的标签。传出标签是LSR从所有可能的远程绑定中选择的远程绑定中的标签。

所有这些远程绑定都可以在LIB中找到。LFIB从LIB中所有可能的远程绑定中仅选择可能的传出标签之一,并将其​​安装在LFIB中。选择的远程标签取决于哪个路径是路由表中找到的最佳路径。

不同的MPLS模式

将标签分发到其他LSR时,LSR可以使用不同的模式。本节介绍了三种不同的模式,如下所示:

  • 标签分配方式
  • 标签保留方式
  • LSP控制方式

每种模式都有其自身的特征。以下部分说明了每种方法的优点。

标签分配模式

MPLS体系结构具有两种分发标签绑定的模式:

  • 下游点播(DoD)
  • 未经请求的下游(UD)

在DoD模式下,每个LSR在LSP上请求其下一跳(即下游)LSR,该FEC的标签绑定。每个LSR仅从该FEC上的其下游LSR接收每个FEC的一个绑定。下游LSR是IP路由表指示的下一跳路由器。

在UD模式下,每个LSR都将绑定分配给它的相邻LSR,而这些LSR不需要标签。在UD模式下,LSR从每个相邻的LSR接收远程标签绑定。

对于DoD,LIB仅显示一个远程绑定,而对于UD,您可能会看到多个。使用的标签分发模式取决于接口和实现。在Cisco IOS中,除LC-ATM接口外的所有接口均使用UD标签分发模式。所有LC-ATM接口都使用DoD标签分发模式。

标签保留模式

两种标签保留模式是可能的:

  • 自由标签保留(LLR)模式
  • 保守标签保留(CLR)模式

在LLR模式下,LSR将所有收到的远程绑定保留在LIB中。这些绑定之一是从该FEC的下游或下一跳接收到的远程绑定。LFIB中使用了来自该远程绑定的标签,但是其他远程绑定中的所有标签都没有放入LFIB中,因此,并非全部都用于转发数据包。

路由拓扑可以随时更改(例如,由于链路断开或路由器被删除),因此,特定FEC的下一跳路由器可以更改。那时,新的下一跳路由器的标签已经在LIB中,并且可以使用新的传出标签快速更新LFIB。

第二种标签保留模式是CLR模式。运行此模式的LSR不会将所有远程绑定存储在LIB中,而是仅存储与特定FEC的下一跳LSR关联的远程绑定。

简而言之,LLR模式使您可以更快地适应路由更改,而CLR模式使您可以存储更少的标签,并更好地利用路由器上的可用内存。在Cisco IOS中,LC-ATM接口的保留模式为CLR模式。对于所有其他类型的接口,这是LLR模式。

LSP控制模式

LSR可以通过两种方式为FEC创建本地绑定:

  • 独立LSP 
  • 有序LSP 

LSR可以独立于其他LSR为FEC创建本地绑定。这称为独立LSP控制模式。在这种控制模式下,每个LSR一旦识别到FEC,就会为特定的FEC创建本地绑定。 通常,这意味着FEC的前缀在其路由表中。在有序LSP控制模式下,只有当LSR识别出它是FEC的出口LSR或LSR已从该FEC的下一跳接收到标签绑定时,它才会为FEC创建本地绑定。 独立LSP控制的缺点是,某些LSR在端到端建立完整LSP之前就开始标记交换数据包。因此,数据包没有按照应有的方式转发。如果未完全建立LSP,则数据包可能无法在所有地方都收到正确的转发处理,甚至可能被丢弃。 作为这两种控制方法的示例,您可以将LDP视为IGP前缀的标签绑定的分发方法。 如果LSR在独立LSP控制模式下运行,它将为路由表中的每个IGP前缀分配一个本地绑定。如果LSR在有序LSP控制模式下运行,则此LSR只会为在其路由表中标记为已连接的IGP前缀以及已从ISR接收到标签绑定的IGP前缀分配本地标签绑定。 nexthop路由器(如路由表中所述)。 Cisco IOS使用独立LSP控制模式。默认情况下,运行Cisco IOS的​​ATM交换机使用“有序LSP控制”模式。

觉得文章有用?

点个广告表达一下你的爱意吧 !😁