MPLS协议.docx
- 文档编号:7486422
- 上传时间:2023-01-24
- 格式:DOCX
- 页数:8
- 大小:287.17KB
MPLS协议.docx
《MPLS协议.docx》由会员分享,可在线阅读,更多相关《MPLS协议.docx(8页珍藏版)》请在冰豆网上搜索。
MPLS协议
MPLS-协议
MPLSMultipleProtocolLabelSwitching
多协议标签交换
MPLS是一种标签转发技术,它采用无连接的控制平面和面向连接的数据平面,无连接的控制平面实现路由信息的传递和标签的分发,面向连接的数据平面实现报文在建立的标签转发路径上传送。
从实际来讲,它应该属于OSI的2.5层,即不是数据链路层也不是网络层,为数据链路层和网络层提供服务。
MPLS封装模式:
1.帧模式。
帧模式封装直接在报文的二层头部和三层头部之间增加一个MPLS标签头,以太网和PPP采用这种封装格式。
2.信元模式。
ATM中使用信元模式。
MPLSHeader(4B)
LABEL
EXP
S
TTL
|20b|3b|1b|8b|
LABEL(20b):
该标签用于报文转发。
2^20=1024*1024=1,048,576
EXP(3b)ExperimentalUse:
承载IP报文中的优先级。
(IP头部中的TOS)
S(1b)BottomofStack:
用来表明是否为最后一个标签。
(MPLS标签可以多层嵌套)
TTL(8b):
用来防止报文环路。
(类似IP头部的TTL,只有帧封装的MPLS有这个字段)
以太网中的Type标识二层后面的报文类型:
Ethernet0x0800IPv40x8847MPLS单播报文
0x8848MPLS多播报文
PPP链路中的Protocol标识二层后面的报文类型:
0x8021IPv4
0x8281MPLS单播报文
0x8283MPLS多播报文
MPLS网络模型常见概念:
LERLabelEdge Router:
位于MPLS域边用于连接IP网络或其他非MPLS网络的交换机或ATM交换机称为LER。
LER负责从IP网络接收IP报文并给报文打上标签,然后送到LSR,同样,也负责从LSR接收带标签的报文并去掉标签然后转发到IP网络。
LSRLabelSwitchRouter:
位于MPLS域内的交换机。
负责按照标签进行转发。
LSPLabelSwitchPath:
报文在MPLS域内进行转发时经过的路径。
MPLS要依靠IGP建立LSP。
FEC(ForwardingEquivalenceClasses)转发等价类
在转发过程中以等价方式处理的一组数据分组(目的地址前缀相同的数据分组),通常为其分配唯一的标签。
NHLFE(NextHopLabelForwardingEntry)下一跳标签转发表项
在进行标签转发时用到。
NHLEF包含了:
1.报文下一跳2.标签操作(Push压入,Swap替换,Pop弹出)
FTN(FECToNHLFE)FEC到NHLEF
FEC代表同一类报文,NHLFE包含了下一跳和操作信息等内容。
只有FEC和NHLFE关联起来,才能实现对于同一类报文进行特定的标签转发。
(当LER将一个不带MPLS标签的IP报文转发给MPLSLSR时需要使用FTN)
ILM(IncomingLabelMap)入标签映射
ILM将每个入标签映射到NHLFE。
(当LSR转发带有标签的报文时使用ILM)
PHP(PenultimateHopPopping)倒数第二跳弹出
使得标签在倒数第二跳LSR上弹出,最后一跳LSR(分配了一个特殊标签3)收到此报文即是传统的IP报文(因为最后一跳收到的标签对转发来讲没有任何意义,为了提高效率则有了PHP)。
MPLS结构模块
1.控制平面(ControlPlane)
路由协议模块(RoutingProtocol):
传递路由信息并生成路由信息表。
路由信息表(IpRoutingTable)
标签分发协议模块(LabelDistributionProtocol):
完成标签交换,建立标签转发路径。
2.数据平面(DataPlane)
IP转发表(IPForwardingTable)
标签转发表(LabelForwardingTable)
MPLS转发流程:
收到普通IP报文时(IncomingIPPackets),如果是普通IP转发,则查找IP路由表转发,如果需要标签转发,则按照标签转发表转发;当收到带有标签的报文时(IncomingLabeledPackets)时,如果需要按照标签转发,则根据标签转发表转发,如果需要转发到IP网络,则去掉标签后根据IP路由表转发。
MPLS标签转发流程
IngressLER(入口LER):
根据目的地址前缀分析(查找IP转发表)决定给该报文封装哪个标签(PUSH)及应该从哪个接口转发给下一跳(查找标签转发表)。
(FEC)
LSR:
查MPLS头部,用新标签来替换旧标签(SWAP),并向下一个LSR发送。
EgressLER(出口LER):
查找标签转发表,弹出标签(POP),然后查找IP转发表转发IP报文
MPLS的环路检测:
MPLS对于TTL处理的两种方式:
1.IP报文在进入MPLS网络的时候MPLS头部的TTL拷贝IPTTL的值。
(华为缺省下如此)
2.在入口LER将MPLS头部的TTL统一设置为255.
不管两种处理方式如何变化,在MPLS域内只改变MPLS中的TTL,和IP中的TTL半毛钱关系都没有,当MPLS的TTL为0后会被丢弃。
标签分发协议LDP
概述:
MPLS需要使用标签分发协议完成标签的分配控制和保持,常用的为LDP,LDP是用来LSR之间建立LDPSession并交换Lable/FEC映射信息的协议。
LDP承载在TCP和UDP之上,端口号为646.
LDP消息类型及作用:
消息类型的4大类:
DiscoveryMessage:
宣告和维护网络中一个LSR的存在。
承载在UDP报文之上。
SessionMessage:
建立,维护和终止LDPPeers之间的LDPSession。
承载在TCP之上。
AdvertisementMessage:
生成,改变和删除FEC的标签映射。
承载在TCP之上。
NotificationMessage:
宣告告警和错误信息。
承载在TCP之上。
简称
消息类型
作用
DM
Hello
LDP发现机制中宣告本LSR并发现邻居
SM
Initialization
在LDPSession建立过程中协商参数
KeepAlive
监控LDPSession的TCP连接的完整性
AM
Address
宣告接口地址
AddressWithdraw
撤消接口地址
LabelMapping
宣告FEC/Label映射信息
LabelRequest
请求FEC的标签映射
LabelAbortRequest
终止未完成的LabelRequest
LabelWithdraw
撤消FEC/Label映射
LabelRelease
释放标签
NM
Notification
通知LDPPeer错误信息
LDP发现机制:
1.LDP基本发现机制:
发现直接连接在同一链路上的LSR邻居。
(无需明确指明LDPPeer)
LSR通过周期性发送HelloMessage表明自己的存在(封装在UDP报文中,目的端口646,目的IP地址为组播地址224.0.0.2),然后IP地址大的lSR作为主动方发起TCP连接,建立后LSR会继续发送HelloMessage以便发现新的邻居和检测错误
2.LDP扩展发现机制:
发现非直接连接的LSR邻居。
LSR周期发送HElLOMessage给特定的目的IP(需要手动指定LDPpeer),另外一个LSR将决定是否要回应该报文,如果要回应,则发送HelloMessage给特定的LSR。
LDPSession建立和维护
1.建立TCP连接之前,两个LSR会决定使用哪个地址建立TCP连接及确定主动方与被动方,然后由主动方建立连接。
选举原则:
HelloMessage中携带了TransportAddress,则选TransportAddress,如果无则选HelloMessage中的源IP地址。
(两个LSR都获得HelloMessage获得对端用于建立TCP连接的地址,比较两个地址,地址大的作为主动方发起TCP连接。
)
2.TCP连接建立后,由主动方发出InitializationMessage携带会话协商参数,被动方则检查参数是否能接受,如果接受则发送InitializationMessage给主动方,并随后发KeepAliveMessage,直到双方都收到KeepAliveMessage,会话建立成功;如果被动方不接受协商参数,则发送ErrorNotificationMessage给对方取消连接。
LDP帧结构:
IPHeader
TCP/UDP
LDPHeader
LDPMessage
Version
PDULength
LSR-ID
LabelSpace
2B2B4B2B
LSR-ID和LabelSpace共同来标识一个LDPIdentifier。
标签空间分类:
基于平台的标签空间,基于接口的标签空间,其中帧封装的MPLS使用基于平台的标签空间,信元模式的MPLS使用基于接口的标签空间。
MPLS标签只有本地意义,每台LSR设备都对自己分配的标签即入标签负责,确保自己为不同的FEC所分配的入标签不会相同,以确保属于不同FEC的报文抵达该设备后,匹配到唯一的与些FEC对应的标签转发表项进行转发,所以在LSR上的标签转发表的IN标签列均不会相同。
相反,某一LSR上标签转发表的OUT标签值可能是来源于不同的下游LSR为不同的FEC分配的标签,它们之间并无关联性。
标签由设备随机生成。
任何一台LSR设备只会将针对某一FEC的LabelMapping消息发送给该FEC的上游设备,而绝不会发送给下游设备。
这样一来就可以确保只要路由表没有环路,MPLS的标签转发表也就不会有环路。
LDP标签分发的两种方式:
DU(DistributionUnsolicited)未经请求的标签分发:
DU方式下,无需上游交换机请求,下游LSR根据某一触发策略向上注LSR发送相应网段的标签映射消息(LabelMappingMessage).当前,DU标签分配方式应用更为普遍。
DOD(DistributionOnDemand)经过请求的标签分发:
DOD方式下,只有收到上游交换机请求特定网段的标签请求消息(LabelRequestMessage)时,才发送标签映射消息(LabelMappingMessage)给上游交换机。
此种标签分发方式适用于那些需要由上游设备来动态决定FEC的划分方法,或者需要由上游设备来为各个FEC指定网络资源要求等类似的应用环境。
DOD标签分发模式目前主要应用在流量工程技术中。
LDP标签控制的两种方式:
Ordered,有序方式:
此模式下,LSR只可以主动地为那些自己是最下游LSR的FEC分配标签。
上游的LSR需要等待收到它下游LSR发送过来的LabelMapping消息才能为对应的FEC分配标签,然后再发送给更上游的LSR。
可见,在这种标签控制模式下,针对某FEC的标签转发表将从其最下游的LSR开始,依次往上游逐个LSR形成该FEC的标签转发表项。
(有序的标签分配模式使得MPLS的转发是端到端的,对那些不是直接接入MPLS网络的用户将无法进行MPLS转发)
Independent,独立方式:
此模式下,每个LSR随时可以向邻居发送标签映射。
(此控制模式使得任何一个数据流在经过MPLS网络时,都可以进行MPLS转发,其最终的目的可能在一个非MPLS网络中)
LDP标签保持的两种方式:
Conservation,保守模式:
DU标签分发方式时,LSR可能收到多个LDPPeers到同一网段的标签映消息,但只会保留下一跳发来的标签,丢弃其余的标签。
DOD标签分发方式时,LSR根据路由信息只向它的下一跳请求标签。
优点:
只需保留和维护用于转发数据的标签,节约标签空间。
缺点:
如果路由下一跳发生变化,必须重新从新的下一跳那里获得标签然后才能转发数据。
Liberal,自由模式:
DU标签分发方式时,保留所有LDPPeers发来的标签,无论该LDPPeer是否为到达目的网段的下一跳。
DOD标签分发方式时,LSR会向所有LDPPeer请求标签。
优点:
路由发生变化时能快速建立新的LSP进行数据转发。
缺点:
缺点是需要分发和维护不必要的标签映射。
LDP的环路检测:
通过LDP路径向量法或LDP最大跳数法来实现。
它们通过两类TLV实现:
PathVectorTLV和HopCountTLV。
如果使用这两类方法检测环路,那么在标签请求消息(LabelRequestMessage)和标签映射消息(LabelMappingMessage)都会有这两种TLV。
LDP路径向量法:
每个LSR在发送LRM或LMM时,把自己的LSRID加入到TLV列表中,并且给路径长度值加1(初始为0),接收的LSR发现长度值达到预先最大值或者发现LSRID列表中有自己的LSRID,认为发现环路,发出通知消息,拒绝LSP建立。
LDP最大路数法:
每个LSR在发送LRM或LMM,都会给跳数值加1(初始为0,类似RIP),接收端发现路数达到预先的最大值,发出通知洗牌,拒绝LSP建立。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MPLS 协议