CN110474715A - 一种物联网数据传输准确性提高方法及系统 - Google Patents
一种物联网数据传输准确性提高方法及系统 Download PDFInfo
- Publication number
- CN110474715A CN110474715A CN201910737714.3A CN201910737714A CN110474715A CN 110474715 A CN110474715 A CN 110474715A CN 201910737714 A CN201910737714 A CN 201910737714A CN 110474715 A CN110474715 A CN 110474715A
- Authority
- CN
- China
- Prior art keywords
- data
- frame
- frame length
- head
- equal
- 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
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/004—Arrangements for detecting or preventing errors in the information received by using forward 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/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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种物联网数据传输准确性提高方法及系统,方法包括:获取所有数据帧中的帧头;获取相邻帧头之间的位数M;获取最短帧长度N;判断M是否大于等于N;若M小于N,取下一帧头为基准,重复获取M,直到M大于等于N;若M大于等于N,将数据截成N个数据帧;读取帧长度的数据Y;判断数据位X是否大于Y;若大于则为错误数据;判断X是否小于Y;若小于则往前截取(Y‑X)位,重新划分;若X大于Y,取其中的数据位进行循环冗余校验计算,得到计算结果;将计算结果与帧校验位进行比较;若二者不相等,则帧数据错误;若二者相等,则帧数据正确。本发明中的上述方法能够提高数据传输的准确性、减少数据帧丢失以及降低数据帧解析错误率。
Description
技术领域
本发明涉及数据安全领域,特别是涉及一种物联网数据传输准确性提高方法及系统。
背景技术
近年来,随着社会的发展,物联网行业显得越来越重要了,这也体现其中数据传输的准确性也越发的重要。
部分物联网软件框架,分别由平台层和感知层组成。平台层发送的命令,以数据帧的形式传送到感知层,感知层返回数据帧到平台层。
然而平台层发送数据包(包含很多数据帧),到感知层,这些数据帧比较多又比较乱,导致感知层解析数据会发送错乱,经常会出现丢失数据帧、数据帧解析错误等情况,导致传输的数据发生错误,体现出用户发送命令,出现错误的结果,给用户使用带来了许多困扰。
所以如何提高数据传输的准确性、减少数据帧丢失、数据帧解析错误,将是我们急需解决的问题.
发明内容
本发明的目的是提供一种物联网数据传输准确性提高方法及系统,提高数据传输的准确性、减少数据帧丢失以及降低数据帧解析错误率。
为实现上述目的,本发明提供了如下方案:
一种物联网数据传输准确性提高方法,所述方法包括:
S1:获取所有数据帧中的帧头;
S2:以第一个帧头为基准,获取相邻帧头之间的位数M;
S3:获取所有数据帧中的最短帧长度N;
S4:判断所述位数M是否大于等于最短帧长度N;
S5:若所述位数M小于最短帧长度N,则相邻的帧头为非正常数据,取下一帧头为基准,重复步骤S2-S4,直到所述位数M大于等于最短帧长度N;
S6:若所述位数M大于等于最短帧长度N,则相邻的帧头为正常数据,按照当前帧头将数据截成N个数据帧;
S7:将所述N个数据帧按照帧头、帧类型、帧长度、数据位X和帧校验位进行划分,并读取帧长度的数据Y;
S8:判断所述数据位X是否大于帧长度的数据Y;
S9:若所述数据位X大于帧长度的数据Y,则此数据帧为错误数据;
S10:判断所述数据位X是否小于帧长度的数据Y;
S11:若所述数据位X小于帧长度的数据Y,则往前截取(Y-X)位,重新划分数据位、帧校验位;
S12:判断所述数据位X是否等于帧长度的数据Y;
S13:若所述数据位X等于帧长度的数据Y,取其中的数据位进行循环冗余校验计算,得到计算结果;
S14:将所述计算结果与对应的帧校验位进行比较;
S15:若所述计算结果与对应的帧校验位不相等,则帧数据错误;
S16:若所述计算结果与对应的帧校验位相等,则帧数据正确。
可选的,所述最短帧长度N等于13。
可选的,所述获取所有数据帧中的帧头具体包括:
查找由平台层发送到感知层的所有数据,得到帧头。
可选的,所述数据帧包括:帧头、帧类型、帧长度、数据位以及帧校验位。
本发明另外提供一种物联网数据传输准确性提高系统,所述系统包括:
帧头获取模块,用于获取所有数据帧中的帧头;
位数获取模块,用于以第一个帧头为基准,获取相邻帧头之间的位数M;
最短帧长度获取模块,用于获取所有数据帧中的最短帧长度N;
第一判断模块,用于判断所述位数M是否大于等于最短帧长度N;
循环模块,用于当所述位数M小于最短帧长度N,则相邻的帧头为非正常数据,取下一帧头为基准,重复步骤S2-S4,直到所述位数M大于等于最短帧长度N;
截取模块,用于当所述位数M大于等于最短帧长度N,则相邻的帧头为正常数据,按照当前帧头将数据截成N个数据帧;
第一划分模块,用于将所述N个数据帧按照帧头、帧类型、帧长度、数据位X和帧校验位进行划分,并读取帧长度的数据Y;
第二判断模块,用于判断所述数据位X是否大于帧长度的数据Y;
错误数据确定模块,用于当所述数据位X大于帧长度的数据Y,则此数据帧为错误数据;
第三判断模块,用于判断所述数据位X是否小于帧长度的数据Y;
第二划分模块,用于当所述数据位X小于帧长度的数据Y,则往前截取(Y-X)位,重新划分数据位、帧校验位;
第四判断模块,用于判断所述数据位X是否等于帧长度的数据Y;
计算模块,用于当所述数据位X等于帧长度的数据Y,取其中的数据位进行循环冗余校验计算,得到计算结果;
比较模块,用于将所述计算结果与对应的帧校验位进行比较;
第一确定模块,用于当所述计算结果与对应的帧校验位不相等,则帧数据错误;
第二确定模块,用于当所述计算结果与对应的帧校验位相等,则帧数据正确。
可选的,所述最短帧长度N等于13。
可选的,所述获取所有数据帧中的帧头具体包括:
查找由平台层发送到感知层的所有数据,得到帧头.
可选的,所述数据帧包括:帧头、帧类型、帧长度、数据位以及帧校验位。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明中的上述方法及系统,通过查找所有的帧头,以所有的帧头为准,保证数据包不会错失帧数据,不会遗漏帧数据,减少了帧丢失的现象。
通过开始帧头与帧头和最短帧长度对比判断、帧长度Y和数据位X进行对比判断、CRC计算等方式判断,可以减少帧解析错误,帧误判断的现象,从而提高数据传输的准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例物联网数据传输准确性提高方法流程图;
图2为本发明实施例物联网数据传输准确性提高系统结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种物联网数据传输准确性提高方法及系统,提高数据传输的准确性、减少数据帧丢失以及降低数据帧解析错误率。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明实施例物联网数据传输准确性提高方法流程图,如图1所示,所述方法包括:
S1:获取所有数据帧中的帧头。
如下表所示,一个数据帧中包含了帧头、帧类型、帧长度、数据位以及帧校验位。
本发明中的数据帧是从平台层发送到感知层的所有数据进行查找的。
S2:以第一个帧头为基准,获取相邻帧头之间的位数M。
S3:获取所有数据帧中的最短帧长度N。
其中N取13。
S4:判断所述位数M是否大于等于最短帧长度N。
S5:若所述位数M小于最短帧长度N,则相邻的帧头为非正常数据,取下一帧头为基准,重复步骤S2-S4,直到所述位数M大于等于最短帧长度N.
S6:若所述位数M大于等于最短帧长度N,则相邻的帧头为正常数据,按照当前帧头将数据截成N个数据帧。
S7:将所述N个数据帧按照帧头、帧类型、帧长度、数据位X和帧校验位进行划分,并读取帧长度的数据Y。
S8:判断所述数据位X是否大于帧长度的数据Y。
S9:若所述数据位X大于帧长度的数据Y,表示实际的数据位长度不够,还不足以组成帧数据,判定此数据为不完整的数据,则此数据帧为错误数据。
S10:判断所述数据位X是否小于帧长度的数据Y。
S11:若所述数据位X小于帧长度的数据Y,表示数据位有多余的数据,进行重新数据位、校验位往前移,即往前截取(Y-X)位,去掉多余的数据,重新划分数据位、帧校验位。
S12:判断所述数据位X是否等于帧长度的数据Y.
S13:若所述数据位X等于帧长度的数据Y,取其中的数据位进行循环冗余校验(Cyclic Redundancy Check,CRC)计算,得到计算结果。
CRC计算原理说明:
在k位信息码后再拼接r位的校验码,报文编码长度为n位,因此,这种编码又叫(n,k)码。
定理:对于一个给定的(n,k)码,可以证明,存在一个最高次幂为n=k+r的多项式G(x),存在且仅存在一个R次多项式G(x),使得V(x)=A(x)G(x)=xRm(x)+r(x)。
其中:
m(x):k次信息多项式,
r(x):r-1次校验多项式,
g(x):生成多项式:G(x)=g0+g1x1+g2x2+…+g(R-1)x(R-1)+gRxR.
S14:将所述计算结果与对应的帧校验位进行比较。
S15:若所述计算结果与对应的帧校验位不相等,则帧数据错误。
S16:若所述计算结果与对应的帧校验位相等,则帧数据正确。
如图2所示,图2为本发明实施例物联网数据传输准确性提高系统结构示意图,所述系统包括:
帧头获取模块201,用于获取所有数据帧中的帧头;
位数获取模块202,用于以第一个帧头为基准,获取相邻帧头之间的位数M;
最短帧长度获取模块203,用于获取所有数据帧中的最短帧长度N;
第一判断模块204,用于判断所述位数M是否大于等于最短帧长度N;
循环模块205,用于当所述位数M小于最短帧长度N,则相邻的帧头为非正常数据,取下一帧头为基准,重复步骤S2-S4,直到所述位数M大于等于最短帧长度N;
截取模块206,用于当所述位数M大于等于最短帧长度N,则相邻的帧头为正常数据,按照当前帧头将数据截成N个数据帧;
第一划分模块207,用于将所述N个数据帧按照帧头、帧类型、帧长度、数据位X和帧校验位进行划分,并读取帧长度的数据Y;
第二判断模块208,用于判断所述数据位X是否大于帧长度的数据Y;
错误数据确定模块209,用于当所述数据位X大于帧长度的数据Y,则此数据帧为错误数据;
第三判断模块210,用于判断所述数据位X是否小于帧长度的数据Y;
第二划分模块211,用于当所述数据位X小于帧长度的数据Y,则往前截取(Y-X)位,重新划分数据位、帧校验位;
第四判断模块212,用于判断所述数据位X是否等于帧长度的数据Y;
计算模块213,用于当所述数据位X等于帧长度的数据Y,取其中的数据位进行循环冗余校验计算,得到计算结果;
比较模块214,用于将所述计算结果与对应的帧校验位进行比较;
第一确定模块215,用于当所述计算结果与对应的帧校验位不相等,则帧数据错误;
第二确定模块216,用于当所述计算结果与对应的帧校验位相等,则帧数据正确。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (8)
1.一种物联网数据传输准确性提高方法,其特征在于,所述方法包括:
S1:获取所有数据帧中的帧头;
S2:以第一个帧头为基准,获取相邻帧头之间的位数M;
S3:获取所有数据帧中的最短帧长度N;
S4:判断所述位数M是否大于等于最短帧长度N;
S5:若所述位数M小于最短帧长度N,则相邻的帧头为非正常数据,取下一帧头为基准,重复步骤S2-S4,直到所述位数M大于等于最短帧长度N;
S6:若所述位数M大于等于最短帧长度N,则相邻的帧头为正常数据,按照当前帧头将数据截成N个数据帧;
S7:将所述N个数据帧按照帧头、帧类型、帧长度、数据位X和帧校验位进行划分,并读取帧长度的数据Y;
S8:判断所述数据位X是否大于帧长度的数据Y;
S9:若所述数据位X大于帧长度的数据Y,则此数据帧为错误数据;
S10:判断所述数据位X是否小于帧长度的数据Y;
S11:若所述数据位X小于帧长度的数据Y,则往前截取(Y-X)位,重新划分数据位、帧校验位;
S12:判断所述数据位X是否等于帧长度的数据Y;
S13:若所述数据位X等于帧长度的数据Y,取其中的数据位进行循环冗余校验计算,得到计算结果;
S14:将所述计算结果与对应的帧校验位进行比较;
S15:若所述计算结果与对应的帧校验位不相等,则帧数据错误;
S16:若所述计算结果与对应的帧校验位相等,则帧数据正确。
2.根据权利要求1所述的物联网数据传输准确性提高方法,其特征在于,所述最短帧长度N等于13。
3.根据权利要求1所述的物联网数据传输准确性提高方法,其特征在于,所述获取所有数据帧中的帧头具体包括:
查找由平台层发送到感知层的所有数据,得到帧头。
4.根据权利要求1所述的物联网数据传输准确性提高方法,其特征在于,所述数据帧包括:帧头、帧类型、帧长度、数据位以及帧校验位。
5.一种物联网数据传输准确性提高系统,其特征在于,所述系统包括:
帧头获取模块,用于获取所有数据帧中的帧头;
位数获取模块,用于以第一个帧头为基准,获取相邻帧头之间的位数M;
最短帧长度获取模块,用于获取所有数据帧中的最短帧长度N;
第一判断模块,用于判断所述位数M是否大于等于最短帧长度N;
循环模块,用于当所述位数M小于最短帧长度N,则相邻的帧头为非正常数据,取下一帧头为基准,重复步骤S2-S4,直到所述位数M大于等于最短帧长度N;
截取模块,用于当所述位数M大于等于最短帧长度N,则相邻的帧头为正常数据,按照当前帧头将数据截成N个数据帧;
第一划分模块,用于将所述N个数据帧按照帧头、帧类型、帧长度、数据位X和帧校验位进行划分,并读取帧长度的数据Y;
第二判断模块,用于判断所述数据位X是否大于帧长度的数据Y;
错误数据确定模块,用于当所述数据位X大于帧长度的数据Y,则此数据帧为错误数据;
第三判断模块,用于判断所述数据位X是否小于帧长度的数据Y;
第二划分模块,用于当所述数据位X小于帧长度的数据Y,则往前截取(Y-X)位,重新划分数据位、帧校验位;
第四判断模块,用于判断所述数据位X是否等于帧长度的数据Y;
计算模块,用于当所述数据位X等于帧长度的数据Y,取其中的数据位进行循环冗余校验计算,得到计算结果;
比较模块,用于将所述计算结果与对应的帧校验位进行比较;
第一确定模块,用于当所述计算结果与对应的帧校验位不相等,则帧数据错误;
第二确定模块,用于当所述计算结果与对应的帧校验位相等,则帧数据正确。
6.根据权利要求5所述的物联网数据传输准确性提高系统,其特征在于,所述最短帧长度N等于13。
7.根据权利要求5所述的物联网数据传输准确性提高系统,其特征在于,所述获取所有数据帧中的帧头具体包括:
查找由平台层发送到感知层的所有数据,得到帧头。
8.根据权利要求5所述的物联网数据传输准确性提高系统,其特征在于,所述数据帧包括:帧头、帧类型、帧长度、数据位以及帧校验位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910737714.3A CN110474715B (zh) | 2019-08-12 | 2019-08-12 | 一种物联网数据传输准确性提高方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910737714.3A CN110474715B (zh) | 2019-08-12 | 2019-08-12 | 一种物联网数据传输准确性提高方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110474715A true CN110474715A (zh) | 2019-11-19 |
CN110474715B CN110474715B (zh) | 2021-12-17 |
Family
ID=68511417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910737714.3A Active CN110474715B (zh) | 2019-08-12 | 2019-08-12 | 一种物联网数据传输准确性提高方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110474715B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111603375A (zh) * | 2020-05-11 | 2020-09-01 | 山西征宇农业工程有限公司 | 一种自动脉冲复苏系统 |
CN114363390A (zh) * | 2022-01-21 | 2022-04-15 | 西安羚控电子科技有限公司 | 一种无人机地面指控系统及指控方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2919406A1 (en) * | 2012-12-14 | 2015-09-16 | ZTE Corporation | Method and apparatus for checking data frame length |
CN107040549A (zh) * | 2017-06-08 | 2017-08-11 | 山大鲁能信息科技有限公司 | 一种tcp粘包处理方法、服务器及系统 |
CN107682318A (zh) * | 2017-09-06 | 2018-02-09 | 金卡智能集团股份有限公司 | 一种基于NB‑IoT技术的物联网数据传输方法 |
CN108880746A (zh) * | 2018-05-25 | 2018-11-23 | 共享智能铸造产业创新中心有限公司 | 射频通信数据中正确数据的采集方法及其采集系统 |
-
2019
- 2019-08-12 CN CN201910737714.3A patent/CN110474715B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2919406A1 (en) * | 2012-12-14 | 2015-09-16 | ZTE Corporation | Method and apparatus for checking data frame length |
CN107040549A (zh) * | 2017-06-08 | 2017-08-11 | 山大鲁能信息科技有限公司 | 一种tcp粘包处理方法、服务器及系统 |
CN107682318A (zh) * | 2017-09-06 | 2018-02-09 | 金卡智能集团股份有限公司 | 一种基于NB‑IoT技术的物联网数据传输方法 |
CN108880746A (zh) * | 2018-05-25 | 2018-11-23 | 共享智能铸造产业创新中心有限公司 | 射频通信数据中正确数据的采集方法及其采集系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111603375A (zh) * | 2020-05-11 | 2020-09-01 | 山西征宇农业工程有限公司 | 一种自动脉冲复苏系统 |
CN111603375B (zh) * | 2020-05-11 | 2022-06-24 | 山西征宇农业工程有限公司 | 一种自动脉冲复苏系统 |
CN114363390A (zh) * | 2022-01-21 | 2022-04-15 | 西安羚控电子科技有限公司 | 一种无人机地面指控系统及指控方法 |
CN114363390B (zh) * | 2022-01-21 | 2023-09-12 | 西安羚控电子科技有限公司 | 一种无人机地面指控系统及指控方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110474715B (zh) | 2021-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110474715A (zh) | 一种物联网数据传输准确性提高方法及系统 | |
CN103888254A (zh) | 一种网络验证信息的方法和装置 | |
CN102609330A (zh) | 一种凭据号码生成方法及系统 | |
CN106873957A (zh) | 一种业务流程的处理方法和设备 | |
CN110324115A (zh) | 一种数据传输方法、装置、存储介质及终端设备 | |
US11126606B1 (en) | System and method for identifying matching portions of two sets of data in a multiprocessor system | |
CN111290998A (zh) | 迁移数据的校对方法、装置、设备及存储介质 | |
CN112380046B (zh) | 计算结果校验方法、系统、装置、设备及存储介质 | |
CN107426042A (zh) | 一种报文传输方法和发送设备 | |
Bernstein et al. | Non-randomness of S-unit lattices | |
US7337230B2 (en) | Method and system for eliminating redundant rules from a rule set | |
CN104090896A (zh) | 一种导入数据的方法、装置和系统 | |
CN109657317A (zh) | 一种cpld管脚分配的方法、系统及设备 | |
CN109710476A (zh) | 一种系统接口健壮性测试方法和装置 | |
CN107623664A (zh) | 一种密码输入方法及装置 | |
CN103731424B (zh) | 一种网络数据的传输方法、装置及系统 | |
CN112667244A (zh) | 数据校验方法、装置、电子设备及计算机可读存储介质 | |
CN116931829A (zh) | 一种磁盘信息传输方法、装置、设备、存储介质 | |
CN109491923B (zh) | 新增异常代码的确定方法、装置、介质及电子设备 | |
CN109286472B (zh) | 一种基于北斗卫星导航系统的并发数据异步传输方法 | |
CN106878248A (zh) | 一种验证方法和设备 | |
KR101639929B1 (ko) | 통신 장치 및 통신 방법 | |
CN106326310B (zh) | 一种手机客户端软件的资源加密更新方法 | |
KR102064378B1 (ko) | 동적 프레임 운용을 통한 메시지 이주 장치 및 이주 방법 | |
CN102957494A (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 |