HCIP——MPLS

MPLS --- 多协议标签交换技术
包交换 --- 数据促成数据包,之后,在各个网络节点中不断传递,最终到达目标。
包交换转发效率不高的问题所在:

      1、在整个包交换的过程中,需要先查询路由表之后在查看ARP缓存表两张表来完成转发过程,导致效率较低;

       2、路由表的匹配规则 --- 最长匹配原则导致路由表的查询效率不会太高;

       3、路由表存在递归查找的过程;

       4、IP头部是可变长头部,导致我们对IP头部进行读取时需要使用软件进行处理,无法基于硬件进行快速的查找。

标签交换
       标签交换在二层和三层封装之间,添加一个和路由条目存在映射关系的标签,之后维护一张记录对应关系及转发接口的表,携带标签的数据来到设备上,先看标签,之后基于维护的标签转发表进行转发,而不再需要查看三层的内容。因为标签本身短小且定长,所以,其转发效率将高于包交换。

       但是标签交换需要先给数据包中上打上标签,之后在到达目标之前还需要将标签弹出,因此,标签交换只在转发过程中提高了效率,整体上相交包交换提升并不明显。

包交换的变更
       1、进程交换 --- process switching --- 最早期的包交换 --- 每一个数据包都需要先查看路由器,之后再看ARP缓存表来确定二层封装内容。

       2、快速包交换(fast switching)--- 基于流的包交换 --- 一次路由,多次交换 --- 当一股数据流来到设备上,我们只针对第一个数据包执行路由过程,将路由的结果和数据包特征(五元组)记录再缓存表当中。之后,数据流中的其他数据来到设备将直接对比缓存的五元组,相同,则直接按照转发方式进制转发而不在进行路由过程。

      3、思科的快交换技术 --- Cisco EXpress Forwading --- 简称CEF技术。--- 主要是将路由表和ARP缓存表中的内容进行预读取(就是将该递归的进行递归运算,该查ARP缓存表的提前查好),之后将结果记录在CEF表中,而CEF是支持硬件转发的,所以,可以极大的提升路由的转发效率。

       虽然CEF技术是思科的私有技术,但是各大厂商也基于思科设计出了属于自己特快交换技术。华为设备在进行路由转发时就基于FIB(转发信息表),这个表是支持硬件转发的。

       虽然标签交换无法替代包交换成为主流的转发技术,但是,依然和包交换在共同的发展,MPLS就是包交换和标签交换共同发展的产物,主要因为在一些领域下,标签交换可以做到更好:

          1、用于解决BGP的路由黑洞

          2、MPLS VPN

          3、MPLS TE --- 流量工程 --- 简单理解流量工程就是控制流量转发的路径。

HCIP——MPLS_第1张图片

 

       所有运行标签交换的路由器组成的转发网络,我们可以看作是一个MPLS网络,我们将他称为MPLS域。我们将这些运行了MPLS的设备称为LSR --- 标签交换路由器。

       基于标签交换前提首先得有标签,标签是每台LSR基于本地的路由表中的路由条目来生成的。我们将所有具有相同特征(所有匹配到同一条路由条目的数据包)的数据包称为FEC --- 等价转发类。同一个FEC需要配置一个标签。

       每台LSR将自己的标签和FEC的映射信息记录在本地的一张表中,这张表被称为 --- LIB(标签信息表)。之后,将和FIB表进行结合,生成LFIB表 --- 标签转发信息表。

       在整个过程中,LSR设备除了需要自己分配标签以外还需要知道其他LSR设备针对同一个FEC分配的标签,所以,标签交换和包交换一样也分为两个层面 --- 控制层面,数据层面

包交换和标签交换的两个层面
包交换

       控制层面 --- 路由协议的数据流方向,目的是为了获取未知网段的路由信息,生成路由表。

       数据层面 --- 设备基于已经完善的路由表(FIB)来转发具体的数据信息,其方向正好和控制层流量相反。

标签交换

       控制层面 --- 基于FEC分配标签,并获取其他LSR对同一个FEC分配的标签,之后,记录生成LIB表,之后结合FIB生成LFIB表。 --- 这个过程可以基于静态来完成,也可以基于动态协议来完成 --- LDP协议 --- 标签分发协议

       数据层面 --- 设备基于LBIB,根据标签进行转发。

三种LSR
入站LSR (ingress)--- MPLS域的边界,当没有标签的数据包来到入站LSR上,他需要在数据包压入标签;

中站LSR(transit) --- 完成标签置换动作的LSR设备;

出站LSR(egress) --- 也是MPLS域的边界,完成标签的弹出动作。

LSP --- 标签交换路径
        整个过程中,数据层流量流动的路径为R1-R2-R3-R4,这条路径我们称为LSP --- 标签交换路径。需要注意的是,LSP是单向的,如果想让数据双向来回,则还需要构建一条R4-R3-R2-R1的路径。

HCIP——MPLS_第2张图片


Label --- 20位 --- 0 - 2的20次方 --- 我们将标签号的取值范围称为标签空间,每台LSR设备的标签空间都是独立的。

其中:

          0 - 15 --- 特殊标签值 --- 我们分配的时候不能直接分配,因为每个特殊标签都拥有其特殊的含义

          16 - 1023 --- 一般应用于静态LSP搭建

          1024 - 2的20次方 --- 应用于LDP等动态标签交换协议来分配时使用

EXP --- 占3位 --- 做策略使用的 --- 一般000,可以理解为优先级,优先级高则可以优先转发。

S --- 占1位 --- 栈底位 --- 标签不止可以打一个,可以打多个,我们将多个标签的有序集合称为标签栈。如果存在多个标签,需要使用这个标记位进行标识。如果是最后一个标签,则该位置1,如果不是,则置0。

TTL --- 生存时间 --- 和三层的TTL值一样,主要目的是为了防止数据包在环路中无线循环下去。数据来到入站LSR时,将把三层的TTL值复制到标签中,在MPLS域中没经过一次转发,TTL减1,之后,在出站LSR上弹出标签,再将标签中的TTL值复制到三层报头中。

构建静态LSP:


一、保证路由条件 --- 静态只需要边界设备拥有来回路由信息即可

二、配置LSR

       入站LSR:

      1.给LSR配置LSR-ID --- 32位二进制构成,都是按照IP地址格式来写,但是,只能手动配置。

       [r1]mpls lsr-id 1.1.1.1---LSR-ID建议使用环回接口的IP地址

       2.激活MPLS

           1、全局激活MPLS

                [r1]mpls

           2、接口激活MPLS --- 所有需要参与MPLS数据收发的接口都需要激活

        

     3.构建静态的LSP  

                [r1-GigabitEthernet0/0/0]mpls

            1、下一跳 --- 必须和路由表中的下一跳相同

            2、out --- label --- 出站标签 --- 下一跳设备接受后需要根据这个标签判断数据到达那个网段。

配置中转LSR:

[r2]static-lsp transit 1to4 incoming-interface GigabitEthernet 0/0/0 in-label 1000
nexthop 23.0.0.2 out-label 1001

1、in - label --- 入站标签必须和上一跳配置的出站标签相同

配置出站LSR:

[r4]static-lsp egress 1to4 incoming-interface GigabitEthernet 0/0/0 in-label 1002
[r1]display mpls static-lsp ---查看静态LSP

你可能感兴趣的:(java,网络,服务器)