个、第3个数据包„„同样的操作。包含查询路由表、重写MAC地址,CRC校验等。

系列路由器。或者12000系列路由器。

  • Netflow switching 通过一种标准的交换机制,处理了流的第一个数据包,然后就创建了网路流缓存。

    设计网络流交换的目的是,提供一种高效率的机制。来处理扩展或复杂的訪问列表时,不必像其它的交换方式一样丧失同样多的系统性能。在网络流交换方式下,能够为每一个流收集具体的记账信息。对于新公布的IOS软件来说,网络流交换被专门用来实现该目的。而不再用来交换数据包了。在同一时候启用CEF和网络流交换的情况下。CEF为IP数据包提供交换路线。并生成流缓存。而网络流交换被用来向流收集器输出统计信息。

    这些流信息包含基于每一个用户、每种协议、每一个端口以及每种类型的服务统计信息。

    这些信息被广泛用于各种目的,比如:网络分析和规划、记账以及计费。经过统计,大致65536条数据流(flow)会耗费4MB的systembuffer

  • Cisco Express Forwarding  思科CEF是最为高效的一种三层协议。进程交换和基于缓存的交换都是数据驱动。CEF是拓扑驱动(topology-driven),并与路由选择表紧密相关, CEF 是由新的cisco设备使用的提供线速路由选择的技术。CEF让分组交换全然绕过路由处理器。通过专门的数据结构来完毕。该数据结构通过路由处理器和交换处理器之间的一个通信过程来动态更新。通常,CEF被觉得是“没有路由,一直交换”基于CEF的机制针对全部的分组,包含给定流中的第一个分组都用硬件处理的。路由选择表仍然由路由器的CPU维护,可是创建了两张额外的表:转发信息库(FIB,Forwarding Information Base)表:该表是从路由选择表中拷贝过来的转发信息,不包含不论什么路由选择协议信息。

    路由表有不论什么增删变化。FIB表均会随之变化;邻接表:维护一个邻近结点(假设两个节点能通过第2层一跳到达彼此则被觉得是邻接)以及他们相关的第2层MAC重写或下一条信息的数据库。FIB表由一棵四层的树组成,是依照IPv4所使用的点分十进制来分层的,CEF依赖最长匹配转发算法,这意味着依照降序搜索整棵树知道“最长匹配。   FIB和邻接表都被优化提供进行转发决定所需的信息,而没有很多其它的其它信息,假设FIB表已满,兴许表项将和现有表项比較。并以牺牲不具体表项的代价来保存更具体的表项。

    FIB表的长处:1、能够被硬件ASIC调用2、解决递归路由问题。直接找到下一跳3、 扩展性。应用于MPL.邻接表是由ARP实现的。将第2层地址映射到对应的第3层地址上。路由器能从路由选择更新中发现下一跳路由器,并对应的在暂时表中添加表项。这个处理让路由器构建了第3层分组转发所需的下一跳重写信息。整体来讲CEF的长处:1、可扩展性(Scalability):当激活了分布式CEF(Distributed CEF)模式时。CEF在每一块线卡(line card)上也提供了全部的交换能力。2、增强了性能:CEF使用CPU率较低,很多其它的CPU处理能力能够专注于第3层的服务,比方动态路由协议的执行。3、弹性(Resilience):在大型动态网络中,CEF提供了更好的一致性和稳定性

  • ATM是以信元为基本单位进行信息传输、复用和交换的。ATM信元具有53字节的固定长度,当中前5个字节是信元头,其余48个字节是有效载荷。

    ATM信元头的功能有限,主要用来标识虚连接,另外也完毕了一些功能有限的流量控制,拥塞控制,差错控制等功能。ATM传输数据技术屏弃了繁琐的路由查找,改为简单高速的标签交换,它适用于局域网和广域网,它具有高速传输数据率和支持很多种类型如声音、数据、传真、实时视频、CD质量音频和图像的通信。ATM有它自己的參考模型,既不同于位报头;在ATM中。标记置于虚电路标识符/虚通道标识符(VCI/VPI)信元报头中。对于MPLS可扩展性很关键的一点是标记仅仅在通信的两个设备之间有意义。在网络核心,路由器/交换机仅仅解读标记并不去解析IP数据包。

    IP包进入网络核心时,边界路由器给它分配一个标记。自此,MPLS设备就会自始至终查看这些标记信息,将这些有标记的包交换至其目的地。

    因为路由处理降低,网络的等待时间也就随之缩短,而可伸缩性却有所添加。

    MPLS数据包的服务质量类型能够由MPLS边界路由器依据IP包的各种參数来确定。如IP的源地址、目的地址、端口号、TOS值等參数。另外对于到达同一目的地的IP包,可依据其TOS值的要求来建立不同的转发路径,以达到其对传输质量的要求。同一时候,通过对特殊路由的管理。还能有效地解决网络中的负载均衡和拥塞问题。

    当网络中出现拥塞时。MPLS可实时建立新的转发路由来分散流量以缓解网络拥塞。

    MPLS网络结构

    MPLS网络由LER(标签边缘路由器)和LSR(标签交换路由器)组成。

    LER位于ATM骨干网的边缘并作为MPLS的入口/出口路由器。LER执行全部的第三层功能和由执行LDP而产生的基于LIB(LabelInforinationBase)的标签绑定功能。LER连到网络内部的LSR。LSR执行基于LIB的标签交换,具有第三层转发分组和第二层交换分组的功能。同一时候也能执行传统IP选路协议和执行一个特殊控制协议与相邻LSR协调FEC/标签的绑定信息。LER与LSR之间的LSP是通过LDP协议建立起来的。

    1. 转发等价类: MPLS作为一种分类转发技术,将具有同样转发处理方式的分组归为一类,称为FEC(Forwarding EquivalenceClass。转发等价类)。

      同样FEC的分组在MPLS网络中将获得全然同样的处理。

      FEC的划分方式很灵活。能够是以源地址、目的地址、源端口、目的端口、协议类型或VPN等为划分依据的随意组合。

      比如,在传统的採用最长匹配算法的IP转发中,到同一个目的地址的全部报文就是一个FEC。

    2. 标签 :Label是一个长度固定。仅具有本地意义的短标识符。用于唯一标识一个分组所属的FEC。一个标签仅仅能代表一个FEC。

      标签长度为4个字节,假设链路层协议具有标签域,如ATM的VPI/VCI。则标签封装在这些域中叫做信元模式;否则。标签封装在链路层头和网络层数据之间的一个垫层中叫做帧模式。这样,随意链路层都能够支持标签。标签共同拥有4个域:标签共同拥有4个域:

      • Label时表示为最底层标签。

      • TTL时表示每一个接口指定一个标签空间;取值为0时表示整个LSR使用一个标签空间。

      • LDP标签分发 :标签的分发过程有两种模式。主要差别在于标签映射的公布是上游请求(DoD)还是下游主动公布(DU)。具有标签分发邻接关系的上游LSR和下游LSR之间必须使用同样的标签公布方式。否则LSP无法正常建立

    1. DoD(downstream-on-demand)模式 :上游LSR向下游LSR发送标签请求消息(Label Request Message)。当中包含FEC的描写叙述信息。下游LSR为此FEC分配标签。并将绑定的标签通过标签映射消息(Label Mapping Message)反馈给上游LSR。

      下游LSR何时反馈标签映射消息。取决于该LSR採用的标签分配控制方式。

      採用Ordered方式时,仅仅有收到它的下游返回的标签映射消息后,才向其上游发送标签映射消息;採用Independent方式时,无论有没有收到它的下游返回的标签映射消息,都马上向其上游发送标签映射消息。上游LSR通常是依据其路由表中的信息来选择下游LSR。

    2. DU(downstream unsolicited)模式 下游LSR在LDP会话建立成功后。主动向其上游LSR公布标签映射消息。上游LSR保存标签映射信息,并依据路由表信息来处理收到的标签映射信息。

    标签分配控制方式(LabelDistribution Control Mode)分为两种:

      1. 独立标签分配控制(Independent):LSR能够在随意时间向与它连接的LSR通告标签映射。这样的方式可能导致在收到下游标签之前就向上游公布了标签。

      2. 有序标签控制方式(Ordered):对于LSR上某个FEC的标签映射,仅仅有当该LSR已经具有此FEC下一跳的标签映射消息或者该LSR就是此FEC的出口节点时,该LSR才干够向上游发送此FEC的标签映射。

     标签保持方式(Label Retention Mode)是指LSR对收到的、但眼下暂时用不到的标签—FEC绑定的处理方式。标签保持方式也分为两种:

    1. 自由标签保持方式(Liberal):对于从邻居LSR收到的标签映射,无论邻居LSR是不是自己的下一跳都保留。

      使用自由标签保持方式,LSR能够迅速适应路由变化;而使用保守标签保持方式,LSR能够分配和保存较少的标签数量。

    2. 守标签保持方式(Conservative):对于从邻居LSR收到的标签映射,仅仅有当邻居LSR是自己的下一跳时才保留。保守标签保持方式通常与DoD方式一起,用于对于标签空间有限的LSR

     标签交换中的几个基本概念

    1. NHLFE(Next Hop LabelForwarding Entry):下一跳标签转发项。用于描写叙述对标签执行的操作。包含入栈(Push)操作和交换(Swap)操作。

    2. FTN(FEC to NHLFE map):在Ingress节点将转发等价类FEC映射到NHLFE的过程。

    3. ILM(Incoming Label Map):入标签映射。

      对于接收的标签分组,LSR将标签映射到NHLFE的过程。包含空(Null)操作、出栈(Pop)操作。

    标签交换的过程 入口LER(Ingress)将进入网络的分组划分成转发等价类FEC。属于同样FEC的分组在MPLS域中将经过同样的路径。即使用同一条LSP。LSR对到来的FEC分组分配一个标签,然后从对应的接口转发出去。标签交换的具体操作描写叙述例如以下:

    1. LSP沿途的全部LSR都先建立ILM,入标签是依据ILM表项进行映射的;

    2. 对于接收到的标签分组,LSR将标签映射到NHLFE。

    3. LSR仅仅需依据标签从标签信息表中找到对应的NHLFE,用新的标签替换原来的标签,然后对标签分组继续转发

    标签分发与分配的注意:

    1. 标签的分配是将MPLS标签插入到数据包中;

    2. 标签的分发是将MPLS标签传递给邻居路由器

    3. 标签的分配仅仅在本地有意义

    4. 标签的分配(allocation):决定需不须要对该路由条目分配标签。或者说给什么样的条目分发标签。对于帧模式来说,这个动作是本地路由器作出的,与其它路由器无关

    5. 标签的分发(distribution):决定将产生的标签传递给谁、怎样传的过程

    6. 标签的保留:像ARP一样,在路由条目失效后一定时间内标签继续有效

    7. 帧模式的标签分配原则是:independantcontrol独立控制。即无论能否收到邻居传递过来的标签。都会对本地前缀分配标签。

    8. 帧模式的标签分发原则是:下游自主,即无论你有没实用到我发给你的标签,仅仅要建立了邻居关系,我都会把我本地的标签发给你。这里的上下游是指数据转发的上下游。

    9. 帧模式的标签保留原则是:自由。即谁分配的标签谁保留。

    10. 帧模式的标签保存:将邻居传递过来的标签保存在LFIB里面,同一时候保存在FIB里面

    11. 信元模式的标签分配原则:按序

    12. 信元模式的标签分发原则:按需,即收到请求之后才分发。

    13. 信元模式的标签保留原则:保守,即仅仅保留下游路由器发过来的标签

    F)LDP的操作主要包含下面四个阶段

    1. 发现阶段 :在这一阶段,希望建立会话的LSR向相邻LSR周期性地发送Hello消息,通知相邻节点自己的存在。

      通过这一过程。LSR能够自己主动发现它的LDP对等体,而无需进行手工配置。

      LDP有两种发现机制:

    1. 基本发现机制用于发现本地的LDP对等体,即通过链路层直接相连的LSR,建立本地LDP会话。这样的方式下,LSR周期性以UDP报文形式从接口发送LDP链路Hello消息(LDP Link Hello),发往标识“子网内全部路由器”的组播地址。

      LDP链路Hello消息带有接口的LDP标识符及其它相关信息。假设LSR在某个接口收到了LDP链路Hello消息。则表明在该接口(链路层)存在LDP对等体。

    2. 字节,所以仅仅要改成比正常MTU多8字节就可以。)
      而改MTU还必须在MPLS网络中全部设备上进行更改,除非同意分段。

      MPLS对TTL的处理

      MPLS的TTL处理包含IP TTL复制和ICMP响应报文返回路径这两个方面

      1. IP TTL复制 :MPLS标签中包含一个8位的TTL域,其含义与IP头中的TTL域同样。依据RFC 3031中的描写叙述。LSR节点在对分组压入标签时。须要将原IP分组或下层标签中的TTL值复制到新添加的标签的TTL域。

        LSR在转发标签分组时,对栈顶标签的TTL值做减一操作。标签出栈时,再将栈顶的TTL值拷贝回IP分组或下层标签。TTL除了用于防止产生路由环路外,也用于实现tracert功能:  假设在Ingress节点使能IP TTL复制功能,报文在LSP中经过的每一跳都体现为IP TTL逐跳递减,tracert的结果将反映报文实际经过的路径。      假设不在Ingress节点使能IP TTL复制功能。则报文在LSP中经过的跳数不会导致IP TTL递减,tracert的结果不包含MPLS骨干网络中每一跳,就好像Ingress路由器与Egress路由器是直连的。

      2. ICMP响应报文 :在MPLS VPN网络中。P路由器无法对MPLS承载的VPN报文进行路由。当MPLS报文的TTL超时时。ICMP响应报文将依照LSP继续传送,到达LSP终点路由器后,再依据IP路由转发ICMP响应报文。这样的处理方式添加了网络流量和报文转发时延。对于仅有一层标签的MPLS报文,当TTL超时时,直接使用IP路由返回ICMP响应报文

      检測MPLS LSP

       在MPLS中,假设LSP转发数据失败。负责建立LSP的MPLS控制平面将无法检測到这样的错误,这会给网络维护带来困难。

      MPLS LSP Ping/Traceroute为用户提供了发现LSP错误、并及时定位失效节点的机制。类似于普通IP的Ping/Traceroute。MPLS LSP Ping/Traceroute使用MPLS Echo Request报文和MPLS Echo Reply报文检測LSP的可用性。MPLS Echo Request中携带须要检測的FEC信息,和其它属于此FEC的报文一样沿LSP发送,从而实现对LSP的检測。

        1. MPLS LSP Ping)基于MPLS的VPN  传统的)基于MPLS的QoS  基于MPLS的流量project和差分服务Diff-Serv特性,在保证网络高利用率的同一时候,能够依据不同数据流的优先级实现差别服务,从而为语音。视频数据流提供有带宽保证的低延时、低丢包率的服务。因为全网实施流量project的难度比較大,因此,在实际的组网方案中往往通过差分服务模型来实施QoS。

          Diff-Serv的基本机制是在网络边缘,依据业务的服务质量要求将该业务映射到一定的业务类别中,利用IP分组中的DS(Differentiated Service)字段(由ToS域而来)唯一的标记该类业务;然后。骨干网络中的各节点依据该字段对各种业务採取预先设定的服务策略。保证对应的服务质量。

          Diff-Serv对服务质量的分类和标签机制与MPLS的标签分配十分类似,其实,基于MPLS的Diff-Serv就是通过将DS的分配与MPLS的标签分配过程结合来实现的。

          实验一、MPLS基础之认识LDP

          LER1配置:

          LER1#conft

          LER1(config)#intlo 0

          LER1(config-if)#ipadd 1.1.1.1 255.255.255.255

          LER1(config-if)#exit

          LER1(config)#intfa0/0

          LER1(config-if)#ipadd 192.168.12.1 255.255.255.0

          LER1(config-if)#mplsip //在接口下开启mpls

          LER1(config-if)#mplsmtu 1600 //改动MTU值

          LER1(config-if)#nosh

          LER1(config-if)#exit

          LER1(config)#intfa0/1

          LER1(config-if)#ipadd 192.168.13.1 255.255.255.0

          LER1(config-if)#mplsip

          LER1(config-if)#mplsmtu 1600

          LER1(config-if)#nosh

          LER1(config-if)#exit

          LER1(config)#routerospf 1

          LER1(config-router)#network0.0.0.0 255.255.255.255 area 0

          LER1(config-router)#default-informationoriginate always //公布默认路由

          LER1(config-router)#exit

          LER1(config)#iproute 0.0.0.0 0.0.0.0 null0 //加入一个空接口的默认路由

          LER1(config)#ipcef //必须全局开启CEF

          LER1(config)#mplsip //全局开启mpls。能够不用输入默认开启

          LER1(config)#mplsip propagate-ttl//开启MPLSTTL复制

          LER1(config)#mplsldp loop-detection //开启环路保护

          LER1(config)#mplsldp maxhops 30 //设置环路检測最大跳数为30

          LER1(config)#mplslabel range 110 119//设置MPLS的标签范围

          LER1(config)#mplsip default-route //MPLS为公布的默认路由加入标签

          LER1(config)#mplsldp router-id loopback 0 force //手动强制指定ldp中的路由ID

          LER1(config)#mplsldp neighbor 4.4.4.4 targeted ldp //在非直连情况下指定LER2为邻居

          LER1(config)#mplsldp neighbor 4.4.4.4 password kkfloat//使用MD5验证与LER2建立邻居关系

          LER1(config)#mplsldp discovery hello holdtime 10//改动LDP的holdtime间隔为10秒

          LER1(config)#mplsldp discovery hello interval 2 //改动LDP发Hello的间隔为2秒

          LER1(config)#mplslabel protocol ldp //指定mpls使用ldp标签分发协议

          LSR2配置:

          LSR2#conft

          LSR2(config)#intlo 0

          LSR2(config-if)#ipadd 2.2.2.2 255.255.255.255

          LSR2(config-if)#exit

          LSR2(config)#intfa0/0

          LSR2(config-if)#ipadd 192.168.12.2 255.255.255.0

          LSR2(config-if)#mpls mtu 1600

          LSR2(config-if)#mplsip

          LSR2(config-if)#nosh

          LSR2(config-if)#exit

          LSR2(config)#intfa0/1

          LSR2(config-if)#ipadd 192.168.24.2 255.255.255.0

          LSR2(config-if)#mplsmtu 1600

          LSR2(config-if)#mplsip

          LSR2(config-if)#nosh

          LSR2(config-if)#exit

          LSR2(config)#routerospf 1

          LSR2(config-router)#net0.0.0.0 255.255.255.255 area 0

          LSR2(config-router)#exit

          LSR2(config)#ipcef

          LSR2(config)#mplsip

          LSR2(config)#mpls ldp loop-detection

          LSR2(config)#mpls ldp maxhops 30

          LSR2(config)#mplslabel range 200 300

          LSR2(config)#mplsip default-route

          LSR2(config)#mplsldp router-id loopback 0 force

          LSR2(config)#mplsldp discovery hello holdtime 10

          LSR2(config)#mplsldp discovery hello interval 2

          LSR2(config)#mplslabel protocol ldp

          LSR3配置:

          LSR3#conft

          LSR3(config)#intlo 0

          LSR3(config-if)#ipadd 3.3.3.3 255.255.255.255

          LSR3(config-if)#exit

          LSR3(config)#intfa0/0

          LSR3(config-if)#ipadd 192.168.13.3 255.255.255.0

          LSR3(config-if)#mplsip

          LSR3(config-if)#mplsmtu 1600

          LSR3(config-if)#nosh

          LSR3(config-if)#exit

          LSR3(config)#intfa0/1

          LSR3(config-if)#ipadd 192.168.34.3 255.255.255.0

          LSR3(config-if)#mplsmtu 1600

          LSR3(config-if)#mplsip

          LSR3(config-if)#nosh

          LSR3(config-if)#exit

          LSR3(config)#routerospf 1

          LSR3(config-router)#network0.0.0.0 255.255.255.255 area 0

          LSR3(config-router)#exit

          LSR3(config)#ipcef

          LSR3(config)#mplsip

          LSR3(config)#mpls ldp loop-detection

          LSR3(config)#mpls ldp maxhops 30

          LSR3(config)#mplslabel range 300 399

          LSR3(config)#mplsip default-route

          LSR3(config)#mplsldp router-id loopback 0 force

          LSR3(config)#mplsldp discovery hello holdtime 10

          LSR3(config)#mplsldp discovery hello interval 2

          LSR3(config)#mplslabel protocol ldp

          LER2配置:

          LER2#conft

          LER2(config)#intlo 0

          LER2(config-if)#ipadd 4.4.4.4 255.255.255.255

          LER2(config-if)#exit

          LER2(config)#intfa0/0

          LER2(config-if)#ipadd 192.168.24.4 255.255.255.0

          LER2(config-if)#mplsmtu 1600

          LER2(config-if)#mplsip

          LER2(config-if)#nosh

          LER2(config-if)#exit

          LER2(config)#intfa0/1

          LER2(config-if)#mplsmtu 1600

          LER2(config-if)#ipadd 192.168.34.4 255.255.255.0

          LER2(config-if)#mplsip

          LER2(config-if)#exit

          LER2(config)#intfa0/1

          LER2(config-if)#nosh

          LER2(config-if)#exit

          LER2(config)#routerospf 1

          LER2(config-router)#network0.0.0.0 255.255.255.255 area 0

          LER2(config-router)#exit

          LER2(config)#ipcef

          LER2(config)#mplsip

          LER2(config)#mpls ldp loop-detection

          LER2(config)#mpls ldp maxhops 30

          LER2(config)#mplslabel range 400 499

          LER2(config)#mplsip default-route

          LER2(config)#mplsldp router-id loopback 0 force

          LER2(config)#mplsldp neighbor 1.1.1.1 targeted ldp

          LER2(config)#mplsldp neighbor 1.1.1.1 password kkfloat

          LER2(config)#mplsldp discovery hello holdtime 10

          LER2(config)#mplsldp discovery hello interval 2

          LER2(config)#mplslabel protocol ldp

          配置完毕查看状态:

          LER2#shmpls ldp neighbor  //查看LDP邻居信息

          Peer LDP Ident: 3.3.3.3:0; Local LDP Ident4.4.4.4:0

          TCP connection: 3.3.3.3.646 -4.4.4.4.23820

          State: Oper; Msgs sent/rcvd: 31/32;Downstream

          Up time: 00:14:41

          LDP discovery sources:

          FastEthernet0/1, Src IP addr:192.168.34.3

          Addresses bound to peer LDP Ident:

          192.168.13.3    3.3.3.3         192.168.34.3

          Peer LDP Ident: 2.2.2.2:0; Local LDP Ident4.4.4.4:0

          TCP connection: 2.2.2.2.646 -4.4.4.4.39557

          State: Oper; Msgs sent/rcvd: 31/31;Downstream

          Up time: 00:14:41

          LDP discovery sources:

          FastEthernet0/0, Src IP addr:192.168.24.2

          Addresses bound to peer LDP Ident:

          192.168.12.2    2.2.2.2         192.168.24.2

          PeerLDP Ident: 1.1.1.1:0; Local LDP Ident 4.4.4.4:0

          TCP connection: 1.1.1.1.646 -4.4.4.4.46138

          State: Oper; Msgs sent/rcvd: 30/29;Downstream

          Up time: 00:14:19

          LDP discovery sources:

          Targeted Hello 4.4.4.4 -> 1.1.1.1,active, passive

          Addresses bound to peer LDP Ident:

          1.1.1.1         192.168.12.1    192.168.13.1

          LER2#shmpls forwarding-table //查看mpls LFIB 信息

          Local  Outgoing   Prefix            Bytes tag  Outgoing  Next Hop

          tag    tag or VC  or Tunnel Id      switched   interface

          400    Pop tag    3.3.3.3/32        0          Fa0/1      192.168.34.3

          401    Pop tag    2.2.2.2/32        0          Fa0/0      192.168.24.2

          402    Pop tag    192.168.12.0/24   0          Fa0/0      192.168.24.2

          403    Pop tag    192.168.13.0/24   0          Fa0/1      192.168.34.3

          404    304        1.1.1.1/32        0          Fa0/1      192.168.34.3

          204         1.1.1.1/32        0          Fa0/0      192.168.24.2

          405    305        0.0.0.0/0         0          Fa0/1      192.168.34.3

          205         0.0.0.0/0         0          Fa0/0      192.168.24.2

          LER2#shmpls ldp bindings // 查看FIB信息

          tib entry: 0.0.0.0/0, rev 20

          local binding:  tag: 405

          remote binding: tsr: 1.1.1.1:0, tag:imp-null

          remote binding: tsr: 2.2.2.2:0, tag:205

          remote binding: tsr: 3.3.3.3:0, tag:305

          tib entry: 1.1.1.1/32, rev 16

          local binding:  tag: 404

          remote binding: tsr: 3.3.3.3:0, tag:304

          remote binding: tsr: 2.2.2.2:0, tag:204

          remote binding: tsr: 1.1.1.1:0, tag:imp-null

          tib entry: 2.2.2.2/32, rev 10

          local binding:  tag: 401

          remote binding: tsr: 3.3.3.3:0, tag:301

          remote binding: tsr: 2.2.2.2:0, tag:imp-null

          remote binding: tsr: 1.1.1.1:0, tag:112

          tib entry: 3.3.3.3/32, rev 8

          local binding:  tag: 400

          remote binding: tsr: 3.3.3.3:0, tag:imp-null

          remote binding: tsr: 2.2.2.2:0, tag:201

          remote binding: tsr: 1.1.1.1:0, tag:111

          tib entry: 4.4.4.4/32, rev 4

          local binding:  tag: imp-null

          remote binding: tsr: 3.3.3.3:0, tag:300

          remote binding: tsr: 2.2.2.2:0, tag:200

          remote binding: tsr: 1.1.1.1:0, tag:110

          tib entry: 192.168.12.0/24, rev 12

          local binding:  tag: 402

          remote binding: tsr: 3.3.3.3:0, tag:303

          remote binding: tsr: 2.2.2.2:0, tag:imp-null

          remote binding: tsr: 1.1.1.1:0, tag:imp-null

          tib entry: 192.168.13.0/24, rev 14

          local binding:  tag: 403

          remote binding: tsr: 3.3.3.3:0, tag:imp-null

          remote binding: tsr: 2.2.2.2:0, tag:203

          remote binding: tsr: 1.1.1.1:0, tag:imp-null

          tib entry: 192.168.24.0/24, rev 5

          local binding:  tag: imp-null

          remote binding: tsr: 3.3.3.3:0, tag:302

          remote binding: tsr: 2.2.2.2:0, tag:imp-null

          remote binding: tsr: 1.1.1.1:0, tag:113

          tib entry: 192.168.34.0/24, rev 6

          local binding:  tag: imp-null

          remote binding: tsr: 3.3.3.3:0, tag:imp-null

          remote binding: tsr: 2.2.2.2:0, tag:202

          remote binding: tsr: 1.1.1.1:0, tag:114

          LER2#traceroute1.1.1.1 source 4.4.4.4 //追踪路由

          Typeescape sequence to abort.

          Tracingthe route to 1.1.1.1

          1 192.168.34.3 [MPLS: Label 304 Exp 0] 72msec

          192.168.24.2 [MPLS: Label 204 Exp 0] 96msec

          192.168.34.3 [MPLS: Label 304 Exp 0] 56msec

          2 192.168.12.1 76 msec

          192.168.13.1 36 msec

          192.168.12.1 72 msec

          实验二、MPLS基础之标签过滤

          LER1配置:

          LER1#conft

          LER1(config)#intlo 0

          LER1(config-if)#ipadd 1.1.1.1 255.255.255.255

          LER1(config-if)#exit

          LER1(config)#intfa0/0

          LER1(config-if)#ipadd 192.168.12.1 255.255.255.0

          LER1(config-if)#mplsip

          LER1(config-if)#nosh

          LER1(config-if)#exit

          LER1(config)#routerospf 1

          LER1(config-router)#net0.0.0.0 255.255.255.255 area 0

          LER1(config-router)#exit

          LER1(config)#access-list1 deny 192.168.12.0

          LER1(config)#access-list1 deny 192.168.23.0

          LER1(config)#access-list1 deny 2.2.2.2

          LER1(config)#access-list1 permit any

          LER1(config)#ipcef

          LER1(config)#mplsip

          LER1(config)#mplslabel range 100 120//设置MPLS标签范围

          LER1(config)#mplslabel protocol ldp //设置mpls标签分发协议ldp

          LER1(config)#nompls ldp advertise-labels//清除全部通告的Tag标签

          LER1(config)#mplsldp advertise-labels for 1//将ACL应用于标签通告达到过滤效果

          LSR配置:

          LSR#conf t

          LSR(config)#intlo 0

          LSR(config-if)#ipadd 2.2.2.2 255.255.255.255

          LSR(config-if)#exit

          LSR(config)#intfa0/0

          LSR(config-if)#ipadd 192.168.12.2 255.255.255.0

          LSR(config-if)#mplsip

          LSR(config-if)#nosh

          LSR(config-if)#exit

          LSR(config)#intfa0/0

          LSR(config-if)#ipadd 192.168.23.2 255.255.255.0

          LSR(config-if)#mplsip

          LSR(config-if)#nosh

          LSR(config-if)#exit

          LSR(config)#intfa0/0

          LSR(config-if)#ipadd 192.168.12.2 255.255.255.0

          LSR(config-if)#exit

          LSR(config)#intfa0/1

          LSR(config-if)#ipadd 192.168.23.2 255.255.255.0

          LSR(config-if)#mplsip

          LSR(config-if)#nosh

          LSR(config-if)#exit

          LSR(config)#routerospf 1

          LSR(config-router)#net0.0.0.0 255.255.255.255 area 0

          LSR(config-router)#exit

          LSR(config)#access-list1 deny 192.168.12.0

          LSR(config)#access-list1 deny 192.168.23.0

          LSR(config)#access-list1 deny 2.2.2.2

          LSR(config)#access-list1 permit any

          LSR(config)#ipcef

          LSR(config)#mplsip

          LSR(config)#mplslabel range 200 210

          LSR(config)#mplslabel protocol ldp

          LSR(config)#nompls ldp advertise-labels

          LSR(config)#mplsldp advertise-labels for 1

          LSR2配置:

          LER3#conft

          LER3(config)#intlo 0

          LER3(config-if)#ipadd 3.3.3.3 255.255.255.255

          LER3(config-if)#exit

          LER3(config)#intfa0/0

          LER3(config-if)#ipadd 192.168.23.3 255.255.255.0

          LER3(config-if)#mplsip

          LER3(config-if)#nosh

          LER3(config-if)#exit

          LER3(config)#routerospf 1

          LER3(config-router)#net0.0.0.0 255.255.255.255 area 0

          LER3(config-router)#exit

          LER3(config)#access-list1 deny 192.168.12.0

          LER3(config)#access-list1 deny 192.168.23.0

          LER3(config)#access-list1 deny 2.2.2.2

          LER3(config)#access-list1 permit any

          LER3(config)#ipcef

          LER3(config)#mplsip

          LER3(config)#mplslabel range 300 310

          LER3(config)#mplslabel protocol ldp

          LER3(config)#nompls ldp advertise-labels

          LER3(config)#mplsldp advertise-labels for 1

          配置完毕观察效果:

          LER1#sh ipcef 3.3.3.3 //转发信息库。这是开启CEF后形成的一个表,这个表结合了路由表。ARP表,它使得数据包转发的时候不须要再查询路由表,不再须要递归路由查询。直接依据FIB转发就可以

          3.3.3.3/32,version 9, epoch 0, cached adjacency 192.168.12.2

          0 packets,0 bytes

          tag information set

          local tag: 100

          fast tag rewrite with Fa0/0, 192.168.12.2,tags imposed: {200}

          via 192.168.12.2, FastEthernet0/0, 0dependencies

          next hop 192.168.12.2, FastEthernet0/0

          valid cached adjacency

          tag rewrite with Fa0/0, 192.168.12.2, tags imposed: {200}

          LER1#shmpls forwarding-table //查看(LFIB)标签转发信息库,仅仅在执行标签交换时被查询

          Local  Outgoing   Prefix            Bytes tag  Outgoing  Next Hop

          tag    tag or VC  or Tunnel Id      switched   interface

          100    200        3.3.3.3/32        0          Fa0/0      192.168.12.2

          101    Untagged   2.2.2.2/32        0          Fa0/0      192.168.12.2

          102    Untagged   192.168.23.0/24   0          Fa0/0      192.168.12.2

          LER1#shmpls ldp bindings // LIB标签信息库,这张表里面保存了FEC对应的全部标签信息

          tib entry: 1.1.1.1/32, rev 4

          local binding:  tag: imp-null

          remote binding: tsr: 2.2.2.2:0, tag:201

          tib entry: 2.2.2.2/32, rev 8

          local binding:  tag: 101

          tib entry: 3.3.3.3/32, rev 6

          local binding:  tag: 100

          remote binding: tsr: 2.2.2.2:0, tag:200

          tib entry: 192.168.12.0/24, rev 3

          local binding:  tag: imp-null

          tib entry: 192.168.23.0/24, rev 10

          local binding:  tag: 102

          LER1#traceroute3.3.3.3 source 1.1.1.1//追踪路由

          Typeescape sequence to abort.

          Tracingthe route to 3.3.3.3

          1 192.168.12.2 [MPLS: Label 200 Exp 0] 80msec 76 msec 40 msec

          2 192.168.23.3 68 msec 40 msec 68 msec

          实验三、MPLS之帧模式(Frame Mode)

          watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQva2tmbG9hdA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" />

          R1配置:

          R1#conf t

          R1(config)#intlo 0

          R1(config-if)#ipadd 1.1.1.1 255.255.255.255

          R1(config-if)#exit

          R1(config)#intfa0/0

          R1(config-if)#ipadd 192.168.12.1 255.255.255.0

          R1(config-if)#mplsip

          R1(config-if)#nosh

          R1(config-if)#exit

          R1(config)#routerospf 1

          R1(config-router)#net0.0.0.0 255.255.255.255 area 0

          R1(config-router)#exit

          R1(config)#ipcef

          R1(config)#mplslabel protocol ldp

          R2配置:

          R2#conf t

          R2(config)#intlo 0

          R2(config-if)#ipadd 2.2.2.2 255.255.255.255

          R2(config-if)#exit

          R2(config)#intfa0/0

          R2(config-if)#ipadd 192.168.12.2 255.255.255.0

          R2(config-if)#mplsip

          R2(config-if)#nosh

          R2(config-if)#exit

          R2(config)#intfa0/1

          R2(config-if)#ipadd 192.168.23.2 255.255.255.0

          R2(config-if)#mplsip

          R2(config-if)#nosh

          R2(config-if)#exit

          R2(config)#routeros

          R2(config)#routerospf 1

          R2(config-router)#net0.0.0.0 255.255.255.255 area 0

          R2(config-router)#exit

          R2(config)#ipcef

          R2(config)#mplsip

          R2(config)#mplslabel protocol ldp

          R3配置:

          R3#conf t

          R3(config)#intlo 0

          R3(config-if)#ipadd 3.3.3.

          R3(config-if)#ipadd 3.3.3.3 255.255.255.255

          R3(config-if)#exit

          R3(config)#intfa0/0

          R3(config-if)#ipadd 192.168.23.3 255.255.255.0

          R3(config-if)#mplsip

          R3(config-if)#nosh

          R3(config-if)#exit

          R3(config)#routerospf 1

          R3(config-router)#net0.0.0.0 255.255.255.255 area 0

          R3(config-router)#exit

          R3(config)#ipcef

          R3(config)#mplsip

          R3(config)#mplslabel protocol ldp

          配置完毕,測试网络,并查看MPLS表项:

          R1#traceroute3.3.3.3 source loopback 0

          Typeescape sequence to abort.

          Tracing theroute to 3.3.3.3

          1 192.168.12.2 [MPLS: Label 17 Exp 0] 92 msec120 msec 64 msec

          2 192.168.23.3 68 msec 76 msec 56 msec

          R1#sh mplsforwarding-table

          Local  Outgoing   Prefix            Bytes tag  Outgoing  Next Hop

          tag    tag or VC  or Tunnel Id      switched   interface

          16     Pop tag    2.2.2.2/32        0          Fa0/0      192.168.12.2

          17     Pop tag    192.168.23.0/24   0          Fa0/0      192.168.12.2

          18     17         3.3.3.3/32        0          Fa0/0      192.168.12.2

          R1#sh mplsldp bindings

          tib entry: 1.1.1.1/32, rev 4

          local binding:  tag: imp-null

          remote binding: tsr: 2.2.2.2:0, tag: 16

          tib entry: 2.2.2.2/32, rev 6

          local binding:  tag: 16

          remote binding: tsr: 2.2.2.2:0, tag:imp-null

          tib entry: 3.3.3.3/32, rev 10

          local binding:  tag: 18

          remote binding: tsr: 2.2.2.2:0, tag: 17

          tib entry: 192.168.12.0/24, rev 3

          local binding:  tag: imp-null

          remote binding: tsr: 2.2.2.2:0, tag:imp-null

          tib entry: 192.168.23.0/24, rev 8

          local binding:  tag: 17

          remote binding: tsr: 2.2.2.2:0, tag:imp-null

          R3#sh mplsldp bindings

          tib entry: 1.1.1.1/32, rev 8

          local binding:  tag: 17

          remote binding: tsr: 2.2.2.2:0, tag: 16

          tib entry: 2.2.2.2/32, rev 6

          local binding:  tag: 16

          remote binding: tsr: 2.2.2.2:0, tag:imp-null

          tib entry: 3.3.3.3/32, rev 2

          local binding:  tag: imp-null

          remote binding: tsr: 2.2.2.2:0, tag: 17

          tib entry: 192.168.12.0/24, rev 10

          local binding:  tag: 18

          remote binding: tsr: 2.2.2.2:0, tag:imp-null

          tib entry: 192.168.23.0/24, rev 4

          local binding:  tag: imp-null

          remote binding: tsr: 2.2.2.2:0, tag:imp-null

          R3#sh mplsforwarding-table

          Local  Outgoing   Prefix            Bytes tag  Outgoing  Next Hop

          tag    tag or VC  or Tunnel Id      switched   interface

          16     Pop tag    2.2.2.2/32        0          Fa0/0      192.168.23.2

          17     16         1.1.1.1/32        0          Fa0/0      192.168.23.2

          18     Pop tag    192.168.12.0/24   0          Fa0/0      192.168.23.2

          结论:

          1. 帧模式的标签分配原则是:independantcontrol独立控制,即无论能否收到邻居传递过来的标签。都会对本地前缀分配标签;

          2. 帧模式的标签分发原则是:下游自主。即无论你有没实用到我发给你的标签。仅仅要建立了邻居关系,我都会把我本地的标签发给你。这里的上下游是指数据转发的上下游。

          3. 帧模式的标签保留原则是:自由,即谁分配的标签谁保留。

          4. 帧模式的标签保存:将邻居传递过来的标签保存在LFIB里面。同一时候保存在FIB里面

           

           

           

           

          实验四、MPLS AtoM 之中的一个 Pseudowire Ethernet over MPLS(EoMPLS/L2VPN)

          CE1配置:

          CE1#conf t

          CE1(config)#intfa0/0

          CE1(config-if)#ipadd 192.168.0.10 255.255.255.0

          CE1(config-if)#nosh

          CE1(config-if)#exit

          CE2配置:

          CE2#conf t

          CE2(config)#intfa0/0

          CE2(config-if)#ipadd 192.168.0.11 255.255.255.0

          CE2(config-if)#nosh

          CE2(config-if)#exit

          PE1配置:

          PE1#conf t

          PE1(config)#intlo 0

          PE1(config-if)#ipadd 1.1.1.1 255.255.255.255

          PE1(config-if)#exit

          PE1(config)#intfa0/0

          PE1(config-if)#noip address

          PE1(config-if)#xconnect3.3.3.3 100 encapsulation mpls

          PE1(config-if-xconn)#exit

          PE1(config-if)#nosh

          PE1(config)#intfa0/1

          PE1(config-if)#ipadd 192.168.12.1 255.255.255.0

          PE1(config-if)#mplsip

          PE1(config-if)#nosh

          PE1(config-if)#exit

          PE1(config)#routerospf 1

          PE1(config-router)#net0.0.0.0 255.255.255.255 area 0

          PE1(config-router)#passive-interfacefastEthernet 0/0

          PE1(config-router)#exit

          PE1(config)#ipcef

          PE1(config)#mplsip

          PE1(config)#mplslabel protocol ldp

          P配置:

          P#conf t

          P(config)#intlo 0

          P(config-if)#ipadd 2.2.2.2 255.255.255.255

          P(config-if)#exit

          P(config)#intfa0/0

          P(config-if)#ipadd 192.168.12.2 255.255.255.0

          P(config-if)#mplsip

          P(config-if)#nosh

          P(config-if)#exit

          P(config)#interfacefa0/1

          P(config-if)#ipadd 192.168.23.2 255.255.255.0

          P(config-if)#mplsip

          P(config-if)#nosh

          P(config-if)#exit

          P(config)#routerospf 1

          P(config-router)#net0.0.0.0 255.255.255.255 area 0

          P(config-router)#exit

          P(config)#ipcef

          P(config)#mplsip

          P(config)#mplslabel pro ldp

          PE2配置:

          PE2#conf t

          PE2(config)#intlo 0

          PE2(config-if)#ipadd 3.3.3.3 255.255.255.255

          PE2(config-if)#exit

          PE2(config)#intfa0/0

          PE2(config-if)#noip address

          PE2(config-if)#xconnect1.1.1.1 100 encapsulation mpls

          PE2(config-if-xconn)#exit

          PE2(config-if)#nosh

          PE2(config)#intfa0/1

          PE2(config-if)#ipadd 192.168.23.3 255.255.255.0

          PE2(config-if)#mplsip

          PE2(config-if)#nosh

          PE2(config-if)#exit

          PE2(config)#routerospf 1

          PE2(config-router)#net0.0.0.0 255.255.255.255 area 0

          PE2(config-router)#passive-interfacefastEthernet 0/0

          PE2(config-router)#exit

          PE2(config)#ipcef

          PE2(config)#mplsip

          PE2(config)#mplslabel protocol ldp

          配置完毕。检查网络

          PE1#sh iprou ospf

          2.0.0.0/32 is subnetted, 1 subnets

          O       2.2.2.2 [110/11] via 192.168.12.2,00:07:35, FastEthernet0/1

          3.0.0.0/32 is subnetted, 1 subnets

          O       3.3.3.3 [110/21] via 192.168.12.2,00:07:35, FastEthernet0/1

          O    192.168.23.0/24 [110/20] via 192.168.12.2,00:07:35, FastEthernet0/1

          CE1#traceroute192.168.0.11

          Typeescape sequence to abort.

          Tracingthe route to 192.168.0.11

          1192.168.0.11 156 msec 108 msec 88 msec

          PE1#shmpls l2transport vc detail

          Localinterface: Fa0/0 up, line protocol up, Ethernet up

          Destination address: 3.3.3.3, VC ID: 100, VCstatus: up

          Next hop: 192.168.12.2

          Output interface: Fa0/1, imposed labelstack {18 19}

          Create time: 00:04:21, last status changetime: 00:04:15

          Signaling protocol: LDP, peer 3.3.3.3:0 up

          MPLS VC labels: local 19, remote 19

          Group ID: local 0, remote 0

          MTU: local 1500, remote 1500

          Remote interface description:

          Sequencing: receive disabled, send disabled

          VC statistics:

          packet totals: receive 38, send 38

          byte totals:   receive 3998, send 3985

          packet drops:  receive 0, seq error 0, send 0

          PE1#shmpls forwarding-table

          Local  Outgoing   Prefix            Bytes tag  Outgoing  Next Hop

          tag    tag or VC  or Tunnel Id      switched   interface

          16     Pop tag    2.2.2.2/32        0          Fa0/1      192.168.12.2

          17     Pop tag    192.168.23.0/24   0          Fa0/1      192.168.12.2

          18     18         3.3.3.3/32        0          Fa0/1      192.168.12.2

          19                 l2ckt(100)        5466       none      point2point

          实验五、MPLSAtoM 之二Pseudowire Frame-Relay over MPLS (FoMPLS/L2VPN)

          CE1配置:

          CE1#conf t

          CE1(config)#frame-relay switching

          CE1(config)#int s1/0

          CE1(config-if)#clock rate 64000

          CE1(config-if)#encapsulation frame-relay

          CE1(config-if)#frame-relay intf-type DTE

          CE1(config-if)#frame-relayinterface-dlci 102

          CE1(config-fr-dlci)#exit

          CE1(config-if)#ip add 12.12.12.1255.255.255.0

          CE1(config-if)#no sh

          CE1(config-if)#exit

          CE2配置:

          CE2#conf t

          CE2(config)#frame-relay switching

          CE2(config)#int s1/0

          CE2(config-if)#clock rate 64000

          CE2(config-if)#encapsulation frame-relay

          CE2(config-if)#frame-relay intf-type DTE

          CE2(config-if)#frame-relayinterface-dlci 201

          CE2(config-fr-dlci)#exit

          CE2(config-if)#ip add 12.12.12.2255.255.255.0

          CE2(config-if)#no sh

          CE2(config-if)#exit

          PE1配置:

          PE1#conf t

          PE1(config)#int lo 0

          PE1(config-if)#ip add 1.1.1.1255.255.255.255

          PE1(config-if)#exit

          PE1(config)#int fa0/0

          PE1(config-if)#ip add 192.168.12.1255.255.255.0

          PE1(config-if)#mpls ip

          PE1(config-if)#no sh

          PE1(config-if)#exit

          PE1(config-if)#exit

          PE1(config)#fram

          PE1(config)#frame-relay switching

          PE1(config)#int s1/0

          PE1(config-if)#clock rate 64000

          PE1(config-if)#encapsulation frame-relay

          PE1(config-if)#frame-relay intf-type dce

          PE1(config-if)#no shutdown

          PE1(config-if)#exit

          PE1(config)#router ospf 1

          PE1(config-router)#net 0.0.0.0255.255.255.255 area 0

          PE1(config-router)#passive-interfaces1/0

          PE1(config-router)#exit

          PE1(config)#connect PE1-PE2 serial 1/0102 l2transport

          PE1(config-fr-pw-switching)#xconnect3.3.3.3 12 encapsulation mpls

          PE1(config-xconn)#exit

          PE1(config-fr-pw-switching)#exit

          PE1(config)#ip cef

          PE1(config)#mpls ip

          PE1(config)#mpls label protocol ldp

          P配置:

          P#conf t

          P(config)#int lo 0

          P(config-if)#ip add 2.2.2.2255.255.255.255

          P(config-if)#exit

          P(config)#int fa0/0

          P(config-if)#ip add 192.168.12.2255.255.255.0

          P(config-if)#mpls ip

          P(config-if)#no sh

          P(config-if)#exit

          P(config)#int fa0/1

          P(config-if)#ip add 192.168.23.2255.255.255.0

          P(config-if)#mpls ip

          P(config-if)#no sh

          P(config-if)#exit

          P(config)#router ospf 1

          P(config-router)#net 0.0.0.0255.255.255.255 area 0

          P(config-router)#exit

          P(config)#ip cef

          P(config)#mpls ip

          P(config)#mpls label protocol  ldp

          PE2配置:

          PE2#conf t

          PE2(config)#frame-relay switching

          PE2(config)#int lo 0

          PE2(config-if)#ip add 3.3.3.3 255.255.255.255

          PE2(config-if)#exit

          PE2(config)#int fa0/1

          PE2(config-if)#ip add 192.168.23.3255.255.255.0

          PE2(config-if)#mpls ip

          PE2(config-if)#no sh

          PE2(config-if)#exit

          PE2(config)#router ospf 1

          PE2(config-router)#net 0.0.0.0255.255.255.255 area 0

          PE2(config-router)#passive-interfaces1/0

          PE2(config-router)#exit

          PE2(config)#int s1/0

          PE2(config-if)#clock rate 64000

          PE2(config-if)#encapsulation frame-relay

          PE2(config-if)#frame-relay intf-type dce

          PE2(config-if)#no sh

          PE2(config-if)#exit

          PE2(config)#connect PE2-PE1 serial 1/0201 l2transport

          PE2(config-fr-pw-switching)#xconnect1.1.1.1 12 encapsulation  mpls

          PE2(config-xconn)#exit

          PE2(config-fr-pw-switching)#exit

          PE2(config)#ip cef

          PE2(config)#mpls ip

          PE2(config)#mpls label protocol ldp

          完毕配置,检查状态:

          CE1#traceroute 12.12.12.2

          Type escape sequence to abort.

          Tracing the route to 12.12.12.2

          1 12.12.12.2 152 msec 128 msec 120 msec

          CE1#sh frame-relay map

          Serial1/0 (up): ip 12.12.12.2 dlci102(0x66,0x1860), dynamic,

          broadcast,

          CISCO, status defined, active

          CE1#sh frame-relay pvc

          PVC Statistics for interface Serial1/0(Frame Relay DTE)

          Active     Inactive      Deleted       Static

          Local          1            0            0            0

          Switched       0            0            0            0

          Unused         0            0           0            0

          DLCI = 102, DLCI USAGE = LOCAL, PVCSTATUS = ACTIVE, INTERFACE = Serial1/0

          input pkts 4             outputpkts 4            in bytes 214

          out bytes 130            droppedpkts 0           in pkts dropped 0

          out pkts dropped 0               out bytes dropped 0

          in FECN pkts 0           in BECNpkts 0           out FECN pkts 0

          out BECN pkts 0          in DEpkts 0             out DE pkts 0

          out bcast pkts 1         out bcastbytes 34

          5 minute input rate 0 bits/sec, 0 packets/sec

          5 minute output rate 0 bits/sec, 0 packets/sec

          pvc create time 00:59:02, last time pvc status changed 00:01:05

          PE1#sh mpls l2transport vc detail

          Local interface: Se1/0 up, line protocolup, FR DLCI 102 up

          Destination address: 3.3.3.3, VC ID: 12, VC status: up

          Next hop: 192.168.12.2

          Output interface: Fa0/0, imposed label stack {17 19}

          Create time: 00:48:54, last status change time: 00:08:33

          Signaling protocol: LDP, peer 3.3.3.3:0 up

          MPLS VC labels: local 19, remote 19

          Group ID: local 0, remote 0

          MTU: local 1500, remote 1500

          Remote interface description:

          Sequencing: receive disabled, send disabled

          VC statistics:

          packet totals: receive 4, send 4

          byte totals:   receive 238, send154

          packet drops:  receive 0, seqerror 0, send 0

          PE1#sh mpls forwarding-table

          Local Outgoing    Prefix            Bytes tag  Outgoing  Next Hop

          tag   tag or VC   or Tunnel Id      switched  interface

          16    Pop tag     2.2.2.2/32        0          Fa0/0      192.168.12.2

          17    Pop tag     192.168.23.0/24   0         Fa0/0      192.168.12.2

          18    17          3.3.3.3/32        0          Fa0/0      192.168.12.2

          19                 l2ckt(12)         238        none       point2point

          小结:

          实验四和实验五的AToM是建设在MPLS网络的基础设施之上,在两个路由器的一对端口之间提供高速的二层透传。

          这样的技术能够提供二层VPN(MPLS L2VPN)用来解决端到端的问题。也能够用来实现传统网络的升级。

          AToM主要组成部分包含:PE路由器、标记分发协议(LDP)和MPLS标记交换隧道(LSPTunnel)。

          PE路由器拥有并维护与其直接相连的二层透传的链路信息。

          PE路由器负责将VPN客户的普通数据包打上标记和去除标记。因此PE路由器必须是一个边缘标记交换路由器。

          在两个PE路由器之间实现二层透传的两个端口必须是同样的类型,比如以太网、VLAN、ATMVC、帧中继VC、HDLC或PPP。每一对这样的端口用一个唯一的虚拟链路标志(VCID)来表示。

          在两个PE路由器之间要定义穿过MPLS网络的LSP隧道。LSP隧道提供了隧道标记(TunnelLabel),在两个PE路由器之间透传数据。

          同一时候在两个PE路由器之间还要定义直接的标记分发协议进程,用来传递虚拟链路的信息,当中最关键的是通过匹配VCID来分发虚拟链路标记(VCLabel)。

          当二层透传的端口有数据包进入PE路由器时,PE路由器通过匹配VCID找到与之对应的隧道标记和虚拟链路标记。PE路由器会将此数据包打上两层标记,当中外层标记为隧道标记。指示从该PE路由器到目的PE路由器的路径;内层标记为虚拟链路标记。指示在目的PE路由器上属于哪个VCID对应的路由器端口。注意。PE路由器要监视各自端口上的二层协议状态,如帧中继的LMI或ATM的ILMI。

          当出现问题时。通过标记分发协议进程来取消虚拟链路标记,从而断开此二层透传,避免产生单向无用数据流。

          这样的基于MPLS的二层透传方式。改变了传统的二层链路必须通过交换网络实现的限制,它从根本上形成了“一个网多种业务”的业务模式,让运营商能够在一个MPLS网络中同一时候提供二层业务和三层业务。基于二层透传技术的是二层VPN。

          如今。二层VPN的各项标准正处于IETF起草阶段。主要包含针对点到点服务的虚拟私用线路服务(VPWS)和针对多点服务的虚拟私用局域网服务(VPLS)。这两种二层VPN都採用以AToM为基础的数据层面,在控制层面上添加自己主动发现和自己主动配置等多种功能,相对于MPLS L3VPN。MPLS L2VPN具有下面长处:

            1. 可扩展性强:MPLS L2VPN仅仅建立二层连接关系。不引入和管理用户的路由信息。这大大减轻了PE(Provider Edge,服务提供商边缘设备)甚至整个SP(Service Provider。服务提供商)网络的负担,使服务提供商能支持很多其它的VPN和接入很多其它的用户。

            2. 可靠性和私网路由的安全性得到保证:因为不引入用户的路由信息,MPLS L2VPN不能获得和处理用户路由,保证了用户VPN路由的安全。

            3. 支持多种网络层协议:包含IP、IPX、SNA等。

          实验六、MPLS L3VPN之认识VRF Routing

          在基于IP的计算机网络中,虚拟路由和转发(VRF)是一种技术,同一时候被称为VPN路由转发表。它同意在同一台路由器上同一时候并存多个路由表的实例。这添加了网络路径分段的功能,而无需使用多个设备。因为流量是自己主动隔离,VRF也添加了网络的安全性,而且能够不再须要加密和认证。互联网服务提供商(ISP)通常採取的VRF的优势,创建单独的虚拟专用网络(VPN)客户;因而该技术也被称为VPN路由和转发。因为路由实例是独立的,同样的或重叠的IP地址能够被使用而不互相冲突。

          VRF每一个路由实例拥有不同的路由表[来源请求]被称为转发信息库(FIB)。它相当于一台网络设备。换句话说,在同一网络设备上能够配置多个不同的虚拟路由器实例,当中每一个实例都有其自身的FIB库,而且每一个虚拟路由器实例间独立不可互相訪问。此时每一个路由器维护一个或多个VRF,而且同一时候维护一个公网的路由表(也叫全局路由表)。每一个VRF能够看作一台虚拟的路由器,该虚拟路由器包含例如以下元素:

          1. 一张独立的路由表/转发表,当然也包含了独立的地址空间。

          2. 一组归属于这个VRF的接口集合。

          3. 一组仅仅用于本VRF的路由协议。

           

          CE1配置:

          CE1#conf t

          CE1(config)#int fa0/0

          CE1(config-if)#ip add 192.168.1.2255.255.255.0

          CE1(config-if)#no sh

          CE1(config-if)#exit

          CE1(config)#ip route 0.0.0.0 0.0.0.0192.168.1.1

          CE2配置:

          CE2#conf t

          CE2(config)#int fa0/0

          CE2(config-if)#ip add 192.168.1.2255.255.255.0

          CE2(config-if)#no sh

          CE2(config-if)#exit

          CE2(config)#ip route 0.0.0.0 0.0.0.0192.168.1.1

          PE配置:

          PE#conf t

          PE(config)#ip vrf CE1//创建虚拟路由转发表CE1

          PE(config-vrf)#exit

          PE(config)#ip vrf CE2//创建虚拟路由转发表CE2

          PE(config-vrf)#exit

          PE(config)#int fa0/0

          PE(config-if)#ip vrf forwarding CE1 //把接口加入到对应虚拟路由转发表

          PE(config-if)#ip add 192.168.1.1255.255.255.0

          PE(config-if)#no sh

          PE(config-if)#exit

          PE(config)#int fa0/1

          PE(config-if)#ip vrf forwarding CE2//把接口加入到对应虚拟路由转发表

          PE(config-if)#ip add 192.168.1.1255.255.255.0

          PE(config-if)#no sh

          PE(config-if)#exit

          PE(config)#int fa1/0

          PE(config-if)#ip vrf forwarding CE1 //

          PE(config-if)#ip add 100.100.100.1255.255.255.0

          PE(config-if)#no sh

          PE(config-if)#exit

          PE(config)#int fa2/0

          PE(config-if)#ip vrf forwarding CE2

          PE(config-if)#ip add 200.200.200.1255.255.255.0

          PE(config-if)#no sh

          PE(config-if)#exit

          PE(config)#

          PE(config)#router ospf 1 vrf CE1 //在CE1虚拟路由表中开启OSPF路由协议

          PE(config-router)#net 0.0.0.0  255.255.255.255 area 0

          PE(config-router)#passive-interfacefa0/0

          PE(config-router)#exit

          PE(config)#router ospf 2 vrf CE2  //在CE2虚拟路由表中开启OSPF路由协议

          PE(config-router)#net 0.0.0.0255.255.255.255 area 0

          PE(config-router)#passive-interfacefa0/1

          PE(config-router)#exit

          ISP1配置:

          ISP1#conf t

          ISP1(config)#int fa0/0

          ISP1(config-if)#ip add 100.100.100.2255.255.255.0

          ISP1(config-if)#no sh

          ISP1(config-if)#exit

          ISP1(config)#router ospf 1

          ISP1(config-router)#exit

          ISP1(config)#int lo0

          ISP1(config-if)#ip add 1.1.1.1255.255.255.255

          ISP1(config-if)#exit

          ISP1(config)#router ospf 1

          ISP1(config-router)#net 0.0.0.0255.255.255.255 area 0

          ISP1(config-router)#exit

          PE(config)#iproute vrf CE1 0.0.0.0 0.0.0.0 100.100.100.2

          PE(config)#iproute vrf CE2 0.0.0.0 0.0.0.0 200.200.200.2

          ISP2配置:

          ISP2#conf t

          ISP2(config)#intfa0/0

          ISP2(config-if)#ipadd 200.200.200.2 255.255.255.0

          ISP2(config-if)#nosh

          ISP2(config-if)#exit

          ISP2(config)#intlo 0

          ISP2(config-if)#ipadd 2.2.2.2 255.255.255.0

          ISP2(config-if)#exit

          ISP2(config)#routerospf 1

          ISP2(config-router)#net0.0.0.0 255.255.255.255 area 0

          ISP2(config-router)#exit

          ISP2(config)#

          配置完毕,检查測试:

          CE1#ping 192.168.1.1

          Type escape sequence to abort.

          Sending 5, 100-byte ICMP Echos to192.168.1.1, timeout is 2 seconds:

          .!!!!

          Success rate is 80 percent (4/5),round-trip min/avg/max = 20/37/76 ms

          CE2#ping 192.168.1.1

          Type escape sequence to abort.

          Sending 5, 100-byte ICMP Echos to192.168.1.1, timeout is 2 seconds:

          .!!!!

          Success rate is 80 percent (4/5),round-trip min/avg/max = 20/35/64 ms

          PE#sh ip rou //全局路由表为空

          Codes: C - connected, S - static, R -RIP, M - mobile, B - BGP

          D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area

          N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

          E1 - OSPF external type 1, E2 - OSPF external type 2

          i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2

          ia - IS-IS inter area, * - candidate default, U - per-user static route

          o - ODR, P - periodic downloaded static route

          Gateway of last resort is not set

          PE#sh ip rou vrf CE1 //查看CE1虚拟路由表

          Routing Table: CE1

          Codes: C - connected, S - static, R -RIP, M - mobile, B - BGP

          D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area

          N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

          E1 - OSPF external type 1, E2 - OSPF external type 2

          i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2

          ia - IS-IS inter area, * - candidate default, U - per-user static route

          o - ODR, P - periodic downloaded static route

          Gateway of last resort is not set

          1.0.0.0/32 is subnetted, 1 subnets

          O      1.1.1.1 [110/2] via 100.100.100.2, 00:02:45, FastEthernet1/0

          100.0.0.0/24 is subnetted, 1 subnets

          C      100.100.100.0 is directly connected, FastEthernet1/0

          C   192.168.1.0/24 is directly connected, FastEthernet0/0

          S*  0.0.0.0/0 [1/0] via 100.100.100.2

          PE#sh ip rou vrf CE2//查看CE2虚拟路由表

          Routing Table: CE2

          Codes: C - connected, S - static, R -RIP, M - mobile, B - BGP

          D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area

          N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

          E1 - OSPF external type 1, E2 - OSPF external type 2

          i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2

          ia - IS-IS inter area, * - candidate default, U - per-user static route

          o - ODR, P - periodic downloadedstatic route

          Gateway of last resort is not set

          C   200.200.200.0/24 is directly connected, FastEthernet2/0

          2.0.0.0/32 is subnetted, 1 subnets

          O      2.2.2.2 [110/2] via 200.200.200.2, 00:02:39, FastEthernet2/0

          C   192.168.1.0/24 is directly connected, FastEthernet0/1

          S*  0.0.0.0/0 [1/0] via 200.200.200.2

          实验七、MPLSVPN(L3VPN)基本配置PE-CE执行RIP

          VRF通常与MPLS VPN相联系 。因为MPLSVPN的就是利用VRF实现路由隔离和信息隔离,在这样的网络中,MPLS封装被用来切割用户流量,每一个用户维护一个独立的VRF。在VRF中有两个重要属性:

          1. RD(Route Distinguisher)是说明路由属于哪个VPN的标志。理论上能够为每一个VRF配置一个RD,通常建议为每一个VPN的VRF都配置同样的RD,而且要保证这个RD全球唯一。假设两个VRF中存在同样的地址,可是因为RD不同,这两个路由在PE间公布过程中也不会混淆。因为MP BGP把RD和路由一起发送,对端PE能够依据RD确定路由所属的VPN,从而把路由安装到正确的VRF中。RD并不会影响不同VRF之间的路由选择以及VPN的形成。这些事情由RT搞定。PE从CE接收的标准的路由是IPv4路由。假设须要公布给其它的PE路由器,此时须要为这条路由附加一个RD。在IPv4地址加上RD之后,就变成VPN-IPv4地址族了。VPN-IPv4地址仅用于服务供应商网络内部。

            在PE公布路由时加入。在PE接收路由后放在本地路由表中,用来与后来接收到的路由进行比較。CE不知道使用的是VPN-IPv4地址。 RD的路由就是O IA。

            在MPLS VPN中,假设在两个网站的CE之间添加一条后门链路(BackdoorLink),而且直接执行OSPF交互路由。那么通过这条后门链路学习到的内部路由为O。通过PE过来的路由为OIA。无疑优选O路由。可是我们希望优选走MPLS VPN,此时就要使用Sham-Link。

            在PE1及PE2之间建立sham-link,它会在两台PE之间形成一条区域内链路。

            在每一台PE上的链路端点都是特定VRF中的一个接口(或地址),iBGP必须以VPNv4前缀的形式将这个接口的路由传递给还有一台PE(也就是说我们必须在MP-BGP的ipv4 vrf地址族里宣告这个地址,以便形成VPNv4前缀并传递给对端PE)。Sham-link和其它OSPF中的链路一样,会进行最短路径优先的计算。当LSA在伪装链路中泛洪,全部的OSPF路由类型都不会改变。不会转换成LSA3或者LSA5的类型。假设sham-link断掉,就会恢复走后门链路。~7。数值越小则优先级越高。抢占由RSVP-TE的Resv消息发起。

            当新建一条路径Path1时,假设须要与已建立的路径Path2争夺资源,仅仅有当Path1的建立优先级高于Path2的保持优先级时,Path1才干抢占成功。因此,为保证CR-LSP能够正确建立。建立优先级不能高于保持优先级。否则可能会导致LSP间无穷尽的互相抢占,造成振荡。

          2. 路由固定(Route Pinning): CR-LSP创建成功后。不随路由变化而变化的特性叫做路由固定。

            当某个网络未执行IGP TE时,网络管理员不能确定网络上的哪些地方能够获得带宽,这时须要选择具有所需带宽的松散ER-hop(Explicit Route)来创建CR-LSP,但这些CR-LSP将会随路由变化而变化。当路由变化时,比方出现了一个更好的下一跳,已建立的CR-LSP也将会随之改变。假设不希望使用松散路由建立的CR-LSP随路由变化而改变,网络管理员能够在CR-LSP创建成功时把这些CR-LSP配置成永久性的。不随路由变化而变化。

          3. 管理组和和属性: MPLS TE隧道的亲和属性决定隧道使用的链路属性,亲和属性与链路管理组配合,确定隧道能够使用哪些链路。

          4. 重优化: 流量project是系统规划网络资源使用的过程。

            依据用户需求能够配置流量project,提供要求的QoS。服务提供商通常利用一定的机制去优化CR-LSP,以优化网络资源使用。一种方法是人工配置,可是须要服务提供商进行測量和对CR-LSP微调。使用MPLS TE则能够动态优化CR-LSP,从而节省人力。动态优化CR-LSP即定期重计算CR-LSP穿越的路由。假设重计算的路由优于当前路由。则创建一条新的CR-LSP,为之分配新路由,并将业务从旧的CR-LSP切换至新的CR-LSP,删除旧CR-LSP

          5. CR-LSP备份CR-LSP备份是一种端到端的路径保护(Path Protection,end-to-end protection),对整条LSP提供保护。而FRR则是一种局部保护措施,仅仅能保护LSP中的某条链路和某个节点。而且,FRR是一种高速响应的暂时性保护措施,对于切换时间有严格要求。LSP备份则没有时间要求。

            同一条隧道下对主LSP进行路径备份的LSP称为备份路径。当Ingress感知到主LSP不可用时,将流量切换到备份路径上,当主LSP路径恢复后再将流量切换回来,以实现对主LSP路径的备份保护。有两种备份方法:热备份:创建主CR-LSP后随即创建备份CR-LSP。主CR-LSP失效时。通过MPLS TE直接将业务切换至备份CR-LSP。

            普通备份:指主CR-LSP失效后创建备份CR-LSP。

          6. 高速重路由FRR(Fast ReRoute),是MPLS- TE中实现网络局部保护的技术。FRR的切换速度能够达到50ms,能够最大程度降低网络故障时数据的丢失。

            对LSP配置FRR功能后,当LSP上的某条链路或某个节点失效时。流量会被切换到保护链路上。同一时候LSP头节点尝试建立新的LSP。介绍FRR中的几个概念

                    1. 主LSP:被保护的LSP。

                    2. Bypass LSP:旁路LSP。保护主LSP的LSP。

                    3. PLR(Point of Local Repair):本地修复节点。

                      BypassLSP的头节点。必须在主LSP的路径上,而且不能是主LSP的尾节点。

                    4. MP(Merge Point):汇聚点。Bypass LSP的尾节点。必须在主LSP的路径上,而且不能是主LSP的头节点

                    5. 保护方式依据保护的对象不同,FRR分为两类:链路保护:PLR和MP之间有直接链路连接。主LSP经过这条链路。当这条链路失效时,流量能够切换到Bypass LSP上节点保护:PLR和MP之间通过一台设备连接,主LSP经过这台设备。当这台设备失效时,流量能够切换到Bypass LSP上

          RSVP-TE实现

          RSVP(Resource Reservation Protocol,资源预留协议)是为IntServ(Integrated Service,综合业务模型)而设计的,用于在一条路径的各节点上进行资源预留。

          RSVP工作在传输层。但不參与应用数据的传送。是一种Internet上的控制协议,类似于ICMP。简单来说。RSVP具有下面几个主要特点:

            1. 单向。

            2. 面向接收者,由接收者发起对资源预留的请求,并维护资源预留信息。

            3. 使用“软状态”(soft state)机制维护资源预留信息。

              RSVP经扩展后能够支持MPLS标签的分发,并在传送标签绑定消息的同一时候携带资源预留信息,这样的扩展后的RSVP称为RSVP-TE,作为一种信令协议用于在MPLS TE中建立LSP隧道。

              RSVP-TE基本概念

          1. 软状态“软状态”是指在RSVP-TE中。通过消息的定时刷新来维持节点上的资源预留状态。资源预留状态包含由Path消息创建的路径状态(path state)和由Resv消息创建的预留状态(reservation state)。这两种状态分别由Path消息和Resv消息定时刷新。对于某个状态。假设连续没有收到刷新消息,这个状态将被删除。

          2. 资源预留类型使用RSVP-TE建立的LSP都具有某种资源预留类型(reservation style)。在建立RSVP会话时,由接收者决定此会话使用哪种预留类型,从而决定能够使用哪些LSP。

            眼下设备支持下面两种预留类型:

            1. FF(Fixed-Filter style):固定过滤器类型。为每一个发送者单独预留资源。不能与同一会话中其它发送者共享资源。

            2. SE(Shared-Explicit style):共享显式类型。为同一个会话的发送者建立一个预留,能够共享资源。

          1. make-before-break: make-before-break是指一种能够在尽可能不丢失数据,也不占用额外带宽的前提下改变MPLS TE隧道属性的机制。

          2. RSVP-TE消息类型:

          1. Path消息:由发送者沿数据报文传输的方向向下游发送,在沿途全部节点上保存路径状态(path state)。

          2. Resv消息:由接收者沿数据报文传输的方向逆向发送。在沿途全部节点上进行资源预留,并创建和维护预留状态(reservationstate)。

          3. PathTear消息:此消息产生后马上向下游发送。并马上删除沿途节点的路径状态和相关的预留状态。

          4. ResvTear消息:此消息产生后马上向上游发送。并马上删除沿途节点的预留状态。

          5. PathErr消息:假设在处理Path消息的过程中发生了错误,就会向上游发送PathErr消息,PathErr消息不影响沿途节点的状态。仅仅是把错误报告给发送者。

          6. ResvErr消息:假设在处理Resv消息的过程中发生了错误,或者因为抢占导致预留被破坏,就会向下游节点发送ResvErr消息。

          7. ResvConf消息:该消息发往接收者。用于对预留消息进行确认。

          8. Hello消息:在两个直连的RSVP邻居之间建立和维持链路局部的邻居关系。

          9. RSVP的TE扩展主要是在其Path消息和Resv消息中添加新的对象。新增对象除了能够携带标签绑定信息外,还能够携带对LSR在沿途寻找路径时的限制信息。从而支持CR-LSP的功能。并支持FRR。

          10. Path消息新增的对象包含:LABEL_REQUEST、EXPLICIT_ROUTE、RECORD_ROUTE和SESSION_ATTRIBUTE。

          11. Resv消息新增的对象包含:LABEL和RECORD_ROUTE。

            LABEL_REQUEST对象包含在Path消息中。为LSP请求标签绑定,该对象也保存在路径状态块PSB(Path State Block)中。接收到该对象的节点将分配的标签通过Resv消息中的LABEL对象通知上游节点,从而完毕标签的公布和传递。

          1. 建立LSP隧道

          1. Ingress LSR产生携带标签请求信息的Path消息,沿着通过CSPF计算出的路径逐跳发送给Egress LSR。

          2. Egress LSR收到Path消息后。产生携带预留信息和标签的Resv消息,沿着Path消息发送的相反路径逐跳返回Ingress LSR,同一时候,Resv消息在沿途的LSR上进行资源预留;

          3. 当Ingress LSR收到Resv消息时,LSP建立成功。

          4. 採用RSVP-TE建立的LSP具有资源预留功能,沿途的LSR能够为该LSP分配一定的资源。使在此LSP上传送的业务得到保证。

            RSVP刷新机制:RSVP通过Refresh消息来维护路径和预留状态。Refresh消息不仅用于在RSVP邻居节点进行状态同步。也用于恢复丢失的RSVP消息。Refresh消息并非一种新的消息,它是曾经公布过的消息的再次传送,Refresh消息中携带的主要信息和传送时使用的路径都与它要刷新的消息全然一致。

            仅仅有Path消息和Resv消息才可能是Refresh消息。因为Refresh消息是定时发送的。当网络中的RSVP会话比較多时,Refresh消息会加重网络负载;而对于时延敏感的应用。当消息丢失时,等待通过Refresh消息恢复的时间可能无法接受。

            简单地调整刷新间隔并不能同一时候解决这两类问题。

            用于解决Refresh消息带来的上述问题。

          1. Message_ID扩展:SVP本身使用Raw IP发送消息。RFC 2961中定义的Message_ID扩展机制添加了能够在RSVP消息中携带的对象。当中,Message_ID和Message_ID_ACK对象用于RSVP消息确认,从而提高RSVP消息发送的可靠性。

            在接口使能Message_ID机制后,能够配置重传功能,设定RSVP消息的重传參数。假设在重传初始时间间隔内(假设为Rf秒),没有收到应答消息ACK。经过(1+Delta)×Rf秒后,将重传此消息。

          2. 摘要刷新扩展Srefresh(Summary Refresh)能够不传送标准的Path或Resv消息,而仍能实现对RSVP的状态刷新,从而能够降低网络上的Refresh消息流量,并加快节点对这类消息的处理速度。摘要刷新扩展须要与Message_ID扩展配合使用。

            仅仅有那些已经被包含Message_ID对象的Path和Resv消息公布过的状态才干使用摘要刷新扩展机制刷新。

          1. PSB、RSB与BSB的超时:为建立LSP,发送者在Path消息中携带LABEL_REQUEST对象。接收者收到带有LABEL_REQUEST对象的Path消息后。就会分配一个标签,并将标签放在Resv消息的LABEL对象中。

            LABEL_REQUEST对象保存在上游节点的PSB(Path State Block,路径状态块)中,LABEL对象则保存在下游节点的RSB(ReservationState Block。预留状态块)中。当连续未收到刷新消息的次数超过PSB或RSB的超时倍数(当达到此数值时即为超时)时,PSB或RSB中对应的状态将被删除。

            假设有一个资源预留请求。在某些节点上没有通过准入控制,有时可能不希望马上删除这个请求的状态,但这个请求也不应该阻止其它请求使用它预留的资源。

            这样的情况下。节点将进入堵塞状态(Blockade State)。在下游节点生成BSB(Blockade State Block,堵塞状态块)。

            当连续未收到刷新消息的次数超过堵塞状态超时倍数时,BSB中对应的状态被删除。

          2. RSVP-TE GR功能依赖于RSVP-TE的Hello扩展能力。通过扩展的RSVP Hello报文向邻居通告自己的GR能力和相关时间參数。

            设备和邻居假设都具备RSVP GR能力,那么在完毕GR參数的交互后,就能够在检測到对方发生GR重新启动时,充当对方的GR Helper。保证在GR Restarter重新启动的过程中。数据转发不会中断。当GR Restarter发生重新启动时。GR Helper连续丢失的Hello报文次数超过了配置的值。由此判定GR Restarter发生了重新启动。

            此时GR Helper会保留与该邻居相关的软状态信息,并保持向对方周期性发送Hello报文,直到重新启动定时器(Restart Timer)超时。在重新启动定时器超时前。假设GR Helper邻居和GR Restarter又一次建立了Hello会话协商,那么启动恢复定时器。并触发信令报文交互以恢复原有的软状态。否则,将删除与该邻居相关的全部RSVP软状态信息和转发表项。假设恢复定时器超时。则删除那些在GR恢复过程中没有恢复的软状态和表项信息

          PC1配置:

          PC1#conf t

          PC1(config)#no ip routing

          PC1(config)#ipdefault-gateway 192.168.0.1

          PC1(config)#int fa0/0

          PC1(config-if)#ip add192.168.0.2 255.255.255.0

          PC1(config-if)#no sh

          PC1(config-if)#exit

          PC2配置:

          PC2#conf t

          PC2(config)#no ip routing

          PC2(config)#ipdefault-gateway 192.168.1.1

          PC2(config)#int fa0/0

          PC2(config-if)#ip add192.168.1.2 255.255.255.0

          PC2(config-if)#no sh

          PC2(config-if)#exit

          R1配置:

          R1#conf t

          R1(config)#ip cef

          R1(config)#mpls ip

          R1(config)#mpls label pro ldp

          R1(config)#mpls traffic-engtunnels // 全局模式下开启mpls-te功能

          R1(config)#in lo 0

          R1(config-if)#ip add 1.1.1.1255.255.255.255

          R1(config-if)#exit

          R1(config)#int fa0/0

          R1(config-if)#ip add192.168.0.1 255.255.255.0

          R1(config-if)#no sh

          R1(config-if)#exit

          R1(config)#int fa1/0

          R1(config-if)#mpls ip

          R1(config-if)#mplstraffic-eng tunnels // 接口模式下开启mpls-te功能

          R1(config-if)#ip rsvpbandwidth 10000  //配置接口的总te带宽

          R1(config-if)#ip add192.168.12.1 255.255.255.0

          R1(config-if)#no sh

          R1(config-if)#exit

          R1(config)#int fa2/0

          R1(config-if)#mpls ip

          R1(config-if)#mplstraffic-eng tunnels

          R1(config-if)#ip rsvpbandwidth 10000

          R1(config-if)#ip add192.168.13.1 255.255.255.0

          R1(config-if)#no sh

          R1(config-if)#exit

          R1(config)#int tunnel 1//设置隧道0

          R1(config-if)#ip unnumberedloopback 0 //设置MPLS TE的ID使用loopback 0

          R1(config-if)#tunneldestination 4.4.4.4//隧道目的地址

          R1(config-if)#tunnel modempls traffic-eng //隧道开启MPLS-TE功能

          R1(config-if)#tunnel mplstraffic-eng autoroute announce //开启MPLS-TE自己主动路由公布

          R1(config-if)#tunnel mplstraffic-eng priority 1 1 //设置隧道优先级

          R1(config-if)#tunnel mplstraffic-eng bandwidth 3000 //配置该隧道的带宽

          R1(config-if)#tunnel mplstraffic-eng path-option 1 dynamic //自己主动建立路径

          R1(config-if)#tunnel mplstraffic-eng record-route//配置隧道记录标签信息

          R1(config-if)#exit

          R1(config)#int tunnel 2

          R1(config-if)#ip unnumberedloopback 0

          R1(config-if)#tunneldestination 4.4.4.4

          R1(config-if)#tunnel modempls traffic-eng

          R1(config-if)#tunnel mplstraffic-eng autoroute  announce

          R1(config-if)#tunnel mplstraffic-eng priority 2 2

          R1(config-if)#tunnel mplstraffic-eng bandwidth 3000

          R1(config-if)# tunnel mplstraffic-eng path-option 2 dynamic

          R1(config-if)#tunnel mplstraffic-eng record-route

          R1(config-if)#exit

          R1(config)#router ospf 100

          R1(config-router)#mplstraffic-eng router-id loopback 0 //在ospf area 0中设置mpls-te ID

          R1(config-router)#mplstraffic-eng area 0//在ospf area 0中支持mpls-te

          R1(config-router)#net 0.0.0.00.0.0.0 area 0

          R1(config-router)#exit

          R2配置:

          R2#conf t

          R2(config)#ip cef

          R2(config)#mpls ip

          R2(config)#mpls lab

          R2(config)#mpls label pro ldp

          R2(config)#mpls traffic-engtunnels

          R2(config)#int fa0/0

          R2(config-if)#mpls ip

          R2(config-if)#mpls  traffic-eng tunnels

          R2(config-if)#ip rsvpbandwidth 10000

          R2(config-if)#ip add192.168.12.2 255.255.255.0

          R2(config-if)#no sh

          R2(config-if)#exit

          R2(config)#int fa0/1

          R2(config-if)#mpls ip

          R2(config-if)#mplstraffic-eng tunnels

          R2(config-if)#ip rsvpbandwidth 10000

          R2(config-if)#ip add192.168.24.2 255.255.255.0

          R2(config-if)#no sh

          R2(config-if)#exit

          R2(config)#int lo 0

          R2(config-if)#ip add 2.2.2.2255.255.255.255

          R2(config-if)#exit

          R2(config)#router ospf 100

          R2(config-router)#mpls traffic-engrouter-id loopback 0

          R2(config-router)#mplstraffic-eng area 0

          R2(config-router)#net 0.0.0.0255.255.255.255 area 0

          R2(config-router)#exit

          R3配置:

          R3#conf t

          R3(config)#ip cef

          R3(config)#mpls ip

          R3(config)#mpls label pro ldp

          R3(config)#mpls traffic-engtunnels

          R3(config)#int fa0/0

          R3(config-if)#mpls ip

          R3(config-if)#mplstraffic-eng tunnels

          R3(config-if)#ip rsvpbandwidth 10000

          R3(config-if)#ip add192.168.13.3 255.255.255.0

          R3(config-if)#no sh

          R3(config-if)#exit

          R3(config)#int fa0/1

          R3(config-if)#mpls ip

          R3(config-if)#mplstraffic-eng tunnels

          R3(config-if)#ip rsvpbandwidth 10000

          R3(config-if)#ip add192.168.34.3 255.255.255.0

          R3(config-if)#no sh

          R3(config-if)#exit

          R3(config)#int lo 0

          R3(config-if)#ip add 3.3.3.3255.255.255.255

          R3(config-if)#exit

          R3(config)#router ospf 100

          R3(config-router)#mplstraffic-eng router-id loopback 0

          R3(config-router)#mplstraffic-eng area 0

          R3(config-router)#net 0.0.0.0255.255.255.255 area 0

          R3(config-router)#exit

          R4配置:

          R4#conf t

          R4(config)#ip cef

          R4(config)#mpls ip

          R4(config)#mpls label  pro ldp

          R4(config)#mpls traffic-engtunnels

          R4(config)#int fa0/0

          R4(config-if)#ip add192.168.1.1 255.255.255.0

          R4(config-if)#no sh

          R4(config-if)#exit

          R4(config)#int fa1/0

          R4(config-if)#mpls ip

          R4(config-if)#mplstraffic-eng tunnels

          R4(config-if)#ip rsvpbandwidth 10000

          R4(config-if)#ip add192.168.24.4 255.255.255.0

          R4(config-if)#no sh

          R4(config-if)#exit

          R4(config)#int fa2/0

          R4(config-if)#mpls ip

          R4(config-if)#mplstraffic-eng tunnels

          R4(config-if)#ip rsvpbandwidth 10000

          R4(config-if)#ip add192.168.34.4 255.255.255.0

          R4(config-if)#no sh

          R4(config-if)#exit

          R4(config)#int lo 0

          R4(config-if)#ip add 4.4.4.4255.255.255.255

          R4(config-if)#exit

          R4(config)#router ospf 100

          R4(config-router)#mplstraffic-eng router-id loopback 0

          R4(config-router)#mplstraffic-eng area 0

          R4(config-router)#net 0.0.0.0255.255.255.255 area 0

          R4(config-router)#exit

          R4(config)#ip explicit-pathname T1 //建立T1静态路径

          R4(cfg-ip-expl-path)#next-address192.168.24.2

          R4(cfg-ip-expl-path)#next-address192.168.12.1

          R4(cfg-ip-expl-path)#exit

          R4(config)#ip explicit-pathname T2//建立T2静态路径

          R4(cfg-ip-expl-path)#next-address192.168.34.3

          R4(cfg-ip-expl-path)#next-address192.168.13.1

          R4(cfg-ip-expl-path)#exit

          R4(config)#int tunnel 1

          R4(config-if)#ip unnumberedlo 1

          R4(config-if)#tunneldestination 1.1.1.1

          R4(config-if)#tunnel modempls traffic-eng

          R4(config-if)#tunnel mplstraffic-eng priority 1 1

          R4(config-if)#tunnel mplstraffic-eng bandwidth 3000

          R4(config-if)#tunnel mplstraffic-eng autoroute announce

          R4(config-if)#tunnel mplstraffic-eng path-option 1 explicit name T1 //使用手动建立的路径T1

          R4(config-if)#tunnel mplstraffic-eng record-route

          R4(config-if)#exit

          R4(config)#int tunnel 2

          R4(config-if)#ip unnumberedloopback 0

          R4(config-if)#tunneldestination 1.1.1.1

          R4(config-if)#tunnel modempls traffic-eng

          R4(config-if)#tunnel mplstraffic-eng priority  1 1

          R4(config-if)#tunnel mplstraffic-eng bandwidth 3000

          R4(config-if)#tunnel mplstraffic-eng autoroute announce

          R4(config-if)#tunnel mplstraffic-eng path-option 2 explicit name T2

          R4(config-if)#tunnel mplstraffic-eng record-route

          R4(config-if)#exit

          完毕配置。查看效果

          R4#sh ip rsvp neighbor

          0.0.0.0        Unknown

          192.168.24.2   RSVP

          192.168.34.3   RSVP

          R4#sh mpls forwarding-table

          Local  Outgoing   Prefix            Bytes tag  Outgoing  Next Hop

          tag    tag or VC  or Tunnel Id      switched   interface

          16     Pop tag    3.3.3.3/32        0          Fa2/0      192.168.34.3

          17     Pop tag    2.2.2.2/32        0          Fa1/0      192.168.24.2

          18     Pop tag    192.168.12.0/24   0          Fa1/0      192.168.24.2

          19     Pop tag    192.168.13.0/24   0          Fa2/0      192.168.34.3

          20     Pop tag [T] 1.1.1.1/32        0          Tu2        point2point

          Pop tag [T] 1.1.1.1/32        0          Tu1        point2point

          21     Untagged[T] 192.168.0.0/24    0         Tu2        point2point

          Untagged[T] 192.168.0.0/24    0          Tu1        point2point

          [T]     Forwarding through a TSP tunnel.

          View additional tagging info with the'detail' option

          R4#sh mpls traffic-engtunnels

          Name: R4_t1                               (Tunnel1)Destination: 1.1.1.1

          Status:

          Admin: up         Oper: up     Path: valid       Signalling: connected

          path option 1, type explicit T1 (Basis forSetup, path weight 11)

          Config Parameters:

          Bandwidth: 3000     kbps (Global)  Priority: 1 1   Affinity: 0x0/0xFFFF

          Metric Type: TE (default)

          AutoRoute: enabled   LockDown: disabled  Loadshare: 3000     bw-based

          auto-bw: disabled

          InLabel :  -

          OutLabel : FastEthernet1/0, 17

          RSVP Signalling Info:

          Src 4.4.4.4, Dst 1.1.1.1, Tun_Id 1,Tun_Instance 11

          RSVP Path Info:

          My Address: 192.168.24.4

          Explicit Route: 192.168.24.2 192.168.12.2192.168.12.1 1.1.1.1

          Record Route:

          Tspec: ave rate=3000 kbits, burst=1000bytes, peak rate=3000 kbits

          RSVP Resv Info:

          --More--

          *Mar  1 00:20:21.323: %CDP-4-DUPLEX_MISMATCH:duplex mismatch discovered on FastEthernet2/0 (not half duplex), with R3FastEthernet0/1 (half duplex).

          Record Route: 192.168.24.2 192.168.12.1

          Fspec: ave rate=3000 kbits, burst=1000bytes, peak rate=3000 kbits

          History:

          Tunnel:

          Time since created: 20 minutes, 9 seconds

          Time since path change: 19 minutes, 21seconds

          Current LSP:

          Uptime: 19 minutes, 21 seconds

          Name: R4_t2                               (Tunnel2)Destination: 1.1.1.1

          Status:

          Admin: up         Oper: up     Path: valid       Signalling: connected

          path option 2, type explicit T2 (Basis forSetup, path weight 11)

          Config Parameters:

          Bandwidth: 3000     kbps (Global)  Priority: 1 1   Affinity: 0x0/0xFFFF

          Metric Type: TE (default)

          AutoRoute: enabled   LockDown: disabled  Loadshare: 3000     bw-based

          auto-bw: disabled

          InLabel :  -

          OutLabel : FastEthernet2/0, 16

          RSVP Signalling Info:

          Src 4.4.4.4, Dst 1.1.1.1, Tun_Id 2,Tun_Instance 11

          RSVP Path Info:

          My Address: 192.168.34.4

          Explicit Route: 192.168.34.3 192.168.13.3192.168.13.1 1.1.1.1

          Record Route:

          Tspec: ave rate=3000 kbits, burst=1000bytes, peak rate=3000 kbits

          RSVP Resv Info:

          Record Route: 192.168.34.3 192.168.13.1

          Fspec: ave rate=3000 kbits, burst=1000bytes, peak rate=3000 kbits

          History:

          Tunnel:

          Time since created: 20 minutes, 10seconds

          Time since path change: 19 minutes, 21seconds

          Current LSP:

          Uptime: 19 minutes, 21 seconds

          LSP Tunnel R1_t1 issignalled, connection is up

          InLabel : FastEthernet1/0, implicit-null

          OutLabel : -

          RSVP Signalling Info:

          Src 1.1.1.1, Dst 4.4.4.4, Tun_Id 1,Tun_Instance 8

          RSVP Path Info:

          My Address: 4.4.4.4

          Explicit Route:  NONE

          Record Route:  NONE

          Tspec: ave rate=3000 kbits, burst=1000bytes, peak rate=3000 kbits

          RSVP Resv Info:

          Record Route:  NONE

          Fspec: ave rate=3000 kbits, burst=1000bytes, peak rate=3000 kbits

          LSP Tunnel R1_t2 issignalled, connection is up

          InLabel : FastEthernet2/0, implicit-null

          OutLabel : -

          RSVP Signalling Info:

          Src 1.1.1.1, Dst 4.4.4.4, Tun_Id 2,Tun_Instance 11

          RSVP Path Info:

          My Address: 4.4.4.4

          Explicit Route:  NONE

          Record Route:  NONE

          Tspec: ave rate=3000 kbits, burst=1000bytes, peak rate=3000 kbits

          RSVP Resv Info:

          Record Route:  NONE

          Fspec: ave rate=3000 kbits, burst=1000bytes, peak rate=3000 kbits

           

          实验十一、MPLS Traffic Engineering for per VRF MPLSVPN

          Red1配置:

          Red1#conf t

          Red1(config)#intlo 0

          Red1(config-if)#ipadd 1.1.1.1 255.255.255.255

          Red1(config-if)#exit

          Red1(config)#intfa0/0

          Red1(config-if)#ipadd 172.168.1.1 255.255.255.0

          Red1(config-if)#nosh

          Red1(config-if)#exit

          Red1(config)#routerospf 65501

          Red1(config-router)#net0.0.0.0 255.255.255.255 area 0

          Red1(config-router)#exit

          Blue1配置:

          Blue1#conf t

          Blue1(config)#intlo 0

          Blue1(config-if)#ipadd 2.2.2.2 255.255.255.255

          Blue1(config-if)#exit

          Blue1(config)#intfa0/0

          Blue1(config-if)#ipadd 172.168.2.1 255.255.255.0

          Blue1(config-if)#nosh

          Blue1(config-if)#exit

          Blue1(config)#routerospf 65502

          Blue1(config-router)#net0.0.0.0 255.255.255.255 area 0

          Blue1(config-router)#exit

          Red2配置:

          Red2#conf t

          Red2(config)#intlo 0

          Red2(config-if)#ipadd 11.11.11.11 255.255.255.255

          Red2(config-if)#exit

          Red2(config)#intfa0/0

          Red2(config-if)#ipadd  192.168.11.1 255.255.255.0

          Red2(config-if)#nosh

          Red2(config-if)#exit

          Red2(config)#routerospf 65501

          Red2(config-router)#net0.0.0.0 255.255.255.255 area 0

          Red2(config-router)#exit

          Blue2配置:

          Blue2#conf t

          Blue2(config)#intlo 0

          Blue2(config-if)#ipadd 22.22.22.22 255.255.255.255

          Blue2(config-if)#exit

          Blue2(config)#intfa0/0

          Blue2(config-if)#ipadd 192.168.22.1 255.255.255.0

          Blue2(config-if)#nosh

          Blue2(config-if)#exit

          Blue2(config)#routerospf 65502

          Blue2(config-router)#net0.0.0.0 255.255.255.255 area 0

          Blue2(config-router)#exit

          ISP1配置:

          ISP1#conf t

          ISP1(config)#ipcef

          ISP1(config)#mplsip

          ISP1(config)#mplslabel protocol ldp

          ISP1(config)#mplstraffic-eng tunnels

          ISP1(config)#nompls ip propagate-ttl

          ISP1(config)#intfa0/0

          ISP1(config-if)#mplsip

          ISP1(config-if)#mplstraffic-eng tunnels

          ISP1(config-if)#iprsvp bandwidth 10000

          ISP1(config-if)#ipadd 202.11.11.1 255.255.255.0

          ISP1(config-if)#nosh

          ISP1(config-if)#exit

          ISP1(config)#intfa0/1

          ISP1(config-if)#mplsip

          ISP1(config-if)#mplstraffic-eng tunnels

          ISP1(config-if)#iprsvp bandwidth 10000

          ISP1(config-if)#ipadd 202.12.12.1 255.255.255.0

          ISP1(config-if)#nosh

          ISP1(config-if)#exit

          ISP1(config)#intlo 0

          ISP1(config-if)#ipadd 111.111.111.111 255.255.255.255

          ISP1(config-if)#exit

          ISP1(config)#routerospf 1

          ISP1(config-router)#mplstraffic-eng router-id loopback 0

          ISP1(config-router)#mplstraffic-eng area 0

          ISP1(config-router)#net0.0.0.0 255.255.255.255 area 0

          ISP1(config-router)#exit

          ISP2配置:

          ISP2#conf t

          ISP2(config)#ipcef

          ISP2(config)#mplsip

          ISP2(config)#mplslabel protocol ldp

          ISP2(config)#mplstraffic-eng tunnels

          ISP2(config)#nompls ip propagate-ttl

          ISP2(config)#intfa0/0

          ISP2(config-if)#ipadd 202.21.21.1 255.255.255.0

          ISP2(config-if)#mplsip

          ISP2(config-if)#mplstraffic-eng tunnels

          ISP2(config-if)#iprsvp bandwidth 10000

          ISP2(config-if)#nosh

          ISP2(config-if)#exit

          ISP2(config)#intfa0/1

          ISP2(config-if)#mplsip

          ISP2(config-if)#mplstraffic-eng tunnels

          ISP2(config-if)#iprsvp bandwidth 10000

          ISP2(config-if)#ipadd 202.22.22.1 255.255.255.0

          ISP2(config-if)#nosh

          ISP2(config-router)#exit

          ISP2(config)#intlo 0

          ISP2(config-if)#ipadd 222.222.222.222 255.255.255.255

          ISP2(config-if)#exit

          ISP2(config)#routerospf 1

          ISP2(config-router)#mplstraffic-eng router-id lo 0

          ISP2(config-router)#mplstraffic-eng area 0

          ISP2(config-router)#net0.0.0.0 255.255.255.255 area 0

          ISP2(config-router)#exit

          PE1配置:

          PE1#conf t

          PE1(config)#mplsip

          PE1(config)#ipcef

          PE1(config)#mplslabel protocol ldp

          PE1(config)#mplstraffic-eng tunnels

          PE1(config)#nompls ip propagate-ttl

          PE1(config)#intlo 0

          PE1(config-if)#ipadd 100.100.100.100 255.255.255.255

          PE1(config-if)#exit

          PE1(config)#intfa1/0

          PE1(config-if)#mplsip

          PE1(config-if)#mplstraffic-eng tunnels

          PE1(config-if)#iprsvp bandwidth 10000

          PE1(config-if)#ipadd 202.11.11.2 255.255.255.0

          PE1(config-if)#nosh

          PE1(config-if)#exit

          PE1(config)#intfa2/0

          PE1(config-if)#mplsip

          PE1(config-if)#mplstraffic-eng tunnels

          PE1(config-if)#iprsvp bandwidth 10000

          PE1(config-if)#ipadd 202.21.21.2 255.255.255.0

          PE1(config-if)#nosh

          PE1(config-if)#exit

          PE1(config)#routerospf 1

          PE1(config-router)#mplstraffic-eng router-id loopback 0

          PE1(config-router)#mplstraffic-eng area 0

          PE1(config-router)#net202.11.11.0 0.0.0.255 area 0

          PE1(config-router)#net202.21.21.0 0.0.0.255 area 0

          PE1(config-router)#net100.100.100.100 0.0.0.0 area 0

          PE1(config-router)#exit

          PE1(config)#ipvrf Red

          PE1(config-vrf)#rd1:1

          PE1(config-vrf)#route-targetboth 1:1

          PE1(config)#ipvrf Blue

          PE1(config-vrf)#rd2:2

          PE1(config-vrf)#route-targetboth 2:2

          PE1(config-vrf)#exit

          PE1(config)#intfa0/0

          PE1(config-if)#ipvrf forwarding Red

          PE1(config-if)#ipadd 172.168.1.2 255.255.255.0

          PE1(config-if)#nosh

          PE1(config-if)#exit

          PE1(config)#intfa0/1

          PE1(config-if)#ipvrf forwarding Blue

          PE1(config-if)#ipadd 172.168.2.2 255.255.255.0

          PE1(config-if)#nosh

          PE1(config)#routerospf 65501 vrf Red

          PE1(config-router)#net172.168.1.0 0.0.0.255 area 0

          PE1(config-router)#exit

          PE1(config)#routerospf 65502 vrf Blue

          PE1(config-router)#net172.168.2.0 0.0.0.255 area 0

          PE1(config-router)#exit

          PE1(config)#routerbgp 1

          PE1(config-router)#nei200.200.200.200 remote-as 1

          PE1(config-router)#nei200.200.200.200 update-source loopback 0

          PE1(config-router)#address-familyvpnv4

          PE1(config-router-af)#nei200.200.200.200 activate

          PE1(config-router-af)#nei200.200.200.200 send-community both

          PE1(config-router-af)#exit

          PE1(config-router)#address-familyipv4 vrf Red

          PE1(config-router-af)#redistributeospf 65501 vrf Red

          PE1(config-router-af)#exit

          PE1(config-router)#address-familyipv4 vrf Blue

          PE1(config-router-af)#redistributeospf 65502 vrf Blue

          PE1(config-router-af)#exit

          PE1(config-router)#exit

          PE1(config)#routerospf 65501 vrf Red

          PE1(config-router)#redistributebgp 1 subnets

          PE1(config-router)#exit

          PE1(config)#routerospf 65502 vrf Blue

          PE1(config-router)#redistributebgp 1 subnets

          PE1(config-router)#exit

          PE1(config)#interfacetunnel 1

          PE1(config-if)#mplsip

          PE1(config-if)#IPunnumbered loopback 0

          PE1(config-if)#tunnelmode mpls traffic-eng

          PE1(config-if)#tunneldestination 200.200.200.200

          PE1(config-if)#tunnelmpls traffic-eng bandwidth 3000

          PE1(config-if)#tunnelmpls traffic-eng path-option 1 explicit name ISP1

          PE1(config-if)#tunnelmpls traffic-eng path-option 2 dynamic

          PE1(config-if)#tunnelmpls traffic-eng priority 1 1

          PE1(config-if)#tunnelmpls traffic-eng autoroute announce

          PE1(config-if)#tunnelmpls traffic-eng record-route

          PE1(config-if)#exit

          PE1(config)#inttunnel 2

          PE1(config-if)#mplsip

          PE1(config-if)#tunnelmode mpls traffic-eng

          PE1(config-if)#ipunnumbered loopback 0

          PE1(config-if)#tunneldestination 200.200.200.200

          PE1(config-if)#tunnelmpls traffic-eng bandwidth 2000

          PE1(config-if)#tunnelmpls traffic-eng path-option 1 explicit name ISP2

          PE1(config-if)#tunnelmpls traffic-eng path-option 2 dynamic

          PE1(config-if)#tunnelmpls traffic-eng priority 2 2

          PE1(config-if)#tunnelmpls traffic-eng autoroute announce

          PE1(config-if)#tunnelmpls traffic-eng record-route

          PE1(config-if)#exit

          PE1(config)#ipexplicit-path name ISP1

          PE1(cfg-ip-expl-path)#next-address202.11.11.1

          PE1(cfg-ip-expl-path)#next-address202.12.12.2

          PE1(cfg-ip-expl-path)#exit

          PE1(config)#ipexplicit-path name ISP2

          PE1(cfg-ip-expl-path)#next-address202.21.21.1

          PE1(cfg-ip-expl-path)#next-address202.22.22.2

          PE1(cfg-ip-expl-path)#exit

          PE2配置:

          PE2#conf t

          PE2(config)#ipcef

          PE2(config)#mplsip

          PE2(config)#mplslabel protocol ldp

          PE2(config)#mplstraffic-eng tunnels

          PE2(config)#nompls ip propagate-ttl

          PE2(config)#intlo 0

          PE2(config-if)#ipadd 200.200.200.200 255.255.255.255

          PE2(config-if)#exit

          PE2(config)#intfa1/0

          PE2(config-if)#mplsip

          PE2(config-if)#mplstraffic-eng tunnels

          PE2(config-if)#iprsvp bandwidth 10000

          PE2(config-if)#ipadd 202.12.12.2 255.255.255.0

          PE2(config-if)#nosh

          PE2(config-if)#exit

          PE2(config)#intfa2/0

          PE2(config-if)#mplsip

          PE2(config-if)#mplstraffic-eng tunnels

          PE2(config-if)#iprsvp bandwidth 10000

          PE2(config-if)#ipadd 202.22.22.2 255.255.255.0

          PE2(config-if)#nosh

          PE2(config-if)#exit

          PE2(config)#routerospf 1

          PE2(config-router)#mplstraffic-eng router-id loopback 0

          PE2(config-router)#mplstraffic-eng area 0

          PE2(config-router)#net202.12.12.0 0.0.0.255 area 0

          PE2(config-router)#net202.22.22.0 0.0.0.255 area 0

          PE2(config-router)#net200.200.200.200 0.0.0.0 area 0

          PE2(config-router)#exit

          PE2(config)#ipvrf Red

          PE2(config-vrf)#rd1:1

          PE2(config-vrf)#route-targetboth

          PE2(config-vrf)#route-targetboth 1:1

          PE2(config)#ip vrfBlue

          PE2(config-vrf)#rd2:2

          PE2(config-vrf)#route-targetboth 2:2

          PE2(config-vrf)#exit

          PE2(config)#intfa0/0

          PE2(config-if)#ipvrf forwarding Red

          PE2(config-if)#ipadd 192.168.11.2 255.255.255.0

          PE2(config-if)#nosh

          PE2(config-if)#exit

          PE2(config)#intfa0/1

          PE2(config-if)#ipvrf forwarding Blue

          PE2(config-if)#ipadd 192.168.22.2 255.255.255.0

          PE2(config-if)#nosh

          PE2(config-if)#exit

          PE2(config)#routerospf 65501 vrf Red

          PE2(config-router)#net192.168.11.0 0.0.0.255 area 0

          PE2(config-router)#exit

          PE2(config)#routerospf 65502 vrf Blue

          PE2(config-router)#net192.168.22.0 0.0.0.255 area 0

          PE2(config-router)#exit

          PE2(config)#routerbgp 1

          PE2(config-router)#nei100.100.100.100 remote-as 1

          PE2(config-router)#nei100.100.100.100 update-source loopback 0

          PE2(config-router)#address-familyvpnv4

          PE2(config-router-af)#nei100.100.100.100 activate

          PE2(config-router-af)#nei100.100.100.100 send-community both

          PE2(config-router-af)#exit

          PE2(config-router)#address-familyipv4 vrf Red

          PE2(config-router-af)#redistributeospf 65501 vrf Red

          PE2(config-router-af)#exit

          PE2(config-router)#address-familyipv4 vrf Blue

          PE2(config-router-af)#redistributeospf 65502 vrf Blue

          PE2(config-router-af)#exit

          PE2(config)#routerospf 65501 vrf Red

          PE2(config-router)#redistributebgp 1 subnets

          PE2(config-router)#exit

          PE2(config)#routerospf 65502 vrf Blue

          PE2(config-router)#redistributebgp 1 subnets

          PE2(config-router)#exit

          PE2(config)#inttunnel 1

          PE2(config-if)#mplsip

          PE2(config-if)#ipunn loopback 0

          PE2(config-if)#tunnelmode mpls traffic-eng

          PE2(config-if)#tunneldestination 100.100.100.100

          PE2(config-if)#tunnelmpls traffic-eng bandwidth 2000

          PE2(config-if)#tunnelmpls traffic-eng path-option 1 explicit name ISP1

          PE2(config-if)#tunnelmpls traffic-eng path-option 2 dynamic

          PE2(config-if)#tunnelmpls traffic-eng priority 1 1

          PE2(config-if)#tunnelmpls traffic-eng autoroute announce

          PE2(config-if)#tunnelmpls traffic-eng record-route

          PE2(config-if)#exit

          PE2(config)#inttunnel 2

          PE2(config-if)#mplsip

          PE2(config-if)#tunnelmode mpls traffic-eng

          PE2(config-if)#ipunnumbered loopback 0

          PE2(config-if)#tunneldestination 100.100.100.100

          PE2(config-if)#tunnelmpls traffic-eng bandwidth 2000

          PE2(config-if)#tunnelmpls traffic-eng path-option 1 explicit name ISP2

          PE2(config-if)#tunnelmpls traffic-eng path-option 2 dynamic

          PE2(config-if)#tunnelmpls traffic-eng priority 2 2

          PE2(config-if)#tunnelmpls traffic-eng autoroute announce

          PE2(config-if)#tunnelmpls traffic-eng record-route

          PE2(config-if)#exit

          PE2(config)#ipexplicit-path name ISP1

          PE2(cfg-ip-expl-path)#next-address202.12.12.1

          PE2(cfg-ip-expl-path)#next-address202.11.11.2

          PE2(cfg-ip-expl-path)#exit

          PE2(config)#ipexplicit-path name ISP2

          PE2(cfg-ip-expl-path)#next-address202.22.22.1

          PE2(cfg-ip-expl-path)#next-address202.21.21.2

          PE2(cfg-ip-expl-path)#exit

          完毕配置检查

          Red1#tracerou11.11.11.11

          Type escape sequenceto abort.

          Tracing theroute to 11.11.11.11

          1 172.168.1.2 64 msec 48 msec 24 msec

          2 192.168.11.2 [MPLS: Label 21 Exp 0] 72 msec 68 msec 56 msec

          3 192.168.11.1 108 msec 88 msec 80 msec

          Blue1#traceroute22.22.22.22

          Type escapesequence to abort.

          Tracing theroute to 22.22.22.22

          1 172.168.2.2 36 msec 48 msec 24 msec

          2 192.168.22.2 [MPLS:Label 23 Exp 0] 68 msec 64 msec 48 msec

          3 192.168.22.1 128 msec 84 msec 72 msec

          PE1#sh mplsforwarding-table

          Local  Outgoing   Prefix            Bytes tag  Outgoing  Next Hop

          tag    tag or VC  or Tunnel Id      switched   interface

          16     Pop tag [T] 200.200.200.200/32   \

          0          Tu1        point2point

          Pop tag [T] 200.200.200.200/32   \

          0          Tu2        point2point

          17     Pop tag    111.111.111.111/32   \

          0          Fa1/0      202.11.11.1

          18     Pop tag    202.12.12.0/24    0          Fa1/0     202.11.11.1

          19     Pop tag    202.22.22.0/24    0          Fa2/0      202.21.21.1

          20     Pop tag    222.222.222.222/32   \

          0          Fa2/0      202.21.21.1

          21     Untagged   1.1.1.1/32[V]     0          Fa0/0      172.168.1.1

          22     Aggregate  172.168.1.0/24[V] 2448

          23     Untagged   2.2.2.2/32[V]     0          Fa0/1      172.168.2.1

          24     Aggregate  172.168.2.0/24[V] 1392

          [T]     Forwarding through a TSP tunnel.

          View additional tagging info with the'detail' option

          PE1#sh ip cefvrf Red 11.11.11.11

          11.11.11.11/32,version 13, epoch 0, per-destination sharing

          0 packets, 0bytes

          tag information set

          local tag: VPN-route-head

          fast tag rewrite with

          Recursive rewrite via 200.200.200.200/32,tags imposed {21}

          via 200.200.200.200, 0 dependencies,recursive

          next hop 200.200.200.200, Tunnel1 via200.200.200.200/32

          valid adjacency

          tag rewrite with

          Recursive rewrite via200.200.200.200/32, tags imposed {21}

          Recursive load sharing using 200.200.200.200/32.

          PE1#sh ip cefvrf Blue 22.22.22.22

          22.22.22.22/32,version 13, epoch 0, per-destination sharing

          0 packets, 0bytes

          tag information set

          local tag: VPN-route-head

          fast tag rewrite with

          Recursive rewrite via 200.200.200.200/32, tagsimposed {23}

          via 200.200.200.200, 0 dependencies,recursive

          next hop 200.200.200.200, Tunnel1 via200.200.200.200/32

          valid adjacency

          tag rewrite with

          Recursive rewrite via 200.200.200.200/32,tags imposed {23}

          Recursive load sharing using200.200.200.200/32.

          #sh mplstraffic-eng tunnels

          Name:PE1_t1                             (Tunnel1) Destination: 200.200.200.200

          Status:

          Admin: up         Oper: up     Path: valid       Signalling: connected

          path option 2, type dynamic (Basis forSetup, path weight 11)

          path option 1, type explicit ISP1

          Config Parameters:

          Bandwidth: 2000     kbps (Global)  Priority: 1 1   Affinity: 0x0/0xFFFF

          Metric Type: TE (default)

          AutoRoute: enabled   LockDown: disabled  Loadshare: 2000     bw-based

          auto-bw: disabled

          InLabel :  -

          OutLabel : FastEthernet1/0, 22

          RSVP Signalling Info:

          Src 100.100.100.100, Dst200.200.200.200, Tun_Id 1, Tun_Instance 230

          RSVP Path Info:

          My Address: 202.11.11.2

          Explicit Route: 202.11.11.1 202.12.12.1202.12.12.2 200.200.200.200

          Record Route:

          Tspec: ave rate=2000 kbits, burst=1000bytes, peak rate=2000 kbits

          RSVP Resv Info:

          Record Route: 202.11.11.1 202.12.12.2

          Fspec: ave rate=2000 kbits, burst=1000bytes, peak rate=2000 kbits

          History:

          Tunnel:

          Time since created: 1 hours, 9 minutes

          Time since path change: 1 minutes, 13seconds

          Current LSP:

          Uptime: 1 minutes, 13 seconds

          Prior LSP:

          ID: path option 1 [229]

          Removal Trigger: path option removed

          Name:PE1_t2                             (Tunnel2) Destination: 200.200.200.200

          Status:

          Admin: up         Oper: up     Path: valid       Signalling: connected

          path option 1, type explicit ISP2 (Basisfor Setup, path weight 11)

          pathoption 2, type dynamic

          Config Parameters:

          Bandwidth: 2000     kbps (Global)  Priority: 2 2   Affinity: 0x0/0xFFFF

          Metric Type: TE (default)

          AutoRoute: enabled   LockDown: disabled  Loadshare: 2000     bw-based

          auto-bw: disabled

          InLabel :  -

          OutLabel : FastEthernet2/0, 23

          RSVP Signalling Info:

          Src 100.100.100.100, Dst200.200.200.200, Tun_Id 2, Tun_Instance 251

          RSVP Path Info:

          My Address: 202.21.21.2

          Explicit Route: 202.21.21.1 202.22.22.1202.22.22.2 200.200.200.200

          Record Route:

          Tspec: ave rate=2000 kbits, burst=1000bytes, peak rate=2000 kbits

          RSVP Resv Info:

          Record Route: 202.21.21.1 202.22.22.2

          Fspec: ave rate=2000 kbits, burst=1000bytes, peak rate=2000 kbits

          History:

          Tunnel:

          Time since created: 1 hours, 9 minutes

          Time since path change: 2 minutes, 19seconds

          Current LSP:

          Uptime: 2 minutes, 19 seconds

          Prior LSP:

          ID: path option 2 [250]

          Removal Trigger: path option removed

          LSP TunnelPE2_t1 is signalled, connection is up

          InLabel : FastEthernet1/0, implicit-null

          OutLabel : -

          RSVP Signalling Info:

          Src 200.200.200.200, Dst100.100.100.100, Tun_Id 1, Tun_Instance 231

          RSVP Path Info:

          My Address: 100.100.100.100

          Explicit Route:  NONE

          Record Route: 202.11.11.1 202.12.12.2

          Tspec: ave rate=2000 kbits, burst=1000bytes, peak rate=2000 kbits

          RSVP Resv Info:

          Record Route:

          Fspec: ave rate=2000 kbits, burst=1000bytes, peak rate=2000 kbits

          LSP TunnelPE2_t2 is signalled, connection is up

          InLabel : FastEthernet2/0, implicit-null

          OutLabel : -

          RSVP Signalling Info:

          Src 200.200.200.200, Dst100.100.100.100, Tun_Id 2, Tun_Instance 235

          RSVP Path Info:

          My Address: 100.100.100.100

          Explicit Route:  NONE

          Record Route: 202.21.21.1 202.22.22.2

          Tspec: ave rate=2000 kbits, burst=1000bytes, peak rate=2000 kbits

          RSVP Resv Info:

          Record Route:

          Fspec: ave rate=2000 kbits, burst=1000bytes, peak rate=2000 kbits

          
  • CCNP路由实验之十二 MPLS的更多相关文章

    1. CCNP路由实验之十 组播(多播)

                          CCNP路由实验之十 组播(多播) 种方法: 在交换机上配置静态的多播MAC地址到用户接口的映射 使用CGMP.执行CGMP的多播路由器能够将用户发送给自己 ...

    2. CCNP路由实验之十五 NAT(网络地址转换)

       CCNP路由实验之十五 NAT(网络地址转换) 众所周知,要让自己的电脑连上Internet,必须要到运营商(ISP)申请一个上网账号,依据此账号申请自己的宽频业务(拨号上网.商业固定IP等等) ...

    3. CCNP路由实验之十四 路由器的訪问控制ACL

       年9月1月12:00.还有一种时间叫做周期时间(periodic),即这个时间是会多次反复的.比方每周一,或者每周一到周五 ,"rotary 2″开启3002以此类推. 变成1,1变成 ...

    4. CCNP路由实验之七 动态路由之BGP

       CCNP路由实验之七 动态路由之BGP 动态路由协议能够自己主动的发现远程网络,仅仅要网络拓扑结构发生了变化,路由器就会相互交换路由信息,不仅能够自己主动获知新添加的网络,还能够在当前网络连接失 ...

    5. CCNP路由实验之八 路由重公布

       CCNP路由实验之八 路由重公布 在前面几个实验,已经学习了静态路由和动态路由.如今,我们要掌握怎样使它们在一个网络中融合,即路由重公布. 使用出站口作为静态路由 0 使用下一跳地址作为静态路由 ...

    6. CCNP路由实验之六 动态路由协议之IS-IS

       CCNP路由实验之六动态路由协议之IS-IS 动态路由协议能够自己主动的发现远程网络.仅仅要网络拓扑结构发生了变化.路由器就会相互交换路由信息,不仅能够自己主动获知新添加的网络.还能够在当前网络 ...

    7. CCNP路由实验之九 路由策略

       CCNP路由实验之九 路由策略 路由器在公布与接收路由信息时,可能须要实施一些策略.以便对路由信息进行过滤,比如仅仅接收或公布满足一定条件的路由信息. 一种路由协议可能须要引入其它的路由协议发现 ...

    8. BizTalk动手实验(十二)WCF-Oracle适配器使用

      1 课程简介 通过本课程熟悉WCF-Oracle适配器的的使用 2 准备工作 1. 新建BizTalk空项目 2. 配置BizTalk项目的应用程序名称及程序签名. 3. Oracle数据库 ( Or ...

    9. CCNP路由实验(4) -- BGP

      基本配置:enableconf tno ip do loenable pass ciscoline con 0logg syncexec-t 0 0line vty 0 4pass ciscologg ...

    随机推荐

    1. logging——日志

      导读 很多程序都有记录日志的需求,并且日志中包含的信息即有正常的程序访问日志,还可能有错误.警告等信息输出,python的logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志,log ...

    2. 使用 D8 分析 javascript 如何被 V8 引擎优化的

      在上一篇文章中我们讲了如何使用 GN 编译 V8 源码,文章最后编译完成的可执行文件并不是 V8,而是 D8.这篇我们讲一下如何使用 D8 调试 javascript 代码. 如果没有 d8,可以使用 ...

    3. POJ 2033 Alphacode

      Alphacode Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 11666   Accepted: 3564 Descri ...

    4. hdoj--1045<dfs&二分图最大匹配>(这里是dfs解法)

      题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1045 题目描述: 在矩阵中放车,车可四面攻击,矩阵中有墙,可以防止攻击,给出墙的位置,输出最多可以放多 ...

    5. CORS跨域请求总结

      CORS跨域请求分为简单请求和复杂请求. 1. 简单请求: 满足一下两个条件的请求. (1) 请求方法是以下三种方法之一: HEAD GET POST (2)HTTP的头信息不超出以下几种字段: Ac ...

    6. 刷题总结——湫湫系列故事——设计风景线(hdu4514 并差集判环+树的直径)

      题目:   随着杭州西湖的知名度的进一步提升,园林规划专家湫湫希望设计出一条新的经典观光线路,根据老板马小腾的指示,新的风景线最好能建成环形,如果没有条件建成环形,那就建的越长越好.   现在已经勘探 ...

    7. 超爽的Windows终端Cmder

      我们常常看到科研.军事.编程上用的计算机系统是"黑洞洞"的,没有桌面.相对我们现在使用的Windows系统,既方便又美观,那么他们怎么不用Windows一样的图形化界面呢? 告诉你 ...

    8. 病毒(bzoj 2938)

      Description 二进制病毒审查委员会最近发现了如下的规律:某些确定的二进制串是病毒的代码.如果某段代码中不存在任何一段病毒代码,那么我们就称这段代码是安全的.现在委员会已经找出了所有的病毒代码 ...

    9. The Luckiest number(hdu 2462)

      给定一个数,判断是否存在一个全由8组成的数为这个数的倍数 若存在则输出这个数的长度,否则输出0 /* 个人感觉很神的一道题目. 如果有解的话,会有一个p满足:(10^x-1)/9*8=L*p => ...

    10. 【Visual Studio】工程类型选择win32还是x64 ?

      1. 如果将Visual Studio的工程类型设置为win32,那么我们开发的程序既能在32位操作系统上运行,也能在64位操作系统上运行. 2. 如果将Visual Studio的工程类型设置为x6 ...