简单分析MPLS技术

MPLS:多协议标签交换

MPLS是一种IP骨干网技术;支持多种网络协议。
传统的IP转发如下图:
简单分析MPLS技术_第1张图片
到达每一台路由器都要分析IP的头部,然后在根据IP报头的信息进行转发,基于最长匹配原则的转发;这样的转发效率明显过于低下。所以IP的转发性能成为限制网络发展的瓶颈。
随后就出现了ATM技术,但是为什么ATM技术没有得到普及,因为ATM的复杂性和实际部署成本高,所以ATM没有得到普及。
传统的IP技术简单,但是效率低下,为了解决这个问题,人们把传统的IP技术与ATM的优点技术借鉴之后产生了MPLS技术。

MPLS是怎么解决这个问题的呢?
大致的思想就是将不同的路由经过MPLS域的时候直接标记(标签),标签的信息是对应的路由最终目的地的接口。不管此路由条目中间经过了多少路径中间设备都不会去分析这条路由的IP,只有目的地设备才可以查看。

为了深入了解MPLS技术我们首先熟悉几个概念:

  1. MPLS domain—MPLS的工作范围;
  2. LSR(P路由器)—标签交换路由器;
  3. Edge LSR(PE路由器)—边界标签路由器;
  4. CE—客户端路由器,不工作于MPLS域,使用FIB表转发流量;
  5. 控制层面—交换路由信息;

各种服务于MPLS的表;

  • FEC :转发等价类
  • LIB:标签信息库(LIB表里记录了LSR自己分配的标签以及邻居分配的标签)
  • FLIB:转发标签信息库(在LIB中最优的放进来,由LIB和CEF中的FIB共同形成)
  • FIB:转发信息库(路由表的镜像)
  • CEF:cisco交换转发表

下图为MPLS工作的图示:
简单分析MPLS技术_第2张图片
在MPLS技术之后Cisco发明了CEF技术,可以只匹配一次多次转发此标记路由,直接使用CEF表来实现对应接口的目的,发现具有标记的路由之后直接进行转发,减免了重复标记路由的麻烦。

**控制层面:**进行标签号的分发
通过MPLS domain内底层协议交互路由条目,生成路由表和FIB表;MPLS使用TDP/LDP基于FIB表中的每一条信息生成标签号,然后通告到邻居。

**数据层面:**普通的数据包将基于FIB表转发;若数据包中存在标签号基于LFIB进行转发;

MPLS的数据封装于二层和三层之间:(如图)
简单分析MPLS技术_第3张图片

MPLS的数据包格式:(占4字节)
4x8=32bit
简单分析MPLS技术_第4张图片

MPLS数据包说明:
前20位为标签号,存在2^20个,其中0—15bit保留;
21—23位为8个优先级,用于QoS;
25—32位为TTL,MPLS会自动同步IP的TTL值。

注意:入标签号为本地分配的号码,出标签号为下一跳分配的号码。

那么现在就可以总结MPLS的工作过程了:

  1. 路由经过PE端压入标签;
  2. 交换路由(在P路由器);
  3. 脱标签(到达末端PE);
  4. 弹出标签;
  5. 路由离开MPLS域。

MPLS优化问题:
MPLS也存在一些需要优化的问题,在弹出标签的过程中,进行了对MPLS技术的优化,叫做PHP次末跳。
末端的PE路由器默认需要查看LFIB表再查看FIB表,然后转发数据;PHP可以使倒数第二跳在已知出接口的信息时将标签弹出,然后基于出接口转发数据包,末端PE路由器则仅查看FIB表;
为了实现这种技术,倒数第二跳路由器将本地直连路由传递给邻居(末端PE),使用标签号3号告诉它为倒数第二跳;

MPLS的功能:
一、 提高传统IP转发的效率;
二、 解决BGP路由黑洞问题;
三、 搭建MPLS VPN等。

如何用MPLS解决BGP路由黑洞的问题?(具体技术在配置篇中将涉及
MPLS将为FIB表中的路由条目分配标签号,但是通过BGP协议学习到的路由条目不会分配标签号;在访问BGP路由条目时,直接打上到达BGP下一跳地址的标签号,来通过未运行BGP协议的路由器将该路由转发到达目标BGP路由。

VPN技术:
Virtual Private Network(虚拟专用网络),被定义为通过一个公用网络(通常是因特网)建立一个临时的、安全的连接,是一条穿过公用网络的安全、稳定的隧道。
虚拟专用网是对企业内部网的扩展,它可以帮助异地用户、公司分支机构、商业伙伴及供应商同公司的内部网建立可信的安全连接,并保证数据的安全传输。

其实VPN技术可以类比为局域网之间的通信,俩个局域网之间刚开始不可以通信,但是我将局域网内的私有IP,封装到公有IP的后边,让公有IP带着私有IP到达目标后,再将公有IP解封装为私有IP,进行数据包的交换,然后带着数据包再回复源目标。

简单分析MPLS技术_第5张图片

## MPLS VPN技术:

简单分析MPLS技术_第6张图片
MPLS 技术是一个运营商的技术,所以CE端也就是客户端

我们再来了解几个名词:

  1. RD—路由区分器,一个64位的16进制数,模式:X:X,仅为一种参数;
    一个CE端对应一个RD值对应着一个接口;用来区分不同的CE端;
  2. VRF—虚拟路由转发,基于每个RD和接口分配一个虚拟空间;
    虚拟空间里面的路由被称为VPNV4路由,也就是IPV4路由+RT+RD的结果;
  3. RT—用于区分不同的接受者;RT的风格与RD类似;
    RT值属于BGP的社团属性;

你可能感兴趣的:(计算机网络)