虚拟化设备中转发表项的编排方法与流程

文档序号:12132000阅读:252来源:国知局
虚拟化设备中转发表项的编排方法与流程

本发明涉及网络通信技术领域,尤其涉及网络功能虚拟化技术领域,具体是指一种虚拟化设备中转发表项的编排方法。



背景技术:

在NFV的实际应用环境中,各个VNF都是虚拟化的设备,设备对数据包的转发需要大量不同类型的表项。这些转发使用的表项来自于各个控制协议,为了提高设备的数据包转发效率,一般设备在架构上都会采用分布式架构:把各个控制协议部件和专门用着转发的部件分离开来,这种分离的方式可以是物理上或者逻辑上的。如图1所示,常见的设备系统中包含一个控制面CP和多个转发面DP1,DP2…DPn。

各个DP上的转发业务繁多,相应的也需要对应的转发表项。在转发面VNF中转发一个业务包的时候,会根据具体业务的特点,依次查询一次或者多次表,如果这些表没有组织好,或者缺失,就会造成丢包或者转发效率低下等问题。

因此,作为控制面VNF如何控制管理转发表项,使之在各个转发面VNF中得以合理准确的编排,是NFV实际应用中的一个难题。

已有的公开专利暂时没有看到这方面的解决方案。



技术实现要素:

本发明的目的是克服了上述现有技术的缺点,提供了一种能够实现合理控制管理转发表项,使之在各个转发面中得以准确编排的虚拟化设备中转发表项的编排方法。

为了实现上述目的,本发明的具有如下构成:

该虚拟化设备中转发表项的编排方法,其特征在于,所述的方法包括以下步骤:

(1)汇集控制面的所有表项,对所述的表项进行分类并获取关键字;

(2)将从表项进行整合为主表项,所述的主表项将转发至转发面;

(3)判断所述的从表项是否发生变化,如果是,则将该变化的从表项对应的主表项重新整合下发;,否则,继续步骤(4);

(4)判断所述的从表项是否被删除,如果是,则继续步骤(5);,否则,继续步骤(3);

(5)判断该被删除的从表项对应的主表项是否可以部分整合下发,如果是,则整合下发至转发面,否则,继续步骤(6);

(6)解决该从表项的依赖关系,将与该从表项存在依赖关系表项发送至转发面。

较佳地,所述的步骤(2)包括以下步骤:

(2-1)根据关键字查找对应的主表项;

(2-2)将从表项中的字段合并至对应的主表项;

(2-3)判断该主表项是否整合完毕,如果是,则将该主表项转发至转发面,否则,继续步骤(2-1)。

更佳地,所述的步骤(2-1)还包括以下步骤:

(2-1-1)将实际需要的表项类型添加至该主表项的描述中;

(2-2-2)根据该主表项的描述中的表项类型查找关键字对应的从表项。

较佳地,所述的步骤(6)包括以下步骤:

(6-1)判断该从表项是否依赖其它表项,如果是,则继续步骤(6-2),否则,继续步骤(6-4);

(6-2)对该从表项所依赖的表项逐一进行解依赖;

(6-3)判断该从表项所依赖的表项是否都处于可用状态,如果是,继续步骤(6-4),否则,继续步骤(6-2)

(6-4)将该从表项发送至转发面。

更佳地,所述的步骤(6-2)还包括以下步骤:

(6-2-1)根据该从表项的关键字查找被依赖的表项;

(6-2-2)判断所述的被依赖的表项是否存在,如果是,则继续步骤(6-2-3),否则,创建一个dummy状态的被依赖的表项,继续步骤(6-3);

(6-2-3)判断被依赖的表项是否可用,如果是,则继续步骤(6-3),否则,继续步骤(6-2-4);

(6-2-4)当被依赖的表项状态由可用状态变为不可用状态或dummy状态时,或当被依赖的表项状态由可不可用状态或dummy状态变为用状态时,通知依赖链上的所有依赖的表项,触发它们的依赖关系处理流程;

更进一步地,所述的步骤(6-2)还包括以下步骤:

(6-2-5)当被依赖的表项需要被删除时,保留该表项,并将该表项的状态改为dummy状态。

采用了该发明中的虚拟化设备中转发表项的编排方法,通过三种模式的协作,将转发表项分类整合,对缺失以及依赖表项进行处理,实现了合理控制管理转发表项,使之在各个转发面中得以准确编排,具有广泛的应用范围。

附图说明

图1为现有技术的表项转发示意图。

图2为本发明的虚拟化设备中转发表项的编排方法的整合模式的原理图。

图3为本发明的虚拟化设备中转发表项的编排方法的依赖模式的原理图。

图4为本发明的虚拟化设备中转发表项的编排方法的混合模式的原理图。

图5为本发明的虚拟化设备中转发表项的编排方法的整合模式的示意图。

图6为本发明的虚拟化设备中转发表项的编排方法的依赖模式的示意图。

图7为本发明的虚拟化设备中转发表项的编排方法的混合模式的示意图。

图8为本发明的虚拟化设备中转发表项的编排方法的控制面和转发面的示意图。

图9为本发明的虚拟化设备中转发表项的编排方法的整合处理流程的示意图。

图10为本发明的虚拟化设备中转发表项的编排方法的依赖处理流程的示意图。

图11为本发明的虚拟化设备中转发表项的编排方法的被依赖处理流程的示意图。

具体实施方式

为了能够更清楚地描述本发明的技术内容,下面结合具体实施例来进行进一步的描述。

该虚拟化设备中转发表项的编排方法,其特征在于,所述的方法包括以下步骤:

(1)汇集控制面的所有表项,对所述的表项进行分类并获取关键字;

(2)将从表项进行整合为主表项,所述的主表项将转发至转发面;

(3)判断所述的从表项是否发生变化,如果是,则将该变化的从表项对应的主表项重新整合下发;,否则,继续步骤(4);

(4)判断所述的从表项是否被删除,如果是,则继续步骤(5);,否则,继续步骤(3);

(5)判断该被删除的从表项对应的主表项是否可以部分整合下发,如果是,则整合下发至转发面,否则,继续步骤(6);

(6)解决该从表项的依赖关系,将与该从表项存在依赖关系表项发送至转发面。

在一种较佳的实施方式中,所述的步骤(2)包括以下步骤:

(2-1)根据关键字查找对应的主表项;

(2-2)将从表项中的字段合并至对应的主表项;

(2-3)判断该主表项是否整合完毕,如果是,则将该主表项转发至转发面,否则,继续步骤(2-1)。

在一种更佳的实施方式中,所述的步骤(2-1)还包括以下步骤:

(2-1-1)将实际需要的表项类型添加至该主表项的描述中;

(2-2-2)根据该主表项的描述中的表项类型查找关键字对应的从表项。

在一种较佳的实施方式中,所述的步骤(6)包括以下步骤:

(6-1)判断该从表项是否依赖其它表项,如果是,则继续步骤(6-2),否则,继续步骤(6-4);

(6-2)对该从表项所依赖的表项逐一进行解依赖;

(6-3)判断该从表项所依赖的表项是否都处于可用状态,如果是,继续步骤(6-4),否则,继续步骤(6-2)

(6-4)将该从表项发送至转发面。

在一种更佳的实施方式中,所述的步骤(6-2)还包括以下步骤:

(6-2-1)根据该从表项的关键字查找被依赖的表项;

(6-2-2)判断所述的被依赖的表项是否存在,如果是,则继续步骤(6-2-3),否则,创建一个dummy状态的被依赖的表项,继续步骤(6-3);

(6-2-3)判断被依赖的表项是否可用,如果是,则继续步骤(6-3),否则,继续步骤(6-2-4);

(6-2-4)当被依赖的表项状态由可用状态变为不可用状态或dummy状态时,或当被依赖的表项状态由可不可用状态或dummy状态变为用状态时,通知依赖链上的所有依赖的表项,触发它们的依赖关系处理流程;

在一种更进一步的实施方式中,所述的步骤(6-2)还包括以下步骤:

(6-2-5)当被依赖的表项需要被删除时,保留该表项,并将该表项的状态改为dummy状态。

在实际应用中,首先根据转发面对控制面表项的需求,我们抽象出以下几种模型:

1)整合模式:

控制面有丰富的各个控制协议,各种控制协议会独立产生相应的表项。转发面所需要的对某一个业务数据包的转发,为了高效的对这种业务进行转发,避免多次查表,把这项业务所需要的表项在转发面中进行集中聚焦在一种表项上是一种直接的方式。

如图2所示,业务的转发表项来自于控制面的多种不同的表项,我们要解决的问题有两个:

1、在表1,表2…表n准备好了整合完毕后,才对其进行转发表项的下发

2、当表1,表2…表n中的某一个有变更时,变更能及时的体现在转发表项上

这种模型适用于控制面表项源和转发面表项多对一的情况,是一个通用的模型,本身包含了一对一的情况。

2)依赖模式:

某个业务的转发需要查询多个表,于是,在转发面VNF查询最后一个表项之前,必须保证前面的几种表项都要存在,才能够保证该项业务的数据包能够顺利进行转发。

如图3所示,某一项业务的包转发,需要从查找n次表,才能最终转发出去,从转发表1,转发表2…转发表n,每个转发表项都对应于控制面的表,于是,在对表项进行编排的时候,有了这种模式:转发表项2依赖于转发表项1,转发表项n以来于转发表项n-1。

这种模型适用于转发面VNF在转发包业务中需要多次查表的情况,只有所有表对准备好,才能进行转发。

3)混合模式

这种模型是综合整合和依赖需要的一种新的模型:某一种业务转发需要进行多次查表,其中某一步的转发表是由控制面VNF的几种表项整合而来,如图4所示。

该业务的转发需要依次查询转发表1和转发表2,其中转发表1是由控制面VNF中的表1和表2进行整合而来。

在一个具体的实施例中,对于实际的业务,整合、依赖、混合模型的选择,是依赖业务转发的方式来决定的,可以根据业务模块的具体实现来进行选择。下面举例进行说明。

1)整合模式

如图5所示,在做MPLS转发时,为了实现高效的转发,最终的转发表会包含路由和需要封的标签这两个部分,在业务实现的时候,路由表项和FEC标签表项是分开实现的,在最终转发表的时候只有一个,这个就是整合模型。

2)依赖模式

如图6所示,在做报文路由转发时,先查路由表,再查接口表。在这里,接口表示依赖于路由表的,所以表项在进行表项编排的时候,要确保某一个路由表项对应的接口表项存在时,才会向转发面下发路由表,以确保转发表项的有效性。

3)混合模式

如图7所示,混合模式对应于稍微复杂的转发方式。在这里,最终的转发流程,既有依赖关系,各个具体的转发表的形成也有可能是从更为小的表项整合而来。

依然以上述MPLS报文转发为例,在其中,最终的报文转发还要依赖于接口表。我们的表项编排方式要确保整合和依赖都处理好了,才把MPLS转发表下发到转发平面。

上文对控制面VNF中的表项到转发面VNF中表项的关系抽象出了三种模型,之后,针对这一模型,提出具体的解决方案,解决NFV应用中转发表项编排问题。

在另一个具体的实施例中,如图8所示,引入表项编排部件,在控制面VNF和转发面VNF之间,它起到承上启下的作用,用于对各个控制协议生成的表项进行编排,以满足转发面VNF的转发需求。

在表项编排部件中,汇集所有控制面VNF的所有表项,表分为多种类型,每种类型的所有条目以树形组织,每个都有独一无二的关键字信息,构成该类型表项的集合。这样的组织,一方面分开不同类型的表项,另一方面,可以根据所需要的关键字,快速找到对应的条目。

在表项整合的时候,会分为主表项和从表项,主表项有一个,从表项有多个。整合所要做的,就是把所有可以整合的从表项条目整合到主表项上,然后下发给转发面。主表项上会描述该类型的表项需要整合哪几种从类型的表项,在整合时,主表项依据的是构建对应的各个从表项所需要的关键字来找到所需要整合的从表项,并从找到的从表项的条目中取得需要下发的字段,填入主表项条目中,组成一个转发面VNF需要的实际转发条目,并通过消息传递的方式下给转发面VNF。

在一个主表项整合多个从表项的情况下,如果从表项不全,根据业务的特点,有可能这时候也可以把该表项下发给转发面VNF,这种情况,我们称之为部分整合,这个过程如图9所示。

被整合的是各个从表项,它们除掉被动地接受被主表项整合外,还有以下两种情况需要处理:

1、从表项的表项条目内容发生变化后,要通知出发主表项去进行重新整合下发

2、从表项的表项条目删除后,要通知出发主表项去重新进行整合下发,这时候分为两种情况:

主表项可以部分整合下发,在缺少该从表项的情况下依然可以整合下发给转发面VNF;

主表项由于缺少该从表项,而该转发业务要求不能缺少该从表项的相关字段,这时候要先向转发面VNF下删除,然后转为依赖处理。

为了管理好依赖关系,表项整合部件把表项条目分为下面几种状态:

可用状态:该表项状态正常,依赖关系已经解决,可以正常进行下发

不可用状态:该表项还依赖于其它表项,所依赖的表项处于不可用状态或者dummy状态,此时不能下发

dummy状态:当一个表项所依赖的表项不存在时,创建的假的表项节点,也不可以进行下发

但从控制面VNF收到一个表项条目时,需要根据该表项所依赖的各个其它表项,逐一解决依赖关系。其过程如下:根据查找被依赖的表项所需要的关键字来进行查找,如果被依赖的表项不存在,则创建一个dummy状态的被依赖表项,如果被依赖的表项存在,但是处于不可用状态,上面这两种情况,都会结束依赖关系的解决。如果被依赖的表项存在并且处于可用状态,则继续这个过程。最终,在依赖关系解决结束时,如果所有被依赖的表项都处于可用状态,则置该表项状态也处于可用状态,并触发下发转发面VNF,否则,则置不可用状态,不能立即进行下发,并把该表项条目挂到第一个未解决依赖关系的被依赖表项下面(依赖关系链见下面的被依赖处理部分)。

每当该表项内容发生变化时,都要重新做上面的依赖关系处理。当从控制面VNF收到该表项的删除时,如果之前有下发过该表项,则要向控制面VNF下发删除表项的操作,如图10所示。

一个条目被别的条目所依赖,依赖和被依赖的条目可以是同种类型的,也可以是异种类型的。这个在表项条目上,使用依赖链来管理表示,如图11所示。该表项被一系列其它类型的表项所依赖。这个依赖链的构建,是在前面依赖处理部分构建的。

被依赖的处理逻辑为:

当被依赖的表项状态由不可用状态或者dummy状态转为可用状态时,需要通知依赖链上的所有依赖表项,触发它们的依赖关系处理流程;

当被依赖的表项状态由可用状态转为不可用状态或者dummy状态时,同样需要通知依赖链上的所有依赖表项,触发它们的依赖关系处理流程;

当被依赖的表项被删除时,不立即删除它,而是置dummy状态,用来进行依赖它的表项的依赖关系解决。

采用了该发明中的虚拟化设备中转发表项的编排方法,通过三种模式的协作,将转发表项分类整合,对缺失以及依赖表项进行处理,实现了合理控制管理转发表项,使之在各个转发面中得以准确编排,具有广泛的应用范围。

在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1