mpls转发机制原理:报文转发

2020-04-30 15:24:15 云杰通信 109

mpls转发机制原理

  一、IP转发原理

  1.利用路由协议生成路由表

  2.根据目的IP地址进行转发

  3.在IP报文转发的过程中,源和目的IP地址保持不变,只是重新封装数据帧头

  二、MPLS转发原理

  数据包从IP域进入MPLS域的时候,插入MPLS的报头,在MPLS网络中,路由器收到带有MPLS报头的数据包,查看标签,根据标签转发表来转发数据,从相应的接口发送出去。

  所以不论是IP转发还是MPLS转发,真正重要的是如何生成路由表或者标签转发表。

  三、MPLS包头格式

  32bit,4字节,相比ip报头简洁。

  20bit用作标签label

  3bit的EXP,支持QOS

  1bit的S,栈底位,用于标记是否是栈底位,这也说明了MPLS的标签是可以嵌套的,靠近二层报头为栈顶,靠近IP报头为栈底,存在多个先查看栈顶位。

  8bit的TTL,防环

  四、MPLS术语

  标签label:只具有本地意义,位于数据链路层的数据链路层封装报头和三层数据包之间,通过绑定过程同FEC相映射。

  FEC:forwarding equivalence class,转发等价类,是在转发过程中以等价的方式处理的一组数据分组。

  可以通过地址,隧道,COS等来标识创建FEC,目前看到的MPLS中只是一条路由对应一个FEC,在一台设备上,对一个FEC分配相同的标签。

  LSP:标签交换通道,一个FEC的数据流,在不同的节点被赋予确定标签,数据转发按照这些标签进行,数据流所走的路径就是LSP。

  LSR:label switching router,LSR是MPLS网络的核心交换机,提供标签交换和标签分发功能。

  LER:label switching edge router,在MPLS的网络边缘,进入到MPLS网络的流量由LER分为不同的FEC,并为这些FEC请求相应的标签。提供流量分类和标签的压入与弹出功能。

  五、MPLS域如何生成标签转发表项?

  类比于路由表学习,有直连,通过路由协议传递路由;路由与标签之间需要存在映射关系FEC;LDP协议:需要IGP协议配合;in方向是自己分配的,out方向是别人传递的。

  六、从IP域进入MPLS域,怎样插入MPLS标签头?

  push动作,在边缘设备上根据FIB表向IP报文中插入MPLS报文头。

  七、在MPLS域内,如何进行报文转发?

  swap动作,收到标签报文后,按照MPLS转发表中相关表项对报文的标签进行替换。收到带有标签的报文,若是与自己的LIB表的in方向,如果相同,替换为out方向的标签,从相应接口转发出去。

  pop动作,收到标签报文后,按照MPLS转发表中相关表项对报文中的标签进行弹出。

  PHP:倒数第二跳弹出。(为了提高效率,不然边缘路由器查IP路由表和FIB表,倒数第二跳弹出后倒数第一跳路由器直接查看IP路由表即可)

  八、倒数第二跳怎么就知道自己就该弹出呢?

  倒数第一跳连接的是IP域,那么为其分配的标签就是POP标签,特殊标签3,那么倒数第二跳路由器学习到的out方向就是pop,就知道自己是倒数第二跳了。