BIER-TE信息的处理方法、服务器及存储介质与流程

文档序号:17481274发布日期:2019-04-20 06:28阅读:398来源:国知局
本发明涉及网络通信
技术领域
:,尤其涉及一种bier-te信息的处理方法、服务器及存储介质。
背景技术
::随着互联网视频业务、4k电视、虚拟现实(virtualreality,vr)、增强现实技术(augmentedreality,ar)等大视频业务开展,dc内部及dc间的流量复制、备份,以及内容分发网络(contentdeliverynetwork,cdn)、分布式存储、分布式cache的应用,组播业务需求呈现爆炸式增长。传统组播技术带来了中间网络组播表、组播状态等的爆炸式增长,其成为组播网络中最复杂、不可控的部分。为此,业界提出了一种新的用于构建组播转发路径的技术,称为具有位索引的显式复制技术(bitindexedexplicitreplication,bier),该技术是基于比特(bit)位的组播复制技术,不需要任何显式的组播树建立协议,也不需要中间节点维护任何组播流的状态,极大地简化了组播业务的网络操作开销。现有技术还提出了一种基于bier转发方式的流量工程架构,即:bier-流量工程路径(biertrafficengineeringpaths,bier-te),可以实现按照部署需要来规划路径,bier-te和bier的区别如下:1.bier依靠内部网关协议(interiorgatewayprotocol,igp)自身的最短路径树(shortestpathtree,spt)自动计算出转发路径,而bier-te使用bier-te控制器可以显式的规划路径。2.bier中的比特串(bitstring)的比特位用来表示bfer,而bier-te中位串bitstring的比特位则用来表示一组邻接。3.bier-te中每个比特位转发路由器(bitforwardingrouter,bfr)均没有路由表,只有bier-te的比特转发入口路由器(bit-forwardingingressrouter,bfir),bfir用si:bitposition进行索引,指明数据包在对应bfr上应该复制到哪个邻接。通过bier-te域中的控制器根据需求规划比特转发入口路由器(bit-forwardingingressrouter,bfir)到比特转发出口路由器(bit-forwardingegressrouter,bfer)的路径,并将bfer的bitstring传递给bfir,组播数据包根据bitstring和比特位索引转发表(bitindexforwardingtable,bift)进行转发。当网络拓扑发生变化时,如要保证组播数据包能够正常转发,需要能够根据拓扑变化及时调整bitstring。在控制器计算bier-te时,需要知道域中所有bier-te信息和网络拓扑的关系,以及在拓扑变化时,能够及时通告bier-te信息的变化,以便更新bitstring,目前尚未提出有效的解决方法。技术实现要素:本发明的主要目的在于提出一种bier-te信息的处理方法、服务器及存储介质,旨在解决在bier-te信息和拓扑变化时,无法及时通过bier-te信息的变化的问题。为实现上述目的,本发明提供的一种bier-te信息的处理方法,所述方法包括以下步骤:扩展边界网关协议bgp-链路状态ls的位索引的显式复制技术bier-流量工程路径te信息;在所述bgp-ls中封装所述bier-te信息;通过扩展的所述bgp-ls将所述bier-te信息发送给控制器。此外,为实现上述目的,本发明还提出一种bier-te信息的处理方法,所述方法包括以下步骤:接收通过扩展的bgp-ls发送的bier-te信息;根据所述bier-te信息中的拓扑变化,重新计算路径;发送整合后的新的比特转发出口路由器bfer的比特串bitstring给比特转发入口路由器bfir。此外,为实现上述目的,本发明还提出一种服务器,包括、处理器和存储器,其中,所述处理器用于执行存储器中存储的bier-te信息的处理程序,以实现上述的方法。此外,为实现上述目的,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述的方法。与现有技术相比,本发明提出的bier-te信息的处理方法、服务器及存储介质,通过bgp-ls,在bgp-ls中封装bier-te信息,并通过扩展的bgp-ls将bier-te信息发送给控制器,使控制器能够获取bier域内的bier-te拓扑,并根据需求规划bier路径及后续操作,进而在拓扑发生变化时,能够及时通告控制器bier-te信息的变化的效果。附图说明图1为本申请较佳实施例提供的bier-te信息的处理方法的流程示意图;图2为本申请较佳实施例提供的bier-te的相关信息的结构示意图一;图3为本申请较佳实施例提供的bier-te的相关信息的结构示意图二;图4为本申请较佳实施例提供的bier-te信息的处理方法的子流程示意图一;图5本申请较佳实施例提供的bgp-ls中复用的biersub-tlv结构示意图;图6为本申请较佳实施例提供的集中控制场景下的bier-te技术组网图;图7为本申请另一较佳实施例提供的bier-te信息的处理方法的流程示意图;图8为本申请另一较佳实施例提供一种服务器硬件架构的示意图;图9为图8中bier-te信息的处理程序的模块示意图。本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。第一实施例如图1所示,为本发明较佳实施例提供的一种bier-te信息的处理方法的流程示意图。在图1中,所述bier-te信息的处理方法,应用于比特位转发路由器(bitforwardingrouter,bfr),其包括以下步骤:步骤110,扩展边界网关协议bgp-链路状态ls的位索引的显式复制技术bier-流量工程路径te信息;步骤120,在bgp-ls中封装bier-te信息;步骤130,通过扩展的bgp-ls将所述bier-te信息发送给控制器。具体的,通过位索引的显式复制技术(bitindexedexplicitreplication,bier)的bfr将bier流量工程路径(biertrafficengineeringpaths,bier-te)的基础信息扩展到边界网关协议(bordergatewayprotocol,bgp)-链路状态(linkstate,ls),再将扩展后的bgp-ls将bier-te信息发送给邻接的控制器,控制器能够获取bier域内的bier-te拓扑,并根据需求规划bier路径及后续操作,进而在拓扑发生变化时,能够及时通告控制器bier-te信息的变化的效果。在一个可选的实施例中,步骤110具体包括:将bier-te的基础信息填充到bgp-ls新增的bier-teinfosub-tlv中,将bier-te的邻接信息填充到bgp-ls新增的bier-teadjacencysub-tlv中。具体的,如图2所示,为根据本发明实施例的bier-te的相关信息的结构示意图,在图2中,bier-te的基础信息包括子域标识(sub-domainid)、位转发路由器标识(bfr-id)以及比特位串长度(bitstringlength,bsl)等,bier-teinfosub-tlv可以填充在bfr前缀(prefix)属性(attribute)的类型\长度\值(type\length\value,tlv)或者其他的tlv中。子域(sub-domain),表示不同的bier拓扑,可对应到开放式最短路径优先(openshortestpathfirst,ospf)/中间系统到中间系统(intermediatesystem-to-intermediatesystem,isis)的多拓扑上,一个bier域内可以有多个sub-domain,每个sub-domain由子域标识(sub-domainid)表示,取值为[0-255],长度为8bits。比特位转发路由器标识(bfr-id),为每个bfr节点所分配的id信息,是自然数,同一个bfr,在不同的sub-domain中,可以分配不同的bfr-id信息。取值为[1-65535],长度为16bits。bier技术转发比特位串长度(bitstringlength,bsl)时,最小64位,依次有128,256,512,1024,2048,最大4096位。具体在报文中通过4bits来标识。进一步的,如图3所示,为根据本发明实施例的另一bier-te的相关信息的结构示意图,在图3中,bier-te邻接信息包括邻接标识(adjacency-id)、邻接类型(adjacency-type)、邻接关联接口(adj-if)、邻接关联接口标识(if-id)以及关联接口类型(if-type)等,所述bier-teadjacencysub-tlv可以填充在linkattributetlv或者其他合适的tlv中。如图4所示,在其他实施例中,步骤110具体包括:步骤410,复用bgp-ls原有的biersub-tlv;步骤420,对复用后的bgp-ls上增加标志字段flag;步骤430,将bier-te的基础信息填充到所述biersub-tlv中,将bier-te的邻接信息填充到bgp-ls新增的bier-teadjacencysub-tlv中。具体的,flag值设置为bier-te类型,bier-te的基础信息包括子域标识(sub-domainid)、位转发路由器标识(bfr-id)以及比特位串长度(bitstringlength,bsl)等,如图5所示,为bgp-ls中复用的biersub-tlv结构示意图。bier-te的邻接信息包括邻接标识(adjacency-id),邻接类型(adjacency-type),邻接关联接口(adj-if),邻接关联接口标识(if-id)以及关联接口类型(if-type)等,所述bier-teadjacencysub-tlv可以填充在linkattributetlv或者其他合适的tlv中。本实施例的bier-te信息的处理方法可以应用在多种控制场景中,优选应用于如图6所示的集中控制场景下的bier-te组网。本实施例提供的bier-te信息的处理方法,通过扩展边界网关协议bgp-链路状态ls,在bgp-ls中封装位索引的显式复制技术bier-流量工程路径te信息,并通过扩展的bgp-ls将bier-te信息发送给控制器,使控制器能够获取bier域内的bier-te拓扑,并根据需求规划bier路径及后续操作,进而在拓扑发生变化时,能够及时通告控制器bier-te信息的变化的效果。第二实施例如图7所示,为本申请第二实施例提出一种bier-te信息的处理方法的流程示意图。在图7中,所述bier-te信息的处理方法应用于控制器,其包括以下步骤:步骤710,接收通过扩展的bgp-ls发送的bier-te信息;步骤720,根据所述bier-te信息中的拓扑变化,重新计算路径;步骤730,发送整合后的新的比特转发出口路由器(bit-forwardingegressrouter,bfer)的比特串(bitstring)给比特转发入口路由器(bit-forwardingingressrouter,bfir)。示例性地,通过bgp-ls扩展的bier-te信息为bier-te网络中某个邻接关系消除(例如,bfr上某个bier-te邻接关联的接口down或者删除该邻接配置),则通过bgp-ls收集到的bier-te拓扑信息更新,不包含所述邻接关系。在没有frr情况下,根据所述bier-te拓扑信息变化对经过该bier-te邻接的路径,进行重新计算路径,并将新的路径计算结果整合成新的bitstring,或者新路径的邻接信息id的集合下发到bfir。示例性地,通过bgp-ls扩展的bier-te信息为bier-te网络中新增某个邻接关系(例如,bfr上某个bier-te邻接关联的接口up或者新增邻接配置),则通过bgp-ls收集到的bier-te拓扑信息更新,包含所述邻接关系。根据所述bier-te拓扑信息变化,若某些组播路径经过该bier-te邻接,在同时满足其他约束条件的情况下,路径更优的话,重新计算路径并调整这些路径,并将新的路径计算结果整合成新的bitstring,或者新路径的邻接信息id的集合下发到bfir。示例性地,通过bgp-ls扩展的bier-te信息为bier-te网络中某个邻接关系更新(例如,bfr上修改某个bier-te邻接配置,这里主要是指修改邻接标识),则通过bgp-ls收集到的bier-te拓扑信息更新,所述邻接关系更新为修改后的信息。根据所述bier-te拓扑信息变化,对经过该bier-te邻接的路径,更新路径中该邻接信息,如果更新后的路径邻接信息不满足转发条件,重新计算路径并调整这些路径,并将新的路径计算结果整合成新的bitstring,或者新路径的邻接信息id的集合下发到bfir。进一步的,邻接关联的接口可以是普通端口也可以是隧道接口,隧道接口可以是多协议标签交换(multi-protocollabelswitching,mpls)隧道、通用路由封装(genericroutingencapsulation,gre)隧道、通用多协议标志交换协议(generalizedmultiprotocollabelswitching,gmpls)隧道等进一步的,为了确保基于bier-te的组播报文的正常转发,在根据bier-te拓扑信息计算路径或者响应拓扑变化重新算路时,需要遵循如下原则:在一个组播实例中,bfir分别到每个bfer的一条完整路径的邻接信息在同一个subdomain:bsl:si中;允许bfir到不同的bfer的多条路径的bsl:si不同。本实施例的bier-te信息的处理方法,通过接收通过扩展的bgp-ls发送的bier-te信息,根据该bier-te信息中的拓扑变化,重新计算路径,并发送整合后的新的bfer的bitstring给bfir。第三实施例如图8所示,为本申请第三实施例提供一种服务器硬件架构的示意图。在图8中,服务器包括:存储器810、处理器820及存储在所述存储器810上并可在所述处理器820上运行的bier-te信息的处理程序830。在本实施例中,所述的bier-te信息的处理程序830包括一系列的存储于存储器810上的计算机程序指令,当该计算机程序指令被处理器820执行时,可以实现本发明各实施例的bier-te信息的处理操作。在一些实施例中,基于该计算机程序指令各部分所实现的特定的操作,bier-te信息的处理程序830可以被划分为一个或多个模块。如图9所示,bier-te信息的处理程序830包括运行于bfr中的扩展模块910、封装模块920和第一发送模块930,以及运行于控制器中的接收模块940、路径计算模块950和第二发送模块960。其中,扩展模块910,用于扩展边界网关协议bgp-链路状态ls的位索引的显式复制技术bier-流量工程路径te信息;封装模块920,用于在bgp-ls中封装bier-te信息;第一发送模块930,用于通过扩展的bgp-ls将所述bier-te信息发送给控制器。具体的,通过bier的bfr将bier-te的基础信息扩展到bgp-ls,再将扩展后的bgp-ls将bier-te信息发送给邻接的控制器,控制器能够获取bier域内的bier-te拓扑,并根据需求规划bier路径及后续操作,进而在拓扑发生变化时,能够及时通告控制器bier-te信息的变化的效果。在一个可选的实施例中,扩展模块910具体用于:将bier-te的基础信息填充到bgp-ls新增的bier-teinfosub-tlv中,将bier-te的邻接信息填充到bgp-ls新增的bier-teadjacencysub-tlv中。具体的,如图2所示,为根据本发明实施例的bier-te的相关信息的结构示意图,在图2中,bier-te的基础信息包括sub-domainid、bfr-id以及bsl等,bier-teinfosub-tlv可以填充在bfrprefixattribute的tlv或者其他的tlv中。sub-domain,表示不同的bier拓扑,可对应到ospf/isis的多拓扑上,一个bier域内可以有多个sub-domain,每个sub-domain由sub-domainid表示,取值为[0-255],长度为8bits。bfr-id,为每个bfr节点所分配的id信息,是自然数,同一个bfr,在不同的sub-domain中,可以分配不同的bfr-id信息。取值为[1-65535],长度为16bits。通过bier技术转发bsl时,最小64位,依次有128,256,512,1024,2048,最大4096位。具体在报文中通过4bits来标识。如图3所示,为根据本发明实施例的另一bier-te的相关信息的结构示意图,在图3中,bier-te邻接信息包括adjacency-id、adjacency-type、adj-if、if-id以及if-type等,所述bier-teadjacencysub-tlv可以填充在linkattributetlv或者其他合适的tlv中。在另一个可选的实施例中,扩展模块910具体用于:复用bgp-ls原有的biersub-tlv;对复用后的bgp-ls上增加标志字段flag;将bier-te的基础信息填充到所述biersub-tlv中,将bier-te的邻接信息填充到bgp-ls新增的bier-teadjacencysub-tlv中。具体的,flag值设置为bier-te类型,bier-te的基础信息包括sub-domainid、bfr-id以及bsl等,如图5所示,为bgp-ls中复用的biersub-tlv结构示意图。bier-te邻接信息包括adjacency-id、adjacency-type、adj-if、if-id以及if-type等,所述bier-teadjacencysub-tlv可以填充在linkattributetlv或者其他合适的tlv中。本实施例的bier-te信息的处理方法可以应用在多种控制场景中,优选应用于如图6所示的集中控制场景下的bier-te组网。接收模块940,用于接收通过扩展的bgp-ls发送的bier-te信息;路径计算模块950,用于根据所述bier-te信息中的拓扑变化,重新计算路径;第二发送模块960,用于发送整合后的新的bfer的bitstring给bfir。示例性地,通过bgp-ls扩展的bier-te信息为bier-te网络中某个邻接关系消除(例如,bfr上某个bier-te邻接关联的接口down或者删除该邻接配置),则通过bgp-ls收集到的bier-te拓扑信息更新,不包含所述邻接关系。在没有frr情况下,根据所述bier-te拓扑信息变化对经过该bier-te邻接的路径,进行重新计算路径,并将新的路径计算结果整合成新的bitstring,或者新路径的邻接信息id的集合下发到bfir。示例性地,通过bgp-ls扩展的bier-te信息为bier-te网络中新增某个邻接关系(例如,bfr上某个bier-te邻接关联的接口up或者新增邻接配置),则通过bgp-ls收集到的bier-te拓扑信息更新,包含所述邻接关系。根据所述bier-te拓扑信息变化,若某些组播路径经过该bier-te邻接,在同时满足其他约束条件的情况下,路径更优的话,重新计算路径并调整这些路径,并将新的路径计算结果整合成新的bitstring,或者新路径的邻接信息id的集合下发到bfir。示例性地,通过bgp-ls扩展的bier-te信息为bier-te网络中某个邻接关系更新(例如,bfr上修改某个bier-te邻接配置,这里主要是指修改邻接标识),则通过bgp-ls收集到的bier-te拓扑信息更新,所述邻接关系更新为修改后的信息。根据所述bier-te拓扑信息变化,对经过该bier-te邻接的路径,更新路径中该邻接信息,如果更新后的路径邻接信息不满足转发条件,重新计算路径并调整这些路径,并将新的路径计算结果整合成新的bitstring,或者新路径的邻接信息id的集合下发到bfir。进一步的,邻接关联的接口可以是普通端口也可以是隧道接口,隧道接口可以是mpls隧道、gre隧道、gmpls隧道等进一步的,为了确保基于bier-te的组播报文的正常转发,在根据bier-te拓扑信息计算路径或者响应拓扑变化重新算路时,需要遵循如下原则:在一个组播实例中,bfir分别到每个bfer的一条完整路径的邻接信息在同一个subdomain:bsl:si中;允许bfir到不同的bfer的多条路径的bsl:si不同。本实施例提供的服务器,通过扩展边界网关协议bgp-链路状态ls,在bgp-ls中封装位索引的显式复制技术bier-流量工程路径te信息,并通过扩展的bgp-ls将bier-te信息发送给控制器,使控制器能够获取bier域内的bier-te拓扑,并根据需求规划bier路径及后续操作,进而在拓扑发生变化时,能够及时通告控制器bier-te信息的变化的效果。第四实施例本申请实施例还提供了一种计算机可读存储介质。这里的计算机可读存储介质存储有一个或者多个程序。其中,计算机可读存储介质可以包括易失性存储器,例如随机存取存储器;存储器也可以包括非易失性存储器,例如只读存储器、快闪存储器、硬盘或固态硬盘;存储器还可以包括上述种类的存储器的组合。当计算机可读存储介质中一个或者多个程序可被一个或者多个处理器执行,以实现上述实施例1或实施例2所提供的bier-te信息的处理方法。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本申请的保护之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1