CN114500668A - 数据传输方法、装置、电子设备和存储介质 - Google Patents

数据传输方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN114500668A
CN114500668A CN202111641236.XA CN202111641236A CN114500668A CN 114500668 A CN114500668 A CN 114500668A CN 202111641236 A CN202111641236 A CN 202111641236A CN 114500668 A CN114500668 A CN 114500668A
Authority
CN
China
Prior art keywords
terminal
data
compressed data
message
compression
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
Application number
CN202111641236.XA
Other languages
English (en)
Inventor
周朝四
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fibocom Wireless Inc
Original Assignee
Fibocom Wireless Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fibocom Wireless Inc filed Critical Fibocom Wireless Inc
Priority to CN202111641236.XA priority Critical patent/CN114500668A/zh
Publication of CN114500668A publication Critical patent/CN114500668A/zh
Priority to PCT/CN2022/103672 priority patent/WO2023123991A1/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Abstract

本申请涉及一种数据传输方法、装置、电子设备和存储介质。方法包括:向第二终端发送请求报文,请求报文携带有压缩标识;接收第二终端基于请求报文反馈的响应报文,响应报文用于表示第二终端接收到压缩标识;根据压缩标识,与第二终端进行发布报文的交互,发布报文携带有压缩数据,压缩数据由第一终端或第二终端对原始数据进行压缩得到。采用本方法能够提高数据传输的实时性。

Description

数据传输方法、装置、电子设备和存储介质
技术领域
本申请涉及数据通信技术领域,特别是涉及一种数据传输方法、装置、电子设备和存储介质。
背景技术
随着数据通信技术的发展,如何保证提高数据传输的实时性也越来越重要。
目前,不同终端之间的进行数据的传输时,都是通过完整的数据通过特定的通信协议进行传输的。然而,在网络资源占用比较严重,或者是网络带宽较低的情况下,容易存在数据传输延时过高的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高数据传输的实时性的数据传输方法、装置、电子设备和存储介质。
第一方面,本申请提供了一种数据传输方法,应用于第一终端,所述方法包括:
向第二终端发送请求报文,所述请求报文携带有压缩标识;
接收所述第二终端基于所述请求报文反馈的响应报文,所述响应报文用于表示所述第二终端接收到所述压缩标识;
根据所述压缩标识,与所述第二终端进行发布报文的交互,所述发布报文携带有压缩数据,所述压缩数据由所述第一终端或第二终端对原始数据进行压缩得到。
在其中一个实施例中,所述与所述第二终端进行发布报文的交互,具体包括:
在向所述第二终端发送第一发布报文的情况下,对第一原始数据进行压缩处理得到第一压缩数据,并将所述第一压缩数据填充至所述第一发布报文后发送至所述第二终端;
在接收到所述第二终端发送的第二发布报文的情况下,获取所述第二发布报文携带的第二压缩数据,并对所述第二压缩数据进行解压处理得到第二原始数据。
在其中一个实施例中,所述对第一原始数据进行压缩处理得到第一压缩数据,包括:
调用预设压缩算法;
通过所述预设压缩算法对所述第一原始数据进行压缩得到所述第一压缩数据;
所述对所述第二压缩数据进行解压处理得到第二原始数据,包括:
调用预设解压算法;
通过所述预设解压算法对所述第二压缩数据进行解压处理得到所述第二原始数据。
在其中一个实施例中,所述预设压缩算法为多个,所述请求报文还携带有压缩算法标识,所述通过所述预设压缩算法对所述第一原始数据进行压缩得到所述第一压缩数据,包括:
调用与所述压缩算法标识对应的目标压缩算法;
通过所述目标压缩算法对所述第一原始数据进行压缩得到所述第一压缩数据;
所述预设解压算法为多个,所述请求报文还携带有解压算法标识,所述通过所述预设解压算法对所述第二压缩数据进行解压处理得到所述第二原始数据,包括:
调用与所述解压算法标识对应的目标解压算法;
通过所述目标解压算法对所述第二压缩数据进行解压处理得到所述第二原始数据。
在其中一个实施例中,所述请求报文为所述第一终端与所述第二终端建立连接时发送的连接请求报文,或所述第一终端与所述第二终端建立连接完成后发送的其他报文。
在其中一个实施例中,所述压缩标识配置在所述连接请求报文的连接标志字段。
第二方面,本申请提供了一种数据传输方法,应用于第二终端,所述方法包括:
接收第一终端发送的请求报文,所述请求报文携带有压缩标识;
基于所述请求报文向所述第一终端反馈响应报文,所述响应报文用于表示所述第二终端接收到所述压缩标识;
根据所述压缩标识,与所述第一终端进行发布报文的交互,所述发布报文携带有压缩数据,所述压缩数据由所述第一终端或第二终端对原始数据进行压缩得到。
第三方面,本申请提供了一种数据传输装置,应用于第一终端,所述装置包括:
第一发送模块,用于向第二终端发送请求报文,所述请求报文携带有压缩标识;
第一接收模块,用于接收所述第二终端基于所述请求报文反馈的响应报文,所述响应报文用于表示所述第二终端接收到所述压缩标识;
第一数据交互模块,用于根据所述压缩标识,与所述第二终端进行发布报文的交互,所述发布报文携带有压缩数据,所述压缩数据由所述第一终端或第二终端对原始数据进行压缩得到。
第四方面,本申请提供了一种数据传输装置,其特征在于,应用于第二终端,所述装置包括:
第二接收模块,用于接收第一终端发送的请求报文,所述请求报文携带有压缩标识;
第二发送模块,用于基于所述请求报文向所述第一终端反馈响应报文,所述响应报文用于表示所述第二终端接收到所述压缩标识;
第二数据交互模块,用于根据所述压缩标识,与所述第一终端进行发布报文的交互,所述发布报文携带有压缩数据,所述压缩数据由所述第一终端或第二终端对原始数据进行压缩得到。
第五方面,本申请提供了种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法的步骤。
第六方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。
第七方面,本申请提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的方法的步骤。
上述的数据传输方法、装置、电子设备和存储介质,数据传输方法包括:第一终端向第二终端发送请求报文,所述请求报文携带有压缩标识;接收所述第二终端基于所述请求报文反馈的响应报文,所述响应报文用于表示所述第二终端接收到所述压缩标识;根据所述压缩标识,与所述第二终端进行发布报文的交互,所述发布报文携带有压缩数据,所述压缩数据由所述第一终端或第二终端对原始数据进行压缩得到。由于第一终端向第二终端发送请求报文后,第一终端和第二终端后续交互的发布报文中,携带的数据都是压缩数据,而压缩后的数据的数据大小必然更低,因此,即使是网络资源占用比较严重,或者是网络带宽较低的情况下,也能及时地进行数据的传输,避免了数据传输延时过高的问题,实现了提高数据传输的实时性的技术效果。另外,第一终端向第二终端发送请求报文后,第一终端和第二终端后续交互的数据都是压缩数据,即发送一次请求报文即可实现第一终端和第二终端都进行压缩数据的交互,不需要每次压缩数据都发送一个请求报文,提高了压缩数据传输的效率和简易性。
附图说明
图1为一个实施例中的数据传输方法的应用环境示意图;
图2为一个实施例中的数据传输方法的流程示意图;
图3为一个实施例中的MQTT协议的连接请求的数据包格式示意图;
图4为一个实施例中的MQTT协议的通信流程示意图;
图5为另一个实施例中的数据传输方法的流程示意图;
图6为另一个实施例中的数据传输方法的流程示意图;
图7为一个实施例中的数据传输装置的结构示意图;
图8为一个实施例中的数据传输装置的结构示意图;
图9为一个实施例中的电子设备的内部结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
参考图1,图1为一个实施例中的数据传输方法的应用环境示意图。本申请实施例提供的数据传输方法,可以应用于如图1所示的应用环境中。其中,第一终端110和第二终端120通过特定的通信协议进行数据传输。
示例性的,第一终端110和第二终端120通过MQTT(消息队列遥测传输,MessageQueuing Telemetry Transport)协议传输。MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(IoT)。其在,通过卫星链路通信传感器、偶尔拨号的医疗设备、智能家居、及一些小型化设备中已广泛使用。在第一终端110和第二终端120通过MQTT协议传输数据的情况下,第一终端110和第二终端120发送数据的一方,将数据填充至PUBLISH(发布)报文发送,通过填充有数据的PUBLISH报文发送至第一终端110和第二终端120接收数据的一方。
需要说明的是,第一终端110和第二终端120通过MQTT协议连接的情况下,第一终端110可以看做是设备端,第二终端120可以看作是服务端。
其中,第一终端110和第二终端120可以但不限于是个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。
参考图2,图2为一个实施例中的数据传输方法的流程示意图。在一个实施例中,如图2所示,提供了一种数据传输方法,以该方法应用于图1中的第一终端为例进行说明,包括步骤210至步骤230。
步骤210、向第二终端发送请求报文,所述请求报文携带有压缩标识。
其中,请求报文指的是第一终端向第二终端发送的报文。压缩标识指的是请求报文中携带的标识,压缩标识用于指示第二终端后续与第一终端交互的发布报文都是携带压缩数据。
步骤220、接收所述第二终端基于所述请求报文反馈的响应报文,所述响应报文用于表示所述第二终端接收到所述压缩标识。
其中,响应报文是指第二终端基于请求报文生成的。在本实施例中,第一终端接收到第二终端基于请求报文反馈的响应报文,而响应报文用于表示第二终端接收到压缩标识,由此第一终端可以确保第二终端接收到压缩标识,后续进行压缩数据的交互。
步骤230、根据所述压缩标识,与所述第二终端进行发布报文的交互,所述发布报文携带有压缩数据,所述压缩数据由所述第一终端或第二终端对原始数据进行压缩得到。
在本实施例中,第一终端与第二终端进行发布报文的交互,可以是第一终端向第二终端发送发布报文,也可以是第一终端接收第二终端发送的发布报文,与实际的报文交互的结果确定,本实施例不作限定。具体的,若第一终端向第二终端发送发布报文,则压缩数据由第一终端对原始数据进行压缩得到;若第一终端接收第二终端发送的发布报文。则压缩数据由第二终端对原始数据进行压缩得到。本实施例中,发布报文携带的是压缩数据,因此,发布报文的数据大小更低。
本实施例的技术方案,由于第一终端向第二终端发送请求报文后,第一终端和第二终端后续交互的发布报文中,发布报文携带的数据都是压缩数据,而压缩后的数据的数据大小必然更低,因此,即使是网络资源占用比较严重,或者是网络带宽较低的情况下,也能及时地进行数据的传输,避免了数据传输延时过高的问题,实现了提高数据传输的实时性的技术效果。另外,第一终端向第二终端发送请求报文后,第一终端和第二终端后续交互的数据都是携带压缩数据的发布报文,即发送一次请求报文即可实现第一终端和第二终端都进行压缩数据的交互,不需要每次压缩数据都发送一个请求报文,提高了压缩数据传输的效率和简易性。
在一个可能的实施方式中,发布报文包括第一发布报文和第二发布报文中的至少一个,所述第一发布报文为所述第一终端向所述第二终端发送的发布报文,所述第二发布报文为所述第二终端向所述第一终端发送的发布报文,所述与所述第二终端进行发布报文的交互,包括:
在向所述第二终端发送所述第一发布报文的情况下,对第一原始数据进行压缩处理得到第一压缩数据,并将所述第一压缩数据填充至所述第一发布报文后发送至所述第二终端;
在接收到所述第二终端发送的所述第二发布报文的情况下,获取所述第二发布报文携带的第二压缩数据,并对所述第二压缩数据进行解压处理得到第二原始数据。
在本实施方式中,第一发布报文携带有第一压缩数据。第二发布报文携带有第二压缩数据。具体的,可以是只有第一终端向第二终端发送的第一压缩数据,也可以是第二终端向第一终端发送的第二压缩数据。
其中,第一压缩数据指的是第一终端对第一原始数据进行压缩处理后得到的数据。第一原始数据指的是需要发送的,但是未经压缩处理的数据。第二压缩数据指的是第二终端对第二原始数据进行压缩处理后得到的数据。第二原始数据指的是需要发送的,但是未经压缩处理的数据。
需要说明的是,在第一终端向所述第二终端发送第一发布报文的情况下,第一终端对第一原始数据进行压缩处理得到第一压缩数据,并将第一压缩数据填充至第一发布报文,从而将携带有第一压缩数据的第一发布报文发送至第二终端。在第一终端接收所述第二终端发送的第二发布报文的情况下,第一终端从第二发布报文中提取第二压缩数据,并对第二压缩数据进行解压处理得到第二原始数据。
可选的,第一终端和第二终端每次在发送数据或接收数据的情况下,去确认最新的请求报文,若最新的请求报文携带有压缩标识,则执行解压缩操作。
在一个可能的实施方式中,向第二终端发送请求报文,包括:
确认是否满足与所述第二终端交互压缩数据的预设条件;
在满足所述预设条件的情况下,向第二终端发送请求报文。
在本实施方式中,第一终端确认是否与所述第二终端交互压缩数据,若满足,则说明需要对交互的数据进行压缩,从而向第二终端发送请求报文,从而使得第一终端和第二终端在后续交互的数据都是经过压缩的数据,从而提高数据传输的时效性。
在一个可能的实施方式中,满足所述预设条件包括以下的至少一项:
所述第一终端响应用户设置压缩数据的设置操作;
所述第一终端通过SIM卡传输数据。
在本实施方式中,可以是通过用户将第一终端设置为压缩数据的模式,则第一终端响应用户设置压缩数据的设置操作,向第二终端发送请求报文。此外,一般的,第一终端可以通过WiFi网络或SIM卡传输数据。然而,当第一终端通过SIM卡传输数据时,由于SIM卡的使用流量是有限的,因此,在第一终端通过SIM卡传输数据的情况下,向第二终端发送请求报文,则后续交互的数据都是压缩数据,可以减少SIM卡的流量消耗。
在一个可能的实施方式中,所述第一终端与所述第二终端通过MQTT协议进行数据的交互。可选的,所述请求报文为第一终端与第二终端建立连接时发送的连接请求报文。在本实施例中,若请求报文为连接请求报文,则所述压缩标识配置在所述连接请求的连接标志字段。
需要说明的是,若请求报文为连接请求报文,则响应报文为连接响应报文。
可以理解的是,请求报文为第一终端与第二终端建立连接时发送的连接请求报文,相当于第一终端在于第二终端建立连接的过程中就将压缩标识发送至第二终端,则第一终端与第二终端建立连接完成后,交互的数据都是压缩数据。
如图3所示,图3为一个实施例中的MQTT协议的连接请求的数据包格式示意图。如图3所示,所述压缩标识配置在所述连接请求的连接标志字段(Connect Flags),一般的,由于连接标志字段在连接请求中并未有实质作用,而本实施例通过复用连接请求的连接标志字段,不需要更改请求报文的数据包格式,只需要在连接标志字段配置压缩字段即可,降低了向第二终端发送请求报文的复杂度。可选的,压缩标识可以是“0”,也可以是“1”。示例性的,压缩标识为“1”,则连接标志字段的值为0表示不压缩,连接标志字段的值为1表示压缩。
参考图4,图4为一个实施例中的MQTT协议的通信流程示意图。如图1所示,第一终端在向第二终端发送请求报文后,第一终端和第二终端发送PUBLISH报文的其中一方,都需要对数据先进行压缩,再发送PUBLISH报文,则接收PUBLISH报文的一方,需要从接收的PUBLISH报文中获取压缩数据,进而对压缩数据进行解压处理。
在一个可能的实施方式中,对第一原始数据进行压缩处理得到第一压缩数据,包括:
调用预设压缩算法;
通过所述预设压缩算法对所述第一原始数据进行压缩得到所述第一压缩数据。
其中,预设压缩算法可以是预先配置的压缩算法。可选的,预设压缩算法可以是一个,也可以是多个。在本实施方式中,在需要对待传输的第一原始数据进行压缩的情况下,通过预设压缩算法对第一原始数据进行压缩。
需要说明的是,若预设压缩算法为一个,则第一终端通过固定的预设压缩算法进行第一原始数据的压缩。可选的,预设压缩算法可以是LZMA压缩算法。LZMA压缩算法优点:高压缩比;解压缩代码较小:约5KB;解压缩时仅需少量内存(取决于字典大小);可变更字典大小(最大4GB);压缩速度:在一部2GHz的处理器上运行,约可达到1MB每秒的速度;解压缩速度:在一部2GHz的处理器上运行,约可达10-20MB每秒的速度;支持多线程、多核心(多处理器)和Pentium 4处理器的超线程(Hyper-Threading);以上特点使得LZMA算法的非常适合于嵌入式系统应用的场合。
相应的,在一个可能的实施方式中,所述对所述第二压缩数据进行解压处理得到第二原始数据,包括:
调用预设解压算法;
通过所述预设解压算法对所述第二压缩数据进行解压处理得到所述第二原始数据。
其中,预设解压算法可以是预先配置的解压算法。可选的,预设解压算法可以是一个,也可以是多个。一般的,预设解压算法的数量与预设压缩算法的数量一致。在本实施方式中,在需要对接收的第二压缩数据进行解压的情况下,通过预设解压算法对第二压缩数据进行压缩。
需要说明的是,若预设解压算法为一个,则第一终端通过固定的预设解压算法进行第二压缩数据的解压。可选的,预设解压算法可以是LZMA解压算法。
在一个可能的实施方式中,所述预设压缩算法为多个,所述请求报文还携带有压缩算法标识,所述通过所述预设压缩算法对所述第一原始数据进行压缩得到所述第一压缩数据,包括:
调用与所述压缩算法标识对应的目标压缩算法,所述目标压缩算法为多个预设压缩算法的其中一个;
通过所述目标压缩算法对所述第一原始数据进行压缩得到所述第一压缩数据。
其中,压缩算法标识用于表示用多个预设压缩算法中的哪个预设压缩算法进行数据的压缩。可选的,多个预设压缩算法包括但不限于LZMA压缩算法、LZ4压缩算法、霍夫曼压缩算法、游程编码算法中的至少两个。
需要说明的是,第一终端将携带有压缩算法标识的请求报文发送至第二终端后,第一终端和第二终端发送数据的一方,先查询最新的请求报文,从而通过压缩算法标识对应的目标压缩算法进行数据的压缩。
在一个可能的实施方式中,压缩算法标识是根据交互的数据的数据类型确定的。可选的,数据类型用于表示第一原始数据的类型。示例性的,数据类型包括但不限于视频数据和语音数据。压缩算法标识是根据第一原始数据的数据类型得到的,换句话说,压缩算法标识与第一原始数据的数据类型对应。示例性的,假设多个预设压缩算法包括LZMA压缩算法和LZ4压缩算法,则在与压缩标识所在的字段以外的其他字段中,“0”表示LZMA压缩算法,“1”表示LZ4压缩算法。
可选的,对于视频数据来说,其的数据量较大,因此可以采用压缩率较高的压缩算法进行压缩,尽可能降低视频数据的数据量大小;对于语音数据来说,其的数据量较小,因此可以通过压缩速度较高的压缩算法,尽可能快的压缩完成,从而提高语音数据的压缩速率,进一步提高数据传输的实时性。
相应的,在一个可能的实施方式中,所述预设解压算法为多个,所述请求报文还携带有解压算法标识,所述通过所述预设解压算法对所述第二压缩数据进行解压处理得到所述第二原始数据,包括:
调用与所述解压算法标识对应的目标解压算法,所述目标解压算法为多个预设解压算法的其中一个;
通过所述目标解压算法对所述第二压缩数据进行解压处理得到所述第二原始数据。
其中,解压算法标识还用于表示多个预设解压算法的哪个预设解压算法进行数据的解压。可选的,多个预设解压算法包括但不限于LZMA解压算法、LZ4解压算法、霍夫曼解压算法、游程解码算法中的至少两个。
在一个可能的实施方式中,解压算法标识是根据交互的数据的数据类型确定的,与压缩算法标识相对应。
需要说明的是,第一终端将携带有解压算法标识的请求报文发送至第二终端后,第一终端和第二终端接收数据的一方,先查询最新的请求报文,从而通过解压算法标识对应的目标解压算法进行数据的解压。
在本实施例中,第一终端在向第二终端发送请求报文的情况下,将压缩算法标识和解压算法标识一同发送至第二终端。则第一终端与第二终端交互数据的过程中,第一终端和第二终端发送数据的一方,通过压缩算法标识对应的目标压缩算法对传输的数据进行压缩。而第一终端和第二终端接收数据的一方,通过解压算法标识对应的目标解压算法对压缩数据进行解压,从而还原数据。可选的,通过第一终端识别第一原始数据的数据类型,并获取数据类型对应的解压算法标识和压缩算法标识,从而将解压算法标识和压缩算法标识填充至请求报文,以将携带有解压算法标识和压缩算法标识的请求报文发送至第二终端。
可以理解的是,本实施例通过第一终端在向第二终端发送请求报文的情况下,将压缩算法标识和解压算法标识一同发送至第二终端,而压缩算法标识和解压算法标识是根据交互的数据的数据类型确定的,因此可以根据第一原始数据的数据类型采用不同的算法进行解压缩处理。
一般的,压缩算法和解压算法都是相对应的,因此解压算法标识和压缩算法标识为一个算法标识,通过一个算法标识即可确定出对应的目标压缩算法或目标解压算法。
可以理解的是,通过将解压算法标识和压缩算法标识作为一个算法标识,可以在改变请求报文的数据包格式时,可以减少改变数据包格式的复杂度,以及降低获取目标压缩算法或目标解压算法的复杂度。
参考图5,图5为另一个实施例中的数据传输方法的流程示意图。在一个实施例中,如图5所示,提供了一种数据传输方法,以该方法应用于图1中的第二终端为例进行说明,包括步骤510至步骤530。
步骤510、接收第一终端发送的请求报文,所述请求报文携带有压缩标识。
步骤520、基于所述请求报文向所述第一终端反馈响应报文,所述反馈响应报文用于表示所述第二终端接收到所述压缩标识。
步骤530、根据所述压缩标识,与所述第一终端进行发布报文的交互,所述发布报文携带有压缩数据,所述压缩数据由所述第一终端或第二终端对原始数据进行压缩得到。
本实施例的技术方案,由于第一终端向第二终端发送请求报文后,第一终端和第二终端后续交互的发布报文中,发布报文携带的数据都是压缩数据,而压缩后的数据的数据大小必然更低,因此,即使是网络资源占用比较严重,或者是网络带宽较低的情况下,也能及时地进行数据的传输,避免了数据传输延时过高的问题,实现了提高数据传输的实时性的技术效果。另外,第一终端向第二终端发送请求报文后,第一终端和第二终端后续交互的数据都是携带压缩数据的发布报文,即发送一次请求报文即可实现第一终端和第二终端都进行压缩数据的交互,不需要每次压缩数据都发送一个请求报文,提高了压缩数据传输的效率和简易性。
在一个可能的实施方式中,发布报文包括第一发布报文和第二发布报文中的至少一个,所述第一发布报文为所述第一终端向所述第二终端发送的发布报文,所述第二发布报文为所述第二终端向所述第一终端发送的发布报文,所述与所述第二终端进行发布报文的交互,包括:
在接收到第一终端发送的所述第一发布报文的情况下,获取所述第一发布报文携带的第一压缩数据,并对所述第一压缩数据进行解压处理得到第一原始数据;
在向第一终端发送第二发布报文的情况下,对第二原始数据进行压缩处理得到第二压缩数据,并将所述第二压缩数据填充至所述第二发布报文后发送至所述第一终端;
在一个可能的实施方式中,第二终端对待传输的第二原始数据进行压缩得到第二压缩数据的步骤包括:
第二终端调用预设压缩算法;
通过所述预设压缩算法对第二原始数据进行压缩得到所述第二压缩数据。
在一个可能的实施方式中,预设压缩算法为多个,通过所述预设压缩算法对所述第二原始数据进行压缩得到所述第二压缩数据,包括:
第二终端调用与压缩算法标识对应的目标压缩算法,所述目标压缩算法为多个预设压缩算法的其中一个;
通过所述目标压缩算法对所述第二原始数据进行压缩得到所述第二压缩数据。
在一个可能的实施方式中,第二终端对第一压缩数据进行解压处理得到第一原始数据,包括:
第二终端调用预设解压算法;
通过预设解压算法对第一压缩数据进行解压处理得到第一原始数据。
在一个可能的实施方式中,预设解压算法为多个,通过预设解压算法对第一压缩数据进行解压处理得到第一原始数据,包括:
第二终端调用与所述解压算法标识对应的目标解压算法,所述目标解压算法为多个预设解压算法的其中一个;
通过目标解压算法对所述第一压缩数据进行解压处理得到所述第一原始数据。
参考图6,图6为另一个实施例中的数据传输方法的流程示意图。在一个实施例中,如图6所示,提供了一种数据传输方法,以该方法应用于图1中的第一终端和第二终端为例进行说明。本实施例的数据传输方法包括步骤610至步骤650。
步骤610、第一终端向第二终端发送请求报文,所述请求报文携带有压缩标识。
在本实施例中,可选的,第一终端可以在与第二终端建立连接的过程中,就将压缩标识发送至第二终端,则第一终端和第二终端在连接建立完成后,都进行压缩数据的交互。本实施例中,第一终端可以将连接请求报文作为请求报文发送至第二终端。
步骤620、第二终端接收第一终端发送的请求报文。
步骤630、第二终端响应请求报文,生成响应报文,向第一终端反馈响应报文。
步骤640、第一终端接收第二终端反馈的响应报文。
在本实施例中,第一终端接收到第二终端反馈的响应报文后,则第一终端可以认为第二终端已接收到该压缩标识,后续可以进行压缩数据的交互。
步骤650、第一终端和第二终端根据压缩标识进行发布报文的交互,发布报文携带有压缩数据。
本实施例的技术方案,由于第一终端向第二终端发送请求报文后,第一终端和第二终端后续交互的发布报文中,发布报文携带的数据都是压缩数据,而压缩后的数据的数据大小必然更低,因此,即使是网络资源占用比较严重,或者是网络带宽较低的情况下,也能及时地进行数据的传输,避免了数据传输延时过高的问题,实现了提高数据传输的实时性的技术效果。另外,第一终端向第二终端发送请求报文后,第一终端和第二终端后续交互的数据都是携带压缩数据的发布报文,即发送一次请求报文即可实现第一终端和第二终端都进行压缩数据的交互,不需要每次压缩数据都发送一个请求报文,提高了压缩数据传输的效率和简易性。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的数据传输方法的数据传输装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多数据传输装置实施例中的具体限定可以参见上文中对于数据传输方法的限定,在此不再赘述。
参考图7,图7为一个实施例中的数据传输装置的结构示意图。在一个实施例中,如图7所示,提供了一种数据传输装置,以该装置应用于图1中的第一终端为例进行说明,包括第一发送模块710、第一接收模块720和第一数据交互模块730,其中:
第一发送模块710,用于向第二终端发送请求报文,所述请求报文携带有压缩标识;第一接收模块720,用于接收所述第二终端基于所述请求报文反馈的响应报文,所述响应报文用于表示所述第二终端接收到所述压缩标识;第一数据交互模块730,用于根据所述压缩标识,与所述第二终端进行发布报文的交互,所述发布报文携带有压缩数据,所述压缩数据由所述第一终端或第二终端对原始数据进行压缩得到。
在其中一个实施例中,第一发送模块710具体用于确认是否满足与所述第二终端交互压缩数据的预设条件;在满足所述预设条件的情况下,向第二终端发送请求报文。
在其中一个实施例中,满足所述预设条件包括以下的至少一项:
所述第一终端响应用户设置压缩数据的设置操作;所述第一终端通过SIM卡传输数据。
在其中一个实施例中,所述压缩标识配置在所述连接请求报文的连接标志字段。
在其中一个实施例中,所述发布报文包括第一发布报文和第二发布报文中的至少一个,所述第一发布报文为所述第一终端向所述第二终端发送的发布报文,所述第二发布报文为所述第二终端向所述第一终端发送的发布报文,第一数据交互模块730具体用于:
在向所述第二终端发送第一发布报文的情况下,对第一原始数据进行压缩处理得到第一压缩数据,并将所述第一压缩数据填充至所述第一发布报文后发送至所述第二终端;在接收到所述第二终端发送的第二发布报文的情况下,获取所述第二发布报文携带的第二压缩数据,并对所述第二压缩数据进行解压处理得到第二原始数据。
在其中一个实施例中,第一数据交互模块730,包括:
第一压缩算法调用单元,用于调用预设压缩算法;
第一压缩单元,用于通过所述预设压缩算法对所述第一原始数据进行压缩得到所述第一压缩数据。
在其中一个实施例中,所述预设压缩算法为多个,所述请求报文还携带有压缩算法标识,所述压缩算法标识是根据交互的数据的数据类型确定的,第一压缩单元具体用于调用与所述压缩算法标识对应的目标压缩算法,所述目标压缩算法为多个预设压缩算法的其中一个;通过所述目标压缩算法对所述第一原始数据进行压缩得到所述第一压缩数据。
在其中一个实施例中,第一数据交互模块730,包括:
第一解压算法调用单元,用于调用预设解压算法;
第一解压单元,用于通过所述预设解压算法对所述第二压缩数据进行解压处理得到所述第二原始数据。
在其中一个实施例中,所述预设解压算法为多个,所述请求报文还携带有解压标识,第一解压单元具体用于调用与所述解压算法标识对应的目标解压算法,所述目标解压算法为多个预设解压算法的其中一个;通过所述目标解压算法对所述第二压缩数据进行解压处理得到所述第二原始数据。
参考图8,图8为一个实施例中的数据传输装置的结构示意图。在一个实施例中,如图8所示,提供了一种数据传输装置,以该装置应用于图1中的第二终端为例进行说明,包括第二接收模块810、第二发送模块820和第二数据交互模块830,其中:
第二接收模块810,用于接收第一终端发送的请求报文,所述请求报文携带有压缩标识;第二发送模块820,用于基于所述请求报文向所述第一终端反馈响应报文,所述反馈响应报文用于表示所述第二终端接收到所述压缩标识;第二数据交互模块830,用于根据所述压缩标识,与所述第一终端进行发布报文的交互,所述发布报文携带有压缩数据,所述压缩数据由所述第一终端或第二终端对原始数据进行压缩得到。
在一个实施例中,第二数据交互模块830包括:第二压缩算法调用单元,用于调用预设压缩算法;第二压缩单元,用于通过所述预设压缩算法对第二原始数据进行压缩得到所述第二压缩数据。
在一个实施例中,预设压缩算法为多个,第二压缩算法单元具体用于调用与压缩算法标识对应的目标压缩算法,所述目标压缩算法为多个预设压缩算法的其中一个;通过所述目标压缩算法对所述第二原始数据进行压缩得到所述第二压缩数据。
在一个实施例中,第二数据交互模块830包括:第二解压算法调用单元,用于调用预设解压算法;第二解压单元,用于通过预设解压算法对第一压缩数据进行解压处理得到第一原始数据。
在一个实施例中,预设解压算法为多个,第二解压单元具体用于调用与所述解压算法标识对应的目标解压算法,所述目标解压算法为多个预设解压算法的其中一个;通过目标解压算法对所述第一压缩数据进行解压处理得到所述第一原始数据。
上述的数据传输装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种电子设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
参考图9,图9为一个实施例中的电子设备的内部结构示意图。如图9所示,该电子设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该电子设备的处理器用于提供计算和控制能力。该电子设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该电子设备的通信接口用于与外部的电子设备进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种数据传输方法。该电子设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该电子设备的输入装置可以是显示屏上覆盖的触摸层,也可以是电子设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。可选的,本实施例中的第一终端和第二终端均为电子设备。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本领域技术人员可以理解,所述电子设备可以是无线通信模组,或是包含了无线通信模组的智能设备(如智能汽车、智能柜、智能仪表等),或是手机、电脑、平板等通信设备。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,还提供了一种数据传输系统,包括第一终端和第二终端。其中,第一终端和第二终端执行的步骤可以参考上述任一实施例的描述,本实施例不作赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的压缩数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (10)

1.一种数据传输方法,其特征在于,应用于第一终端,所述方法包括:
向第二终端发送请求报文,所述请求报文携带有压缩标识;
接收所述第二终端基于所述请求报文反馈的响应报文,所述响应报文用于表示所述第二终端接收到所述压缩标识;
根据所述压缩标识,与所述第二终端进行发布报文的交互,所述发布报文携带有压缩数据,所述压缩数据由所述第一终端或第二终端对原始数据进行压缩得到。
2.根据权利要求1所述的方法,其特征在于,所述与所述第二终端进行发布报文的交互,具体包括:
在向所述第二终端发送第一发布报文的情况下,对第一原始数据进行压缩处理得到第一压缩数据,并将所述第一压缩数据填充至所述第一发布报文后发送至所述第二终端;
在接收到所述第二终端发送的第二发布报文的情况下,获取所述第二发布报文携带的第二压缩数据,并对所述第二压缩数据进行解压处理得到第二原始数据。
3.根据权利要求2所述的方法,其特征在于,所述对第一原始数据进行压缩处理得到第一压缩数据,包括:
调用预设压缩算法;
通过所述预设压缩算法对所述第一原始数据进行压缩得到所述第一压缩数据;
所述对所述第二压缩数据进行解压处理得到第二原始数据,包括:
调用预设解压算法;
通过所述预设解压算法对所述第二压缩数据进行解压处理得到所述第二原始数据。
4.根据权利要求3所述的方法,其特征在于,所述预设压缩算法为多个,所述请求报文还携带有压缩算法标识,所述通过所述预设压缩算法对所述第一原始数据进行压缩得到所述第一压缩数据,包括:
调用与所述压缩算法标识对应的目标压缩算法;
通过所述目标压缩算法对所述第一原始数据进行压缩得到所述第一压缩数据;
所述预设解压算法为多个,所述请求报文还携带有解压算法标识,所述通过所述预设解压算法对所述第二压缩数据进行解压处理得到所述第二原始数据,包括:
调用与所述解压算法标识对应的目标解压算法;
通过所述目标解压算法对所述第二压缩数据进行解压处理得到所述第二原始数据。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述请求报文为所述第一终端与所述第二终端建立连接时发送的连接请求报文,或所述第一终端与所述第二终端建立连接完成后发送的其他报文。
6.根据权利要求5所述的方法,其特征在于,所述压缩标识配置在所述连接请求报文的连接标志字段。
7.一种数据传输方法,其特征在于,应用于第二终端,所述方法包括:
接收第一终端发送的请求报文,所述请求报文携带有压缩标识;
基于所述请求报文向所述第一终端反馈响应报文,所述响应报文用于表示所述第二终端接收到所述压缩标识;
根据所述压缩标识,与所述第一终端进行发布报文的交互,所述发布报文携带有压缩数据,所述压缩数据由所述第一终端或第二终端对原始数据进行压缩得到。
8.一种数据传输装置,其特征在于,应用于第一终端,所述装置包括:
第一发送模块,用于向第二终端发送请求报文,所述请求报文携带有压缩标识;
第一接收模块,用于接收所述第二终端基于所述请求报文反馈的响应报文,所述响应报文用于表示所述第二终端接收到所述压缩标识;
第一数据交互模块,用于根据所述压缩标识,与所述第二终端进行发布报文的交互,所述发布报文携带有压缩数据,所述压缩数据由所述第一终端或第二终端对原始数据进行压缩得到。
9.一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN202111641236.XA 2021-12-29 2021-12-29 数据传输方法、装置、电子设备和存储介质 Pending CN114500668A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202111641236.XA CN114500668A (zh) 2021-12-29 2021-12-29 数据传输方法、装置、电子设备和存储介质
PCT/CN2022/103672 WO2023123991A1 (zh) 2021-12-29 2022-07-04 数据传输方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111641236.XA CN114500668A (zh) 2021-12-29 2021-12-29 数据传输方法、装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
CN114500668A true CN114500668A (zh) 2022-05-13

Family

ID=81508245

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111641236.XA Pending CN114500668A (zh) 2021-12-29 2021-12-29 数据传输方法、装置、电子设备和存储介质

Country Status (2)

Country Link
CN (1) CN114500668A (zh)
WO (1) WO2023123991A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023123991A1 (zh) * 2021-12-29 2023-07-06 深圳市广和通无线股份有限公司 数据传输方法、装置、电子设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102333345A (zh) * 2011-09-21 2012-01-25 杭州华三通信技术有限公司 基于wlan网络的数据压缩传输方法、sta及ap
CN110430168A (zh) * 2019-07-05 2019-11-08 视联动力信息技术股份有限公司 一种数据压缩的方法和装置
CN112887429A (zh) * 2021-03-08 2021-06-01 深圳市车宝信息科技有限公司 一种数据传输的方法、装置、电子设备及存储介质
US20210360089A1 (en) * 2019-01-31 2021-11-18 Huawei Technologies Co., Ltd. Data compression method and base station

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102118791B (zh) * 2009-12-31 2014-01-08 华为技术有限公司 一种传输数据包的方法及装置
CN111385268B (zh) * 2018-12-29 2023-02-24 大唐移动通信设备有限公司 一种数据包头压缩确认方法及通信设备
CN114500668A (zh) * 2021-12-29 2022-05-13 深圳市广和通无线股份有限公司 数据传输方法、装置、电子设备和存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102333345A (zh) * 2011-09-21 2012-01-25 杭州华三通信技术有限公司 基于wlan网络的数据压缩传输方法、sta及ap
US20210360089A1 (en) * 2019-01-31 2021-11-18 Huawei Technologies Co., Ltd. Data compression method and base station
CN110430168A (zh) * 2019-07-05 2019-11-08 视联动力信息技术股份有限公司 一种数据压缩的方法和装置
CN112887429A (zh) * 2021-03-08 2021-06-01 深圳市车宝信息科技有限公司 一种数据传输的方法、装置、电子设备及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023123991A1 (zh) * 2021-12-29 2023-07-06 深圳市广和通无线股份有限公司 数据传输方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
WO2023123991A1 (zh) 2023-07-06

Similar Documents

Publication Publication Date Title
CN111240858B (zh) 事件调度方法及组件
CN110781150A (zh) 数据传输方法、装置和电子设备
CN111338780B (zh) 并发文件的传输方法及装置
CN105487640A (zh) 一种安卓手表预加载和缓存图片的方法
CN114039973A (zh) 文件的传输方法、设备以及存储介质
CN111541555A (zh) 群聊优化方法及相关产品
CN114500668A (zh) 数据传输方法、装置、电子设备和存储介质
CN103246557A (zh) 一种跨进程调用应用信息的方法及装置
CN111427693B (zh) 数据处理方法、系统、介质、服务系统及旁路卸载系统
CN113055483A (zh) 消息中间件数据处理方法、装置及系统
CN112689012A (zh) 跨网络的代理通讯方法及装置
CN113704206B (zh) 一种元数据的处理方法、装置、电子设备及存储介质
CN105610979B (zh) 一种基于虚拟化技术的网络资源传输系统及其方法
CN114138895A (zh) 多数据源的数据同步方法、装置、计算机设备和存储介质
CN113542335A (zh) 一种信息共享方法、装置、电子设备及存储介质
CN113722115A (zh) 调用接口的方法、装置、设备和计算机可读介质
CN112346661A (zh) 数据处理方法、装置和电子设备
CN105516215A (zh) 异步调用方法和装置
CN117749817A (zh) 数据同步方法、装置、计算机设备和存储介质
CN116760791B (zh) 图像传输方法、装置、设备和存储介质
US11770434B1 (en) Compression on-demand in a stream data platform
CN112188213B (zh) 编码方法、装置、计算机设备和存储介质
CN111431925B (zh) 报文数据处理方法及装置
CN116916086A (zh) 视频通信方法、系统、计算机设备和存储介质
CN116260879A (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