CN114520918A - 数据传输方法及相关设备 - Google Patents

数据传输方法及相关设备 Download PDF

Info

Publication number
CN114520918A
CN114520918A CN202210106749.9A CN202210106749A CN114520918A CN 114520918 A CN114520918 A CN 114520918A CN 202210106749 A CN202210106749 A CN 202210106749A CN 114520918 A CN114520918 A CN 114520918A
Authority
CN
China
Prior art keywords
data
data block
target
block
determining
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
CN202210106749.9A
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.)
BOE Technology Group Co Ltd
Original Assignee
BOE Technology Group Co Ltd
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 BOE Technology Group Co Ltd filed Critical BOE Technology Group Co Ltd
Priority to CN202210106749.9A priority Critical patent/CN114520918A/zh
Publication of CN114520918A publication Critical patent/CN114520918A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • 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/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/06Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本公开提供一种数据传输方法及相关设备。该方法,包括:确定目标数据;根据提取参数,从所述目标数据中提取第一数据块;对所述第一数据块进行压缩以得到第二数据块,所述第二数据块的数据量小于或等于数据量阈值;确定所述第二数据块的数据量与数据量参考值的倍数关系是否符合预设倍数关系;以及响应于确定所述第二数据块的数据量与数据量参考值之间的倍数关系符合预设倍数关系,将所述第二数据块确定为目标数据块并传输所述目标数据块。

Description

数据传输方法及相关设备
技术领域
本公开涉及物联网技术领域,尤其涉及一种数据传输方法及相关设备。
背景技术
在物联网系统中,一般地,物联网终端可以通过网关设备从服务器接收数据。对于物联网终端来说,其资源有限,有时可能无法进行常规的压缩解压过程。
发明内容
鉴于此,本公开提出一种数据传输方法及相关设备,以解决或部分解决上述问题。
本公开第一方面,提供了一种数据传输方法,包括:
确定目标数据;
根据提取参数,从所述目标数据中提取第一数据块;
对所述第一数据块进行压缩以得到第二数据块,所述第二数据块的数据量小于或等于数据量阈值;
确定所述第二数据块的数据量与数据量参考值的倍数关系是否符合预设倍数关系;以及
响应于确定所述第二数据块的数据量与数据量参考值之间的倍数关系符合预设倍数关系,将所述第二数据块确定为目标数据块并传输所述目标数据块。
本公开第二方面,提供了一种计算机设备,包括:
一个或者多个处理器、存储器;以及
一个或多个程序;
其中,所述一个或多个程序被存储在所述存储器中,并且被所述一个或多个处理器执行,所述程序包括用于执行根据第一方面所述的方法的指令。
本公开第三方面,提供了一种物联网系统,包括:
服务器;
至少一个终端设备;以及
如第二方面所述的计算机设备,被配置为:接收所述服务器发送的目标数据,确定所述至少一个终端设备中的目标终端设备,并向所述目标终端设备发送基于所述目标数据得到的目标数据块。
本公开第四方面,提供了一种包含计算机程序的非易失性计算机可读存储介质,当所述计算机程序被一个或多个处理器执行时,使得所述处理器执行第一方面所述的方法。
本公开第五方面,提供了一种计算机程序产品,包括计算机程序指令,当所述计算机程序指令在计算机上运行时,使得计算机执行如第一方面所述的方法。
本公开提供的数据传输方法及相关设备,通过对数据进行分块压缩,在减少传输数据总量的前提下,保证数据量满足终端设备对数据进行解压的要求,同时,提高数据传输效率。
附图说明
为了更清楚地说明本公开或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例所提供的示例性系统的示意图。
图2A为本公开实施例所提供的示例性方法的流程示意图。
图2B为根据本公开实施例的一个示例性数据的示意图。
图2C为根据本公开实施例的另一示例性数据的示意图。
图2D为根据本公开实施例的又一示例性数据的示意图。
图3为本公开实施例所提供的又一示例性方法的流程示意图。
图4为本公开实施例所提供的示例性设备的硬件结构示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
需要说明的是,除非另外定义,本公开实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
图1示出了本公开实施例所提供的示例性系统100的示意图。
如图1所示,该系统100可以包括多个终端设备(例如,终端设备200a~200n)、网关设备300和服务器400。在一些实施例中,该系统100可以是物联网系统,该终端设备200a~200n可以是物联网设备,该网关设备300可以是物联网网关。
终端设备200a~200n可以通过无线方式(例如,蓝牙)与网关设备300连接,网关设备300可以通过网络(例如,WLAN/LAN)与服务器400连接。
一般地,服务器400可以通过网关设备300给终端设备200a~200n下发任务。例如,服务器400可以向终端设备200a~200n发送显示任务。在显示任务中,网关设备300可以从服务器400中接收图片数据,然后将该图片数据转发给相应的终端设备,例如终端设备200a。由于图片数据的数据量相对较大,终端设备200a在接收该图片数据时,需要长时间地与网关设备300进行无线交互,既耗时耗电,也占用信道。
一种处理方式是,将需要传输的图片数据进行压缩之后进行传输,从而可以减小需要传输的数据量。但是,对于常规的压缩/解压方式,由于终端设备的处理器资源有限,可能无法进行常规的压缩解压过程。特别是,当终端设备采用微处理器(MCU)作为处理器时,由于MCU的资源有限,在对接收到的数据进行解压时,可能导致数据溢出,进而出现数据错误等问题。
鉴于此,本公开实施例提供了一种物联网系统,可以用于数据传输,通过对数据进行分块压缩,在减少传输数据总量的前提下,保证数据量满足终端设备对数据进行解压的要求,同时,提高数据传输效率。
图2A示出了本公开实施例所提供的示例性方法500的流程示意图。如图2A所示,该方法500可以应用于系统100,并可以进一步包括以下步骤。
在步骤S502,服务器400可以将目标数据发送给网关设备300。在一些实施例中,该目标数据可以是图片数据。在发送该目标数据的同时,服务器400也可以向网关设备300发送需要将该目标数据发送到哪个目标终端设备的信息。例如,在本实施例中,该信息中包括了终端设备200a的相关信息,以使网关设备300根据该信息确定相应的目标终端设备为终端设备200a。在一些实施例中,该信息可以包括目标终端设备的设备ID、MAC地址等能够用于确定目标终端设备的信息。
网关设备300接收到目标数据及目标终端设备的相应信息之后,可以开始准备向目标终端设备(例如,终端设备200a)传输该目标数据。可以理解的是,本实施例中,网关设备300可以是终端设备200a的上位机。
在一些实施例中,在步骤S504,网关设备300可以先向终端设备200a发送目标数据的数据信息。例如,以目标数据为图片数据为例,该数据信息可以包括图片数据的总长度、图片数据的校验信息等基本信息。
在一些实施例中,在步骤S506,终端设备200a在接收到待接收的目标数据的数据信息之后,可以向网关设备300返回终端设备200a的设备信息。在一些实施例中,该设备信息可以包括终端设备200a的用于解压数据的最大存储空间的大小(例如,解压可用的最大随机存取存储器(RAM)的大小M)、用于接收数据的最大存储空间的大小(例如,接收数据可用的最大缓存(BUF)的大小N)和单次接收数据的最大存储空间的大小(例如,单次接收数据可用的缓存的大小W)。
其中,解压可用的最大随机存取存储器(RAM)的大小M可以是指,终端设备200a的MCU的RAM在完成解压处理时所能使用的最大数据空间。BUF可以是指开发人员在写程序时在终端设备200a的MCU中预留的一片内存空间,接收数据可用的最大缓存(BUF)的大小N则可以是指,终端设备200a的BUF在接收数据时可用的最大数据空间。单次接收数据可用的缓存的大小W可以是指,终端设备200a接收一次数据的数据量大小,在一些情况下,当网关设备300采用分包传输的方式向终端设备200a发送数据时,单次接收数据可用的缓存的大小W可以是一个数据分包的数据量。
网关设备300接收终端设备200a返回的设备信息之后,可以根据该设备信息,确定提取参数。该提取参数用于指导网关设备300从目标数据中提取数据块。在一些实施例中,该数据块可以是网关设备300向终端设备200a发送数据时的数据单元,终端设备200a可以基于该数据单元来处理数据。为了保证终端设备200a在接收一个数据块之后解压时不会出现数据溢出问题,该提取参数可以是终端设备200a的解压可用的最大随机存取存储器的大小,这样,当终端设备200a基于接收到的数据解压得到相应的数据块时,不会出现数据溢出的问题。
在确定提取参数之后,网关设备300可以进入具体的数据下发过程,并可以对目标数据进行分块压缩。在步骤S508,网关设备300可以根据该提取参数,从目标数据中提取第一数据块。
图2B示出了根据本公开实施例的示例性数据302的示意图。如图2B所示,在一些实施例中,网关设备300可以从目标数据的起始处(pos0)提取第一数据块3022,该第一数据块3022的大小可以是该提取参数的大小,例如,等于M。
然后,在步骤S510,网关设备300可以对第一数据块3022进行压缩以进一步得到第二数据块,从而尽量保证被发送的数据块满足终端设备200a在接收数据时的数据量要求。在一些实施例中,在对第一数据块3022进行压缩时,需要考虑压缩后的数据的数据量不要超过数据量阈值。在一些实施例中,为了保证被发送的数据块满足终端设备200a的数据量要求(例如,不要超过终端设备200a的用于接收数据的最大存储空间的大小),网关设备300可以根据终端设备200a的设备信息来确定数据量阈值。例如,该数据量阈值可以是终端设备200a的接收数据可用的最大缓存的大小N。
接着,如图2B所示,网关设备300可以对第一数据块3022进行压缩来得到中间数据块3024,然后确定该中间数据块3024的数据量是否小于所述数据量阈值(例如,N)。若中间数据块3024的数据量小于或等于该数据量阈值,网关设备300可以将该中间数据块3024确定为第二数据块。
在一些实施例中,若中间数据块3024的数据量大于该数据量阈值,则不能将该中间数据块3024作为第二数据块。这时,网关设备300可以将第一数据块3022的数据量减小后得到新的第一数据块3022',如图2C所示。然后,基于新的第一数据块3022'重新进行压缩,来得到新的中间数据块3026。此时,若新的中间数据块3026的数据量小于或等于该数据量阈值,网关设备300可以将该新的中间数据块3026确定为第二数据块。若新的中间数据块3026的数据量还是大于该数据量阈值,则继续减小第一数据块3022'的数据量,然后再次压缩,重复此步骤,直至得到的中间数据块的数据量小于或等于该数据量阈值,从而得到小于或等于数据量阈值的第二数据块。可以理解的是,在减小第一数据块的数据量时,所减小的数据量可以根据实际需要进行设置,而可以不做具体限制。例如,可以选择减小1字节或100字节,只要最终的数据传输能够高效、精准地完成即可。
在得到第二数据块之后,在一些实施例中,在步骤S512,网关设备300可以直接将第二数据块作为目标数据块发送到终端设备200a。然后从目标数据302的新的位置处(例如,图2B的位置pos1),再次提取新的第一数据块,并按照前述方法将新的第一数据块压缩以得到新的第二数据块然后进行传输。重复该过程,直到目标数据被传输完成。可以看到,由于第二数据块的数据量小于或等于数据量阈值,当数据量阈值小于或等于终端设备200a的用于接收数据的最大存储空间的大小时,终端设备200a在接收第二数据块时,不会出现数据溢出。并且,由于第一数据块的数据量以提取参数为准,当提取参数小于或等于终端设备200a的用于解压数据的最大存储空间的大小时,终端设备200a在将第二数据块解压为第一数据块时,也不会出现数据溢出。
在一些实施例中,为了提高数据的传输效率,可以对第二数据块进行分包之后再进行传输。这样,如果因为某些原因导致了丢包等问题,只需要重新传输丢包的数据即可,而不需要再将整个目标数据块重新进行传输。
在一些实施例中,在采用数据分包方式传输数据块时,被发送的数据分包中除了该分包对应的数据之外,还可以包括压缩算法的标记(以使终端设备200a知道采用哪种算法进行解压)、该分包在目标数据块中的序号、目标数据块被分包的总包数、该目标数据块的序号,等等。
在一些实施例中,为了提高信道利用率,网关设备300还可以对第二数据块进行进一步处理来确定最终用于传输的目标数据块。例如,可以将第二数据块的数据量与数据量参考值进行比较,确定第二数据块的数据量与该数据量参考值之间的倍数关系是否符合预设倍数关系。在一些实施例中,该数据量参考值可以是分包传输时传输一个数据分包的数据量。这样,当第二数据块的数据量与该数据量参考值之间的倍数关系约为整数倍关系(例如,2倍)时,信道利用率较高,因为第二数据块传输2次数据分包就可以完成目标数据块的传输,且每次传输数据分包时都充分利用了该信道。
接着,若第二数据块的数据量与数据量参考值之间的倍数关系符合预设倍数关系,则网关设备300可以将该第二数据块确定为目标数据块并传输该目标数据块,此时的信道利用率较高。
若第二数据块的数据量与数据量参考值之间的倍数关系不符合预设倍数关系,则网关设备300不将该第二数据块作为目标数据块进行传输,而可以进一步将第一数据块的数据量减小为新的第一数据块3022”后重新进行压缩以得到第三数据块3028,如图2D所示。
然后,网关设备300可以确定第三数据块3028的数据量与数据量参考值的倍数关系是否符合预设倍数关系。若第三数据块3028的数据量与数据量参考值之间的倍数关系符合预设倍数关系,则网关设备300可以将该第三数据块3028确定为目标数据块并传输该目标数据块。若第三数据块3028的数据量与数据量参考值之间的倍数关系还是不符合预设倍数关系,则网关设备可以再一次减小第一数据块之后再次进行压缩,直至数据块的数据量与数据量参考值之间的倍数关系符合预设倍数关系。
可以理解的是,该预设倍数关系可以不是整数倍关系,而可以是一个接近整数倍关系的范围,例如,取整数之后所余的小数大于或等于一个预设小数(例如,0.5、0.8等等)。以数据量参考值为250字节为例,假设压缩后的数据块的数据量为260字节,这样,压缩后的数据块的数据量与数据量参考值的倍数取整数之后,余小数10/250=0.004。假设预设倍数关系要求该小数需要大于0.5,则0.004远小于0.5,可以认为不符合预设倍数关系。从该示例可以看出,压缩后的数据需要分两次发送,而第二个数据分包只有10字节的有效数据,可以认为此时的信道利用率低。又例如,以数据量参考值为100字节为例,假设压缩后的数据块的数据量为260字节,这样,压缩后的数据块的数据量与数据量参考值的倍数取整数之后,余小数60/100=0.6。假设预设倍数关系要求该小数需要大于0.5,则0.6大于0.5,可以认为符合预设倍数关系且此时信道利用率高。
可以看出,上述减小第一数据块的数据量来使第三数据块的数据量与数据量参考值的倍数关系符合预设倍数关系的方法,主要是为了提高信道利用率。因此,在进行数据量减小处理时,所减小的数据量以选择减小较少的数据量为宜。例如,减小的数据量可以是数据量参考值的1%~10%的范围内,这样可以避免减小太多数据而导致的始终不能得到符合预设倍数关系的数据量的情况。
在一些实施例中,为了在保证信道利用率的同时满足终端设备200a的要求,可以根据终端设备200a的设备信息来确定该数据量参考值。例如,所述数据量参考值可以是终端设备200a的单次接收数据可用的缓存的大小W。
从上述实施例可以看出,在传输数据之前对数据的处理需要满足三个参数的要求,在这个过程中,由于目标数据的不同部分的数据差异,可能会对某些数据块进行反复地减小再重新压缩,因此,目标数据最终被分块所成的数据块的大小可以是不同的。例如,一张图片,相对于前景部分的彩色区域,背景部分因为是白色或黑色而具有相对较少的信息,因此当背景部分对应的数据块被压缩之后,其数据量通常较小,一般会满足数据量阈值的要求。而前景部分的彩色区域对应的数据块被压缩之后,其数据量通常较大,可能需要反复减小之后来重新压缩。这样,原始的目标数据被划分得到的多个数据块(第一数据块)的大小可能是不一样的。
可以理解的是,在传输目标数据块时,可以进行分包发送。网关设备300将目标数据块按照该数据量参考量分为多个数据分包然后依次发送这些数据分包。被发送的数据分包中除了该分包对应的数据之外,还可以包括压缩算法的标记(以使终端设备200a知道采用哪种算法进行解压)、该分包在目标数据块中的序号、目标数据块被分包的总包数、该目标数据块的序号,等等。因此,在一些实施例中,终端设备200a在接收到每个数据分包之后,可以根据数据分包中的该分包在目标数据块中的序号、目标数据块被分包的总包数、该目标数据块的序号等信息进行校验,若校验通过则向网关设备300反馈校验通过信息(例如,确认字符(Acknowledge character,ACK))。网关设备300接收到该校验通过信息之后继续发送另一数据分包,直至目标数据块的全部数据分包发送完成。接着网关设备300可以开始提取并压缩下一数据块,然后发送该下一数据块,直至目标数据全部发送完成。
在步骤S514,针对每一个数据块,终端设备200a可以根据接收到的该数据块对应的数据分包来完成数据块的解压处理并进行存储。当接收到目标数据302的所有数据块之后,终端设备200a完成目标数据302的接收,并可以基于目标数据302的校验信息对其进行再次校验后,若校验通过,则可以将本地数据按照目标数据302进行更新。
在一些实施例中,若终端设备200a在校验某一数据分包时没有校验通过,终端设备200a可以向网关设备300反馈校验不通过的信息(或者,网关设备300在一段时间内没有接收到ACK),则网关设备300判断数据出现丢包或发送超时,可以基于校验不通过的信息确定出现问题的数据分包然后将其再次发送到终端设备200a。
至此,完成了目标数据302的处理与传输。可以看出,本公开实施例提供的系统100,通过终端设备与网关设备进行协商,使网关设备基于协商得到的终端设备的设备信息来对数据进行分块压缩,从而减少下发数据的总量,解决大量数据下发时耗时耗电,也长时间占用信道的问题。
特别是,当无线终端的MCU资源有限时,可能无法进行常规的压缩解压,因此无线终端向网关设备上报自身资源情况,由网关设备确定压缩的块大小,并对数据进行不定长分块压缩后发送,从而减少下发数据的总量,并且提高信道占用的效率。
在一些实施例中,终端设备可以是具有电子墨水屏(EPD)的胸卡终端,该胸卡终端为一种低功耗设备,其利用EPD进行显示,EPD只有在刷新的时候需要进行供电,刷新结束后断电而显示内容不变。该胸卡终端能够以无线方式通过网关设备300与服务器400进行通讯,服务器400可以通过网关设备300给该胸卡终端下发要显示的EPD内容。
但是,一般地,EPD胸卡终端由于体积较小、结构紧凑,其电路板设计均采用精简模式,其处理器一般采用MCU。但是,MCU资源有限,容易出现无法进行压缩解压的问题。因此,由网关设备确定压缩的块大小,并对数据进行不定长分块压缩后发送,从而减少下发数据的总量,并且提高信道占用的效率,同时满足了EPD胸卡终端的MCU资源要求。
本公开实施例还提供了一种数据传输方法。图3示出了本公开实施例所提供的示例性方法600的流程示意图。该方法600可以应用于图1的网关设备300。如图3所示,该方法600可以包括以下步骤。
在步骤602,可以确定目标数据(例如,图2B的数据302)。
在一些实施例中,在确定目标数据之后,还包括:向目标终端设备(例如,图2A的终端设备200a)发送所述目标数据的数据信息;接收所述目标终端设备返回的所述目标终端设备的设备信息;以及根据所述目标终端设备的设备信息,确定所述提取参数、所述数据量阈值和所述数据量参考值中的至少其一。
在一些实施例中,所述提取参数小于或等于所述目标终端设备的用于解压数据的最大存储空间的大小。
在一些实施例中,所述数据量阈值小于或等于所述目标终端设备的用于接收数据的最大存储空间的大小。
在一些实施例中,所述数据量参考值小于或等于所述目标终端设备的单次接收数据的最大存储空间的大小。
在步骤604,根据提取参数,从所述目标数据中提取第一数据块(例如,图2B的数据块3022)。
在步骤606,对所述第一数据块进行压缩以得到第二数据块,所述第二数据块的数据量小于或等于数据量阈值。
在一些实施例中,对所述第一数据块进行压缩以得到第二数据块,包括:对所述第一数据块进行压缩并得到中间数据块(例如,图2B的数据块3024);确定所述中间数据块的数据量是否小于所述数据量阈值;以及响应于确定所述中间数据块的数据量小于或等于所述数据量阈值,将所述中间数据块确定为第二数据块。
在一些实施例中,对所述第一数据块进行压缩以得到目标数据块,还包括:响应于确定所述中间数据块的数据量大于所述数据量阈值,将所述第一数据块的数据量减小后重新进行压缩以得到所述第二数据块(例如,图2C的数据块3026)。
在步骤608,确定所述第二数据块的数据量与数据量参考值的倍数关系是否符合预设倍数关系。
在步骤610,响应于确定所述第二数据块的数据量与数据量参考值之间的倍数关系符合预设倍数关系,将所述第二数据块确定为目标数据块并传输所述目标数据块。
在一些实施例中,所述的方法,还包括:响应于确定所述第二数据块的数据量与数据量参考值之间的倍数关系不符合预设倍数关系,将所述第一数据块的数据量减小后重新进行压缩以得到第三数据块(例如,图2D的数据块3028)。
在一些实施例中,将所述第一数据块的数据量减小后重新进行压缩以得到第三数据块之后,还包括:确定所述第三数据块的数据量与数据量参考值的倍数关系是否符合预设倍数关系;响应于确定所述第三数据块的数据量与数据量参考值之间的倍数关系符合预设倍数关系,将所述第三数据块确定为目标数据块并传输所述目标数据块。
在一些实施例中,传输所述目标数据块,包括:采用分包传输的方式,传输所述目标数据块。
在一些实施例中,所述数据量参考值为分包传输的分包数据量。
需要说明的是,本公开实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本公开实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
需要说明的是,上述对本公开的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
基于同一发明构思,与上述任意实施例方法相对应的,本公开还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的方法500或600。
图4示出了本实施例所提供的一种更为具体的电子设备700的硬件结构示意图。该设备700可以用于实现图1的系统100、终端设备200a~200n、网关设备300和服务器400,并可以进一步包括:处理器702、存储器704、输入/输出接口706、通信接口708和总线710。其中处理器702、存储器704、输入/输出接口706和通信接口708通过总线710实现彼此之间在设备内部的通信连接。
处理器702可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。在一些实施例中,当该设备700实现为终端设备200a~200n时,处理器702可以是MCU,并且,该MCU可以进一步包括CPU、无线电模块(radio)和时钟模块(RTC)。
存储器704可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器704可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器704中,并由处理器702来调用执行。在一些实施例中,当该设备700实现为终端设备200a~200n时,存储器704可以进一步包括闪存(flash)。
输入/输出接口706用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器(例如,电子墨水屏EPD)、扬声器、振动器、指示灯(例如,LED)、按键(KEY)等。
通信接口708用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线710包括一通路,在设备的各个组件(例如处理器702、存储器704、输入/输出接口706和通信接口708)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器702、存储器704、输入/输出接口706、通信接口708以及总线710,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
上述实施例的电子设备用于实现前述任一实施例中相应的方法500或600,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,与上述任意实施例方法相对应的,本公开还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的方法500或600。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的方法500或600,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,与上述任意实施例方法500或600相对应的,本公开还提供了一种计算机程序产品,其包括计算机程序。在一些实施例中,所述计算机程序由一个或多个处理器可执行以使得所述处理器执行所述的方法500或600。对应于方法500或600各实施例中各步骤对应的执行主体,执行相应步骤的处理器可以是属于相应执行主体的。
上述实施例的计算机程序产品用于使处理器执行如上任一实施例所述的方法500或600,并且具有相应的方法实施例的有益效果,在此不再赘述。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本公开实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本公开实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本公开实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本公开实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本公开实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本公开实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本公开实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。

Claims (17)

1.一种数据传输方法,包括:
确定目标数据;
根据提取参数,从所述目标数据中提取第一数据块;
对所述第一数据块进行压缩以得到第二数据块,所述第二数据块的数据量小于或等于数据量阈值;
确定所述第二数据块的数据量与数据量参考值的倍数关系是否符合预设倍数关系;以及
响应于确定所述第二数据块的数据量与数据量参考值之间的倍数关系符合预设倍数关系,将所述第二数据块确定为目标数据块并传输所述目标数据块。
2.如权利要求1所述的方法,其中,对所述第一数据块进行压缩以得到第二数据块,包括:
对所述第一数据块进行压缩并得到中间数据块;
确定所述中间数据块的数据量是否小于或等于所述数据量阈值;以及
响应于确定所述中间数据块的数据量小于或等于所述数据量阈值,将所述中间数据块确定为第二数据块。
3.如权利要求2所述的方法,其中,对所述第一数据块进行压缩以得到目标数据块,还包括:
响应于确定所述中间数据块的数据量大于所述数据量阈值,将所述第一数据块的数据量减小后重新进行压缩以得到所述第二数据块。
4.如权利要求1所述的方法,还包括:
响应于确定所述第二数据块的数据量与数据量参考值之间的倍数关系不符合预设倍数关系,将所述第一数据块的数据量减小后重新进行压缩以得到第三数据块。
5.如权利要求4所述的方法,其中,将所述第一数据块的数据量减小后重新进行压缩以得到第三数据块之后,还包括:
确定所述第三数据块的数据量与数据量参考值的倍数关系是否符合预设倍数关系;
响应于确定所述第三数据块的数据量与数据量参考值之间的倍数关系符合预设倍数关系,将所述第三数据块确定为目标数据块并传输所述目标数据块。
6.如权利要求1或5所述的方法,其中,传输所述目标数据块,包括:
采用分包传输的方式,传输所述目标数据块。
7.如权利要求6所述的方法,其中,所述数据量参考值为分包传输的分包数据量。
8.如权利要求1-5任一项所述的方法,其中,在确定目标数据之后,还包括:
向目标终端设备发送所述目标数据的数据信息;
接收所述目标终端设备返回的所述目标终端设备的设备信息;以及
根据所述目标终端设备的设备信息,确定所述提取参数、所述数据量阈值和所述数据量参考值中的至少其一。
9.如权利要求8所述的方法,其中,所述提取参数小于或等于所述目标终端设备的用于解压数据的最大存储空间的大小。
10.如权利要求8所述的方法,其中,所述数据量阈值小于或等于所述目标终端设备的用于接收数据的最大存储空间的大小。
11.如权利要求8所述的方法,其中,所述数据量参考值小于或等于所述目标终端设备的单次接收数据的最大存储空间的大小。
12.一种计算机设备,包括:
一个或者多个处理器、存储器;以及
一个或多个程序;
其中,所述一个或多个程序被存储在所述存储器中,并且被所述一个或多个处理器执行,所述程序包括用于执行根据权利要求1-11任一项所述的方法的指令。
13.一种物联网系统,包括:
服务器;
至少一个终端设备;以及
如权利要求12所述的计算机设备,被配置为:接收所述服务器发送的目标数据,确定所述至少一个终端设备中的目标终端设备,并向所述目标终端设备发送基于所述目标数据得到的目标数据块。
14.如权利要求13所述的物联网系统,其中,所述终端设备为显示设备。
15.如权利要求13所述的物联网系统,其中,所述终端设备为电子墨水屏。
16.一种包含计算机程序的非易失性计算机可读存储介质,当所述计算机程序被一个或多个处理器执行时,使得所述处理器执行权利要求1-11中任一项所述的方法。
17.一种计算机程序产品,包括计算机程序指令,当所述计算机程序指令在计算机上运行时,使得计算机执行如权利要求1-11中任一项所述的方法。
CN202210106749.9A 2022-01-28 2022-01-28 数据传输方法及相关设备 Pending CN114520918A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210106749.9A CN114520918A (zh) 2022-01-28 2022-01-28 数据传输方法及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210106749.9A CN114520918A (zh) 2022-01-28 2022-01-28 数据传输方法及相关设备

Publications (1)

Publication Number Publication Date
CN114520918A true CN114520918A (zh) 2022-05-20

Family

ID=81596711

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210106749.9A Pending CN114520918A (zh) 2022-01-28 2022-01-28 数据传输方法及相关设备

Country Status (1)

Country Link
CN (1) CN114520918A (zh)

Similar Documents

Publication Publication Date Title
CN104199927A (zh) 数据处理方法及数据处理装置
WO2022257699A1 (zh) 图像画面显示方法、装置、设备、存储介质及程序产品
US10817460B2 (en) RDMA data sending and receiving methods, electronic device, and readable storage medium
US9558718B2 (en) Streaming video data in the graphics domain
CN105207975A (zh) 一种vdi架构下的usb图像设备数据传输方法和系统
CN112948151A (zh) 程序界面图像传输方法、基板管理控制器及远程控制设备
US20140009563A1 (en) Non-video codecs with video conferencing
CN111405293B (zh) 一种视频传输方法及装置
US10249269B2 (en) System on chip devices and operating methods thereof
US20160142723A1 (en) Frame division into subframes
CN114520918A (zh) 数据传输方法及相关设备
WO2023142715A1 (zh) 视频编码方法、实时通信方法、装置、设备及存储介质
CN114024874B (zh) 基于rdma的数据传输方法、装置、设备及存储介质
CN115278301A (zh) 视频处理方法、系统及设备
CN113327302A (zh) 图片处理方法及装置、存储介质、电子装置
CN111935431B (zh) 高帧速率视频记录
CN114339252A (zh) 一种数据压缩方法及装置
US10021161B2 (en) Compression of graphical commands for remote display
CN113765819A (zh) 资源访问方法、装置、电子设备及存储介质
CN116828231B (zh) 一种视频传输优化方法、系统、电子设备及介质
US20130044125A1 (en) Method for displaying an elementary image of a composite image and an associated viewing device
CN115334053B (zh) 一种云会议中关联投屏的实现方法及相关产品
CN115225881B (zh) 一种数据传输方法、装置、设备和存储介质
WO2024124911A1 (zh) 视频编码方法、装置、电子设备及存储介质
US20170228206A1 (en) Processing data in a thin client terminal

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