CN111865493A - 数据处理方法及相关设备 - Google Patents
数据处理方法及相关设备 Download PDFInfo
- Publication number
- CN111865493A CN111865493A CN202010570859.1A CN202010570859A CN111865493A CN 111865493 A CN111865493 A CN 111865493A CN 202010570859 A CN202010570859 A CN 202010570859A CN 111865493 A CN111865493 A CN 111865493A
- Authority
- CN
- China
- Prior art keywords
- data frame
- target data
- character
- segment
- result corresponding
- 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.)
- Pending
Links
Images
Classifications
-
- 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/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0083—Formatting with frames or packets; Protocol or part of protocol for error 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/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
Abstract
本申请的实施例提供了一种数据处理方法及相关设备,该方法包括:对于终端设备所对应的目标数据帧,对目标数据帧中的数据段和第二数据帧中的数据段进行异或运算,得到目标数据帧对应的异或结果;根据目标数据帧所对应异或结果中的有效字符段,对目标数据帧中的数据段进行压缩编码,得到编码字符串,有效字符段是所在异或结果中从首个非零字符开始至末尾非零字符结束所形成的字符段;通过编码字符串替换目标数据帧中的数据段,将进行替换后的目标数据帧作为待传输至云端的数据帧,通过进行压缩编码,可以有效缓解传输中网络拥塞的问题。
Description
技术领域
本申请涉及物联网技术领域,具体而言,涉及一种数据处理方法及相关设备。
背景技术
随着云物联的提出以及云计算技术的发展,基于云端进行终端设备的远程控制、监控的应用越来越广泛。在此背景下,越来越多的终端设备加入到物联网联系统中。在物联网系统中,随着更多终端设备的加入,云端与终端设备之间的数据传输量也增多,而实际中数据传输带宽有限,导致数据传输存在网络拥塞的问题。
发明内容
本申请的实施例提供了一种数据处理方法及相关设备,进而至少在一定程度上可以缓解相关技术中因物联网中接入终端设备多所导致网络拥塞的问题。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
根据本申请实施例的一个方面,提供了一种数据处理方法,应用于边缘计算设备,终端设备通过所述边缘计算设备与云端通信,所述方法包括:
对于终端设备所对应的目标数据帧,对所述目标数据帧中的数据段和第二数据帧中的数据段进行异或运算,得到所述目标数据帧对应的异或结果,所述第二数据帧是所述目标数据帧对应的上一数据帧;
根据所述目标数据帧所对应异或结果中的有效字符段,对所述目标数据帧中的数据段进行压缩编码,得到编码字符串,所述有效字符段是所在异或结果中从首个非零字符开始至末尾非零字符结束所形成的字符段;
通过所述编码字符串替换所述目标数据帧中的数据段,将进行替换后的目标数据帧作为待传输至所述云端的数据帧。
根据本申请实施例的一个方面,提供了一种数据处理装置,应用于边缘计算设备,终端设备通过所述边缘计算设备与云端通信,所述装置包括:
异或模块,用于对于终端设备所对应的目标数据帧,对所述目标数据帧中的数据段和第二数据帧中的数据段进行异或运算,得到所述目标数据帧对应的异或结果,所述第二数据帧是所述目标数据帧对应的上一数据帧;
压缩编码模块,用于根据所述目标数据帧所对应异或结果中的有效字符段,对所述目标数据帧中的数据段进行压缩编码,得到编码字符串,所述有效字符段是所在异或结果中从首个非零字符开始至末尾非零字符结束所形成的字符段;
替换模块,用于通过所述编码字符串替换所述目标数据帧中的数据段,将进行替换后的目标数据帧作为待传输至所述云端的数据帧。
根据本申请实施例的一个方面,提供了一种电子设备,包括:处理器;及存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,实现如上所述的方法。
根据本申请实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被处理器执行时,实现如上所述的方法。
在本申请的一些实施例所提供的技术方案中,先将目标数据帧中的数据段与第二数据帧中的数据段进行异或运算,然后根据异或结果中的有效字符段对目标数据帧中的数据段进行压缩编码,得到编码字符串,再用编码字符串替换目标数据帧中的数据段。由于是对目标数据帧中的数据段进行压缩编码,则必然的,压缩编码所得到编码字符串对应的数据量小于目标数据帧中数据段所对应的数据量,实现了数据段的压缩。则对应的,传输进行替换后的目标数据帧所占用的网络带宽减少,从而,可以有效缓解现有技术中网络拥塞的问题。
而且,由于是根据目标数据帧中所对应的异或结果中的有效字符段来对数据段进行压缩编码,编码字符串可以体现所对应有效字符段相关的信息。目标数据帧所对应异或结果中的有效字符段表征了该目标数据帧中数据段与第二数据帧中数据段之间的差异,因此,在第二数据帧中数据段已知的前提下,接收该进行替换后目标数据帧的云端,可以根据该第二数据帧中的数据段和目标数据帧所对应异或结果中的有效字符段来反向解码确定目标数据帧中的数据段。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
在附图中:
图1是根据一示例性实施例示出的实施环境的示意图;
图2是根据一实施例示出的数据处理方法的流程图;
图3是图2对应实施例中步骤230在一实施例中的流程图;
图4是根据另一实施例示出的数据处理方法的流程图;
图5是根据一实施例示出的对目标数据帧中时间戳和数据段进行压缩编码的示意图;
图6是根据一实施例示出的步骤210之前步骤的流程图;
图7是根据一具体实施例示出的对目标数据帧进行过滤与转换的流程图;
图8是根据另一实施例示出的在步骤210之前步骤的流程图;
图9是根据一具体实施例示出的位图的示意图;
图10是根据一具体实施示出的实施环境的示意图;
图11是相关技术中物联网系统中云端的业务部署示意图;
图12是按照本申请的方案所示出LoRa网络服务器与云端的业务部署示意图;
图13是根据一实施例示出的步骤250之后步骤的流程图;
图14是根据一实施例示出的数据处理装置的框图;
图15示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本申请将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
随着云技术和物联网技术的发展,通过云端来对终端设备进行远程控制和监控的应用越来越广泛。其中,云物联(Cloud IOT)旨在将传统物联网中终端设备感知的信息和接受的指令连入互联网中,真正实现网络化,并通过云计算技术实现海量数据存储和运算。
在云物联系统中,由云端对终端设备上报的数据集中进行处理并以此对终端设备进行远程控制。而随着终端设备接入数量的增长,云端与终端设备之间的数据传输总量增大,受限于网络传输带宽,容易出现网络拥塞的问题。为了解决现有技术中在云物联系统中因终端设备数量多、数据传输总量大所造成网络拥塞的问题,提出了本申请的方法。
图1是根据一示例性实施例示出的实施环境的示意图。如图1所示,该实施环境包括多个终端设备110、若干边缘计算设备130和云端150。其中,终端设备110通过边缘计算设备130与云端150进行通信。
终端设备110可以是各类传感器、智能家居设备(例如智能灯泡、智能窗帘电机)等,或者工业应用中的加工设备等,在此不进行具体限定。
边缘计算设备130是具备一定计算处理能力的计算机设备,可以是服务器等,在此不进行具体限定。可以理解的是,边缘计算设备130布设于终端设备所在的边缘节点,在将终端设备的数据上传至云端之前,由边缘计算设备130来对终端设备所上报的数据进行预处理,以此来减少向云端所传输的数据总量。其中,边缘计算设备所进行的预处理可以是如下文中的去重、过滤、转换、压缩编码等处理。
云端150又可以称为云计算资源池平台,作为云计算的基础能力提供方。其中部署多种类型的虚拟资源,供外部选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。在本公开的方案中,基于云端150所具备的云计算能力,对各终端设备110进行远程控制。
以下对本申请实施例的技术方案的实现细节进行详细阐述:
图2是根据一实施例示出的数据处理方法的流程图,该方法由图1所示的边缘计算设备来执行,终端设备通过边缘计算设备与云端通信。参照图2所示,该数据处理方法至少包括步骤210至步骤250,详细介绍如下:
步骤210,对于终端设备所对应的目标数据帧,对目标数据帧中的数据段和第二数据帧中的数据段进行异或运算,得到目标数据帧对应的异或结果,第二数据帧是目标数据帧对应的上一数据帧。
如上所描述,在云物联系统中,为了便于云端对终端设备进行远程控制和监控,各终端设备实时向云端上报自身的状态数据。举例来说,若终端设备为温度传感器,则所上报自身的状态数据可以是温度。
对于终端设备而言,该终端设备是根据与云端之间的通信协议,按帧进行自身状态信息的上报,即将自身的状态数据封装成数据帧进行传输。而数据帧中的数据段即是对终端设备的状态数据进行编码所得到的字符串。
值得一提的是,数据帧中数据段所对应的编码方式区别于下文中的压缩编码,在具体实施例中,数据帧中的数据段是按照IEEE754标准进行编码得到的。
其中,目标数据帧并不特指某一数据帧,而是泛指终端设备所上报待进行处理的数据帧。同理,第二数据帧也并不特征某一数据帧,而是泛指终端设备所上报对应于目标数据帧的上一数据帧。
在IEEE754标准下,浮点数据编码所得到的字符串的格式为:符号位+指数位+有效数字位
其中,符号位s(Sign)用于指示该浮点数是正数还是负数,如果是正数,符号位s=0,如果是负数,s=1。指数位E(Exponent)是2的幂,它的作用是对浮点数加权。有效数字位M是二进制小数,它的取值范围是二进制小数,它的取值范围为1-2-ε,或者为0-1-ε。
在物联网场景下,每一终端设备实时地进行自身状态数据的上报,而对于同一终端设备而言,在两相邻时间点该终端设备的状态数据变化不大,指示该状态数据的浮点数也不会有明显的变化。由于浮点数是按照IEEE754标准进行机器编码,符号位和指数位在高位,所以,两相邻时间点终端设备的状态数据所对应编码中高位相同。那么,将针对同一终端设备的两相邻数据帧(在本申请方案中即目标数据帧和第二数据帧)进行异或运算,所得到的异或结果中必然会存在很多高位的零,基于此,根据所得到的异或结果来对目标数据帧中的数据段进行编码压缩。
异或运算中,参与运算的两个值,如果两个相应位相同,则异或值为0,反之,如果两个相应位不同,则异或值为1。即:0^0=0,1^0=1,0^1=1,1^1=0。在异或运算中,若C=A^B(^为异或运算),那么A=C^B。
如上所描述,在两个数据段进行异或运算中,若相应位相同,则异或值为0,反之,如果相应位不同,则异或值为1。那么,对应的,将两数据段进行异或运算,则可以得到由0和1构成的字符串。
值得一提的是,异或运算是基于二进制数进行的,如果两进行异或运算的对象不是二进制数,例如为十六进制数,那么,在进行异或运算时,需要先将该两个十六进制数转换为二进制数后,然后再按位进行异或,对应得到每位对应的异或值,从而,由每位对应的异或值组合成的字符串作为异或结果。
举例来说,若a=10100001,b=00000110,则a^b=10100111。
在具体实施例中,由于直接得到的异或结果是二进制码,为了便于处理,还可以进一步将二进制码转换成其他数制的数,例如转换为十六进制码等,然后基于转换后的异或结果进行后续的处理。
步骤230,根据目标数据帧所对应异或结果中的有效字符段,对目标数据帧中的数据段进行压缩编码,得到编码字符串,有效字符段是所在异或结果中从首个非零字符开始至末尾非零字符结束所形成的字符段。
如上所描述,在将目标数据帧和第二数据帧进行异或运算所得到的异或结果中,存在较多高位的零,因此,为了实现对目标数据帧中数据段的压缩,进一步从异或结果中提取出有效字符段。该有效字符段即为异或结果中从首个非零字符开始至末尾非零字符结束所形成的字符段。
举例来说,若将一目标数据帧中的数据段与第二数据帧中的数据段进行异或运算所得到的异或结果为:0x0006C00000000000,其中,0x表示该异或结果是用十六进制表示的。那么,在该异或结果中,其首个非零字符位为第四位,对应的字符为6,末尾非零字符为第五位,对应的字符为C,因此,该异或结果中的有效字符段为6C。
可以理解的是,由于是对目标数据帧中的数据段进行压缩编码,则必然的,压缩编码所得到编码字符串对应的数据量小于目标数据帧中数据段所对应的数据量,实现了数据段的压缩。
而且,由于是根据目标数据帧中所对应的异或结果中的有效字符段来对数据段进行压缩编码,则编码字符串可以体现所对应有效字符段相关的信息。进一步的,目标数据帧所对应异或结果中的有效字符段表征了该目标数据帧中数据段与第二数据帧中数据段之间的差异,因此,在第二数据帧中数据段已知的前提下,可以根据该第二数据帧中的数据段和目标数据帧所对应异或结果中的有效字符段来反向确定目标数据帧中的数据段。因此,通过本方案中根据目标数据帧中所对应的异或结果中的有效字符段对目标数据帧中的数据段进行压缩,一方面实现了数据段的压缩,另一方面,并不影响解码确定目标数据帧中的数据段。
步骤250,通过编码字符串替换目标数据帧中的数据段,将进行替换后的目标数据帧作为待传输至云端的数据帧。
值得一提的是,由于数据的传输是按照二进制流进行传输,因此,不管是目标数据帧中的数据段还是压缩编码所得到的编码字符串均为二进制字符串,从而,编码字符串可以直接替换目标数据帧中的数据段而不用再进行转换。
如上所描述,由于编码字符串的数据量相较于目标数据帧中数据段的数据量较少,那么通过编码字符串替换目标数据帧中的数据段后,目标数据帧中整体的数据量减少,对应的,传输该目标数据帧所占用的带宽减少,从而,可以有效缓解现有技术中因传输数据量大所导致网络拥塞的问题。
在本申请的方案中,若目标数据帧为在设定周期内终端设备所上报的首个数据帧,则将目标数据帧缓存,直接作为待传输至云端的数据帧。换言之,若目标数据帧为首个数据帧,由于其并没有对应的上一数据帧,因此,对该目标数据帧中的数据段不进行压缩编码,而直接将该目标数据帧缓存,直接作为待传输至云端的数据帧。
在本申请的一实施例中,如图3所示,步骤230包括:
步骤310,若目标数据帧所对应异或结果的值不为零,获取第二数据帧对应的异或结果。
可以理解的是,第二数据帧对应的异或结果是将第二数据帧中的数据段与该第二数据帧所对应上一数据帧中的数据段进行异或运算所得到的异或结果。同理,第二数据帧所对应的上一数据帧仍然是对应于第二数据帧所对应的终端设备的。即第二数据帧、第二数据帧对应的上一数据帧是由同一终端设备所连续上报的两数据帧。
如果目标数据帧所对应异或结果的值不为零,则表明目标数据帧中的数据段与第二数据帧中的数据段中存在字符不相同的比特位。
反之,如果目标数据帧所对应异或结果的值为零,表明目标数据帧的异或结果中的字符均为零,也就是说,目标数据帧中数据段与第二数据帧中数据段的异或结果中每一位均为0,进而表明该目标数据帧中的数据段与第二数据帧的数据段相同,那么,只要确定第二数据帧的数据段,即可确定目标数据帧中的数据段。
在本申请的一实施例中,若目标数据帧所对应异或结果中有效字符段的值为零,则确定编码字符串为设定位数的零字符,其中,设定位数小于目标数据帧中数据段的位数。由于将设定位数的零字符作为编码字符串,且该设定位数小于目标数据帧中数据段的位数,从而,编码字符串所对应的数据量显然小于目标数据帧中数据段对应的数据量。
在一具体实施例中,若目标数据帧所对应异或结果中有效字符段的值为零,则确定编码字符串为一位0,从而,存储该编码字符串仅需要一位比特(bit)。
步骤320,根据第二数据帧对应的异或结果和目标数据帧对应的异或结果确定控制位字符。
在步骤320中,根据第二数据帧所对应异或结果的值与目标数据帧所对应异或结果的值是否相同来对应确定控制位字符。换言之,在第二数据帧所对应异或结果的值与目标数据帧所对应异或结果的值相同时的控制位字符,与在第二数据帧所对应异或结果的值与目标数据帧所对应异或结果的值不同时控制位字符是不同的。
在本申请的一实施例中,若目标数据帧所对应异或结果的值不大于第二数据帧所对应异或结果的值,则将控制位字符确定为第一字符串;若目标数据帧所对应异或结果的值大于第二数据帧所对应异或结果的值,则将控制位字符确定为第二字符串,第二字符串区别于第一字符串。
在一具体实施例中,设定控制位字符为两位,其中,如果目标数据帧所对应异或结果的值不为零,确定控制位字符中的第一位为1;进一步的,若目标数据帧所对应异或结果的值不大于第二数据帧所对应异或结果的值,则确定控制位字符中的第二位为0;若目标数据帧所对应异或结果的值大于第二数据帧所对应异或结果的值,则确定控制位字符中的第二位为1。
总结来说,在目标数据帧所对应异或结果的值不为零的基础上,若目标数据帧所对应异或结果的值不大于第二数据帧所对应异或结果的值,则控制位字符为10,此时,相当于第一字符串为10;反之,若目标数据帧所对应异或结果的值大于第二数据帧所对应异或结果的值,则控制位字符为11,此时,相当于第一字符串为11。当然,以上仅仅是示例性举例,在其他实施例中,还可以预先设定控制位字符为三位,然后对应设定用于表征目标数据帧所对应异或结果的值不大于第二数据帧所对应异或结果的值的控制位字符,和用于表征目标数据帧所对应异或结果的值大于第二数据帧所对应异或结果的值的控制位字符。从而,在该设定基础上,来对应确定控制位字符。
步骤330,根据控制位字符和目标数据帧所对应异或结果中的有效字符段,生成编码字符串。
在步骤330中,以控制位字符和目标数据帧所对应异或结果中的有效字符段作为组成元素来对应生成编码字符串。
在本申请的一实施例中,若目标数据帧所对应异或结果的值大于第二数据帧所对应异或结果的值,根据目标数据帧所对应异或结果确定第三字符串和第四字符串,第三字符串用于指示目标数据帧所对应异或结果中,有效字符段前零字符的个数,第四字符串用于指示目标数据帧所对应异或结果中有效字符段所包括字符的个数。将第二字符串、第三字符串、第四字符串和目标数据帧所对应异或结果中的有效字符段进行组合,得到编码字符串。
在本实施例中,由于第三字符串指示了目标数据帧所对应异或结果中有效字符段前零字符的个数,第四字符串指示了目标数据帧所对应异或结果中有效字符段所包括字符的个数,因此,基于由第二字符串、第三字符串、第四字符串和目标数据帧所对应异或结果中有效字符段组合所得到的编码字符串,可以准确反映目标数据帧所对应的异或值中的字符。换言之,对于接收进行替换后目标数据帧的云端而言,根据该编码字符串可以解码确定该目标数据帧对应的异或值。在此基础上,云端借助于第二数据帧的数据段和所解码确定目标数据帧对应的异或值,对应确定目标数据帧中的数据段。
在本申请的一实施例中,针对目标数据帧所对应异或结果的值不大于第二数据帧所对应异或结果的值的情况,目标数据帧中数据段所对应编码字符串也可以按照上述的方式来生成,即:根据目标数据帧所对应异或结果确定第三字符串和第四字符串,然后将第一字符串、第三字符串、第四字符串和目标数据帧所对应异或结果中的有效字符段进行组合,得到编码字符串。
在本申请的另一实施例中,针对目标数据帧所对应异或结果的值不大于第二数据帧所对应异或结果的值的情况,还可以将第一字符串和目标数据帧所对应异或结果中的有效字符段进行组合,得到编码字符串。在此种情况下,云端根据与终端设备之间所设定的编码与解码规则,根据该编码字符串可以对应确定目标数据帧对应的异或结果,进而结合第二数据帧中的数据段来确定目标数据帧中的数据段。
在本申请的一实施例中,目标数据帧中还包括时间戳,如图4所示,该数据处理方法还包括:
步骤410,计算目标数据帧中的时间戳相较于第二数据帧所对应时间戳的时间增量。
在本实施例中,针对数据帧中的时间戳,若记录首个数据帧的时间戳,该首个数据帧的时间戳作为起始时间戳,那么,对于目标数据帧中的时间戳,分别与首个数据帧中的时间戳相减,对应得到时间增量(所得到的时间增量均为正数)。
步骤420,对时间增量进行编码,得到增量字符串。
值得一提的是,由于在网络传输过程中,目标数据帧是按照二进制流进行传输的,因此,此处所指的对时间增量进行编码是指对时间增量进行二进制编码,得到二进制的增量字符串,并且,该增量字符串用于指示所计算得到的时间增量。
步骤430,通过增量字符串替换目标数据帧中的时间戳。
由于通过表征时间增量的增量字符串替换目标数据帧中的时间戳,增量字符串对应的数据量小于时间戳对应的数据量,从而,相当于对时间戳进行了压缩,进一步减小了目标数据帧对应的数据量。
对于云端来说,在接收到替换了时间戳的目标数据帧,云端通过获取第二数据帧对应的时间戳,然后结合目标数据帧中的增量字符串所指示的时间增量来反向确定目标数据帧对应的时间戳。
可以理解的是,若目标数据帧为终端设备对应的首个数据帧,则由于该数据帧之前不存在上一数据帧,对应的,不存在可以对该目标数据帧中的时间戳进行压缩的参照,因此,该目标数据帧中仍然存储时间戳,所存储的时间戳作为下一数据帧进行时间增量计算的基础。
图5是根据一实施例示出的对目标数据帧中时间戳和数据段进行压缩编码的示意图。如图5所示,数据帧序列中包括先后上报的数据帧I和数据帧II。
若以数据帧I作为目标数据帧,数据帧I中数据段所指示的值为27.25。如图5所示,初始存储元数据中的初值为29,则若将该初始存储元数据中的初值作为该数据帧I所对应上一数据帧中数据段所指示的值。如图5所示,将初值29.5按照IEEE754标准进行编码所得到的二进制转换为十六进制后的字符串为字符串A:0x403D800000000000;将27按照IEEE754标准进行编码所得到的二进制转换为十六进制后的字符串为字符串B:0x403B400000000000;将字符串A与字符串B进行异或运算所得十六进制的字符串为字符串C:0x0006C00000000000。值得一提的是,在字符串A、B和C中,0x表示十六进制,在将字符串A与字符串B进行异或运算时,是先将字符串A与字符串B转换为二进制数后再按位进行异或运算。
如图5所示,由于初值29.5不存在前一数据帧,因此,将初值29.5对应的异或结果相当于是将初值与自身进行异或,所得到的异或值为0,而将27.25与29.5进行异或所得到异或结果的值显然大于0,因此,控制位字符为10。
在图5所示的实施例中,设定用5比特位来存储目标数据帧所对应异或结果中有效字符段权前零字符的个数;用6比特位来存储目标数据帧所对应异或结果中有效字符段所包括字符的个数。在字符串C:0x0006C00000000000,有效字符段前零字符的个数为3,则第三字符串为:00011;有效字符段中所包括字符的个数为2,则第四字符串为:000010;有效字符段转换为二进制字符串为:1101100。其中若设定编码字符串的组合规则为:控制位字符+第三字符串(有效字符段前零字符的个数)+第四字符串(有效字符段中所包括字符的个数)+有效字符段,如图5所示,目标数据帧中数据段所指示数值27.25对应的编码字符串为:11000110000101101100。由此可见,目标数据帧(数据帧I)中数据段对应的编码字符串所占用的比特位为2+5+6+7=20位,因此相较于在原目标数据帧中,用256比特位来存储数据段,存储编码字符串所占用的比特位减少了256-20=236比特位。
如图5所示,若以数据帧II为目标数据帧,则数据帧II对应的上一数据帧为数据帧I,数据帧II中数据段所指示的数值为27.25,数据帧I中数据段所指示的数值也为27.25。从而,将数据帧I中数据段与数据帧II中数据段进行异或所得到的异或结果为0000000000000000,该异或结果的值为0。因此,按照在目标数据帧所对应异或结果的值为0时,目标数据帧中数据段对应的编码字符串为一位零字符的编码规则,该目标数据帧中数据段对应的编码字符串为0。由此可见,目标数据帧(数据帧II)中数据段对应的编码字符串所占用的比特位为1位,因此,相较于在原数据帧II中用256比特位存储数据段,存储编码字符串所占用的比特位减少了256-1=255位。
通过上述对数据帧I和数据帧II中数据段的压缩编码过程,可以看出,通过本申请的方法对目标数据帧中的数据段进行编码压缩,大幅减少了目标数据帧的数据量,则对应的,传输进行替换后目标数据帧所占用的带宽对应减少,由此可以缓解因物联网中网络拥塞的情况。
请继续参阅图5,图5中,数据帧I中的时间戳为1587436962246,数据帧II中的时间戳为1587436973246,其中,列存储元数据中起始时间对应的时间戳(即首个数据帧中的时间戳)为1587436960246。若将起始元数据所存储的时间戳作为数据帧I所对应上一数据帧中的时间戳,则数据帧I相较于上一数据帧的时间增量为2,数据帧II相较于数据帧I的时间增量为11,相较于在数据帧中存储完整的时间戳而言,仅存储时间增量所占用的比特位更少,因此,由此通过编码的时间增量替换目标数据帧中的时间戳实现了时间戳的压缩,进一步减少了目标数据帧的数据量和传输目标数据帧所占用的带宽。
在本申请的一实施例中,如图6所示,在步骤210之前,该方法还包括:
步骤610,获取终端设备上报的目标数据帧。
步骤620,根据为数据段配置的过滤函数,对目标数据帧进行过滤。
步骤630,根据预设的转换规则对过滤后目标数据帧中的数据段进行转换。
由于物联网中终端设备数量众多,分布散列,各终端设备运行环境迥异,不可避免地存在终端设备所上报状态数据值发生错误抖动的情况,如果不进行处理,会导致错误的状态数据传输到上层业务应用。
为过滤掉出现错误的状态数据,在本实施例的方案中,针对目标数据帧帧中数据段所指示的状态数据值的范围,为数据段配置对应的过滤函数。换言之,该过滤函数指示了状态数据值为正常的数据范围,从而,通过该过滤函数可以过滤掉状态数据值发生错误的目标数据帧,而保留状态数据帧处于数据范围内的目标数据帧,实现目标数据帧的清洗。
如果目标数据帧中数据段所指示的状态数据位于该数值范围内,则确定该目标数据帧中数据段所指示的状态数据满足要求,则保留该目标数据帧;反之,如果目标数据帧中数据段所指示的状态数据不在该数值范围内,则确定该目标数据帧中数据段所指示的状态数据不满足要求,则舍弃该目标数据帧。
其中,所设置的过滤函数可以是为目标数据帧中数据段所指示的数据值设定的数值范围,该数值范围可以是通过阈值来设定,或者通过置信区间来设定,例如若设定目标数据帧所指示的状态数据值低于该阈值,则视为目标数据帧所指示的状态数据位于该数值范围内;又例如若设定数值范围为95%置信区间,则若一目标数据帧所指示的状态数据位于该95%置信区间内,则视为该目标数据帧所指示的状态数据位于该数值范围内。在其他实施例中,还可以根据实际需要设定该数值范围,在此不进行具体限定。
在本申请的方案中,由于涉及到对目标数据帧中的数据段进行压缩编码,为便于进行压缩编码,在对目标数据帧进行过滤后,按照设定的转换规则对目标数据帧中的数据段进行转换,以使得转换后目标数据帧中的数据段更便于进行编码。
在本申请的一实施例中,转换规则可以是四舍五入规则,例如按照设定的近似规则对目标数据帧中数据段所指示的数据值进行四舍五入,例如,将数值193.35421转换为193.35,从而,在保证数据值精度的基础上,减少了小数位数,便于后续的压缩编码。
进一步的,由于压缩编码是按照常用的二进制、四进制、八进制以及十六进制,该转换规则还可以是将状态数据的小数部分向靠近1/2、1/4、1/8或1/16的整数倍进行转换,例如将14.06转换为14.0625,对应的,编码从0x402C1EB851EB851F变成0x402C2,从而,在后续的压缩编码过程中可以缩短编码后的数据量。
在本申请的一些实施例中,转换规则还可以是设定的移位规则或者映射规则。其中,移位规则用于将浮点数转换成整型,以便于进行压缩。在对状态数据的敏感度较低的应用场景中,通过映射规则可以将状态数据映射到定性区间。
图7是根据一具体实施例示出的对目标数据帧进行过滤与转换的流程图。终端设备将设备的状态数据按照IEEE754标准进行编码,并对应得到目标数据帧后,将该目标数据帧上报至边缘计算设备。如图7所示,边缘计算设备接收到该目标数据帧后,先按照配置的过滤函数进行过滤,该过滤函数限定了状态数据的数值范围。如果目标数据帧中数据段所指示的状态数据不在该数值范围内,则舍弃该目标数据帧,反之,如果目标数据帧中数据段所指示的状态数据在该数值范围内,则继续对该数据段所指示的状态数据进行四舍五入;然后按照设定的移位规则或者映射规则进行转换,得到转换后的目标数据帧。该转换后的目标数据帧作为进行压缩编码的对象。
在本申请的一实施例中,终端设备通过网关设备将目标数据帧上报至边缘计算设备,边缘计算设备中包括为每一终端设备配置的位图,如图8所示,在步骤210之前,该方法还包括:
步骤810,接收网关设备为终端设备上报的报文,报文包括目标数据帧和终端设备所对应上行帧计数器的计数值,其中,终端设备在需要向网关设备广播目标数据帧时,控制上行帧计数器累加计数,并根据上行帧计数器的计数值和目标数据帧生成报文。
针对终端设备与网关设备之间的通信,终端设备在需要传输目标数据帧时,终端设备广播自身所要传输的目标数据帧。对应的,如果该终端设备附近存在多个网关设备,则可能存在多个网关设备均接收到终端设备所广播的目标数据帧。因此,为避免边缘计算设备重复传输相同的目标数据帧,通过在边缘计算设备为每一终端设备配置位图,并结合终端设备中上行帧计数器的计数值来进行目标数据帧的去重。
具体来说,在终端设备需要向网关设备广播目标数据帧时,控制自身对应的上行帧计数器累加计数,然后根据上行帧计数器的计数值和所要广播的目标数据帧生成报文,并对应广播该报文。网关设备在接收到终端设备广播的报文后,将所接收到的报文对应上传到边缘计算设备。
步骤820,将计数值与终端设备所对应位图的长度进行求余运算,得到求余结果。
位图又称BitMap数据结构,其用每一位保存一个数,多个位组成一个基本数据类型。具体在本申请的方案中,终端设备所对应的位图中,每一位用于标记该终端设备所对应上报的数据帧是否达到。在物联网系统中,终端设备实时进行自身状态数据值的上报,在位图中,每一位对应一该终端设备所上报的状态数据,由于状态数据是封装在数据帧中,因此,也相当于每一位对应终端设备所上报的一数据帧。
通过将计数值与终端设备所对应位图的长度进行求余,求余结果用于指示在位图中该计数值所指示的位位置,从而,可以根据求余结果确定该计数值在位图中所对应的位位置。
步骤830,获取在位图中求余结果所指示位位置存储的字符。
步骤840,若求余结果所指示位位置存储的字符为第一字符,则舍弃目标数据帧,第一字符用于指示数据帧已被接收到。
如果所获取到求余结果所指示位位置存储的字符为指示数据帧已被接收到的第一字符,则表明在当前的网关设备将目标数据帧传输到边缘计算设备之前,已经有其他的网关设备将该目标数据帧传输到边缘计算设备。由于已经有其他网关设备将该目标数据帧传输到边缘计算设备,从而,为避免向云端重复传输该目标数据帧,则舍弃该目标数据帧。
进一步的,如果所获取到求余结果所指示位位置存储的字符为第一字符,则表明通过当前的网关设备传输该终端设备的数据帧的路径并不是最优的传输路径,而首次将该终端设备的目标数据帧传输至边缘计算设备的路径才是最优路径。因此,若终端的一目标数据帧是首次到达边缘计算设备,则对应缓存该终端设备对应的网关信息,从而,在需要向该终端设备下发报文时,可以直接按照所缓冲的网关信息进行报文下发,由于所缓存的网关信息指示了到达终端设备的最优路径,因此,可以缩短报文下发的时间,提高报文下发的效率。
在本申请的一实施例中中,若求余结果所指示位位置存储的字符为第二字符,则缓存报文,并将位图中求余结果所指示位位置存储的字符替换为第一字符,第二字符用于指示数据帧未被接收到。
如果求余结果所指示位位置存储的字符为指示数据帧未被接收到的第二字符,则表明该目标数据帧是首次到达边缘计算设备,从而,对应进行该目标数据帧的缓存,以便于在后续对该目标数据帧进行过滤、转换、压缩编码等处理,进而将处理后的目标数据帧传输至云端。
如上所描述,在目标数据帧首次到达边缘计算设备时,表明该目标数据帧的传输路径是从终端设备到边缘计算设备的最优传输路径,因此,在缓存目标数据帧的同时,还存储该终端设备对应的网关信息。
图9是根据一具体实施例示出的位图的示意图,如图9所示,当终端设备的计数值,即FCnt值,为4时,该计数值在位图中对应的位位置为第4位。在图9的实施例中,若该位位置中存储的字符为1,则表明数据帧已被接收到,若该位位置中存储的字符为0,则表明数据帧未接收到,换言之,相当于第一字符为1,第二字符为0。
如图9所示,若在T0时刻,LoRa网关1将终端设备计数值为4所对应的数据帧首次传输到边缘计算设备,则该边缘计算设备对应将该第4位所存储的字符修改为1,并存储该数据帧和该终端设备的网关信息。在T1时刻(T1>T0),LoRa网关2将该终端设备计数值为4所对应的数据帧再次传输到边缘计算设备,由于该计数值为4所对应的位位置的字符为1,则对应丢弃该数据帧。
图10是根据一具体实施示出的实施环境的示意图,如图10所示,该实施环境包括依次通信连接的传感器、LoRa网关、LoRa网络服务器、卫星终端、卫星、地面站和云数据中心,其中传感器作为终端设备,LoRa网关作为进行组网的网关设备,LoRa服务器是部署于边缘的边缘计算设备,卫星终端、卫星和地面站构成了卫星系统,边缘计算设备进行处理后的目标数据帧通过该卫星系统传输至作为云端的云数据中心。
在图10所示的实施例中,基于LoRa的LPWAN通信技术可以提供低成本、低功耗的组网,从而,在物联网系统的端部通过LoRa网关进行组网。
其中,基于LoRa的传输距离在1-20千米,一节AA电池约可用10年时间,传输速度1-50kpbs,一个符合LoRaWAN标准的通讯网关大约可接入5到10公里内上万个无线终端设备。终端设备与LoRa网关是星型拓扑组网,每个终端设备将数据帧广播到多个LoRa网关,终端设备与LoRa网关距离越近,数据传输速率更快,发射功率更低。
如图10所示,LoRa网关将终端设备的数据帧转发到LoRa网络服务器,LoRa网络服务器按照本申请中的方案对数据帧进行去重、过滤、转换、压缩编码后,通过串口将目标数据帧发送到卫星终端,由卫星终端搜索过境的卫星,与卫星建立连接后将目标数据帧发送给低轨卫星。由低轨卫星对数据帧进行透传。在透传的过程中,如果不存在星间链路,则等待卫星过境,当卫星达到地面站覆盖范围时将数据回传给地面站,地面站通过专网或广域网将数据传输到云端。在该种情况下,由于需要等待卫星过境,存在时延,因此该种传输路径主要适用于对时延不敏感的物联网场景。
如果卫星间存在星间链路,卫星在接收到目标数据帧时,根据星历表计算最优的卫星路由在卫星间逐级传输,再回传数据到地面的网关设备。该种传输方式由于不存在等待卫星过境所造成的时延,因此适用于对时延敏感的物联网场景。
可以理解的是,在图10所示的物联网系统中,还存在控制设备(图10中未示出),控制设备用于管理整个物联系统。其中,控制设备包括主控站和分布在各地的网关站。主控站主要用于管理空间卫星和地面资源(网络、通信监控、发送卫星指令、控制卫星运行姿态等)。网关站主要负责将卫星数据转成广域网协议,提供通信服务的互联互通。
在本实施例中,将卫星引入到物联网系统中进行数据传输,延伸了常规物联网接入能力,扩充了物联网的组网范围,而且可以适用于在无地面信号的偏远地区构建物联网。
在图10所示的应用场景中,借助于卫星系统来实现物联网系统中数据的传输,相当于将“基站”架设到“天上”,是常规地面物联网的补充和延伸,从而拓宽了物联网的覆盖地域,可实现全球覆盖,终端设备的布设几乎不受空间限制;几乎不受天气、地理条件影响,可全天时全天候工作;物联网系统在自然灾害、突发事件等紧急情况下依旧能够正常工作。
图11是相关技术中物联网系统中云端业务部署示意图,如图11所示,将LoRa网络服务器部署于云端,云端除部署LoRa网络服务器外,还对应部署业务应用服务器。其中,部署于云端的LoRa网络服务器的核心服务包括:权限验证与认证、TLS(Transport LayerSecurity,安全传输层协议)、消息管理、网关管理、LoRaWAN解析和帧管理。由于将LoRa网络服务器部署于云端,一方面,可能存在传输相同报文的情况(例如上文所列举,由于终端设备向网关设备广播报文,可能存在多个网关接收到同一报文),另一方面,LoRa网络服务器对LoRa网关的管理存在较大延时,无法做到边缘自洽,而且,终端设备数量较多时,也无法解决网络拥塞的问题。
图12是按照本申请的方案所示出LoRa网络服务器与云端的业务部署示意图,如图12所示,将LoRa网络服务器作为边缘计算设备下沉到边缘,其核心服务时对终端设备上报的数据帧进行编码与压缩、去重、以及LoRaWAN解析和网关管理。相较于现有技术中,终端设备完全将数据帧上报至云端,由云端进行处理,本申请中通过在边缘处布设边缘计算设备,并将原由云端实现的服务例如LoRaWAN解析和网关管理下沉到边缘计算设备,并进一步通过LoRa网络服务器对终端设备上报的数据帧进行去重、过滤、转换、压缩编码,整体上减少了所要输出的数据总量,可以有效缓解相关技术中因终端设备数量较多所存在网络拥塞的问题,可以有效解决海量数据与传输限制之间的矛盾。
进一步的,如图12所示,在数据存储方面,在LoRa网络服务器中采用嵌入式数据库替代相关技术中所采用Redis缓存与集群数据库存储的方案,由于嵌入式数据库嵌入到应用程序的进程中,其支持在边缘端低功耗运行。
在本申请的一实施例中,边缘计算设备通过卫星系统与云端通信,在步骤250之后,如图13所示,该方法还包括:
步骤1310,获取为目标数据帧生成的数据帧标识。
在本实施例中,边缘计算设备针对每一待向云端传输的数据帧生成一数据帧标识,该数据帧标识可以是ID编号,用于标识该待向云端传输的数据帧。
步骤1320,将进行替换后的目标数据帧和所对应的数据帧标识通过卫星系统发送至云端。
卫星系统例如上述所列举由卫星终端、卫星和地面站所组成的系统。
步骤1330,接收卫星系统根据数据帧标识为目标数据帧返回的反馈信息。
在卫星系统中,卫星将进行替换后的目标数据帧和所对应的数据帧标识传输给地面站后,由地面站返回该数据帧标识所指示目标数据帧的反馈信息,在卫星下次与卫星终端通信时,回传该数据帧标识所对应的反馈信息。该反馈信息用于指示该数据帧标识所对应的目标数据帧是否发送成功。
步骤1340,若反馈信息指示替换后的目标数据帧发送失败,则重新将替换后的目标数据帧通过卫星系统发送至云端。
如果反馈信息指示替换后的目标数据帧发送失败,则边缘计算服务器重新获取所缓存替换后的目标数据帧,并通过卫星系统重新发送该目标数据帧,实现数据帧的重传。
反之,如果反馈信息指示替换后的目标数据帧发送成功,则边缘计算服务器将所缓存替换后的目标数据帧以及对应的数据帧标识删除。
在本实施例中,通过为待传输的目标数据帧配置数据帧标识,并按照数据帧标识记录所对应目标数据帧的发送状态,以在目标数据帧发送失败的时候,对应进行重传,从而保证了终端设备对应的目标数据帧的成功传输。
在本实施例中,由于借助于卫星系统来进行数据传输,将低轨卫星星座作为传输基站,可以适用于在无地面信号的偏远地区构建物联网。随着卫星、地面站建设不断推进,星际链路不断完善,多卫星间的通信更加成熟,卫星与地面站构成稳定的基础网络设施后,能够保证卫星物联网进行全球、全天时的工作。在此种组网方式下,可以将卫星抽象成基站,地面站抽象成网络路由节点。在此种引入卫星的物联网系统中,该物联网系统采用星地组网模式,将物联网数据在卫星上进行透明转发,延伸了常规物联网接入能力。
以下介绍本申请的装置实施例,可以用于执行本申请上述实施例中的方法。对于本申请装置实施例中未披露的细节,请参照本申请上述的方法实施例。
本申请提供了一种数据处理装置1400,该数据处理装置1400可以配置于图1所示的边缘计算设备中,终端设备通过边缘计算设备与云端通信,如图14所示,该数据处理装置包括:
异或模块1410,用于对于终端设备所对应的目标数据帧,对目标数据帧中的数据段和第二数据帧中的数据段进行异或运算,得到目标数据帧对应的异或结果,第二数据帧是目标数据帧对应的上一数据帧。
压缩编码模块1430,用于根据目标数据帧所对应异或结果中的有效字符段,对目标数据帧中的数据段进行压缩编码,得到编码字符串,有效字符段是所在异或结果中从首个非零字符开始至末尾非零字符结束所形成的字符段。
替换模块1450,用于通过编码字符串替换目标数据帧中的数据段,将进行替换后的目标数据帧作为待传输至云端的数据帧。
在本申请的一实施例中,压缩编码模块1430包括:
异或结果获取单元,用于若目标数据帧所对应异或结果的值不为零,获取第二数据帧对应的异或结果。
控制位字符确定单元,用于根据第二数据帧对应的异或结果和目标数据帧对应的异或结果确定控制位字符。
编码字符串生成单元,用于根据控制位字符和目标数据帧所对应异或结果中的有效字符段,生成编码字符串。
在本申请的一实施例中,控制位字符确定单元,包括:
第一确定单元,用于若目标数据帧所对应异或结果的值不大于第二数据帧所对应异或结果的值,则将控制位字符确定为第一字符串。
第二确定单元,用于若目标数据帧所对应异或结果的值大于第二数据帧所对应异或结果的值,则将控制位字符确定为第二字符串,第二字符串区别于第一字符串。
在本申请的一实施例中,编码字符串生成单元,包括:
第一生成单元,用于若目标数据帧所对应异或结果的值大于第二数据帧所对应异或结果的值,根据目标数据帧所对应异或结果确定第三字符串和第四字符串,第三字符串用于指示目标数据帧所对应异或结果中,有效字符段前零字符的个数,第四字符串用于指示目标数据帧所对应异或结果中有效字符段所包括字符的个数;将第二字符串、第三字符串、第四字符串和目标数据帧所对应异或结果中的有效字符段进行组合,得到编码字符串。
在本申请的一实施例中,编码字符串生成单元还包括:
第二生成单元,用于若目标数据帧所对应异或结果的值不大于第二数据帧所对应异或结果的值,将第一字符串和目标数据帧所对应异或结果中的有效字符段进行组合,得到编码字符串。
在本申请的一实施例中,压缩编码模块还包括:
第三生成单元,用于若目标数据帧所对应异或结果中有效字符段的值为零,则确定编码字符串为设定位数的零字符,其中,设定位数小于目标数据帧中数据段的位数。
在本申请的一实施例中,数据处理装置还包括:
缓存模块,用于若目标数据帧为在设定周期内终端设备所上报的首个数据帧,则将目标数据帧缓存,直接作为待传输至云端的数据帧。
在本申请的一实施例中,目标数据帧中还包括时间戳,数据处理装置还包括:
时间增量计算模块,用于计算目标数据帧中的时间戳相较于第二数据帧所对应时间戳的时间增量。
编码模块,用于对时间增量进行编码,得到增量字符串。
时间戳替换模块,用于通过增量字符串替换目标数据帧中的时间戳。
在本申请的一实施例中,数据处理装置还包括:
目标数据帧获取模块,用于获取终端设备上报的目标数据帧。
过滤模块,用于根据为数据段配置的过滤函数,对目标数据帧进行过滤。
转换模块,用于根据预设的转换规则对过滤后目标数据帧中的数据段进行转换。
在本申请的一实施例中,终端设备通过网关设备将目标数据帧上报至边缘计算设备,边缘计算设备中包括为每一终端设备配置的位图,数据处理装置还包括:
报文接收模块,用于接收网关设备为终端设备上报的报文,报文包括目标数据帧和终端设备所对应上行帧计数器的计数值,其中,终端设备在需要向网关设备广播目标数据帧时,控制上行帧计数器累加计数,并根据上行帧计数器的计数值和目标数据帧生成报文。
求余运算模块,用于将计数值与终端设备所对应位图的长度进行求余运算,得到求余结果。
字符获取模块,用于获取在位图中求余结果所指示位位置存储的字符。
舍弃模块,用于若求余结果所指示位位置存储的字符为第一字符,则舍弃目标数据帧,第一字符用于指示数据帧已被接收到。
在本申请的一实施例中,数据处理装置还包括:
报文缓存模块,用于若求余结果所指示位位置存储的字符为第二字符,则缓存报文,并将位图中求余结果所指示位位置存储的字符替换为第一字符,第二字符用于指示数据帧未被接收到。
在本申请的一实施例中,边缘计算设备通过卫星系统与云端通信,数据处理装置还包括:
数据帧标识获取模块,用于获取为目标数据帧生成的数据帧标识。
发送模块,用于将进行替换后的目标数据帧和所对应的数据帧标识通过卫星系统发送至云端。
反馈信息接收模块,用于接收卫星系统根据数据帧标识为目标数据帧返回的反馈信息。
重发送模块,用于若反馈信息指示替换后的目标数据帧发送失败,则重新将替换后的目标数据帧通过卫星系统发送至云端。
图15示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图15示出的电子设备的计算机系统1500仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图15所示,计算机系统1500包括中央处理单元(Central Processing Unit,CPU)1501,其可以根据存储在只读存储器(Read-Only Memory,ROM)1502中的程序或者从存储部分1508加载到随机访问存储器(Random Access Memory,RAM)1503中的程序而执行各种适当的动作和处理,例如执行上述实施例中的方法。在RAM 1503中,还存储有系统操作所需的各种程序和数据。CPU 1501、ROM 1502以及RAM 1503通过总线1504彼此相连。输入/输出(Input/Output,I/O)接口1505也连接至总线1504。
以下部件连接至I/O接口1505:包括键盘、鼠标等的输入部分1506;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1507;包括硬盘等的存储部分1508;以及包括诸如LAN(Local AreaNetwork,局域网)卡、调制解调器等的网络接口卡的通信部分1509。通信部分1509经由诸如因特网的网络执行通信处理。驱动器1510也根据需要连接至I/O接口1505。可拆卸介质1511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1510上,以便于从其上读出的计算机程序根据需要被安装入存储部分1508。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1509从网络上被下载和安装,和/或从可拆卸介质1511被安装。在该计算机程序被中央处理单元(CPU)1501执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中的方法。
根据本申请的一个方面,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供的方法。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本申请实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (15)
1.一种数据处理方法,其特征在于,应用于边缘计算设备,终端设备通过所述边缘计算设备与云端通信,所述方法包括:
对于终端设备所对应的目标数据帧,对所述目标数据帧中的数据段和第二数据帧中的数据段进行异或运算,得到所述目标数据帧对应的异或结果,所述第二数据帧是所述目标数据帧对应的上一数据帧;
根据所述目标数据帧所对应异或结果中的有效字符段,对所述目标数据帧中的数据段进行压缩编码,得到编码字符串,所述有效字符段是所在异或结果中从首个非零字符开始至末尾非零字符结束所形成的字符段;
通过所述编码字符串替换所述目标数据帧中的数据段,将进行替换后的目标数据帧作为待传输至所述云端的数据帧。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标数据帧所对应异或结果中的有效字符段,对所述目标数据帧中的数据段进行压缩编码,得到编码字符串,包括:
若所述目标数据帧所对应异或结果的值不为零,获取所述第二数据帧对应的异或结果;
根据所述第二数据帧对应的异或结果和所述目标数据帧对应的异或结果确定控制位字符;
根据所述控制位字符和所述目标数据帧所对应异或结果中的有效字符段,生成所述编码字符串。
3.根据权利要求2所述的方法,其特征在于,所述根据所述第二数据帧对应的异或结果和所述目标数据帧对应的异或结果确定控制位字符,包括:
若所述目标数据帧所对应异或结果的值不大于所述第二数据帧所对应异或结果的值,则将所述控制位字符确定为第一字符串;
若所述目标数据帧所对应异或结果的值大于所述第二数据帧所对应异或结果的值,则将所述控制位字符确定为第二字符串,所述第二字符串区别于所述第一字符串。
4.根据权利要求3所述的方法,其特征在于,所述根据所述控制位字符和所述目标数据帧所对应异或结果中的有效字符段,生成所述编码字符串,包括:
若所述目标数据帧所对应异或结果的值大于所述第二数据帧所对应异或结果的值,根据所述目标数据帧所对应异或结果确定第三字符串和第四字符串,所述第三字符串用于指示所述目标数据帧所对应异或结果中,所述有效字符段前零字符的个数,所述第四字符串用于指示所述目标数据帧所对应异或结果中所述有效字符段所包括字符的个数;
将所述第二字符串、所述第三字符串、所述第四字符串和所述目标数据帧所对应异或结果中的有效字符段进行组合,得到所述编码字符串。
5.根据权利要求4所述的方法,其特征在于,所述根据所述控制位字符和所述目标数据帧所对应异或结果中的有效字符段,生成所述编码字符串,还包括:
若所述目标数据帧所对应异或结果的值不大于所述第二数据帧所对应异或结果的值,将所述第一字符串和所述目标数据帧所对应异或结果中的有效字符段进行组合,得到所述编码字符串。
6.根据权利要求2所述的方法,其特征在于,所述根据所述目标数据帧所对应异或结果中的有效字符段,对所述目标数据帧中的数据段进行压缩编码,得到编码字符串,还包括:
若所述目标数据帧所对应异或结果中有效字符段的值为零,则确定所述编码字符串为设定位数的零字符,其中,所述设定位数小于所述目标数据帧中数据段的位数。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述目标数据帧为在设定周期内所述终端设备所上报的首个数据帧,则将所述目标数据帧缓存,直接作为待传输至所述云端的数据帧。
8.根据权利要求1所述的方法,其特征在于,所述目标数据帧中还包括时间戳,所述方法还包括:
计算所述目标数据帧中的时间戳相较于所述第二数据帧所对应时间戳的时间增量;
对所述时间增量进行编码,得到增量字符串;
通过所述增量字符串替换所述目标数据帧中的时间戳。
9.根据权利要求1所述的方法,其特征在于,所述对所述目标数据帧中的数据段和第二数据帧中的数据段进行异或运算,得到所述目标数据帧对应的异或结果之前,所述方法还包括:
获取终端设备上报的目标数据帧;
根据为数据段配置的过滤函数,对所述目标数据帧进行过滤;
根据预设的转换规则对过滤后目标数据帧中的数据段进行转换。
10.根据权利要求1所述的方法,其特征在于,所述终端设备通过网关设备将目标数据帧上报至所述边缘计算设备,所述边缘计算设备中包括为每一终端设备配置的位图,所述对所述目标数据帧中的数据段和第二数据帧中的数据段进行异或运算,得到所述目标数据帧对应的异或结果之前,所述方法还包括:
接收所述网关设备为终端设备上报的报文,所述报文包括目标数据帧和所述终端设备所对应上行帧计数器的计数值,其中,所述终端设备在需要向所述网关设备广播所述目标数据帧时,控制所述上行帧计数器累加计数,并根据所述上行帧计数器的计数值和所述目标数据帧生成所述报文;
将所述计数值与所述终端设备所对应位图的长度进行求余运算,得到求余结果;
获取在所述位图中所述求余结果所指示位位置存储的字符;
若所述求余结果所指示位位置存储的字符为第一字符,则舍弃所述目标数据帧,所述第一字符用于指示数据帧已被接收到。
11.根据权利要求10所述的方法,其特征在于,所述获取在所述位图中所述求余结果所指示位位置存储的字符之后,所述方法还包括:
若所述求余结果所指示位位置存储的字符为第二字符,则缓存所述报文,并将所述位图中所述求余结果所指示位位置存储的字符替换为所述第一字符,所述第二字符用于指示数据帧未被接收到。
12.根据权利要求1所述的方法,其特征在于,所述边缘计算设备通过卫星系统与所述云端通信,所述通过所述编码字符串替换所述目标数据帧中的数据段之后,所述方法还包括:
获取为所述目标数据帧生成的数据帧标识;
将进行替换后的目标数据帧和所对应的数据帧标识通过所述卫星系统发送至所述云端;
接收所述卫星系统根据所述数据帧标识为所述目标数据帧返回的反馈信息;
若所述反馈信息指示替换后的目标数据帧发送失败,则重新将替换后的目标数据帧通过所述卫星系统发送至所述云端。
13.一种数据处理装置,其特征在于,应用于边缘计算设备,终端设备通过所述边缘计算设备与云端通信,所述装置包括:
异或模块,用于对于终端设备所对应的目标数据帧,对所述目标数据帧中的数据段和第二数据帧中的数据段进行异或运算,得到所述目标数据帧对应的异或结果,所述第二数据帧是所述目标数据帧对应的上一数据帧;
压缩编码模块,用于根据所述目标数据帧所对应异或结果中的有效字符段,对所述目标数据帧中的数据段进行压缩编码,得到编码字符串,所述有效字符段是所在异或结果中从首个非零字符开始至末尾非零字符结束所形成的字符段;
替换模块,用于通过所述编码字符串替换所述目标数据帧中的数据段,将进行替换后的目标数据帧作为待传输至所述云端的数据帧。
14.一种电子设备,其特征在于,包括:
处理器;及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,实现如权利要求1至12中任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,其上存储有计算机可读指令,当所述计算机可读指令被处理器执行时,实现如权利要求1至12中的任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010570859.1A CN111865493A (zh) | 2020-06-19 | 2020-06-19 | 数据处理方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010570859.1A CN111865493A (zh) | 2020-06-19 | 2020-06-19 | 数据处理方法及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111865493A true CN111865493A (zh) | 2020-10-30 |
Family
ID=72987519
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010570859.1A Pending CN111865493A (zh) | 2020-06-19 | 2020-06-19 | 数据处理方法及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111865493A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112732810A (zh) * | 2020-12-31 | 2021-04-30 | 青岛海尔科技有限公司 | 数据发送系统及方法、装置、存储介质、电子装置 |
CN113645142A (zh) * | 2021-07-14 | 2021-11-12 | 远景智能国际私人投资有限公司 | 数据传输方法、装置及系统 |
CN113709510A (zh) * | 2021-08-06 | 2021-11-26 | 联想(北京)有限公司 | 高速率数据实时传输方法及装置、设备、存储介质 |
CN114884731A (zh) * | 2022-05-07 | 2022-08-09 | 江苏红光仪表厂有限公司 | 一种用于工业自动化仪器仪表的信息远程传输系统 |
CN115296976A (zh) * | 2022-06-28 | 2022-11-04 | 青岛海尔科技有限公司 | 物联网设备故障检测方法、装置、设备及存储介质 |
CN116366503A (zh) * | 2023-06-02 | 2023-06-30 | 腾讯科技(深圳)有限公司 | 一种数据处理方法和相关装置 |
CN117118456A (zh) * | 2023-10-25 | 2023-11-24 | 山东德源电力科技股份有限公司 | 基于深度融合的磁控开关控制数据处理方法 |
-
2020
- 2020-06-19 CN CN202010570859.1A patent/CN111865493A/zh active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112732810A (zh) * | 2020-12-31 | 2021-04-30 | 青岛海尔科技有限公司 | 数据发送系统及方法、装置、存储介质、电子装置 |
CN113645142A (zh) * | 2021-07-14 | 2021-11-12 | 远景智能国际私人投资有限公司 | 数据传输方法、装置及系统 |
CN113709510A (zh) * | 2021-08-06 | 2021-11-26 | 联想(北京)有限公司 | 高速率数据实时传输方法及装置、设备、存储介质 |
CN114884731A (zh) * | 2022-05-07 | 2022-08-09 | 江苏红光仪表厂有限公司 | 一种用于工业自动化仪器仪表的信息远程传输系统 |
CN114884731B (zh) * | 2022-05-07 | 2024-02-23 | 江苏红光仪表厂有限公司 | 一种用于工业自动化仪器仪表的信息远程传输系统 |
CN115296976A (zh) * | 2022-06-28 | 2022-11-04 | 青岛海尔科技有限公司 | 物联网设备故障检测方法、装置、设备及存储介质 |
CN115296976B (zh) * | 2022-06-28 | 2024-03-22 | 青岛海尔科技有限公司 | 物联网设备故障检测方法、装置、设备及存储介质 |
CN116366503A (zh) * | 2023-06-02 | 2023-06-30 | 腾讯科技(深圳)有限公司 | 一种数据处理方法和相关装置 |
CN116366503B (zh) * | 2023-06-02 | 2023-08-08 | 腾讯科技(深圳)有限公司 | 一种数据处理方法和相关装置 |
CN117118456A (zh) * | 2023-10-25 | 2023-11-24 | 山东德源电力科技股份有限公司 | 基于深度融合的磁控开关控制数据处理方法 |
CN117118456B (zh) * | 2023-10-25 | 2024-01-26 | 山东德源电力科技股份有限公司 | 基于深度融合的磁控开关控制数据处理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111865493A (zh) | 数据处理方法及相关设备 | |
US8718098B2 (en) | Method for compressing and decompressing time stamp and equipment thereof | |
CN103379136A (zh) | 一种日志采集数据压缩方法、解压缩方法及装置 | |
US9043145B2 (en) | Transporting residue of vehicle position data via wireless network | |
CN107360443A (zh) | 一种云桌面图像处理方法、云桌面服务器及客户端 | |
WO2016112836A1 (zh) | 一种定位信息传输的方法、装置及系统 | |
US20140269774A1 (en) | System and Method for Multi-Stream Compression and Decompression | |
CN106537959B (zh) | 电信网络中编码和解码帧的方法 | |
Zeinali et al. | Impact of compression and aggregation in wireless networks on smart meter data | |
CN106936545B (zh) | 数据传输方法及装置 | |
US20220191545A1 (en) | Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device | |
CN110912671A (zh) | 数据传输方法、装置、通信节点及存储介质 | |
CN116847453B (zh) | 卫星数据传输及卫星物联网接入时间的管理方法 | |
CN102628948A (zh) | 用于批量发送通用航空器经纬位置数据的压缩方法 | |
CN102387123B (zh) | 一种优化x协议的远程桌面系统和方法 | |
CN116863949A (zh) | 通信接收方法及其装置 | |
CN112732810A (zh) | 数据发送系统及方法、装置、存储介质、电子装置 | |
TWI713338B (zh) | 物聯網低功耗廣域網路之車牌回傳編碼方法及裝置 | |
CN108768503B (zh) | 基于北斗卫星的预警信息发布系统及发布方法 | |
CN112165434A (zh) | 在分组交换系统中透传cbr信号的方法和系统 | |
CN114978427B (zh) | 数据处理方法、装置、程序产品、计算机设备和介质 | |
CN103929447A (zh) | 一种解析HTTP chunked编码数据的方法 | |
CN116456290B (zh) | 一种北斗位置信息报文压缩编码方法及系统 | |
CN117060930B (zh) | 一种拓展坞用数据智能通信系统 | |
WO2017008766A1 (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 |