MPLS LDP的原理与配置
一、LDP协议的概述
1.LDP会话
- 本地会话:LSR之间是直连的,双方使用组播地址224.0.0.2建立会话
- 远程会话:LSR之间可以是非直连的,双方建立会话是使用单播建立的
缺省是本地会话
2.LDP领接体
只要双方建立了会话之后就建立了邻接体
3.LDP对等体
在建立邻接体关系的基础上,两台LSR之间交互LDP会话消息,建立起LDP会话,两台设备之间形成LDP对等体关系
4.LDP ID
- LDP ID的长度为48bit,由32bit的LSR ID与16bit的标签空间标识符(Label Space ID)构成
- LDP ID以“LSR ID : 标签空间标识”的形式呈现。例如2.2.2.2:0
- 缺省情况下,路由器使用LSR ID作为LDP ID的
标签空间形态
- 值为0:表示基于设备(或基于平台)的标签空间
- 值非0:表示基于接口的标签空间
5.LDP消息
- Discovery Message:用来发现LDP邻居,hello消息是用来发现LDP的邻居,在接口上开启的LDP协议之后就会使用hello消息来发现邻居,hello报文里面包含着LSR作为传输地址,默认情况下路由器以LSR ID作为传输
Session Message:用来建立、维护和终止LDP之间的会话,Initializations是用来和邻居之间协商参数的,KeepAlive·是邻居建立成功之后就会发送这个报文,用来维护LDP的邻居
Advertisement Message:用来改变和删除FEC的标签映射,Address用来宣告地址,Label Mapping是标签映射,LDP如果想要访问邻居的地址就是用标签映射的地址去访问
Notification Message:用来宣告告警和错误信息
除了发现阶段的Discovery Message用的UDP传输,其他的消息类型都是用的TCP传输
6.LDP的状态
- Non-Existent:初始状态,表示没有任何的LDP会话
- Initialized:初始化状态,LSR发现了LDP邻居之后就会和邻居连接TCP三次握手,如果TCP三次握手建立失败就会进入到Non-Existent状态,这个状态下也会发送消息来协商参数,被动方接收到可接收的Init和KeepAlive报文之后进入到openrec状态。主动方发送init进入到OpenSent状态
- Opensent:等待被动方回答Initialization消息和KeepAlive消息,如果收到的Initialization消息中的参数可以接受则转向OpenRec状态,如果参数不能接受或Initialization消息超时则断开TCP连接转向Non-Existent状态
- openRec:在此状态不管主动方还是被动方都是发出KeepAlive后的状态,在等待对方回应KeepAlive,只要收到KeepAlive消息就转向Operational状态;如果收到其它消息或KeepAlive超时则转向Non-Existent状态
- Operational状态:该状态是LDP Session成功建立的标志。在此状态下可以发送和接收所有其它的LDP消息。在此状态如果KeepAlive超时或收到致命错误的Notification消息(Shutdown消息)或者自己主动发送Shutdown消息主动结束会话,都会转向Non-Existent状态
7.LDP的会话建立
- 发现阶段
- LSR通过发送hello报文来建立LDP邻居,hello报文里面携带了自己的传输地址,默认情况下是把自己的LSD ID作为传输地址,传输地址大的作为主动端,小的成为被动端口,由主动端和被动端使用自己的传输地址建立TCP的三次握手,如果TCP三次握手成功就会进入到会话建立阶段
- 会话的建立与保持
- 主动方发送初始化消息给被动方,如果被动方接收这个参数,则回应keeplive报文同时也会发送自己的初始化报文,这样是为了提高发送的效率,主动方如果能接收被动方发送过来的报文则建立起来了会话信息
8.标签的发布和管理
- 上游:以LSP作为判断,距离目的地址远的作为上游
- 下游:距离目的地址近的作为下游
- 标签的发布模式
下游自主方式(Downstream Unsolicited,DU):LSR无需从上游获得标签请求消息即进行标签分配与分发
下游按需方式(Downstream on Demand,DoD):LSR只能从上游获得标签请求消息即进行标签分配与分发
DU模式跟DOD模式有什么区别:
如果使用DU模式的话就无需请求标签,所以转发的效率也会变高,但是的话会占用内存
如果使用DOD的话就需要请求标签,所以转发效率会变慢,华为默认是DU模式
9.标签分配控制方式
- 什么是标签分配控制方式?标签分配控制方式是指在LSP的建立过程中,LSR分配标签的时候采用的处理方式
- 独立模式:在没有收到下游路由器发送过来的FEC的标签映射时,自己就可以像上游路由器发送标签路由器,配合DU模式使用,在没有收到下游LSR发送过来的标签的时候就可以自己向上游路由器发送标签,配置DOD模式使用,在没有收到下游的LSR发送过来的标签的时候,只有收到上游的LSR标签才可以向上游LSR发送标签
- 有序模式:只有当下游LSR向自己发布了标签,才会想上游LSR发布标签,配合DU模式使用,只有下游的LSR向自己发布了标签映射,上游的LSR没有给自己发送标签请求信息,才可以向上上游LSR发布标签映射,配合DOD使用只有下游LSR向自己发布了特定标签映射,上游的LSR给自己发送了标签请求的时候才会向上游发布标签映射
10.标签的保留
- 标签以什么形式保留在路由器上,华为默认是自由模式
- 自由模式
- 不管接收到的标签映射消息的下一跳是不是最优的都会保留,
- 保守模式
- 只有最优的下一跳标签才会保留,次优的是不会保留的
11.MPLS的转发原理
- 根据MPLS的数据转发原理,出站LSR在收到数据包之后需要把MPLS标签的头部弹出,然后变成普通的ip报文,转发给ip网络,在弹出标签的时候需要查看标签表,转发报文的时候需要ip路由表,这样子的话就会加重路由器的负担
12.PHP
- 隐式空:为了解决MPLS转发数据的时候带来的问题,可以使用PHP来解决这个问题,出节点在发布标签的时候,会发布一个特殊标签3给上游的LSR,如果有数据转发,则路由器查找转发表,看到FEC对应的出标签是3,那么将会直接弹出标签,发给出站LSR,那出节点收到的数据就是普通的ip报文了,所以出站LSR只需要查找ip路由表就好了
- 显式空:由于PHP的特点,出站LSR在收到的数据是没有MPLS头部的,如果MPLS域部署了qos,要知道MPLS的报文是EXP字段是用来部署QOS环境下去使用的,如果MPLS的头部没有了,那这个EXP的字段也就没有了,这样子会出现一些问题,出站LSR分配一个特殊的标签0给上游的LSR,路由器查找标签表发现特定的FEC的出标签是0的话就会保留当中的EXP的字段,其他字段则为空
MPLS LDP的原理与配置相关推荐
- MPLS之LDP的工作原理和配置
LDP的工作原理和配置 LDP的基本概念和工作机制 MPLS标签分发模式 LDP的基础配置 一.LDP的基本概念和工作机制 首先MPLS是一种根据标签报文中携带的标签来转发数据的技术. MPLS的一个 ...
- 华为设备MPLS LDP配置命令
[Huawei]mpls lsr-id 1.1.1.1 //配置本节点的LSR ID [Huawei]mpls //使能全局MPLS功能,并进入MPLS视图 [Huawei]mpls ldp //使能 ...
- LDP机制补充与配置(华为设备)
空标签: 一.隐式空标签 在 MPLS网络的出站LER处,首先需要对接收的报文进行标签移除(通过查找标签转发表),然后再进行FIB表的查找并转发,由于进行了两次查表操作,所以过程比较耗时.如果到达出站 ...
- MPLS LDP基础
MPLS LDP简介 标签分发协议LDP(Label Distribution Protocol)是多协议标签交换MPLS的一种控制协议,相当于传统网络中的信令协议,负责转发等价类FEC(Forwar ...
- Mpls ldp router-id loopback0 force是什么意思
新版本IOS命令等同于mpls ldp 16. 全局配置模式下配置ldp 的路由器标识 mpls ldp router-id [interface-name] [force] (1) 缺省情况下,ld ...
- MPLS——LDP协议(工作过程、标签发布和管理方式)
目录 建立LSP的两种方式 静态LSP 动态LSP LDP协议 LDP动态建立LSP涉及的基本概念 LDP工作过程--三个阶段.四种消息类型.五种状态 LDP建立LSP LDP标签发布和管理 PHP ...
- 华为路由与交换 MPLS 协议原理与配置
本次博客主要介绍MPLS协议原理与配置 MPLS(英语:Multi-Protocol Label Switching,缩写为MPLS) 多协议标签交换 90年代初,互联网流量快速增长,而由于当时硬件 ...
- MPLS LDP原理
我自风情万种与世无争? 文章目录 一.LDP协议 二.LDP的基本概念 三.拓扑 四.基础配置 五.观察与描述 六.LDP报文详解 七.LDP会话状态机 一.LDP协议 LDP协议就是其中最重要的一个 ...
- MPLS原理和配置实验
一.MPLS背景 90年代初,互联网流量快速增长,而由于当时硬件技术的限制,路由器采用最长匹配算法逐跳转发数据包,成为网络数据转发的瓶颈.快速路由技术成为当时研究的一个热点. 在各种方案中,IETF确 ...
最新文章
- Exchange bin先常用工具
- docker概念很乱?俺来替你理一下!
- ElasticSearch插件demo
- 领域驱动设计,让程序员心中有码
- python 批量下载网页图片_Python实现多线程批量下载图片
- qtableview不选中_如何选中/取消选中QTableView并触发setData()
- ajax加载数据到页面无法打印的解决办法
- IIS的Server Application Error报错解决方法
- 泛微oa系统什么框架_泛微OA系统表结构说明文档
- java 随机数的判断
- 60个有趣的经济学定律!
- erpc(EmbeddedRPC)入门笔记
- matlab eval 函数的使用
- PHP 工具 格式化
- sourceTree回退代码
- Global Industry Analysts称全球MSS市场在2017年达到112亿美元
- 最好用的 Base64 在线工具
- 出海企业怎么选择国际短信平台
- MySQL数据库——SQL函数
- 我的世界java手机版怎么调按键_《我的世界》按键设置 pc版快捷按键代码大全...
热门文章
- mysql8多值索引(Multi-Valued Indexes)使用方法和性能测试
- LeetCode-Python-273. 整数转换英文表示
- 讲讲Python中的函数传递问题 【文末送书】
- 我的电脑ip攻击邮件服务器,如何避免邮件服务器IP被列入黑名单
- 让英文和数字随机生成java_Java生成随机字母和数字
- JavaScript XHR使用 JSONPlaceholder API 并本地搭建JSON server REST API
- sketch插件开发_适用于Web开发人员的10个免费Sketch插件
- caffe 提取LMDB时可能出现的错误
- java 中水仙花题目_java算法题:水仙花问题
- 升级IOS10 出现的兼容性的问题