一种BGP协议的主从控制方法技术

技术编号:14135740 阅读:99 留言:0更新日期:2016-12-10 03:22
本发明专利技术公开了一种BGP协议的主从控制方法,该方法对BGP协议功能模块进行分析,通过模块之间的耦合程度、是否涉及全局网络状态、以及BGP协议本身的特性对模块的划分提出依据,在原有七个模块的基础上细化出本地路由管理模块;然后创新性提出基于SDN框架下分层控制器分布式BGP协议的实现。与此同时,将原有BGP协议的七个模块重新划分为五个模块,并且将BGP的五个协议模块分布式运行在主从控制器之上。通过全局控制器与多个本地控制器的交互操作,不仅能够分担控制平面的负载压力,而且也确保了路由协议能够处理更多对等体之间的BGP会话,提高协议的可拓展性,最终将实现BGP协议在分层控制平面上的高效运行。

【技术实现步骤摘要】

本专利技术属于通信领域,具体涉及一种BGP协议的主从控制方法
技术介绍
边界网关协议(Border Gateway Protocol,BGP)作为自治系统之间的路由协议,主要负责与其他BGP系统交换网络层可达性信息。然而,随着互联网规模与流量的爆发式增长,为适应复杂的网络应用,为BGP协议增添了各种繁杂的应用属性,这些新增属性使路由协议的实现变得更加的复杂,增加了出错的可能性。与此同时,为了更好地拓展网络规模,BGP协议需要维护且存储更大的路由表,对路由的存储能力以及路由计算能力提出了更高的要求;自治区域之间物理位置密度增加了BGP对等体会话数量,需要我们从基于单一控制单元的集中式控制模式到分布式控制发展;BGP路由的猝发更新和间或的路由抖动,对路由协议的计算能力提出了新的挑战。因此,研究BGP协议的分布式的实现,提高BGP协议的可扩展性和协议性能有着重要的商业价值和现实意义。面对互联网规模与流量的爆发式增长,当前以IP为核心的网络体系结构逐渐暴露出各式各样的缺点,结构功能日趋复杂导致网络管理愈加的困难,尤其是以协议为核心的网络演进思路让现有的网络技术发展的非常的缓慢。但是互联网的高速发展却要求路由器随着网络规模的扩大以及数据流量的增长不断提高自身设备的性能,但受硬件条件以及网络体系结构的局限,使得路由器的性能提升举步维艰。从20世纪50年代到现今,尽管网络设备性能有了明显的提高,传输的流量愈加庞大,但网络本身的架构却没有突破性的进展,现今的网络还是主要依靠端到端的路由转发架构,很难满足更加复杂的网络需求。现今的网络技术的创新仅仅停留在传统网络之上,只是被动地进行修补,通常情况下是在用户发现现有的网络中存在的问题或者有新的业务需求后,由研发人员在TCP/IP基础之上进行设计改进,而不是系统性地通过控制与转发分离技术加快网络的创新,重塑互联网的架构。为了解决以上问题,2007年,Martin Casado联合Nick McKeown、Scott Shenker等人创建了一个致力于网络虚拟化技术创新的公司——Nicira,并最早提出了SDN的概念。SDN(Software Defined Networking,软件定义网络) 是一种数据控制分离、软件可编程的新型网络体系架构,采用了集中式的控制平面和分布式转发平面,两个平面相互分离。在SDN框架中,控制平面主要的功能是建立本地的数据集合,该数据集合一般被称为路由信息库(Routing Information Base,RIB),RIB需要与网内其他控制平面实例的信息保持一致,这一点通常使用分布式路由协议来完成。接下来,控制平面需要基于RIB创建转发表,用于指导设备出入端口之间的数据流量转发,转发表通常称为转发信息表(Forwarding Information Base,FIB),FIB需要经常在设备的控制和数据平面之间进行镜像,以保证转发行为与路由决策的一致。控制平面的可扩展性是SDN研究的热点之一,未来SDN面向大规模网络的必经之路便是对控制平面实现分布式设计。多线程处理对于大型网络而言有局限性,不能保证其性能。单控制器又存在路由器控制平面过载而丢失“心跳”信息的性能瓶颈以及单点失效和可拓展性差的缺点,单一控制单元的集中式控制对于其他自治区域的交换机信息的交互有较大的延迟,且现有的路由协议大部分运行于集中控制平面,软硬件局部的失效将导致整个路由协议的瘫痪,所以为了更好的提高网络的性能以及路由协议可拓展性,我们需要对控制平面实行分布式处理。
技术实现思路
本专利技术针对现有技术的不足,提出了一种BGP协议的主从控制方法。本专利技术提供的一种BGP协议的主从控制方法,包括如下步骤:步骤一:将BGP协议分别部署在主从控制器上,主控制器作为全局控制器,从控制器包括若干本地控制器;所述本地控制器中包括BGP对等体建立与维护模块、本地路由管理模块以及本地路由计算模块;所述BGP对等体建立与维护模块包括对等体协商有限状态机模块、对等体会话维持模块、邻居输入输出策略库模块。所述本地路由计算模块包括路由更新报文处理模块以及路由更新输入输出策略模块。所述全局控制器中包括全局路由管理模块、全局路由计算模块以及控制接口管理模块,所述全局路由管理模块包括全局路由库以及全局输入输出策略库。步骤二:BGP对等体建立与维护模块中的对等体协商有限状态机模块和对等体会话维持模块将维持本地控制器中BGP对等体处于会话状态,通过邻居输入输出策略库模块,BGP对等体从远端对等体接收所有初始路由(保存BGP Speaker 从邻居中学到的路由),经过本地路由计算模块执行路由更新输入输出策略模块后,选举出本地最佳路由,并将其存储在本地路由管理模块,然后发送给全局控制器。步骤三:全局控制器接收各个本地控制器的最佳路由,将其存储于全局路由库中,经过全局路由计算模块来选举出全局最佳路由。步骤四:全局最佳路由与IGP路由共同激活路由决策进程,且存储于IP转发表中,经过全局输入输出策略库处理后通过控制接口管理模块发送给本地控制器。步骤五:各个本地控制器接收到全局控制器选出的全局最佳路由后,经本地路由计算模块中的路由更新报文处理模块进行路由重分布、聚合、出站过滤后,选择出的路由宣告给其他本地控制器中BGP对等体。进一步地,所述步骤二中,所述BGP对等体建立与维护模块中的BGP对等体从远端对等体接收所有初始路由具体为:在BGP对等体建立与维护模块中,通过BGP对等体有限状态机的协商,建立BGP会话,根据TCP连接与KEEPALIVE消息的验证来维护对等体之间的会话,BGP通过IBGP或者EBGP从远端对等体处接收路由,并将这些未加修改的初始路由存储于输入路由表(Adj-RIB-In)中。所述步骤二中,所述选举出本地最佳路由具体为:初始路由经过入站过滤或者属性控制后允许的路由集合进行本地最佳路由的判决处理,判决处理将检查到达同一目的地的所有可用的路由,比较每个路由的不同属性,具体选路过程如下:(1)如果此路由的下一跳不可达,则忽略此路由。(2)选择本地优先级较大的路由。(3)在本地优先级相同时,选择本地控制器始发的路由。(4)选择AS路径较短的路由。(5)依次选择起点类型为IGP,EGP,Incomplete类型的路由。(6)选择MED较小的路由。(7)选择RouterID较小的路由。由此选出本地的最佳路由,但此时经过路由决策选择的路由不能进行宣告,因为它是本地最佳路由,而非全局最佳路由。所述步骤三中,所述全局路由计算模块选出全局最佳路由具体为:全局路由计算模块在全局控制器中主要通过全局输入输出策略库,将依次接收的若干个本地最佳路由的数据结构属性添加到数据库中进行路由的优先选择,具体选路过程如下:(1)如果此路由的下一跳不可达,则忽略此路由。(2)选择全局优先级较大的路由。(3)在全局优先级相同相同时,选择全局控制器始发的路由。(4)选择AS路径较短的路由。(5)依次选择起点类型为IGP,EGP,Incomplete类型的路由。(6)选择MED较小的路由。(7)选择RouterID较小的路由。如新增路由优于原来的路由,则重新设置全局最佳路由。所述步骤四中,所述IP转发表中的路由信息具体为:经过入站过滤以及判决本文档来自技高网
...
一种BGP协议的主从控制方法

【技术保护点】
一种BGP协议的主从控制方法,其特征在于,该方法包括如下步骤:步骤一:将BGP协议分别部署在主从控制器上,主控制器作为全局控制器,从控制器包括若干本地控制器;所述本地控制器中包括BGP对等体建立与维护模块、本地路由管理模块以及本地路由计算模块;所述BGP对等体建立与维护模块包括对等体协商有限状态机模块、对等体会话维持模块、邻居输入输出策略库模块;所述本地路由计算模块包括路由更新报文处理模块以及路由更新输入输出策略模块;所述全局控制器中包括全局路由管理模块、全局路由计算模块以及控制接口管理模块,所述全局路由管理模块包括全局路由库以及全局输入输出策略库;步骤二:BGP对等体建立与维护模块中的对等体协商有限状态机模块和对等体会话维持模块将维持本地控制器中BGP对等体处于会话状态,通过邻居输入输出策略库模块,BGP对等体从远端对等体接收所有初始路由(保存BGP Speaker 从邻居中学到的路由),经过本地路由计算模块执行路由更新输入输出策略模块后,选举出本地最佳路由,并将其存储在本地路由管理模块,然后发送给全局控制器;步骤三:全局控制器接收各个本地控制器的最佳路由,将其存储于全局路由库中,经过全局路由计算模块来选举出全局最佳路由;步骤四:全局最佳路由与IGP路由共同激活路由决策进程,且存储于IP转发表中,经过全局输入输出策略库处理后通过控制接口管理模块发送给本地控制器;步骤五:各个本地控制器接收到全局控制器选出的全局最佳路由后,经本地路由计算模块中的路由更新报文处理模块进行路由重分布、聚合、出站过滤后,选择出的路由宣告给其他本地控制器中BGP对等体。...

【技术特征摘要】
2015.12.03 CN 20151088136351.一种BGP协议的主从控制方法,其特征在于,该方法包括如下步骤:步骤一:将BGP协议分别部署在主从控制器上,主控制器作为全局控制器,从控制器包括若干本地控制器;所述本地控制器中包括BGP对等体建立与维护模块、本地路由管理模块以及本地路由计算模块;所述BGP对等体建立与维护模块包括对等体协商有限状态机模块、对等体会话维持模块、邻居输入输出策略库模块;所述本地路由计算模块包括路由更新报文处理模块以及路由更新输入输出策略模块;所述全局控制器中包括全局路由管理模块、全局路由计算模块以及控制接口管理模块,所述全局路由管理模块包括全局路由库以及全局输入输出策略库;步骤二:BGP对等体建立与维护模块中的对等体协商有限状态机模块和对等体会话维持模块将维持本地控制器中BGP对等体处于会话状态,通过邻居输入输出策略库模块,BGP对等体从远端对等体接收所有初始路由(保存BGP Speaker 从邻居中学到的路由),经过本地路由计算模块执行路由更新输入输出策略模块后,选举出本地最佳路由,并将其存储在本地路由管理模块,然后发送给全局控制器;步骤三:全局控制器接收各个本地控制器的最佳路由,将其存储于全局路由库中,经过全局路由计算模块来选举出全局最佳路由;步骤四:全局最佳路由与IGP路由共同激活路由决策进程,且存储于IP转发表中,经过全局输入输出策略库处理后通过控制接口管理模块发送给本地控制器;步骤五:各个本地控制器接收到全局控制器选出的全局最佳路由后,经本地路由计算模块中的路由更新报文处理模块进行路由重分布、聚合、出站过滤后,选择出的路由宣告给其他本地控制器中BGP对等体。2.根据权利要求1所述的一种BGP协议的主从控制方法,其特征在于:所述步骤二中,所述BGP对等体建立与维护模块中的BGP对等体从远端对等体接收所有初始路由具体为:在BGP对等体建立与维护模块中,通过BGP对等体有限状态机的协商,建立BGP会话,根据TCP连接与KEEPALIVE消息的验证来维护对等体之间的会话,BGP通过IBGP或者EBGP从远端对等体处接收路由,并将这些未加修改的初始路由存储于输入路由表(Adj-RIB-In)中。3.根据权利要求1所述的一种BGP协议的主从控制方法,其特征在于:所述步骤二中,所述选举出本地最佳路由具体...

【专利技术属性】
技术研发人员:周静静张胜龙程迪王伟明鹿如强
申请(专利权)人:浙江工商大学
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1