CN112714070A - 通信方法、装置、系统及存储介质 - Google Patents
通信方法、装置、系统及存储介质 Download PDFInfo
- Publication number
- CN112714070A CN112714070A CN201911018719.7A CN201911018719A CN112714070A CN 112714070 A CN112714070 A CN 112714070A CN 201911018719 A CN201911018719 A CN 201911018719A CN 112714070 A CN112714070 A CN 112714070A
- Authority
- CN
- China
- Prior art keywords
- data
- fragments
- data fragments
- fragment
- messages
- 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.)
- Granted
Links
- 238000004891 communication Methods 0.000 title claims abstract description 109
- 238000000034 method Methods 0.000 title claims abstract description 70
- 239000012634 fragment Substances 0.000 claims abstract description 765
- 238000013467 fragmentation Methods 0.000 claims description 16
- 238000006062 fragmentation reaction Methods 0.000 claims description 16
- 238000011084 recovery Methods 0.000 claims description 13
- 238000001914 filtration Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 5
- 238000005215 recombination Methods 0.000 claims 1
- 230000006798 recombination Effects 0.000 claims 1
- 238000012545 processing Methods 0.000 description 53
- 238000010586 diagram Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 7
- 230000002159 abnormal effect Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 108010069898 fibrinogen fragment X Proteins 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0006—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0033—Systems modifying transmission characteristics according to link quality, e.g. power backoff arrangements specific to the transmitter
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Communication Control (AREA)
Abstract
本申请公开了一种通信方法、装置、系统及存储介质,属于通信技术领域。该方法包括:根据待发送的目标数据的数据大小和链路层要求的最大数据大小,对目标数据进行分片,得到N个数据分片;根据N个数据分片中每个数据分片的数据大小,生成多个报文,该多个报文总共携带有M个数据分片,M大于N;向接收端发送该多个报文,以将目标数据发送给接收端。本申请通过在该多个报文携带重复的数据分片,从而在接收端接收到的某数据分片存在损坏时,可以根据该多个报文携带的重复的数据分片,恢复出该数据分片,进而最终得到目标数据。由此可知,当存在损坏的数据分片时,不需要发送端重传该数据分片,因此本方案可以提高通信的可靠性。
Description
技术领域
本申请涉及通信技术领域,特别涉及一种通信方法、装置、系统及存储介质。
背景技术
目前,常用的传输层通信协议有传输控制协议(transmission controlprotocol,TCP)协议,发送端根据TCP协议,可以将待发送的目标数据携带在报文中发送至接收端。其中,当目标数据的大小超出了链路层要求的最大数据大小时,发送端需要对目标数据进行分片,得到多个数据分片,每个数据分片携带在一个报文中,且每个报文中携带相应数据分片的编号,之后将所有报文发送至接收端。接收端在接收到报文之后,可以根据报文中的编号,确定是否有异常数据分片,其中,异常数据分片是指未成功送达的数据分片,或者被损坏的数据分片。当确定没有异常数据分片时,接收端根据每个报文中的编号对所有数据分片进行重组,得到目标数据,当确定有异常分片时,请求发送端重新发送该数据分片所在的报文。
相关技术中,通常是由于网络较差或者网络不稳定等因素,导致出现异常数据分片的情况,即使发送端重新发送该数据分片所在的报文,依旧会大概率地无法成功送达接收端,或者数据分片被损坏,在这种情况下,通信的可靠性较低。
发明内容
本申请提供了一种通信方法、装置、系统及存储介质,可以解决相关技术中通信可靠性较低的问题。所述技术方案如下:
第一方面,提供了一种通信方法,应用于发送端,该方法包括:
根据待发送的目标数据的数据大小和链路层要求的最大数据大小,对目标数据进行分片,得到N个数据分片,N个数据分片中每个数据分片的数据大小不超过链路层要求的最大数据大小,N为大于或等于1的整数;根据N个数据分片中每个数据分片的数据大小,生成多个报文,多个报文中的每个报文携带一个或多个数据分片,一个或多个数据分片的总数据大小不超过链路层要求的最大数据大小,多个报文总共携带有M个数据分片,该M个数据分片中的任一个数据分片为N个数据分片中的一个数据分片,且M为大于N的整数;向接收端发送多个报文,以将目标数据发送给接收端。
在本申请实施例中,由于考虑到链路层对发送的数据大小有限制,因此发送端可以先根据待发送的目标数据的数据大小,以及链路层要求的最大数据大小,对目标数据进行分片,得到N个数据分片。其中,当发送端确定目标数据的数据大小小于或等于链路层要求的最大数据大小时,发送端可以不对目标数据进行分片,此时N等于1,也即发送端可以将目标数据作为1个数据分片。当目标数据的数据大小大于链路层要求的最大数据大小时,发送端对目标数据进行分片,可以得到N个数据分片,此时N大于1,且该N个数据分片中的每个数据分片的数据大小不超过链路层要求的最大数据大小。
在本申请实施例中,发送端可以在多个报文中总共携带M个数据分片,该M个数据分片中的任一数据分片为N个数据分片中的一个数据分片,M大于N,也即是该多个报文中可以携带有重复的数据分片。
需要说明的是,发送端可以对N个数据分片中每个数据分片均进行重复,也可以对N个数据分片中的部分数据分片进行重复,且对于N个数据分片中进行重复的数据分片,每个数据分片进行重复的个数可以相同或不同。但是当仅对部分数据分片进行重复时,假设没有重复的数据分片所在的报文丢失的话,那么接收端无法恢复出完整的目标数据。因此,在本申请实施例中,发送端可以将N个数据分片中的每个数据分片均进行重复,以最大程度地保证通信的可靠性。
另外,在一个报文携带的数据分片的总数据大小不超过链路层要求的最大数据大小的情况下,发送端可以将重复的同一数据分片同时携带在同一报文中,也可以将重复的同一数据分片携带在不同的报文中。但是,当重复的同一数据分片同时携带在同一报文中,假设这个报文丢失的话,那么接收端就无法恢复出目标数据。但是,当重复的同一数据分片携带在不同的报文中,如果其中一个报文丢失的话,还可以通过其他的报文来恢复出目标数据。因此,在本申请实施例中,可以将重复的同一数据分片携带在不同的报文中。也即是,对于该多个报文中的第一报文,当第一报文携带多个数据分片时,该多个数据分片不相同,其中,第一报文是指多个报文中的任一报文。
在本申请实施例中,发送端可以根据自身预设的可靠性参数来确定N个数据分片中进行重复的数据分片的重复比例,以及进行重复的每个数据分片所要重复的个数。当然,发送端也可以接收其他设备发送的可靠性参数,根据接收到的可靠性参数来确定N个数据分片中进行重复的数据分片的重复比例,以及进行重复的每个数据分片所要重复的个数。此外,N个数据分片中进行重复的数据分片的重复比例,以及进行重复的每个数据分片所要重复的个数与通信的可靠性相关,例如,重复比例越高,通信的可靠性相对越高,重复的个数越多,通信的可靠性也相对越高。
另外,发送端生成的报文中可以携带多个字段、以及一个或多个数据分片,该多个字段可以为常规报文头、分片总控制头、一个或多个单片控制头。其中,常规报文头可以携带报文的参数信息,例如,该报文的可靠性参数、安全性参数等。分片总控制头可以携带该报文的分片信息,例如,报文中携带的数据分片的总数量等。一个或多个单片控制头与一个或多个数据分片一一对应,每个单片控制头可以携带相应数据分片的单片标识,单片标识可以用于指示相应数据分片在目标数据中的位置。例如,单片标识可以是数字编号,也可以是其他标识。
在本申请实施例中,当发送端按照上述方法对目标数据做可靠性处理之后,还可以对目标数据做安全性处理。接下来将通过三种可能的实现方式,对发送端针对目标数据的安全性处理进行介绍。
第一种可能的实现方式,发送端在根据N个数据分片中每个数据分片的数据大小,生成多个报文之前,还包括:根据加密策略,对M个数据分片中的部分数据分片进行加密。其中,多个报文中携带有加密后的数据分片的报文还携带第一标识,第一标识用于指示相应报文中携带的加密后的数据分片。
在本申请实施例中,发送端将目标数据划分为N个数据分片之后,还可以根据加密策略,对M个数据分片中的部分数据分片进行加密。其中,加密后的数据分片可以称为数据分片密文段,未加密的数据分片可以称为数据分片明文段。之后,发送端可以根据前述方法生成该多个报文,该多个报文中的部分报文可以携带加密后的数据分片,或者该多个报文中的每个报文均可以携带加密后的数据分片。
其中,第一标识可以携带在常规报文头中,或者可以携带在分片总控制头中,又或者可以携带在单片控制头中。可选地,为了进一步提高通信的安全性,发送端还可以对携带有第一标识的字段进行加密。
由于发送端的加密以及后续接收端的解密会降低通信效率,因此,在第一种可能的实现方式中,发送端可以根据加密策略对M个数据分片中的部分数据分片进行加密,而不是不对数据分片加密或者对所有数据分片进行加密,这样可以兼顾通信的安全性和通信效率的要求。
第二种可能的实现方式,发送端在根据N个数据分片中每个数据分片的数据大小,生成多个报文之前,还包括:获取K个伪数据分片,K为大于或等于1的整数;根据N个数据分片中每个数据分片的数据大小,生成多个报文,包括:根据N个数据分片中每个数据分片的数据大小和K个伪数据分片的数据大小,生成多个报文;其中,多个报文中携带有伪数据分片的报文还携带第二标识,第二标识用于指示相应报文中携带的伪数据分片,多个报文携带的所有数据分片的数量为M+K个。
在本申请实施例中,发送端可以在该多个报文中的部分报文中携带伪数据分片,也可以在该多个报文中的每个报文中携带伪数据分片。对于携带有伪数据分片的报文,发送端可以在该报文中携带一个或多个伪数据分片,且该一个或多个伪数据分片可以相同,也可以不同。
需要说明的是,K个伪数据分片中的每个伪数据分片均与N个数据分片中的每个数据分片不相同,K个伪数据分片中的任意两个伪数据分片之间可以相同,也可以不相同,本申请对此不作限定。此外,用于指示携带有伪数据分片的第二标识可以携带在相应报文中的常规报文头中,或者可以携带在分片总控制头中,又或者可以携带在伪数据分片相应的单片控制头中。
第三种可能的实现方式,发送端在根据N个数据分片中每个数据分片的数据大小,生成多个报文,包括:对M个数据分片中的部分数据分片或者所有数据分片添加噪声;根据添加噪声后的M个数据分片中每个数据分片的数据大小,生成多个报文;其中,多个报文中携带添加有噪声的数据分片的报文还携带第三标识,第三标识用于指示相应报文中携带的添加有噪声的数据分片。
在本申请实施例中,发送端可以对M个数据分片中的部分数据分片或者所有数据分片添加噪声,例如,可以添加高斯白噪声,还可以是其他噪声。另外,发送端可以在该多个报文中的部分报文携带添加有噪声的数据分片,也可以在多个报文中的每个报文携带添加有噪声的数据分片。
需要说明的是,用于指示携带的添加有噪声的数据分片的第三标识可以携带在相应报文中的常规报文头中,或者可以携带在分片总控制头中,又或者可以携带在添加有噪声的数据分片相应的单片控制头中。
本申请实施例中,发送端对目标数据进行的安全性处理的三种实现方式中的每种实现方式均可以与可靠性处理结合使用。另外,安全性处理的三种实现方式中的任意两种或三种实现方式可以同时与可靠性处理结合使用。
在另一些实施例中,发送端对目标数据进行的可靠性处理和安全性处理,可以根据需求选择单独使用,也可以根据实际的通信需求结合使用,也即是可以对目标数据仅进行可靠性处理,或者可以对目标数据仅进行安全性处理,又或者可以对目标数据进行可靠性处理以及安全性处理。
此外,在本申请实施例中,发送端生成的多个报文中的每个报文还可以携带第四标识,第四标识用于检验报文中相应数据分片的完整性,也即检验相应数据分片是否损坏。例如,第四标识可以是哈希值。需要说明的是,第四标识可以携带在报文中的相应数据分片的最后一个字节之后,或者可以携带在相应数据分片对应的单片控制头中。
在本申请实施例中,发送端生成该多个报文之后,可以将该多个报文发送给接收端,以使接收端可以在接收到该多个报文之后,可以对多个报文进行可靠性还原处理,得到目标数据。
第二方面,提供了一种通信方法,应用于接收端,该方法包括:
接收发送端发送的多个报文,多个报文中的每个报文携带一个或多个数据分片,一个或多个数据分片的总数据大小不超过链路层要求的最大数据大小,多个报文总共携带有M个数据分片,M个数据分片中的任一数据分片为N个数据分片中的一个数据分片,N个数据分片是指发送端对待发送的目标数据进行分片后得到的,M为大于N的整数,N为大于或等于1的整数;根据多个报文携带的数据分片,恢复出N个数据分片;对N个数据分片进行重组,得到目标数据。
在本申请实施例中,接收端根据多个报文携带的数据分片,恢复出N个数据分片,包括:从多个报文携带的所有数据分片中,获取未损坏的数据分片;对于N个数据分片中的第一数据分片,如果未损坏的数据分片中不包括第一数据分片,且M个数据分片中包括P个已损坏的第一数据分片,则根据P个已损坏的第一数据分片,恢复出第一数据分片,第一数据分片是指N个数据分片中的任一数据分片,P为大于1的整数。
在本申请实施例中,接收端接收到该多个报文之后,还可以对该多个报文携带的数据分片的完整性进行校验。也即是,根据该多个报文携带的第四标识,来确定该多个报文携带的所有数据分片中,哪些数据分片未被损坏,哪些数据分片已被损坏。
当按照上述方法对该多个报文携带的数据分片进行完整性校验之后,接收端就可以确定出N个数据分片中的哪些数据分片已被损坏,哪些数据分片未被损坏。
基于前述描述,发送端对目标数据做可靠性处理之后,还可能对目标数据做安全性处理。因此,接收端对每个数据分片进行完整性校验之前,还需要对每个数据分片进行安全性还原处理。接下来将通过三种可能的实现方式,对数据分片的安全性还原处理进行介绍。
第一种可能的实现方式,若发送端根据加密策略,对N个数据分片中的部分数据分片进行了加密,接收端在根据多个报文携带的数据分片,恢复出N个数据分片之前,还包括:对于多个报文中的第二报文,根据解密策略和第二报文携带的第一标识,对第二报文中携带的加密后的数据分片进行解密,第一标识用于指示第二报文中携带的加密后的数据分片,第二报文是指多个报文中携带有加密后的数据分片的任一报文。
第二种可能的实现方式,若发送端发送的报文中携带有伪数据分片,接收端在根据多个报文携带的数据分片,恢复出N个数据分片之前,还包括:对于多个报文中的第一报文,根据第一报文携带的第二标识,识别第一报文携带的伪数据分片,第二标识用于指示第一报文中携带的伪数据分片,第一报文是指多个报文中的任一报文;根据多个报文携带的数据分片,恢复出N个数据分片,包括:根据多个报文携带的数据分片中除伪数据分片之外的数据分片,恢复出N个数据分片。
第三种可能的实现方式,若发送端发送的报文携带的数据分片中添加有噪声,接收端在根据多个报文携带的数据分片,恢复出N个数据分片之前,还包括:对于多个报文中的第一报文,根据第一报文携带的第三标识,对第一报文携带的添加有噪声的数据分片进行噪声滤除,第三标识用于指示第一报文中携带的添加有噪声的数据分片,第一报文是指多个报文中的任一报文。
需要说明的是,当发送端对目标数据进行了可靠性处理以及安全性处理时,接收端在接收到该多个报文之后,可以先对该多个报文进行安全性还原,再进行可靠性还原。示例性地,当第一报文同时携带加密后的数据分片、伪数据分片、添加有噪声的数据分片时,接收端可以进行解密、过滤伪数据分片、滤除噪声这三个操作,本申请实施例对这三个操作的执行顺序不作限定。之后,接收端可以根据前述方法对该多个报文携带的数据分片的完整性进行校验。
基于上述描述,该N个数据分片中的有些数据分片可能已被损坏,有些数据分片可能未被损坏。对于已被损坏的数据分片,可以按照下述方法进行恢复。也即是,接收端可以从该多个报文携带的所有数据分片中,获取未损坏的数据分片。对于N个数据分片中的第一数据分片,如果未损坏的数据分片中不包括第一数据分片,且M个数据分片中包括P个已损坏的第一数据分片,接收端则可以根据该P个已损坏的第一数据分片,恢复出第一数据分片,第一数据分片是指N个数据分片中的任一数据分片,P为大于1的整数。
在本申请实施例中,接收端根据P个已损坏的第一数据分片,恢复出第一数据分片,包括:对于第一数据分片中第一字节,确定P个已损坏的第一数据分片中第一字节上的数据是否均相同,第一字节是指第一数据分片中的任一字节;如果P个已损坏的个第一数据分片中第一字节上的数据均相同,则将P个已损坏的第一数据分片中第一字节上的数据作为恢复出的第一数据分片中第一字节上的数据。如果P个已损坏的第一数据分片中第一字节上的数据不完全相同,则确定P个已损坏的第一数据分片中第一字节上的数据相同的数据分片的个数;如果确定的数据分片的个数大于参考个数,则将大于参考个数的数据分片中第一字节上的数据作为恢复出的第一数据分片中第一字节上的数据。
在本申请实施例中,接收端在确定N个数据分片之后,可以将N个数据分片进行重组,得到目标数据。
由前述可知,本申请实施例中的N个数据分片均具有唯一的单片标识,例如,单片标识可以为前述的数字编号。接收端在恢复出N个数据分片之后,可以根据单片标识,确定N个数据分片在目标数据中的位置,从而可以对N个数据分片进行重组,得到目标数据。
第三方面,提供了一种通信装置,应用于发送端,所述通信装置具有实现上述第一方面中通信方法行为的功能。所述通信装置包括至少一个模块,该至少一个模块用于实现上述第一方面所提供的通信方法。
第四方面,提供了一种通信装置,应用于接收端,所述通信装置具有实现上述第二方面中通信方法行为的功能。所述通信装置包括至少一个模块,该至少一个模块用于实现上述第二方面所提供的通信方法。
第五方面,提供了一种通信系统,所述通信系统包括发送端和接收端,所述发送端用于用于执行上述第一方面所述的方法,所述接收端用于执行上述第二方面所述的方法。
第六方面,提供了一种发送端,所述发送端包括处理器和存储器,所述存储器用于存储执行上述第一方面所提供的通信方法的程序,以及存储用于实现上述第一方面所提供的通信方法所涉及的数据。所述处理器被配置为用于执行所述存储器中存储的程序。所述存储设备的操作装置还可以包括通信总线,该通信总线用于该处理器与存储器之间建立连接。
第七方面,提供了一种接收端,所述接收端包括处理器和存储器,所述存储器用于存储执行上述第二方面所提供的通信方法的程序,以及存储用于实现上述第二方面所提供的通信方法所涉及的数据。所述处理器被配置为用于执行所述存储器中存储的程序。所述存储设备的操作装置还可以包括通信总线,该通信总线用于该处理器与存储器之间建立连接。
第八方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面或第二方面所述的通信方法。
第九方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面或第二方面所述的通信方法。
上述第三方面、第四方面、第五方面、第六方面、第七方面、第八方面和第九方面所获得的技术效果与第一方面或第二方面中对应的技术手段获得的技术效果近似,在这里不再赘述。
本申请提供的技术方案至少可以带来以下有益效果:
由于N个数据分片是发送端根据待发送的目标数据的数据大小和链路层要求的最大数据大小,对目标数据进行分片后得到的,且向接收端发送的多个报文中总共携带有M个数据分片,该M大于N。也即是,该多个报文携带有对N个数据分片中同一数据分片进行重复的数据分片。因此,接收端在接收到该多个报文之后,若某数据分片存在损坏,那么可以根据该多个报文携带的重复的该数据分片,恢复出该数据分片,进而最终得到目标数据。由此可知,通过本申请提供的方法进行通信时,当存在损坏的数据分片时,不需要发送端重传该数据分片,因此本方案可以提高通信的可靠性。尤其在网络环境特别差的情况下,可以提高通信的可靠性,最大程度地保证目标数据一次性可达。
附图说明
图1是本申请实施例提供的一种通信方法所涉及的系统架构图;
图2是本申请实施例提供的一种计算机设备的结构示意图;
图3是本申请实施例提供的一种通信方法的流程图;
图4是本申请实施例提供的一种报文的结构示意图;
图5是本申请实施例提供的另一种报文的结构示意图;
图6是本申请实施例提供的又一种报文的结构示意图;
图7是本申请实施例提供的又一种报文的结构示意图;
图8是本申请实施例提供的又一种报文的结构示意图;
图9是本申请实施例提供的一种恢复第一数据分片的示意图;
图10是本申请实施例提供的一种通信装置的结构示意图;
图11是本申请实施例提供的另一种通信装置的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
图1是本申请实施例提供的一种通信方法所涉及的系统架构图,该系统架构包括发送端101和接收端102。其中,发送端101与接收端102可以通过无线或者有线方式连接,以进行通信。
发送端101可以用于对目标数据做可靠性处理,进而生成多个报文,并向接收端102发送该多个报文。也即是,发送端101可以将目标数据划分为N个数据分片,并将该N个数据分片中的所有数据分片或者部分数据分片在该多个报文中重复携带。其中,对于重复携带的数据分片来说,每个数据分片进行重复的个数可以相同或者不同。
接收端102可以用于接收该多个报文,并对该多个报文做可靠性还原处理。也即是,接收端102可以根据该多个报文携带的数据分片,重组得到目标数据。
进一步地,发送端101还可以用于对目标数据做安全性处理。也即是,对发送给接收端的多个报文中携带的数据分片进行安全性处理。相应地,接收端102还可以用于对该多个报文携带的数据分片进行安全性还原处理。其中,安全性处理和安全性还原处理的实现方式将在后文进行详细的解释说明,此处不做解释。
需要说明的是,目标数据可以是发送端101生成的数据,例如发送端中的某APP(application,应用程序)生成的数据,也可以是接收其他设备发送的数据。接收端102得到目标数据后,可以将目标数据发送至接收端102中的某APP,也可以将目标数据发送至其他设备。
请参考图2,图2是根据本申请实施例示出的一种计算机设备的结构示意图,该计算机设备可以是图1中所示的发送端101,也可以是图1中所示的接收端102。该计算机设备包括至少一个处理器201、通信总线202、存储器203以及至少一个通信接口204。
处理器201可以是一个通用中央处理器(central processing unit,CPU)、网络处理器(NP)、微处理器、或者可以是一个或多个用于实现本申请方案的集成电路,例如,专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。
通信总线202用于在上述组件之间传送信息。通信总线202可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器203可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其它类型的静态存储设备,也可以是随机存取存储器(random access memory,RAM)或者可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。存储器203可以是独立存在,并通过通信总线202与处理器201相连接。存储器203也可以和处理器201集成在一起。
通信接口204使用任何收发器一类的装置,用于与其它设备或通信网络通信。通信接口204包括有线通信接口,还可以包括无线通信接口。其中,有线通信接口例如可以为以太网接口。以太网接口可以是光接口,电接口或其组合。无线通信接口可以为无线局域网(wireless local area networks,WLAN)接口,蜂窝网络通信接口或其组合等。
在具体实现中,作为一种实施例,处理器201可以包括一个或多个CPU,如图2中所示的CPU0和CPU1。
在具体实现中,作为一种实施例,计算机设备可以包括多个处理器,如图2中所示的处理器201和处理器205。这些处理器中的每一个可以是一个单核处理器(single-CPU),也可以是一个多核处理器(multi-CPU)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,计算机设备还可以包括输出设备206和输入设备207。输出设备206和处理器201通信,可以以多种方式来显示信息。例如,输出设备206可以是液晶显示器(liquid crystal display,LCD)、发光二级管(light emitting diode,LED)显示设备、阴极射线管(cathode ray tube,CRT)显示设备或投影仪(projector)等。输入设备207和处理器201通信,可以以多种方式接收用户的输入。例如,输入设备207可以是鼠标、键盘、触摸屏设备或传感设备等。
在一些实施例中,存储器203用于存储执行本申请方案的程序代码210,处理器201可以执行存储器203中存储的程序代码210。也即是,该计算机设备可以通过处理器201以及存储器203中的程序代码210,来实现下文图3实施例提供的通信方法。
图3是本申请实施例提供的一种通信方法的流程图。请参考图3,该方法包括如下步骤。
步骤301:发送端根据待发送的目标数据的数据大小和链路层要求的最大数据大小,对目标数据进行分片,得到N个数据分片,N个数据分片中每个数据分片的数据大小不超过链路层要求的最大数据大小,其中,N为大于或等于1的整数。
在本申请实施例中,由于考虑到链路层对发送的数据大小有限制,因此发送端可以先根据待发送的目标数据的数据大小,以及链路层要求的最大数据大小,对目标数据进行分片,得到N个数据分片。其中,当发送端确定目标数据的数据大小小于或等于链路层要求的最大数据大小时,发送端可以不对目标数据进行分片,此时N等于1,也即发送端可以将目标数据作为1个数据分片。当目标数据的数据大小大于链路层要求的最大数据大小时,发送端对目标数据进行分片,可以得到N个数据分片,此时N大于1,且该N个数据分片中的每个数据分片的数据大小不超过链路层要求的最大数据大小。
需要说明的是,在本申请实施例中,发送端还可以根据实际需求,按照更细的分片粒度,对目标数据进行分片,也即是得到更多的数据分片,从而可以将同一数据分片重复的更多,保证通信的可靠性。此外,分片得到的N个数据分片的数据大小可以相同或不同。
示例性地,以链路层要求的最大数据大小为2048字节为例,假设目标数据的大小为1500字节,也即目标数据的大小小于链路层要求的最大数据大小,发送端可以不对该目标数据进行分片,直接将目标数据作为一个数据分片,或者发送端可以对该目标数据进行分片,得到两个300字节的数据分片、一个400字节的数据分片和一个500字节的数据分片,这样,在一个或多个报文中就可以携带更多重复的同一数据分片,以提高通信的可靠性。假设目标数据的大小为3000字节,也即目标数据的大小大于链路层要求的最大数据大小,发送端可以对目标数据进行分片,得到N个数据分片,例如,可以将目标数据分片得到3个1000字节的数据分片。
步骤302:发送端根据N个数据分片中每个数据分片的数据大小,生成多个报文,该多个报文中的每个报文携带一个或多个数据分片,该一个或多个数据分片的总数据大小不超过链路层要求的最大数据大小,该多个报文总共携带有M个数据分片,该M个数据分片中的任一数据分片为N个数据分片中的一个数据分片,M为大于N的整数。
需要说明的是,由于链路层对发送的数据大小有限制,因此,发送端生成的该多个报文中的每个报文携带的数据分片的总数据大小不超过链路层要求的最大数据大小。
在本申请实施例中,发送端可以在该多个报文中总共携带M个数据分片,该M个数据分片中的任一数据分片为N个数据分片中的一个数据分片,M大于N,也即是该多个报文中可以携带有重复的数据分片。
需要说明的是,发送端可以对N个数据分片中每个数据分片均进行重复,也可以对N个数据分片中的部分数据分片进行重复,且对于N个数据分片中进行重复的数据分片,每个数据分片进行重复的个数可以相同或不同。但是当仅对部分数据分片进行重复时,假设没有重复的数据分片所在的报文丢失的话,那么接收端无法恢复出完整的目标数据。因此,在本申请实施例中,发送端可以将N个数据分片中的每个数据分片均进行重复,以最大程度地保证通信的可靠性。
另外,在一个报文携带的数据分片的总数据大小不超过链路层要求的最大数据大小的情况下,发送端可以将重复的同一数据分片同时携带在同一报文中,也可以将重复的同一数据分片携带在不同的报文中。但是,当重复的同一数据分片同时携带在同一报文中,假设这个报文丢失的话,那么接收端就无法恢复出目标数据。但是,当重复的同一数据分片携带在不同的报文中,如果其中一个报文丢失的话,还可以通过其他的报文来恢复出目标数据。因此,在本申请实施例中,可以将重复的同一数据分片携带在不同的报文中。也即是,对于该多个报文中的第一报文,当第一报文携带多个数据分片时,该多个数据分片不相同,其中,第一报文是指多个报文中的任一报文。
示例性地,假设目标数据为数据ABC,将目标数据进行分片得到3个数据分片,分别为数据分片A、B和C,假设发送端生成两个报文,在这两个报文中将这3个数据分片中的每个数据分片均重复携带两个,第一个报文携带一个数据分片A、一个数据分片B和一个数据分片C,第二个报文同样携带一个数据分片A、一个数据分片B和一个数据分片C,这样即使这两个报文中的一个报文丢失,接收端也可以通过接收到的一个报文,得到目标数据ABC。
在本申请实施例中,发送端可以根据自身预设的可靠性参数来确定N个数据分片中进行重复的数据分片的重复比例,以及进行重复的每个数据分片所要重复的个数。当然,发送端也可以接收其他设备发送的可靠性参数,根据接收到的可靠性参数来确定N个数据分片中进行重复的数据分片的重复比例,以及进行重复的每个数据分片所要重复的个数。此外,N个数据分片中进行重复的数据分片的重复比例,以及进行重复的每个数据分片所要重复的个数与通信的可靠性相关,例如,重复比例越高,通信的可靠性相对越高,重复的个数越多,通信的可靠性也相对越高。
示例性地,假设链路层要求的最大数据大小为2048字节,目标数据的数据大小为1000字节,发送端可以将目标数据作为一个数据分片,即N等于1,将这1000字节的数据分片重复一次,生成一个报文,可以将重复的两个1000字节的数据分片携带在该报文中,这样,该报文中携带的两个数据分片的总数据大小为2000字节,未超过链路层要求的最大数据大小。
在本申请实施例中,发送端生成的报文中可以携带多个字段、以及一个或多个数据分片,该多个字段可以为常规报文头、分片总控制头、一个或多个单片控制头。其中,常规报文头可以携带报文的参数信息,例如,该报文的可靠性参数、安全性参数等。分片总控制头可以携带该报文的分片信息,例如,报文中携带的数据分片的总数量等。一个或多个单片控制头与一个或多个数据分片一一对应,每个单片控制头可以携带相应数据分片的单片标识,单片标识可以用于指示相应数据分片在目标数据中的位置。例如,单片标识可以是数字编号,也可以是其他标识。
示例性的,图4是本申请实施例提供的一种报文的结构示意图。参见图4,该报文携带常规报文头、分片总控制头、3个单片控制头、3个数据分片。其中,单片控制头1与数据分片1对应,单片控制头1携带了数据分片1的单片标识,假设该单片标识为1,表示数据分片1为目标数据中的第一个数据分片。单片控制头2与数据分片2对应,单片控制头2携带了数据分片2的单片标识,假设该单片标识为2,表示数据分片2为目标数据中的第二个数据分片。单片控制头3与数据分片3对应,单片控制头3携带了数据分片3的单片标识,假设单片标识为3,表示数据分片3为目标数据中的第三个数据分片。
需要说明的是,图4中以报文携带三个数据分片为例,且这三个数据分片不同。但是,在某些情况下,该报文可能携带有至少两个相同的数据分片。比如,参考图5,图5是本申请实施例提供的另一种报文的结构示意图。在图5中,该报文中携带了3个相同的数据分片ABC。
在本申请实施例中,当发送端按照上述方法对目标数据做可靠性处理之后,还可以对目标数据做安全性处理。接下来将通过三种可能的实现方式,对发送端针对目标数据的安全性处理进行介绍。
第一种可能的实现方式,发送端在根据N个数据分片中每个数据分片的数据大小,生成多个报文之前,还可以根据加密策略,对M个数据分片中的部分数据分片进行加密。其中,该多个报文中携带有加密后的数据分片的报文还携带第一标识,第一标识用于指示相应报文中携带的加密后的数据分片。
在本申请实施例中,发送端将目标数据划分为N个数据分片之后,还可以根据加密策略,对M个数据分片中的部分数据分片进行加密。其中,加密后的数据分片可以称为数据分片密文段,未加密的数据分片可以称为数据分片明文段。之后,发送端可以根据前述方法生成该多个报文,该多个报文中的部分报文可以携带加密后的数据分片,或者该多个报文中的每个报文均可以携带加密后的数据分片。
其中,第一标识可以携带在常规报文头中,或者可以携带在分片总控制头中,又或者可以携带在单片控制头中。可选地,为了进一步提高通信的安全性,发送端还可以对携带有第一标识的字段进行加密。
需要说明的是,在本申请实施例中,可以根据不同的需求设置不同的加密策略。比如,一些实施例中,可以将按照一定的加密比例进行加密的方式作为一种加密策略,其中,对于不同的安全性要求,设置的加密比例也可以不同。在另一些实施例中,可以将是否采用对称加密算法进行加密的方式作为一种加密策略。
示例性地,图6是本申请实施例提供的另一种报文的结构示意图。如图6所示,该报文中携带有未加密的数据分片A、加密后的数据分片A’、以及未加密的数据分片B,也即是该报文携带有数据分片明文段A、数据分片密文段A’、以及数据分片明文段B。用于指示携带有加密后的数据分片的第一标识可以携带在该报文的常规报文头中,并可以对该常规报文头进行加密。其中,携带在常规报文头中的第一标识用于指示该报文携带的第二个数据分片为加密后的数据分片。
由于发送端的加密以及后续接收端的解密会降低通信效率,因此,在第一种可能的实现方式中,发送端可以根据加密策略对M个数据分片中的部分数据分片进行加密,而不是不对数据分片加密或者对所有数据分片进行加密,这样可以兼顾通信的安全性和通信效率的要求。
第二种可能的实现方式,发送端在根据N个数据分片中每个数据分片的数据大小,生成多个报文之前,还可以获取K个伪数据分片,其中,K为大于或等于1的整数。之后,发送端可以根据N个数据分片中每个数据分片的数据大小和K个伪数据分片的数据大小,生成多个报文。其中,多个报文中携带有伪数据分片的报文还携带第二标识,第二标识用于指示相应报文中携带的伪数据分片,多个报文携带的所有数据分片的数量为M+K个。
在本申请实施例中,发送端可以在该多个报文中的部分报文中携带伪数据分片,也可以在该多个报文中的每个报文中携带伪数据分片。对于携带有伪数据分片的报文,发送端可以在该报文中携带一个或多个伪数据分片,且该一个或多个伪数据分片可以相同,也可以不同。
需要说明的是,K个伪数据分片中的每个伪数据分片均与N个数据分片中的每个数据分片不相同,K个伪数据分片中的任意两个伪数据分片之间可以相同,也可以不相同,本申请对此不作限定。此外,用于指示携带有伪数据分片的第二标识可以携带在相应报文中的常规报文头中,或者可以携带在分片总控制头中,又或者可以携带在伪数据分片相应的单片控制头中。
另外,在本申请实施例中,可以根据不同的需求,确定是否在生成的报文中携带伪数据分片,以及携带伪数据分片的比例等。在一些实施例中,发送端可以接收其他设备发送的安全性参数,根据接收到的安全性参数,来确定是否在生成的报文中携带伪数据分片,以及携带伪数据分片的比例等。
示例性地,图7是本申请实施例提供的又一种报文的结构示意图。参见图7,假设N等于1,M等于3,K等于1,目标数据为ABC,也即将目标数据ABC作为一个数据分片,该报文中携带两个数据分片ABC和1个伪数据分片X,用于指示携带有伪数据分片的第二标识可以携带在该报文的常规报文头中,并对常规报文头进行加密。其中,携带在常规报文头中的第二标识用于指示该报文携带的第一个数据分片为伪数据分片。
第三种可能的实现方式,发送端在根据N个数据分片中每个数据分片的数据大小,生成多个报文之前,还可以对M个数据分片中的部分数据分片或者所有数据分片添加噪声,然后根据添加噪声后的M个数据分片中每个数据分片的数据大小,生成多个报文。其中,该多个报文中携带添加有噪声的数据分片的报文还携带第三标识,第三标识用于指示相应报文中携带的添加有噪声的数据分片。
在本申请实施例中,发送端可以对M个数据分片中的部分数据分片或者所有数据分片添加噪声,例如,可以添加高斯白噪声,还可以是其他噪声。另外,发送端可以在该多个报文中的部分报文携带添加有噪声的数据分片,也可以在多个报文中的每个报文携带添加有噪声的数据分片。
需要说明的是,用于指示携带的添加有噪声的数据分片的第三标识可以携带在相应报文中的常规报文头中,或者可以携带在分片总控制头中,又或者可以携带在添加有噪声的数据分片相应的单片控制头中。
通过上述三种可能的实现方式对目标数据进行安全性处理之后,如果该多个报文中的部分报文或者全部报文被拦截,可以减少报文被破解的概率。另外,由于根据上述第二种可能的实现方式生成的多个报文中携带有伪数据分片,报文中携带的数据与恶意分子需要拦截的数据差距较大,因此,可以减少被拦截的概率。同理,由于根据上述第三种可能的实现方式生成的多个报文中携带有添加噪声的数据分片,报文中携带的数据也与恶意分子需要拦截的数据差距较大,因此,也可以减少被拦截的概率。
本申请实施例中,发送端对目标数据进行的安全性处理的三种实现方式中的每种实现方式均可以与可靠性处理结合使用。另外,安全性处理的三种实现方式中的任意两种或三种实现方式可以同时与可靠性处理结合使用。
在另一些实施例中,发送端对目标数据进行的可靠性处理和安全性处理,可以根据需求选择单独使用,也可以根据实际的通信需求结合使用,也即是可以对目标数据仅进行可靠性处理,或者可以对目标数据仅进行安全性处理,又或者可以对目标数据进行可靠性处理以及安全性处理。
示例性地,例如,发送端生成的多个报文中可以携带M+K个数据分片,且该M个数据分片中的部分数据分片是通过加密策略进行加密的。参见图8,图8是本申请实施例提供的一种报文的结构示意图。如图8所示,假设目标数据为AB,N等于2,也即将目标数据AB分片为两个数据分片:数据分片A和数据分片B。发送端对数据分片A进行加密,得到加密后的数据分片为数据分片密文段A’,并获取一个伪数据分片X,将数据分片密文段A’、数据分片明文段B和伪数据分片X携带在该报文中。
又如,该多个报文可以携带M+K个数据分片,其中,M个数据分片中的部分数据分片或者所有数据分片添加有噪声,K个数据分片为伪数据分片。
此外,在本申请实施例中,发送端生成的多个报文中的每个报文还可以携带第四标识,第四标识用于检验报文中相应数据分片的完整性,也即检验相应数据分片是否损坏。例如,第四标识可以是哈希值。需要说明的是,第四标识可以携带在报文中的相应数据分片的最后一个字节之后,或者可以携带在相应数据分片对应的单片控制头中。
步骤303:发送端向接收端发送该多个报文,以将目标数据发送给接收端。
在本申请实施例中,发送端生成该多个报文之后,可以将该多个报文发送给接收端,以使接收端可以在接收到该多个报文之后,可以对多个报文进行可靠性还原处理,得到目标数据。
步骤304:接收端接收发送端发送的该多个报文。
在本申请实施例中,接收端接收到该多个报文之后,还可以对该多个报文携带的数据分片的完整性进行校验。也即是,根据该多个报文携带的第四标识,来确定该多个报文携带的所有数据分片中,哪些数据分片未被损坏,哪些数据分片已被损坏。
其中,接收端可以每接收到一个报文,就对这个报文携带的数据分片进行完整性校验。当然,接收端还可以在接收到所有报文之后,对该多个报文携带的数据分片进行完整性校验。但是,不管在哪个时机,对数据分片的完整性校验的方式都是相同。
接下来以接收到的第一报文为例,对报文携带的数据分片进行完整性校验的实现方式进行说明。
接收端可以获取第一报文携带的每个数据分片对应的第四标识,假设第四标识为哈希值。那么,接收端可以确定第一报文携带的每个数据分片的哈希值。对于第一报文携带的每个数据分片,如果接收端针对这个数据分片确定的哈希值与该报文针对这个数据分片携带的哈希值相同,那么可以确定这个数据分片未被损坏。如果接收端针对这个数据分片确定的哈希值与该报文针对这个数据分片携带的哈希值不同,那么可以确定这个数据分片已被损坏。
需要说明的是,基于上述描述,发送端可能对N个数据分片中的所有数据分片或者部分数据分片进行了重复,也即是,对于N个数据分片中进行重复的数据分片,在该多个报文中携带了至少两个。这样,为了节省完整性校验的时间,提高完整性校验的效率,接收端对一个数据分片进行完整性校验之后,可以记录这个数据分片的单片标识和对应的完整性校验结果。当接收端对下一个数据分片进行完整性校验之前,可以根据下一个数据分片的单片标识,从记录的信息中,确定下一个数据分片是否已进行了完整性校验,如果没有进行完整性校验,那么可以按照上述方法进行完整性校验。如果已经进行了完整性校验,且完整性校验结果用于指示这个数据分片已被损坏,那么,接收端也是按照上述方法对下一个数据分片进行完整性校验。但是,如果已经进行了完整性校验,且完整性校验结果用于指示这个数据分片未被损坏,那么,接收端就可以不用对这个数据分片进行完整性校验。
在另一些实施例中,如果接收端接收到所有报文之后,对该多个报文携带的所有数据分片进行完整性校验。在这种情况下,接收端可以根据每个数据分片对应的单片控制头携带的单片标识,将具有相同单片标识的数据分片确定为一组数据分片,从而可以确定得到N组数据分片。对于每一组数据分片,接收端可以按照上述方法,对这组数据分片中的一个数据分片的完整性进行校验。如果这个数据分片未被损坏,则接收端可以不对这组数据分片中其余的数据分片进行完整性校验。但是,如果这个数据分片已被损坏,则接收端需要对这组数据分片中的另一个数据分片进行完整性校验,直至从这组数据分片中确定出未被损坏的数据分片为止,或者直至这组数据分片中的所有数据分片均进行了完整性校验。
当按照上述方法对该多个报文携带的数据分片进行完整性校验之后,接收端就可以确定出N个数据分片中的哪些数据分片已被损坏,哪些数据分片未被损坏。
基于前述描述,发送端对目标数据做可靠性处理之后,还可能对目标数据做安全性处理。因此,接收端对每个数据分片进行完整性校验之前,还需要对每个数据分片进行安全性还原处理。接下来将通过三种可能的实现方式,对数据分片的安全性还原处理进行介绍。
第一种可能的实现方式,若发送端根据加密策略,对M个数据分片中的部分数据分片进行了加密,那么接收端在接收到该多个报文之后,对于该多个报文中的第二报文,可以先根据解密策略和第二报文携带的第一标识,对第二报文中携带的加密后的数据分片进行解密,其中,第二报文是指多个报文中携带有加密后的数据分片的任一报文。
在本申请实施例中,加密策略和解密策略可以是接收端与发送端之间预设好的策略,接收端可以根据自身预设的解密策略,以及第二报文携带的第一标识,对第二报文中携带的加密后的数据分片进行解密。或者,解密策略可以携带在报文的常规报文头中,接收端根据常规报文头中携带的解密策略,以及第一标识,对加密后的数据分片进行解密。
由于第二标识能够指示第二报文中携带的加密后的数据分片,因此,接收端可以按照解密策略,对第二报文中携带的加密后的数据分片进行解密。
第二种可能的实现方式,若发送端发送的报文中携带有伪数据分片,接收端在接收到该多个报文之后,对于该多个报文中的第三报文,接收端可以根据第三报文携带的第二标识,识别第三报文携带的伪数据分片。在这种情况下,接收端需要根据该多个报文携带的数据分片中除伪数据分片之外的数据分片,恢复出该N个数据分片。其中,第三报文是指该多个报文中携带有伪数据分片的任一报文。
在本申请实施例中,接收端可以根据第三报文中携带的第二标识,识别第三报文携带的伪数据分片,将伪数据分片进行过滤。这样,当对所有的伪数据分片进行过滤之后,可以根据根据过滤后剩余的数据分片,恢复出该N个数据分片。
由于第二标识能够指示第三报文中携带的伪数据分片,因此,根据第二标识可以准确地识别出第三报文携带的伪数据分片,进而可以确保后续恢复出的N个数据分片的准确性。
第三种可能的实现方式,若发送端发送的报文携带的数据分片中添加有噪声,接收端在接收到该多个报文之后,对于该多个报文中的第四报文,可以根据第四报文携带的第三标识,对第四报文携带的添加有噪声的数据分片进行噪声滤除。其中,第四报文是指该多个报文中携带有添加噪声的数据分片的任一报文。
在本申请实施例中,由于第三标识能够指示第四报文中添加有噪声的数据分片,因此,接收端根据第三标识可以准确地识别出添加有噪声的数据分片,进而可以准确地对第四报文携带的添加有噪声的数据分片进行噪声滤除。
需要说明的是,当发送端对目标数据进行了可靠性处理以及安全性处理时,接收端在接收到该多个报文之后,可以先对该多个报文进行安全性还原,再进行可靠性还原。示例性地,当第一报文同时携带加密后的数据分片、伪数据分片、添加有噪声的数据分片时,接收端可以进行解密、过滤伪数据分片、滤除噪声这三个操作,本申请实施例对这三个操作的执行顺序不作限定。之后,接收端可以根据前述方法对该多个报文携带的数据分片的完整性进行校验。
步骤305:接收端根据该多个报文携带的数据分片,恢复出该N个数据分片。
基于上述描述,该N个数据分片中的有些数据分片可能已被损坏,有些数据分片可能未被损坏。对于未被损坏的数据分片,可以直接将这个数据分片作为恢复出的数据分片。对于已被损坏的数据分片,可以按照下述方法进行恢复。也即是,接收端可以从该多个报文携带的所有数据分片中,获取未损坏的数据分片。对于N个数据分片中的第一数据分片,如果未损坏的数据分片中不包括第一数据分片,且该M个数据分片中包括P个已损坏的第一数据分片,接收端则可以根据该P个已损坏的第一数据分片,恢复出该第一数据分片,第一数据分片是指N个数据分片中的任一数据分片,其中,P为大于1的整数。
可选地,接收端可以通过对比P个已损坏的第一数据分片中的每个数据分片中的每个字节上的数据,进而恢复第一数据分片。具体地,对于第一数据分片中第一字节,接收端可以确定P个已损坏的第一数据分片中第一字节上的数据是否均相同,第一字节是指第一数据分片中的任一字节。如果P个已损坏的第一数据分片中第一字节上的数据均相同,则将P个已损坏的第一数据分片中第一字节上的数据作为恢复出的第一数据分片中第一字节上的数据。如果P个已损坏的第一数据分片中第一字节上的数据不完全相同,则确定P个已损坏的第一数据分片中第一字节上的数据相同的数据分片的个数。如果确定的数据分片的个数大于参考个数,则将大于参考个数的数据分片中第一字节上的数据作为恢复出的第一数据分片中第一字节上的数据。
示例性地,假设参考个数为2,当接收端确定P个已损坏的第一数据分片均被损坏时,可以对比该P个已损坏的第一数据分片中的第一字节上的数据是否相同,如果该P个已损坏的第一数据分片中的第一字节上的数据均相同,则将P个已损坏的第一数据分片中第一字节上的数据作为恢复出的第一数据分片中第一字节上的数据。如果该P个已损坏的第一数据分片中第一字节上的数据不完全相同,则可以确定该P个已损坏的第一数据分片中第一字节上的数据相同的数据分片的个数,如果确定的数据分片的个数大于2,也即是存在两个数据分片中第一字节上的数据相同,则将这两个数据分片中第一字节上的数据作为恢复出的第一数据分片中第一字节的数据。
图9是本申请实施例提供的一种恢复第一数据分片的示意图。参见图9,假设参考个数为2,P为3,第一数据分片包括3个字节。其中,这三个第一数据分片中的第一个数据分片中的三个字节上的数据依次为A”、B、C,第二个数据分片中的三个字节上的数据依次为A、B”、C,第三个数据分片中的三个字节依次为A、B、C”。接收端通过对比这3个数据分片中的第一个字节,可以确定有两个数据分片中第一个字节上的数据均为A,则可以将数据A作为恢复出的第一数据分片中第一个字节上的数据。依此类推,接收端可以将数据B作为恢复出的第一数据分片中第二个字节上的数据,将数据C作为恢复出的第一数据分片中的第三个字节上的数据,也即接收端恢复出的第一数据分片为ABC,与发送端发送的数据分片相同。
可选地,如果P个已损坏的第一数据分片中第一字节上的数据不完全相同,且P个已损坏的第一数据分片中第一字节上的数据相同的数据分片的个数不大于参考个数,那么,接收端可以通知发送端重新发送第一数据分片所在的报文。
步骤306:接收端对N个数据分片进行重组,得到目标数据。
在本申请实施例中,接收端在恢复出N个数据分片之后,可以将N个数据分片进行重组,得到目标数据。
由前述可知,本申请实施例中的N个数据分片均具有唯一的单片标识,例如,单片标识可以为前述的数字编号。接收端在恢复出N个数据分片之后,可以根据单片标识,确定N个数据分片在目标数据中的位置,从而可以对N个数据分片进行重组,得到目标数据。
综上,在本申请实施例中,由于N个数据分片是发送端根据待发送的目标数据的数据大小和链路层要求的最大数据大小,对目标数据进行分片后得到的,且向接收端发送的多个报文中携带的所有数据分片的数量为M个,该M大于N。也即是,该多个报文携带有对N个数据分片中同一数据分片进行重复的数据分片。因此,接收端在接收到该多个报文之后,若某数据分片存在损坏,那么可以根据该多个报文携带的重复的该数据分片,恢复出该数据分片,进而最终得到目标数据。由此可知,通过本申请提供的方法进行通信时,当存在损坏的数据分片时,不需要发送端重传该数据分片,因此本方案可以提高通信的可靠性。尤其在网络环境特别差的情况下,可以提高通信的可靠性,最大程度地保证目标数据一次性可达。
图10是本申请实施例提供的一种通信装置的结构示意图,该通信装置可以由软件、硬件或者两者的结合实现成为发送端的部分或者全部。参见图10,该装置包括:分片模块1001、生成模块1002和发送模块1003。
分片模块1001,用于根据待发送的目标数据的数据大小和链路层要求的最大数据大小,对目标数据进行分片,得到N个数据分片,N个数据分片中每个数据分片的数据大小不超过链路层要求的最大数据大小,N为大于或等于1的整数;
生成模块1002,用于根据N个数据分片中每个数据分片的数据大小,生成多个报文,多个报文中的每个报文携带一个或多个数据分片,一个或多个数据分片的总数据大小不超过链路层要求的最大数据大小,多个报文携带有M个数据分片,且该M个数据分片中的任一数据分片为该N个数据分片中的一个数据分片,M为大于N的整数;
发送模块1003,用于向接收端发送多个报文,以将目标数据发送给接收端。
可选地,对于多个报文中的第一报文,当第一报文携带多个数据分片时,多个数据分片不相同,第一报文是指多个报文中的任一报文。
可选地,该装置还包括:
加密模块,用于根据加密策略,对M个数据分片中的部分数据分片进行加密;
其中,多个报文中携带有加密后的数据分片的报文还携带第一标识,第一标识用于指示相应报文中携带的加密后的数据分片。
可选地,该装置还包括:
获取模块,用于获取K个伪数据分片,K为大于或等于1的整数;
生成模块1002包括:
第一生成子模块,用于根据N个数据分片中每个数据分片的数据大小和K个伪数据分片的数据大小,生成多个报文;
其中,多个报文中携带有伪数据分片的报文还携带第二标识,第二标识用于指示相应报文中携带的伪数据分片,多个报文携带的所有数据分片的数量为M+K个。
可选地,生成模块1002包括:
加噪子模块,用于对M个数据分片中的部分数据分片或者所有数据分片添加噪声;
第二生成子模块,用于根据添加噪声后的M个数据分片中每个数据分片的数据大小,生成多个报文;
其中,多个报文中携带添加有噪声的数据分片的报文还携带第三标识,第三标识用于指示相应报文中携带的添加有噪声的数据分片。
在本申请实施例中,由于N个数据分片是发送端根据待发送的目标数据的数据大小和链路层要求的最大数据大小,对目标数据进行分片后得到的,且向接收端发送的多个报文中总共携带有M个数据分片,该M大于N。也即是,该多个报文携带有对N个数据分片中同一数据分片进行重复的数据分片。因此,接收端在接收到该多个报文之后,若某数据分片存在损坏,那么可以根据该多个报文携带的重复的该数据分片,恢复出该数据分片,进而最终得到目标数据。由此可知,通过本申请提供的方法进行通信时,当存在损坏的数据分片时,不需要发送端重传该数据分片,因此本方案可以提高通信的可靠性。尤其在网络环境特别差的情况下,可以提高通信的可靠性,最大程度地保证目标数据一次性可达。
需要说明的是:上述实施例提供的通信装置在通信时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的通信装置与通信方法实施例中发送端属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图11是本申请实施例提供的另一种通信装置的结构示意图,该通信装置可以由软件、硬件或者两者的结合实现成为接收端的部分或者全部。参见图11,该装置包括:接收模块1101、恢复模块1102和重组模块1103。
接收模块1101,用于接收发送端发送的多个报文,多个报文中的每个报文携带一个或多个数据分片,一个或多个数据分片的总数据大小不超过链路层要求的最大数据大小,多个报文携带有M个数据分片,M个数据分片中的任一数据分片为该N个数据分片中的一个数据分片,N个数据分片是指发送端对待发送的目标数据进行分片后得到的,M为大于N的整数,N为大于或等于1的整数;
恢复模块1102,用于根据多个报文携带的数据分片,恢复出该N个数据分片;
重组模块1103,用于对N个数据分片进行重组,得到目标数据。
可选地,恢复模块1102包括:
获取单元,用于从多个报文携带的所有数据分片中,获取未损坏的数据分片;
第一恢复单元,用于对于N个数据分片中的第一数据分片,如果未损坏的数据分片中不包括第一数据分片,且该M个数据分片中包括P个已损坏的第一数据分片,则根据P个已损坏的第一数据分片,恢复出该第一数据分片,第一数据分片是指N个数据分片中的任一数据分片,P为大于1的整数。
可选地,恢复单元包括:
第一确定子单元,用于对于第一数据分片中第一字节,确定P个已损坏的第一数据分片中第一字节上的数据是否均相同,第一字节是指第一数据分片中的任一字节;
第一设置子单元,用于如果P个已损坏的第一数据分片中第一字节上的数据均相同,则将该P个已损坏的第一数据分片中第一字节上的数据作为恢复出的第一数据分片中第一字节上的数据。
可选地,恢复单元还包括:
第二确定子单元,用于如果P个已损坏的第一数据分片中第一字节上的数据不完全相同,则确定P个已损坏的第一数据分片中第一字节上的数据相同的数据分片的个数;
第二设置子单元,用于如果确定的数据分片的个数大于参考个数,则将大于参考个数的数据分片中第一字节上的数据作为恢复出的第一数据分片中第一字节上的数据。
可选地,该装置还包括:
解密单元,用于对于多个报文中的第二报文,根据解密策略和第二报文携带的第一标识,对第二报文中携带的加密后的数据分片进行解密,第一标识用于指示第二报文中携带的加密后的数据分片,第二报文是指多个报文中携带有加密后的数据分片的任一报文。
可选地,该装置还包括:
识别单元,用于对于多个报文中的第一报文,根据第一报文携带的第二标识,识别第一报文携带的伪数据分片,第二标识用于指示第一报文中携带的伪数据分片,第一报文是指多个报文中的任一报文;
恢复模块1102包括:
第二恢复单元,用于根据多个报文携带的数据分片中除伪数据分片之外的数据分片,恢复出该N个数据分片。
可选地,该装置还包括:
滤除模块,用于对于多个报文中的第一报文,根据第一报文携带的第三标识,对第一报文携带的添加有噪声的数据分片进行噪声滤除,第三标识用于指示第一报文中携带的添加有噪声的数据分片,第一报文是指多个报文中的任一报文。
综上所述,在本申请实施例中,由于N个数据分片是发送端根据待发送的目标数据的数据大小和链路层要求的最大数据大小,对目标数据进行分片后得到的,且向接收端发送的多个报文中总共携带有M个数据分片,该M大于N。也即是,该多个报文携带有对N个数据分片中同一数据分片进行重复的数据分片。因此,接收端在接收到该多个报文之后,若某数据分片存在损坏,那么可以根据该多个报文携带的重复的该数据分片,恢复出该数据分片,进而最终得到目标数据。由此可知,通过本申请提供的方法进行通信时,当存在损坏的数据分片时,不需要发送端重传该数据分片,因此本方案可以提高通信的可靠性。尤其在网络环境特别差的情况下,可以提高通信的可靠性,最大程度地保证目标数据一次性可达。
需要说明的是:上述实施例提供的通信装置在通信时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的通信装置与通信方法实施例中接收端属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意结合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络或其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如:同轴电缆、光纤、数据用户线(digital subscriber line,DSL))或无线(例如:红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质,或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如:软盘、硬盘、磁带)、光介质(例如:数字通用光盘(digital versatile disc,DVD))或半导体介质(例如:固态硬盘(solid state disk,SSD))等。值得注意的是,本申请提到的计算机可读存储介质可以为非易失性存储介质,换句话说,可以是非瞬时性存储介质。
以上所述为本申请提供的实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (16)
1.一种通信方法,应用于发送端,其特征在于,所述方法包括:
根据待发送的目标数据的数据大小和链路层要求的最大数据大小,对所述目标数据进行分片,得到N个数据分片,所述N个数据分片中每个数据分片的数据大小不超过所述链路层要求的最大数据大小,所述N为大于或等于1的整数;
根据所述N个数据分片中每个数据分片的数据大小,生成多个报文,所述多个报文中的每个报文携带一个或多个数据分片,所述一个或多个数据分片的总数据大小不超过所述链路层要求的最大数据大小,所述多个报文总共携带有M个数据分片,且所述M个数据分片中的任一数据分片为所述N个数据分片中的一个数据分片,所述M为大于N的整数;
向接收端发送所述多个报文,以将所述目标数据发送给所述接收端。
2.如权利要求1所述的方法,其特征在于,对于所述多个报文中的第一报文,当所述第一报文携带多个数据分片时,所述多个数据分片不相同,所述第一报文是指所述多个报文中的任一报文。
3.如权利要求1或2所述的方法,其特征在于,所述根据所述N个数据分片中每个数据分片的数据大小,生成多个报文之前,还包括:
根据加密策略,对所述M个数据分片中的部分数据分片进行加密;
其中,所述多个报文中携带有加密后的数据分片的报文还携带第一标识,所述第一标识用于指示相应报文中携带的加密后的数据分片。
4.如权利要求1-3任一所述的方法,其特征在于,所述根据所述N个数据分片中每个数据分片的数据大小,生成多个报文之前,还包括:
获取K个伪数据分片,所述K为大于或等于1的整数;
所述根据所述N个数据分片中每个数据分片的数据大小,生成多个报文,包括:
根据所述N个数据分片中每个数据分片的数据大小和所述K个伪数据分片的数据大小,生成所述多个报文;
其中,所述多个报文中携带有伪数据分片的报文还携带第二标识,所述第二标识用于指示相应报文中携带的伪数据分片,所述多个报文携带的所有数据分片的数量为M+K个。
5.如权利要求1-4任一所述的方法,其特征在于,所述根据所述N个数据分片中每个数据分片的数据大小,生成多个报文,包括:
对所述M个数据分片中的部分数据分片或者所有数据分片添加噪声;
根据添加噪声后的M个数据分片中每个数据分片的数据大小,生成所述多个报文;
其中,所述多个报文中携带添加有噪声的数据分片的报文还携带第三标识,所述第三标识用于指示相应报文中携带的添加有噪声的数据分片。
6.一种通信方法,应用于接收端,其特征在于,所述方法包括:
接收发送端发送的多个报文,所述多个报文中的每个报文携带一个或多个数据分片,所述一个或多个数据分片的总数据大小不超过链路层要求的最大数据大小,所述多个报文总共携带有M个数据分片,所述M个数据分片中的任一数据分片为N个数据分片中的一个数据分片,所述N个数据分片是指所述发送端对待发送的目标数据进行分片后得到的,所述M为大于N的整数,所述N为大于或等于1的整数;
根据所述多个报文携带的数据分片,恢复出所述N个数据分片;
对所述N个数据分片进行重组,得到所述目标数据。
7.如权利要求6所述的方法,其特征在于,所述根据所述多个报文携带的数据分片,恢复出所述N个数据分片,包括:
从所述多个报文携带的所有数据分片中,获取未损坏的数据分片;
对于所述N个数据分片中的第一数据分片,如果所述未损坏的数据分片中不包括所述第一数据分片,且所述M个数据分片中包括P个已损坏的第一数据分片,则根据所述P个已损坏的第一数据分片,恢复出所述第一数据分片,所述第一数据分片是指所述N个数据分片中的任一数据分片,所述P为大于1的整数。
8.如权利要求7所述的方法,其特征在于,所述根据所述P个已损坏的第一数据分片,恢复出所述第一数据分片,包括:
对于所述第一数据分片中第一字节,确定所述P个已损坏的第一数据分片中所述第一字节上的数据是否均相同,所述第一字节是指所述第一数据分片中的任一字节;
如果所述P个已损坏的第一数据分片中所述第一字节上的数据均相同,则将所述P个已损坏的第一数据分片中所述第一字节上的数据作为恢复出的第一数据分片中所述第一字节上的数据。
9.如权利要求8所述的方法,其特征在于,所述确定所述P个已损坏的第一数据分片中所述第一字节上的数据是否均相同之后,还包括:
如果所述P个已损坏的第一数据分片中所述第一字节上的数据不完全相同,则确定所述P个已损坏的第一数据分片中所述第一字节上的数据相同的数据分片的个数;
如果确定的数据分片的个数大于参考个数,则将大于所述参考个数的数据分片中所述第一字节上的数据作为恢复出的第一数据分片中所述第一字节上的数据。
10.如权利要求6-9任一所述的方法,其特征在于,所述根据所述多个报文携带的数据分片,恢复出所述N个数据分片之前,还包括:
对于所述多个报文中的第二报文,根据解密策略和所述第二报文携带的第一标识,对所述第二报文中携带的加密后的数据分片进行解密,所述第一标识用于指示所述第二报文中携带的加密后的数据分片,所述第二报文是指所述多个报文中携带有加密后的数据分片的任一报文。
11.如权利要求6-10任一所述的方法,其特征在于,所述根据所述多个报文携带的数据分片,恢复出所述N个数据分片之前,还包括:
对于所述多个报文中的第三报文,根据所述第三报文携带的第二标识,识别所述第一报文携带的伪数据分片,所述第二标识用于指示所述第三报文中携带的伪数据分片,所述第三报文是指所述多个报文中携带有伪数据分片的任一报文;
所述根据所述多个报文携带的数据分片,恢复出所述N个数据分片,包括:
根据所述多个报文携带的数据分片中除伪数据分片之外的数据分片,恢复出所述N个数据分片。
12.如权利要求6-11任一所述的方法,其特征在于,所述根据所述多个报文携带的数据分片,恢复出所述N个数据分片之前,还包括:
对于所述多个报文中的第四报文,根据所述第四报文携带的第三标识,对所述第四报文携带的添加有噪声的数据分片进行噪声滤除,所述第三标识用于指示所述第四报文中携带的添加有噪声的数据分片,所述第四报文是指所述多个报文中携带有添加噪声的数据分片的任一报文。
13.一种通信装置,其特征在于,所述通信装置应用于发送端,所述通信装置包括:
分片模块,用于根据待发送的目标数据的数据大小和链路层要求的最大数据大小,对所述目标数据进行分片,得到N个数据分片,所述N个数据分片中每个数据分片的数据大小不超过所述链路层要求的最大数据大小,所述N为大于或等于1的整数;
生成模块,用于根据所述N个数据分片中每个数据分片的数据大小,生成多个报文,所述多个报文中的每个报文携带一个或多个数据分片,所述一个或多个数据分片的总数据大小不超过所述链路层要求的最大数据大小,所述多个报文总共携带有M个数据分片,且所述M个数据分片中的任一数据分片为所述N个数据分片中的一个数据分片,所述M为大于N的整数;
发送模块,用于向接收端发送所述多个报文,以将所述目标数据发送给所述接收端。
14.一种通信装置,其特征在于,所述通信装置应用于接收端,所述通信装置包括:
接收模块,用于接收发送端发送的多个报文,所述多个报文中的每个报文携带一个或多个数据分片,所述一个或多个数据分片的总数据大小不超过链路层要求的最大数据大小,所述多个报文总共携带有M个数据分片,所述M个数据分片中的任一数据分片为N个数据分片中的一个数据分片,所述N个数据分片是指所述发送端对待发送的目标数据进行分片后得到的,所述第一数据分片是指所述N个数据分片中的任一数据分片,所述M为大于N的整数,所述N为大于或等于1的整数;
恢复模块,用于根据所述多个报文携带的数据分片,恢复出所述N个数据分片;
重组模块,用于对所述N个数据分片进行重组,得到所述目标数据。
15.一种通信系统,其特征在于,所述通信系统包括发送端和接收端,所述发送端用于执行权利要求1-5任一所述方法的步骤,所述接收端用于执行权利要求6-12任一所述方法的步骤。
16.一种计算机可读存储介质,其特征在于,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-5任一所述的方法的步骤,或实现权利要求6-12任一所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911018719.7A CN112714070B (zh) | 2019-10-24 | 2019-10-24 | 通信方法、装置、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911018719.7A CN112714070B (zh) | 2019-10-24 | 2019-10-24 | 通信方法、装置、系统及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112714070A true CN112714070A (zh) | 2021-04-27 |
CN112714070B CN112714070B (zh) | 2024-01-09 |
Family
ID=75540279
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911018719.7A Active CN112714070B (zh) | 2019-10-24 | 2019-10-24 | 通信方法、装置、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112714070B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113962832A (zh) * | 2021-12-22 | 2022-01-21 | 国网电子商务有限公司 | 一种面向多能源市场的证书生成、转化方法及系统 |
CN114390096A (zh) * | 2021-12-29 | 2022-04-22 | 中国电信股份有限公司 | 一种基于NB-IoT的数据传输方法、设备及装置 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1509025A (zh) * | 2002-12-18 | 2004-06-30 | ��Ϊ��������˾ | 一种实现报文分片组包的方法 |
CN1751480A (zh) * | 2003-06-18 | 2006-03-22 | 日本电信电话株式会社 | 无线分组通信方法 |
CN1909443A (zh) * | 2005-08-02 | 2007-02-07 | 三菱电机株式会社 | 数据配送装置和数据通信系统 |
CN101119319A (zh) * | 2007-09-19 | 2008-02-06 | 腾讯科技(深圳)有限公司 | 一种在数据传输过程中抵抗丢包的方法、收发装置及系统 |
CN101436919A (zh) * | 2008-12-11 | 2009-05-20 | 浙江大学 | 基于单向广播网络的可靠文件接收系统的断点续传的方法 |
CN102014067A (zh) * | 2010-12-14 | 2011-04-13 | 北京星网锐捷网络技术有限公司 | 一种报文分片发送的方法、装置和网络设备 |
CN102904954A (zh) * | 2012-10-15 | 2013-01-30 | 浙江工业大学 | 一种基于网络编码的6LoWPAN分片可靠传输方法 |
CN103096302A (zh) * | 2011-10-27 | 2013-05-08 | 华为技术有限公司 | 一种加密方法、解密方法和相关装置 |
CN103748845A (zh) * | 2012-07-26 | 2014-04-23 | 华为技术有限公司 | 报文发送方法、接收方法、装置及系统 |
CN105531951A (zh) * | 2014-07-29 | 2016-04-27 | 华为技术有限公司 | 数据加密传输方法和装置 |
CN107104898A (zh) * | 2016-02-22 | 2017-08-29 | 华为技术有限公司 | 报文传输的方法、设备及系统 |
CN107147444A (zh) * | 2017-04-18 | 2017-09-08 | 东莞信大融合创新研究院 | 一种基于可见光的数据传输方法、装置与系统 |
-
2019
- 2019-10-24 CN CN201911018719.7A patent/CN112714070B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1509025A (zh) * | 2002-12-18 | 2004-06-30 | ��Ϊ��������˾ | 一种实现报文分片组包的方法 |
CN1751480A (zh) * | 2003-06-18 | 2006-03-22 | 日本电信电话株式会社 | 无线分组通信方法 |
CN1909443A (zh) * | 2005-08-02 | 2007-02-07 | 三菱电机株式会社 | 数据配送装置和数据通信系统 |
CN101119319A (zh) * | 2007-09-19 | 2008-02-06 | 腾讯科技(深圳)有限公司 | 一种在数据传输过程中抵抗丢包的方法、收发装置及系统 |
CN101436919A (zh) * | 2008-12-11 | 2009-05-20 | 浙江大学 | 基于单向广播网络的可靠文件接收系统的断点续传的方法 |
CN102014067A (zh) * | 2010-12-14 | 2011-04-13 | 北京星网锐捷网络技术有限公司 | 一种报文分片发送的方法、装置和网络设备 |
CN103096302A (zh) * | 2011-10-27 | 2013-05-08 | 华为技术有限公司 | 一种加密方法、解密方法和相关装置 |
CN103748845A (zh) * | 2012-07-26 | 2014-04-23 | 华为技术有限公司 | 报文发送方法、接收方法、装置及系统 |
CN102904954A (zh) * | 2012-10-15 | 2013-01-30 | 浙江工业大学 | 一种基于网络编码的6LoWPAN分片可靠传输方法 |
CN105531951A (zh) * | 2014-07-29 | 2016-04-27 | 华为技术有限公司 | 数据加密传输方法和装置 |
CN107104898A (zh) * | 2016-02-22 | 2017-08-29 | 华为技术有限公司 | 报文传输的方法、设备及系统 |
CN107147444A (zh) * | 2017-04-18 | 2017-09-08 | 东莞信大融合创新研究院 | 一种基于可见光的数据传输方法、装置与系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113962832A (zh) * | 2021-12-22 | 2022-01-21 | 国网电子商务有限公司 | 一种面向多能源市场的证书生成、转化方法及系统 |
CN113962832B (zh) * | 2021-12-22 | 2022-02-25 | 国网电子商务有限公司 | 一种面向多能源市场的证书生成、转化方法及系统 |
CN114390096A (zh) * | 2021-12-29 | 2022-04-22 | 中国电信股份有限公司 | 一种基于NB-IoT的数据传输方法、设备及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112714070B (zh) | 2024-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8732453B2 (en) | Secure acknowledgment device for one-way data transfer system | |
US11336627B2 (en) | Packet inspection and forensics in an encrypted network | |
US11336660B2 (en) | Methods and apparatuses for identifying replay transaction based on blockchain integrated station | |
US11463553B2 (en) | Methods and apparatuses for identifying to-be-filtered transaction based on blockchain integrated station | |
US20230388339A1 (en) | Secure communication method, apparatus, and system for dc interconnection | |
CN111133427A (zh) | 生成和分析网络配置文件数据 | |
CN113507483B (zh) | 即时通讯方法、装置、服务器及存储介质 | |
CN112714070B (zh) | 通信方法、装置、系统及存储介质 | |
Crain et al. | Bolt-on security extensions for industrial control system protocols: A case study of dnp3 sav5 | |
US11716367B2 (en) | Apparatus for monitoring multicast group | |
CN114650188A (zh) | 一种基于代理节点的数据安全传输方法及装置 | |
CN113489589A (zh) | 数据加密、解密方法、装置及电子设备 | |
CN113992432A (zh) | 消息处理方法、消息总线系统、计算机设备及存储介质 | |
CN114124416B (zh) | 一种网络之间数据快速交换系统及交换方法 | |
CN109714337B (zh) | 一种数据加密传输方法及设备 | |
WO2019236177A1 (en) | System and asynchronous protocol for verifiable secret sharing | |
CN115086428B (zh) | 网络请求发送方法、装置与电子设备 | |
CN115085926A (zh) | 基于区块链和物联网数据汇聚闸道的数据采集方法及系统 | |
CN115152180A (zh) | 改进的包传输 | |
CN112953968A (zh) | 一种基于安全认证的配电终端运维通信方法及装置 | |
CN112134884A (zh) | 一种报文序列号的更新方法 | |
CN111859351A (zh) | 向芯片写入信息的方法、系统、服务器及存储介质 | |
WO2019200690A1 (zh) | 数据保护方法、服务器及计算机可读存储介质 | |
CN110958285A (zh) | 一种基于区块链的数据存储系统 | |
CN112995988B (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 |