缺省情况下,网络的路由改变时,如果有一个边缘节点(Egress)发现自己的路由表中出现了新的主机路由,并且这一路由不属于任何现有的FEC,则该边缘节点需要为这一路由建立一个新的FEC。

  如果MPLS网络的Egress有可供分配的标签,则为FEC分配标签,并主动向上游发出标签映射消息,标签映射消息中包含分配的标签和绑定的FEC等信息。

  Transit收到标签映射消息后,判断标签映射的发送者(Egress)是否为该FEC的下一跳。若是,则在其标签转发表中增加相应的条目,然后主动向上游LSR发送对于指定FEC的标签映射消息。

  Ingress收到标签映射消息后,判断标签映射的发送者(Transit)是否为该FEC的下一跳。若是,则在标签转发表中增加相应的条目。这时,就完成了LSP的建立,接下来就可以对该FEC对应的数据报文进行标签转发。

  上面介绍的是普通LDP LSP的建立,还有一种代理Egress LSP。代理Egress(Proxy Egress)是能够针对非本地路由触发建立LSP的Egress节点,当路由器使能倒数第二跳弹出时,倒数第二跳节点实际上就是一种特殊的代理Egress。一般情况下,代理Egress由配置产生。代理Egress可以应用于网络中有不支持MPLS特性的路由器场景,也可用于解决BGP路由负载分担问题。

  为了提高LDP报文的安全性,MPLS提供了三种保护机制:LDP MD5认证、LDP Keychain认证和LDP GTSM。

  LDP Keychain认证是比LDP MD5认证更安全的加密认证,对于同一邻居,只能选择其中一个加密认证;而LDP GTSM用来防止设备受到非法LDP报文的攻击,其可以与前面两个配合使用。

  MD5(Message-Digest Algorithm 5)是RFC1321定义的国际标准摘要密码算法。MD5的典型应用是针对一段信息计算出对应的信息摘要,从而防止信息被篡改。MD5信息摘要是通过不可逆的字符串变换算法产生的,结果唯一。因此,不管信息内容在传输过程中发生任何形式的改变,只要重新计算就会产生不同的信息摘要,接收端就可以由此判定收到的是一个不正确的报文。

  LDP MD5应用其对同一信息段产生唯一摘要信息的特点来实现LDP报文防篡改校验,比一般意义上TCP校验和更为严格。其实现过程如下:

  LDP会话消息在经TCP发出前,会在TCP头后面填充一个唯一的信息摘要再发出。而这个信息摘要就是把TCP头、LDP会话消息以及用户设置的密码一起作为原始信息,通过MD5算法计算出的。

  当接收端收到这个TCP报文时,首先会取得报文的TCP头、信息摘要、LDP会话消息,并结合TCP头、LDP会话消息以及本地保存的密码,利用MD5计算出信息摘要,然后与报文携带的信息摘要进行比较,从而检验报文是否被篡改过。

  Keychain是一种增强型加密算法,类似于MD5,Keychain也是针对同一段信息计算出对应的信息摘要,实现LDP报文防篡改校验。

  Keychain允许用户定义一组密码,形成一个密码串,并且分别为每个密码指定加解密算法(包括MD5,SHA-1等)及密码使用的有效时间。在收发报文时,系统会按照用户的配置选出一个当前有效的密码,并按照与此密码相匹配的加密解密算法以及密码的有效时间,进行发送时加密和接收时解密报文。此外,系统可以依据密码使用的有效时间,自动完成有效密码的切换,避免了长时间不更改密码导致的密码易破解问题。

  Keychain的密码、所使用的加解密算法以及密码使用的有效时间可以单独配置,形成一个Keychain配置节点,每个Keychain配置节点至少需要配置一个密码,并指定加解密算法。

  通用TTL安全保护机制GTSM(Generalized TTL Security Mechanism)是一种通过检查IP报文头中的TTL值是否在一个预先定义好的范围内来实现对IP业务进行保护的机制。使用GTSM的两个前提:

  设备之间正常报文的TTL值确定

  报文的TTL值很难被修改

  LDP GTSM是GTSM在LDP方面的具体应用。

  GTSM通过判定报文的TTL值,确定报文是否有效,从而保护设备免受攻击。LDP GTSM是对相邻或相近(基于只要跳数确定的原则)设备间的LDP消息报文应用此种机制。用户预先在各设备上设定好针对其他设备报文的有效范围,使能GTSM,这样当相应设备之间应用LDP时,如果LDP消息报文的TTL不符合之前设置的范围要求,设备就认为此报文为非法攻击报文予以丢弃,进而实现对上层协议的保护。

  LDP跨域扩展通过使能LDP按最长匹配原则查找路由,使LDP能够依据聚合后的路由建立起跨越多个IGP区域的LDP LSP。

  当网络规模比较大时,通常需要部署多个IGP区域来达到灵活部署和快速收敛的目的。在这种情况下,IGP区域间进行路由通告时,为了避免路由数量多而引起的对资源的过多占用,区域边界路由器(ABR)需要将区域内路由聚合,再通告给相邻的IGP区域。然而,LDP在建立LSP的时候,会在路由表中查找与收到的标签映射消息中携带的FEC精确匹配的路由,对于聚合路由,LDP只能建立Liberal LSP,无法建立跨越IGP区域的LDP LSP。因此,引入LDP跨域扩展来解决这个问题。

  注:已经被分配标签,但是没有建立成功的LSP叫做Liberal LSP。

  存在Area10和Area20两个IGP区域。在Area10区域边缘的LSR_2的路由表中,存在到LSR_3和LSR_4的两条主机路由,为了避免路由数量多而引起的对资源的过多占用,在LSR_2上通过ISIS路由协议将这两条路由聚合为1.3.0.0/24发送到Area20区域。

  LDP在建立LSP的时候,会在路由表中查找与收到的标签映射消息中携带的FEC精确匹配的路由,LSR_1的路由表中只有这条聚合后的路由,而没有32位的主机路由。

  对于聚合路由,LDP只能建立Liberal LSP,无法建立跨越IGP区域的LDP LSP,以至于无法提供必要的骨干网隧道。

  因此,在LSR_1上需要按照最长匹配方式查找路由建立LSP。在LSR_1的路由表中,已经存在聚合路由1.3.0.0/24。当LSR_1收到Area10区域的标签映射消息时(例如携带的FEC为1.3.0.1/32),按照最长匹配的查找方式,LSR_1能够找到聚合路由1.3.0.0/24的信息,把该路由的出接口和下一跳作为到FEC 1.3.0.1/32的出接口和下一跳。这样,LDP就可以建立跨越IGP区域的LDP LSP。

  LDP是用来在LSR之间建立LDP Session并交换Label/FEC映射信息的协议。

  LDP用UDP(协议ID=17)发现邻居,用TCP(协议ID=6)建立邻接(LDP协议的目的端口号:646)

  LDP协议将hello报文发往224.0.0.2(所有开启组播功能的路由器)的组播组,用于发现直连链路上的LDP邻居。

  LDP的hello报文发送间隔是5s,hold time是3倍的hello时间15s。

  LDP的keepalive报文的发送间隔是15s,old timer是3倍的keepalive时间45s。

  LDP的环路检测机制:

  LDP路由向量法和最大跳数法分别通过两类TLV实现:Path Vector TLV和Hop Count TLV。如果配置使用者两类方法检测环路,那么在标签请求消息(Label Requset Message)和标签映射消息(Label Mapping MEssage)中都会携带者两种TLv。

  距离向量法:每个LSR在发送标签请求消息(标签映射消息)中,包含一个Path Vector TLV,并且入口(出口)LSR产生的路由长度值为1,并且把自己的LSR ID加入到TLV的列表中,标签请求消息(标签映射消息)每经过一跳长度值加1,接收端LSR如果收到标签请求消息(标签映射消息),发现长度值达到预先设定的最大值或者发现LSR ID列表中有自己的LSR ID,认为发生环路,发出通告消息,拒绝LSP的建立。

  LDP:可以为直连、静态和IGP路由分配标签。

  RSVR-TE:为TE预留资源和分配标签。

  MPBGP:可以为私网路由分配标签。

  BGP:可以为BGP路由分配标签。

  转发等价类FEC(Forwarding Equivalence Class)是一组具有某些共性的数据流的集合。这些数据流在转发过程中被LSR以相同的方式出。

  FEC可以根据地质、业务类型、QoS等要素进行划分。例如,在传统的采用最常匹配算法的IP转发中,到同一条路由的所有报文就是一个转发等价类。

mpls ldp lsp建立过程——Vecloud相关推荐

  1. 华为设备配置LDP LSP建立的触发策略示例(Transit)

    配置IP地址 [LSR1-GigabitEthernet0/0/0]ip add 10.1.1.1 24 [LSR1-LoopBack0]ip add 1.1.1.1 32 [LSR2-Gigabit ...

  2. MPLS BGP标签分发过程——Vecloud

    MPLS第三种分配标签的方式也依赖现有协议-BGP.BGP支持多个地址族,扩展新的可达性信息与相关属性变得很简单.通过添加新的地址族,不仅可以通告前缀,还可以通告与该前缀关联的一个或多个标签.几种用于 ...

  3. 通过静态LSP、LDP LSP、MPLS TE三种方式实现总部与分支的互通

    一.静态LSP 特点:类似静态路由,简单易用,手动建立lsp,定制转发路径,无需控制报文,资源消耗少. 缺点:不适合大型复杂拓扑,不能根据网络变化而动态调整,需要管理员手动调整.(结合BFD可以自动切 ...

  4. MPLS——LDP协议(工作过程、标签发布和管理方式)

    目录 建立LSP的两种方式 静态LSP 动态LSP LDP协议 LDP动态建立LSP涉及的基本概念 LDP工作过程--三个阶段.四种消息类型.五种状态 LDP建立LSP LDP标签发布和管理 PHP ...

  5. MPLS LDP原理

    我自风情万种与世无争? 文章目录 一.LDP协议 二.LDP的基本概念 三.拓扑 四.基础配置 五.观察与描述 六.LDP报文详解 七.LDP会话状态机 一.LDP协议 LDP协议就是其中最重要的一个 ...

  6. MPLS LDP:标签分发协议

    MPLS LDP:标签分发协议 定义 是MPLS的控制协议,类似于传统网络中的信令协议,负责FEC分类.标签分发以及LSP的建立和维护等一系列操作 MPLS可以使用多种标签分发协议 LDP MP-BG ...

  7. 实验详解手工指定MPLS的LSP(Huawei设备)

    文章目录 采用静态手工指定label的方式配置MPLS的LSP 实验拓扑 配置思路与过程 IGP--OSPF LSP--MPLS 分析LSP与LFIB R2 -> R4 R4 -> R2 ...

  8. 静态LSP的建立过程(华为设备)

    概述: 一条静态LSP经过的LSR共有3种角色: Ingress.Transit.Egress.Ingress节点负责为接收到的IP报文压入标签并送入LSP隧道,Transit节点负责以标签交换的方式 ...

  9. 华为 LDP回话建立的过程

    哈喽,大家好!我是艺博东 ,是一个思科出身.专注于华为的网工:好了,话不多说,我们直接进入正题. 文章目录 一.拓扑 二.配置与测试 三.分析 一.拓扑 二.配置与测试 底层运行IGP协议,这里IGP ...

最新文章

  1. BottomNavigationView+ViewPager+Fragment仿微信底部导航栏
  2. Caused by: java.lang.ClassNotFoundException: javax.persistence.Entity
  3. 用计算机测出你真实的年龄,一款神奇的App:能够测出你的真实年龄
  4. C. Three Parts of the Array(切割字符串)
  5. 数据库系统概念总结:第八章 关系数据库设计
  6. [bzoj 5332][SDOI2018]旧试题
  7. python在不同层级目录import模块的方法
  8. Linux安装CUDA的正确姿势
  9. How-to: Build VPP FD.IO development environment with Mellanox DPDK PMD.
  10. golang 目录分隔符号_Golang 从0到1之任务提醒(一)
  11. HDU 6166 2017 多校训练:Senior Pan(最短路)
  12. NLP学习—13.Seq2eq在机器翻译中的实战(bleu指标的代码实现)
  13. 推荐一份Web 工程师的前端书单
  14. php把字体调大,phpDesigner 8调整字体大小的方法。
  15. 小米手机每次安装应用都需要属于小米账号密码
  16. 同一文件夹下的excel文件合并成一个总excel
  17. QQ群发精灵V3.2
  18. 什么是云计算中的SaaS(软件即服务)?
  19. Elasticsearch学习4《Elasticsearch的各种查询》
  20. Unity PBR材质

热门文章

  1. 如何解决开发人员的工作无法量化的问题
  2. 使用MySql保存session
  3. 汇编 CALL和RET指令
  4. OpenCV 图像旋转
  5. Java 百鸡百钱题
  6. 2016 版 Laravel 系列入门教程(一)
  7. Volatile 关键字 内存可见性
  8. 剑指offer 面试36题
  9. RxJava+Retrofit+OkHttp深入浅出-终极封装四(多文件下载之断点续传)
  10. GUI菜单——菜单条、菜单、子条目之间关系