CN107078966B - 用于指配接收器标识符和自动确定树属性的方法和装置 - Google Patents
用于指配接收器标识符和自动确定树属性的方法和装置 Download PDFInfo
- Publication number
- CN107078966B CN107078966B CN201580063081.2A CN201580063081A CN107078966B CN 107078966 B CN107078966 B CN 107078966B CN 201580063081 A CN201580063081 A CN 201580063081A CN 107078966 B CN107078966 B CN 107078966B
- Authority
- CN
- China
- Prior art keywords
- length
- elected
- bfr
- bfrs
- bfer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/60—Router architectures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/741—Routing in networks with a plurality of addressing schemes, e.g. with both IPv4 and IPv6
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
示范方法包含第一网络装置,其参与选举过程以确定指定位转发路由器(D‑BFR)。所述方法包含:响应于确定第一网络装置被选举成D‑BFR,而执行D‑BFR操作,包括:基于由网络中的其它BFR广告的最大局部位掩码(BM)长度来确定BM的选举的BM长度,其中BM的每位将对应于位转发出口路由器(BFER),并向其它BFR广告确定的选举的BM长度。所述方法可进一步包含以下步骤中的一个或多个:基于由网络中的其它BFR广告的支持的树类型来确定选举的树类型;向一个或多个BFER指配一个或多个BM位置(BMP);以及广告选举的确定的树类型和/或指配的一个或多个BMP。
Description
相关申请的交叉参考
本申请要求2014年9月19日提交的美国临时申请第62/053,067号的利益,该申请通过参考结合于此。
技术领域
本发明的实施例涉及分组网领域,并且更确切地说,涉及位掩码(BM)长度、BM位置和树类型信息的自动选举和分布。
背景技术
因特网工程任务组(IETF)因特网草稿(I-D)draft-wijnands-bier-architecture-00(其通过参考结合于此)作为架构描述位索引显式复制(BIER),其中所有预计的多播接收器都被编码为位掩码(BM)中的位,即,每个接收器由BM中的唯一位表示。接收具有封装在报头中的位掩码的分组的路由器将基于BM设置朝接收器转发分组,遵循BM中的每一位的预先计算的树。
由于报头可携带的位数受约束以及这引起的缩放性问题,BIER支持接收器集合的概念。每个分组携带BIER集合,其中每个集合由唯一集合标识符标识。那些集合中的几个集合的使用可被理解为生成涵盖所有BIER集合中的所有接收器的单个BIER树(单个分布传输的线性扩展),或者BIER集合中的多个独立集合(那些集合中的每个集合都是独立的多播分布传输)。
一旦接收器的数量变大(即,存在许多集合),或者接收器参与许多独立BIER树(即,接收器可被指配许多集合中的许多独立位),向接收器指配唯一BM位置(BMP)就是需要自动解决方案的不平凡问题。通常的权衡是集中式(服务器)方法或分布式方法,其以附加协议复杂性为代价提供了更高的缩放性。此外,有必要确保共享集合的所有接收器必须能够支持用于分布每个集合的分组和BM长度的树类型。
发明内容
由第一网络装置执行的示范方法,第一网络装置以通信方式耦合到网络中的多个其它网络装置,其中每一个网络装置都是位转发路由器(BFR),方法包含:参与选举过程以确定指定BFR(D-BFR)。所述方法还包含:响应于确定第一网络装置被选举成D-BFR,执行D-BFR操作,包括:基于由网络中的其它BFR广告的最大局部BM长度来确定BM的选举的BM长度,其中BM的每位将对应于位转发出口路由器(BFER),并向其它BFR广告确定的选举的BM长度。
根据一个实施例,执行D-BFR操作进一步包括:基于由网络中的其它BFR广告的支持的树类型确定选举的树类型,并且向其它BFR广告确定的选举的树类型。在一个实施例中,执行D-BFR操作进一步包括:指配一个或多个BM位置(BMP),一个或多个BMP中的每个指配给不同的BFER,并且向其它BFR广告指配的一个或多个BMP。
在一个实施例中,确定选举的BM长度包括:从其它BFR中的一个或多个接收消息,每个消息包含由发送消息的BFR支持的最大BM长度;确定包含在接收的消息中的所有最大BM长度中的最小BM长度;以及响应于确定最小BM长度不比之前选举的BM长度短,将选举的BM长度设置成等于确定的最小BM长度。
在一个实施例中,确定选举的BM长度包括:从其它BFR中的一个或多个接收消息,每个消息包含由发送消息的BFR支持的最大BM长度;确定包含在接收的消息中的所有最大BM长度中的最小BM长度;以及响应于确定最小BM长度比之前选举的BM长度短,将选举的BM长度设置成等于之前选举的BM长度。
根据一个实施例,确定选举的树类型包括:从其它BFR中的一个或多个接收消息,每个消息包含由发送消息的BFR支持的一个或多个树类型的指示;确定指示为被发送消息的一个或多个BFR所支持的树类型;以及将选举的树类型设置成确定的树类型,其指示为被发送消息的一个或多个BFR支持。
在一个实施例中,指配一个或多个BMP包括:从BFER接收消息,所述消息指示对于要指配给BFER的BMP的请求;向BFER指配BMP;以及更新BMP信息以指示已经指配了BMP,使得BMP将不会被指配给另一BFER。在一个实施例中,来自BFER的所述消息进一步指示BFER偏向具体BMP。在一个实施例中,来自BFER的消息进一步指示,BFER愿意接受与BFER偏向的具体BMP不同的BMP。
附图说明
通过参考用于例证本发明实施例的以下描述和附图可最好地理解本发明。在附图中:
图1是例证根据一个实施例的支持BIER的网络的框图。
图2是例证根据一个实施例的支持BIER的网络装置的框图。
图3是例证根据一个实施例的BIER协议选举(BIER-PE)分组的框图。
图4是例证根据一个实施例的BIER前缀信息类型长度值(BIER-PI TLV)分组的框图。
图5是例证根据一个实施例的BIER协议选举BM位置(BIER-PE-BMP)分组的框图。
图6是例证根据一个实施例的用于选举BM长度的方法的流程图。
图7是例证根据一个实施例的用于选举树类型的方法的流程图。
图8是例证根据一个实施例的用于指配BMP的方法的流程图。
图9A例证了根据本发明的一些实施例的示范网络内网络装置(ND)之间的连接性以及ND的三个示范实现。
图9B例证了根据本发明的一些实施例的实现专用网络装置902的示范方式。
具体实施方式
如下描述描述了用于分配BIER信息的方法和设备。在如下描述中,阐述了众多特定细节,诸如逻辑实现、操作码、规定操作数的部件、资源分区/共享/复制实现、系统组件的类型和相互关系、以及逻辑分区/集成选择,以便提供本发明的更透彻理解。然而,本领域技术人员将认识到,没有此类特定细节也可实践本发明。在其它实例中,控制结构、门级电路以及全软件指令序列未详细示出,以免使本发明模糊不清。本领域普通技术人员用所包含的描述将能够实现适当功能性,而无需过多实验。
在说明书中提到“一个实施例”、“实施例”、“示例实施例”等指示所描述的实施例可包含具体特征、结构或特性,但每一个实施例可能不一定都包含该具体特征、结构或特性。而且,此类短语不一定是指同一实施例。另外,当结合实施例描述具体特征、结构或特性时,认为它在本领域技术人员的知识范围内以结合其它实施例(不管是否明确描述)影响这种特征、结构或特性。
带括号的文本以及具有虚线边框(例如大虚线、小虚线、点划线、以及点等)的框在本文可用于例证向本发明实施例添加附加特征的可选操作。然而,此类记号不应该被视为意味着这些是唯一选项或可选的操作,和/或具有实线边框的框在本发明的某些实施例中不是可选的。
在以下说明书和权利要求书中,可使用术语“耦合”和“连接”,连同它们的派生词。应该理解,这些术语不打算作为彼此的同义词。“耦合”用于指示两个或更多元件彼此协同操作或交互作用,它们可以或者可以不彼此直接物理接触或电接触。“连接”用于指示在彼此耦合的两个或更多元件之间建立通信。
电子装置或计算装置使用机器可读介质(也称为计算机可读介质)诸如机器可读存储介质(例如磁盘、光盘、只读存储器(ROM)、闪存装置、相变存储器)和机器可读传输介质(也称为载体)(例如电学、光学、无线电、声学或其它形式的传播信号,诸如载波、红外信号),存储和传输(在内部和/或通过网络与其它电子装置)代码(其由软件指令组成并且其有时被称为计算机程序代码或计算机程序)和/或数据。从而,电子装置(例如计算机)包含硬件和软件,诸如一个或多个处理器集合,耦合到一个或多个机器可读存储介质以存储用于在该组处理器上执行的代码和/或存储数据。比如,电子装置可包含含有代码的非易失性存储器,由于非易失性存储器可永久保存代码/数据,甚至当电子装置关闭时(当移除电源时),并且当电子装置开启时,要由那个电子装置的处理器执行的代码部分通常从较慢的非易失性存储器拷贝到那个电子装置的易失性存储器(例如动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM))。典型的电子装置还包含一个或多个物理网络接口或其集合以与其它电子装置建立网络连接(或使用传播信号发送和/或接收代码和/或数据)。本发明的实施例的一个或多个部分可使用软件、固件和/或硬件的不同组合来实现。
网络装置(ND)是以通信方式与网络上的其它电子装置(例如其它网络装置、最终用户装置)互连的电子装置。一些网络装置是“多服务网络装置”,其为多个连网功能(例如路由、桥接、交换、层2聚合、会话边界控制、服务质量、和/或订户管理)提供支持和/或为多个应用服务(例如数据、语音和视频)提供支持。
图1是例证用于支持拓扑中的BIER协议的网络100的框图。如本文使用的,拓扑指的是网络的各种网络元件(例如链路、节点等)的布置。拓扑包括一个或多个树。如本文使用的,树指的是采用这样的方式的网络元件的布置,以使得它是无循环的(即,没有开始于和结束于同一节点的路径)。在此,路径指的是耦合网络装置的链路集合。
在所例证的示例中,网络100包含以通信方式耦合到网络装置105-106的网络装置101-102。网络装置102进一步以通信方式耦合到网络装置104。网络装置103以通信方式耦合到网络装置104和107。在此示例中,网络装置102和104-106由树T1通过图1中的实线指示的链路以通信方式耦合。另外,网络装置103-104和107由树T2通过图1中的虚线指示的链路以通信方式耦合。
每一个例证的网络装置都是位转发路由器(BFR)。如本文所使用的,BFR是支持BIER协议的网络装置(即,启用BIER的网络装置)。BFR可以是位转发入口路由器(BFIR)。如本文使用的,BFIR是在朝预计接收器的下一BFR发送分组之前将BM插入/封装到分组上的入口路由器。BFR可以是位转发出口路由器(BFIR)。如本文所使用的,BFER是已经指配了BMP的出口路由器,并且其配置成接收具有其BMP集合的BIER分组。在此示例中,网络装置104是BFIR,并且网络装置105-107是BFER。
BFR可被选举成集合的指定BFR(D-BFR)和/或备份D-BFR(BD-BFR)。网络装置可充当一个或多个集合的D-BFR或BD-BFR。在例证的示例中,网络装置101已经被选举为集合S1的D-BFR,并且网络装置103已经被选举成集合S2的D-BFR。为了避免使本发明模糊不清,已经从例证中省略了BD-BFR。根据一个实施例,D-BFR配置成确定每个BM(即集合)的BM长度。在此示例中,集合S1具有3位的长度,而集合S2具有2位的长度。在整个描述中,最右边的位将被称为“第一位”,最右边的第二位将被称为“第二位”,以此类推。
根据一个实施例,D-BFR进一步配置成向每个BFER指配在BM集合内唯一的BMP。在此示例中,网络装置105-106已经被分别指配了BM集合S1的BMP 001和010。另外,网络装置107已经被指配了BM集合S2的BMP 01。从而,接收多播分组的BFR可基于BM设置确定分组的目的地。作为示例,假设网络装置104(即BFIR)需要向网络装置107(即BFER)发送分组150。在此情况下,网络装置104会将分组(S2,01)150注入到网络中。在整个描述中,BIER分组将被描述为“分组(B,C)”,其中“B”表示集合ID,而“C”表示BM。将理解到,使用由BFR协商和同意的封装协议(例如MPLS),将“B,C”封装到分组上。本领域技术人员将意识到,尽管未示出,但可包含其它信息作为分组的一部分(例如有效载荷、校验和等)。
继续以上示例,分组(S2,01)150由网络装置103接收。网络装置103确定,封装的BM的第一位被设置,并且网络装置107具有为01的BMP(即,第一位位置)。响应于此类确定,网络装置103经由树T2朝网络装置107引导分组(S2,01)150。在整个描述中,被设置成“1”的BM位指示,分组应该被转发到具有对应BMP的BFER。然而,应该理解,可使用其它约定。
作为另外示例,假设网络装置104需要向网络装置105和106发送分组151。在此类实例中,网络装置104会将分组(S1,011)151注入到网络中。分组(S1,011)151由网络装置102接收。网络装置102确定,封装的BM的第一位被设置,并且网络装置105具有为001的BMP(即,第一位位置)。响应于此类确定,网络装置102修改BM,并且经由树T1朝网络装置105引导分组。例如,网络装置102向网络装置105发送分组(S1,011)151作为分组(S1,001)151A。
网络装置102进一步确定,封装的BM的第二位被设置,并且网络装置106具有为010的BMP(即,第二位位置)。响应于此类确定,网络装置102复制分组(S1,011)151并修改其BM,并朝网络装置106引导它。例如,网络装置102向网络装置106发送分组(S1,011)151作为分组(S1,010)151B。
根据一个实施例,D-BFR配置成选举所有参与的BFR必须计算并用于发射BIER分组的树类型。D-BFR在一个实施例中基于由BFR支持的树类型和/或基于管理配置来选举树类型,如下面在另外细节中描述的。
图2是例证根据一个实施例的网络装置201的框图。根据一个实施例,网络装置201包含选举控制器210,负责执行选举算法/过程以选举D-BFR和BD-BFR。选举控制器210可实现为软件、固件、硬件或它们的任何组合。根据一个实施例,拓扑T中的给定集合S(标示为<T,S>)不为了选举目的启用,除非由含有被广告到拓扑中的集合S的第一BIER-PE分组或BIER-PI TLV触发。然而,应该理解,可使用任何其它机制,包含但不限于管理员的配置,启用<T,S>。如本文所使用的,BIER-PE分组是携带BIER的协议选举信息的协议分组单元(PPU)。例如,在开放最短路径优先版本2(OSPFv2)的情况下,BIER-PE分组是不透明链路状态广告(LSA),其在IETF请求注释(RFC)5250(通过参考结合与此)中描述。如本文所使用的,BIER-PI TLV分组是携带BFER的BIER前缀信息的PPU。例如,在OSPFv2的情况下,BIER-PITLV分组是扩展前缀不透明LSA,其在IETF I-D draft-ietf-ospf-prefix-link-attr-00(通过参考结合与此)中描述。第一BIER-PE或BIER-PI TLV可由各种事件中的任何事件触发,包含但不限于虚拟私用网(VPN)期望发起点对多点(P2MP)树,或者BMP以管理方式指配给BFER并经由BIER-PI TLV广播到区域中。
一旦启用了集合S,选举控制器210就配置成参与选举过程以选举<T,S>的D-BFR(在本文标示为D-BFR<T,S>)以及<T,S>的BD-BFR(在本文标示为BD-BFR<T,S>)。现在将描述选举算法。
选举初始化
选举控制器210生成参与<T,S>的BFR列表。要注意,网络装置201本身必须包含在列表上。列表必须仅包含由网络装置201可达的BFR,而不得包含没资格变成D-BFR的BFR(例如具有为0的<T,S>的路由器优先级的BFR)。例如,列表可包含通过发送由网络装置201接收的BIER-PE分组已经广告了它们的BIER选举信息的BFR。
图3是例证根据一个实施例的BIER-PE分组300的框图。作为BIER-PE分组300的一部分显示的信息/元素用于例证性目的,并不打算是本发明的限制。
根据一个实施例,BIER-PE分组300被实现为OSPFv2不透明LSA,其在IETF RFC5250中描述。BIER-PE分组300由参与BIER的每个BFR广告/分布,并且含有在图3中例证的集合信息块中的一个或多个。集合信息块对于发送BFR参与的每个集合都重复。BIER-PE分组300包含但不限于如下字段:
BD-BFR选举算法
现在回头参考图2,选举控制器210执行如下操作以选举BD-BFR<T,S>。选举控制器210从生成的BFR列表中移除已经将它们自己广告成D-BFR<T,S>的所有BFR。根据修剪的生成的列表上剩余的BFR,选举控制器210确定一个或多个BFR是否已经将它们自己广告成BD-BFR<T,S>。如果是,则选举控制器210选举具有<T,S>的最高路由器优先级的那个为BD-BFR<T,S>。
在广告为BD-BFR<T,S>的BFR中的两个或更多个的路由器优先级平局的情况下,具有与S“异或”的最高路由器ID(例如集合ID)(假定大尾序,右对齐的值和较短值的所有位都用0填充成较长值的长度)的BFR被选举为BD-BFR<T,S>。用于分布路由器ID的机制在本领域熟知,并且为了简洁起见,在此将不描述。
如果没有BFR已经将它们广告/宣布为<T,S>的BD-BFR,则选举控制器210选举具有<T,S>的最高路由器优先级的BFR作为BD-BFR<T,S>。在两个或更多BFR的路由器优先级平局的情况下,具有与S“异或”的最高路由器ID的BFR被选举为BD-BFR<T,S>。
D-BFR选举算法
选举控制器210执行如下操作以选举D-BFR<T,S>。选举控制器210确定作为初始化过程的一部分生成的列表上的一个或多个BFR是否已将它们自己广告为D-BFR<T,S>(例如通过发送BIER-PE分组)。如果是,则具有<T,S>的最高路由器优先级的那个被选举为D-BFR<T,S>。在两个或更多BFR的路由器优先级平局的情况下,选举具有与S“异或”的最高路由器ID的那个。如果没有BFR已经宣布它们自己为D-BFR<T,S>,则选举控制器210将新选举的BD-BFR<T,S>作为D-BFR<T,S>。
响应于确定网络装置201是(i)新选举的D-BFR<T,S>,(ii)新选举的BD-BFR<T,S>,(iii)不再是D-BFR<T,S>,或(iv)不再是BD-BFR<T,S>,选举控制器210重新执行BD-BFR选举算法和D-BFR选举算法。例如,如果网络装置201是新选举的D-BFR<T,S>,则当重新执行BD-BFR算法时,网络装置201将不再有资格进行BD-BFR<T,S>选举。除了别的之外,这将确保没有BFR将宣布它自己为BD-BFR<T,S>和D-BFR<T,S>。
选举算法的复杂性背后的原因是,在当前D-BFR<T,S>失效时,期望有序地从BD-BFR<T,S>转变到D-BFR<T,S>。通过引入滞后确保了这个有序转变:直到老的BD-BFR<T,S>接受了其新的D-BFR<T,S>责任,才能选择新的BD-BFR<T,S>。
以上过程可选举相同的BFR作为D-BFR<T,S>和BD-BFR<T,S>。例如,网络装置201可选举它自己作为D-BFR<T,S>,但由于当其它BFR接收到BIER-PE时的时机,那些其它BFR可选举网络装置201作为BD-BFR<T,S>。要进一步注意,选举的D-BFR<T,S>可能不是具有<T,S>的最高路由器优先级的BFR,BD-BFR<T,S>也不一定具有第二最高路由器优先级(再次由于当BFR接收到BIER-PE时的时机引起的)。还要注意,如果网络装置201是有资格变成D-BFR<T,S>的唯一BFR,则它会将它自己选举为D-BFR<T,S>,并且将没有用于网络的BD-BFR<T,S>。
根据一个实施例,响应于确定网络装置201被选举为D-BFR<T,S>,选举控制器210使D-BFR控制器211能够执行D-BFR责任。D-BFR控制器211可实现为软件、固件、硬件或它们的任何组合。在一个实施例中,D-BFR控制器211包含用于选举<T,S>的BM长度(本文称为BM长度<T,S>)的BM长度选择器220。为了选举BM长度<T,S>,BM长度选择器220计算由所有BFR<T,S>经由BIER-PE分组广告的所有最大BM长度的最小值。这个计算的最小值是确定的最小BM长度。
根据一个实施例,BM长度选择器220不选举比之前选举的BM长度短的新BM长度,除非<T,S>中的所有参与的BFR(具有D-BFR的可能例外)都广告短于或等于确定的最小BM长度的BM长度。这个要求确保,没有BFR将从BIER网络中被排除,因为没有足够的BMP。
然而,如果确定所得到的树被分区,并且不是具有指配的BMP的所有BFR都能被到达,则BM长度选择器220可选举较短的BM长度,除非在选举中包含具有较短BM长度的BFR。换言之,如果需要具有较短BM长度的BFR(即,引起确定的最小BM长度短于之前选举的BM长度的BFR)以便所有BFR都可达,则BM长度选择器220可选举等于较短BM长度的新BM长度。在一个实施例中,响应于确定新选举的BM长度短于之前选举的BM长度,BM长度选择器220使BMP指配器221重新指配BMP。在一个实施例中,BM长度选择器220然后使网络装置201在BIER-PE-BMP分组中广告新选举的BM长度,如下面用更多细节描述的。
根据一个实施例,D-BFR控制器211进一步包含用于选择要求BFR用于发送BIER分组的树类型的树选择器222。根据一个实施例,每个参与的BFR都通过发送BIER-PR分组而广告它支持的树类型。在一个实施例中,要求每个BFR至少支持最短路径优先(SPF)树类型和/或最短生成树(SST)类型。此外,每个BFR都可支持一个或多个可选的树类型。响应于接收到此类广告,树选择器222在存储装置(例如网络装置201可访问的存储装置)中存储或引起存储有关支持的树类型的信息。根据一个实施例,树选择器222将选举的树类型设置成所有BFR都支持的树类型。在一个实施例中,响应于确定存在所有BFR都能支持的多个树类型,树选择器222将选举的树类型设置成所有BFR都支持的默认树类型(例如以管理方式配置的树类型)。在一个实施例中,树选择器222将选举的树类型设置成以管理方式配置的树类型,并且排除不支持选举的树类型的BFR。例如,在此实施例中,响应于确定并不是所有BFR都支持可选的树类型,树选择器222可仍然选择可选的树类型,即便这个选择将导致一些BFR从BIER网络中排除。在此描述的树类型选举算法用于例证性目的。应该理解到,树选择器222可基于管理性配置和/或有关BFR支持哪些树类型的信息而选举任何树类型。根据一个实施例,树选择器222然后使网络装置201在BIER-PE-BMP分组中广告选举的树类型,如下面用更多细节所描述的。
在一个实施例中,D-BFR控制器211进一步包含配置成向BFER<T,S>指配BMP的BMP指配器221。BMP指配可由各种事件中的任何事件发起,包含但不限于BFER通过发送BIER-PITLV分组对于BMP的请求。
图4是例证根据一个实施例的BIER-PI TLV分组400的框图。作为BIER-PI TLV分组400的一部分显示的信息/元素用于例证性目的,并不打算成为本发明的限制。
根据一个实施例,BIER-PI TLV分组400被实现为OSPFv2扩展前缀不透明LSA,其在IETF I-D draft-ietf-ospf-prefix-link-attr-00中描述。通过参与的BFER广告/分布BIER-PE-BMP分组400。BIER-PI TLV分组400包含但不限于如下字段:
现在回头参考图2,在一个实施例中,BMP指配器221配置成保持BMP已经被指配的BMP信息(例如含有信息的BMP数据库)。BMP指配器221确定接收的BIER-PI TLV是否指示优选的BMP(例如通过检查是否设置了接收的BIER-PI TLV中的字段“A”)。如果是,则BMP指配器221确定BMP信息是否指示优选的BMP可用于指配(即,之前未指配给BFER)。响应于确定优选BMP可用,BMP指配器221向发出请求的BFER指配优选BMP。如果优选BMP不可用,则BMP指配器221确定发出请求的BFR是否愿意接受与优选BMP不同的BMP(例如通过检查是否设置了接收的BIER-PI TLV中的字段“R”)。如果是,则BMP指配器221向发出请求的BFER指配与优选BMP不同的可用的(即未指配的)BMP。如果发出请求的BFER指示优选BMP,并且不愿意接受不同的可用的(即,未指配的)BMP(例如,字段“A”被设置,但字段“R”未被设置),则BMP指配器221向发出请求的BFER返回指示BMP冲突的错误。
根据一个实施例,响应于确定BIER-PI TLV不指示优选BMP,BMP指配器221简单地向发出请求的BFER指配例如来自BMP数据库的任何可用的BMP。在所有情况下,如果BMP信息指示没有可用的BMP,则BMP指配器221向发出请求的BFER返回错误,指示没有可用的BMP。BMP指配器221在每个BMP指配之后更新BMP信息,以便避免向多个BFER指配相同的BMP。根据一个实施例,BMP指配器221然后使网络装置201在BIER-PE-BMP分组中广告指配的BMP。
响应于选举新的BM长度、选举树类型和/或指配一个或多个BMP,网络装置201通过发送BIER-PE-BMP分组而广告信息。
图5是例证根据一个实施例的BIER-PE-BMP分组500的框图。作为BIER-PE-BMP分组500的一部分显示的信息/元素用于例证性目的,并不打算成为本发明的限制。
根据一个实施例,BIER-PE-BMP分组500被实现为OSPFv2不透明LSA,其在IETF RFC5250中描述。BIER-PE-BMP分组500由选举的D-BFR<T,S>广告/分布,并且含有在图5中例证的BMP指配块中的一个或多个。对于每个BMP指配,重复BMP指配块。BIER-PE BMP分组500包含但不限于如下字段:
回头参考图2,根据一个实施例,响应于确定网络装置201被选举为BD-BFR<T,S>,选举控制器210使BD-BFR控制器212能够执行BD-BFR责任。BD-BFR控制器212可实现为软件、固件、硬件或它们的任何组合。在一个实施例中,BD-BFR控制器212配置成在其广告中镜像选举的D-BFR<T,S>的确切状态(并且在每个接收的广告上),并保持其内部状态以用作所有D-BFR<T,S>过程中的起始点,假如网络装置201失去到D-BFR<T,S>的连接性。
当如下情况发生时,期望通过广告其BIER-PE来参与集合<T,S>的新BFR必须被用于<T,S>的它们的树类型计算中的所有成员忽视:
• 其最大支持的BM长度短于选举的BM长度,
• 它不能够计算选举的树类型,或者
• 它不能够分配(至少临时)有效封装标签以支持<T,S>上的BIER业务转发。
从而,如果已经选举了D-BFR,则不满足<T,S>的以上条件的路由器不应该广告其BIER-PE。然而,路由器可广告此类BIER-PE以允许D-BFR选举较短BM,以防止对生成所有接收器的树进行分区。
每个BFR<T,S>在其BIER-PI TLV中都携带对于BMP的请求。在BFR<T,S>也是BFER<T,S>的情况下,BIER-PI TLV还包含当转发BIER业务时为集合S的封装指配的标签。由于优化、资源约束或其它判据,路由器有可能不能够在<T,S>指配此类标签。如果是这种情况,则路由器不必为<T,S>广告其BIER-PI TLV。计算<T,S>的树类型的所有路由器因此将从计算中排除它。如果路由器广告<T,S>的标签,则计算<T,S>的树类型的所有路由器都必须为<T,S>重新计算它们的位索引转发表(BIFT)。
作为特殊考虑的一点,在此应该观察到,如果确定没有业务将通过路由器转发并且因此可节省标签空间,则该路由器可以故意不广告标签或者为<T,S>清除其BIER-PITLV。
图6是例证用于选举BM长度的方法600的流程图。例如,方法600可由BM长度选择器220执行。方法600可用软件、固件、硬件或它们的任何组合来实现。这个和其它流程图中的操作将参考其它附图的示范实施例进行描述。然而,应该理解,流程图的操作可由本发明的除了参考其它附图论述的实施例以外的实施例执行,并且参考这些其它附图论述的本发明实施例可执行与参考流程图论述的操作不同的操作。
现在参考图6。在框605,BM长度选择器接收由BFR(例如在BIER-PE分组中)广告的最大BM长度。在框610,BM长度选择器将接收的最大BM长度存储在存储装置中。在框615,BM长度选择器接收选举新BM长度的触发。触发例如可以是接收到BIER-PE分组、由管理员设置的请求等。在框620,BM长度选择器确定在所有接收的最大BM长度中间的的最小BM长度。
在框625,BM长度选择器确定所确定的最小BM长度是否短于之前选举的BM长度(即,当前BM长度)。如果否,则BM长度选择器转变到框635,并将新选举的BM长度设置成所确定的最小BM长度。在框645,BM长度选择器广告新选举的BM长度(例如通过发送BIER-PE-BMP分组)。
现在返回到框625。响应于确定所确定的最小BM长度比之前选举的BM长度短,BM长度选择器转变到框630。在框630,BM长度选择器确定是否所有接收的最大BM长度都等于或短于所确定的最小BM长度。如果是,则BM长度选择器转变到框635。然而,如果并不是所有接收的最大BM长度都等于或短于所确定的最小BM长度,则BM长度选择器转变到框640,并将新选举的BM长度设置成之前选举的BM长度(即,保留当前BM长度)。要注意,如果BM长度选择器确定所得到的树被分区,并且并不是具有指配的BMP的所有BFER都可到达,则BM长度选择器还可选举新的BM长度,而不管它是否短于之前选举的BM长度,除非在选举中包含具有较短BM长度的BFR。例如,响应于确定如果在选举中不包含具有较短最大BM长度的BFR,则并不是具有指配的BMP的所有BFER都可到达,在一个实施例中,BM长度选择器将在选举中包含具有较短最大BM长度的BFR,并将新选举的BM长度设置成较短的最大BM长度(例如通过执行框635的操作)。这可在执行框620的操作以确定新的最小BM长度之前或之后进行。
图7是例证用于选举树类型的方法700的流程图。例如,方法700可由树选择器222执行。方法700可用软件、固件、硬件或它们的任何组合来实现。现在参考图7。在框705,树选择器接收BFR支持哪些树类型的信息(例如,作为接收的BIER-PE分组的一部分)。在框710,树选择器将支持的树类型的接收信息存储在存储装置中。在框715,树选择器接收选举树类型的触发。触发例如可以是BIER-PE分组的接收、由管理员发起的请求等。
在框720,树选择器将选举的树类型设置成所有BFR都支持的树类型。在框725,树选择器响应于确定存在所有BFR都能支持的多个树类型,将选举的树类型设置成所有BFR都支持的以管理方式配置的树类型。在框730,树选择器将选举的树类型设置成以管理方式配置的树类型,并且排除不支持选举的树类型的BFR。例如可响应于树选择器确定并不是所有BFR都支持可选的树类型而执行框730,但树选择器绝不需要选择该树类型,即便它将导致一些BFR从BIER网络中排除。在框735,树类型选择器广告选举的树类型(例如通过发送BIER-PE-BMP分组)。
图8是例证用于指配BMP的方法800的流程图。例如,方法800可由BMP指配器221执行。方法800可用软件、固件、硬件或它们的任何组合来实现。现在参考图8。在框805,BMP指配器接收指配BMP的触发。触发例如可以是接收到BIER-PE分组、BIER-PI TLV分组、由管理员发起的请求等。
在框810,BMP指配器向BFER指配未指配的(即可用的)BMP。指配的BMP取决于在其BIER-PI TLV中指示的发出请求的BFER是否是优选BMP,在优选BMP不可用的情况下其接受另一BMP的意愿,等等。例如,如果发出请求的BFER不指示优选BMP,则BMP指配器选择任何可用的/未指配的BMP,并将它指配给BFER。如果发出请求的BFER指示优选BMP,并且BMP是可用的,则BMP指配器将优选BMP指配给发出请求的BFER。然而,如果优选BMP不可用,并且发出请求的BFER指示愿意接受另一BMP,则BMP指配器向BFER指配另一可用的BMP。另一方面,如果优选BMP不可用,并且发出请求的BFER指示不愿意接受另一BMP,则BMP指配器向BFER返回指示冲突的错误状况。在所有情况下,如果没有可用的BMP,则BMP指配器向BFER返回错误,指示没有可用的BMP。
在框815,BMP指配器更新BMP信息(例如存储在数据库中)以指示已经指配了BMP,使得不会向另一BFER指配同一BMP。在框820,BMP指配器广告指配的BMP(例如通过发送BIER-PE-BMP分组)。
图9A例证了根据本发明的一些实施例的示范网络内的网络装置(ND)之间的连接性以及ND的三个示范实现。图9A示出了ND 900A-H和在A-B、B-C、C-D、D-E、E-F、F-G和A-G之间以及在H与A、C、D和G中每个之间通过线路的连接性。这些ND是物理装置,并且这些ND之间的连接性可以是无线的或有线的(经常称为链路)。从ND 900A、E和F延伸的附加线路例证,这些ND充当网络的入口点和出口点(并且从而,这些ND有时被称为边缘ND;而其它ND可被称为核心ND)。
图9A中的两个示范ND实现是:1)使用定制专用集成电路(ASIC)和专有操作系统(OS)的专用网络装置902;以及2)使用公共现货(COTS)处理器和标准OS的通用网络装置904。
专用网络装置902包含连网硬件910,连网硬件包括计算资源(912)(其通常包含一个或多个处理器的集合)、转发资源914(其通常包含一个或多个ASIC和/或网络处理器)和物理网络接口(NI)916(有时称为物理端口)以及其中存储有连网软件920的非暂态机器可读存储介质918。物理NI是ND中的硬件,通过其进行网络连接(例如无线地通过无线网络接口控制器(WNIC)或通过插入线缆到连接到网络接口控制器(NIC)的物理端口),诸如由ND900A-H之间的连接性所示出的那些。在操作期间,连网软件920可由连网硬件910执行以例示一个或多个连网软件实例922的集合。每一个连网软件实例922以及连网硬件910的执行该网络软件实例的部分(如果它是专用于该连网软件实例和/或由那个连网软件实例在时间上与连网软件实例922的其它部分共享的硬件时间片的硬件的话)形成独立的虚拟网络元件930A-R。每一个虚拟网络元件(VNE)930A-R包含控制通信和配置模块932A-R(有时称为本地控制模块或控制通信模块)以及转发表934A-R,使得给定虚拟网络元件(例如930A)包含控制通信和配置模块(例如932A)、一个或多个转发表的集合(例如934A)以及连网硬件910执行虚拟网络元件(例如930A)的部分。
软件920可包含代码,所述代码由连网硬件910执行,使连网硬件910作为部分连网软件实例922执行本发明的一个或多个实施例的操作。
专用网络装置902经常在物理上和/或逻辑上被视为包含:1)ND控制平面924(有时称为控制平面),包括执行控制通信和配置模块932A-R的计算资源912;以及2)ND转发平面926(有时称为转发平面、数据平面或媒体平面),包括利用转发表934A-R和物理NI 916的转发资源914。作为示例,其中ND是路由器(或正在实现路由功能性),ND控制平面924(执行控制通信和配置模块932A-R的计算资源912)通常负责参与控制如何路由数据(例如分组)(例如数据的下一跳和该数据的外出物理NI)并将该路由信息存储在转发表934A-R中,并且ND转发平面926负责在物理NI 916上接收该数据,并基于转发表934A-R将该数据转发出物理NI 916中的适当NI。
图9B例证了根据本发明的一些实施例的实现专用网络装置902的示范方式。图9B示出了包含卡938(通常是热插拔)的专用网络装置。虽然在一些实施例中卡938具有两种类型(操作为ND转发平面926的一个或多个(有时称为线路卡)以及操作以实现ND控制平面924的一个或多个(有时称为控制卡)),但备选实施例可将功能性组合在单个卡上和/或包含附加卡类型(例如一个附加卡类型被称为服务卡、资源卡或多应用卡)。服务卡可提供专业化处理(例如,层4到层7服务(例如防火墙、因特网协议安全性(IPsec)、安全套接层(SSL)/传输层安全性(TLS)、入侵检测系统(IDS)、对等(P2P)、IP语音(VoIP)会话边界控制器、移动无线网关(网关通用分组无线电服务(GPRS)支持节点(GGSN)、演进的分组核心(EPC)网关))。作为示例,服务卡可用于终止IPsec隧道,并执行伴随的认证和加密算法。这些卡通过例证为背板936的一个或多个互连机制(例如耦合线路卡的第一全网格,耦合所有卡的第二全网格)耦合在一起。
返回图9A,通用网络装置904包含硬件940,硬件940包括一个或多个处理器942的集合(其经常是COTS处理器)和网络接口控制器944(NIC;也称为网络接口卡)(其包含物理NI 946)以及其中存储有软件950的非暂态机器可读存储介质948。在操作期间,处理器942执行软件950以例示监管程序954(有时称为虚拟机监测程序(VMM)以及由监管程序954运行的一个或多个虚拟机962A-R,它们被统称为软件实例952。虚拟机是物理机的软件实现,其运行程序就好像程序正在物理非虚拟化机器上执行一样;并且应用一般不知道它们正运行在虚拟机上,与运行在“裸机金属”主机电子装置上相对,尽管一些系统提供了准虚拟化,其为了优化目的允许操作系统或应用知晓虚拟化的存在。每一个虚拟机962A-R以及硬件940的执行该虚拟机的部分(如果它是专用于该虚拟机和/或由该虚拟机在时间上与虚拟机962A-R其它部分共享的硬件时间片的硬件的话)形成独立的虚拟网络元件960A-R。
虚拟网络元件960A-R执行与虚拟网络元件930A-R类似的功能性。比如,监管程序954可呈现虚拟操作平台,它对虚拟机962A看起来就像是连网硬件910,并且虚拟机962A可用于实现类似于控制通信和配置模块932A和转发表934A的功能性(硬件940的这个虚拟化有时被称为网络功能虚拟化(NFV))。从而,NFV可用于将许多网络设备类型整合在工业标准高容量服务器硬件、物理交换机和物理存储装置上,其可位于数据中心、ND和客户住宅设备(CPE)中。然而,本发明的不同实施例可用不同方式实现虚拟机962A-R中的一个或多个。例如,虽然本发明的实施例用对应于一个VNE 960A-R的每个虚拟机962A-R例证,但备选实施例可以在更细粒度级实现这个对应关系(例如,线路卡虚拟机虚拟化线路卡,控制卡虚拟机虚拟化控制卡等);应该理解到,本文参考虚拟机与VNE的对应关系描述的技术还适应于使用此类更细粒度级的实施例。
在某些实施例中,监管程序954包含提供与物理以太网交换机类似转发服务的虚拟交换机。确切地说,这个虚拟交换机在虚拟机与NIC 944之间以及可选地在虚拟机962A-R之间转发业务;此外,这个虚拟交换机可加强策略上不准许彼此通信(例如通过尊重虚拟局域网(VLAN))的VNE 960A-R之间的网络隔离。
软件950可包含代码,所述代码由处理器942执行,使处理器942作为部分虚拟机962A-R执行本发明的一个或多个实施例的操作。
图9A中的第三示范ND实现是混合网络装置906,其在单个ND中或ND内的单个卡中既包含定制ASCI/专有OS又包含COTS处理器/标准OS。在此类混合网络装置的某些实施例中,平台VM(即,实现专用网络装置902功能性的VM)可提供在混合网络装置906中存在的连网硬件的准虚拟化。
不管ND的以上示范实现如何,当考虑由ND实现的多个NVE中的单个NVE时(例如其中仅一个VNE是给定虚拟网络的一部分),或者其中当前仅单个VNE由ND实现时,简写术语网络元件(NE)有时用于指代该VNE。还有,在所有以上示范实现中,每个VNE(例如VNE 930A-R、VNE 960A-R以及混合网络装置906中的那些)在物理NI(例如916、946)上接收数据,并将该数据转发出物理NI(例如916、946)中的适当NI。例如,实现IP路由器功能性的VNE在IP分组中的一些IP报头信息的基础上转发IP分组;其中IP报头信息包含源IP地址、目的地IP地址、源端口、目的地端口(其中“源端口”和“目的地端口”在本文指的是协议端口,与ND的物理端口相对)、传输协议(例如用户数据报协议(UDP)、传输控制协议(TCP)、以及差分服务(DSCP)值。
网络接口(NI)可以是物理的或虚拟的;并且在IP上下文中,接口地址是指配给NI的IP地址,如果它是物理NI或虚拟NI的话。虚拟NI可与物理NI、另一虚拟接口关联,或者代表它自己(例如,回送接口、点对点协议接口)。NI(物理或虚拟)可被编号(具有IP地址的NI)或不编号(没有IP地址的NI)。回送接口(及其回送地址)是经常用于管理目的的NE/NVE(物理或虚拟)的特定类型虚拟NI(和IP地址);其中此类IP地址被称为节点回送地址。指配给ND的NI的IP地址被称为那个ND的IP地址;在更大粒度级,为指配给在ND上实现的NE/NVE的NI指配的IP地址可被称为那个NE/NVE的IP地址。
已经在计算机存储器内的数据位上的事务的算法和符号表示方面,给出了之前详细描述的一些部分。这些算法描述和表示是数据处理领域的技术人员用于最有效地将他们工作的实质传达给本领域其它技术人员所用的方式。算法在此并且一般被视为导致期望结果的事务的前后一致序列。事务是需要物理量的物理操纵的事务。通常,不过不是必需的,这些量采取能够被存储、转移、组合、比较以及以其它方式操控的电信号或磁信号的形式。已经证明方便的是,有时主要是出于常见用法的原因,把这些信号称为位、值、元素、符号、字符、项、数字等等。
然而,应该牢记的是,所有这些以及类似的术语都与适当的物理量关联,并且仅仅是应用于这些量的方便标签。除非特别声明,否则根据以上论述显然的是,要认识到,在说明书通篇,利用诸如“处理”或“计算”或“算出”或“确定”或“显示”等术语的论述指的是计算机系统或类似电子计算装置的动作和过程,其将计算机系统的寄存器和存储器内表示为物理(电子)量的数据操控并变换成计算机系统存储器或寄存器或其它此类信息存储、发送或显示装置内类似表示为物理量的其它数据。
本文呈现的算法和显示不是固有地涉及任何具体计算机或其它设备。按照本文的教导,各种通用系统可与程序一起使用,或者它可以证明是便于构造更专业的设备以执行所需的方法事务。各种各样的这些系统的所需结构根据以上描述将显而易见。此外,本发明的实施例未参考任何具体编程语言进行描述。将认识到,各种编程语言都可用于实现本文所述的本发明实施例的教导。
在前面的说明书中,已经参考其特定示范实施例描述了本发明的实施例。将显然的是,在不脱离如下权利要求书中所阐述的本发明的更广精神和范围的前提下,可对其进行各种修改。说明书和附图相应地被视为例证性意义,而非限制性意义。
在整个描述过程中,已经通过流程图给出了本发明的实施例。将认识到,在这些流程图中描述的事务和事务次序仅打算用于例证性目的,并不打算作为本发明的限制。本领域普通技术人员将意识到,在不脱离如下权利要求书中所阐述的本发明的更广泛精神和范围的前提下可对流程图进行改变。
Claims (27)
1.一种在第一网络装置(101)中的方法,所述第一网络装置以通信方式耦合到网络中的多个其它网络装置(102-107),其中每一个所述网络装置是位转发路由器BFR,所述方法包括:
参与选举过程以确定指定BFR即D-BFR;以及
响应于确定所述第一网络装置被选举成所述D-BFR(101),执行D-BFR操作,包括:
基于由所述网络中的其它BFR(102-107)广告的最大局部位掩码BM长度来确定BM的选举的BM长度,其中所述BM的每位将对应于位转发出口路由器BFER(105-107);以及
向所述其它BFR广告确定的选举的BM长度。
2.如权利要求1所述的方法,其中执行D-BFR操作进一步包括:
基于由所述网络中的其它BFR广告的支持的树类型来确定选举的树类型;以及
向所述其它BFR广告确定的选举的树类型。
3.如权利要求1所述的方法,其中执行D-BFR操作进一步包括:
指配一个或多个BM位置BMP,所述一个或多个BMP的每个指配给不同的BFER;以及
向所述其它BFR广告指配的一个或多个BMP。
4.如权利要求1所述的方法,其中确定所述选举的BM长度包括:
从所述其它BFR中的一个或多个接收消息,每个消息包含由发送所述消息的BFR支持的最大BM长度;
确定包含在接收的消息中的所有所述最大BM长度的最小BM长度;以及
响应于确定所述最小BM长度不比之前选举的BM长度短,将所述选举的BM长度设置成等于确定的最小BM长度。
5.如权利要求1所述的方法,其中确定所述选举的BM长度包括:
从所述其它BFR中的一个或多个接收消息,每个消息包含由发送所述消息的BFR支持的最大BM长度;
确定包含在接收的消息中的所有所述最大BM长度的最小BM长度;以及
响应于确定所述最小BM长度比之前选举的BM长度短,将所述选举的BM长度设置成等于所述之前选举的BM长度。
6.如权利要求2所述的方法,其中确定所述选举的树类型包括:
从所述其它BFR中的一个或多个接收消息,每个消息包含由发送所述消息的BFR支持的一个或多个树类型的指示;
确定指示为由发送消息的一个或多个BFR支持的树类型;以及
将所述选举的树类型设置成确定的指示为由发送消息的一个或多个BFR支持的树类型。
7.如权利要求3所述的方法,其中指配一个或多个BMP包括:
从BFER接收消息,所述消息指示对于要指配给所述BFER的BMP的请求;
向所述BFER指配BMP;以及
更新BMP信息,以指示已经指配了所述BMP,使得所述BMP不会被指配给另一BFER。
8.如权利要求7所述的方法,其中来自所述BFER的所述消息进一步指示所述BFER偏向的具体BMP。
9.如权利要求8所述的方法,其中来自所述BFER的所述消息进一步指示,所述BFER愿意接受与所述BFER偏向的所述具体BMP不同的BMP。
10.一种第一网络装置(101),所述第一网络装置以通信方式耦合到网络中的多个其它网络装置(102-107),其中每一个所述网络装置是位转发路由器BFR,所述第一网络装置包括:
一个或多个处理器的集合;以及
非暂态机器可读存储介质,所述非暂态机器可读存储介质含有代码,所述代码当由所述一个或多个处理器的集合执行时使所述第一网络装置:
参与选举过程以确定指定BFR即D-BFR;以及
响应于确定所述第一网络装置被选举成所述D-BFR,执行D-BFR操作,包括:
基于由所述网络中的其它BFR(102-107)广告的最大局部位掩码BM长度来确定BM的选举的BM长度,其中所述BM的每位将对应于位转发出口路由器BFER(105-107);以及
向所述其它BFR广告确定的选举的BM长度。
11.如权利要求10所述的第一网络装置,其中执行D-BFR操作进一步包括所述第一网络装置:
基于由所述网络中的其它BFR广告的支持的树类型来确定选举的树类型;以及
向所述其它BFR广告确定的选举的树类型。
12.如权利要求10所述的第一网络装置,其中执行D-BFR操作进一步包括所述第一网络装置:
指配一个或多个BM位置BMP,所述一个或多个BMP的每个指配给不同的BFER;以及
向所述其它BFR广告指配的一个或多个BMP。
13.如权利要求10所述的第一网络装置,其中确定所述选举的BM长度包括所述第一网络装置:
从所述其它BFR中的一个或多个接收消息,每个消息包含由发送所述消息的BFR支持的最大BM长度;
确定包含在接收的消息中的所有所述最大BM长度的最小BM长度;以及
响应于确定所述最小BM长度不比之前选举的BM长度短,将所述选举的BM长度设置成等于确定的最小BM长度。
14.如权利要求10所述的第一网络装置,其中确定所述选举的BM长度包括所述第一网络装置:
从所述其它BFR中的一个或多个接收消息,每个消息包含由发送所述消息的BFR支持的最大BM长度;
确定包含在接收的消息中的所有所述最大BM长度的最小BM长度;以及
响应于确定所述最小BM长度比之前选举的BM长度短,将所述选举的BM长度设置成等于所述之前选举的BM长度。
15.如权利要求11所述的第一网络装置,其中确定所述选举的树类型包括所述第一网络装置:
从所述其它BFR中的一个或多个接收消息,每个消息包含由发送所述消息的BFR支持的一个或多个树类型的指示;
确定指示为由发送消息的一个或多个BFR支持的树类型;以及
将所述选举的树类型设置成确定的指示为由发送消息的一个或多个BFR支持的树类型。
16.如权利要求12所述的第一网络装置,其中指配一个或多个BMP包括所述第一网络装置:
从BFER接收消息,所述消息指示对于要指配给所述BFER的BMP的请求;
向所述BFER指配BMP;以及
更新BMP信息以指示已经指配了所述BMP,使得所述BMP不会被指配给另一BFER。
17.如权利要求16所述的第一网络装置,其中来自所述BFER的所述消息进一步指示所述BFER偏向的具体BMP。
18.如权利要求17所述的第一网络装置,其中来自所述BFER的所述消息进一步指示,所述BFER愿意接受与所述BFER偏向的所述BMP不同的BMP。
19.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质中存储有计算机代码,所述代码当由第一网络装置的处理器执行时使所述第一网络装置执行操作,所述第一网络装置以通信方式耦合到网络中的多个其它网络装置(102-107),其中每一个所述网络装置是位转发路由器BFR,所述操作包括:
参与选举过程以确定指定BFR即D-BFR;以及
响应于确定所述第一网络装置被选举成所述D-BFR(101),执行D-BFR操作,包括:
基于由所述网络中的其它BFR(102-107)广告的最大局部位掩码BM长度来确定BM的选举的BM长度,其中所述BM的每位将对应于位转发出口路由器BFER(105-107);以及
向所述其它BFR广告确定的选举的BM长度。
20.如权利要求19所述的非暂态计算机可读存储介质,其中执行D-BFR操作进一步包括:
基于由所述网络中的其它BFR广告的支持的树类型来确定选举的树类型;以及
向所述其它BFR广告确定的选举的树类型。
21.如权利要求19所述的非暂态计算机可读存储介质,其中执行D-BFR操作进一步包括:
指配一个或多个BM位置BMP,所述一个或多个BMP的每个指配给不同的BFER;以及
向所述其它BFR广告指配的一个或多个BMP。
22.如权利要求19所述的非暂态计算机可读存储介质,其中确定所述选举的BM长度包括:
从所述其它BFR中的一个或多个接收消息,每个消息包含由发送所述消息的BFR支持的最大BM长度;
确定包含在接收的消息中的所有所述最大BM长度的最小BM长度;以及
响应于确定所述最小BM长度不比之前选举的BM长度短,将所述选举的BM长度设置成等于确定的最小BM长度。
23.如权利要求19所述的非暂态计算机可读存储介质,其中确定所述选举的BM长度包括:
从所述其它BFR中的一个或多个接收消息,每个消息包含由发送所述消息的BFR支持的最大BM长度;
确定包含在接收的消息中的所有所述最大BM长度的最小BM长度;以及
响应于确定所述最小BM长度比之前选举的BM长度短,将所述选举的BM长度设置成等于所述之前选举的BM长度。
24.如权利要求20所述的非暂态计算机可读存储介质,其中确定所述选举的树类型包括:
从所述其它BFR中的一个或多个接收消息,每个消息包含由发送所述消息的BFR支持的一个或多个树类型的指示;
确定指示为由发送消息的一个或多个BFR支持的树类型;以及
将所述选举的树类型设置成确定的指示为由发送消息的一个或多个BFR支持的树类型。
25.如权利要求21所述的非暂态计算机可读存储介质,其中指配一个或多个BMP包括:
从BFER接收消息,所述消息指示对于要指配给所述BFER的BMP的请求;
向所述BFER指配BMP;以及
更新BMP信息以指示已经指配了所述BMP,使得所述BMP不会被指配给另一BFER。
26.如权利要求25所述的非暂态计算机可读存储介质,其中来自所述BFER的所述消息进一步指示所述BFER偏向的具体BMP。
27.如权利要求26所述的非暂态计算机可读存储介质,其中来自所述BFER的所述消息进一步指示,所述BFER愿意接受与所述BFER偏向的所述具体BMP不同的BMP。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462053067P | 2014-09-19 | 2014-09-19 | |
US62/053067 | 2014-09-19 | ||
US14/579,575 US9749220B2 (en) | 2014-09-19 | 2014-12-22 | Automated determination of tree attributes and assignment of receiver identifiers by distributed election in multicast architectures relying on packets identifying intended receivers |
US14/579575 | 2014-12-22 | ||
PCT/IB2015/057139 WO2016042505A2 (en) | 2014-09-19 | 2015-09-16 | Automated determination of tree attributes and assignment of receiver identifiers by distributed election in multicast architectures relying on packets identifying intended receivers |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107078966A CN107078966A (zh) | 2017-08-18 |
CN107078966B true CN107078966B (zh) | 2020-06-26 |
Family
ID=55526839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580063081.2A Expired - Fee Related CN107078966B (zh) | 2014-09-19 | 2015-09-16 | 用于指配接收器标识符和自动确定树属性的方法和装置 |
Country Status (6)
Country | Link |
---|---|
US (2) | US9749220B2 (zh) |
EP (1) | EP3195538B1 (zh) |
JP (1) | JP6479169B2 (zh) |
CN (1) | CN107078966B (zh) |
PH (1) | PH12017500411A1 (zh) |
WO (1) | WO2016042505A2 (zh) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10003494B2 (en) * | 2013-09-17 | 2018-06-19 | Cisco Technology, Inc. | Per-prefix LFA FRR with bit indexed explicit replication |
US10218524B2 (en) | 2013-09-17 | 2019-02-26 | Cisco Technology, Inc. | Bit indexed explicit replication for layer 2 networking |
US10461946B2 (en) | 2013-09-17 | 2019-10-29 | Cisco Technology, Inc. | Overlay signaling for bit indexed explicit replication |
US9806897B2 (en) | 2013-09-17 | 2017-10-31 | Cisco Technology, Inc. | Bit indexed explicit replication forwarding optimization |
US9853822B2 (en) * | 2013-09-17 | 2017-12-26 | Cisco Technology, Inc. | Bit indexed explicit replication |
US11451474B2 (en) | 2013-09-17 | 2022-09-20 | Cisco Technology, Inc. | Equal cost multi-path with bit indexed explicit replication |
US9832031B2 (en) * | 2014-10-24 | 2017-11-28 | Futurewei Technologies, Inc. | Bit index explicit replication forwarding using replication cache |
US9742575B2 (en) * | 2014-11-04 | 2017-08-22 | Telefonaktiebolaget L M Ericsson (Publ) | Explicit list encoding of sparse multicast group membership information with Bit Index Explicit Replication (BIER) |
US10153967B2 (en) | 2014-11-06 | 2018-12-11 | Juniper Networks, Inc. | Deterministic and optimized bit index explicit replication (BIER) forwarding |
US10033641B2 (en) * | 2014-11-06 | 2018-07-24 | Juniper Networks, Inc. | Deterministic and optimized bit index explicit replication (BIER) forwarding |
CN105871565B (zh) * | 2015-01-20 | 2019-11-29 | 华为技术有限公司 | 用于组播转发的方法及装置 |
US9906378B2 (en) | 2015-01-27 | 2018-02-27 | Cisco Technology, Inc. | Capability aware routing |
US10341221B2 (en) | 2015-02-26 | 2019-07-02 | Cisco Technology, Inc. | Traffic engineering for bit indexed explicit replication |
CN106572023B (zh) * | 2015-10-12 | 2020-08-11 | 中兴通讯股份有限公司 | 一种实现比特位索引显示复制的方法及比特位转发路由器 |
US10135756B2 (en) | 2016-08-30 | 2018-11-20 | Cisco Technology, Inc. | Transparent and efficient multi-destination TCP communications based on bit indexed explicit replication |
US10630743B2 (en) | 2016-09-23 | 2020-04-21 | Cisco Technology, Inc. | Unicast media replication fabric using bit indexed explicit replication |
CN107968750B (zh) * | 2016-10-20 | 2021-06-15 | 中兴通讯股份有限公司 | 报文传输方法、装置及节点 |
US10637675B2 (en) | 2016-11-09 | 2020-04-28 | Cisco Technology, Inc. | Area-specific broadcasting using bit indexed explicit replication |
US10447496B2 (en) | 2017-03-30 | 2019-10-15 | Cisco Technology, Inc. | Multicast traffic steering using tree identity in bit indexed explicit replication (BIER) |
US10164794B2 (en) | 2017-04-28 | 2018-12-25 | Cisco Technology, Inc. | Bridging of non-capable subnetworks in bit indexed explicit replication |
CN108989208B (zh) * | 2017-05-31 | 2021-08-10 | 中兴通讯股份有限公司 | 一种标识分配方法和装置 |
CN109802914B (zh) * | 2017-11-16 | 2022-02-18 | 中兴通讯股份有限公司 | 一种bsl的确定方法、bier-te控制器和计算机存储介质 |
CN110460522B (zh) | 2018-05-08 | 2021-11-19 | 华为技术有限公司 | 组播数据传输方法、相关装置及系统 |
WO2019214589A1 (zh) * | 2018-05-08 | 2019-11-14 | 华为技术有限公司 | 组播数据传输方法、相关装置及系统 |
US11082337B2 (en) | 2019-02-15 | 2021-08-03 | Juniper Networks, Inc. | Support for multiple virtual networks over an underlay network topology |
US20210367883A1 (en) * | 2020-05-22 | 2021-11-25 | Juniper Networks, Inc. | Bitmask route target in targeted distribution of information using a routing protocol |
EP3917093A1 (en) * | 2020-05-30 | 2021-12-01 | Huawei Technologies Co., Ltd. | Bierv6 packet forwarding method and device |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0395428A2 (en) * | 1989-04-28 | 1990-10-31 | Digital Equipment Corporation | Communication protocol for statistical data multiplexers arranged in a wide area network |
EP0404339A2 (en) * | 1989-06-22 | 1990-12-27 | Digital Equipment Corporation | Routing apparatus and method for high-speed mesh connected local area network |
EP0767562A2 (en) * | 1995-09-11 | 1997-04-09 | Kabushiki Kaisha Toshiba | Method and apparatus for communication control |
US6091724A (en) * | 1997-11-20 | 2000-07-18 | International Business Machines Corporation | Routing messages within a network using the data content of the message |
CN1466322A (zh) * | 2002-06-23 | 2004-01-07 | ��Ϊ��������˾ | 一种利用虚拟路由器冗余协议实现路由器接口备份的方法 |
US6816966B1 (en) * | 1997-06-30 | 2004-11-09 | Sun Microsystems, Inc. | Techniques for securing data flow in internet multicasting |
CN1791052A (zh) * | 2004-12-17 | 2006-06-21 | 中兴通讯股份有限公司 | 以太网交换机动态发现组播路由器的方法 |
CN101035009A (zh) * | 2007-03-31 | 2007-09-12 | 华为技术有限公司 | 一种组播流量冗余保护的方法及设备 |
CN101035058A (zh) * | 2007-04-28 | 2007-09-12 | 杭州华三通信技术有限公司 | 虚拟路由器冗余协议报文传输方法及装置 |
CN101039276A (zh) * | 2007-04-04 | 2007-09-19 | 华为技术有限公司 | 转变三层网络设备接口状态的方法和三层网络设备 |
CN101145924A (zh) * | 2006-09-13 | 2008-03-19 | 华为技术有限公司 | 实现ssm模式组播的方法、设备及系统 |
CN101573913A (zh) * | 2006-12-28 | 2009-11-04 | 朗讯科技公司 | 用于多播路由选择的方法和设备 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6266706B1 (en) * | 1997-09-15 | 2001-07-24 | Effnet Group Ab | Fast routing lookup system using complete prefix tree, bit vector, and pointers in a routing table for determining where to route IP datagrams |
US6874033B1 (en) * | 1998-03-23 | 2005-03-29 | Hitachi, Ltd. | Network repeater and network next transfer desitination searching method |
US7260096B2 (en) * | 2002-07-09 | 2007-08-21 | International Business Machines Corporation | Method and router for forwarding internet data packets |
JP2003158548A (ja) * | 2002-12-05 | 2003-05-30 | Toshiba Corp | パケット送信装置及びパケット送受信システム |
US7551551B2 (en) * | 2004-12-10 | 2009-06-23 | Cisco Technology, Inc. | Fast reroute (FRR) protection at the edge of a RFC 2547 network |
US20070016637A1 (en) * | 2005-07-18 | 2007-01-18 | Brawn John M | Bitmap network masks |
JP2010045525A (ja) * | 2008-08-11 | 2010-02-25 | Brother Ind Ltd | 無線アドホックネットワークにおける自律的なグループ構築方法及びこの方法を用いたデータ配信方法とデータ収集方法 |
JP5256118B2 (ja) * | 2009-05-15 | 2013-08-07 | 日本電信電話株式会社 | 情報配信システム及び情報配信方法 |
US9521079B2 (en) | 2012-09-24 | 2016-12-13 | Hewlett Packard Enterprise Development Lp | Packet forwarding between packet forwarding elements in a network device |
EP2997699B1 (en) * | 2013-05-17 | 2020-03-04 | Cisco Technology, Inc. | Segment routing mapping server for ldp/sr interoperability |
US9571897B2 (en) * | 2013-09-17 | 2017-02-14 | Cisco Technology, Inc. | Bit indexed explicit replication for professional media networks |
US9438432B2 (en) * | 2013-09-17 | 2016-09-06 | Cisco Technology, Inc. | Bit indexed explicit replication packet encapsulation |
US10003494B2 (en) * | 2013-09-17 | 2018-06-19 | Cisco Technology, Inc. | Per-prefix LFA FRR with bit indexed explicit replication |
US11451474B2 (en) * | 2013-09-17 | 2022-09-20 | Cisco Technology, Inc. | Equal cost multi-path with bit indexed explicit replication |
US10461946B2 (en) * | 2013-09-17 | 2019-10-29 | Cisco Technology, Inc. | Overlay signaling for bit indexed explicit replication |
US9853822B2 (en) * | 2013-09-17 | 2017-12-26 | Cisco Technology, Inc. | Bit indexed explicit replication |
-
2014
- 2014-12-22 US US14/579,575 patent/US9749220B2/en active Active
-
2015
- 2015-09-16 JP JP2017515193A patent/JP6479169B2/ja active Active
- 2015-09-16 WO PCT/IB2015/057139 patent/WO2016042505A2/en active Application Filing
- 2015-09-16 EP EP15794290.5A patent/EP3195538B1/en active Active
- 2015-09-16 CN CN201580063081.2A patent/CN107078966B/zh not_active Expired - Fee Related
-
2017
- 2017-03-06 PH PH12017500411A patent/PH12017500411A1/en unknown
- 2017-07-24 US US15/658,260 patent/US10439928B2/en active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0395428A2 (en) * | 1989-04-28 | 1990-10-31 | Digital Equipment Corporation | Communication protocol for statistical data multiplexers arranged in a wide area network |
EP0404339A2 (en) * | 1989-06-22 | 1990-12-27 | Digital Equipment Corporation | Routing apparatus and method for high-speed mesh connected local area network |
EP0767562A2 (en) * | 1995-09-11 | 1997-04-09 | Kabushiki Kaisha Toshiba | Method and apparatus for communication control |
US6816966B1 (en) * | 1997-06-30 | 2004-11-09 | Sun Microsystems, Inc. | Techniques for securing data flow in internet multicasting |
US6091724A (en) * | 1997-11-20 | 2000-07-18 | International Business Machines Corporation | Routing messages within a network using the data content of the message |
CN1466322A (zh) * | 2002-06-23 | 2004-01-07 | ��Ϊ��������˾ | 一种利用虚拟路由器冗余协议实现路由器接口备份的方法 |
CN1791052A (zh) * | 2004-12-17 | 2006-06-21 | 中兴通讯股份有限公司 | 以太网交换机动态发现组播路由器的方法 |
CN101145924A (zh) * | 2006-09-13 | 2008-03-19 | 华为技术有限公司 | 实现ssm模式组播的方法、设备及系统 |
CN101573913A (zh) * | 2006-12-28 | 2009-11-04 | 朗讯科技公司 | 用于多播路由选择的方法和设备 |
CN101035009A (zh) * | 2007-03-31 | 2007-09-12 | 华为技术有限公司 | 一种组播流量冗余保护的方法及设备 |
CN101039276A (zh) * | 2007-04-04 | 2007-09-19 | 华为技术有限公司 | 转变三层网络设备接口状态的方法和三层网络设备 |
CN101035058A (zh) * | 2007-04-28 | 2007-09-12 | 杭州华三通信技术有限公司 | 虚拟路由器冗余协议报文传输方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
EP3195538B1 (en) | 2018-08-29 |
WO2016042505A2 (en) | 2016-03-24 |
US9749220B2 (en) | 2017-08-29 |
WO2016042505A3 (en) | 2016-05-12 |
PH12017500411A1 (en) | 2017-07-17 |
CN107078966A (zh) | 2017-08-18 |
JP2017529009A (ja) | 2017-09-28 |
EP3195538A2 (en) | 2017-07-26 |
US20170324650A1 (en) | 2017-11-09 |
US20160087890A1 (en) | 2016-03-24 |
JP6479169B2 (ja) | 2019-03-06 |
US10439928B2 (en) | 2019-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107078966B (zh) | 用于指配接收器标识符和自动确定树属性的方法和装置 | |
US10397049B2 (en) | Auto-provisioning edge devices in a communication network using control plane communications | |
US10924389B2 (en) | Segment routing based on maximum segment identifier depth | |
US9979629B2 (en) | Distribution of segment identifiers in network functions virtualization and software defined network environments | |
CN108702328B (zh) | 用于穿越分段路由和mpls网络的业务的灵活路径拼接和选择的is-is扩展 | |
CN108353024B (zh) | 连网装置及其实现的方法、计算装置以及控制平面装置 | |
EP3143732B1 (en) | Scalable segment identifier allocation in segment routing | |
EP3120508B1 (en) | Optimized approach to is-is lfa computation with parallel links | |
US20160241515A1 (en) | Method and system for providing "anywhere access" for fixed broadband subscribers | |
US9300568B2 (en) | Procedure to add alternate paths for IS-IS default route | |
US10771380B2 (en) | Fast control path and data path convergence in layer 2 overlay networks | |
US20220272032A1 (en) | Malleable routing for data packets | |
CN112087386B (zh) | 一种报文处理的方法、设备和系统 | |
WO2016071843A1 (en) | Explicit block encoding of multicast group membership information with bit index explicit replication (bier) | |
US9313117B2 (en) | Alternate method to give operators flexibility to choose LFAs | |
US9485173B2 (en) | Optimization to expand IS-IS leaf nodes during LFA computation | |
EP3195537B1 (en) | Forwarding table precedence in sdn | |
US20200314016A1 (en) | Tunneling inter-domain stateless internet protocol multicast packets | |
WO2020255150A1 (en) | Method and system to transmit broadcast, unknown unicast, or multicast (bum) traffic for multiple ethernet virtual private network (evpn) instances (evis) | |
WO2020230146A1 (en) | Method and apparatus for layer 2 route calculation in a route reflector network device | |
US20160112316A1 (en) | Decision factory and its application in frr |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20200626 |