CN113420338B - 一种数据处理方法、装置和用于数据处理的装置 - Google Patents
一种数据处理方法、装置和用于数据处理的装置 Download PDFInfo
- Publication number
- CN113420338B CN113420338B CN202110559431.1A CN202110559431A CN113420338B CN 113420338 B CN113420338 B CN 113420338B CN 202110559431 A CN202110559431 A CN 202110559431A CN 113420338 B CN113420338 B CN 113420338B
- Authority
- CN
- China
- Prior art keywords
- data packet
- target data
- priority
- operation type
- task
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012545 processing Methods 0.000 title claims abstract description 143
- 238000003672 processing method Methods 0.000 title claims abstract description 17
- 238000000034 method Methods 0.000 claims abstract description 60
- 230000008569 process Effects 0.000 claims abstract description 30
- 230000003993 interaction Effects 0.000 claims description 40
- 238000004364 calculation method Methods 0.000 claims description 32
- 230000004044 response Effects 0.000 claims description 18
- 230000002452 interceptive effect Effects 0.000 claims description 5
- 238000004458 analytical method Methods 0.000 abstract description 16
- 238000004891 communication Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/72—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供一种数据处理方法、装置和用于数据处理的装置。其中的方法包括:接收多方安全计算任务;对所述多方安全计算任务对应的密文计算协议进行程序语义分析,确定目标数据包对应的运算类型;根据所述目标数据包对应的运算类型,确定所述目标数据包的优先级;若所述目标数据包对应的运算类型为控制流,则确定所述目标数据包的优先级为第一优先级;按照所述优先级向对端计算节点发送任务处理请求,所述任务处理请求携带所述目标数据包和所述目标数据包的优先级,以使所述对端计算节点按照所述优先级对所述目标数据包进行处理。本发明实施例能够降低多方安全计算***整体的性能损耗,提高整体的数据处理效率。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种数据处理方法、装置和用于数据处理的装置。
背景技术
在进行多方安全计算的过程中,往往需要多方安全计算***中的多个节点之间进行网络交互,共同协作完成一个多方安全计算任务。
多方安全计算***中的各个节点之间进行交互时,通常需要远程调用其他节点的数据,由被调用的节点将数据包远程传输至发出调用请求的节点。现有技术中,通常按照调用请求的接收顺序传输数据包。但是,由于在执行多方安全计算任务的过程中,各个节点之间需要传输的数据包较多,尤其对于大数据量的数据包的调用,采用现有技术的方法,就会出现一个数据包被处理的过程中,其他数据包均需排队等待,导致交互网络性能损耗严重,且降低了多方安全计算***整体的数据处理效率。
发明内容
本发明实施例提供一种数据处理方法、装置和用于数据处理的装置,可以优先对控制流数据包进行处理,能够降低多方安全计算***整体的性能损耗,提高整体的数据处理效率。
为了解决上述问题,本发明实施例公开了一种数据处理方法,应用于多方安全计算***中的计算节点,所述多方安全计算***中包括至少两个计算节点,所述至少两个计算节点用于协作完成一个多方安全计算任务,所述方法包括:
接收多方安全计算任务;
对所述多方安全计算任务对应的密文计算协议进行程序语义分析,确定目标数据包对应的运算类型,所述目标数据包为所述多方安全计算任务中用于进行密文计算的数据包;
根据所述目标数据包对应的运算类型,确定所述目标数据包的优先级;
若所述目标数据包对应的运算类型为控制流,则确定所述目标数据包的优先级为第一优先级,所述第一优先级的优先权高于其他优先级;
按照所述优先级向对端计算节点发送任务处理请求,所述任务处理请求携带所述目标数据包和所述目标数据包的优先级,以使所述对端计算节点按照所述优先级对所述目标数据包进行处理。
可选地,所述根据所述目标数据包对应的运算类型,确定所述目标数据包的优先级,包括:
若所述至少两个计算节点之间涉及网络交互,则根据所述目标数据包对应的运算类型,通过网络交互框架设置所述目标数据包的优先级。
可选地,所述通过网络交互框架设置所述目标数据包的优先级,包括:
通过网络交互框架,设置所述目标数据包的目标套字节选项值,以及设置所述目标数据包的目标IP报文选项值;
其中,运算类型为控制流的各目标数据包的目标套字节选项值均大于运算类型为数据流的目标数据包的目标套字节选项值;运算类型为控制流的各目标数据包的目标IP报文选项值均大于运算类型为数据流的目标数据包的目标IP报文选项值。
可选地,所述确定目标数据包对应的运算类型之后,所述方法还包括:
若所述目标数据包的运算类型为数据流,则确定所述目标数据包的优先级为第二优先级。
可选地,所述多方安全计算任务的个数大于1,且每个多方安全计算任务对应至少一个目标数据包,所述确定目标数据包对应的运算类型之后,所述方法还包括:
确定各个多方安全计算任务的任务优先级;
根据所述任务优先级确定运算类型相同的各目标数据包的优先级;
其中,运算类型为控制流的各目标数据包的优先级高于各运算类型为数据流的目标数据包的优先级。
可选地,所述方法还包括:
接收所述对端计算节点返回的任务处理响应消息,所述任务处理响应消息携带序列化的任务处理结果;
对所述序列化的任务处理结果进行反序列化处理,得到任务处理结果。。
可选地,所述对所述多方安全计算任务对应的密文计算协议进行程序语义分析,确定目标数据包对应的运算类型,包括:
对所述多方安全计算任务对应的密文计算协议的程序语言进行识别处理,确定所述程序语言中的控制流标识和数据流标识;
根据所述控制流标识和所述数据流标识,对所述多方安全计算任务中用于密文计算的各个数据包进行标记,得到各个数据包的运算类型标识;
根据所述运算类型标识确定目标数据包对应的运算类型。
另一方面,本发明实施例公开了一种数据处理装置,应用于多方安全计算***中的计算节点,所述多方安全计算***中包括至少两个计算节点,所述至少两个计算节点用于协作完成一个多方安全计算任务,所述装置包括:
多方安全计算任务接收模块,用于接收多方安全计算任务;
运算类型确定模块,用于对所述多方安全计算任务对应的密文计算协议进行程序语义分析,确定目标数据包对应的运算类型,所述目标数据包为所述多方安全计算任务中用于进行密文计算的数据包;
优先级确定模块,用于根据所述目标数据包对应的运算类型,确定所述目标数据包的优先级;
第一优先级确定模块,用于若所述目标数据包对应的运算类型为控制流,则确定所述目标数据包的优先级为第一优先级,所述第一优先级的优先权高于其他优先级;
任务处理请求发送模块,用于按照所述优先级向对端计算节点发送任务处理请求,所述任务处理请求携带所述目标数据包和所述目标数据包的优先级,以使所述对端计算节点按照所述优先级对所述目标数据包进行处理。
可选地,所述优先级确定模块,包括:
优先级确定子模块,用于若所述至少两个计算节点之间涉及网络交互,则根据所述目标数据包对应的运算类型,通过网络交互框架设置所述目标数据包的优先级。
可选地,所述优先级确定子模块,包括:
交互选项设置单元,用于通过网络交互框架,设置所述目标数据包的目标套字节选项值,以及设置所述目标数据包的目标IP报文选项值;
其中,运算类型为控制流的各目标数据包的目标套字节选项值均大于运算类型为数据流的目标数据包的目标套字节选项值;运算类型为控制流的各目标数据包的目标IP报文选项值均大于运算类型为数据流的目标数据包的目标IP报文选项值。
可选地,所述装置还包括:
第二优先级确定模块,用于若所述目标数据包的运算类型为数据流,则确定所述目标数据包的优先级为第二优先级。
可选地,所述多方安全计算任务的个数大于1,且每个多方安全计算任务对应至少一个目标数据包,所述装置还包括:
任务优先级确定模块,用于确定各个多方安全计算任务的任务优先级;
第三优先级确定模块,用于根据所述任务优先级确定运算类型相同的各目标数据包的优先级;
其中,运算类型为控制流的各目标数据包的优先级高于各运算类型为数据流的目标数据包的优先级。
可选地,所述装置还包括:
任务处理响应消息接收模块,用于接收所述对端计算节点返回的任务处理响应消息,所述任务处理响应消息携带序列化的任务处理结果;
反序列化处理模块,用于对所述序列化的任务处理结果进行反序列化处理,得到任务处理结果。
可选地,所述运算类型确定模块,包括:
识别处理子模块,用于对所述多方安全计算任务对应的密文计算协议的程序语言进行识别处理,确定所述程序语言中的控制流标识和数据流标识;
数据包标记子模块,用于根据所述控制流标识和所述数据流标识,对所述多方安全计算任务中用于密文计算的各个数据包进行标记,得到各个数据包的运算类型标识;
运算类型确定子模块,用于根据所述运算类型标识确定目标数据包对应的运算类型。
再一方面,本发明实施例公开了一种用于数据处理的装置,应用于多方安全计算***中的计算节点,所述多方安全计算***中包括至少两个计算节点,所述至少两个计算节点用于协作完成一个多方安全计算任务,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
接收多方安全计算任务;
对所述多方安全计算任务对应的密文计算协议进行程序语义分析,确定目标数据包对应的运算类型,所述目标数据包为所述多方安全计算任务中用于进行密文计算的数据包;
根据所述目标数据包对应的运算类型,确定所述目标数据包的优先级;
若所述目标数据包对应的运算类型为控制流,则确定所述目标数据包的优先级为第一优先级,所述第一优先级的优先权高于其他优先级;
按照所述优先级向对端计算节点发送任务处理请求,所述任务处理请求携带所述目标数据包和所述目标数据包的优先级,以使所述对端计算节点按照所述优先级对所述目标数据包进行处理。
可选地,所述根据所述目标数据包对应的运算类型,确定所述目标数据包的优先级,包括:
若所述至少两个计算节点之间涉及网络交互,则根据所述目标数据包对应的运算类型,通过网络交互框架设置所述目标数据包的优先级。
可选地,所述通过网络交互框架设置所述目标数据包的优先级,包括:
通过网络交互框架,设置所述目标数据包的目标套字节选项值,以及设置所述目标数据包的目标IP报文选项值;
其中,运算类型为控制流的各目标数据包的目标套字节选项值均大于运算类型为数据流的目标数据包的目标套字节选项值;运算类型为控制流的各目标数据包的目标IP报文选项值均大于运算类型为数据流的目标数据包的目标IP报文选项值。
可选地,所述装置还经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
若所述目标数据包的运算类型为数据流,则确定所述目标数据包的优先级为第二优先级。
可选地,所述多方安全计算任务的个数大于1,且每个多方安全计算任务对应至少一个目标数据包,所述装置还经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
确定各个多方安全计算任务的任务优先级;
根据所述任务优先级确定运算类型相同的各目标数据包的优先级;
其中,运算类型为控制流的各目标数据包的优先级高于各运算类型为数据流的目标数据包的优先级。
可选地,所述装置还经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
接收所述对端计算节点返回的任务处理响应消息,所述任务处理响应消息携带序列化的任务处理结果;
对所述序列化的任务处理结果进行反序列化处理,得到任务处理结果。
可选地,所述对所述多方安全计算任务对应的密文计算协议进行程序语义分析,确定目标数据包对应的运算类型,包括:
对所述多方安全计算任务对应的密文计算协议的程序语言进行识别处理,确定所述程序语言中的控制流标识和数据流标识;
根据所述控制流标识和所述数据流标识,对所述多方安全计算任务中用于密文计算的各个数据包进行标记,得到各个数据包的运算类型标识;
根据所述运算类型标识确定目标数据包对应的运算类型。
又一方面,本发明实施例公开了一种机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得装置执行如前述一个或多个所述的数据处理方法。
本发明实施例包括以下优点:
本发明实施例在接收到多方安全计算任务后,通过对所述多方安全计算任务对应的密文计算协议进行程序语义分析,确定目标数据包对应的运算类型,其中所述目标数据包为所述多方安全计算任务中用于进行密文计算的数据包;然后,根据所述目标数据包对应的运算类型确定所述目标数据包的优先级,若所述目标数据包对应的运算类型为控制流,则确定所述目标数据包的优先级为第一优先级,所述第一优先级的优先权高于其他优先级,并向对端计算节点发送任务处理请求,所述任务处理请求携带所述目标数据包和所述目标数据包的优先级,以使所述对端计算节点按照所述优先级对所述目标数据包进行处理。本发明实施例能够使得多方安全计算***中的计算节点根据目标数据包的优先级,优先发送控制流数据包,避免了先发送大数据量的数据流数据包导致其他数据包长时间排队等待,降低了多方安全计算***整体的性能损耗;并且,对端计算节点接收到控制流数据包后,优先对接收的控制流数据包进行处理,从而充分利用CPU资源和网络资源,提高了多方安全计算***整体的处理效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的一种数据处理方法实施例的步骤流程图;
图2是本发明的一种数据包发送示意图;
图3是本发明的一种数据处理装置实施例的结构框图;
图4是本发明的一种用于数据处理的装置800的框图;
图5是本发明的一些实施例中服务器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
方法实施例
参照图1,示出了本发明的一种数据处理方法实施例的步骤流程图,所述方法具体可以包括如下步骤:
步骤101、接收多方安全计算任务;
步骤102、对所述多方安全计算任务对应的密文计算协议进行程序语义分析,确定目标数据包对应的运算类型,所述目标数据包为所述多方安全计算任务中用于进行密文计算的数据包;
步骤103、根据所述目标数据包对应的运算类型,确定所述目标数据包的优先级;
步骤104、若所述目标数据包对应的运算类型为控制流,则确定所述目标数据包的优先级为第一优先级,所述第一优先级的优先权高于其他优先级;
步骤105、按照所述优先级向对端计算节点发送任务处理请求,所述任务处理请求携带所述目标数据包和所述目标数据包的优先级,以使所述对端计算节点按照所述优先级对所述目标数据包进行处理。
本发明实施例提供的数据处理方法可应用于多方安全计算***中的计算节点,所述多方安全计算***中包括至少两个计算节点,所述至少两个计算节点用于协作完成一个多方安全计算任务。
在多方安全计算***中,可以通过多个计算节点协作完成多方安全计算任务,多个指两个或两个以上。在协作过程中,计算节点之间可能存在数据交互,比如,由一个计算节点提供数据包至对端计算节点,再由对端计算节点对该数据包进行处理。本发明实施例提供的数据处理方法,就是针对多方安全计算***中计算节点之间的交互过程进行数据处理,以降低多方安全计算***整体的性能损耗,提高整体的数据处理效率。
具体地,本发明实施例对计算节点之间需要进行交互的数据包按照运算类型划分优先级,为运算类型更重要的数据包设置更高级别的优先级,并保证高优先级的数据包可以优先进行交互及处理,为高优先级的数据包优先分配CPU(Central Processing Unit,中央处理器)资源和网络资源,从而降低多方安全计算***整体的性能损耗,提高多方安全计算***整体的处理效率。具体的处理过程如下:
首先,计算节点接收到多方安全计算任务后,先对多方安全计算任务对应的密文计算协议进行程序语义分析,确定执行该多方安全计算任务所需的各个目标数据包对应的运算类型。具体的,可以将目标数据包对应的运算类型划分为控制流或数据流。其中,运算类型为控制流的目标数据包(以下简称“控制流数据包”),用于进行控制逻辑运算,如“if…eles”、“do…while”、“switch…case”等。运算类型为数据流的目标数据包(以下简称“数据流数据包”),用于进行数据计算,如“a+b”、“a/b”、“a-b”等等。
然后,根据运算类型确定目标数据包的优先级。在实际应用中,由于控制流相对于数据流更加重要,决定着后续的数据流是否计算,以及选择哪个分支的数据流进行计算;并且在网络传输的数据量上,控制流比数据流更小。因此,在本发明实施例中,可以设置控制流数据包的优先级高于数据流数据包的优先级。因此,如果确定目标数据包对应的运算类型为控制流时,也即该目标数据包为控制流数据包,则设置目标数据包的优先级为第一优先级。其中,第一优先级的优先权高于其他优先级。
最后,按照目标数据包的优先级,向对端计算节点发送携带目标数据包以及目标数据包的优先级的任务处理请求,使得对端计算节点接收到任务处理请求后,根据优先级对目标数据包进行处理。由于在本发明实施例中,控制流数据包的优先级为第一优先级,其优先权高于其他优先级。因此,只要存在控制流数据包,计算节点就会优先发送控制流数据包对应的任务处理请求,这样对端计算节点就会先接收到控制流数据包,并优先对控制流数据包进行处理。
参照图2,示出了本发明实施例提供的一种数据包发送示意图。如图2所示,假设某个计算节点A需要向对端计算节点B发送目标数据包。其中,M1、M2为控制流数据包,N1至N4为数据流数据包;M1、N1、N2对应多方安全计算任务1,M2、N3、N4对应多方安全计算任务1。在未按照数据包的运算类型对数据包设置优先级之前,计算节点A通常按照多方安全计算任务的接收顺序,向计算节点B发送各个数据包,例如,按照图2所示的M1-N1-N2-M2-N3-N4的顺序,向计算节点B发送数据包。当按照数据包的运算类型为各个数据包设置优先级之后,由于在本发明实施例中,每个控制流数据包的优先级均为第一优先级,高于数据流数据包的优先级,所以在计算节点A的数据包发送队列中,所有的控制流数据包均排在数据流数据包的前面,例如,按照M1-M2-N1-N2-N3-N4的顺序向计算节点B发送数据包。
在多方安全计算***中,计算节点执行多方安全计算任务时,需要根据控制流数据包进行一系列本地计算,然后才能确定用于进行数据计算的数据流数据包以及具体的计算规则。当至少两个计算节点协作完成多方安全计算任务时,例如,计算节点A提供用于密文计算的目标数据包,计算节点B用于根据计算节点A提供的目标数据包进行密文计算,如果计算节点B先接收数据流数据包,还需等待接收控制流数据包才能进行密文计算。因此,在本发明实施例中,当计算节点接收到多方安全计算任务后,通过对多方安全计算任务中用于进行密文计算的目标数据包的运算类型进行分析,根据运算类型确定目标数据包的优先级,优先发送控制流数据包,使得对端计算节点更早的接收到控制流数据包,并优先对控制流数据包进行本地计算,充分利用CPU资源和网络资源,从而降低了多方安全计算***整体的性能损耗,提高了多方安全计算***整体的处理效率。
在本发明的一种可选实施例中,步骤102所述确定目标数据包对应的运算类型之后,所述方法还包括:
若所述目标数据包的运算类型为数据流,则确定所述目标数据包的优先级为第二优先级。
在本发明实施例中,当确定目标数据包对应的运算类型之后,可以将数据流数据包的优先级设置为第二优先级。需要说明的是,由于在本发明实施例中,第一优先级的优先权高于其他优先级,因此,第一优先级的优先权高于第二优先级。简而言之,在本发明实施例中,所有的控制流数据包均先于数据流数据包被处理。由于数据流数据包的数据量通常大于控制流数据包的数据量,因而数据流数据包所需的发送时间也比控制流数据包所需的发送时间长。如果先发送数据流数据包,就会造成控制流数据包长时间排队等待。因此,本发明实施例通过根据运算类型确定目标数据包的优先级,优先发送控制流数据包,避免了先发送大数据量的数据流数据包导致其他数据包长时间排队等待,降低了多方安全计算***整体的性能损耗。
在本发明的一种可选实施例中,步骤102所述对所述多方安全计算任务对应的密文计算协议进行程序语义分析,确定目标数据包对应的运算类型,包括:
步骤S11、对所述多方安全计算任务对应的密文计算协议的程序语言进行识别处理,确定所述程序语言中的控制流标识和数据流标识;
步骤S12、根据所述控制流标识和所述数据流标识,对所述多方安全计算任务中用于密文计算的各个数据包进行标记,得到各个数据包的运算类型标识;
步骤S13、根据所述运算类型标识确定目标数据包对应的运算类型。
在本发明实施例中,可以通过分析多方安全计算任务对应的密文计算协议的程序语言,进行程序语义分析,对程序语言中的控制逻辑运算和数据计算进行标记,也即确定程序语言中的控制流标识和数据流标识。当计算节点接收到多方安全计算任务后,就可以根据控制流标识和数据流标识对执行多方安全计算任务所需的各个数据包进行标记,得到各个数据包的运算类型标识。然后,根据运算类型标识就可以确定目标数据包的运算类型,进而根据运算类型确定目标数据包的优先级。
在本发明的一种可选实施例中,所述多方安全计算任务的个数大于1,且每个多方安全计算任务对应至少一个目标数据包,步骤102所述确定目标数据包对应的运算类型之后,所述方法还包括:
步骤S21、确定各个多方安全计算任务的任务优先级;
步骤S22、根据所述任务优先级确定运算类型相同的各目标数据包的优先级。
其中,运算类型为控制流的各目标数据包的优先级高于各运算类型为数据流的目标数据包的优先级。
如果计算节点接收到的多方安全计算任务的个数大于1,可以先确定各个多方安全任务的任务优先级。比如,根据任务接收时间确定各个多方安全计算任务的任务优先级,或者,根据任务的紧急或重要程度,确定各个多方安全计算任务的任务优先级。然后,根据任务优先级确定运算类型相同的各目标数据包的优先级。
例如,假设计算节点接收到了两个多方安全计算任务,分别为任务1、任务2。其中,每个多方安全计算任务对应一个控制流数据包和两个数据流数据包,且任务1的任务优先级高于任务2的任务优先级。记任务1对应的控制流数据包为M1,数据流数据包为N1、N2;任务2对应的控制流数据包为M2,数据流数据包为N3、N4。对于同一个任务的两个数据流数据包之间的优先级,可以根据实际需求设置,假定优先级关系为N1>N2,N3>N4。那么,任务1、任务2对应的各个数据包之间的优先级关系可以确定为:M1>M2>N1>N2>N3>N4。
在本发明实施例中,无论计算节点接收到几个多方安全计算任务,所有控制流数据包的优先级均高于数据流数据包,从而避免了计算节点先发送大数据量的数据流数据包导致其他数据包长时间排队等待,降低了多方安全计算***整体的性能损耗。
此外,在本发明实施例中,对于接收任务处理请求的对端计算节点,可能存在接收到至少两个任务处理请求的情况。若每个任务处理请求对应至少一个目标数据包,对端计算节点可以在接收到至少两个任务处理请求的情况下,先确定各个任务处理请求的优先级,然后根据所述任务处理请求的优先级,确定运算类型相同的各目标数据包的优先级。其中,各个任务处理请求的优先级可以根据任务处理请求对应的多方安全计算任务的任务优先级确定,也可以根据任务处理请求的接收时间确定。同样的,运算类型为控制逻辑的各目标数据包的优先级高于各运算类型为数据计算的目标数据包的优先级,对端计算节点优先处理所有控制流数据包,充分利用了CPU资源和网络资源,降低了多方安全计算***整体的性能损耗,提高了多方安全***整体的处理效率。
在本发明的一种可选实施例中,步骤103所述根据所述目标数据包对应的运算类型,确定所述目标数据包的优先级,包括:
若所述至少两个计算节点之间涉及网络交互,则根据所述目标数据包对应的运算类型,通过网络交互框架设置所述目标数据包的优先级。
协作完成多方安全计算任务的至少两个计算节点,可能对应同一通信网络,也可能对应不同的通信网络。当所述至少两个计算节点对应不同的通信网络时,也即所述至少两个计算节点之间涉及网络交互时,往往无法直接进行通信,需要基于网络交互框架进行网络传输。网络交互框架限定了节点之间的交互方式和各个参数的功能。因此,当多方安全计算***中的计算节点之间存在网络交互时,可以通过对应的网络交互框架设置目标数据包的优先级。例如,基于API(Application Programming Interface,应用程序接口)框架设置目标数据包的优先级,或者,基于RPC(Remote Procedure Call,远程过程调用)框架设置目标数据包的优先级,等等。
在本发明实施例的一种可选实施例中,所述通过网络交互框架设置所述目标数据包的优先级,包括:
通过网络交互框架,设置所述目标数据包的目标套字节选项值,以及设置所述目标数据包的目标IP(Internet Protocol,网络协议)报文选项值。
其中,运算类型为控制流的各目标数据包的目标套字节选项值均大于运算类型为数据流的目标数据包的目标套字节选项值;运算类型为控制流的各目标数据包的目标IP报文选项值均大于运算类型为数据流的目标数据包的目标IP报文选项值。
以基于RPC框架设置目标数据包的优先级为例,可以通过设置目标数据包的目标套字节选项值以及目标IP报文选项值来设置数据包的优先级。
其中,目标套字节选项用于定义套字节接口上发送的数据包的优先级,计算节点可以根据目标套字节选项值排列数据包的网络队列,并按照数据包的网络队列对各个数据包进行处理。例如,对于采用Linux***的计算节点,目标套字节选项可以为Socket选项SO_PRIORITY。需要说明的是,SO_PRIORITY的取值范围为[0,6],可以通过调用setsocketopt函数来设置SO_PRIORITY的选项值。SO_PRIORITY的选项值越大,数据包的优先级越高,因此,在本发明实施例中,控制流数据包的SO_PRIORITY的选项值大于数据流数据包的SO_PRIORITY的选项值。
目标数据包的目标IP报文选项值用于标记目标数据包对应的IP优先级,使得网络路由按照IP优先级处理数据包的转发。例如,可以通过在目标数据包对应的IP报文中设置DSCP(Differentiated Services Code Point,差分服务代码点)选项的选项值设置目标数据包的优先级。其中,DSCP选项的取值范围为[0,63],DSCP的选项值越大,对应的数据包的优先级越高。因此,在本发明实施例中,控制流数据包的DSCP选项值大于数据流数据包的DSCP选项值。
当然,也可以根据其他的网络交互框架配置相应的目标套字节选项值和目标IP报文选项值,对此,本发明实施例不做具体限定。
在本发明的一种可选实施例中,所述方法还包括:
步骤S31、接收所述对端计算节点返回的任务处理响应消息,所述任务处理响应消息携带序列化的任务处理结果;
步骤S32、对所述序列化的任务处理结果进行反序列化处理,得到任务处理结果。
在多方安全计算***的各个计算节点的网络交互过程中,往往涉及远程调用。在远程调用中,计算节点与对端计算节点是不同的进程,不能通过内存来传递数据,甚至进行交互的计算节点使用的不是同一种机器语言,比如,计算节点A用C++,对端计算节点B用Java或Python。因此,为了保证计算节点之间能够正常进行远程调用,需要对交互数据进行序列化处理,得到一个字节流,然后接收方再对接收的字节流进行反序列化处理,将字节流转换为能读取的数据格式。
在本发明实施例中,无论是计算节点向对端计算节点发送目标数据包,还是对端计算节点返回任务处理结果,都可以进行序列化操作和反序列化操作,以保证计算节点之间的交互效率。以对端计算节点B向计算节点A返回任务处理结果为例,计算节点B对本地处理后的目标数据包进行序列化处理,得到序列化的任务处理结果,并通过任务处理响应消息将序列化的任务处理结果发送至计算节点A;计算节点A在接收到任务处理响应消息后,对序列化的任务处理结果进行反序列化处理,得到任务处理结果,保证了计算节点之间数据传输的准确性。
综上所述,本发明实施例提供了一种数据处理方法,可以在接收到多方安全计算任务后,通过对所述多方安全计算任务对应的密文计算协议进行程序语义分析,确定目标数据包对应的运算类型,其中所述目标数据包为所述多方安全计算任务中用于进行密文计算的数据包;然后,根据所述目标数据包对应的运算类型确定所述目标数据包的优先级,若所述目标数据包对应的运算类型为控制流,则确定所述目标数据包的优先级为第一优先级,所述第一优先级的优先权高于其他优先级,并向对端计算节点发送任务处理请求,所述任务处理请求携带所述目标数据包和所述目标数据包的优先级,以使所述对端计算节点按照所述优先级对所述目标数据包进行处理。本发明实施例能够使得多方安全计算***中的计算节点根据目标数据包的优先级,优先发送控制流数据包,避免了先发送大数据量的数据流数据包导致其他数据包长时间排队等待,降低了多方安全计算***整体的性能损耗;并且,对端计算节点接收到控制流数据包后,优先对接收的控制流数据包进行处理,从而充分利用CPU资源和网络资源,提高了多方安全计算***整体的处理效率。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
装置实施例
参照图3,示出了本发明的一种数据处理装置实施例的结构框图,所述装置应用于多方安全计算***中的计算节点,所述多方安全计算***中包括至少两个计算节点,所述至少两个计算节点用于协作完成一个多方安全计算任务,具体可以包括:
多方安全计算任务接收模块201,用于接收多方安全计算任务;
运算类型确定模块202,用于对所述多方安全计算任务对应的密文计算协议进行程序语义分析,确定目标数据包对应的运算类型,所述目标数据包为所述多方安全计算任务中用于进行密文计算的数据包;
优先级确定模块203,用于根据所述目标数据包对应的运算类型,确定所述目标数据包的优先级;
第一优先级确定模块204,用于若所述目标数据包对应的运算类型为控制流,则确定所述目标数据包的优先级为第一优先级,所述第一优先级的优先权高于其他优先级;
任务处理请求发送模块205,用于按照所述优先级向对端计算节点发送任务处理请求,所述任务处理请求携带所述目标数据包和所述目标数据包的优先级,以使所述对端计算节点按照所述优先级对所述目标数据包进行处理。
在本发明的一种可选实施例中,所述优先级确定模块,包括:
优先级确定子模块,用于若所述至少两个计算节点之间涉及网络交互,则根据所述目标数据包对应的运算类型,通过网络交互框架设置所述目标数据包的优先级。
在本发明的一种可选实施例中,所述优先级确定子模块,包括:
交互选项设置单元,用于通过网络交互框架,设置所述目标数据包的目标套字节选项值,以及设置所述目标数据包的目标IP报文选项值;
其中,运算类型为控制流的各目标数据包的目标套字节选项值均大于运算类型为数据流的目标数据包的目标套字节选项值;运算类型为控制流的各目标数据包的目标IP报文选项值均大于运算类型为数据流的目标数据包的目标IP报文选项值。
在本发明的一种可选实施例中,所述装置还包括:
第二优先级确定模块,用于若所述目标数据包的运算类型为数据流,则确定所述目标数据包的优先级为第二优先级。
在本发明的一种可选实施例中,所述多方安全计算任务的个数大于1,且每个多方安全计算任务对应至少一个目标数据包,所述装置还包括:
任务优先级确定模块,用于确定各个多方安全计算任务的任务优先级;
第三优先级确定模块,用于根据所述任务优先级确定运算类型相同的各目标数据包的优先级;
其中,运算类型为控制流的各目标数据包的优先级高于各运算类型为数据流的目标数据包的优先级。
在本发明的一种可选实施例中,所述装置还包括:
任务处理响应消息接收模块,用于接收所述对端计算节点返回的任务处理响应消息,所述任务处理响应消息携带序列化的任务处理结果;
反序列化处理模块,用于对所述序列化的任务处理结果进行反序列化处理,得到任务处理结果。
在本发明的一种可选实施例中,所述运算类型确定模块,包括:
识别处理子模块,用于对所述多方安全计算任务对应的密文计算协议的程序语言进行识别处理,确定所述程序语言中的控制流标识和数据流标识;
数据包标记子模块,用于根据所述控制流标识和所述数据流标识,对所述多方安全计算任务中用于密文计算的各个数据包进行标记,得到各个数据包的运算类型标识;
运算类型确定子模块,用于根据所述运算类型标识确定目标数据包对应的运算类型。
综上所述,本发明实施例提供了一种数据处理装置,可以在接收到多方安全计算任务后,通过对所述多方安全计算任务对应的密文计算协议进行程序语义分析,确定目标数据包对应的运算类型,其中所述目标数据包为所述多方安全计算任务中用于进行密文计算的数据包;然后,根据所述目标数据包对应的运算类型确定所述目标数据包的优先级,若所述目标数据包对应的运算类型为控制流,则确定所述目标数据包的优先级为第一优先级,所述第一优先级的优先权高于其他优先级,并向对端计算节点发送任务处理请求,所述任务处理请求携带所述目标数据包和所述目标数据包的优先级,以使所述对端计算节点按照所述优先级对所述目标数据包进行处理。本发明实施例能够使得多方安全计算***中的计算节点根据目标数据包的优先级,优先发送控制流数据包,避免了先发送大数据量的数据流数据包导致其他数据包长时间排队等待,降低了多方安全计算***整体的性能损耗;并且,对端计算节点接收到控制流数据包后,优先对接收的控制流数据包进行处理,从而充分利用CPU资源和网络资源,提高了多方安全计算***整体的处理效率。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本发明实施例提供了一种用于数据处理的装置,应用于多方安全计算***中的计算节点,所述多方安全计算***中包括至少两个计算节点,所述至少两个计算节点用于协作完成一个多方安全计算任务,所述装置包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:接收多方安全计算任务;对所述多方安全计算任务对应的密文计算协议进行程序语义分析,确定目标数据包对应的运算类型,所述目标数据包为所述多方安全计算任务中用于进行密文计算的数据包;根据所述目标数据包对应的运算类型,确定所述目标数据包的优先级;若所述目标数据包对应的运算类型为控制流,则确定所述目标数据包的优先级为第一优先级,所述第一优先级的优先权高于其他优先级;按照所述优先级向对端计算节点发送任务处理请求,所述任务处理请求携带所述目标数据包和所述目标数据包的优先级,以使所述对端计算节点按照所述优先级对所述目标数据包进行处理。
图4是根据一示例性实施例示出的一种用于数据处理的装置800的框图。例如,装置800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图4,装置800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(I/O)的接口812,传感器组件814,以及通信组件816。
处理组件802通常控制装置800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理元件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
存储器804被配置为存储各种类型的数据以支持在设备800的操作。这些数据的示例包括用于在装置800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件806为装置800的各种组件提供电力。电源组件806可以包括电源管理***,一个或多个电源,及其他与为装置800生成、管理和分配电力相关联的组件。
多媒体组件808包括在所述装置800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜***或具有焦距和光学变焦能力。
音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当装置800处于操作模式,如呼叫模式、记录模式和语音信息处理模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
I/O接口812为处理组件802和***接口模块之间提供接口,上述***接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件814包括一个或多个传感器,用于为装置800提供各个方面的状态评估。例如,传感器组件814可以检测到设备800的打开/关闭状态,组件的相对定位,例如所述组件为装置800的显示器和小键盘,传感器组件814还可以检测装置800或装置800一个组件的位置改变,用户与装置800接触的存在或不存在,装置800方位或加速/减速和装置800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件816被配置为便于装置800和其他设备之间有线或无线方式的通信。装置800可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理***的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频信息处理(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由装置800的处理器820执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
图5是本发明的一些实施例中服务器的结构示意图。该服务器1900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以***处理器(central processingunits,CPU)1922(例如,一个或一个以上处理器)和存储器1932,一个或一个以上存储应用程序1942或数据1944的存储介质1930(例如一个或一个以上海量存储设备)。其中,存储器1932和存储介质1930可以是短暂存储或持久存储。存储在存储介质1930的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1922可以设置为与存储介质1930通信,在服务器1900上执行存储介质1930中的一系列指令操作。
服务器1900还可以包括一个或一个以上电源1926,一个或一个以上有线或无线网络接口1950,一个或一个以上输入输出接口1958,一个或一个以上键盘1956,和/或,一个或一个以上操作***1941,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由装置(服务器或者终端)的处理器执行时,使得装置能够执行图1所示的数据处理方法。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由装置(服务器或者终端)的处理器执行时,使得装置能够执行一种数据处理方法,所述方法包括:接收多方安全计算任务;对所述多方安全计算任务对应的密文计算协议进行程序语义分析,确定目标数据包对应的运算类型,所述目标数据包为所述多方安全计算任务中用于进行密文计算的数据包;根据所述目标数据包对应的运算类型,确定所述目标数据包的优先级;若所述目标数据包对应的运算类型为控制流,则确定所述目标数据包的优先级为第一优先级,所述第一优先级的优先权高于其他优先级;按照所述优先级向对端计算节点发送任务处理请求,所述任务处理请求携带所述目标数据包和所述目标数据包的优先级,以使所述对端计算节点按照所述优先级对所述目标数据包进行处理。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
以上对本发明所提供的一种数据处理方法、一种数据处理装置和一种用于数据处理的装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (13)
1.一种数据处理方法,其特征在于,应用于多方安全计算***中的计算节点,所述多方安全计算***中包括至少两个计算节点,所述至少两个计算节点用于协作完成一个多方安全计算任务,所述方法包括:
接收多方安全计算任务;
对所述多方安全计算任务对应的密文计算协议的程序语言进行识别处理,确定所述程序语言中的控制流标识和数据流标识;根据所述控制流标识和所述数据流标识,对所述多方安全计算任务中用于密文计算的各个数据包进行标记,得到各个数据包的运算类型标识;根据所述运算类型标识确定目标数据包对应的运算类型;所述目标数据包为所述多方安全计算任务中用于进行密文计算的数据包;其中,运算类型为控制流的目标数据包用于进行控制逻辑运算;
根据所述目标数据包对应的运算类型,确定所述目标数据包的优先级;
若所述目标数据包对应的运算类型为控制流,则确定所述目标数据包的优先级为第一优先级,所述第一优先级的优先权高于其他优先级;
按照所述优先级向对端计算节点发送任务处理请求,所述任务处理请求携带所述目标数据包和所述目标数据包的优先级,以使所述对端计算节点按照所述优先级对所述目标数据包进行处理。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标数据包对应的运算类型,确定所述目标数据包的优先级,包括:
若所述至少两个计算节点之间涉及网络交互,则根据所述目标数据包对应的运算类型,通过网络交互框架设置所述目标数据包的优先级。
3.根据权利要求2所述的方法,其特征在于,所述通过网络交互框架设置所述目标数据包的优先级,包括:
通过网络交互框架,设置所述目标数据包的目标套字节选项值,以及设置所述目标数据包的目标IP报文选项值;
其中,运算类型为控制流的各目标数据包的目标套字节选项值均大于运算类型为数据流的目标数据包的目标套字节选项值;运算类型为控制流的各目标数据包的目标IP报文选项值均大于运算类型为数据流的目标数据包的目标IP报文选项值。
4.根据权利要求1所述的方法,其特征在于,所述确定目标数据包对应的运算类型之后,所述方法还包括:
若所述目标数据包的运算类型为数据流,则确定所述目标数据包的优先级为第二优先级。
5.根据权利要求1所述的方法,其特征在于,所述多方安全计算任务的个数大于1,且每个多方安全计算任务对应至少一个目标数据包,所述确定目标数据包对应的运算类型之后,所述方法还包括:
确定各个多方安全计算任务的任务优先级;
根据所述任务优先级确定运算类型相同的各目标数据包的优先级;
其中,运算类型为控制流的各目标数据包的优先级高于各运算类型为数据流的目标数据包的优先级。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述对端计算节点返回的任务处理响应消息,所述任务处理响应消息携带序列化的任务处理结果;
对所述序列化的任务处理结果进行反序列化处理,得到任务处理结果。
7.一种用于数据处理的装置,其特征在于,应用于多方安全计算***中的计算节点,所述多方安全计算***中包括至少两个计算节点,所述至少两个计算节点用于协作完成一个多方安全计算任务,所述装置包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
接收多方安全计算任务;
对所述多方安全计算任务对应的密文计算协议的程序语言进行识别处理,确定所述程序语言中的控制流标识和数据流标识;根据所述控制流标识和所述数据流标识,对所述多方安全计算任务中用于密文计算的各个数据包进行标记,得到各个数据包的运算类型标识;根据所述运算类型标识确定目标数据包对应的运算类型;所述目标数据包为所述多方安全计算任务中用于进行密文计算的数据包;其中,运算类型为控制流的目标数据包用于进行控制逻辑运算;
根据所述目标数据包对应的运算类型,确定所述目标数据包的优先级;
若所述目标数据包对应的运算类型为控制流,则确定所述目标数据包的优先级为第一优先级,所述第一优先级的优先权高于其他优先级;
按照所述优先级向对端计算节点发送任务处理请求,所述任务处理请求携带所述目标数据包和所述目标数据包的优先级,以使所述对端计算节点按照所述优先级对所述目标数据包进行处理。
8.根据权利要求7所述的装置,其特征在于,所述根据所述目标数据包对应的运算类型,确定所述目标数据包的优先级,包括:
若所述至少两个计算节点之间涉及网络交互,则根据所述目标数据包对应的运算类型,通过网络交互框架设置所述目标数据包的优先级。
9.根据权利要求8所述的装置,其特征在于,所述通过网络交互框架设置所述目标数据包的优先级,包括:
通过网络交互框架,设置所述目标数据包的目标套字节选项值,以及设置所述目标数据包的目标IP报文选项值;
其中,运算类型为控制流的各目标数据包的目标套字节选项值均大于运算类型为数据流的目标数据包的目标套字节选项值;运算类型为控制流的各目标数据包的目标IP报文选项值均大于运算类型为数据流的目标数据包的目标IP报文选项值。
10.根据权利要求7所述的装置,其特征在于,所述装置还经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
若所述目标数据包的运算类型为数据流,则确定所述目标数据包的优先级为第二优先级。
11.根据权利要求7所述的装置,其特征在于,所述多方安全计算任务的个数大于1,且每个多方安全计算任务对应至少一个目标数据包,所述装置还经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
确定各个多方安全计算任务的任务优先级;
根据所述任务优先级确定运算类型相同的各目标数据包的优先级;
其中,运算类型为控制流的各目标数据包的优先级高于各运算类型为数据流的目标数据包的优先级。
12.根据权利要求7所述的装置,其特征在于,所述装置还经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
接收所述对端计算节点返回的任务处理响应消息,所述任务处理响应消息携带序列化的任务处理结果;
对所述序列化的任务处理结果进行反序列化处理,得到任务处理结果。
13.一种机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得装置执行如权利要求1至6任一所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110559431.1A CN113420338B (zh) | 2021-05-21 | 2021-05-21 | 一种数据处理方法、装置和用于数据处理的装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110559431.1A CN113420338B (zh) | 2021-05-21 | 2021-05-21 | 一种数据处理方法、装置和用于数据处理的装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113420338A CN113420338A (zh) | 2021-09-21 |
CN113420338B true CN113420338B (zh) | 2024-06-21 |
Family
ID=77712798
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110559431.1A Active CN113420338B (zh) | 2021-05-21 | 2021-05-21 | 一种数据处理方法、装置和用于数据处理的装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113420338B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115242878A (zh) * | 2022-06-13 | 2022-10-25 | 潍柴动力股份有限公司 | 数据包的处理方法、车载终端和车辆 |
CN115941258A (zh) * | 2022-10-26 | 2023-04-07 | 山东浪潮科学研究院有限公司 | 边缘计算任务分发方法、装置、设备及介质 |
CN116361838B (zh) * | 2023-05-23 | 2023-08-11 | 华控清交信息科技(北京)有限公司 | 一种数据处理方法、装置、***和可读存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112799851A (zh) * | 2021-03-30 | 2021-05-14 | 华控清交信息科技(北京)有限公司 | 多方安全计算中的数据处理方法和相关装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100226252A1 (en) * | 2009-03-03 | 2010-09-09 | Qualcomm Incorporated | Invoking data service priority during network congestion |
US9378226B1 (en) * | 2012-10-10 | 2016-06-28 | Google Inc. | Method and system for a user-defined field type |
CN105657777B (zh) * | 2016-03-14 | 2018-11-20 | 西安电子科技大学 | 基于链路质量和节点转发能力的路由协议设计方法 |
JP2022501936A (ja) * | 2018-09-27 | 2022-01-06 | ソニーグループ株式会社 | 通信デバイス、インフラストラクチャ機器および方法 |
CN112615852A (zh) * | 2020-12-16 | 2021-04-06 | 百度在线网络技术(北京)有限公司 | 数据的处理方法、相关装置及计算机程序产品 |
-
2021
- 2021-05-21 CN CN202110559431.1A patent/CN113420338B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112799851A (zh) * | 2021-03-30 | 2021-05-14 | 华控清交信息科技(北京)有限公司 | 多方安全计算中的数据处理方法和相关装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113420338A (zh) | 2021-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113420338B (zh) | 一种数据处理方法、装置和用于数据处理的装置 | |
CN112187862B (zh) | 一种任务处理方法、装置和用于任务处理的装置 | |
CN107743096B (zh) | 网络优化方法、装置、终端以及存储介质 | |
CN107094094B (zh) | 应用程序的连网方法、装置及终端 | |
CN106792892B (zh) | 应用程序的访问控制方法和装置 | |
CN111818291B (zh) | 建立多媒体通话的方法、装置和电子设备 | |
CN112131135B (zh) | 一种密文运算调试方法、***和用于密文运算调试的装置 | |
CN112839065B (zh) | 信息处理方法、装置、第一设备及存储介质 | |
CN109491655B (zh) | 一种输入事件处理方法及装置 | |
CN114090303B (zh) | 软件模块调度方法、装置、电子设备、存储介质及产品 | |
CN112929271B (zh) | 一种路由配置方法、装置和用于配置路由的装置 | |
CN114430410B (zh) | 基于虚拟域名的***访问方法、装置及设备 | |
CN112291216B (zh) | 通信方法、装置和电子设备 | |
US11997542B2 (en) | Method and device for message transmission | |
CN114430370B (zh) | 网络切片的确定方法、装置、设备及存储介质 | |
CN111818293B (zh) | 通信方法、装置和电子设备 | |
CN113905083A (zh) | 用户代码运行方法及装置、电子设备和存储介质 | |
CN113691526A (zh) | 基于WebRTC的推流方法、装置、***、设备和介质 | |
CN110730118A (zh) | 消息发送方法、装置、计算机设备和存储介质 | |
CN112187854B (zh) | 一种任务处理方法、装置和用于任务处理的装置 | |
CN109375959B (zh) | 定向拉起应用的方法及装置 | |
CN115484154B (zh) | 资源设备的配置方法、请求方法、装置及存储介质 | |
CN113517977B (zh) | 一种数据处理方法、装置和用于数据处理的装置 | |
CN114363449B (zh) | 业务状态的切换方法、装置、电子设备和存储介质 | |
CN112449409B (zh) | 移动终端的功率控制方法和移动终端的功率控制装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |