CN116594948B - Usb数据传输方法、装置、计算机设备及存储介质 - Google Patents
Usb数据传输方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN116594948B CN116594948B CN202310541258.1A CN202310541258A CN116594948B CN 116594948 B CN116594948 B CN 116594948B CN 202310541258 A CN202310541258 A CN 202310541258A CN 116594948 B CN116594948 B CN 116594948B
- Authority
- CN
- China
- Prior art keywords
- data
- transmitted
- preset
- slave device
- slave
- 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
- 230000005540 biological transmission Effects 0.000 title claims abstract description 132
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000007906 compression Methods 0.000 claims abstract description 32
- 230000006835 compression Effects 0.000 claims abstract description 31
- 238000013144 data compression Methods 0.000 claims description 19
- 238000012546 transfer Methods 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 7
- 230000006837 decompression Effects 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 7
- 238000012795 verification Methods 0.000 claims description 4
- 238000004891 communication Methods 0.000 abstract description 5
- 241001320851 Aaaba Species 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 241000699670 Mus sp. Species 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/484—Precedence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0042—Universal serial bus [USB]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及电子设备通信技术领域,公开了一种USB数据传输方法、装置、计算机设备及存储介质,其方法以预设数据传输速度接收主设备发送的待传输数据;根据预设字节长度和从设备端口标识将待传输数据拆分为多个数据包,根据预设压缩规则对所有数据包进行压缩处理,获得与各数据包分别对应的多个压缩数据包;对每一压缩数据包添加对应的数据包校验码;在根据从设备端口标识确定存在与待传输数据对应的多个从设备之后,将所有压缩数据包存入缓存区域,并根据各从设备的优先级信息生成缓存队列;将所有压缩数据包按照缓存队列发送到与待传输数据对应的从设备。本发明的USB数据传输方法保证了数据传输的准确性,提高了数据传输的整体效率。
Description
技术领域
本发明涉及电子设备通信技术领域,尤其涉及一种USB数据传输方法、装置、计算机设备及存储介质。
背景技术
通用串行总线(Universal Serial Bus,简称USB)是一种电子设备之间进行数据传输的通信协议,USB具有使用方便、支持热插拔、连接灵活、独立供电的优点,广泛应用于各种领域的电子设备,例如USB闪存驱动器、移动硬盘、打印机、摄像头、键盘和鼠标等。
然而,现有的USB通信在数据传输时也存在一些问题。例如:当数据量较大时,USB的传输速度相对较慢;USB数据传输过程容易受到电磁干扰,存在数据丢失的风险;在多设备数据传输的场景下,容易因设备之间存在冲突而导致数据传输错误的现象。
因此,由于存在数据传输速度慢、数据丢失风险高和设备冲突等问题,而不能充分满足当前数据传输的需求,影响数据传输的准确性和效率。
发明内容
基于此,有必要针对上述技术问题,提供一种USB数据传输方法、装置、计算机设备及存储介质,以解决现有的USB数据传输速度慢、数据丢失风险高和设备冲突而传错的问题。
一种USB数据传输方法,包括:
以预设数据传输速度接收主设备发送的待传输数据;所述预设数据传输速度根据所述待传输数据的数据量信息确定;所述待传输数据包括从设备端口标识,所述从设备端口标识用于确定所述待传输数据与从设备的对应关系;
根据预设字节长度和所述从设备端口标识将所述待传输数据拆分为多个数据包;
根据预设压缩规则对所有所述数据包进行压缩处理,获得与各所述数据包分别对应的多个压缩数据包,对每一所述压缩数据包添加对应的数据包校验码;
在根据所述从设备端口标识确定存在与所述待传输数据对应的多个从设备之后,将所有所述压缩数据包存入缓存区域,并根据各所述从设备的优先级信息生成缓存队列;
将所有所述压缩数据包按照所述缓存队列发送到与所述待传输数据对应的从设备,以使各所述从设备接收所述压缩数据包,并根据所述数据包校验码对每一所述压缩数据包进行解压和校验处理,完成对所述待传输数据的传输。
一种USB数据传输装置,包括:
待传输数据接收模块,用于以预设数据传输速度接收主设备发送的待传输数据;所述预设数据传输速度根据所述待传输数据的数据量信息确定;所述待传输数据包括从设备端口标识,所述从设备端口标识用于确定所述待传输数据与从设备的对应关系;
数据拆分模块,用于根据预设字节长度和所述从设备端口标识将所述待传输数据拆分为多个数据包;
数据压缩模块,用于根据预设压缩规则对所有所述数据包进行压缩处理,获得与各所述数据包分别对应的多个压缩数据包,对每一所述压缩数据包添加对应的数据包校验码;
缓存队列生成模块,用于在根据所述从设备端口标识确定存在与所述待传输数据对应的多个从设备之后,将所有所述压缩数据包存入缓存区域,并根据各所述从设备的优先级信息生成缓存队列;
数据发送模块,用于将所有所述压缩数据包按照所述缓存队列发送到与所述待传输数据对应的从设备,以使各所述从设备接收所述压缩数据包,并根据所述数据包校验码对每一所述压缩数据包进行解压和校验处理,完成对所述待传输数据的传输。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,所述处理器执行所述计算机可读指令时实现上述USB数据传输方法。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令被一个或多个处理器执行时,使得所述一个或多个处理器执行如上述USB数据传输方法。
上述USB数据传输方法、装置、计算机设备及存储介质,其方法以预设数据传输速度接收主设备发送的待传输数据;根据预设字节长度和从设备端口标识将待传输数据拆分为多个数据包,根据预设压缩规则对所有数据包进行压缩处理,获得与各数据包分别对应的多个压缩数据包;对每一压缩数据包添加对应的数据包校验码;在根据从设备端口标识确定存在与待传输数据对应的多个从设备之后,将所有压缩数据包存入缓存区域,并根据各从设备的优先级信息生成缓存队列;将所有压缩数据包按照缓存队列发送到与待传输数据对应的从设备,以使各从设备接收压缩数据包,并根据数据包校验码对每一压缩数据包进行解压和校验处理,完成对待传输数据的传输。本发明的USB数据传输方法根据需要传输数据的数据量调整数据传输速度以节省传输时间,通过对数据进行拆分和压缩,提高数据传输效率,并添加校验码减少数据丢失的风险。同时,在多设备数据传输的场景下,通过缓存队列避免了设备之间的冲突,保证了数据传输的准确性,提高了数据传输的整体效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中USB数据传输方法的一流程示意图;
图2是本发明一实施例中USB数据传输装置的一结构示意图;
图3是本发明一实施例中计算机设备的一示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在一实施例中,如图1所示,提供一种USB数据传输方法,包括如下步骤S10-S50。
S10、以预设数据传输速度接收主设备发送的待传输数据;所述预设数据传输速度根据所述待传输数据的数据量信息确定;所述待传输数据包括从设备端口标识,所述从设备端口标识用于确定所述待传输数据与从设备的对应关系。
可理解地,本实施例提供的USB数据传输方法可以应用在云平台的硬件设备之间进行数据传输的场景。云平台也称为云计算平台,是指基于硬件设备和软件资源的服务,提供计算、网络和存储能力,包括以数据存储为主的存储型云平台、以数据处理为主的计算型云平台以及计算和数据存储处理兼顾的综合型云平台。本实施例提供的USB数据传输方法涉及到USB主设备、USB服务系统和USB从设备。其中,主设备为数据发送端设备,用于将需要传输的数据通过USB端口发送到从设备,例如计算机主机。从设备为数据接收端设备,用于通过USB端口接收主设备发送的数据,例如4G模块。USB服务系统负责通过管理USB端口的资源实现主设备和从设备之间的数据传输,例如带宽。
在主设备和从设备的USB端口中均设置有多个端点,端点是一个数据缓冲区,用于存放和发送数据。每一个端点都有唯一确定的地址,根据不同的传输特性可以分为输入端点、输出端点和配置端点。主设备可以通过USB端口与一个或多个从设备连接,在连接并匹配成功之后,USB服务系统对从设备进行设备枚举。设备枚举是通过USB服务系统获取各从设备的配置信息,对端点进行枚举配置,配置是属于枚举的一个暂时的状态,例如接入态(Attached)、供电态(Powered)、缺省态(Default)、地址态(Address)和挂起态(Suspended)。其中,在从设备配置完成之前,从设备可以通过缺省态的缺省地址和主设备进行数据传输;在从设备配置完成之后,从设备通过分配的唯一地址和主设备进行数据传输;在没有数据传输任务时,USB端口处于空闲状态,则从设备自动进入挂起状态。此外,当USB服务系统监测到待传输数据之后,在接收主设备发送的待传输数据之后,还需要判断传输的字节数据量是否达标,若不达标,则重新进行设备枚举。
数据传输速度指的是待传输数据从主设备到USB端口的速度,即USB服务系统从主设备读取数据的速度。预设数据传输速度是预先设置的与待传输数据的数据量对应的传输速度。在本实施例中,可以预先划分待传输数据的数据量等级,根据不同的数据量等级设置对应的预设数据传输速度。例如,当待传输数据的数据量为(10~100MB)等级时,对应的预设数据传输速度为10MB/s。
待传输数据是USB服务系统从主设备读取到的数据,即主设备需要经过USB端口传输到从设备的数据。待传输数据可以是主设备中需要传输到同一个从设备的数据,也可以是主设备中需要传输到多个不同从设备的数据。待传输数据包括从设备端口标识,从设备端口标识用于确定待传输数据与从设备的对应关系。
S20、根据预设字节长度和所述从设备端口标识将所述待传输数据拆分为多个数据包。
可理解地,预设字节长度是预先设置的用于拆分待传输数据后限定每个数据包的字节数的字节长度,例如当预设字节长度为20时,则以20字节为一组拆分待传输数据,得到多个数据包,最后一组不满20字节的直接作为一个数据包。当待传输数据是主设备中需要传输到同一个从设备的数据时,所有从设备端口标识都相同,直接根据预设字节长度进行拆分。当待传输数据是主设备中需要传输到多个不同从设备的数据时,则先将从设备端口标识相同的待传输数据划为一个数据集合,再根据预设字节长度对各个数据集合进行单独拆分。
S30、根据预设压缩规则对所有所述数据包进行压缩处理,获得与各所述数据包分别对应的多个压缩数据包,对每一所述压缩数据包添加对应的数据包校验码。
可理解地,数据压缩是按照预先设定的算法对数据进行编码的过程,可以在不丢失有用信息的前提下缩减数据量以减少存储空间,提高数据传输、存储和处理效率。预设压缩规则是预先设定的用于对待传输数据进行编码的算法规则。在本实施例中,通过将数据包中的待编码字符和已编码字符串进行匹配,根据匹配结果按照预设压缩规则进行编码,获得编码输出。每个数据包的编码输出共同组成了与数据包对应的压缩数据包。为了避免数据传输过程中出现数据缺失和错误,还需要对每个压缩数据包添加对应的数据包校验码。
S40、在根据所述从设备端口标识确定存在与所述待传输数据对应的多个从设备之后,将所有所述压缩数据包存入缓存区域,并根据各所述从设备的优先级信息生成缓存队列。
可理解地,在将压缩数据包发送到从设备之前,还需要根据从设备端口标识确定待传输数据对应的从设备数量,从而采用不同的发送方式。在根据从设备端口标识确定仅存在一个与待传输数据对应的从设备时,通过USB端口将所有压缩数据包直接发送到同一个从设备。在根据从设备端口标识确定存在与待传输数据对应的多个从设备时,则需要将所有压缩数据包先存入缓存区域,并根据各从设备的优先级信息生成缓存队列中压缩数据包的顺序,按照顺序将缓存队列中的压缩数据包发送到不同的从设备。缓存区域是指在内存空间中预先设置的存储区域,用于缓冲需要向从设备发送的数据,也可以称为输出缓冲区。在本实施例中,采用环形缓冲区的方式管理缓存区域,设置指向数据的首指针和尾指针,形成首尾相连的数据结构。在数据进入缓存区域之后,使用环形缓冲区的首指针来指向缓存队列中的第一个压缩数据包。环形缓冲区存满之后,则根据首指针中取出压缩数据包,根据尾指针重新指向新增的压缩数据包,即缓存队列中的最后一个压缩数据包。优先级信息是在多个从设备接收数据时表示先后顺序的信息,每个从设备的优先级不同,优先级越高的从设备越先接收数据,对应的待传输数据的压缩数据包在缓存队列中的位置越靠前。
S50、将所有所述压缩数据包按照所述缓存队列发送到与所述待传输数据对应的从设备,以使各所述从设备接收所述压缩数据包,并根据所述数据包校验码对每一所述压缩数据包进行解压和校验处理,完成对所述待传输数据的传输。
可理解地,为避免数据堵塞和数据丢失,本实施例将所有压缩数据包按照缓存队列的顺序发送到与待传输数据对应的不同从设备,即按照先进先出的原则从缓存区域中取出压缩数据包。各从设备接收压缩数据包,并根据数据包校验码对每一压缩数据包进行解压和校验处理,获得待传输数据的还原数据,完成对待传输数据的传输。
本实施例以预设数据传输速度接收主设备发送的待传输数据;根据预设字节长度和从设备端口标识将待传输数据拆分为多个数据包,根据预设压缩规则对所有数据包进行压缩处理,获得与各数据包分别对应的多个压缩数据包;对每一压缩数据包添加对应的数据包校验码;在根据从设备端口标识确定存在与待传输数据对应的多个从设备之后,将所有压缩数据包存入缓存区域,并根据各从设备的优先级信息生成缓存队列;将所有压缩数据包按照缓存队列发送到与待传输数据对应的从设备,以使各从设备接收压缩数据包,并根据数据包校验码对每一压缩数据包进行解压和校验处理,完成对待传输数据的传输。本实施例的USB数据传输方法根据需要传输数据的数据量调整数据传输速度以节省传输时间,通过对数据进行拆分和压缩,提高数据传输效率,并添加校验码减少数据丢失的风险。同时,在多设备数据传输的场景下,通过缓存队列避免了设备之间的冲突,保证了数据传输的准确性,提高了数据传输的整体效率。本实施例的USB数据传输方法能够有效提高USB通信速度、降低数据丢失率、避免设备冲突,使USB数据传输更快速、更灵活、更可靠。
在一实施例中,步骤S20中,即所述根据预设字节长度和所述从设备端口标识将所述待传输数据拆分为多个数据包,包括:
S201、获取所述待传输数据中具有相同从设备端口标识的数据,作为待分组数据;
S202、根据预设字节长度将所述待分组数据拆分成多个数据包,并生成每一所述数据包的分组信息。
可理解地,当待传输数据是主设备中需要传输到多个不同从设备的数据时,则先将从设备端口标识相同的待传输数据划为一个数据集合,作为待分组数据。然后根据预设字节长度对各个数据集合内部的数据进行拆分,获得多个数据包,并生成每一数据包的分组信息。分组信息是表示拆分后每个数据包对应的分组顺序和字节长度的信息,例如当前数据包是与从设备端口标识A对应的第2个数据包,包含20个字节,则当前数据包的分组信息为(A2,20)。
本实施例先根据从设备端口标识将待传输数据划分为数据集合,再根据预设字节长度将每个数据集合拆分为多个数据包,减小了数据传输的带宽。同时,通过生成每一数据包的分组信息,保证了对数据包进行还原的准确性。
在一实施例中,步骤S10中,即所述以预设数据传输速度接收主设备发送的待传输数据之前,还包括:
S101、获取所述待传输数据的数据量信息,将所述数据量信息与预设数据量阈值进行比较;
S102、若所述数据量信息大于所述预设数据量阈值,则确认所述预设数据传输速度为第一预设数据传输速度;
S103、若所述数据量信息小于或等于所述预设数据量阈值,则确认所述预设数据传输速度为第二预设数据传输速度,所述第二预设数据传输速度小于所述第一预设数据传输速度。
可理解地,在实际的应用场景中,并不是每次传输数据都采用额定的数据传输速度,可以根据实际的应用场景条件、设备负载条件或数据量条件调整数据传输速度的大小。数据量信息指的是所有待传输数据的字节长度之和,预设数据量阈值是预先设定的用于区分数据量等级的数据量临界值,可以由系统默认设置,也可以根据需要进行修改。第一预设数据传输速度是对应于大数据量等级的数据传输速度,第二预设数据传输速度是对应于小数据量等级的数据传输速度。在本实施例中,可以预先划分待传输数据的数据量等级,根据不同的数据量等级设置对应的预设数据传输速度。例如,预设数据量阈值为10MB,当待传输数据的数据量大于10MB时,对应的第一预设数据传输速度为10MB/s,当待传输数据的数据量小于10MB时,对应的第二预设数据传输速度为1MB/s。
本实施例通过将数据量信息与预设数据量阈值进行比较调整数据传输速度,在传输大数据量等级的数据时,提高数据传输速度以节省传输时间。
在一实施例中,步骤S30中,即所述根据预设压缩规则对所有所述数据包进行压缩处理,获得与各所述数据包分别对应的多个压缩数据包,包括:
S301、将所述数据包的字符串输入数据压缩窗口,所述数据压缩窗口包括编码窗口区和待编码区,所述字符串的输入方向为从所述待编码区朝向所述编码窗口区的方向;
S302、在所述字符串中的至少一位字符从所述待编码区进入所述编码窗口区时,则对所述待编码区的待编码字符与所述编码窗口区的已编码字符进行匹配,获得匹配结果,所述匹配结果包括匹配距离、匹配长度和匹配字符;
S303、根据所述匹配距离、所述匹配长度和所述匹配字符生成一个三元组编码;
S304、当所述字符串的所有字符均已从所述待编码区进入所述编码窗口区之后,获得与所述数据包对应的所有所述三元组编码生成所述数据包的编码结果;
S305、根据所述编码结果生成与各所述数据包分别对应的多个压缩数据包。
可理解地,本实施例的预设压缩规则采用基于动态字典的压缩算法,通过在数据字符串中虚拟一个滑动的窗口作为数据压缩窗口,数据压缩窗口包括编码窗口区和待编码区。编码窗口区和待编码区中的字符数量是固定的,编码窗口区中的字符是已经编码的字符,即已编码字符;待编码区中的字符是即将编码的字符,即待编码字符。编码窗口区中的所有字符序列构成了一个字典,由于窗口是滑动的,因此字典也是实时变化的,形成了动态字典。当已编码字符中存在与待编码字符相同的字符时,则判定匹配成功,并与下一个待匹配字符共同继续匹配,直至找出最长匹配位数的字符。匹配结果中的匹配距离指的是与待编码字符匹配成功的已编码字符在编码窗口区中的字符位数距离,匹配长度指的是待编码字符中匹配成功的字符数,匹配字符指的是下一个即将编码的字符。匹配距离、匹配长度和匹配字符共同组成一个三元组编码,作为一次编码的输出。
在本实施例中,数据压缩窗口包含20个字符位,编码窗口区包含10个字符位,待编码区包含10个字符位。当数据包中字符串的字符为“abcdbbccaaabaeaaabac”时,将字符串从待编码区朝向编码窗口区的方向输入数据压缩窗口。数据压缩窗口的初始状态为编码窗口区没有字符,待编码区中的10个字符为“abcdbbccaa”,在待编码区中的第一个待编码字符“a”进入编码窗口区时,将待编码区的待编码字符“a”与编码窗口区的已编码字符进行匹配。由于此时编码窗口区中没有字符,所以匹配距离和匹配长度均为0,匹配字符为“a”,则生成的三元组编码为(0,0,a)。如下表1所示,数据压缩窗口的状态更新为编码窗口区中的字符为“a”,待编码区中的10个字符为“bcdbbccaaa”,在待编码区中的第一个待编码字符“b”进入编码窗口区时,将待编码区的待编码字符“b”与编码窗口区的已编码字符进行匹配。此时编码窗口区中的字符“a”与待编码字符“b”不相同,则匹配距离和匹配长度均为0,匹配字符为“b”,生成的三元组编码为(0,0,b)。
表1数据压缩窗口的编码状态
根据预设压缩规则继续进行压缩编码,生成的三元组编码为(0,0,c)、(0,0,d)、(1,1,b)、(1,2,c)、(0,1,a)、(0,2,a)、(0,0,e)和(4,5,c)。其中,最后一次编码时,数据压缩窗口的状态更新为编码窗口区中的字符为“bbccaaabae”,待编码区中的字符为“aaabac”,在待编码区中的第一个待编码字符“a”进入编码窗口区时,将待编码区的待编码字符“a”与编码窗口区的已编码字符进行匹配。由于此时编码窗口区中的第5位字符“a”与待编码字符“a”相同,则将待编码区的待编码字符“aa”与编码窗口区的已编码字符进行匹配,对应的匹配距离为4。又由于此时编码窗口区中的第5位和第6位字符“aa”与待编码字符“aa”相同,则将待编码区的待编码字符“aaa”与编码窗口区的已编码字符进行匹配。直至将待编码区的待编码字符“aaabac”与编码窗口区的已编码字符进行匹配,编码窗口区中的第5~9位字符“aaaba”与待编码字符“aaaba”相同,但编码窗口区中的第10位字符“e”与待编码字符“c”不相同,则匹配长度为5,匹配字符为“c”,生成的三元组编码为(4,5,c)。
在本实施例中,当字符串的所有字符均已从待编码区进入编码窗口区之后,获得与数据包对应的所有三元组编码为(0,0,a)、(0,0,b)、(0,0,c)、(0,0,d)、(1,1,b)、(1,2,c)、(0,1,a)、(0,2,a)、(0,0,e)和(4,5,c),生成数据包的编码结果,并生成与当前数据包“abcdbbccaaabaeaaabac”对应的压缩数据包。压缩数据包可以表示为10个三元组编码,也可以表示为“abcdbbccaa”和3个三元组编码“(0,2,a)、(0,0,e)、(4,5,c)”的混合形式,当采用混合形式表示时,压缩之前的数据包由20个字符组成,压缩后的压缩数据包由10个字符和3个三元组编码组成,压缩数据包比压缩之前的数据包节省了一个字节空间。由此可知,在数据传输的过程中,数据量越大,可以节省的字节空间越多。
本实施例基于动态字典的压缩算法,在不损失数据质量的前提下实现压缩,压缩后的数据可以节省带宽,进一步提高数据传输速度。
在一实施例中,步骤S30中,即所述对每一所述压缩数据包添加对应的数据包校验码之前,还包括:
S306、获取每一所述数据包的字符串;
S307、根据预设检验规则对所述字符串进行校验计算,生成与每一所述数据包对应的所述压缩数据包的数据包校验码。
可理解地,在数据传输过程中,使用数据校验码来验证数据的完整性或准确性,以避免数据丢失或损坏。校验码是在数据传输过程中用于检测数据是否错漏的数据验证位。不同的协议有不同的校验码计算方法,可以仅仅对首部的数据进行校验码的计算,也可以对全部的数据进行计算。预设检验规则是预先设定的用于对数据包的字符进行计算而生成数据包校验码的计算规则,由于数据包和压缩数据包是一一对应的,因此为了避免压缩过程的数据失真,直接对压缩之前的数据包的字符串进行计算以生成数据包校验码。在本实施例中,根据不同的校验需求可以选择不同的校验码计算方法作为预设检验规则。当需要对数据完整性进行校验时,使用哈希算法对数据进行哈希计算得到压缩数据包的哈希值,作为数据包校验码。在从设备接收压缩数据包并解压后,需要再次对数据包计算哈希值,如果计算的结果与数据包校验码一致,则表示数据包完整。当需要对数据准确性进行校验时,使用循环冗余校核算法对数据进行除法和余数计算得到压缩数据包的数据包校验码。在从设备接收压缩数据包并解压后,需要再次对数据包计算余数值,如果计算的结果与数据包校验码一致,则表示数据包没有发生错误。
本实施例根据预设检验规则直接对数据包的字符串进行计算,生成压缩数据包的数据包校验码,可以保证数据包校验码的有效性,提高后续校验的准确性。
在一实施例中,步骤S40中,即所述根据各所述从设备的优先级信息生成缓存队列之前,还包括:
S401、根据所述从设备端口标识确定所述待传输数据中与每一所述从设备对应的从设备数据量信息;
S402、对所有与所述从设备对应的从设备数据量信息按照从小到大进行排列,获得排列结果;
S403、根据所述排列结果生成各所述从设备的优先级信息。
可理解地,从设备的优先级信息可以根据优先级判断规则自动生成,也可以根据实际需求通过人为操作手动配置生成。在本实施例中,默认为根据优先级判断规则自动生成,其中,优先级判断规则以从设备数据量信息作为判断对象,从设备数据量越小对应的优先级越高,从设备数据量信息是待传输数据中与各个从设备对应的数据量。例如,当主设备需要向从设备A、B和C传输数据时,则待传输数据包括分别带有从设备端口标识A、B和C的三部分数据。当带有从设备端口标识A的数据的数据量为20MB,带有从设备端口标识B的数据的数据量为60MB,带有从设备端口标识C的数据的数据量为100MB时,则从设备A的优先级最高,从设备C的优先级最低。
本实施例在主设备同时向多个从设备传输数据时,通过从设备数据量信息调整优先级以确定缓存队列,优先向从设备数据量较小的从设备发送数据,防止信号冲突,从而避免数据堵塞和数据丢失,提高了数据传输的整体效率。
在一实施例中,步骤S50中,即所述将所有所述压缩数据包按照所述缓存队列发送到与所述待传输数据对应的从设备之后,还包括:
S501、通过各所述从设备根据所述从设备端口标识接收所述压缩数据包;
S502、通过各所述从设备根据预设解压规则对每一所述压缩数据包进行解压处理,根据所述数据包校验码对解压后的每一所述压缩数据包进行校验处理,获得每一所述压缩数据包对应的数据包;
S503、通过各所述从设备获取每一所述数据包的分组信息,根据所述分组信息对所述数据包进行组合,生成所述待传输数据的还原数据。
可理解地,待传输数据包括从设备端口标识,在进行拆分和压缩之后,压缩数据包也会带有对应的从设备端口标识。USB服务系统发送压缩数据包到各个从设备,各个从设备判断压缩数据包对应的从设备端口标识是否与当前从设备一致,若一致,则接收压缩数据包。解压是压缩流程的逆过程,预设解压规则是预先设定的与预设压缩规则相反的算法规则。在本实施例中,当接收到压缩数据包中的三元组编码之后,对三元组编码中的匹配距离、匹配长度和匹配字符进行解压处理。若匹配距离和匹配长度均为0,则直接将匹配字符作为下一个解压的字符;若匹配距离和匹配长度至少有一个不为0,则根据匹配距离、匹配长度、匹配字符和已经解压的字符获得下一个解压的字符。由于每一个压缩数据包都具有数据校验码,因此解压后的字符还需要经过数据包校验码的校验处理,校验通过才可以确定与压缩数据包对应的数据包。例如,当压缩数据包中的三元组编码为(0,0,a)、(0,0,b)、(0,0,c)、(0,0,d)、(1,1,b)、(1,2,c)、(0,1,a)、(0,2,a)、(0,0,e)和(4,5,c)时,则压缩数据包对应的校验通过后数据包为“abcdbbccaaabaeaaabac”。为了获得待传输数据的还原数据,各个从设备根据每一个数据包的分组信息对各个数据包进行组合,保证数据按照正确的顺序排列。
本实施例通过各个从设备接收压缩数据包,对压缩数据包进行解压和校验,并对解压之后的数据进行组合,在多个环节上保证了还原数据与待传输数据的一致性,提高了数据传输的准确性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一实施例中,提供一种USB数据传输装置,该USB数据传输装置与上述实施例中USB数据传输方法一一对应。如图2所示,该USB数据传输装置包括待传输数据接收模块10、数据拆分模块20、数据压缩模块30、缓存队列生成模块40和数据发送模块50。各功能模块详细说明如下。
待传输数据接收模块10,用于以预设数据传输速度接收主设备发送的待传输数据;所述预设数据传输速度根据所述待传输数据的数据量信息确定;所述待传输数据包括从设备端口标识,所述从设备端口标识用于确定所述待传输数据与从设备的对应关系;
数据拆分模块20,用于根据预设字节长度和所述从设备端口标识将所述待传输数据拆分为多个数据包;
数据压缩模块30,用于根据预设压缩规则对所有所述数据包进行压缩处理,获得与各所述数据包分别对应的多个压缩数据包,对每一所述压缩数据包添加对应的数据包校验码;
缓存队列生成模块40,用于在根据所述从设备端口标识确定存在与所述待传输数据对应的多个从设备之后,将所有所述压缩数据包存入缓存区域,并根据各所述从设备的优先级信息生成缓存队列;
数据发送模块50,用于将所有所述压缩数据包按照所述缓存队列发送到与所述待传输数据对应的从设备,以使各所述从设备接收所述压缩数据包,并根据所述数据包校验码对每一所述压缩数据包进行解压和校验处理,完成对所述待传输数据的传输。
在一实施例中,数据拆分模块20包括:
待分组数据获取单元,用于获取所述待传输数据中具有相同从设备端口标识的数据,作为待分组数据;
数据包拆分单元,用于根据预设字节长度将所述待分组数据拆分成多个数据包,并生成每一所述数据包的分组信息。
在一实施例中,待传输数据接收模块10包括:
数据量信息比较单元,用于获取所述待传输数据的数据量信息,将所述数据量信息与预设数据量阈值进行比较;
第一预设数据传输速度确认单元,用于若所述数据量信息大于所述预设数据量阈值,则确认所述预设数据传输速度为第一预设数据传输速度;
第二预设数据传输速度确认单元,用于若所述数据量信息小于或等于所述预设数据量阈值,则确认所述预设数据传输速度为第二预设数据传输速度,所述第二预设数据传输速度小于所述第一预设数据传输速度。
在一实施例中,数据压缩模块30包括:
字符串输入单元,用于将所述数据包的字符串输入数据压缩窗口,所述数据压缩窗口包括编码窗口区和待编码区,所述字符串的输入方向为从所述待编码区朝向所述编码窗口区的方向;
字符匹配单元,用于在所述字符串中的一位字符从所述待编码区进入所述编码窗口区时,则对所述待编码区的待编码字符与所述编码窗口区的已编码字符进行匹配,获得匹配结果,所述匹配结果包括匹配距离、匹配长度和匹配字符;
三元组编码生成单元,用于根据所述匹配距离、所述匹配长度和所述匹配字符生成一个三元组编码;
编码结果生成单元,用于当所述字符串的所有字符均已从所述待编码区进入所述编码窗口区之后,获得与所述数据包对应的所有所述三元组编码生成所述数据包的编码结果;
压缩数据包生成单元,用于根据所述编码结果生成与各所述数据包分别对应的多个压缩数据包。
在一实施例中,数据压缩模块30还包括:
字符串获取单元,用于获取每一所述数据包的字符串;
数据包校验码生成单元,用于根据预设检验规则对所述字符串进行校验计算,生成与每一所述数据包对应的所述压缩数据包的数据包校验码。
在一实施例中,缓存队列生成模块40包括:
从设备数据量信息获取单元,用于根据所述从设备端口标识确定所述待传输数据中与每一所述从设备对应的从设备数据量信息;
从设备数据量信息排列单元,用于对所有与所述从设备对应的从设备数据量信息按照从小到大进行排列,获得排列结果;
优先级信息生成单元,用于根据所述排列结果生成各所述从设备的优先级信息。
在一实施例中,数据发送模块50包括:
压缩数据包接收单元,用于通过各所述从设备根据所述从设备端口标识接收所述压缩数据包;
数据包解压单元,用于通过各所述从设备根据预设解压规则对每一所述压缩数据包进行解压处理,根据所述数据包校验码对解压后的每一所述压缩数据包进行校验处理,获得每一所述压缩数据包对应的数据包;
数据包组合单元,用于通过各所述从设备获取每一所述数据包的分组信息,根据所述分组信息对所述数据包进行组合,生成所述待传输数据的还原数据。
关于USB数据传输装置的具体限定可以参见上文中对于USB数据传输方法的限定,在此不再赘述。上述USB数据传输装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括可读存储介质、内存储器。该可读存储介质存储有操作系统、计算机可读指令和数据库。该内存储器为可读存储介质中的操作系统和计算机可读指令的运行提供环境。该计算机设备的数据库用于存储USB数据传输方法所涉及的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机可读指令被处理器执行时以实现一种USB数据传输方法。本实施例所提供的可读存储介质包括非易失性可读存储介质和易失性可读存储介质。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机可读指令,处理器执行计算机可读指令时实现以下步骤:
以预设数据传输速度接收主设备发送的待传输数据;所述预设数据传输速度根据所述待传输数据的数据量信息确定;所述待传输数据包括从设备端口标识,所述从设备端口标识用于确定所述待传输数据与从设备的对应关系;
根据预设字节长度和所述从设备端口标识将所述待传输数据拆分为多个数据包;
根据预设压缩规则对所有所述数据包进行压缩处理,获得与各所述数据包分别对应的多个压缩数据包,对每一所述压缩数据包添加对应的数据包校验码;
在根据所述从设备端口标识确定存在与所述待传输数据对应的多个从设备之后,将所有所述压缩数据包存入缓存区域,并根据各所述从设备的优先级信息生成缓存队列;
将所有所述压缩数据包按照所述缓存队列发送到与所述待传输数据对应的从设备,以使各所述从设备接收所述压缩数据包,并根据所述数据包校验码对每一所述压缩数据包进行解压和校验处理,完成对所述待传输数据的传输。
在一个实施例中,提供了一个或多个存储有计算机可读指令的计算机可读存储介质,本实施例所提供的可读存储介质包括非易失性可读存储介质和易失性可读存储介质。可读存储介质上存储有计算机可读指令,计算机可读指令被一个或多个处理器执行时实现以下步骤:
以预设数据传输速度接收主设备发送的待传输数据;所述预设数据传输速度根据所述待传输数据的数据量信息确定;所述待传输数据包括从设备端口标识,所述从设备端口标识用于确定所述待传输数据与从设备的对应关系;
根据预设字节长度和所述从设备端口标识将所述待传输数据拆分为多个数据包;
根据预设压缩规则对所有所述数据包进行压缩处理,获得与各所述数据包分别对应的多个压缩数据包,对每一所述压缩数据包添加对应的数据包校验码;
在根据所述从设备端口标识确定存在与所述待传输数据对应的多个从设备之后,将所有所述压缩数据包存入缓存区域,并根据各所述从设备的优先级信息生成缓存队列;
将所有所述压缩数据包按照所述缓存队列发送到与所述待传输数据对应的从设备,以使各所述从设备接收所述压缩数据包,并根据所述数据包校验码对每一所述压缩数据包进行解压和校验处理,完成对所述待传输数据的传输。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,所述的计算机可读指令可存储于一非易失性可读取存储介质或易失性可读存储介质中,该计算机可读指令在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种USB数据传输方法,其特征在于,包括:
以预设数据传输速度接收主设备发送的待传输数据;所述预设数据传输速度根据所述待传输数据的数据量信息确定;所述待传输数据包括从设备端口标识,所述从设备端口标识用于确定所述待传输数据与从设备的对应关系;
根据预设字节长度和所述从设备端口标识将所述待传输数据拆分为多个数据包;
根据预设压缩规则对所有所述数据包进行压缩处理,获得与各所述数据包分别对应的多个压缩数据包,对每一所述压缩数据包添加对应的数据包校验码;
在根据所述从设备端口标识确定存在与所述待传输数据对应的多个从设备之后,将所有所述压缩数据包存入缓存区域,并根据各所述从设备的优先级信息生成缓存队列;
将所有所述压缩数据包按照所述缓存队列发送到与所述待传输数据对应的从设备,以使各所述从设备接收所述压缩数据包,并根据所述数据包校验码对每一所述压缩数据包进行解压和校验处理,完成对所述待传输数据的传输。
2.如权利要求1所述的USB数据传输方法,其特征在于,所述根据预设字节长度和所述从设备端口标识将所述待传输数据拆分为多个数据包,包括:
获取所述待传输数据中具有相同从设备端口标识的数据,作为待分组数据;
根据预设字节长度将所述待分组数据拆分成多个数据包,并生成每一所述数据包的分组信息。
3.如权利要求1所述的USB数据传输方法,其特征在于,所述以预设数据传输速度接收主设备发送的待传输数据之前,还包括:
获取所述待传输数据的数据量信息,将所述数据量信息与预设数据量阈值进行比较;
若所述数据量信息大于所述预设数据量阈值,则确认所述预设数据传输速度为第一预设数据传输速度;
若所述数据量信息小于或等于所述预设数据量阈值,则确认所述预设数据传输速度为第二预设数据传输速度,所述第二预设数据传输速度小于所述第一预设数据传输速度。
4.如权利要求1所述的USB数据传输方法,其特征在于,所述根据预设压缩规则对所有所述数据包进行压缩处理,获得与各所述数据包分别对应的多个压缩数据包,包括:
将所述数据包的字符串输入数据压缩窗口,所述数据压缩窗口包括编码窗口区和待编码区,所述字符串的输入方向为从所述待编码区朝向所述编码窗口区的方向;
在所述字符串中的至少一位字符从所述待编码区进入所述编码窗口区时,则对所述待编码区的待编码字符与所述编码窗口区的已编码字符进行匹配,获得匹配结果,所述匹配结果包括匹配距离、匹配长度和匹配字符;
根据所述匹配距离、所述匹配长度和所述匹配字符生成一个三元组编码;
当所述字符串的所有字符均已从所述待编码区进入所述编码窗口区之后,获得与所述数据包对应的所有所述三元组编码生成所述数据包的编码结果;
根据所述编码结果生成与各所述数据包分别对应的多个压缩数据包。
5.如权利要求1所述的USB数据传输方法,其特征在于,所述对每一所述压缩数据包添加对应的数据包校验码之前,还包括:
获取每一所述数据包的字符串;
根据预设检验规则对所述字符串进行校验计算,生成与每一所述数据包对应的所述压缩数据包的数据包校验码。
6.如权利要求1所述的USB数据传输方法,其特征在于,所述根据各所述从设备的优先级信息生成缓存队列之前,还包括:
根据所述从设备端口标识确定所述待传输数据中与每一所述从设备对应的从设备数据量信息;
对所有与所述从设备对应的从设备数据量信息按照从小到大进行排列,获得排列结果;
根据所述排列结果生成各所述从设备的优先级信息。
7.如权利要求2所述的USB数据传输方法,其特征在于,所述将所有所述压缩数据包按照所述缓存队列发送到与所述待传输数据对应的从设备之后,还包括:
通过各所述从设备根据所述从设备端口标识接收所述压缩数据包;
通过各所述从设备根据预设解压规则对每一所述压缩数据包进行解压处理,根据所述数据包校验码对解压后的每一所述压缩数据包进行校验处理,获得每一所述压缩数据包对应的数据包;
通过各所述从设备获取每一所述数据包的分组信息,根据所述分组信息对所述数据包进行组合,生成所述待传输数据的还原数据。
8.一种USB数据传输装置,其特征在于,包括:
待传输数据接收模块,用于以预设数据传输速度接收主设备发送的待传输数据;所述预设数据传输速度根据所述待传输数据的数据量信息确定;所述待传输数据包括从设备端口标识,所述从设备端口标识用于确定所述待传输数据与从设备的对应关系;
数据拆分模块,用于根据预设字节长度和所述从设备端口标识将所述待传输数据拆分为多个数据包;
数据压缩模块,用于根据预设压缩规则对所有所述数据包进行压缩处理,获得与各所述数据包分别对应的多个压缩数据包,对每一所述压缩数据包添加对应的数据包校验码;
缓存队列生成模块,用于在根据所述从设备端口标识确定存在与所述待传输数据对应的多个从设备之后,将所有所述压缩数据包存入缓存区域,并根据各所述从设备的优先级信息生成缓存队列;
数据发送模块,用于将所有所述压缩数据包按照所述缓存队列发送到与所述待传输数据对应的从设备,以使各所述从设备接收所述压缩数据包,并根据所述数据包校验码对每一所述压缩数据包进行解压和校验处理,完成对所述待传输数据的传输。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,其特征在于,所述处理器执行所述计算机可读指令时实现如权利要求1至7中任一项所述USB数据传输方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,其特征在于,所述计算机可读指令被一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1至7中任一项所述USB数据传输方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310541258.1A CN116594948B (zh) | 2023-05-12 | 2023-05-12 | Usb数据传输方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310541258.1A CN116594948B (zh) | 2023-05-12 | 2023-05-12 | Usb数据传输方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116594948A CN116594948A (zh) | 2023-08-15 |
CN116594948B true CN116594948B (zh) | 2024-06-21 |
Family
ID=87607454
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310541258.1A Active CN116594948B (zh) | 2023-05-12 | 2023-05-12 | Usb数据传输方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116594948B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116862578B (zh) * | 2023-09-05 | 2024-02-02 | 销生客(北京)数字科技有限公司 | 一种基于区块链技术的互联网营销管理系统及方法 |
CN117478617B (zh) * | 2023-11-03 | 2024-04-19 | 石家庄常宏智能科技有限公司 | 一种多功能物联网关数据快速传输方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111200479A (zh) * | 2018-11-19 | 2020-05-26 | 福建天泉教育科技有限公司 | 传输数据的校验方法、存储介质 |
CN111865557A (zh) * | 2019-04-24 | 2020-10-30 | 杭州萤石软件有限公司 | 一种校验码生成方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009003677A (ja) * | 2007-06-21 | 2009-01-08 | Nec Electronics Corp | Usbホスト、usbスレーブ、無線通信方式、及びデータ転送方法 |
CN112468407A (zh) * | 2020-12-15 | 2021-03-09 | 东莞中国科学院云计算产业技术创新与育成中心 | 数据分包传输方法、装置、计算机设备和存储介质 |
CN115065732B (zh) * | 2022-06-08 | 2023-08-11 | 珠海格力电器股份有限公司 | 数据传输方法、装置、电子设置及存储介质 |
-
2023
- 2023-05-12 CN CN202310541258.1A patent/CN116594948B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111200479A (zh) * | 2018-11-19 | 2020-05-26 | 福建天泉教育科技有限公司 | 传输数据的校验方法、存储介质 |
CN111865557A (zh) * | 2019-04-24 | 2020-10-30 | 杭州萤石软件有限公司 | 一种校验码生成方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN116594948A (zh) | 2023-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116594948B (zh) | Usb数据传输方法、装置、计算机设备及存储介质 | |
US11023412B2 (en) | RDMA data sending and receiving methods, electronic device, and readable storage medium | |
US11212703B2 (en) | Method, apparatus and equipment for determining transport block size | |
US10936404B2 (en) | Technologies for error detection in compressed data streams | |
US11966585B2 (en) | Storage device and storage system | |
WO2022143536A1 (zh) | 基于APSoC的国密计算方法、系统、设备及介质 | |
CN113872735A (zh) | 数据传输方法、装置及设备 | |
CN104317716A (zh) | 分布式节点间的数据传输方法及分布式节点设备 | |
CN113452475B (zh) | 数据传输方法、装置及相关设备 | |
CN119226205A (zh) | 一种数据处理的方法及装置 | |
CN114172998B (zh) | 一种文件传输方法、装置、电子设备及存储介质 | |
CN103731424B (zh) | 一种网络数据的传输方法、装置及系统 | |
CN111918363B (zh) | 配网方法及装置 | |
WO2021036189A1 (zh) | Rdma数据发送及接收方法、电子设备及可读存储介质 | |
CN114157716B (zh) | 基于区块链的数据处理方法、装置和电子设备 | |
WO2022111326A9 (zh) | 一种数据传输方法、装置、电子设备和存储介质 | |
CN109587083B (zh) | 数据传输方法及相关装置 | |
CN115065694A (zh) | 一种云存储数据中转上传系统、方法、设备及介质 | |
CN115904488A (zh) | 数据传输方法、系统、装置及设备 | |
CN114172894A (zh) | 数据传输方法、装置、服务器和计算机设备 | |
US20190124180A1 (en) | Packet compression and decompression | |
CN114880148B (zh) | 数据处理方法、装置及计算机可读存储介质 | |
WO2018202151A1 (zh) | 通信方法和通信装置 | |
CN114817100B (zh) | 一种用于单板的数据读取方法和装置 | |
CN114760009B (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 |