BGP-4多协议扩展

【BGP-4多协议扩展】1、摘要
当前的BGP协议[BGP-4]只能广播IPV4[IPV4]的路由信息,本文档定义一种BGP-4的
扩展机制,这种机制能够使BGP-4携带多种网络层协议(如IPV6,IPX等网络层协议)的
路由信息 。这种扩展机制是向后兼容的:支持这种扩展的路由器能够和不支持扩展的路由器
完全交互 。
2、概述
BGP-4支持的三种IPV4信息分别是:Next-hop属性(用一个IPV4地址表示)、Aggregator
属性(包含一个IPV4地址)和NLRI属性(IPV4地址前缀) 。本文档介绍的这种扩展假设任
合BGP-4发言人(包括支持多协议扩展机制的发言人)都必须有一个IPV4地址(用在
Aggregator属性中) 。因此,为了让BGP-4支持多种网络层协议的路由,只须做两件事,(a):
把Next-hop信息同一个特定的网络层协议联系起来,(b):把NLRI同一个特定的网络层协
议联系起来 。同时用RFC1700中定义的地址族区分各种不同的网络层协议 。
显而易见,下一跳信息(Next-hop属性提供的)只有在广播可达目的地的结合点才有用,
在广播不可达目的地的结合点,下一跳信息根本没用 。这就预示着,可达性信息的广播应该
根据下一跳的广播分类,那些可达性目的地址的广播应该从不可达地址的广播中独立出来 。
为了提供的向后兼容,同时也为了简化BGP-4的多协议扩展机制,引进两个新的BGP-4
属性,它们是:多协议可达NLRI(MP-REACH-NLRI)和多协议不可达NLRI
(MP-UNREACH-NLRI) 。MP-REACH-NLRI用来携带可达信目的地址以及转发到这些目的
地址的下一跳的地址,MP-UNREACH-NLRI用来携带不可达的目的地址 。这两个属性都是
可选非过渡的 。这样,不支持多协议扩展机制的BGP发言人就可以忽略这些属性所表达的
信息,并且不把这些信息广播给它的其它邻居 。
3、多协议可达NLRI的实现
MP-REACH-NLRI是一个可选非过渡属性,主要有以下作用:
?
(a) 向一个对等体广播可用路由 。
(b) 答应路由器广播该路由器的网络层地址以便作为在MP-NLRI属性中到达NLRI
信息所表示的目的地的下一跳地址 。
(c) 答应路由器报告部分或全部的本地系统中存在的子网接入点(Sub-networkPoints
ofAttachment,SNPAS) 。
每个属性项都包含如下图所示的一个或者多个三元组(AddressFamilyInformation,
NextHopInformation,NetworkLayerReachabilityInformation):
---------------------------------------------------------
AddressFamilyIdentifier(2octets)
---------------------------------------------------------
SubsequentAddressFamilyIdentifier(1octet)
---------------------------------------------------------
LengthofNextHopNetworkAddress(1octet)
---------------------------------------------------------
NetworkAddressofNextHop(variable)
---------------------------------------------------------
NumberofSNPAs(1octet)
---------------------------------------------------------
LengthoffirstSNPA(1octet)
---------------------------------------------------------
FirstSNPA(variable)
---------------------------------------------------------
LengthofsecondSNPA(1octet)
---------------------------------------------------------
SecondSNPA(variable)
---------------------------------------------------------
...
---------------------------------------------------------
LengthofLastSNPA(1octet)
---------------------------------------------------------
LastSNPA(variable)
---------------------------------------------------------
NetworkLayerReachabilityInformation(variable)

推荐阅读