用于支持大量开放式最短路径优先进程的网络系统和方法

文档序号:8003353阅读:241来源:国知局
用于支持大量开放式最短路径优先进程的网络系统和方法
【专利摘要】本发明的实施例提供一种用于支持大量OSPF进程的网络系统和通信方法,所述网络系统包括:一个或多个线卡,用于从外部接收包,并且基于会话表而将所述包分派给对应的OSPF进程;两个或多个控制板,用于接收由所述线卡分配的所述包,并且执行OSPF处理;其中大量OSPF进程分布到多个控制板。通过本发明的实施例,大量OSPF进程可以得到支持,而同时在PE-CE情境下,不会出现任何可扩展性问题。
【专利说明】用于支持大量开放式最短路径优先进程的网络系统和方法
【技术领域】
[0001]本发明涉及开放式最短路径优先(OSPF)协议,确切地说,涉及用于支持大量OSPF进程的网络系统和方法。
【背景技术】
[0002]开放式最短路径优先(OSPF)是设计成用作内部网关协议(IGP)的链路状态路由协议。这意味着,它在属于单一自治系统(AS)的路由器之间传递路由信息。OSPF协议依据的是链路状态或SPF最短路径优先技术。
[0003]OSPF也可以用作提供商边缘路由器(PE)与客户边缘路由器(CE)之间的IGP,这些路由器是虚拟专用网(VPN)解决方案的一部分,其中需要用单个PE路由器来支持大量的VPN路由转发(VRF)。
[0004]附属于一个以上OSPF域的PE路由器必须针对每个域运行OSPF的独立实例。如果PE将OSPF作为IGP来运行,那么作为IGP运行的OSPF实例必须与PE运行的任何其他OSPF实例分开并且独立于这些实例。附属于一个VPN站点的每个接口都属于至多一个OSPF实例。
[0005]VPN定义了每站点路由转发表或VRF的概念。每个VRF与一组接口相关联。如果VRF与特定接口相关联,而该接口属于特定的OSPF实例,那么该OSPF实例就被说成与所述VRF相关联。如果两个接口属于相同的OSPF实例,那么这两个接口 一定与相同的VRF相关联。如果一个接口将PE附接到CE,而且该接口与VRF相关联,那么就说所述CE与所述VRF相关联。
[0006]然而, 申请人:发现,上述实施方案会造成可扩展性问题,其中在单个处理单元上运行的OSPF要支持大量的进程。
[0007]单个控制板内的PE路由器中的OSPF无法支持大量的OSPF进程(这可能是相同VRF或不同VRF的一部分),从而造成网络中出现可扩展性问题。
[0008]参考文献1- “第 2 版 OSPF “,RFC2328。
[0009]参考文献2 - “作为BGP/MPLS IP虚拟专用网的提供商/客户边缘协议的0SPF”,RFC4577。

【发明内容】

[0010]本发明的实施例涉及一种用于支持大量进程的网络系统和通信方法。目标是支持大量进程,而同时在PE-CE情景下不会出现可扩展性和性能问题。
[0011]根据本发明的实施例的第一方面,提供一种用于支持大量OSPF进程的网络系统,所述网络系统包括:
[0012]一个或多个线卡,用于从外部接收包,并且基于会话表而将所述包分派给对应的OSPF进程;
[0013]两个或多个控制板,用于接收由所述线卡分派的所述包,并且执行OSPF处理,其中大量的OSPF进程分布到所述两个或多个控制板。
[0014]根据本发明的实施例的第二方面,提供一种用于支持大量OSPF进程的方法,所述方法包括:
[0015]由线卡中的一者从外部接收包,并且基于会话表而将所述包分派给对应的OSPF进程;
[0016]由控制板中的一者接收由所述线卡分派的所述包,并且执行OSPF处理,其中大量的OSPF进程分布到多个控制板。
[0017]本发明的优点在于,大量OSPF进程可以得到支持,从而在PE-CE情景下,可以提高可扩展性和性能。
[0018]参考以下描述和附图,本发明的这些和其他方面以及特征将显而易见。在描述和附图中,详细揭示了本发明的特定实施例,以指示出本发明的原理可以采用的一些方式,但应理解,本发明并不限于对应的范围。相反,本发明包括所附权利要求书的精神和项内的所有变化、修改以及等效物。
[0019]参考一项实施例描述和/或说明的特征可以采用相同方式或类似方式用于一项或多项其他实施例,和/或与其他实施例的特征结合使用或替代这些特征。
[0020]应强调的是,本说明书中所用的术语“包括”用于说明存在所述特征、整体、步骤或部件,但并不排除存在或添加一个或多个其他特征、整体、步骤、部件或上述项的组合。
[0021]参考以下附图可以更好地理解本发明的许多方面。附图中的部件不必按比例绘制,而是将重点放在清晰地说明本发明的原理上。为了有助于说明并描述本发明的一些部分,可以将附图中对应部分的尺寸放大,例如,相对于其他部分而言,使其比根据本发明实际制作的示例性装置大。本发明的一个附图或实施例中描绘的元件和特征可以与一个或多个额外附图或实施例中描绘的元件和特征相结合。此外,在附图中,相同参考编号指代若干视图中的对应部分,并且可以用来指代一项以上实施例中的相同或类似部分。
【专利附图】

【附图说明】
[0022]附图被包括在内以提供对本发明的进一步理解,附图构成本说明书的一部分,说明本发明的优选实施例,并且与描述内容一起用于阐明本发明的原理。附图中相同的参考编号始终表示相同的元件。
[0023]在附图中:
[0024]图1为示出OSPF进程的典型实例的拓扑图;
[0025]图2为示出PE与CE之间支持大量VRF的OSPF的典型实例的拓扑图;
[0026]图3为本发明的一项实施例的网络系统的示意图;
[0027]图4为本发明的另一项实施例的网络系统的示意图;
[0028]图5为处理路由的不意图;
[0029]图6为SMP命令处理的示意图;
[0030]图7为本发明的一项实施例的方法的流程图;
[0031]图8为本发明的另一项实施例的方法的流程图;
[0032]图9为本发明的另一项实施例的方法的流程图。【具体实施方式】
[0033]各实施例的许多特征和优点在详细说明书中显而易见,因此,所附权利要求书意图涵盖属于其真实精神和范围内的实施例的所有此类特征和优点。此外,由于所属领域的技术人员将容易想到多种修改和变化,因而并不希望将发明性实施例限于所说明并描述的确切构造和操作,因此,可以采取的所有适当修改和等效物均属于相应范围内。
[0034]下文参考附图来描述本发明的优选实施例。
[0035]如今,OSPF进程在单个控制平面中运行。图1为示出OSPF进程的典型实例的拓扑图。OSPF在单个控制平面内的当前典型部署如图1所示。
[0036]如图1所示,图中有控制板和线卡,而且OSPF进程正在控制板中运行。当OSPF用来支持大量进程时,就会存在以下问题:处理大量包、控制板与线卡之间拥塞、处理能力、存储器等等。
[0037]图2为示出PE与CE之间支持大量VRF的OSPF的典型实例的拓扑图。在此拓扑中,OSPF用在PE与CE之间。
[0038]如图2所示,有许多CE连接到单个PE。在PE (位于单个控制平面中)中运行的OSPF在支持大量VRF要求方面存在问题。
[0039]此外,多个OSPF进程中存在LSA更新。例如,OSPF需要处理来自许多CE的大量LSA,而且由于此下方套接字(socket)层会变得拥塞,因此单个控制平面无法进行处理。
[0040]此外,一旦套接字层开始缓冲包,那么将导致控制平面与线卡之间出现拥塞。这会导致OSPF中的包处理更加延迟,此外,它将导致错过邻居发来的ACK。这种情况将导致OSPF中维持的重传队列增加。随后,整个OSPF将因此而慢下来,并且将影响网络的全面融合。
[0041]实施例1
[0042]本发明的此项实施例提供一种用于支持大量OSPF进程的网络系统。图3为本发明的一项实施例的网络系统的示意图。
[0043]如图3所示,网络系统300包括:一个或多个线卡301,以及两个或多个控制板302 ;其中线卡301用来从外部接收包,并且基于会话表而将所述包分派给对应的OSPF进程;控制板302用来接收由线卡301分派的所述包,并且执行OSPF处理。
[0044]在此实施例中,运营商级路由器中将具有多个控制板,而且大量的OSPF进程分布到所述多个控制板。
[0045]在PE路由器上,基于OSPF进程的数目,所分布的OSPF将跨过多个控制平面(控制板)。大量OSPF进程可以得到支持,从而在PE-CE情景下,可以提高可扩展性和性能。
[0046]图4为本发明的另一项实施例的网络系统的示意图。如图4所示,网络系统400包括:一个或多个线卡401,以及两个或多个控制板402。
[0047]在此实施例中,例如,有三个线卡和三个控制板,而且OSPF进程的数目为0-12K(0-4K、4-8K、8-12K)。
[0048]如图4所示,所述网络系统可以进一步包括:中央路由管理器(RM) 403,中央路由管理器403用来接收更新的路由信息,并且将所述路由信息重新分发给所有控制板;其中所述路由信息是由控制板402独立计算和发送的。
[0049]在此实施例中,如图4所示,RM403在控制板的内部,但并不限于此,RM403可以位于控制板的外部(例如,在ΜΒ-3中)。[0050]如图4所示,具有套接字与接口的关系的会话表存储在每个线卡401中,而且线卡401会通过查看所述会话表来将包分派给对应的套接字,因而所述包通过对应的套接字而到达对应的控制板。
[0051]在此实施例中,基于控制板的能力以及需要支持的进程数目,OSPF应分布到多个控制板。
[0052]此外,线卡将维持具有“套接字-接口”关系的‘会话表’。当OSPF在接口上启用时,将根据接口来创建套接字。此套接字-接口映射将更新到所有线卡。线卡应将传入包发送到相应控制板。
[0053]具体而言,所述线卡可以进一步包括:套接字创建单元、关系更新单元,以及信息发送单元。其中所述套接字创建单元用于当OSPF在接口上启用时,根据所述接口来创建套接字;所述关系更新单元用于将套接字与接口的关系更新到所有线卡;所述信息发送单元用于将所述包发送到对应的控制板。
[0054]在本发明的一项实施例中,包流可以改变。例如,对于来自对等体的传入包,线卡将从外部接收所述包。通过查看会话表,所述线卡将所述包分派给对应的套接字,而且所述包将从所述套接字到达对应的0SPF。
[0055]此外,对传出包的处理将会是正常处理,正如针对单个控制平面那样。每个控制板将包(LSA)发送给对等体,并且彼此独立地与其他控制板作用,同时将所述包从中发送出来。
[0056]在本发明的另一项实施例中,处理路由可以改变。图5为处理路由的示意图,如图5所示,控制板中的每个OSPF进程将独立地计算路由并且更新到RM。
[0057]此外,RM将所述路由重新分发给所有OSPF进程(如同它们都是RPA —样)。每个OSPF进程应通知RM其之前存在。
[0058]在本发明的另一项实施例中,系统管理平面(SMP)命令处理可以改变。OSPF命令处理需要针对不同控制平面上的地址多进程来改变。
[0059]在此实施例中,网络系统可以进一步包括系统管理平面(SMP)。所述SMP用于发送SMP命令;其中如果所述SMP命令是全局SMP命令,则所述SMP命令分派给所有控制板,而如果所述SMP命令是进程特有SMP命令,则所述SMP命令分派给对应的控制板。
[0060]此外,所述控制板进一步用于在现有OSPF进程无法进行处理的情况下,基于负载来创建新的OSPF进程。
[0061]图6为SMP命令处理的示意图,如图6所示,SMP模块需要与OSPF进程和控制板建立关系。所有的全局命令都将分派给所有0SPF。而进程特有命令将分派给相应0SPF。
[0062]在此实施例中,当用户对新进程进行配置时,如果现有OSPF无法进行处理,则将基于负载创建出新的OSPF进程
[0063]从上述实施例中可以看出,本发明提供网络系统来支持大量OSPF进程,方式是将OSPF进程分布到不同控制平面。大量OSPF进程可以得到支持,从而在PE-CE情景下,可以提高可扩展性和性能。
[0064]实施例2
[0065]本发明的实施例进一步提供一种用于支持大量OSPF进程的方法。此实施例对应于上述实施例中的装置,并且相同内容将不再予以描述。[0066]图7为本发明的一项实施例的方法的流程图。如图7所示,所述方法包括:
[0067]步骤701,线卡从外部接收包,并且基于会话表而将所述包分派给对应的OSPF进程;
[0068]步骤702,控制板接收由所述线卡分派的所述包,并且执行OSPF处理,其中大量的OSPF进程分布到多个控制板。
[0069]在此实施例中,基于OSPF进程的数目,所分布的OSPF将跨过多个控制平面。大量OSPF进程可以得到支持,从而在PE-CE情景下,可以提高可扩展性和性能。
[0070]在本发明的一项实施例中,包流可以改变。图8为本发明的另一项实施例的方法的流程图。如图8所示,所述方法包括:
[0071]步骤801,线卡从外部接收包,并且基于会话表而将所述包分派给对应的OSPF进程;
[0072]步骤802,控制板接收由所述线卡分派的所述包,并且执行OSPF处理,其中大量的OSPF进程分布到多个控制板。
[0073]如图8所示,所述方法可以进一步包括:
[0074]步骤803,中央路由管理器接收更新的路由信息,并且将所述路由信息重新分发给所有控制板;其中所述路由信息是由所述控制板独立计算和发送的。
[0075]在此实施例中,具有套接字与接口的关系的会话表存储在每个线卡中,而且所述线卡通过查看所述会话表来将包分派给对应的套接字,因而所述包通过对应的套接字而到达对应的控制板。
[0076]在此实施例中,步骤802可以进一步包括:当OSPF在接口上启用时,根据所述接口来创建套接字;将套接字与接口的关系更新到所有线卡;以及将所述包发送到对应的控制板。
[0077]在本发明的另一项实施例中,处理路由可以改变。控制板中的每个OSPF进程都将独立计算路由并且更新到RM。RM将所述路由重新分发给所有OSPF进程(如同它们都是RPA一样)。每个OSPF进程应通知RM其之前存在。
[0078]在本发明的另一项实施例中,SMP命令处理可以改变。OSPF命令处理需要针对不同控制平面上的地址多进程来改变。
[0079]图9为本发明的另一项实施例的方法的流程图。如图9所示,所述方法包括:
[0080]步骤901,线卡从外部接收包,并且基于会话表而将所述包分派给对应的OSPF进程;
[0081]步骤902,控制板接收由所述线卡分派的所述包,并且执行OSPF处理,其中大量的OSPF进程分布到多个控制板。
[0082]如图9所示,所述方法可以进一步包括:
[0083]步骤903,SMP模块发送SMP命令;其中如果所述SMP命令是全局SMP命令,则所述SMP命令分派给所有控制板,而如果所述SMP命令是进程特有SMP命令,则所述SMP命令分派给对应的控制板。
[0084]如图9所示,所述方法可以进一步包括:
[0085]步骤904,控制板在现有OSPF进程无法进行处理的情况下,基于负载来创建新的OSPF进程。[0086]从上述实施例中可以看出,本发明提供网络系统来支持大量OSPF进程,方式是将OSPF进程分布到不同控制平面。大量OSPF进程可以得到支持,从而在PE-CE情景下,可以提闻可扩展性和性能。
[0087]本发明的实施例进一步提供一种计算机可读程序,其中当在网络系统中执行所述程序时,所述程序使得计算机能够执行用于支持大量OSPF进程的通信方法。
[0088]本发明的实施例进一步提供一种存储有计算机可读程序的存储介质,其中所述计算机可读程序使得计算机能够执行用于支持大量OSPF进程的通信方法。
[0089]应理解,本发明的各部分可以由硬件、软件、固件或其组合来实施。在上述实施例中,多个步骤或方法可以由存储在存储器中的软件或固件来实现,并且由合适的指令执行系统来执行。例如,如果由硬件来实现,那么可以像在另一实施例中一样由所属领域已知的以下技术中的任一技术或其组合来实现:具有逻辑门电路的用于实现数据信号的逻辑功能的离散逻辑电路、具有适当的组合逻辑门电路的专用集成电路、可编程门阵列(PGA),以及现场可编程门阵列(FPGA)等等。
[0090]流程图中的描述或块或者采用其他形式的任何进程或方法应被理解成表明包括一个或多个模块、片段或部分,以用于实现特定逻辑功能或进程中步骤的可执行指令的代码,而且本发明的优选实施例的范围包括其他实施方案,其中这些功能可以采用与所示或所述那些不同的方式来执行,包括根据相关功能以基本上同步的方式或以相反的顺序来执行这些功能,本发明相关领域的技术人员应理解上述内容。
[0091]例如,流程图中图示或本文以其他方式描述的逻辑和/或步骤应被理解为用于实现逻辑功能的可执行指令的顺序表,它可以在任何计算机可读媒体中实施,以供指令执行系统、装置或设备(例如,包括计算机的系统、包括处理器的系统,或能够从指令执行系统、装置或设备中提取指令并执行这些指令的其他系统)使用,或者与指令执行系统、装置或设备结合使用。
[0092]上述文字描述和附图示出了本发明的各种特征。应理解,所属领域的技术人员可以准备合适的计算机代码,以执行上文所述且附图所示的每个步骤和进程。还应理解,所有的终端、计算机、服务器以及网络可以是任何类型的,并且可以根据本发明来准备计算机代码,以通过使用相应设备来实施本发明。
[0093]本文中揭示了本发明的特定实施例。所属领域的技术人员将容易认识到,本发明可以应用于其他环境。实际上,存在许多实施例和实施方案。所附权利要求书并非意图将本发明的范围限于上述特定实施例。此外,任何对“用于……的装置”的引用都是在解释装置加功能,以描述元件和权利要求,而且并不希望将任何未引用“用于……的装置”的元件理解为装置加功能的元件,即使权利要求中包括词语“装置”也是如此。
[0094]虽然已经示出了一项或多项特定的优选实施例并且已经描述了本发明,但很明显,所属领域的技术人员在阅读并理解上述描述和附图后可以想到等效修改和变型。特别是对于由上述元件(部分、组件、设备以及组成等等)执行的各种功能而言,除非另有规定,否则希望描述这些元件的术语(包括对“装置”的引用)对应于执行这些元件的特定功能的任何元件(即,功能等效物),即使该元件不同于执行本发明就相关结构所说明的一项或多项示例性实施例的功能的元件。此外,尽管仅参考所述实施例中的一项或多项来描述本发明的特定特征,但是此类特征可以根据需要并鉴于任何给定或特定应用的有利方面而与其他实施例的一个或多个其他特征相结合。
【权利要求】
1.一种用于支持大量OSPF (开放式最短路径优先)进程的网络系统,所述网络系统包括: 一个或多个线卡,用于从外部接收包,并且基于会话表而将所述包分派给对应的OSPF进程; 两个或多个控制板,用于接收由所述线卡分派的所述包,并且执行OSPF处理,其中大量的OSPF进程分布到所述两个或多个控制板。
2.根据权利要求1所述的网络系统,其中所述网络系统进一步包括: 中央路由管理器,用于接收更新的路由信息,并且将所述路由信息重新分发给所有控制板;其中所述路由信息是由所述控制板独立计算和发送的。
3.根据权利要求1所述的网络系统,其中具有套接字与接口的关系的所述会话表存储在每个线卡中; 而且所述线卡通过查看所述会话表来将所述包分派给对应的套接字,因而所述包通过对应的套接字而到达对应的控制板。
4.根据权利要求1所述的网络系统,其中所述线卡进一步包括: 套接字创建单元,用于当OSPF在接口上启用时,根据所述接口来创建套接字; 关系更新单元,用于将所述套接字与接口的关系更新到所有线卡; 信息发送单元,用于将所述包发送到对应的控制板。
5.根据权利要求1所述的网络系统,其中所述网络系统进一步包括: 系统管理平面,用于发送系统管理平面(SMP)命令;其中如果所述SMP命令是全局SMP命令,则所述SMP命令分派给所有控制板,而如果所述SMP命令是进程特有SMP命令,则所述SMP命令分派给对应的控制板。
6.根据权利要求5所述的网络系统,其中所述控制板进一步用于在现有OSPF进程无法进行处理的情况下,基于负载来创建新的OSPF进程。
7.一种用于支持大量OSPF (开放式最短路径优先)进程的方法,所述方法包括: 由线卡中的一者从外部接收包,并且基于会话表而将所述包分派给对应的OSPF进程; 由控制板中的一者接收由所述线卡分派的所述包,并且执行OSPF处理,其中大量的OSPF进程分布到多个控制板。
8.根据权利要求7所述的方法,其中所述方法进一步包括: 由中央路由管理器接收更新的路由信息,并且将所述路由信息重新分发给所有控制板;其中所述路由信息是由所述控制板独立计算和发送的。
9.根据权利要求7所述的方法,其中具有套接字与接口的关系的所述会话表存储在每个线卡中; 而且所述线卡通过查看所述会话表来将所述包分派给对应的套接字,因而所述包通过对应的套接字而到达对应的控制板。
10.根据权利要求7所述的方法,其中基于OSPF进程的数目来分派所述包进一步包括: 当OSPF在接口上启用时,根据所述接口来创建套接字; 将所述套接字与接口的关系更新到所有线卡; 将所述包发送到对应的控制板。
11.根据权利要求7所述的方法,其中所述方法进一步包括: 由系统管理平面来发送系统管理平面(SMP)命令;其中如果所述SMP命令是全局SMP命令,则所述SMP命令分派给所有控制板,而如果所述SMP命令是进程特有SMP命令,则所述SMP命令分派给对应的控制板。
12.根据权利要求11所述的方法,其中所述方法进一步包括: 在现有OSPF无法进行处理的情况下,基于负载来创建新的OSPF进程。
【文档编号】H04L12/751GK103491013SQ201310330207
【公开日】2014年1月1日 申请日期:2013年7月31日 优先权日:2012年9月28日
【发明者】凯沙瓦克, 拉维, 拉介什·谢蒂 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1