CN109756536B - 一种数据传输的方法、装置及系统 - Google Patents
一种数据传输的方法、装置及系统 Download PDFInfo
- Publication number
- CN109756536B CN109756536B CN201711070982.1A CN201711070982A CN109756536B CN 109756536 B CN109756536 B CN 109756536B CN 201711070982 A CN201711070982 A CN 201711070982A CN 109756536 B CN109756536 B CN 109756536B
- Authority
- CN
- China
- Prior art keywords
- data block
- data
- target
- compression ratio
- target data
- 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.)
- Active
Links
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种数据传输的方法,将待传输数据分割为预设数据块大小的数据块;依次将由每块数据块压缩封装得到的目标数据块报文发送至接收端。由此可见,可以在数据传输之前对数据进行分块,逐块对数据进行压缩封装处理,然后逐块发送到接收方,有效地降低了一次性的计算量以及传输量,避免消耗大量计算资源,可以有效提高传输的速度。同时可以对每个数据块都进行判断,如果当前数据块不需要进行压缩,则不浪费计算资源对其压缩,进一步提升数据压缩的速率,从而提高了数据传输的速率。本发明实施例还提供一种数据传输的装置及系统,同样可以实现上述技术效果。
Description
技术领域
本发明涉及数据传输技术领域,更具体地说,涉及一种数据传输的方法及装置。
背景技术
列车在运行中会实时记录运行状态的数据,而这些数据最终会生成大量的各种类型的文件,而这些文件需要从列车的车载设备中传输到地面服务器的应用中。随着数据量的日趋增多,文件的传输量也随之增大,因此在大量文件的条件下需要一种快速传输的方法。
目前,为了提高传输速度,一般是借助数据压缩技术减少数据的传输量来实现。一种方案是先压缩整个文件,再传输压缩后的文件,使用时需解压文件再使用。当文件较大时,需要大量的计算资源,对车载嵌入式设备的要求较高。另一种方案是在文件传输协议的报文中,对待发送的报文数据先做压缩再传输,这样会使每个报文传输的数据变少,但发送的报文数量并未减少,对传输时间上的优化程度有限。
因此,如何有效提高数据传输的速度,是本领域技术人员需要解决的问题。
发明内容
本发明的目的在于提供一种数据传输的方法及装置,以有效提高数据传输的速度。
为实现上述目的,本发明实施例提供了如下技术方案:
一种数据传输的方法,包括:
将待传输数据分割为预设数据块大小的数据块;
依次将由每块数据块压缩封装得到的目标数据块报文发送至接收端。
其中,所述依次将由每块数据块压缩封装得到的目标数据块报文发送至接收端,包括:
依次获取数据块,判断当前数据块是否适合被压缩;
若是,则将当前数据块进行压缩得到目标数据块;
若否,则将当前数据块确定为目标数据块;
将所述目标数据块封装为目标数据块报文发送至接收端。
其中,所述判断当前数据块是否适合被压缩,包括:
利用当前获取的数据块的前一块数据块的压缩比以及所述当前获取的数据块的预设字节的数据的压缩比计算所述当前获取的数据块的压缩比;所述压缩比为压缩前的数据字节与压缩后的数据字节之比;
判断所述当前获取的数据块的压缩比是否大于等于预设阈值。
其中,所述将待传输数据分割为预设数据块大小的数据块,包括:
根据发送请求依次将待传输数据中的预设数据块大小的数据读至发送缓存区生成数据块。
一种用于数据传输的发送设备,包括:
第一存储器,用于存储计算机程序;
第一处理器,用于执行所述计算机程序时实现如权利要求1至4任一项所述一种数据传输的方法的步骤。
一种数据传输的装置,包括:
分割模块,用于将待传输数据分割为预设数据块大小的数据块;
发送模块,用于依次将由每块数据块压缩封装得到的目标数据块报文发送至接收端。
一种数据传输的方法,包括:
接收由发送端发送的目标数据块报文,所述目标数据块报文是由发送端将待发送数据分割为数据块并依次发送的由每块数据块压缩封装得到的目标数据块报文;
获取所述目标数据块报文中的目标数据块;
对所述目标数据块进行解压并保存至目标文件。
其中,对所述目标数据块进行解压并保存至目标文件,包括:
判断所述目标数据块是否被压缩;
若是,则继续执行所述对所述目标数据块进行解压并保存至目标文件的步骤;
若否,则直接将所述目标数据块保存至所述目标文件。
一种用于数据传输的接收设备,包括:
第二存储器,用于存储计算机程序;
第二处理器,用于执行所述计算机程序时实现如权利要求7或8所述一种数据传输的方法的步骤。
一种数据传输的装置,包括:
接收模块,用于接收由发送端发送的目标数据块报文,所述目标数据块报文是由发送端将待发送数据分割为数据块并依次发送的由每块数据块压缩封装得到的目标数据块报文;
获取模块,用于获取所述目标数据块报文中的目标数据块;
解压模块,用于对所述目标数据块进行解压并保存至目标文件。
一种数据传输的系统,包括上述的发送设备和上述的接收设备。
通过以上方案可知,本发明实施例提供的一种数据传输的方法,将待传输数据分割为预设数据块大小的数据块;依次将由每块数据块压缩封装得到的目标数据块报文发送至接收端。
由此可见,本发明实施例提供的一种数据传输的方法,可以在数据传输之前对数据进行分块,逐块对数据进行压缩封装处理,然后逐块发送到接收方,有效地降低了一次性的计算量以及传输量,避免消耗大量计算资源,可以有效提高传输的速度。同时可以在压缩之前判断每块数据是否需要进行压缩,如果需要则再对数据块进行压缩,如果不需要则不进行压缩,对每个数据块都进行判断,如果当前数据块不需要进行压缩,则不浪费计算资源对其压缩,进一步提升数据压缩的速率,从而提高了数据传输的速率。本发明实施例还提供一种数据传输的装置及系统,同样可以实现上述技术效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例公开的一种数据传输的方法流程图;
图2为本发明实施例公开的一种具体的数据传输的方法流程图;
图3为本发明实施例公开的一种数据传输的装置结构示意图;
图4为本发明实施例公开的一种数据传输的方法流程图;
图5为本发明实施例公开的一种数据传输的装置结构示意图;
图6为本发明实施例公开的一种数据传输的系统结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种数据传输的方法及装置,以有效提高数据传输的速度。
参见图1,本发明实施例提供的一种数据传输的方法,具体包括:
S101,将待传输数据分割为预设数据块大小的数据块;
在本方案中,为了提高数据传输的速度,采用数据压缩来减少传输的数据量,同时对待传输数据进行分块再压缩。
具体地,首先选定适当的数据块大小,从待传输数据的起始处,依次把待发送数据分割成若干的数据块。待传输数据可以为文件,也可以是其他非文件形式的连续数据。
需要说明的是,数据块大小的选择,一般为64K或32K字节,如果数据块过大,会导致数据压缩时耗时较多,导致在发送一个新的数据块时会出现报文流明显的时延,若数据块太小,则可能会使数据压缩后会太少而填不满一个发送报文,导致发送报文的有效载荷利用率不高,而使报文总数变多,传输时间变长。
S102,依次将由每块数据块压缩封装得到的目标数据块报文发送至接收端。
具体地,从第一个数据块开始,依次地对数据块进行压缩,依据当前传输使用的网络传输协议将压缩得到的目标数据块以适当的有效负荷封装为网络报文,即目标数据块报文,将目标数块报文发送至接收方,然后进行下一块数据块的压缩、封装、发送,直到发送完所有的待发送数据块。
在本方案中,压缩操作可以利用无损数据压缩算法实现,具体采用哪种无损压缩算法这里不做限定。
需要说明的是,在目标数据块报文中添加当前的数据块封装为网络报文时的分包信息,以便接收方利用分包信息合并数据块。受单报文可运载的数据字节数限制,待发送的目标数据块需要分成一个到多个报文发送,由于目标数据块可能做了压缩,接收端需要接收到此目标数据块的所有报文后才能解压,故在发送报文中添加本次发送的目标数据块的相关信息,一种实现为,报文中添加目标数据块的分包信息,包括目标数据块的编号、目标数据块是否压缩、压缩算法、目标数据块压缩前字节数、目标数据块压缩后字节数、目标数据块的分包总数、本报文在此目标数据块内的发包序号,本报文数据在此目标数据块内的相对位置。在接收端,根据报文中的分包信息,收集齐同一目标数据块编号的数据,不需解压的直接存入接收端文件,需要解压的先解压,再存入接收端文件,以使接收端收到的已接收数据与发送端发送的待发送数据内容一致。
通过以上方案可知,本发明实施例提供的一种数据传输的方法,可以在数据传输之前对数据进行分块,逐块对数据进行压缩封装处理,然后逐块发送到接收方,有效地降低了一次性的计算量以及传输量,避免消耗大量计算资源,可以有效提高传输的速度。同时可以在压缩之前判断每块数据是否需要进行压缩,如果需要则再对数据块进行压缩,如果不需要则不进行压缩,对每个数据块都进行判断,如果当前数据块不需要进行压缩,则不浪费计算资源对其压缩,进一步提升数据压缩的速率,从而提高了数据传输的速率。
一些数据压缩前后的大小可能相差不多,反而浪费了压缩的时间和资源,为此,本发明实施例提供了一种具体的数据传输的方法,以避免浪费压缩时间和资源。参考图2,本发明实施例提供的一种具体的数据传输的方法,具体包括:
S201,依次获取数据块,判断当前数据块是否适合被压缩;
具体地,从第一个数据块开始,依次执行S201至S204,首先获取到一块数据块后先判断其是否适合被压缩,也就是利用这块数据块压缩前后的数据大小变化来判断其是否有必要进行压缩。
S202,若是,则将当前数据块进行压缩得到目标数据块;
具体的,如果这块数据块有必要进行压缩,则对其进行压缩处理,得到目标数据块。
S203,若否,则将当前数据块确定为目标数据块;
如果判断得知此块数据块不适合进行压缩也就是没有必要进行压缩,则直接确定当前的数据块为目标数据块,进入下一步。
S204,将所述目标数据块封装为目标数据块报文发送至接收端。
具体地,将目标数据块利用当前发送端使用的网络传输协议以适当的有效负荷封装成网络报文,即目标数据块报文,然后将目标数据块报文发送至接收端。
需要说明的是,在目标数据报文中添加分包信息以外,还可以将目标数据块是否为压缩过的数据块以标识信息的形式添加到目标数据报文,让接收端通过报文中的标识信息直接得知此目标数据块是否被压缩过,也就是此目标数据块是否需要解压。
本发明实施例提供一种具体的数据传输的方法,区别于上述实施例本发明实施例对上述实施例中所述的判断当前数据块是否适合被压缩做了进一步的限定和说明,其他步骤内容与上述实施例大致相同,具体内容可以参考上述实施例。具体地,所述的判断当前数据块是否适合被压缩,包括:
利用当前获取的数据块的前一块数据块的压缩比以及所述当前获取的数据块的预设字节的数据的压缩比计算所述当前获取的数据块的压缩比;所述压缩比为压缩前的数据字节与压缩后的数据字节之比;
判断所述当前获取的数据块的压缩比是否大于等于预设阈值
具体地,判断当前数据块是否适合压缩,可以通过估计当前数据块的压缩比,用得到的压缩比与预设的阈值进行比较,若达到或超过预设阈值,则适合压缩处理,否则不适合压缩处理。
具体地,压缩比的计算方法如下:
估计当前数据块的压缩比R'(n),可以采用前一个数据块的压缩比R(n-1)与当前数据块的采样数据压缩比Rs(n)两种信息组合计算的方式得出,计算式为R'(n)=α·R(n-1)+(1-α)·Rs(n)。
其中,α为前一数据块压缩比的权重,其范围为:0≤α<1;此值可根据应用情景设置,描述的是前一数据块的压缩比的参考权重,数据一般来讲具有连续性,前一个数据块的压缩比是具有一定参考价值的。例如,取为0.4。
R(n-1)为前一数据块的压缩比,即前一块数据的压缩前的数据字节数与压缩后的数据字节数之比;
当前发送数据块的采样数据压缩比Rs(n),是通过分别计算当前数据块首部连续m字节的压缩比,中间连续m字节的压缩比,尾部连续m字节的压缩比,再取均值得出,这个m的大小可根据具体实现设置,如2K字节。计算式为:
需要说明的是,若当前数据块为第一个数据块,即没有前一个数据块,或者前一数据块未做压缩时,应直接使用数据块采样数据的压缩比作为本数据块的压缩比估计值。
本发明实施例提供一种具体的数据传输的方法,区别于上述实施例本发明实施例对上述实施例中S101做了进一步的限定和说明,其他步骤内容与上述实施例大致相同,具体内容可以参考上述实施例。具体地,S101包括:
根据发送请求依次将待传输数据中的预设数据块大小的数据读至发送缓存区生成数据块。
具体地,将待传输数据分割为数据块的操作,可以通过一个发送缓冲区来实现逐个数据块的生成,根据发送待传输数据的请求,将待发送的数据按预设数据块大小依次读入发送缓冲区,即分割了一数据块出来。这样占用的存储资源较少。
下面对本发明实施例提供的一种用于数据传输的发送设备进行介绍,下文描述的发送设备与上文描述的一种数据传输的方法可以相互参照。具体地,一种用于数据传输的发送设备包括:
第一存储器,用于存储计算机程序;
第一处理器,用于执行所述计算机程序时实现如上述实施例所述一种数据传输的方法的步骤。
下面对本发明实施例提供的一种数据传输的装置进行介绍,下文描述的一种数据传输的装置与上文描述的一种数据传输的方法可以相互参照。具体地,参考图3,一种数据传输的装置包括:
分割模块301,用于将待传输数据分割为预设数据块大小的数据块;
在本方案中,为了提高数据传输的速度,采用数据压缩来减少传输的数据量,同时对数据进行分块再压缩。
具体地,首先选定适当的数据块大小,分割模块301从数据的起始处,依次把数据分割成若干的数据块。
需要说明的是,数据块大小的选择,一般为64K或32K字节,如果数据块过大,会导致数据压缩时耗时较多,导致在发送一个新的数据块时会出现报文流明显的时延,若数据块太小,则可能会使数据压缩后会太少而填不满一个发送报文,导致发送报文的有效载荷利用率不高,而使报文总数变多,传输时间变长。
发送模块302,用于依次将由每块数据块压缩封装得到的目标数据块报文发送至接收端。
具体地,发送模块302从第一个数据块开始,依次地对数据块进行压缩,依据当前传输使用的网络传输协议将压缩得到的目标数据块以适当的有效负荷封装为网络报文,即目标数据块报文,将目标数块报文发送至接收方,然后进行下一块数据块的压缩、封装、发送,直到发送完所有的待发送数据块。
需要说明的是,在目标数据块报文中添加当前的数据块封装为网络报文时的分包信息,以便接收方利用分包信息合并数据块。
通过以上方案可知,本发明实施例提供的一种数据传输的方法,可以利用分割模块301在数据传输之前对数据进行分块,发送模块302逐块对数据进行压缩封装处理,然后逐块发送到接收方,有效地降低了一次性的计算量以及传输量,避免消耗大量计算资源,可以有效提高传输的速度。同时可以在压缩之前判断每块数据是否需要进行压缩,如果需要则再对数据块进行压缩,如果不需要则不进行压缩,对每个数据块都进行判断,如果当前数据块不需要进行压缩,则不浪费计算资源对其压缩,进一步提升数据压缩的速率,从而提高了数据传输的速率。
参考图4,本发明实施例提供一种数据传输的方法,具体包括:
S401,接收由发送端发送的目标数据块报文,所述目标数据块报文是由发送端将待发送数据分割为数据块并依次发送的由每块数据块压缩封装得到的目标数据块报文;
具体地,接收端接收发送发来的目标数据报文,此目标数据报文是发送端将待发送数据分割成数据块,并对数据块依次压缩、封装处理后的目标数据报文。
S402,获取所述目标数据块报文中的目标数据块;
具体地,在数据报文中获取目标数据块,需要说明的是,可以利用目标数据报文中携带的分包信息把各分包数据合并为一个目标数据块。
需要说明的是,在目标数据块报文中添加当前的数据块封装为网络报文时的分包信息,以便接收方利用分包信息合并数据块。受单报文可运载的数据字节数限制,待发送的目标数据块需要分成一个到多个报文发送,由于目标数据块可能做了压缩,接收端需要接收到此目标数据块的所有报文后才能解压,故在发送报文中添加本次发送的目标数据块的相关信息,一种实现为,报文中添加目标数据块的分包信息,包括目标数据块的编号、目标数据块是否压缩、压缩算法、目标数据块压缩前字节数、目标数据块压缩后字节数、目标数据块的分包总数、本报文在此目标数据块内的发包序号,本报文数据在此目标数据块内的相对位置。在接收端,根据报文中的分包信息,收集齐同一目标数据块编号的数据,不需解压的直接存入接收端文件,需要解压的先解压,再存入接收端文件,以使接收端收到的已接收数据与发送端发送的待发送数据内容一致。
S403,对所述目标数据块进行解压并保存至目标文件。
具体地,对目标数据块进行解压把解压得到的数据存入目标文件中。
本发明实施例提供一种具体的数据传输的方法,区别于上一实施例,本发明实施例对上一实施例中S403做了进一步的限定和说明,其他步骤内容与上一实施例大致相同,具体可以参考上一实施例,此处不再赘述。具体地,S403包括:
判断所述目标数据块是否被压缩;
若是,则继续执行所述对所述目标数据块进行解压并保存至目标文件的步骤;
若否,则直接将所述目标数据块保存至所述目标文件。
需要说明的是,发送端发送的目标数据报文分为两种情况,第一种是没有进行是否适合压缩的判断,将目标数据块全部压缩,然后封装成报文发送到接收端,这种情况下,接收端只需对接收到的所有目标数据块进行解压;第二种情况是,发送端在压缩数据块之前,对数据块进行了是否适合压缩的判断,这种情况下接收端需要在得到目标数据块后对数据块进行判断,判断其是否进行了压缩,如果压缩了则解压后得到的数据块存入目标文件,如果没有压缩,则直接存入目标文件。
对于判断压缩的方法,如果发送端将是否压缩的信息存入了目标数据报文,则可以直接根据这个信息来判断。
下面对本发明实施例提供的一种用于数据传输的接收设备,下文描述的一种用于数据传输的接收设备与上文描述的一种数据传输的方法可以相互参照。具体地,本发明实施例提供的一种用于数据传输的接收设备,包括:
第二存储器,用于存储计算机程序;
第二处理器,用于执行所述计算机程序时实现如上述实施例所述一种数据传输的方法的步骤。
需要说明的是,第二处理器执行所述计算机程序时实现的是如接收端的任意实施例所述的一种数据传输的方法的步骤。
下面对本发明实施例提供的一种数据传输的装置,下文描述的一种数据传输的装置与上文描述的一种数据传输的方法可以相互参照。参考图5,本发明实施例提供的一种数据传输的装置,具体包括:
接收模块501,用于接收由发送端发送的目标数据块报文,所述目标数据块报文是由发送端将待发送数据分割为数据块并依次发送的由每块数据块压缩封装得到的目标数据块报文;
具体地,接收模块501接收端接收发送发来的目标数据报文,此目标数据报文是发送端将待发送数据分割成数据块,并对数据块依次压缩、封装处理后的目标数据报文。
获取模块502,用于获取所述目标数据块报文中的目标数据块;
具体地,获取模块502在数据报文中获取目标数据块,需要说明的是,可以利用目标数据报文中携带的分包信息把各分包数据合并为一个目标数据块。
需要说明的是,在目标数据块报文中添加当前的数据块封装为网络报文时的分包信息,以便接收方利用分包信息合并数据块。受单报文可运载的数据字节数限制,待发送的目标数据块需要分成一个到多个报文发送,由于目标数据块可能做了压缩,接收端需要接收到此目标数据块的所有报文后才能解压,故在发送报文中添加本次发送的目标数据块的相关信息,一种实现为,报文中添加目标数据块的分包信息,包括目标数据块的编号、目标数据块是否压缩、压缩算法、目标数据块压缩前字节数、目标数据块压缩后字节数、目标数据块的分包总数、本报文在此目标数据块内的发包序号,本报文数据在此目标数据块内的相对位置。在接收端,根据报文中的分包信息,收集齐同一目标数据块编号的数据,不需解压的直接存入接收端文件,需要解压的先解压,再存入接收端文件,以使接收端收到的已接收数据与发送端发送的待发送数据内容一致。
解压模块503,用于对所述目标数据块进行解压并保存至目标文件。
具体地,解压模块503对目标数据块进行解压把解压得到的数据存入目标文件中。
下面对本发明实施例提供的一种数据传输的系统进行介绍,与上述实施例可以相互参照。
具体地,参考图6,本发明实施例提供的一种数据传输的设备包括发送设备601和接收设备602。
具体地,发送设备601包括用于存储计算机程序的第一存储器,和用于执行所述计算机程序时实现上述发送端任意实施例描述的一种数据传输的方法的步骤的第一处理器。
接收设备602包括用于存储计算机程序的第二存储器,和用于执行所述计算机程序时实现上述接收端任意实施例描述的一种数据传输的方法的步骤的第二处理器。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (9)
1.一种数据传输的方法,其特征在于,包括:
将待传输数据分割为预设数据块大小的数据块;
依次将由每块数据块压缩封装得到的目标数据块报文发送至接收端;
其中,所述依次将由每块数据块压缩封装得到的目标数据块报文发送至接收端,包括:依次获取数据块,判断当前数据块是否适合被压缩;若是,则将当前数据块进行压缩得到目标数据块;若否,则将当前数据块确定为目标数据块;将所述目标数据块封装为目标数据块报文发送至接收端;
并且,所述判断当前数据块是否适合被压缩,包括:利用当前获取的数据块的前一块数据块的压缩比以及所述当前获取的数据块的预设字节的数据的压缩比计算所述当前获取的数据块的压缩比,若当前数据块为第一个数据块,或者前一数据块未做压缩时,则直接使用数据块采样数据的压缩比作为本数据块的压缩比;所述压缩比为压缩前的数据字节与压缩后的数据字节之比;判断所述当前获取的数据块的压缩比是否大于等于预设阈值。
2.根据权利要求1所述的方法,其特征在于,所述将待传输数据分割为预设数据块大小的数据块,包括:
根据发送请求依次将待传输数据中的预设数据块大小的数据读至发送缓存区生成数据块。
3.一种用于数据传输的发送设备,其特征在于,包括:
第一存储器,用于存储计算机程序;
第一处理器,用于执行所述计算机程序时实现如权利要求1至2任一项所述一种数据传输的方法的步骤。
4.一种数据传输的装置,其特征在于,包括:
分割模块,用于将待传输数据分割为预设数据块大小的数据块;
发送模块,用于依次将由每块数据块压缩封装得到的目标数据块报文发送至接收端;
其中,所述发送模块具体用于依次获取数据块,判断当前数据块是否适合被压缩;若是,则将当前数据块进行压缩得到目标数据块;若否,则将当前数据块确定为目标数据块;将所述目标数据块封装为目标数据块报文发送至接收端;
并且,所述发送模块具体用于利用当前获取的数据块的前一块数据块的压缩比以及所述当前获取的数据块的预设字节的数据的压缩比计算所述当前获取的数据块的压缩比,若当前数据块为第一个数据块,或者前一数据块未做压缩时,则直接使用数据块采样数据的压缩比作为本数据块的压缩比;所述压缩比为压缩前的数据字节与压缩后的数据字节之比;判断所述当前获取的数据块的压缩比是否大于等于预设阈值。
5.一种数据传输的方法,其特征在于,包括:
接收由发送端发送的目标数据块报文,所述目标数据块报文是由发送端将待发送数据分割为数据块并依次发送的由每块数据块压缩封装得到的目标数据块报文;其中,所述发送端发送所述目标数据块报文的具体过程,包括:依次获取数据块,判断当前数据块是否适合被压缩;若是,则将当前数据块进行压缩得到目标数据块;若否,则将当前数据块确定为目标数据块;将所述目标数据块封装为目标数据块报文进行发送;并且,所述判断当前数据块是否适合被压缩,包括:利用当前获取的数据块的前一块数据块的压缩比以及所述当前获取的数据块的预设字节的数据的压缩比计算所述当前获取的数据块的压缩比,若当前数据块为第一个数据块,或者前一数据块未做压缩时,则直接使用数据块采样数据的压缩比作为本数据块的压缩比;所述压缩比为压缩前的数据字节与压缩后的数据字节之比;判断所述当前获取的数据块的压缩比是否大于等于预设阈值;
获取所述目标数据块报文中的目标数据块;
对所述目标数据块进行解压并保存至目标文件。
6.根据权利要求5所述的方法,其特征在于,对所述目标数据块进行解压并保存至目标文件,包括:
判断所述目标数据块是否被压缩;
若是,则继续执行所述对所述目标数据块进行解压并保存至目标文件的步骤;
若否,则直接将所述目标数据块保存至所述目标文件。
7.一种用于数据传输的接收设备,其特征在于,包括:
第二存储器,用于存储计算机程序;
第二处理器,用于执行所述计算机程序时实现如权利要求5或6所述一种数据传输的方法的步骤。
8.一种数据传输的装置,其特征在于,包括:
接收模块,用于接收由发送端发送的目标数据块报文,所述目标数据块报文是由发送端将待发送数据分割为数据块并依次发送的由每块数据块压缩封装得到的目标数据块报文;其中,所述发送端发送所述目标数据块报文的具体过程,包括:依次获取数据块,判断当前数据块是否适合被压缩;若是,则将当前数据块进行压缩得到目标数据块;若否,则将当前数据块确定为目标数据块;将所述目标数据块封装为目标数据块报文进行发送;并且,所述判断当前数据块是否适合被压缩,包括:利用当前获取的数据块的前一块数据块的压缩比以及所述当前获取的数据块的预设字节的数据的压缩比计算所述当前获取的数据块的压缩比,若当前数据块为第一个数据块,或者前一数据块未做压缩时,则直接使用数据块采样数据的压缩比作为本数据块的压缩比;所述压缩比为压缩前的数据字节与压缩后的数据字节之比;判断所述当前获取的数据块的压缩比是否大于等于预设阈值;
获取模块,用于获取所述目标数据块报文中的目标数据块;
解压模块,用于对所述目标数据块进行解压并保存至目标文件。
9.一种数据传输的系统,其特征在于,包括如权利要求3所述的发送设备和如权利要求7所述的接收设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711070982.1A CN109756536B (zh) | 2017-11-03 | 2017-11-03 | 一种数据传输的方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711070982.1A CN109756536B (zh) | 2017-11-03 | 2017-11-03 | 一种数据传输的方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109756536A CN109756536A (zh) | 2019-05-14 |
CN109756536B true CN109756536B (zh) | 2020-12-04 |
Family
ID=66398640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711070982.1A Active CN109756536B (zh) | 2017-11-03 | 2017-11-03 | 一种数据传输的方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109756536B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112099725A (zh) | 2019-06-17 | 2020-12-18 | 华为技术有限公司 | 一种数据处理方法、装置及计算机可读存储介质 |
CN110543281A (zh) * | 2019-07-19 | 2019-12-06 | 苏州浪潮智能科技有限公司 | 一种存储压缩实现方法、装置、设备及存储介质 |
CN112398885B (zh) * | 2019-08-14 | 2023-03-24 | 腾讯科技(深圳)有限公司 | 数据传输方法和装置 |
CN113242473B (zh) * | 2021-04-15 | 2023-04-21 | 深圳锐取信息技术股份有限公司 | 一种数据处理方法、系统、数据采集设备及可读存储介质 |
CN112995217B (zh) * | 2021-04-29 | 2021-08-17 | 深圳华锐金融技术股份有限公司 | 数据发送方法、系统 |
CN113378214B (zh) * | 2021-05-20 | 2022-03-08 | 广西飞创信息科技有限公司 | 一种基于区块链技术的连续数据保护方法及装置 |
CN114296643B (zh) * | 2021-12-16 | 2024-09-06 | 杭州海康威视数字技术股份有限公司 | 一种数据处理方法及装置 |
CN114338227B (zh) * | 2022-01-21 | 2023-04-18 | 山东大学 | 基于分割流量的网络流量分析对抗方法及装置 |
CN115065732B (zh) * | 2022-06-08 | 2023-08-11 | 珠海格力电器股份有限公司 | 数据传输方法、装置、电子设置及存储介质 |
WO2024016161A1 (zh) * | 2022-07-19 | 2024-01-25 | 华为技术有限公司 | 一种数据传输方法及装置 |
CN115086306B (zh) * | 2022-08-18 | 2022-11-18 | 天津市天河计算机技术有限公司 | 一种数据传输方法、装置、电子设备和存储介质 |
CN115396518B (zh) * | 2022-10-31 | 2023-04-11 | 广东睿江云计算股份有限公司 | 一种自适应的数据同步方法以及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102404077A (zh) * | 2011-11-30 | 2012-04-04 | 清华大学 | 基于喷泉码的多径tcp协议 |
CN102436421A (zh) * | 2010-09-29 | 2012-05-02 | 腾讯科技(深圳)有限公司 | 缓存数据的方法 |
CN102843341A (zh) * | 2011-06-22 | 2012-12-26 | 阿里巴巴集团控股有限公司 | 数据发送方法及装置、数据接收方法及装置 |
CN105653484A (zh) * | 2015-12-31 | 2016-06-08 | 厦门市美亚柏科信息股份有限公司 | 一种数据分块压缩多通道传输方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8692695B2 (en) * | 2000-10-03 | 2014-04-08 | Realtime Data, Llc | Methods for encoding and decoding data |
-
2017
- 2017-11-03 CN CN201711070982.1A patent/CN109756536B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102436421A (zh) * | 2010-09-29 | 2012-05-02 | 腾讯科技(深圳)有限公司 | 缓存数据的方法 |
CN102843341A (zh) * | 2011-06-22 | 2012-12-26 | 阿里巴巴集团控股有限公司 | 数据发送方法及装置、数据接收方法及装置 |
CN102404077A (zh) * | 2011-11-30 | 2012-04-04 | 清华大学 | 基于喷泉码的多径tcp协议 |
CN105653484A (zh) * | 2015-12-31 | 2016-06-08 | 厦门市美亚柏科信息股份有限公司 | 一种数据分块压缩多通道传输方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109756536A (zh) | 2019-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109756536B (zh) | 一种数据传输的方法、装置及系统 | |
CN107094142B (zh) | 一种上行数据解压缩、压缩的方法和装置 | |
US11023412B2 (en) | RDMA data sending and receiving methods, electronic device, and readable storage medium | |
CN104219229B (zh) | 虚拟桌面数据的传输方法和装置 | |
CN110087140B (zh) | 一种传输流媒体数据的方法、装置、介质及设备 | |
CN101552652A (zh) | 一种文件传输方法及传输装置 | |
US10020916B2 (en) | Method and apparatus for data communication of vehicle | |
CN108668144B (zh) | 一种数据流控方法、装置及设备 | |
CN111093094A (zh) | 视频转码方法、装置、系统及电子设备及可读存储介质 | |
CN110336677B (zh) | 区块打包、广播方法和系统、设备及存储介质 | |
CN104954497A (zh) | 一种云存储系统中数据传输方法和系统 | |
CN109120687A (zh) | 数据包发送方法、装置、系统、设备及存储介质 | |
CN113556813B (zh) | 上行数据传输方法、装置及系统 | |
CN104303471A (zh) | 用于通过选择数据加速算法提供内容的方法和装置 | |
CN101877793A (zh) | 数据传输方法、检错方法、系统和装置 | |
WO2021036189A1 (zh) | Rdma数据发送及接收方法、电子设备及可读存储介质 | |
CN104717257A (zh) | 传输数据报文的方法及装置 | |
CN113138969A (zh) | 数据传输方法、装置、电子设备和计算机可读存储介质 | |
EP3860131A1 (en) | Data transmission method and apparatus | |
CN114979093B (zh) | 一种基于rtp的数据传输方法、装置、设备和介质 | |
CN104038307A (zh) | 数据流传输系统及方法 | |
CN116366631A (zh) | 文件传输方法、装置、存储介质以及电子设备 | |
CN111417920A (zh) | 数据处理方法及装置 | |
CN113595694B (zh) | 数据的传输方法、计算设备及存储介质 | |
CN114979094A (zh) | 一种基于rtp的数据传输方法、装置、设备和介质 |
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 |