CN114024952A - 一种基于dl/t 698.45-2007协议的文件压缩传输方法 - Google Patents
一种基于dl/t 698.45-2007协议的文件压缩传输方法 Download PDFInfo
- Publication number
- CN114024952A CN114024952A CN202111210311.7A CN202111210311A CN114024952A CN 114024952 A CN114024952 A CN 114024952A CN 202111210311 A CN202111210311 A CN 202111210311A CN 114024952 A CN114024952 A CN 114024952A
- Authority
- CN
- China
- Prior art keywords
- data
- file
- transmission
- compression
- dictionary
- 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
Images
Classifications
-
- 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/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- 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/0061—Error detection codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/04—Protocols for data compression, e.g. ROHC
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
一种基于DL/T 698.45‑2007协议的文件压缩传输方法,属于数据交换协议领域,是针对文件传输不够稳定,传输效率低,文件占用空间大的问题所提出。一种基于DL/T698.45‑2007协议的文件压缩传输方法,包括以下步骤:步骤S1,以帧为单元,按照规则对数据重新编码,实现数据压缩;步骤S2,按照698拓展方法组合数据帧进行数据传输;步骤S3,对接收到的数据按规则还原编码,得到原始数据。具有文件传输稳定,传输效率高,文件占用空间小的优点。
Description
技术领域
本发明涉及数据交换协议领域,特别是涉及一种基于DL/T 698.45-2007协议的文件压缩传输方法。
背景技术
DL/T 698.45-2017面向对象的数据交换协议是国家电网内现行的通信协议,该协议的接口类IC18规定了文件属性,并使用对象标识F001的方法实现文件传输。目前国网内大多数用电采集设备间的数据传输采用此协议。
现有的部分高级采集终端设备支持zip等格式文件的压缩与解压,其压缩程序均以拓展功能或APP的形式安装于设备上,占用大量空间且不利于更改,终端在本机先将文件压缩,就压缩文件传输至从机后,再由从机解压缩。现采用直接读、写原文件的方式,传输数据量大,占用网络带宽多,传输时间长,传输成功率低。小型物联网设备因计算能力有限,存储空间较小,无法实现现有压缩程序的安装或运行,无法接收压缩文件。
发明内容
为了克服上述现有技术存在的缺陷,本发明提供了一种基于DL/T 698.45-2007协议的文件压缩传输方法,可以解决输数据量大,占用网络带宽多,传输时间长,传输成功率低的问题。可以减少文件占用空间,降低解压运算的算力要求,减少传输错误几率,降低传输时间,提高传输效率。
本发明采用的技术方案在于:
一种基于DL/T 698.45-2007协议的文件压缩传输方法,包括以下步骤:
步骤S1,对数据重新编码,实现数据压缩;
步骤S2,按照DL/T 698.45-2007协议拓展方法组合数据帧进行数据传输;
步骤S3,对接收到的数据按规则还原编码,得到原始数据。
进一步地,所述步骤S1,对数据重新编码,实现数据压缩的具体实施如下:
步骤S11,拓展DL/T 698.45-2007协议文件传输类,原协议文件传输类标识定义了F000-F002共3个,添加F003标识;
步骤S12,文件编码压缩。
进一步地,所述步骤S12,文件编码压缩实施如下:
步骤S121,确定传输参数:
获取文件信息,文件大小、文件名称,进行顺序分块,每块大小设置为4KB,采用连续传输方案,向接收终端发送F003“启动传输”命令,接收到终端确认帧后,正式启动传输;
步骤S122,数据处理:
编码方法为:以3bit位为基本编码,留有110、111作为拓展编码,最终形成16组编码,一一对应4bit的半字节数据;
顺序读取文件2KB数据,扫描所述数据,以4bit为一组,获得各组数据出现次数,并按次数大小对数据进行降序排序,再将排好序的数据以6-6-4比例分为3组,每组在组内再按数据由小到大重新排列,最后合并为最终的排序结果;
将最终排序结果对应到原码编码对应表,根据该表,将各数据依次以对应编码替换;
计算本分块的压缩后的数据大小,如果压缩后数据大于等于原数据,则放弃压缩,并记录序号为0;如果压缩后数据小于原数据,则根据排序后的数据顺序,在F003属性5中寻找与其相同的排列,并记录其序号,如果无相同顺序,则记录序号为255,同时将本顺序随本帧一并发出。
进一步地,所述属性5内容为:
属性5(字典列表)::=array字典参数
字典参数::=octet-string(SIZE(8))
字典数组对应序号:1-254
其中,属性5中存放的是字典数据,即映射表,其前16组为固定不可更改。
进一步地,所述步骤S2,按照DL/T 698.45-2007拓展方法组合数据帧进行数据传输的具体实施如下:
文件传输时采用DL/T 698.45-2007协议规定的APDU数据格式,对步骤S1压缩的原数据,采用F003方法8进行传输;
步骤S21,压缩后F003属性5中有对应字典编码
APDU帧格式:块序号1字节+编码序号1字节+压缩数据N字节;
步骤S22,压缩后F003属性5中无对应字典编码
APDU帧格式:块序号1字节+FFH+字典编码8字节+压缩数据N字节;
步骤S23,不压缩
APDU帧格式:块序号1字节+00H+原数据N字节。
进一步地,所述方法8内容如下:
方法8:写文件(参数)
参数::=structure
{
块序号long-unsigned,
字典序号unsigned,
块数据octet-string
}。
进一步地,所述步骤S3,对接收到的数据按规则还原编码,得到原始数据的具体实施如下:
接收步骤S2的压缩数据,按位顺序读取:
步骤S31,先读取3bit,如为000-101,则直接按字典对应值进行替换,如为110则进行步骤S32,如为111则进行步骤S33;
步骤S32,再读取2bit,合并为5bit后按字典对应值替换,到步骤S36;
步骤S33,再读取1bit,如为0则进行步骤S34,如为1则进行步骤S35;
步骤S34,再读1bit共计5bit按字典对应值替换,到步骤S36;
步骤S35,再读2bit共计6bit按字典对应值替换,到步骤S36;
步骤S36,如已读取到文件末则结束,否则回到步骤S31。
本发明的有益效果是:
1.优化文件传输不够稳定的问题,提升设备间文件传输的稳定性和传输效率。
2.减少文件占用空间,降低解压运算的算力要求,减少传输错误几率,降低传输时间,提高传输效率。
3.通过压缩传输可以减少传输数据量,降低传输错误情况,提高传输效率。
附图说明
图1是一种基于DL/T 698.45-2007协议的文件压缩传输方法的逻辑框图;
图2是一种基于DL/T 698.45-2007协议的文件压缩传输方法的编码规则原理图;
图3是一种基于DL/T 698.45-2007协议的文件压缩传输方法的编码方法原理图;
图4是一种基于DL/T 698.45-2007协议的文件压缩传输方法的原码编码对应表;
图5是一种基于DL/T 698.45-2007协议的文件压缩传输方法的解码流程图;
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
一种基于DL/T 698.45-2007协议的文件压缩传输方法,实施方式如下:
如图1所示,包括:压缩处理模块,传输模块,解压处理模块。压缩处理模块:以帧为单元,按照固定的规则对数据重新编码,实现数据压缩。传输模块:按照DL/T 698.45-2007协议拓展方法组合数据帧进行数据传输。解压处理模块:对接收到的数据按既定规则还原编码,得到原始数据。
整体的实施过程为:终端程序依照规定将待压缩数据传入压缩处理模块,压缩处理模块根据固定规则以及DL/T 698.45-2007拓展协议属性对数据进行压缩,完成后传回压缩数据。
终端程序再将压缩数据传入传输模块,传输模块将压缩数据组合成新的数据帧返回,终端程序将此帧发送至目标设备。
目标设备接收到数据帧后处理得到压缩数据,传入解压处理模块,该模块依据传输的数据根据既定方案对数据进行还原,并将还原数据返回,至此数据的压缩传输完成。
具体实施过程分为四个阶段:拓展DL/T 698.45-2007协议文件传输类阶段,文件编码压缩阶段,文件传输阶段,文件解码阶段。
一、拓展DL/T 698.45-2007协议文件传输类阶段
原协议文件传输类标识定义了F000-F002共3个,现添加F003标识,标识属性和方法见下表:
其中属性5中存放的是字典数据,即映射表。其前16组为固定不可更改,根据实际情况确定,以下为示例:
01 68CF 23 57 9B 4A DE
01 23 5F 46 AB CD 78 9E
......
01 23 EF 45 7A CD 68 9B
其中17-254组为可写
二、文件编码压缩阶段
1.确定传输参数
获取文件信息,文件大小、文件名称等,根据实际情况进行分块,这里进行顺序分块,每块大小设置为4KB,采用连续传输方案,向接收终端发送F003“启动传输”命令,接收到终端确认帧后,正式启动传输。
2.数据处理
如图2所示,编码方法:以3bit位为基本编码,留有110、111作为拓展编码,最终形成16组编码,可以一一对应4bit的半字节数据(即0000-1111,共16组)。
如图3所示,顺序读取文件2KB数据,扫描这部分数据,以4bit为一组单位,获得各组数据出现次数,并按次数大小对数据进行降序排序,再将排好序的数据以6-6-4分为3组,每组在组内再按数据由小到大重新排列,最后合并为最终的排序结果。
将最终排序结果对应到图4中的原码编码对应表,根据该表,将各数据依次以对应编码替换。
计算本分块的压缩后的数据大小,如出现压缩后数据不小于原数据,则放弃压缩,并记录序号为0。如符合压缩要求,则根据排序后的数据顺序,在F003属性5中寻找与其相同的排列,并记录其序号。如无想同顺序,则记录序号为255,同时将本顺序随本帧一并发出。
三、文件传输阶段
文件传输时采用DL/T 698.45-2007协议规定的APDU数据格式,对原数据压缩处理后,采用F003方法8进行传输。
1.压缩后F003属性5中有对应字典编码
APDU帧格式:块序号1字节+编码序号1字节+压缩数据N字节
2.压缩后F003属性5中无对应字典编码
APDU帧格式:块序号1字节+FFH+字典编码8字节+压缩数据N字节
3.不压缩
APDU帧格式:块序号1字节+00H+原数据N字节
四、文件编码解压阶段
如图5所示,收到压缩数据后,按位顺序读取。
1.先读取3bit,如为000-101,则直接按字典对应值进行替换,如为110则进行步骤2,如为111则进行步骤3
2.再读取2bit,合并为5bit后按字典对应值替换,到步骤6
3.再读取1bit,如为0则进行步骤4,如为1则进行步骤5
4.再读1bit共计5bit按字典对应值替换,到步骤6
5.再读2bit共计6bit按字典对应值替换,到步骤6
6.如已读取到文件末则结束,否则回到步骤1
通过压缩传输可以减少传输数据量,降低传输错误情况,提高传输效率。
Claims (7)
1.一种基于DL/T 698.45-2007协议的文件压缩传输方法,其特征在于,包括以下步骤:
步骤S1,对数据重新编码,实现数据压缩;
步骤S2,按照DL/T 698.45-2007协议拓展方法组合数据帧进行数据传输;
步骤S3,对接收到的数据按规则还原编码,得到原始数据。
2.根据权利要求1所述的一种基于DL/T 698.45-2007协议的文件压缩传输方法,其特征在于,所述步骤S1,对数据重新编码,实现数据压缩的具体实施如下:
步骤S11,拓展DL/T 698.45-2007协议文件传输类,原协议文件传输类标识定义了F000-F002共3个,添加F003标识;
步骤S12,文件编码压缩。
3.根据权利要求2所述的一种基于DL/T 698.45-2007协议的文件压缩传输方法,其特征在于,所述步骤S12,文件编码压缩实施如下:
步骤S121,确定传输参数:
获取文件信息,文件大小、文件名称,进行顺序分块,每块大小设置为4KB,采用连续传输方案,向接收终端发送F003“启动传输”命令,接收到终端确认帧后,正式启动传输;
步骤S122,数据处理:
编码方法为:以3bit位为基本编码,留有110、111作为拓展编码,最终形成16组编码,一一对应4bit的半字节数据;
顺序读取文件2KB数据,扫描所述数据,以4bit为一组,获得各组数据出现次数,并按次数大小对数据进行降序排序,再将排好序的数据以6-6-4比例分为3组,每组在组内再按数据由小到大重新排列,最后合并为最终的排序结果;
将最终排序结果对应到原码编码对应表,根据该表,将各数据依次以对应编码替换;
计算本分块的压缩后的数据大小,如果压缩后数据大于等于原数据,则放弃压缩,并记录序号为0;如果压缩后数据小于原数据,则根据排序后的数据顺序,在F003属性5中寻找与其相同的排列,并记录其序号,如果无相同顺序,则记录序号为255,同时将本顺序随本帧一并发出。
4.根据权利要求3所述的一种基于DL/T 698.45-2007协议的文件压缩传输方法,其特征在于,所述属性5内容为:
属性5(字典列表)::=array字典参数
字典参数::=octet-string(SIZE(8))
字典数组对应序号:1-254
其中,属性5中存放的是字典数据,即映射表,其前16组为固定不可更改。
5.根据权利要求1所述的一种基于DL/T 698.45-2007协议的文件压缩传输方法,其特征在于,所述步骤S2,按照DL/T 698.45-2007拓展方法组合数据帧进行数据传输的具体实施如下:
文件传输时采用DL/T 698.45-2007协议规定的APDU数据格式,对步骤S1压缩的原数据,采用F003方法8进行传输;
步骤S21,压缩后F003属性5中有对应字典编码
APDU帧格式:块序号1字节+编码序号1字节+压缩数据N字节;
步骤S22,压缩后F003属性5中无对应字典编码
APDU帧格式:块序号1字节+FFH+字典编码8字节+压缩数据N字节;
步骤S23,不压缩
APDU帧格式:块序号1字节+00H+原数据N字节。
6.根据权利要求5所述的一种基于DL/T 698.45-2007协议的文件压缩传输方法,其特征在于,所述方法8内容如下:
方法8:写文件(参数)
参数::=structure
{
块序号long-unsigned,
字典序号unsigned,
块数据octet-string
}。
7.根据权利要求1所述的一种基于DL/T 698.45-2007协议的文件压缩传输方法,其特征在于,所述步骤S3,对接收到的数据按规则还原编码,得到原始数据的具体实施如下:
接收步骤S2的压缩数据,按位顺序读取:
步骤S31,先读取3bit,如为000-101,则直接按字典对应值进行替换,如为110则进行步骤S32,如为111则进行步骤S33;
步骤S32,再读取2bit,合并为5bit后按字典对应值替换,到步骤S36;
步骤S33,再读取1bit,如为0则进行步骤S34,如为1则进行步骤S35;
步骤S34,再读1bit共计5bit按字典对应值替换,到步骤S36;
步骤S35,再读2bit共计6bit按字典对应值替换,到步骤S36;
步骤S36,如已读取到文件末则结束,否则回到步骤S31。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111210311.7A CN114024952B (zh) | 2021-10-18 | 2021-10-18 | 一种基于dl/t 698.45-2007协议的文件压缩传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111210311.7A CN114024952B (zh) | 2021-10-18 | 2021-10-18 | 一种基于dl/t 698.45-2007协议的文件压缩传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114024952A true CN114024952A (zh) | 2022-02-08 |
CN114024952B CN114024952B (zh) | 2023-10-03 |
Family
ID=80056512
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111210311.7A Active CN114024952B (zh) | 2021-10-18 | 2021-10-18 | 一种基于dl/t 698.45-2007协议的文件压缩传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114024952B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114885033A (zh) * | 2022-04-26 | 2022-08-09 | 青岛鼎信通讯股份有限公司 | 一种基于电力线通信协议的数据帧压缩方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110264669A1 (en) * | 2009-12-30 | 2011-10-27 | Zhou Lu | method for compressing a .net file |
CN109088851A (zh) * | 2018-06-22 | 2018-12-25 | 杭州海兴电力科技股份有限公司 | 用电信息采集的数据压缩方法 |
CN110535846A (zh) * | 2019-08-22 | 2019-12-03 | 中国电力科学研究院有限公司 | 一种基于dl/t698.45协议的数据帧压缩方法和系统 |
CN110995753A (zh) * | 2019-12-19 | 2020-04-10 | 中国电力科学研究院有限公司 | 用电信息采集系统中远程通信报文的组合压缩方法 |
-
2021
- 2021-10-18 CN CN202111210311.7A patent/CN114024952B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110264669A1 (en) * | 2009-12-30 | 2011-10-27 | Zhou Lu | method for compressing a .net file |
CN109088851A (zh) * | 2018-06-22 | 2018-12-25 | 杭州海兴电力科技股份有限公司 | 用电信息采集的数据压缩方法 |
CN110535846A (zh) * | 2019-08-22 | 2019-12-03 | 中国电力科学研究院有限公司 | 一种基于dl/t698.45协议的数据帧压缩方法和系统 |
CN110995753A (zh) * | 2019-12-19 | 2020-04-10 | 中国电力科学研究院有限公司 | 用电信息采集系统中远程通信报文的组合压缩方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114885033A (zh) * | 2022-04-26 | 2022-08-09 | 青岛鼎信通讯股份有限公司 | 一种基于电力线通信协议的数据帧压缩方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114024952B (zh) | 2023-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109120272B (zh) | 一种面向离散制造车间的rfid标签数据压缩方法 | |
CN112953550B (zh) | 数据压缩的方法、电子设备及存储介质 | |
CN108833058B (zh) | 一种广域测量系统通信过程动态数据压缩、解压的方法 | |
CN103379136A (zh) | 一种日志采集数据压缩方法、解压缩方法及装置 | |
WO1996041423A1 (en) | Compression of an electronic programming guide | |
CN101977061B (zh) | 一种通用信息的无损压缩与解压缩方法 | |
CN101667843B (zh) | 嵌入式系统的数据压缩、及解压缩方法与装置 | |
CN110535846B (zh) | 一种基于dl/t698.45协议的数据帧压缩方法和系统 | |
CN108737976A (zh) | 一种基于北斗短报文的压缩传输方法 | |
CN114024952A (zh) | 一种基于dl/t 698.45-2007协议的文件压缩传输方法 | |
CN101800761B (zh) | 一种基于网络字典的无损数据压缩方法 | |
CN110995753A (zh) | 用电信息采集系统中远程通信报文的组合压缩方法 | |
CN101350881A (zh) | 一种jpeg图像的无损压缩与解压缩方法 | |
KR20070011490A (ko) | 구조화된 블록단위로 xml 데이터를 압축 및 압축해제하기 위한 방법 및 장치 | |
CN107343203B (zh) | 基于open-exr图像的jpeg无损压缩方法 | |
CN108880559B (zh) | 数据压缩方法、数据解压缩方法、压缩设备及解压缩设备 | |
US6798914B1 (en) | Neural-network-based method of image compression | |
CN104682966A (zh) | 列表数据的无损压缩方法 | |
CN109872522B (zh) | 基于样本索引对红外码解压缩的算法 | |
CN111858391A (zh) | 一种数据处理过程中优化压缩存储格式的方法 | |
CN112328373A (zh) | 一种面向分布式仿真的数据分发服务dds自动发现方法 | |
CN1656688B (zh) | 在压缩之前处理数字数据 | |
CN105049055A (zh) | 一种数据压缩方法和数据解压方法 | |
US20040208383A1 (en) | System and method for arithmetic encoding and decoding | |
CN115190182B (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 |