CN115225710A - 数据包的传输方法、装置、电子设备及存储介质 - Google Patents
数据包的传输方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115225710A CN115225710A CN202210689303.3A CN202210689303A CN115225710A CN 115225710 A CN115225710 A CN 115225710A CN 202210689303 A CN202210689303 A CN 202210689303A CN 115225710 A CN115225710 A CN 115225710A
- Authority
- CN
- China
- Prior art keywords
- data
- target
- data packet
- original
- thermal
- 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
- 238000000034 method Methods 0.000 title claims abstract description 78
- 230000005540 biological transmission Effects 0.000 title claims abstract description 62
- 230000008569 process Effects 0.000 claims description 35
- 230000011218 segmentation Effects 0.000 claims description 24
- 238000004891 communication Methods 0.000 claims description 16
- 238000004458 analytical method Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 7
- 238000001514 detection method Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 description 12
- 238000007906 compression Methods 0.000 description 11
- 230000006835 compression Effects 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000000295 complement effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- 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/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- 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
-
- 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/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q9/00—Arrangements in telecontrol or telemetry systems for selectively calling a substation from a main station, in which substation desired apparatus is selected for applying a control signal thereto or for obtaining measured values therefrom
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供了一种数据包的传输方法、装置、电子设备及存储介质,所述方法包括:获取待传输的原始数据包以及针对所述原始数据包的热力数据表,所述热力数据表为用于若干个热力数据的数据表,每一个所述热力数据为2个字节长度的数据;根据所述热力数据表对所述原始数据包中的原始数据体进行转码,获得目标数据体以及生成针对所述目标数据体的数据标识区,所述数据标识区用于对数据包的数据内容进行分割以及索引;根据所述目标数据体以及所述数据标识区,生成所述原始数据包对应的目标数据包,并对所述目标数据包进行传输。
Description
技术领域
本发明涉及网络数据传输技术领域,特别是涉及一种数据包的传输方法、一种数据包的传输装置、一种电子设备以及一种计算机可读存储介质。
背景技术
计算机网络技术是在计算机技术发展的基础上形成的,网络技术不受地理位置的局限,在计算机之间建立多台终端连接设备,在计算机连接的情况下,人们可以通过终端设备在计算机上实现信息交流,实现信息共享和信息传递。按照覆盖面积可分为局域网、广域网和域域网,三种网络都是在计算机协议下,通过数据交换达成网络互通的。
常见的网络通信协议有:TCP/IP协议、IPX/SPX(Internetwork Packet Exchange/Sequences Packet Exchange,分组交换/顺序分组交换)协议、NetBEUI(NetBios EnhancedUser Interface,NetBios增强用户接口)协议,其中TCP/IP协议应用较为广泛,TCP/IP协议是Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议的简称,指能够在多个不同网络间实现信息传输的协议簇,主要是由FTP(FileTransferProtocol,文件传输协议)、SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)、TCP、UDP(User Datagram Protocol,用户数据报协议)、IP等协议构成。按照网络体系结构可粗粒分为四层:网络接口层、网络层、传输层和应用层,每一层都呼叫它的下一层所提供的网络来完成自己的需求。
其中,随着计算机技术以及网络技术的高速发展,网络已经触及各个群体,各个年龄段的每一个人,信息网络通信成为了人们生活中必不可少的一部分,正与人们的生活的方方面面变得息息相关,当今社会网络为人们的生活和工作提供了巨大的便利。于此同时对网络质量及网络传输效率也提出了更高的要求,进而为人们的生活带来更大的便利。然而,在传统的网络应用程序中以对用户使用体验进行优化提升为目的,但在网络数据传输上的耗时、性能损耗、网络环境差等问题上依旧存在不少问题。
发明内容
本发明实施例是提供一种数据包的传输方法、装置、电子设备以及计算机可读存储介质,以解决或部分解决对数据包进行传输过程中存在传输耗时、性能损耗以及网络环境差影响数据传输的问题。
本发明实施例公开了一种数据包的传输方法,包括:
获取待传输的原始数据包以及针对所述原始数据包的热力数据表,所述热力数据表为用于若干个热力数据的数据表,每一个所述热力数据为2个字节长度的数据;
根据所述热力数据表对所述原始数据包中的原始数据体进行转码,获得目标数据体以及生成针对所述目标数据体的数据标识区,所述数据标识区用于对数据包的数据内容进行分割以及索引;
根据所述目标数据体以及所述数据标识区,生成所述原始数据包对应的目标数据包,并对所述目标数据包进行传输。
可选地,所述原始数据包至少包括数据包头以及所述数据体,所述根据所述热力数据表对所述原始数据包中的数据体进行转码之前,所述方法还包括:
对所述原始数据包进行遍历,并在遍历到第一分割标识的情况下,将所述原始数据包中第一分割标识之前的编码数据作为原始数据包头,将所述第一分割标识之后的编码数据作为原始数据体。
可选地,所述数据体中包含的各个数据内容的字节长度在4个字节至16个字节之间,所述根据所述热力数据表对所述原始数据包中的原始数据体进行转码,获得目标数据体以及生成针对所述目标数据体的数据标识区,包括:
以原始数据体的首个字节为起点,选取4个字节长度的目标编码数据,查询所述热力数据表中是否存在目标编码数据对应的目标寻址码;
若所述热力数据表中存在目标编码数据对应的目标寻址码,则在所述数据体中将目标编码数据替换为所述目标寻址码,并获取用于对目标寻址码进行索引的索引标识,以及以目标编码数据的后一个字节为起点,返回执行所述选取4个字节长度的目标编码数据的步骤,所述索引标识为两个字节长度的标识;
若所述热力数据表中不存在目标编码数据对应的目标寻址码,则以目标编码数据的后一个字节为起点,选择两个字节长度的编码数据与目标编码数据组成新的目标编码数据,并返回执行所述查询所述热力数据表中是否存在目标编码数据对应的目标寻址码的步骤,直至当前的目标编码数据的字节长度达到16个字节长度且查询无结果的情况下,以当前的目标编码数据中的第二个字节为起点,在所述数据体中选择4个字节长度的新的目标编码数据,并返回执行所述查询所述热力数据表中是否存在目标编码数据对应的目标寻址码的步骤;
当所述数据体的字节遍历完毕后,获得目标数据体,并采用各个所述目标寻址码对应的索引标识,生成针对所述目标数据体的数据标识区。
可选地,所述采用各个所述目标寻址码对应的索引标识,生成针对所述目标数据体的数据标识区,包括:
在对所述原始数据体进行遍历过程中,将各个所述目标寻址码对应的索引标识按照目标寻址码在所述原始数据体中的先后顺序进行组合,若组合过程中存在当前的目标寻址码之后无目标寻址码且对应的目标编码数据的字节长度未达到16个字节,则以预设的递补标识进行补位;
直至所述原始数据体遍历完毕在末位添加用于区分数据段落的第二分割标识,以及在首位添加用于区分数据内容的内容标识,生成目标数据体对应的数据标识区。
可选地,所述根据所述目标数据体以及所述数据标识区,生成所述原始数据包对应的目标数据包,包括:
在所述原始数据包头中添加编码解析标识,生成目标数据包头,所述编码解析标识为表征数据包通过热力数据表进行转码的标识;
将所述目标数据包头与目标数据体进行组合,并在所述目标数据包头之后添加所述数据标识区,生成所述原始数据包对应的目标数据包。
可选地,还包括:
响应于检测到所述目标数据包中的所述编码解析标识,按照每两个字节长度的遍历方式对所述数据标识区进行遍历,根据遍历结果从所述目标数据体中提取对应的目标寻址码;
从所述热力数据表中获取所述目标寻址码对应的编码数据,在所述目标数据体中将所述目标寻址码替换为对应的编码数据,直至所述数据标识区遍历完毕,获得所述原始数据体。
可选地,所述获取待传输的原始数据包以及针对所述原始数据包的热力数据表,包括:
响应于数据传输指令,获取与所述数据传输指令对应的原始TCP/UDP数据包以及针对所述原始TCP/UDP数据包的热力数据表。
本发明实施例还提供了一种数据包的传输装置,包括:
数据包获取模块,用于获取待传输的原始数据包以及针对所述原始数据包的热力数据表,所述热力数据表为用于若干个热力数据的数据表,每一个所述热力数据为2个字节长度的数据;
数据转码模块,用于根据所述热力数据表对所述原始数据包中的原始数据体进行转码,获得目标数据体以及生成针对所述目标数据体的数据标识区,所述数据标识区用于对数据包的数据内容进行分割以及索引;
数据包传输模块,用于根据所述目标数据体以及所述数据标识区,生成所述原始数据包对应的目标数据包,并对所述目标数据包进行传输。
可选地,所述原始数据包至少包括数据包头以及所述数据体,所述装置还包括:
数据遍历模块,用于对所述原始数据包进行遍历,并在遍历到第一分割标识的情况下,将所述原始数据包中第一分割标识之前的编码数据作为原始数据包头,将所述第一分割标识之后的编码数据作为原始数据体。
可选地,所述数据体中包含的各个数据内容的字节长度在4个字节至16个字节之间,所述数据转码模块具体用于:
以原始数据体的首个字节为起点,选取4个字节长度的目标编码数据,查询所述热力数据表中是否存在目标编码数据对应的目标寻址码;
若所述热力数据表中存在目标编码数据对应的目标寻址码,则在所述数据体中将目标编码数据替换为所述目标寻址码,并获取用于对目标寻址码进行索引的索引标识,以及以目标编码数据的后一个字节为起点,返回执行所述选取4个字节长度的目标编码数据的步骤,所述索引标识为两个字节长度的标识;
若所述热力数据表中不存在目标编码数据对应的目标寻址码,则以目标编码数据的后一个字节为起点,选择两个字节长度的编码数据与目标编码数据组成新的目标编码数据,并返回执行所述查询所述热力数据表中是否存在目标编码数据对应的目标寻址码的步骤,直至当前的目标编码数据的字节长度达到16个字节长度且查询无结果的情况下,以当前的目标编码数据中的第二个字节为起点,在所述数据体中选择4个字节长度的新的目标编码数据,并返回执行所述查询所述热力数据表中是否存在目标编码数据对应的目标寻址码的步骤;
当所述数据体的字节遍历完毕后,获得目标数据体,并采用各个所述目标寻址码对应的索引标识,生成针对所述目标数据体的数据标识区。
可选地,所述数据转码模块具体用于:
在对所述原始数据体进行遍历过程中,将各个所述目标寻址码对应的索引标识按照目标寻址码在所述原始数据体中的先后顺序进行组合,若组合过程中存在当前的目标寻址码之后无目标寻址码且对应的目标编码数据的字节长度未达到16个字节,则以预设的递补标识进行补位;
直至所述原始数据体遍历完毕在末位添加用于区分数据段落的第二分割标识,以及在首位添加用于区分数据内容的内容标识,生成目标数据体对应的数据标识区。
可选地,所述数据包传输模块具体用于:
在所述原始数据包头中添加编码解析标识,生成目标数据包头,所述编码解析标识为表征数据包通过热力数据表进行转码的标识;
将所述目标数据包头与目标数据体进行组合,并在所述目标数据包头之后添加所述数据标识区,生成所述原始数据包对应的目标数据包。
可选地,还包括:
数据遍历模块,用于响应于检测到所述目标数据包中的所述编码解析标识,按照每两个字节长度的遍历方式对所述数据标识区进行遍历,根据遍历结果从所述目标数据体中提取对应的目标寻址码;
数据还原模块,用于从所述热力数据表中获取所述目标寻址码对应的编码数据,在所述目标数据体中将所述目标寻址码替换为对应的编码数据,直至所述数据标识区遍历完毕,获得所述原始数据体。
可选地,所述数据包获取模块具体用于:
响应于数据传输指令,获取与所述数据传输指令对应的原始TCP/UDP数据包以及针对所述原始TCP/UDP数据包的热力数据表。
本发明实施例还公开了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口以及所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行存储器上所存放的程序时,实现如本发明实施例所述的方法。
本发明实施例还公开了一种计算机可读存储介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如本发明实施例所述的方法。
本发明实施例包括以下优点:
在本发明实施例中,当需要对数据进行传输时,可以通过获取待传输的原始数据包以及针对原始数据包的热力数据表,该热力数据表可以为用于若干个热力数据的数据表,每一个热力数据为2个字节长度的数据,接着可以根据热力数据表对原始数据包中的原始数据体进行转码,获得目标数据体以及生成针对目标数据体的数据标识区,数据标识区用于对数据包的数据内容进行分割以及索引,然后根据目标数据体以及数据标识区,生成原始数据包对应的目标数据包,并对目标数据包进行传输,从而在数据传输过程中,一方面基于热力数据表本身小容量的数据特性,通过热力数据表对需要传输的数据包进行压缩转码,减少数据传输量,提高了网络传输数据以及基于网络的应用性能,另一方面转码的过程中通过热力数据表进行数据转换,使得传输内容不容易被直接解码,提高了数据传输的安全性。
附图说明
图1是本发明实施例中提供的一种数据包的传输方法的步骤流程图;
图2是本发明实施例中提供的热力数据表的结构示意图;
图3是本发明实施例中提供的一种数据包的传输装置的结构框图;
图4是本发明实施例中提供的一种电子设备的框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
作为一种示例,随着计算机技术以及网络技术的高速发展,网络已经触及各个群体,各个年龄段的每一个人,信息网络通信成为了人们生活中必不可少的一部分,正与人们的生活的方方面面变得息息相关,当今社会网络为人们的生活和工作提供了巨大的便利。于此同时对网络质量及网络传输效率也提出了更高的要求,进而为人们的生活带来更大的便利。然而,在传统的网络应用程序中以对用户使用体验进行优化提升为目的,但在网络数据传输上的耗时、性能损耗、网络环境差等问题上依旧存在不少问题。
对此,本发明的核心发明点之一在于在传输数据包的过程中,基于热力数据表对数据包进行压缩转码,在减少数据传输量的同时,提高网络传输数据以及基于网络的应用性能,同时,基于数据转码,使得所传输的数据包不容易被直接解码,提升了数据传输的安全性。
具体的,参照图1,示出了本发明实施例中提供的一种数据包的传输方法的步骤流程图,具体可以包括如下步骤:
步骤101,获取待传输的原始数据包以及针对所述原始数据包的热力数据表,所述热力数据表为用于若干个热力数据的数据表,每一个所述热力数据为2个字节长度的数据;
可选地,在对数据包进行传输之前,可以先对需要传输的数据包进行转码,并在转码完成之后再进行数据传输,则对于本地终端而言,其可以响应于数据传输指令,获取与数据传输指令对应的原始数据包以及针对原始数据包的热力数据表,以便通过热力数据表完成对数据包的转码。
其中,数据包可以为TCP/UDP数据包(下述数据包);热力数据表可以为用于若干个热力数据的数据表,每一个所述热力数据为2个字节长度的数据,基于小存储容量的数据表,可以将需要传输的数据包转码为存储容量更小的数据包,以提高网络传输数据以及基于网络的应用性能;热力数据,其可以为对应的值,通过不同的值可以构建与数据包中数据内容对应的寻址码。
在一种示例中,对于热力数据表,其可以存储2个字节容量的65536个热力数据,存储内容可以为常用单词、常用词语、短句以及富文本热力片段等,对于每一个存储内容,内容容量可以为4个字节长度到16个字节长度之间,并且可以使用查询树对热力数据进行存储,以方便对数据进行寻址。此外,对于热力数据表,其可以存储于本地,并通过云端版本升级的方式同步对本地的热力数据表进行版本迭代,例如,在云端中对热力数据表进行统一维护,当发生版本迭代的情况下,可以向本地终端推送版本更新,或者在本地终端主动触发更新且有新版本的情况下,对本地终端的热力数据表进行更新,以保证数据传输过程中数据包转码的有效性与准确性。
例如,参照图2,示出了本发明实施例中提供的热力数据表的结构示意图,假设示例数据包括result、info、state、message、“获取”、“消息”等,对于热力数据表,其可以包括2的32次方共65536个热力数据,则对于数据包部分数据数据相应的数据编码如result(5265 73 75 6c 74)、info(49 6e 66 6f)等,则数据result的寻址码可以为0000、info的寻址码可以为000f、state的寻址码可以为0100、message的寻址码可以为010f、“获取”的寻址码可以为ffef、“消息”的寻址码可以为ffff等,本发明对此不作限制。
步骤102,根据所述热力数据表对所述原始数据包中的原始数据体进行转码,获得目标数据体以及生成针对所述目标数据体的数据标识区,所述数据标识区用于对数据包的数据内容进行分割以及索引;
在确定需要传输的原始数据包以及热力数据表后,可以基于热力数据表对原始数据包进行压缩转码,具体的,对于数据包的转码,主要是对数据包中的数据体进行转码,在数据体中包含了数据包中的数据正文内容,则可以基于热力数据表对原始数据包中的原始数据体进行压缩转码,得到目标数据体。并且,在对数据体进行转码的过程中,还可以生成针对目标数据体的数据标识区,通过该数据标识区可以用于对转码后的数据包的数据内容进行分割以及索引,分割指的是对数据包中的数据包与数据体进行分割,索引指的是对压缩转码后的数据包的数据体进行还原时,索引至转码过程所涉及的内容,从而在数据传输过程中,一方面基于热力数据表本身小容量的数据特性,通过热力数据表对需要传输的数据包进行压缩转码,减少数据传输量,提高了网络传输数据以及基于网络的应用性能,另一方面转码的过程中通过热力数据表进行数据转换,使得传输内容不容易被直接解码,提高了数据传输的安全性。
其中,在对原始数据包的原始数据体进行转码之前,需要先确定数据包中哪些内容是数据包头,哪些是数据体,具体的,可以对原始数据包进行遍历,并在遍历到第一分割标识的情况下,将原始数据包中第一分割标识之前的编码数据作为原始数据包头,将第一分割标识之后的编码数据作为原始数据体。对于TCP/UDP数据包,其可以在数据包的末位添加对应的分割标识,用于标识数据包头的结束以及数据体的开始,则在对原始数据包的内容进行遍历的过程中,当字节流到对应的分割标识时,可以表征数据包头遍历结束,开始遍历数据体,从而在遍历数据体的过程中,可以对数据体进行压缩转码,以实现对数据包的压缩转码。
在具体实现中,对于原始数据包中所包含的各个数据内容对应的编码数据,其对应的字节长度可以在4个字节至16个字节之间,则对原始数据包的原始数据体进行转码的过程,可以以原始数据体的首个字节为起点,选取4个字节长度的目标编码数据,查询热力数据表中是否存在目标编码数据对应的目标寻址码,若热力数据表中存在目标编码数据对应的目标寻址码,则在数据体中将目标编码数据替换为目标寻址码,并获取用于对目标寻址码进行索引的索引标识,以及以目标编码数据的后一个字节为起点,返回执行选取4个字节长度的目标编码数据的步骤,索引标识为两个字节长度的标识;若热力数据表中不存在目标编码数据对应的目标寻址码,则以目标编码数据的后一个字节为起点,选择两个字节长度的编码数据与目标编码数据组成新的目标编码数据,并返回执行查询热力数据表中是否存在目标编码数据对应的目标寻址码的步骤,直至当前的目标编码数据的字节长度达到16个字节长度且查询无结果的情况下,以当前的目标编码数据中的第二个字节为起点,在数据体中选择4个字节长度的新的目标编码数据,并返回执行查询热力数据表中是否存在目标编码数据对应的目标寻址码的步骤,当数据体的字节遍历完毕后,获得目标数据体,并采用各个目标寻址码对应的索引标识,生成针对目标数据体的数据标识区。
此外,在对数据体进行转码的过程中,可以在数据包头与数据体之间建立一个数据标识区,并使用两个字节存储寻址码对应的替换位置地址,即存储寻址码对应的索引标识,并在末位使用与数据包头结束相同的分割标识来标识数据标识区的结束以及数据体的开始。其中,索引标识可以为用于表征寻址码在目标数据体的位置,例如,“00 01”可以用于表征从目标数据体中第一个字节起的两个字节为热力数据表的寻址码等。
具体的,在对原始数据体进行遍历过程中,将各个目标寻址码对应的索引标识按照目标寻址码在原始数据体中的先后顺序进行组合,若组合过程中存在当前的目标寻址码之后无目标寻址码且对应的目标编码数据的字节长度未达到16个字节,则以预设的递补标识进行补位,直至原始数据体遍历完毕在末位添加用于区分数据段落的第二分割标识,以及在首位添加用于区分数据内容的内容标识,生成目标数据体对应的数据标识区,从而通过在转码后的数据包中建立数据标识区,一方面可以用于对转码后的数据包中的数据包头与数据体进行分割,实现数据内容的有效划分,另一方面基于数据标识区中的索引标识,实现对转码后的数据体中寻址码的替换位置进行标记,方便后续数据还原时,可以通过索引标识快速定位至对应的寻址码,进而通过寻址码从热力数据表中读取对应的编码数据,完成数据还原。
其中,第一分割标识与第二分割标识可以为相同的分割标识,也可以为不同的分割标识,其用于对标识当前数据内容的结束以及下一数据内容的开始,如数据包头的结束以及数据标识区的开始,数据标识区的结束以及数据体的开始等;首位可以是在数据标识区的第一个字节,末位则可以是在数据标识区的最后字节,通过在数据标识区的首位添加内容标识用于标识数据内容为索引标识,以及在末位添加分割标识用于实现数据内容的分割,从而在后续还原数据的过程中,可以有效地对数据包中的各个内容进行识别。对于递补标识,其可以为热力数据表中的最后一位,在编码数据在热力数据表中无对应的寻址码的情况下,其编码数据的字节长度未达到16个字节的情况下,可以用递补标识进行补位,以保证数据位置之间映射的准确性。
在具体实现中,在遍历数据体的过程中,可以依次取4字节长度的编码数据,在热力数据表中进行查询,直到取值为16字节结束,若无结果开始下一个四字节编码数据的查询,若在热力数据表中查询到结果则返回热力数据表的2字节寻址码,并在数据体中对编码数据进行替换,并添加索引标识到数据标识区,依次进行直到数据结束。
步骤103,根据所述目标数据体以及所述数据标识区,生成所述原始数据包对应的目标数据包,并对所述目标数据包进行传输。
当完成对原始数据包中原始数据体的转码后,需要对数据包头添加对应的标识以标记该数据包通过热力数据表进行了转码,使得数据接收方可以基于热力数据表进行解码得到对应的数据包。
在具体实现中,可以在原始数据包头中添加编码解析标识,生成目标数据包头,编码解析标识为表征数据包通过热力数据表进行转码的标识,接着可以将目标数据包头与目标数据体进行组合,并在目标数据包头之后添加数据标识区,生成原始数据包对应的目标数据包,从而在数据传输过程中,一方面基于热力数据表本身小容量的数据特性,通过热力数据表对需要传输的数据包进行压缩转码,减少数据传输量,提高了网络传输数据以及基于网络的应用性能,另一方面转码的过程中通过热力数据表进行数据转换,使得传输内容不容易被直接解码,提高了数据传输的安全性。可选地,当采用其他数据表进行压缩转码时,则编码解析标识可以对应进行调整,本发明对此不作限制。
此外,当本地终端将转码后的目标数据包发送至对应的接收方后,接收方可以响应于检测到目标数据包中的编码解析标识,按照每两个字节长度的遍历方式对数据标识区进行遍历,根据遍历结果从目标数据体中提取对应的目标寻址码,并从热力数据表中获取目标寻址码对应的编码数据,在目标数据体中将目标寻址码替换为对应的编码数据,直至数据标识区遍历完毕,获得原始数据体。其中,由于热力数据表中是以两个字节长度的方式进行数据内容的呈现,则在还原数据的过程中,可以从目标数据体的第一个字节开始,按照每两个字节长度的方式提取对应的两个字节,并从热力数据表中进行寻址码的查找,以完成对数据还原。
需要说明的是,本发明实施例包括但不限于上述示例,可以理解的是,本领域技术人员在本发明实施例的思想指导下,还可以根据实际需求进行设置,本发明对此不作限制。
在本发明实施例中,当需要对数据进行传输时,可以通过获取待传输的原始数据包以及针对原始数据包的热力数据表,该热力数据表可以为用于若干个热力数据的数据表,每一个所述热力数据为2个字节长度的数据,接着可以根据热力数据表对原始数据包中的原始数据体进行转码,获得目标数据体以及生成针对目标数据体的数据标识区,数据标识区用于对数据包的数据内容进行分割以及索引,然后根据目标数据体以及数据标识区,生成原始数据包对应的目标数据包,并对目标数据包进行传输,从而在数据传输过程中,一方面基于热力数据表本身小容量的数据特性,通过热力数据表对需要传输的数据包进行压缩转码,减少数据传输量,提高了网络传输数据以及基于网络的应用性能,另一方面转码的过程中通过热力数据表进行数据转换,使得传输内容不容易被直接解码,提高了数据传输的安全性。
为了使本领域技术人员更好地理解本发明实施例的技术方案,下面通过一个例子进行示例性说明:
假设原始TCP数据包所包含的内容(数据编码中的“/”并不是数据包中所包含的内容,而是本发明为了进行分割所使用的分割符)如下,左侧为数据编码,右侧为具体的数据内容:
在得到上述需要发送的数据包后,该数据包包含两个部分数据头与数据体,已换行符回车符(0a 0d)作为分割标记,数据头中包含TCP协议的应用层协议类型,如上表示例为HTTP超文本传输协议,以及包含的响应码,请求头数据。数据体为UTF-8编码后的字节流,字节流与右侧数据部分依照相同颜色所对应。
具体的,可以以4字节开始至16字节结束,迭代在热力数据表中进行寻址码查询,取首位4字节0a 52 65 73进行查询,无结果,则进行0a 52 65 73 75 5字节进行查询,直到0a 52 65 73 75 6c 74 49 6e 66 6f 20 5b 73 74 61 16字节的查询无结果结束。开始5265 73 75 4字节的查询,当查询到52 65 73 75 6c 74result时,查询到寻址码为00 00,则对数据进行替换,并在上方数据标识区追加替换位置(00 01)索引,依次进行查询替换,直到数据区结束。
数据标识区采用2字节储存索引,00 01表示数据区开始第1个字节处的两个字节为热力数据表寻址码,后边两个字节表示第二个寻址码在一个寻址码后的多少字节,若后方无标记寻址码,且未使用完16字节,进行使用最后一位ff进行补位直到0a 0d标识结束,则完成编码,得到转码后的数据包(数据编码中的“/”并不是数据包中所包含的内容,而是本发明为了进行分割所使用的分割符),如下:
48 54 54 50/2f/31 2e 31/20 32 30 30/20 0d 0a/43
6f 6e 74 65 6e 74 2d 54 79 70 65/3a 20/74 65 78
............
6f 6e/3a/20 6b 65 65 70 2d 61 6c 69 76 65/0d 0a
53 65 72 76 65 72 3a/20 6e 67 69 6e 78/0d 0a 0d数据包头
(分割)
00 0200 00 00 0200 0700 0100 0f ff ff0a 0d数据标识区
(分割)
0a/00 00/00 0f/20 5b/01 00/3d 31 30 30 30 2c 20/数据体
01 0f/3d/ff ef/e6 9c aa e6 b8 85e9 99 a4e5 91
8a e8 ad a6/ff ff/e6 b6 88e6 81 af/e6 88 90 e5
8a 9f/efbc 81/2c 20/64 61 74 61/3d 5b 7b/6c 61
73 74 54 69 6d 65/3d/32 30 32 32/e5 b9 b4/30 33/
e6 9c 88/32 37/e6 97 a5/31 34/e6 97b6/33 39/e5
88 86/32 33/e7 a7 92/2c/20 74 6f 74 61 6c/4e 75
6d 62 65 72/3d/38 38 35/2c 20/61 6c 61 72 6d 54
......
在完成编码后,还可以对数据头区进行要使用该编码解析的标识,当接收方读取到该标识后则开始对数据进行编码的还原,读取数据标识区的第一个2字节,为00 02表示数据区,第二个字节开始的2字节为寻址码,读取结果为00 00,进行热力数据表查询返回结果为result(52 65 73 75 6c 74),使用52 65 73 75 6c 74对00 00进行替换,按照数据表示区数据依次进行数据还原,即得到数据原码。
在上述过程中,经过统计计算示例数据原码为214字节,压缩编码后208字节,有效地实现了数据压缩发送,提升了传输效率,并且压缩效率可以根据内容而定,数据包含热词数量越多,压缩效率越高。此外,由推导公式可得压缩比z最大为xy-4x最大时得到最大值,因为xy<=a,故xy=a时,代入可得表达式值最大为z=-4x/a+1,当样本a取值为6400B,命中数量x取值400时,可得到最大压缩比为0.75,即实际压缩比由数据区命中热点数据数量与热点数据大小有关,当样本数据为6400B时,压缩比范围为[0,0.75]之间。当命中数据区块单个热点数据越大,替换数量越少,替换与还原所需运算耗时越少,该方法索引设计为递增式寻址,避免无效重复寻址,可提高解压缩还原效率,实际效率由算法效率与计算机性能决定。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图3,示出了本发明实施例中提供的一种数据包的传输装置的结构框图,具体可以包括如下模块:
数据包获取模块301,用于获取待传输的原始数据包以及针对所述原始数据包的热力数据表,所述热力数据表为用于若干个热力数据的数据表,每一个所述热力数据为2个字节长度的数据;
数据转码模块302,用于根据所述热力数据表对所述原始数据包中的原始数据体进行转码,获得目标数据体以及生成针对所述目标数据体的数据标识区,所述数据标识区用于对数据包的数据内容进行分割以及索引;
数据包传输模块303,用于根据所述目标数据体以及所述数据标识区,生成所述原始数据包对应的目标数据包,并对所述目标数据包进行传输。
在一种可选实施例中,所述原始数据包至少包括数据包头以及所述数据体,所述装置还包括:
数据遍历模块,用于对所述原始数据包进行遍历,并在遍历到第一分割标识的情况下,将所述原始数据包中第一分割标识之前的编码数据作为原始数据包头,将所述第一分割标识之后的编码数据作为原始数据体。
在一种可选实施例中,所述数据体中包含的各个数据内容的字节长度在4个字节至16个字节之间,所述数据转码模块302具体用于:
以原始数据体的首个字节为起点,选取4个字节长度的目标编码数据,查询所述热力数据表中是否存在目标编码数据对应的目标寻址码;
若所述热力数据表中存在目标编码数据对应的目标寻址码,则在所述数据体中将目标编码数据替换为所述目标寻址码,并获取用于对目标寻址码进行索引的索引标识,以及以目标编码数据的后一个字节为起点,返回执行所述选取4个字节长度的目标编码数据的步骤,所述索引标识为两个字节长度的标识;
若所述热力数据表中不存在目标编码数据对应的目标寻址码,则以目标编码数据的后一个字节为起点,选择两个字节长度的编码数据与目标编码数据组成新的目标编码数据,并返回执行所述查询所述热力数据表中是否存在目标编码数据对应的目标寻址码的步骤,直至当前的目标编码数据的字节长度达到16个字节长度且查询无结果的情况下,以当前的目标编码数据中的第二个字节为起点,在所述数据体中选择4个字节长度的新的目标编码数据,并返回执行所述查询所述热力数据表中是否存在目标编码数据对应的目标寻址码的步骤;
当所述数据体的字节遍历完毕后,获得目标数据体,并采用各个所述目标寻址码对应的索引标识,生成针对所述目标数据体的数据标识区。
在一种可选实施例中,所述数据转码模块302具体用于:
在对所述原始数据体进行遍历过程中,将各个所述目标寻址码对应的索引标识按照目标寻址码在所述原始数据体中的先后顺序进行组合,若组合过程中存在当前的目标寻址码之后无目标寻址码且对应的目标编码数据的字节长度未达到16个字节,则以预设的递补标识进行补位;
直至所述原始数据体遍历完毕在末位添加用于区分数据段落的第二分割标识,以及在首位添加用于区分数据内容的内容标识,生成目标数据体对应的数据标识区。
在一种可选实施例中,所述数据包传输模块303具体用于:
在所述原始数据包头中添加编码解析标识,生成目标数据包头,所述编码解析标识为表征数据包通过热力数据表进行转码的标识;
将所述目标数据包头与目标数据体进行组合,并在所述目标数据包头之后添加所述数据标识区,生成所述原始数据包对应的目标数据包。
在一种可选实施例中,还包括:
数据遍历模块,用于响应于检测到所述目标数据包中的所述编码解析标识,按照每两个字节长度的遍历方式对所述数据标识区进行遍历,根据遍历结果从所述目标数据体中提取对应的目标寻址码;
数据还原模块,用于从所述热力数据表中获取所述目标寻址码对应的编码数据,在所述目标数据体中将所述目标寻址码替换为对应的编码数据,直至所述数据标识区遍历完毕,获得所述原始数据体。
在一种可选实施例中,所述数据包获取模块301具体用于:
响应于数据传输指令,获取与所述数据传输指令对应的原始TCP/UDP数据包以及针对所述原始TCP/UDP数据包的热力数据表。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
另外,本发明实施例还提供了一种电子设备,包括:处理器,存储器,存储在存储器上并可在处理器上运行的计算机程序,该计算机程序被处理器执行时实现上述数据包的传输方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述数据包的传输方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
图4为实现本发明各个实施例的一种电子设备的硬件结构示意图。
该电子设备400包括但不限于:射频单元401、网络模块402、音频输出单元403、输入单元404、传感器405、显示单元406、用户输入单元407、接口单元408、存储器409、处理器410、以及电源411等部件。本领域技术人员可以理解,图4中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明实施例中,电子设备包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、车载终端、可穿戴设备、以及计步器等。
应理解的是,本发明实施例中,射频单元401可用于收发信息或通话过程中,信号的接收和发送,具体的,将来自基站的下行数据接收后,给处理器410处理;另外,将上行的数据发送给基站。通常,射频单元401包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元401还可以通过无线通信系统与网络和其他设备通信。
电子设备通过网络模块402为用户提供了无线的宽带互联网访问,如帮助用户收发电子邮件、浏览网页和访问流式媒体等。
音频输出单元403可以将射频单元401或网络模块402接收的或者在存储器409中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元403还可以提供与电子设备400执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元403包括扬声器、蜂鸣器以及受话器等。
输入单元404用于接收音频或视频信号。输入单元404可以包括图形处理器(Graphics Processing Unit,GPU)4041和麦克风4042,图形处理器4041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元406上。经图形处理器4041处理后的图像帧可以存储在存储器409(或其它存储介质)中或者经由射频单元401或网络模块402进行发送。麦克风4042可以接收声音,并且能够将这样的声音处理为音频数据。处理后的音频数据可以在电话通话模式的情况下转换为可经由射频单元401发送到移动通信基站的格式输出。
电子设备400还包括至少一种传感器405,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板4061的亮度,接近传感器可在电子设备400移动到耳边时,关闭显示面板4061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别电子设备姿态(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;传感器405还可以包括指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等,在此不再赘述。
显示单元406用于显示由用户输入的信息或提供给用户的信息。显示单元406可包括显示面板4061,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板4061。
用户输入单元407可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元407包括触控面板4071以及其他输入设备4072。触控面板4071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板4071上或在触控面板4071附近的操作)。触控面板4071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器410,接收处理器410发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板4071。除了触控面板4071,用户输入单元407还可以包括其他输入设备4072。具体地,其他输入设备4072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
进一步的,触控面板4071可覆盖在显示面板4061上,当触控面板4071检测到在其上或附近的触摸操作后,传送给处理器410以确定触摸事件的类型,随后处理器410根据触摸事件的类型在显示面板4061上提供相应的视觉输出。虽然在图4中,触控面板4071与显示面板4061是作为两个独立的部件来实现电子设备的输入和输出功能,但是在某些实施例中,可以将触控面板4071与显示面板4061集成而实现电子设备的输入和输出功能,具体此处不做限定。
接口单元408为外部装置与电子设备400连接的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。接口单元408可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到电子设备400内的一个或多个元件或者可以用于在电子设备400和外部装置之间传输数据。
存储器409可用于存储软件程序以及各种数据。存储器409可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器409可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器410是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器409内的软件程序和/或模块,以及调用存储在存储器409内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。处理器410可包括一个或多个处理单元;优选的,处理器410可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器410中。
电子设备400还可以包括给各个部件供电的电源411(比如电池),优选的,电源411可以通过电源管理系统与处理器410逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
另外,电子设备400包括一些未示出的功能模块,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
本领域普通技术人员可以意识到,结合本发明实施例中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种数据包的传输方法,其特征在于,包括:
获取待传输的原始数据包以及针对所述原始数据包的热力数据表,所述热力数据表为用于若干个热力数据的数据表,每一个所述热力数据为2个字节长度的数据;
根据所述热力数据表对所述原始数据包中的原始数据体进行转码,获得目标数据体以及生成针对所述目标数据体的数据标识区,所述数据标识区用于对数据包的数据内容进行分割以及索引;
根据所述目标数据体以及所述数据标识区,生成所述原始数据包对应的目标数据包,并对所述目标数据包进行传输。
2.根据权利要求1所述的方法,其特征在于,所述原始数据包至少包括数据包头以及所述数据体,所述根据所述热力数据表对所述原始数据包中的数据体进行转码之前,所述方法还包括:
对所述原始数据包进行遍历,并在遍历到第一分割标识的情况下,将所述原始数据包中第一分割标识之前的编码数据作为原始数据包头,将所述第一分割标识之后的编码数据作为原始数据体。
3.根据权利要求1或2所述的方法,其特征在于,所述数据体中包含的各个数据内容的字节长度在4个字节至16个字节之间,所述根据所述热力数据表对所述原始数据包中的原始数据体进行转码,获得目标数据体以及生成针对所述目标数据体的数据标识区,包括:
以原始数据体的首个字节为起点,选取4个字节长度的目标编码数据,查询所述热力数据表中是否存在目标编码数据对应的目标寻址码;
若所述热力数据表中存在目标编码数据对应的目标寻址码,则在所述数据体中将目标编码数据替换为所述目标寻址码,并获取用于对目标寻址码进行索引的索引标识,以及以目标编码数据的后一个字节为起点,返回执行所述选取4个字节长度的目标编码数据的步骤,所述索引标识为两个字节长度的标识;
若所述热力数据表中不存在目标编码数据对应的目标寻址码,则以目标编码数据的后一个字节为起点,选择两个字节长度的编码数据与目标编码数据组成新的目标编码数据,并返回执行所述查询所述热力数据表中是否存在目标编码数据对应的目标寻址码的步骤,直至当前的目标编码数据的字节长度达到16个字节长度且查询无结果的情况下,以当前的目标编码数据中的第二个字节为起点,在所述数据体中选择4个字节长度的新的目标编码数据,并返回执行所述查询所述热力数据表中是否存在目标编码数据对应的目标寻址码的步骤;
当所述数据体的字节遍历完毕后,获得目标数据体,并采用各个所述目标寻址码对应的索引标识,生成针对所述目标数据体的数据标识区。
4.根据权利要求3所述的方法,其特征在于,所述采用各个所述目标寻址码对应的索引标识,生成针对所述目标数据体的数据标识区,包括:
在对所述原始数据体进行遍历过程中,将各个所述目标寻址码对应的索引标识按照目标寻址码在所述原始数据体中的先后顺序进行组合,若组合过程中存在当前的目标寻址码之后无目标寻址码且对应的目标编码数据的字节长度未达到16个字节,则以预设的递补标识进行补位;
直至所述原始数据体遍历完毕在末位添加用于区分数据段落的第二分割标识,以及在首位添加用于区分数据内容的内容标识,生成目标数据体对应的数据标识区。
5.根据权利要求2所述的方法,其特征在于,所述根据所述目标数据体以及所述数据标识区,生成所述原始数据包对应的目标数据包,包括:
在所述原始数据包头中添加编码解析标识,生成目标数据包头,所述编码解析标识为表征数据包通过热力数据表进行转码的标识;
将所述目标数据包头与目标数据体进行组合,并在所述目标数据包头之后添加所述数据标识区,生成所述原始数据包对应的目标数据包。
6.根据权利要求5所述的方法,其特征在于,还包括:
响应于检测到所述目标数据包中的所述编码解析标识,按照每两个字节长度的遍历方式对所述数据标识区进行遍历,根据遍历结果从所述目标数据体中提取对应的目标寻址码;
从所述热力数据表中获取所述目标寻址码对应的编码数据,在所述目标数据体中将所述目标寻址码替换为对应的编码数据,直至所述数据标识区遍历完毕,获得所述原始数据体。
7.根据权利要求1所述的方法,其特征在于,所述获取待传输的原始数据包以及针对所述原始数据包的热力数据表,包括:
响应于数据传输指令,获取与所述数据传输指令对应的原始TCP/UDP数据包以及针对所述原始TCP/UDP数据包的热力数据表。
8.一种数据包的传输装置,其特征在于,包括:
数据包获取模块,用于获取待传输的原始数据包以及针对所述原始数据包的热力数据表,所述热力数据表为用于若干个热力数据的数据表,每一个所述热力数据为2个字节长度的数据;
数据转码模块,用于根据所述热力数据表对所述原始数据包中的原始数据体进行转码,获得目标数据体以及生成针对所述目标数据体的数据标识区,所述数据标识区用于对数据包的数据内容进行分割以及索引;
数据包传输模块,用于根据所述目标数据体以及所述数据标识区,生成所述原始数据包对应的目标数据包,并对所述目标数据包进行传输。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口以及所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行存储器上所存放的程序时,实现如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210689303.3A CN115225710B (zh) | 2022-06-17 | 2022-06-17 | 数据包的传输方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210689303.3A CN115225710B (zh) | 2022-06-17 | 2022-06-17 | 数据包的传输方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115225710A true CN115225710A (zh) | 2022-10-21 |
CN115225710B CN115225710B (zh) | 2024-06-07 |
Family
ID=83607788
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210689303.3A Active CN115225710B (zh) | 2022-06-17 | 2022-06-17 | 数据包的传输方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115225710B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106446064A (zh) * | 2016-09-05 | 2017-02-22 | 中国银行股份有限公司 | 一种数据转换方法及装置 |
CN108737026A (zh) * | 2018-05-08 | 2018-11-02 | 深圳市心流科技有限公司 | 数据传输方法、装置及计算机可读存储介质 |
CN110868497A (zh) * | 2019-11-06 | 2020-03-06 | 维沃移动通信有限公司 | 一种数据传输方法、装置及电子设备 |
CN111865952A (zh) * | 2020-07-10 | 2020-10-30 | 腾讯音乐娱乐科技(深圳)有限公司 | 数据处理方法、装置、存储介质及电子设备 |
WO2021052058A1 (zh) * | 2019-09-20 | 2021-03-25 | 北京达佳互联信息技术有限公司 | 视频处理方法、装置、电子设备及存储介质 |
CN112671921A (zh) * | 2020-12-29 | 2021-04-16 | 平安普惠企业管理有限公司 | 数据传输方法、装置、电子设备及可读存储介质 |
WO2022007342A1 (zh) * | 2020-07-07 | 2022-01-13 | 上海商汤智能科技有限公司 | 图像处理方法及装置、电子设备、存储介质和程序产品 |
-
2022
- 2022-06-17 CN CN202210689303.3A patent/CN115225710B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106446064A (zh) * | 2016-09-05 | 2017-02-22 | 中国银行股份有限公司 | 一种数据转换方法及装置 |
CN108737026A (zh) * | 2018-05-08 | 2018-11-02 | 深圳市心流科技有限公司 | 数据传输方法、装置及计算机可读存储介质 |
WO2021052058A1 (zh) * | 2019-09-20 | 2021-03-25 | 北京达佳互联信息技术有限公司 | 视频处理方法、装置、电子设备及存储介质 |
CN110868497A (zh) * | 2019-11-06 | 2020-03-06 | 维沃移动通信有限公司 | 一种数据传输方法、装置及电子设备 |
WO2022007342A1 (zh) * | 2020-07-07 | 2022-01-13 | 上海商汤智能科技有限公司 | 图像处理方法及装置、电子设备、存储介质和程序产品 |
CN111865952A (zh) * | 2020-07-10 | 2020-10-30 | 腾讯音乐娱乐科技(深圳)有限公司 | 数据处理方法、装置、存储介质及电子设备 |
CN112671921A (zh) * | 2020-12-29 | 2021-04-16 | 平安普惠企业管理有限公司 | 数据传输方法、装置、电子设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115225710B (zh) | 2024-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108289244B (zh) | 视频字幕处理方法、移动终端及计算机可读存储介质 | |
CN108572764B (zh) | 一种文字输入控制方法、设备及计算机可读存储介质 | |
CN109701266B (zh) | 游戏震动方法、装置、移动终端及计算机可读存储介质 | |
CN107038245B (zh) | 页面切换方法、移动终端及存储介质 | |
CN112084747B (zh) | 一种资源管理方法、装置、电子设备及存储介质 | |
CN108804130B (zh) | 程序安装包生成方法及装置 | |
CN110180181B (zh) | 精彩时刻视频的截图方法、装置及计算机可读存储介质 | |
CN107818787B (zh) | 一种语音信息的处理方法、终端及计算机可读存储介质 | |
CN111401463B (zh) | 检测结果输出的方法、电子设备及介质 | |
CN107168626B (zh) | 一种信息处理方法、设备及计算机可读存储介质 | |
CN110555171A (zh) | 一种信息处理方法、装置、存储介质及系统 | |
CN110688347A (zh) | 文件存储方法、文件存储装置及终端设备 | |
CN110287719B (zh) | 文件加密方法及移动终端 | |
CN108429805B (zh) | 一种文件下载处理方法、发送终端及接收终端 | |
CN108958579B (zh) | 一种红包发送、收取方法及红包发送、收取装置 | |
CN108121583B (zh) | 截屏方法及相关产品 | |
CN107133085B (zh) | 优化oat中冗余指令的方法及移动终端 | |
CN109889568B (zh) | 一种数据导出方法、服务器及系统 | |
CN115225710B (zh) | 数据包的传输方法、装置、电子设备及存储介质 | |
CN108495276B (zh) | 一种数字名片的分享方法和装置 | |
CN110602706A (zh) | 一种入网方法、终端及服务器 | |
CN112888024A (zh) | 数据处理方法、装置、存储介质及电子设备 | |
CN110278327B (zh) | 数据处理方法及移动终端 | |
CN108255930B (zh) | 一种移动终端的数据清理方法及移动终端 | |
CN108494753B (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 |