System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请实施例涉及计算机,尤其涉及一种数据处理方法、装置、设备及存储介质。
技术介绍
1、软件定义网络(software defined networking,sdn)技术中,控制器通过sdn协议定义的表项对交换机在数据转发平面的数据转发进行控制。
2、当前,开发人员在开发可编程交换机程序时,一般更为注重完整呈现网关的逻辑,较少注意到表项资源的占用情况。当编写的交换机程序占用了较多资源时,可能导致对交换机程序的编译不通过。为了降低交换机程序占用的资源,通常会采用减少表项资源大小的操作。
3、虽然减少表项资源大小的方式,能够在一定程度上减少对可编程交换机资源的占用,但这同时也降低了网关能够支持的最大表项,降低了网关的转发性能。
技术实现思路
1、本申请实施例提供一种数据处理方法、装置、设备及存储介质,通过消除表项之间的依赖关系,以将多个表项配置在一个阶段(stage)中执行,在不减少表项数量的基础上,充分利用可编辑交换机资源的利用率,保证网关的转发性能。
2、第一方面,本申请实施例提供一种数据处理方法,包括:
3、获得可编程交换机的源代码数据,所述源代码数据包括多个表项;
4、确定所述多个表项中具有依赖关系的n个表项,所述n为大于2的正整数;
5、消除所述n个表项中至少2个表项之间的依赖关系,并将消除依赖关系的n个表项配置在m个阶段中执行,所述m为小于n的正整数。
6、第二方面,本申请实施例提供一种数据
7、获取消除依赖关系的n个表项,所述消除依赖关系的n个表项为对n个表项中至少2个表项之间的依赖关系进行消除得到,所述n个表项为可编程交换机的源代码数据中具有依赖关系的n个表项;
8、确定所述消除依赖关系的n个表项的控制数据;
9、根据所述消除依赖关系的n个表项的控制数据,向所述可编程交换机下发表项。
10、第三方面,本申请实施例提供了一种数据处理装置,包括:
11、获取单元,用于获得可编程交换机的源代码数据,所述源代码数据包括多个表项;
12、确定单元,用于确定所述多个表项中具有依赖关系的n个表项,所述n为大于2的正整数;
13、处理单元,用于消除所述n个表项中至少2个表项之间的依赖关系,并将消除依赖关系的n个表项配置在m个阶段中执行,所述m为小于n的正整数。
14、第四方面,本申请实施例提供了一种数据处理装置,包括:
15、获取单元,用于获取消除依赖关系的n个表项,所述消除依赖关系的n个表项为对n个表项中至少2个表项之间的依赖关系进行消除得到,所述n个表项为可编程交换机的源代码数据中具有依赖关系的n个表项;
16、确定单元,用于确定所述消除依赖关系的n个表项的控制数据;
17、下发单元,用于根据所述消除依赖关系的n个表项的控制数据,向可编程交换机下发表项。
18、第五方面,本申请实施例提供了一种电子设备,包括处理器和存储器。所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行上述第一方面或第二方面中的方法。
19、第六方面,本申请实施例提供了一种芯片,用于实现上述第一方面或第二方面中任一方面或其各实现方式中的方法。具体地,所述芯片包括:处理器,用于从存储器中调用并运行计算机程序,使得安装有所述芯片的设备执行如上述第一方面中任一方面或其各实现方式中的方法。
20、第七方面,本申请实施例提供了一种计算机可读存储介质,用于存储计算机程序,所述计算机程序使得计算机执行上述第一方面或第二方面中任一方面或其各实现方式中的方法。
21、第八方面,本申请实施例提供了一种计算机程序产品,包括计算机程序指令,所述计算机程序指令使得计算机执行上述第一方面或第二方面中任一方面或其各实现方式中的方法。
22、第九方面,本申请实施例提供了一种计算机程序,当其在计算机上运行时,使得计算机执行上述第一方面或第二方面中任一方面或其各实现方式中的方法。
23、综上,本申请通过获取可编程交换机的源代码数据,并对获取的源代码数据进行解析,确定出源代码数据所包括的多个表项中具有依赖关系的n个表项,接着消除这n个表项中至少2个表项之间的依赖关系,进而将消除依赖关系的n个表项配置在小于n的m个阶段中进行执行。也就是说,本申请实施例,通过消除表项之间的依赖关系,以将多个表项配置在一个阶段(stage)中并行执行,进而在不减少表项数量的基础上,提高交换机的芯片资源的利用率和数据面的转发性能。
本文档来自技高网...【技术保护点】
1.一种数据处理方法,其特征在于,应用于服务器,包括:
2.根据权利要求1所述的方法,其特征在于,所述N个表项包括第一表项、第二表项和第三表项,所述第一表项和所述第二表项均对所述源代码数据中的第一变量进行修改,所述第三表项读取所述第二表项中修改后的第一变量,所述M个阶段包括第一阶段和第二阶段;
3.根据权利要求2所述的方法,其特征在于,所述将所述第一表项更新为第四表项,包括:
4.根据权利要求2所述的方法,其特征在于,所述将所述第二表项和所述第三表项合并为第五表项,包括:
5.根据权利要求4所述的方法,其特征在于,所述第五表项的动作域包括第三指令和第四指令,所述根据所述第一指令和所述第二指令,确定所述第五表项的动作域,包括:
6.根据权利要求1-5任一项所述的方法,其特征在于,所述确定所述多个表项中具有依赖关系的N个表项,包括:
7.根据权利要求6所述的方法,其特征在于,所述针对所述变量数组中的第一变量,从所述表项数组所包括的表项中,获取指令中包括所述第一变量、且具有依赖关系的N个表项,包括:
8
9.一种数据处理方法,其特征在于,应用于控制器,包括:
10.根据权利要求9所述的方法,其特征在于,所述消除依赖关系的N个表项包括第五表项,所述第五表项是将第二表项和第三表项合并以消除所述第二表项和所述第三表项之间的依赖关系得到的,所述第二表项对所述可编程交换机的源代码数据中的第一变量进行修改,所述第三表项读取所述第二表项中修改后的第一变量;
11.根据权利要求10所述的方法,其特征在于,所述将所述第二表项和所述第三表项的控制数据进行合并,得到所述第五表项的控制数据,包括:
12.一种数据处理装置,其特征在于,包括:
13.一种数据处理装置,其特征在于,包括:
14.一种电子设备,其特征在于,包括处理器和存储器;
15.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序使得计算机执行如上述权利要求1至8或9至11任一项所述的方法。
...【技术特征摘要】
1.一种数据处理方法,其特征在于,应用于服务器,包括:
2.根据权利要求1所述的方法,其特征在于,所述n个表项包括第一表项、第二表项和第三表项,所述第一表项和所述第二表项均对所述源代码数据中的第一变量进行修改,所述第三表项读取所述第二表项中修改后的第一变量,所述m个阶段包括第一阶段和第二阶段;
3.根据权利要求2所述的方法,其特征在于,所述将所述第一表项更新为第四表项,包括:
4.根据权利要求2所述的方法,其特征在于,所述将所述第二表项和所述第三表项合并为第五表项,包括:
5.根据权利要求4所述的方法,其特征在于,所述第五表项的动作域包括第三指令和第四指令,所述根据所述第一指令和所述第二指令,确定所述第五表项的动作域,包括:
6.根据权利要求1-5任一项所述的方法,其特征在于,所述确定所述多个表项中具有依赖关系的n个表项,包括:
7.根据权利要求6所述的方法,其特征在于,所述针对所述变量数组中的第一变量,从所述表项数组所包括的表项中,获取指令中包括所述第一变量、且具有依赖关系的n个表项,包括:
8...
【专利技术属性】
技术研发人员:陈共龙,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。