本文共 2096 字,大约阅读时间需要 6 分钟。
此篇梳理MPLS TE的路径计算组件以及信令协议。在IOS环境下,其实主要也就是CSPF与RSVP。之所以放在一起讲,其实就是在CSPF计算完成路径之后,RSVP要负责搭建LSP。两者先后逻辑明显。
CSPF
CSPF Constrained Shortest Path First是带有附加条件的SPF算法。
其多出来的约束条件为:管理权重---TE metric可用带宽---这个是链路的即时带宽,而非仅仅是我们ip rsvp bandwidth宣告的那个数值链路属性CSPF不是为了发现到所有目的地路由器最佳路径而设计的,而是仅仅为了到达LSP隧道的终点。即我们在定义MPLS TE tunnel时,那个tunnel destination。
TE Metric
在选择LSP tunnel的过程中,缺省使用IGP metric来决策,一旦使用了TE metric,IGP metric就会失效。TE metric是配置在隧道出方向的物理接口上。全局方式下使用mpls traffic-eng path-selection metric te显示路径 explicit path
显示路径就是有一系列节点构成,相邻的节点可以有以下关系interface tunnel 10
tunnel mpls traffic-eng path-option 10 explicit name CCIEip explicit-path name CCIE enablenext-address loose 150.1.1.33interface tunnel 20
tunnel mpls traffic-eng path-optio 20 explicit name JNCIEip explicit-path name JNCIE enablenext-address strict 150.1.33.133总结:建立mpls TE tunnel的目的,在于选择一条从源到目的并且满足约束条件的最佳路径,而非最短路径。
TE 的信令协议
一般MPLS TE在组件LSP的协议方面,一般都是用RSVP。像CR-LDP这种协议因为用的较少所以不在讨论范围内了。RSVP原本是个QoS使用的协议,但作为集成QoS模型,扩展性实在较差,所以直接被丢弃。只能作为MPLS TE的一种组件LSP的信令协议来使用。RSVP的三种功能
1 路径的建立和维护2 路径的拆除3 路径的通告RSVP几个消息类型
Path: 用来建立和维护保留LSPResv: 相应Path消息,用来建立和维护LSP。PathTear: 结构与Path相似,用于删除LSP时使用Resv:对应于PathTear,相应PathTear,确认删除LSPPathErr:接收到错误的Path消息发送ResvErr:接收到错误的Resv消息后发送一个重点就是RSVP组件的LSP,永远是单向的!所以一般的TCP会话有可能经过的是不同的路径。这在大型骨干网络里经常可能出现不对称路由问题。
前文提到RSVP本来只是个QoS时使用的协议,在MPLS TE中,需要对其进行扩展,才能更好的支持TE。一下便是扩展的功能:
RSVP TE报文中包含的对象
Label Request:Path message中Label: Resv message中Explicit Path:存在Path消息中Record Route:存在于Path和Resv message中Session Attribute: 存在Path message中,含有重要的标志位以下就是PATH和Reserve message的两个抓包截图。
路径的维护与路径建立过程类似,所以RSVP被称为soft-state协议,每30秒,tunnel首端发送path给下游邻居。同时,下游邻居每30秒向上游发送reserve协议。注意:path与reserve message是独立异步发送的。转载于:https://blog.51cto.com/9272543/2071844