一种异构网络平台协同处理系统和方法转让专利

申请号 : CN202210815179.0

文献号 : CN115277604B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 董永吉李子勇李军飞胡宇翔张风雨王钰袁征马港亮谢记超

申请人 : 中国人民解放军战略支援部队信息工程大学

摘要 :

本发明一种异构网络平台协同处理系统和方法。该系统包括前端处理单元和后端处理单元;所述前端处理单元,用于接收由外部端口传入的数据包,对所述数据包进行模态分类,分为无状态转发的数据包和有状态转发的数据包;采用无状态转发流水线对无状态转发的数据包进行处理;以及对无状态转发流水线的处理结果和有状态转发流水线的处理结果进行汇聚并转发;所述后端处理单元,用于采用有状态转发流水线对有状态转发的数据包进行处理,并将处理结果反馈至前端处理单元。本发明可以根据多样化的网络需求,灵活切换数据包的有状态和无状态转发处理,以提供不同场景下差异化的网络性能保障,大大提高了转发效率。

权利要求 :

1.一种异构网络平台协同处理系统,其特征在于,包括前端处理单元和后端处理单元;

所述前端处理单元,用于接收由外部端口传入的数据包,对所述数据包进行模态分类,分为无状态转发的数据包和有状态转发的数据包;采用无状态转发流水线对无状态转发的数据包进行处理;以及对无状态转发流水线的处理结果和有状态转发流水线的处理结果进行汇聚并转发;

所述后端处理单元,用于采用有状态转发流水线对有状态转发的数据包进行处理,并将处理结果反馈至前端处理单元;

所述前端处理单元包括第一报文解析模块、模态分类模块、无状态转发流水线模块、第一报文协议封装模块、内部格式封装模块、内部格式解封装模块和汇聚‑转发报文模块;

所述第一报文解析模块,用于在接收到由外部端口传入的数据包后,对所述数据包进行报文解析;

所述模态分类模块,用于对所述第一报文解析模块输出的报文进行模态分类,分为无状态转发的数据包和有状态转发的数据包;

所述无状态转发流水线模块,用于对所述模态分类模块输出的无状态转发的数据包进行处理;

所述第一报文协议封装模块,用于对所述无状态转发流水线模块输出的处理结果进行封装;

所述内部格式封装模块,用于将输入端口号和所述有状态转发的数据包按照设定的内部封装格式进行封装,并将封装后的数据包发送至所述后端处理单元;

所述内部格式解封装模块,用于接收来自后端处理单元的数据包,并对所述数据包按照设定的内部封装格式进行解封装,得到输出端口号和解封后的数据包;

所述汇聚‑转发报文模块,用于对第一报文协议封装模块输出的数据包与所述内部格式解封装模块输出的数据包进行汇聚并转发至所述输出端口号对应的外部端口。

2.根据权利要求1所述的一种异构网络平台协同处理系统,其特征在于,所述后端处理单元包括第二报文解析模块、有状态转发流水线模块和第二报文协议封装模块;

所述第二报文解析模块,用于接收来自前端处理单元的数据包,并对所述数据包进行报文解析得到有状态转发的数据包;

所述有状态转发流水线模块,用于对所述第二报文解析模块输出的有状态转发的数据包进行处理;

所述第二报文协议封装模块,用于将输出端口号和所述有状态转发流水线模块输出的处理结果进行封装,并将封装后的数据包发送至前端处理单元。

3.根据权利要求1所述的一种异构网络平台协同处理系统,其特征在于,所述无状态转发的数据包包括传统IPv4/v6数据包、身份标识模态的数据包和地理空间标识模态的数据包。

4.根据权利要求1所述的一种异构网络平台协同处理系统,其特征在于,所述有状态转发的数据包包括SEANET模态的数据包和NDN模态的数据包。

5.根据权利要求1所述的一种异构网络平台协同处理系统,其特征在于,所述内部封装格式采用vlan封装格式。

6.一种异构网络平台协同处理方法,其特征在于,应用于如权利要求1至5任一所述的一种异构网络平台协同处理系统,所述方法包括:步骤1:前端处理单元接收由外部端口传入的数据包,对所述数据包进行模态分类,分为无状态转发的数据包和有状态转发的数据包;

步骤2:前端处理单元采用无状态转发流水线对无状态转发的数据包进行处理;后端处理单元采用有状态转发流水线对有状态转发的数据包进行处理;

步骤3:前端处理单元对无状态转发流水线的处理结果和有状态转发流水线的处理结果进行汇聚并转发。

7.根据权利要求6所述的一种异构网络平台协同处理方法,其特征在于,步骤1具体包括:前端处理单元在接收到由外部端口传入的数据包后,对所述数据包进行报文解析;然后对解析后的报文进行模态分类,分为无状态转发的数据包和有状态转发的数据包。

8.根据权利要求6所述的一种异构网络平台协同处理方法,其特征在于, 步骤2中,在后端处理单元采用有状态转发流水线对有状态转发的数据包进行处理之前,还包括:前端处理单元将输入端口号和所述有状态转发的数据包按照设定的内部封装格式进行封装,并将封装后的数据包发送至所述后端处理单元;

后端处理单元接收来自前端处理单元的数据包,并对所述数据包进行报文解析得到有状态转发的数据包;

对应地,在后端处理单元采用有状态转发流水线对有状态转发的数据包进行处理之后,还包括:将输出端口号和有状态转发流水线的处理结果进行封装,并将封装后的数据包发送至前端处理单元。

9.根据权利要求8所述的一种异构网络平台协同处理方法,其特征在于,步骤3具体包括:前端处理单元对无状态转发流水线的处理结果进行封装,记作第一数据包;

前端处理单元接收来自后端处理单元的数据包,然后对所述数据包按照设定的内部封装格式进行解封装,得到输出端口号和解封后的数据包,记作第二数据包;

前端处理单元对所述第一数据包和所述第二数据包进行汇聚并转发至所述输出端口号对应的外部端口。

说明书 :

一种异构网络平台协同处理系统和方法

技术领域

[0001] 本发明涉及计算机网络技术领域,尤其涉及一种异构网络平台协同处理系统和方法。

背景技术

[0002] 随着网络技术的深入发展和新兴业务的大量涌现,如云计算、大数据、物联网等,当前互联网在面对新兴网络业务发展需求时暴露出越来越多的问题,如网络层协议扩展性不强、单一的转发模式,导致网络在服务质量、移动性支持、安全管理等性能表现不佳。
[0003] 多样化的应用需求如移动网络服务、内容分发服务对网络转发提出了更高的要求,这些新兴的网络应用通常包括大量的网络状态信息,传统单一的基于五元组(如源/目的MAC地址、源/目的IP地址、端口号等)查表转发模式难以实时根据网络状态信息执行多样化的转发动作。随着软件定义网络和可编程数据平面的深入发展,网络运营人员可以灵活定制新的网络协议、实施多样化的管理配置策略以及按需定制网络设备的数据处理逻辑,网络的可编程得到大大加强。然而,现在数据平面简单的“匹配+转发”的模式对于支持更加复杂的网络功能带来了较大的局限性,仅能满足部分网络应用的需求,不能在数据平面维护网络、流或数据包的状态信息,难以实现对网络状态信息的处理。

发明内容

[0004] 针对现有的数据平面提供的“匹配+转发”简单模式无法实现对网络状态信息进行处理的问题,本发明提供一种异构网络平台协同处理系统和方法。
[0005] 一方面,本发明提供一种异构网络平台协同处理系统,包括前端处理单元和后端处理单元;
[0006] 所述前端处理单元,用于接收由外部端口传入的数据包,对所述数据包进行模态分类,分为无状态转发的数据包和有状态转发的数据包;采用无状态转发流水线对无状态转发的数据包进行处理;以及对无状态转发流水线的处理结果和有状态转发流水线的处理结果进行汇聚并转发;
[0007] 所述后端处理单元,用于采用有状态转发流水线对有状态转发的数据包进行处理,并将处理结果反馈至前端处理单元。
[0008] 进一步地,所述前端处理单元包括第一报文解析模块、模态分类模块、无状态转发流水线模块、第一报文协议封装模块、内部格式封装模块、内部格式解封装模块和汇聚‑转发报文模块;
[0009] 所述第一报文解析模块,用于在接收到由外部端口传入的数据包后,对所述数据包进行报文解析;
[0010] 所述模态分类模块,用于对所述第一报文解析模块输出的报文进行模态分类,分为无状态转发的数据包和有状态转发的数据包;
[0011] 所述无状态转发流水线模块,用于对所述模态分类模块输出的无状态转发的数据包进行处理;
[0012] 所述第一报文协议封装模块,用于对所述无状态转发流水线模块输出的处理结果进行封装;
[0013] 所述内部格式封装模块,用于将输入端口号和所述有状态转发的数据包按照设定的内部封装格式进行封装,并将封装后的数据包发送至所述后端处理单元;
[0014] 所述内部格式解封装模块,用于接收来自后端处理单元的数据包,并对所述数据包按照设定的内部封装格式进行解封装,得到输出端口号和解封后的数据包;
[0015] 所述汇聚‑转发报文模块,用于对第一报文协议封装模块输出的数据包与所述内部格式解封装模块输出的数据包进行汇聚并转发至所述输出端口号对应的外部端口。
[0016] 进一步地,所述后端处理单元包括第二报文解析模块、有状态转发流水线模块和第二报文协议封装模块;
[0017] 所述第二报文解析模块,用于接收来自前端处理单元的数据包,并对所述数据包进行报文解析得到有状态转发的数据包;
[0018] 所述有状态转发流水线模块,用于对所述第二报文解析模块输出的有状态转发的数据包进行处理;
[0019] 所述第二报文协议封装模块,用于将输出端口号和所述有状态转发流水线模块输出的处理结果进行封装,并将封装后的数据包发送至前端处理单元。
[0020] 进一步地,所述无状态转发的数据包包括传统IPv4/v6数据包、身份标识模态的数据包和地理空间标识模态的数据包。
[0021] 进一步地,所述有状态转发的数据包包括SEANET模态的数据包和NDN模态的数据包。
[0022] 进一步地,所述内部封装格式采用vlan封装格式。
[0023] 另一方面,本发明提供一种异构网络平台协同处理方法,应用于上述的一种异构网络平台协同处理系统,所述方法包括:
[0024] 步骤1:前端处理单元接收由外部端口传入的数据包,对所述数据包进行模态分类,分为无状态转发的数据包和有状态转发的数据包;
[0025] 步骤2:前端处理单元采用无状态转发流水线对无状态转发的数据包进行处理;后端处理单元采用有状态转发流水线对有状态转发的数据包进行处理;
[0026] 步骤3:前端处理单元对无状态转发流水线的处理结果和有状态转发流水线的处理结果进行汇聚并转发。
[0027] 进一步地,步骤1具体包括:
[0028] 前端处理单元在接收到由外部端口传入的数据包后,对所述数据包进行报文解析;然后对解析后的报文进行模态分类,分为无状态转发的数据包和有状态转发的数据包。
[0029] 进一步地,步骤2中,在后端处理单元采用有状态转发流水线对有状态转发的数据包进行处理之前,还包括:
[0030] 前端处理单元将输入端口号和所述有状态转发的数据包按照设定的内部封装格式进行封装,并将封装后的数据包发送至所述后端处理单元;
[0031] 后端处理单元接收来自前端处理单元的数据包,并对所述数据包进行报文解析得到有状态转发的数据包;
[0032] 对应地,在后端处理单元采用有状态转发流水线对有状态转发的数据包进行处理之后,还包括:
[0033] 将输出端口号和有状态转发流水线的处理结果进行封装,并将封装后的数据包发送至前端处理单元。
[0034] 进一步地,步骤3具体包括:
[0035] 前端处理单元对无状态转发流水线的处理结果进行封装,记作第一数据包;
[0036] 前端处理单元接收来自后端处理单元的数据包,然后对所述数据包按照设定的内部封装格式进行解封装,得到输出端口号和解封后的数据包,记作第二数据包;
[0037] 前端处理单元对所述第一数据包和所述第二数据包进行汇聚并转发至所述输出端口号对应的外部端口。
[0038] 本发明的有益效果:
[0039] 本发明提供的异构网络平台协同处理系统和方法,能根据数据包转发特点将数据包处理流程分为有状态转发和无状态转发,并分别分配给部署在不同异构资源平台上的前端处理单元和后端处理单元;其中,前端处理单元负责接收由外部端口传入的数据包,并执行模态分类功能将带状态转发的数据包或业务转发给后端处理单元,对无状态转发的数据包进行无状态流水线实例处理直接进行转发。后端处理单元接收前端处理单元转发的数据包,执行有状态转发流水线处理,并将处理结果反馈给前端处理单元,由前端处理单元根据处理结果对数据包执行转发。通过这种有状态和无状态转发协同处理,本发明可以根据多样化的网络需求,灵活切换数据包的有状态和无状态转发处理,以提供不同场景下差异化的网络性能保障,大大提高了转发效率。

附图说明

[0040] 图1为本发明实施例提供的一种异构网络平台协同处理系统的结构示意图;
[0041] 图2为本发明实施例提供的一种异构网络平台协同处理方法的流程示意图之一;
[0042] 图3为本发明实施例提供的一种异构网络平台协同处理方法的流程示意图之二;
[0043] 图4为本发明实施例提供的接口格式1的示意图;
[0044] 图5为本发明实施例提供的接口格式2的示意图。

具体实施方式

[0045] 为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0046] 实施例1
[0047] 本发明实施例提供一种异构网络平台协同处理系统,包括前端处理单元和后端处理单元;
[0048] 所述前端处理单元用于接收由外部端口传入的数据包,对所述数据包进行模态分类,分为无状态转发的数据包和有状态转发的数据包;采用无状态转发流水线对无状态转发的数据包进行处理;以及对无状态转发流水线的处理结果和有状态转发流水线的处理结果进行汇聚并转发;所述后端处理单元用于采用有状态转发流水线对有状态转发的数据包进行处理,并将处理结果反馈至前端处理单元。
[0049] 如图1所示,作为一种可实施方式,所述前端处理单元包括第一报文解析模块、模态分类模块、无状态转发流水线模块、第一报文协议封装模块、内部格式封装模块、内部格式解封装模块和汇聚‑转发报文模块;
[0050] 所述第一报文解析模块用于在接收到由外部端口传入的数据包后,对所述数据包进行报文解析;所述模态分类模块用于对所述第一报文解析模块输出的报文进行模态分类,分为无状态转发的数据包和有状态转发的数据包;所述无状态转发流水线模块用于对所述模态分类模块输出的无状态转发的数据包进行处理;所述第一报文协议封装模块用于对所述无状态转发流水线模块输出的处理结果进行封装;所述内部格式封装模块用于将输入端口号和所述有状态转发的数据包按照设定的内部封装格式进行封装,并将封装后的数据包发送至所述后端处理单元;
[0051] 所述内部格式解封装模块用于接收来自后端处理单元的数据包,并对所述数据包按照设定的内部封装格式进行解封装,得到输出端口号和解封后的数据包;所述汇聚‑转发报文模块用于对第一报文协议封装模块输出的数据包与所述内部格式解封装模块输出的数据包进行汇聚并转发至所述输出端口号对应的外部端口。
[0052] 具体地,第一报文解析模块对数据包进行报文解析后,可以提取得到EtherType字段内信息,该字段信息就是用于指示数据包的模态的;因此,模态分类模块根据EtherType字段内信息来区分数据包的模态。
[0053] 本发明实施例中,主要是将数据包分为无状态转发业务和有状态转发业务两种模态的数据包;作为一种可实施方式,所述无状态转发的数据包包括传统IPv4/v6数据包、身份标识模态的数据包和地理空间标识模态的数据包。所述有状态转发的数据包包括SEANET模态的数据包和NDN模态的数据包。
[0054] 需要说明的是,为了清晰前端处理单元和后端处理单元对来自不同外部端口的数据包的处理过程,本发明实施例中对应设置了内部格式封装模块和内部格式解封装模块;其中,在来自外部端口的数据包未经本发明的协同处理系统处理之前,对本发明的协同处理系统而言,该外部端口即为输入端口,对应的,外端端口的端口号是输入端口号,该内部格式封装模块的作用就是将输入端口号和需要发送至后端处理单元处理的业务数据封装在一起后再转发至后端处理单元。同理,在来自外部端口的数据包经过本发明的协同处理系统处理之后,需要将处理后的结果再反馈至该外部端口,此时,对本发明的系统处理系统而言,该外部端口即为输出端口,对应的,外部端口的端口号是输出端口号,该内部格式解封装模块的作用就是将输出端口号提取出来,以便前端处理单元可以汇聚后的处理结果转发至该输出端口号对应的外部端口。
[0055] 如图1所示,作为一种可实施方式,所述后端处理单元包括第二报文解析模块、有状态转发流水线模块和第二报文协议封装模块;
[0056] 所述第二报文解析模块用于接收来自前端处理单元的数据包,并对所述数据包进行报文解析得到有状态转发的数据包;所述有状态转发流水线模块用于对所述第二报文解析模块输出的有状态转发的数据包进行处理;所述第二报文协议封装模块用于将输出端口号和所述有状态转发流水线模块输出的处理结果进行封装,并将封装后的数据包发送至前端处理单元。
[0057] 具体地,以内部封装格式采用vlan封装格式为例,首先第二报文解析模块拆封外部ethernet+vlan封装,解析得到有状态转发的数据包;随后所述有状态转发流水线模块根据业务需要采用有状态转发流水线对数据包进行处理;最后第二报文协议封装模块对处理结果和输出端口号重新封装ethernet+vlan,并将封装后的数据包发送至前端处理单元。
[0058] 本发明提供的一种异构网络平台协同处理系统,所述系统根据数据包转发特点将数据包处理流程分为无状态转发和有状态转发两种方式,并分别将无状态转发和有状态转发过程分别分配给部署在异构网络平台的前端处理单元和后端处理单元。前端处理单元执行模态分类和无状态转发功能,通过模态分类将有状态转发业务(如SEANET、NDN模态)交由后端处理单元,自身采用无状态转发流水线对无状态转发业务(如IPv4/v6、身份标识和地理空间标识模态)进行处理并转发处理结果;后端处理单元接受前端处理单元传送的有状态转发业务,执行有状态转发流水线实例,并将处理结果反馈给前端处理单元,由前端处理单元对数据包进行汇聚并转发。上述系统,基于异构网络平台可以实现根据业务特性进行有状态/无状态转发协同处理,以提供不同场景下差异化的网络性能保障,大大提高了转发效率。
[0059] 实施例2
[0060] 基于上述的一种异构网络平台协同处理系统,如图2所示,本发明实施例还提供一种异构网络平台协同处理方法,包括以下步骤:
[0061] S101:前端处理单元接收由外部端口传入的数据包,对所述数据包进行模态分类,分为无状态转发的数据包和有状态转发的数据包;
[0062] S102:前端处理单元采用无状态转发流水线对无状态转发的数据包进行处理;后端处理单元采用有状态转发流水线对有状态转发的数据包进行处理;
[0063] S103:前端处理单元对无状态转发流水线的处理结果和有状态转发流水线的处理结果进行汇聚并转发。
[0064] 实施例3
[0065] 为了清晰前端处理单元和后端处理单元对来自不同外部端口的数据包的处理过程,在上述实施例2的基础上,如图3所示,本发明实施例主要还设置了内部格式封装和步骤和内部格式解封装的步骤,具体为:
[0066] S201:前端处理单元接收由外部端口传入的数据包,对所述数据包进行模态分类,分为无状态转发的数据包和有状态转发的数据包;
[0067] 具体地,前端处理单元在接收到由外部端口传入的数据包后,对所述数据包进行报文解析;然后对解析后的报文进行模态分类,分为无状态转发的数据包和有状态转发的数据包。
[0068] S202:前端处理单元采用无状态转发流水线对无状态转发的数据包进行处理;并且,将输入端口号和所述有状态转发的数据包按照设定的内部封装格式进行封装,然后将封装后的数据包发送至所述后端处理单元;
[0069] S203:后端处理单元接收来自前端处理单元的数据包,并对所述数据包进行报文解析得到有状态转发的数据包;然后,采用有状态转发流水线对有状态转发的数据包进行处理;最后,将输出端口号和有状态转发流水线的处理结果进行封装,并将封装后的数据包发送至前端处理单元;
[0070] S204:前端处理单元对无状态转发流水线的处理结果和有状态转发流水线的处理结果进行汇聚并转发。
[0071] 具体地,前端处理单元对无状态转发流水线的处理结果进行封装,记作第一数据包;并接收来自后端处理单元的数据包,然后对所述数据包按照设定的内部封装格式进行解封装,得到输出端口号和解封后的数据,记作第二数据包;从而将所述第一数据包和所述第二数据包进行汇聚并转发至所述输出端口号对应的外部端口。
[0072] 为了进一步明确前、后端处理单元之间的数据包的交互格式,以内部封装格式采用vlan封装格式为例,本发明实施例对接口格式1和接口格式2做出如下说明。其中,将前端处理单元传递给后端处理单元的数据格式定义为接口格式1,将后端处理单元传递给前端处理单元的数据格式定义为接口格式2。
[0073] 接口格式1:在封装过程中,将原始数据包(模态报文)封装到ethernet+vlan中,并重新定义了VID字段,高6bit字段定义为输入端口号,低6bit为输出端口号,将数据包进入到网络设备的输入端口号封装到VID字段的高6bit,VID字段低6bit自动填写0;如图4所示。
[0074] 接口格式2:在封装过程中,将原始数据包(模态报文)封装到ethernet+vlan中,并将数据包的输出端口号封装到VID字段的低6bit,VID字段高6bit需要填0;如图5所示。
[0075] 可以理解的是,内部封装格式还可以采用其他封装格式来实现输入端口号和输出端口号的封装,此处不再举例赘述。
[0076] 本发明基于异构资源平台处理不同的网络需求,根据业务特性进行有状态/无状态转发协同处理,以提供不同场景下差异化的网络性能保障,能充分发挥异构资源平台的优势,以满足差异化的网络需求。
[0077] 最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。