CN109561395A - 一种蓝牙传输方法及装置 - Google Patents

一种蓝牙传输方法及装置 Download PDF

Info

Publication number
CN109561395A
CN109561395A CN201811495892.1A CN201811495892A CN109561395A CN 109561395 A CN109561395 A CN 109561395A CN 201811495892 A CN201811495892 A CN 201811495892A CN 109561395 A CN109561395 A CN 109561395A
Authority
CN
China
Prior art keywords
data
packets
packet
sub
transmitted
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
CN201811495892.1A
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.)
Qingdao Hisense Electronics Co Ltd
Original Assignee
Qingdao Hisense Electronics 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 Qingdao Hisense Electronics Co Ltd filed Critical Qingdao Hisense Electronics Co Ltd
Priority to CN201811495892.1A priority Critical patent/CN109561395A/zh
Publication of CN109561395A publication Critical patent/CN109561395A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • 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
    • H04W28/065Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information using assembly or disassembly of packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明实施例提供一种蓝牙传输方法及装置,涉及数据传输领域。本发明实施例能够利用蓝牙广播信道传输大数据,从而提高蓝牙Mesh灯这类设备的使用效率。该方法包括:数据发送装置获取待传输数据;数据发送装置将待传输数据分为n个分段数据;数据发送装置根据n个分段数据生成n个数据分包;数据发送装置通过蓝牙广播信道,依次发送n个数据分包;数据接收装置接收蓝牙广播信道的广播信号并从中获取n个数据分包;数据接收装置根据n个数据分包生成待传输数据。本发明应用于数据传输。

Description

一种蓝牙传输方法及装置
技术领域
本发明涉及数据传输领域,尤其涉及一种蓝牙传输方法及装置。
背景技术
目前,现有的蓝牙传输标准中都规定有广播数据的最大长度,这就导致在现有的蓝牙传输标准下,通过广播途径传输的数据内容都不能太大。
但随着蓝牙Mesh灯等技术的发展,很多的应用场景下若采用广播方式传输大数据则可以大大提高蓝牙Mesh灯这类设备的使用效率。但现有的蓝牙传输标准中对广播数据包的最大长度都有明确的规定,这就限制了利用广播方式所能传输数据量的大小,从而影响蓝牙Mesh灯这类设备的使用效率。
发明内容
本发明提供一种蓝牙传输方法及装置,能够利用蓝牙广播信道传输大数据,从而提高蓝牙Mesh灯这类设备的使用效率。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,本发明实施例提供一种数据传输方法,包括:数据发送装置获取待传输数据;数据发送装置在获取待传输数据之后,将待传输数据分为n个分段数据;数据发送装置根据n个分段数据生成n个数据分包;数据发送装置在根据n个分段数据生成n个数据分包之后,通过蓝牙广播信道,依次发送n个数据分包;数据接收装置在数据发送装置依次发送n个数据分包之后,接收蓝牙广播信道的广播信号并从中获取n个数据分包;数据接收装置在获取n个数据分包之后,根据n个数据分包生成待传输数据。
第二方面,本发明实施例提供一种数据发送装置,数据发送装置包括:获取单元,用于获取待传输数据;分段单元,用于在获取单元获取待传输数据之后,将待传输数据分为n个分段数据;封装单元,用于在分段单元将待传输数据分为n个分段数据之后,根据n个分段数据生成n个数据分包;发送单元,用于在封装单元根据n个分段数据生成n个数据分包之后,通过蓝牙广播信道,依次发送n个数据分包;以使得数据接收装置在数据发送装置依次发送n个数据分包之后,接收蓝牙广播信道的广播信号并从中获取n个数据分包;并且使得数据接收装置在获取n个数据分包之后,根据n个数据分包生成待传输数据。
第三方面,本发明实施例提供一种数据接收装置,数据接收装置包括:接收单元,用于在数据发送装置获取待传输数据,并将待传输数据分为n个分段数据,并且根据n个分段数据生成n个数据分包,并且通过蓝牙广播信道依次发送n个数据分包之后,接收蓝牙广播信道的广播信号并从中获取n个数据分包;数据处理单元,用于在接收单元获取n个数据分包之后,根据n个数据分包生成待传输数据。
本发明实施例通过将待传输数据分为多个分段数据,然后再将分段数据封装为数据分包并利用蓝牙广播信道将数据分包进行传输,之后数据接收装置在接收到n个数据分包之后通过解析、组包的方式获取待传输数据,从而能够利用蓝牙广播信道传输大数据,提高了蓝牙Mesh灯等设备的使用效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为现有蓝牙传输标准中定义的蓝牙广播数据的结构示意图;
图2为本发明实施例提供的一种数据传输方法的流程示意图;
图3为本发明实施例提供的一种数据分包的帧结构示意图;
图4为本发明实施例中四个数据分包的数据结构示意图;
图5为本发明实施例中四个数据分包中的Seg Desc字段的内容示意图;
图6为本发明实施例提供的一种数据发送装置的结构示意图;
图7为本发明实施例提供的一种数据接收装置的结构示意图;
图8为本发明实施例提供的一种数据传输系统的结构示意图;
图9为本发明实施例提供的一种数据传输的流程示意图。
具体实施方式
下面结合附图,对本发明的实施例进行描述。
在本发明实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本发明实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。此外,在本发明实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。
首先,对本发明的发明原理进行介绍:目前,在蓝牙传输标准中规定了两种传输方式,一种是广播方式,另一种为GATT(Generic Attribute Profil通用属性协议)读写方式。对于广播方式,在各个版本的蓝牙传输标准中都有定义,以蓝牙协议4.2为例,在BLUETOOTHSPECIFICATION Version 4.2[Vol 3,Part C]中对蓝牙广播数据的帧结构有着相应的定义,如图1所示,其中在蓝牙协议4.2中要求广播数据包的最大长度为31个字节,其中可能会由多个广播结构体(AD Structure)组成,每个广播结构体又是由“长度(Length)-广播类型(AD Type)-数据(AD Data)”组成,其中广播类型决定着数据的意义,长度和广播类型各占1个字节,所以假设一个广播数据包有n(n≥1)个广播结构体,那么其实际上真正有效的数据是31-n×2个字节。很显然,当n=1时,广播的有效数据个数最大,为29个;当n变大时,相应的有效数据个数会变的更小。
而在上述蓝牙协议中之所以会将广播数据包的长度规定的这么短,则是由于现有技术中利用蓝牙广播方式进行传输的数据内容都不会太大。例如一些典型的应用场景,像蓝牙耳机发起广播以与手机连接上,它的广播包可能只需要表明它是个耳机的身份,它的名字就可以了;另外像蓝牙Beacon,它的广播内容通常是一句欢迎语例如“欢迎进入**店”或者“**产品八八折”。而当蓝牙设备之间需要进行大数据传输时,通常则会在蓝牙设备之间先建立连接,然后再利用GATT的读写操作来实现大数据的传输。
基于上述现有技术,本发明发明人发现,随着蓝牙技术的发展,蓝牙技术应用的场景越来越丰富。在一些特殊的应用场景中,例如蓝牙Mesh灯,在蓝牙Mesh灯进行设备的入网配置时,Mesh网的控制器和灯之间会有很多的数据交互,例如一些密钥数据(像是ApplicationKey,NetworkKey等),这些用于消息的加密和解密的密钥数据通常为64字节。因此由于这些密钥数据的长度过大,现有技术中只能先在控制器和Mesh灯之间建立蓝牙连接再通过GATT的读写操作来实现这些密钥数据的传输。这样一来就存在以下问题:由于一个蓝牙设备所支持的蓝牙连接个数是有限的,所以控制器通过GATT的读写操作传输数据时能够同时接收到该数据的Mesh灯的个数也是有限的。这就使得在设置蓝牙Mesh灯进行设备的入网配置时,若蓝牙Mesh灯的个数较多,则需要分批进行配置,无法统一完成配置工作。
针对上述问题,本发明中考虑到如果能够通过蓝牙广播信道来传输上述应用场景中的密钥数据等大数据,则既能够规避蓝牙连接的个数限制对数据传输的影响,而且还能够简化数据传输的步骤,避免在数据传输之前建立蓝牙连接的过程。由此,本发明中提出一种基于蓝牙广播信道的蓝牙传输方法,通过在数据发送端对数据量较大的待传输数据进行拆分发送,在数据接收端对数据分包进行组包的方式,使得蓝牙广播信道能够支持大数据的传输。从而解决了上述技术问题。
实施例一:
基于上述发明构思,本发明实施例提供一种数据传输方法,应用于蓝牙Mesh灯这类需要利用蓝牙通信进行大规模组网,或者其他可以通过蓝牙广播信道进行大数据传输以提高数据传输效率的场景中。如图2所示,本发明实施例提供的数据传输方法,具体包括:
S101、数据发送装置获取待传输数据。
示例性的,以蓝牙Mesh灯为例。数据发送装置可以为控制器,待传输数据可以为需要给蓝牙Mesh灯发送的密钥数据,例如ApplicationKey,NetworkKey等数据。
S102、数据发送装置判断待传输数据的数据量是否大于蓝牙广播信道中单个广播数据包所能容纳的最大数据量。
若待传输数据的数据量小于或等于蓝牙广播信道中单个广播数据包所能容纳的最大数据量,则执行步骤S103使用标准蓝牙广播接口发送所述待传输数据;若待传输数据的数据量大于蓝牙广播信道中单个广播数据包所能容纳的最大数据量,执行步骤S104将所述待传输数据分为n个分段数据。
具体的,以图1所示蓝牙协议4.2中的广播数据包为例,蓝牙协议4.2中的广播数据包的最大长度为31个字节,除去其中长度(Length)-广播类型(AD Type)所占字节(至少两个字节)之后,该广播数据包所能容纳的最大数据量实际上只有29个字节。因此就需要判断待传输数据的数据量是否大于29个字节,若没有大于29个字节则直接使用标准蓝牙广播接口广播即可,若待传输数据的数据量大于29个字节,则再执行本发明实施例所提供方法将待传输数据进行拆分的步骤。
本发明实施例所提供的方法中在获取待传输数据之后,通过检测待传输数据量大小并根据待传输数据量的大小选择合适的发送方式(具体的,数据量较大的待传输数据则选择将待传输数据分段,数据量较小的待传输数据则不用分段直接发送),从而既能够满足通过蓝牙广播信道传输大数据的需求,还不会影响通过蓝牙广播信道发送较小数据量的数据时的发送效率。
S103、使用标准蓝牙广播接口发送待传输数据。
其中使用标准蓝牙广播接口发送待传输数据的方式可以参照现有技术中利用蓝牙广播信道发送数据的方法,在此不再赘述。
S104、数据发送装置在获取待传输数据之后,将待传输数据分为n个分段数据。
具体的,在分割分段数据时,可以根据蓝牙协议中规定的广播数据包的最大长度,确定出一个广播数据包所能够容纳的数据内容的最大数据量,再按照这个最大数据量将待传输数据进行分割,生成n个分段数据。
S105、数据发送装置在将待传输数据分为n个分段数据之后,根据n个分段数据生成n个数据分包。
具体的,在得到n个分段数据之后,为了利用蓝牙广播信道传输分段数据,需要对每一个分段数据进行处理,例如增加包头信息、调整数据结构等步骤以生成符合蓝牙广播传输标准的帧结构,即生成数据分包。
在一种实现方式中,为了保证数据传输的可靠性,本发明实施例中还对生成的n个数据分包的帧结构进行了特殊的定义。具体的,在本发明实施例中,n个数据分包中的每个数据分包至少包括第一字段、第二字段以及第三字段。
其中,第一字段用于标识待传输数据,
例如第一字段中记录有待传输数据的序号,该序号用于唯一确认数据分包包括该待传输数据的分段数据。此时n个数据分包中每个数据分包的第一字段都记录有相同的序号。
第二字段用于确定数据分包是n个数据分包中的首个数据分包还是其他数据分包。
例如,第二字段具体包括一个比特,当数据分包为n个数据分包中的首个数据分包时,该比特为0;当数据分包为n个数据分包中的后续数据分包时,该比特为1。
n个数据分包中的首个数据分包中的第三字段,用于标记n的大小;n个数据分包中的除首个数据分包外的数据分包中的第三字段,用于标记数据分包所对应的数据分段在待传输数据中的位置。
例如,若待传输数据对应生成了5个数据分包,则5个数据分包中的首个数据分包的第三字段为5,第二个数据分包的第三字段为1,第三个数据分包的第三字段为2,第四个数据分包的第三字段为3,第五个数据分包的第三字段为4。
通过上述对帧结构的定义,可以实现当数据接收装置接收到首个数据分包时就可以立即获知待传输数据对应的数据分包有几个,以便于做好接收准备,例如可以预先在存储空间中开辟对应大小的空间用于存储数据等。并且,当数据接收装置接收到其他数据分包时,也可根据第三字段中的信息确定该数据分包在待传输数据中的位置。
示例性的,如图3所示,为本发明实施例提供的一种数据分包的帧结构。其中,一个数据分包由用于分包描述的包头Header域和分包广播数据Data域组成。其中Header域的第一个字节Length是用于描述数据分包的长度;第二个字节AD Type用于描述数据分包的广播类型,AD Type可以由用户或者厂商自定义,若自定义则AD Type字段的值为0xFF。上述Length和AD Type字段是由低功耗蓝牙的广播包格式而定义或者由低功耗蓝牙的规格书而定义的,本领域技术人员可以按照现有技术中的蓝牙传输协议,完成Length和AD Type字段的设置,在此不再赘述。
Header域的第三个字节Sequence,即本发明实施例中的第一字段,用来记录待传输数据的序号,这个序号可由应用层来唯一确定待传输数据以避免不同序号的分包相互混淆,同一个待传输数据的所有分包都使用同一个Sequence以表征他们是对同一个待传输数据的数据分包。Header域的第四字节分包描述符域Seq Desc,其中的bit0-bit1为控制域Ctl,bit2-bit7为数据分包序号SegNum,并且Ctl与SegNum的对应关系如下表1所示,目前我们的Ctl只用到两个值0b00和0b01,用来分别标识该数据分包是首个数据分包还是后面的数据分包。
表1
具体的,当Ctl=0b00时,表示这个数据分包是对某一个Sequence的首个数据分包,此时的SegNum的值等于该待传输数据所拆分后的最后一个包的序号,所以当蓝牙接收装置接收到Ctl=0b00的分包时就可以立刻获知到这个Sequence的数据一共会有多少个数据分包,以便于做好接收准备;当收到Ctl=0b01的数据分包时,表示这是一个后续分包,此时的SegNum的值等于该数据分包在所有数据分包中的偏移序号,通过Ctl和SegNum和Length,接收方就能够确定它收到的每个数据分包对应到原始数据的哪个位置上,从而完成待传输数据的还原。以上Ctl字段即为本发明实施例中的第二字段,SegNum字段即为本发明实施例中的第三字段。
例如,若待传输数据对应生成了5个数据分包,则5个数据分包中的首个数据分包的Ctl=0b00、SegNum=5,第二个数据分包的Ctl=0b01、SegNum=1,第三个数据分包的Ctl=0b01、SegNum=2,第四个数据分包的Ctl=0b01、SegNum=3,第五个数据分包的Ctl=0b01、SegNum=4。
另外,图3中分包广播数据Data域包括的Segment m字段则用于存储真实的有效数据,即待传输数据的分段数据。若规定在蓝牙广播信道中广播数据包的最大长度为31个字节,则减去Header域的4个字节,那么Data域最长可容纳27个字节的数据。
示例性的,假设现在有一个待传输数据,其长度为K Bytes,程序首先会计算得到需要拆分为多少个数据分包,公式如下:
当K<=29时,不需要拆包,直接使用标准蓝牙广播接口广播即可;
当K>29时,如果K能被27整除,则最大数据分包序号等于K/27;如果K不能被27整除,则最大数据分包序号等于K/27+1。
举例说明,假设现在有一个长度为100字节,数据内容为0x00的待传输数据。该待传输数据的Sequence设定为0x12,其经过拆包后的生成四个数据分包,数据分包0、数据分包1、数据分包2、数据分包3,四个数据分包的数据结构如图4所示。具体的,四个数据分包中的Seg Desc字段如图5所示。
通过上述对帧结构的定义,可以实现利用蓝牙广播信道传输数据量较大的待传输数据的效果。当数据接收装置接收到首个数据分包时就可以立即获知待传输数据对应的数据分包有几个,以便于做好接收准备,例如可以预先在存储空间中开辟对应大小的空间用于存储数据等。并且,当数据接收装置接收到其他数据分包时,也可根据第三字段中的信息确定该数据分包在待传输数据中的位置。
另外,考虑到待传输数据的数据量越大,需要划分的分段数据的个数也就越多,生成的数据分包也就越多。那么此时用于标识数据分包数量n或者用于标识数据分包位置的第三字段所需要的长度就越长。而第三字段占用的比特位数越多,则每个数据分包中所能携带的有效数据也就越少。示例性的,以图3所示帧结构为例,当SegNum只占用6个bit,则其值最大为63(0x3F),所以在这种帧结构中可以支持到64个数据分包,即最大能支持(63+1)*27=1728个字节的待传输数据。当将SegNum字段扩展一个字节时,此时SegNum字段占用14个bit,其最大值为16383(0x3FFFF),此时其最大能支持(16383+1)*25=409600个字节的待传输数据。但与此同时,随着SegNum字段的扩展,会占用原本用于填充有效数据的bit,这就会导致数据分包个数的增加从而影响传输效率。
因此,在一种实现方式中,为了合理规划数据分包中第三字段和有效数据所在的Data域的长度,本发明实施例中,在上述步骤S105在将待传输数据进行划分之前还可以包括:
根据数据发送装置根据待传输数据的数据量,确定分段数据的最大数据量以及第三字段占用的比特个数。
具体的,当待传输数据的数量越大时,则第三字段占用的比特个数也越多,进而分段数据的最大数据量越少。
本发明中通过根据待传输数据的数据量来确定分段数据的最大数据量以及第三字段占用的比特个数的方式,能够灵活调整第三字段的长度,以实现保证数据传输效率的效果。例如,当确定待传输数据的长度小于等于1728个字节时,则采用6个bit的SegNum字段,当确定待传输数据的长度大于1728个字节时,则采用14个bit的SegNum字段,从而保证数据传输的效率。
S106、通过蓝牙广播信道,依次发送n个数据分包。
具体的,在该步骤中可利用蓝牙协议栈中的蓝牙广播接口完成n个数据分包的发送任务。
S107、数据接收装置接收蓝牙广播信道的广播信号,并从中获取n个数据分包。
具体的,在数据发送装置通过蓝牙广播信道发送n个数据分包之后,一定范围内的数据接收装置都可以利用蓝牙扫描接口接收到该蓝牙广播信道的广播信号。本实施例中具体对其中一个数据接收装置的处理过程进行详述,容易理解的在一定范围内的所有数据接收装置都可以通过本发明实施例的方法同时接收到该广播信号并获取n个数据分包。
在一种实现方式中,结合上述步骤S105中所描述的数据分包的帧结构,本发明实施例步骤S107具体可以包括:
S1071、接收蓝牙广播信道的广播信号,并对广播信号中包含的广播数据包的第一字段进行解析,根据解析结果判断广播数据包是否为n个数据分包中的一个。
示例性的,以图3所示的帧结构为例,当获取到广播信号中的广播数据包后,对广播数据包中的Sequence字段进行解析,判断Sequence字段中的序号是否与待传输数据的序号一致。若一致则说明当前获取的广播数据包为n个数据分包中的一个,若不一致则说明不是进而对该广播数据包进行其他处理。
S1072、若确定广播数据包为n个数据分包中的一个,则根据广播数据包中的第二字段,判断广播数据包是否为n个数据分包中的首个数据分包。
若是,则根据广播数据包的第三字段确定n的大小;若否,则根据广播数据包的第三字段确定广播数据包为n个数据分包中的位置。
示例性的,继续以图3所示的帧结构为例,在利用广播数据包中的Sequence字段确定出该广播数据包为n个数据分包中的一个后,则根据广播数据包中的Ctl字段,确定该广播数据包是否为首个数据分包。
若Ctl字段为0,则说明该广播数据包为首个数据分包,进而根据SegNum字段即可确定待传输数据对应的数据分包的个数,即n的大小,进而可以预先开辟指定大小的内存空间以便存储数据;若Ctl字段为1,则说明该广播数据包为后续数据分包,进而根据SegNum字段即可确定当前接收到的广播数据包在n个数据分包中的位置,以便之后对数据进行组合生成待传输数据。
S1073、接收蓝牙广播信道的广播信号中的下一个广播数据包并重复S1071和S1072的步骤,直至获取到全部的n个数据分包。
另外,本发明实施例中,考虑到待传输数据的长度并不一定为Data域长度的整数倍,因此为了能够使数据接收装置准确获取到待传输数据。本发明实施例中,在将待传输数据分为n个分段数据时,具体包括:
根据蓝牙广播标准规定的广播数据包的最大长度,将待传输数据分为n个分段数据,以使得n各数据分包中的前n-1个数据分包的长度为广播数据包的最大长度。
进而,步骤S107具体还包括:当获取到作为n个数据分包中的最后一个数据分包的广播数据包时,根据广播数据包中的Length字段确定广播数据包中有效数据的长度。
S108、数据接收装置在获取到n个数据分包之后,根据n个数据分包生成待传输数据。
具体的,数据接收装置在获取到n个数据分包之后,通过对每个数据分包进行解析,从中获取分段数据以及获知分段数据在待传输数据中的位置,对分段数据进行拼接,从而生成待传输数据。最终实现利用蓝牙广播信道传输大数据的效果。
本发明实施例通过将待传输数据分为多个分段数据,然后再将分段数据封装为数据分包并利用蓝牙广播信道将数据分包进行传输,之后数据接收装置在接收到n个数据分包之后通过解析、组包的方式获取待传输数据,从而能够利用蓝牙广播信道传输大数据,提高了蓝牙Mesh灯等设备的使用效率。
实施例二:
本发明实施例还提供一种数据发送装置,用于执行上述实施例一所提供的数据传输方法。
如图6所示,该数据发送装置20包括:获取单元201、分段单元202、封装单元203、发送单元204。其中,
获取单元201,用于获取待传输数据;
分段单元202,用于在获取单元获取待传输数据之后,将待传输数据分为n个分段数据;
封装单元203,用于在分段单元将待传输数据分为n个分段数据之后,根据n个分段数据生成n个数据分包;
发送单元204,用于在封装单元根据n个分段数据生成n个数据分包之后,通过蓝牙广播信道,依次发送n个数据分包;以使得数据接收装置在数据发送装置依次发送n个数据分包之后,接收蓝牙广播信道的广播信号并从中获取n个数据分包;并且使得数据接收装置在获取n个数据分包之后,根据n个数据分包生成待传输数据。
可选的,n个数据分包中的每个数据分包至少包括第一字段、第二字段以及第三字段;第一字段用于标识待传输数据;第二字段用于确定数据分包是n个数据分包中的首个数据分包还是其他数据分包;n个数据分包中的首个数据分包中的第三字段,用于标记n的大小;n个数据分包中的除首个数据分包外的数据分包中的第三字段,用于标记数据分包所对应的数据分段在待传输数据中的位置。
可选的,数据发送装置20还包括:帧结构确定单元205;
帧结构确定单元205,用于在分段单元将待传输数据分为n个分段数据之前,根据待传输数据的数据量,确定分段数据的最大数据量以及第三字段占用的比特个数。
本发明实施例中提供的数据发送装置所解决的技术问题以及实现的技术效果可以参照上述实施例一的相应内容,在此不再赘述。
实施例三:
本发明实施例还提供一种数据接收装置,如图7所示,数据接收装置30包括:
接收单元301,用于在数据发送装置获取待传输数据,并将待传输数据分为n个分段数据,并且根据n个分段数据生成n个数据分包,并且通过蓝牙广播信道依次发送n个数据分包之后,接收蓝牙广播信道的广播信号并从中获取n个数据分包;
数据处理单元302,用于在接收单元获取n个数据分包之后,根据n个数据分包生成待传输数据。
可选的,n个数据分包中的每个数据分包至少包括第一字段、第二字段以及第三字段;第一字段用于标识待传输数据;第二字段用于确定数据分包是n个数据分包中的首个数据分包还是其他数据分包;n个数据分包中的首个数据分包中的第三字段,用于标记n的大小;n个数据分包中的除首个数据分包外的数据分包中的第三字段,用于标记数据分包所对应的数据分段在待传输数据中的位置。
可选的,接收单元301具体包括接收子单元3011和解析子单元3012;其中,
接收子单元3011,用于接收蓝牙广播信道的广播信号,并对广播信号中包含的广播数据包的第一字段进行解析,根据解析结果判断广播数据包是否为n个数据分包中的一个;
解析子单元3012,用于若接收子单元确定广播数据包为n个数据分包中的一个,则根据广播数据包中的第二字段,判断广播数据包是否为n个数据分包中的首个数据分包;若是,则根据广播数据包的第三字段确定n的大小;若否,则根据广播数据包的第三字段确定广播数据包为n个数据分包中的位置。
本发明实施例中提供的数据接收装置所解决的技术问题以及实现的技术效果可以参照上述实施例一的相应内容,在此不再赘述。
实施例四:
本发明实施例还提供一种数据传输系统,如图8所示,该数据传输系统40中包括一个广播设备401以及多个接收设备402(如图中接收设备402-1、402-2……402-n)。其中广播设备401包括上述实施例中所提供的数据发送装置,每个接收设备402包括上述实施例中所提供的数据接收装置。该数据传输系统40的功能、结构以及所产生的技术效果,可以参照上述实施例一、二、三中对数据发送装置和数据接收装置的描述内容,在此不再赘述。
具体的,图9提供了一种数据传输系统40的数据传输的流程示意图。其中,广播设备401在获取到待传输数据之后,利用数据发送装置对待传输数据进行拆包处理生成n个数据分包,并控制蓝牙协议栈中的蓝牙广播接口将n个数据分包进行发送。接收设备402通过蓝牙扫描接口接收到n个数据分包,并利用数据接收装置对n个数据分包进行组包处理生成待传输数据。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统、设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(Digital Subscriber Line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

Claims (11)

1.一种数据传输方法,其特征在于,包括:
数据发送装置获取待传输数据;
所述数据发送装置在获取所述待传输数据之后,将所述待传输数据分为n个分段数据;
所述数据发送装置在将所述待传输数据分为n个分段数据之后,根据所述n个分段数据生成n个数据分包;
所述数据发送装置通过蓝牙广播信道,依次发送所述n个数据分包;
数据接收装置在所述数据发送装置依次发送所述n个数据分包之后,接收所述蓝牙广播信道的广播信号并从中获取所述n个数据分包;
所述数据接收装置在获取所述n个数据分包之后,根据所述n个数据分包生成所述待传输数据。
2.根据权利要求1所述数据传输方法,其特征在于,所述n个数据分包中的每个数据分包至少包括第一字段、第二字段以及第三字段;
所述第一字段用于标识所述待传输数据;
所述第二字段用于确定数据分包是n个数据分包中的首个数据分包还是其他数据分包;
所述n个数据分包中的首个数据分包中的第三字段,用于标记n的大小;所述n个数据分包中的除所述首个数据分包外的数据分包中的第三字段,用于标记数据分包所对应的数据分段在所述待传输数据中的位置。
3.根据权利要求2所述数据传输方法,其特征在于,所述数据接收装置接收所述蓝牙广播信道的广播信号并从中获取所述n个数据分包,具体包括:
接收所述蓝牙广播信道的广播信号,并对所述广播信号中包含的广播数据包的第一字段进行解析,根据解析结果判断所述广播数据包是否为n个数据分包中的一个;
若确定所述广播数据包为所述n个数据分包中的一个,则根据所述广播数据包中的第二字段,判断所述广播数据包是否为所述n个数据分包中的首个数据分包;若是,则根据所述广播数据包的第三字段确定n的大小;若否,则根据所述广播数据包的第三字段确定所述广播数据包为n个数据分包中的位置;
直至获取到所述n个数据分包。
4.根据权利要求2所述数据传输方法,其特征在于,在所述数据发送装置将所述待传输数据分为n个分段数据之前,所述方法还包括:
所述数据发送装置根据所述待传输数据的数据量,确定分段数据的最大数据量以及所述第三字段占用的比特个数。
5.根据权利要求1所述数据传输方法,其特征在于,在所述将所述待传输数据分为n个分段数据之前,所述方法还包括:
所述数据发送装置判断所述待传输数据的数据量是否大于蓝牙广播信道中单个广播数据包所能容纳的最大数据量;
若是,则将所述待传输数据分为n个分段数据;若否,则使用标准蓝牙广播接口发送所述待传输数据。
6.一种数据发送装置,其特征在于,所述数据发送装置包括:
获取单元,用于获取待传输数据;
分段单元,用于在所述获取单元获取所述待传输数据之后,将所述待传输数据分为n个分段数据;
封装单元,用于在所述分段单元将所述待传输数据分为n个分段数据之后,根据所述n个分段数据生成n个数据分包;
发送单元,用于在所述封装单元根据所述n个分段数据生成n个数据分包之后,通过蓝牙广播信道,依次发送所述n个数据分包;以使得所述数据接收装置在所述数据发送装置依次发送所述n个数据分包之后,接收所述蓝牙广播信道的广播信号并从中获取所述n个数据分包;并且使得所述数据接收装置在获取所述n个数据分包之后,根据所述n个数据分包生成所述待传输数据。
7.根据权利要求6所述数据发送装置,其特征在于,所述n个数据分包中的每个数据分包至少包括第一字段、第二字段以及第三字段;所述第一字段用于标识所述待传输数据;所述第二字段用于确定数据分包是n个数据分包中的首个数据分包还是其他数据分包;所述n个数据分包中的首个数据分包中的第三字段,用于标记n的大小;所述n个数据分包中的除所述首个数据分包外的数据分包中的第三字段,用于标记数据分包所对应的数据分段在所述待传输数据中的位置。
8.根据权利要求7所述数据发送装置,其特征在于,所述数据发送装置还包括:帧结构确定单元;
所述帧结构确定单元,用于在所述分段单元将所述待传输数据分为n个分段数据之前,根据所述待传输数据的数据量,确定分段数据的最大数据量以及所述第三字段占用的比特个数。
9.一种数据接收装置,其特征在于,所述数据接收装置包括:
接收单元,用于在数据发送装置获取待传输数据,并将所述待传输数据分为n个分段数据,并且根据所述n个分段数据生成n个数据分包,并且通过蓝牙广播信道依次发送所述n个数据分包之后,接收所述蓝牙广播信道的广播信号并从中获取所述n个数据分包;
数据处理单元,用于在所述接收单元获取所述n个数据分包之后,根据所述n个数据分包生成所述待传输数据。
10.根据权利要求9所述数据接收装置,其特征在于,所述n个数据分包中的每个数据分包至少包括第一字段、第二字段以及第三字段;所述第一字段用于标识所述待传输数据;所述第二字段用于确定数据分包是n个数据分包中的首个数据分包还是其他数据分包;所述n个数据分包中的首个数据分包中的第三字段,用于标记n的大小;所述n个数据分包中的除所述首个数据分包外的数据分包中的第三字段,用于标记数据分包所对应的数据分段在所述待传输数据中的位置。
11.根据权利要求10所述数据接收装置,其特征在于,所述接收单元具体包括接收子单元和解析子单元;其中,
所述接收子单元,用于接收所述蓝牙广播信道的广播信号,并对所述广播信号中包含的广播数据包的第一字段进行解析,根据解析结果判断所述广播数据包是否为n个数据分包中的一个;
所述解析子单元,用于若所述接收子单元确定所述广播数据包为所述n个数据分包中的一个,则根据所述广播数据包中的第二字段,判断所述广播数据包是否为所述n个数据分包中的首个数据分包;若是,则根据所述广播数据包的第三字段确定n的大小;若否,则根据所述广播数据包的第三字段确定所述广播数据包为n个数据分包中的位置。
CN201811495892.1A 2018-12-07 2018-12-07 一种蓝牙传输方法及装置 Pending CN109561395A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811495892.1A CN109561395A (zh) 2018-12-07 2018-12-07 一种蓝牙传输方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811495892.1A CN109561395A (zh) 2018-12-07 2018-12-07 一种蓝牙传输方法及装置

Publications (1)

Publication Number Publication Date
CN109561395A true CN109561395A (zh) 2019-04-02

Family

ID=65869388

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811495892.1A Pending CN109561395A (zh) 2018-12-07 2018-12-07 一种蓝牙传输方法及装置

Country Status (1)

Country Link
CN (1) CN109561395A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110708691A (zh) * 2019-09-30 2020-01-17 联想(北京)有限公司 一种信息处理方法和电子设备
CN110719573A (zh) * 2019-10-09 2020-01-21 Oppo广东移动通信有限公司 信息传输方法、装置、终端设备及存储介质
CN110769382A (zh) * 2019-10-09 2020-02-07 Oppo广东移动通信有限公司 消息推送方法、装置、终端设备及存储介质
CN111711941A (zh) * 2020-04-30 2020-09-25 杭州涂鸦信息技术有限公司 数据传输方法以及相关设备、装置
CN112055314A (zh) * 2019-06-28 2020-12-08 合肥炬芯智能科技有限公司 蓝牙广播通信方法、系统及其主设备、从设备
CN112333674A (zh) * 2020-10-30 2021-02-05 展讯半导体(成都)有限公司 数据传输方法、装置及设备
CN113747369A (zh) * 2020-05-29 2021-12-03 芯海科技(深圳)股份有限公司 广播数据处理方法、装置、计算机设备和存储介质
CN115915027A (zh) * 2022-11-15 2023-04-04 上海商米科技集团股份有限公司 低功耗蓝牙广播方法、装置和电子设备

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101932006A (zh) * 2009-06-19 2010-12-29 中兴通讯股份有限公司 数据包发送、接收、传输方法及装置
CN104661172A (zh) * 2015-01-26 2015-05-27 武汉健坤科技有限公司 基于蓝牙低功耗的扩展数据传输方法和系统
CN105657646A (zh) * 2016-01-29 2016-06-08 南京悦控智能科技有限公司 一种基于蓝牙4.0的设备间大数据通信方法
CN106817671A (zh) * 2017-02-14 2017-06-09 腾讯科技(深圳)有限公司 一种联网信息共享方法、第一终端及系统
CN107346981A (zh) * 2017-05-16 2017-11-14 北京数科技有限公司 数据发送方法、接收方法及数据发送装置、接收装置
CN107566972A (zh) * 2017-09-04 2018-01-09 马新禹 一种基于ble标准的蓝牙数据高速传输方法及装置
CN107682052A (zh) * 2017-08-29 2018-02-09 深圳市沃特玛电池有限公司 一种数据分包传输方法及系统
CN107959553A (zh) * 2017-02-21 2018-04-24 北京百瑞互联技术有限公司 提升蓝牙网络入网速度的方法
CN108235363A (zh) * 2017-12-30 2018-06-29 广东欧珀移动通信有限公司 终端无线数据传输方法、装置、终端及存储介质
CN108391237A (zh) * 2018-01-29 2018-08-10 北京怡和嘉业医疗科技股份有限公司 医疗器械数据的发送、接收方法和发送、接收设备
CN108463010A (zh) * 2018-02-06 2018-08-28 时瑞科技(深圳)有限公司 一种基于无线Mesh网络的近场音频收发系统及方法
CN108901012A (zh) * 2018-09-29 2018-11-27 深圳市恒昌通电子有限公司 一种低功耗蓝牙大数据分包传输方法

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101932006A (zh) * 2009-06-19 2010-12-29 中兴通讯股份有限公司 数据包发送、接收、传输方法及装置
CN104661172A (zh) * 2015-01-26 2015-05-27 武汉健坤科技有限公司 基于蓝牙低功耗的扩展数据传输方法和系统
CN105657646A (zh) * 2016-01-29 2016-06-08 南京悦控智能科技有限公司 一种基于蓝牙4.0的设备间大数据通信方法
CN106817671A (zh) * 2017-02-14 2017-06-09 腾讯科技(深圳)有限公司 一种联网信息共享方法、第一终端及系统
CN107959553A (zh) * 2017-02-21 2018-04-24 北京百瑞互联技术有限公司 提升蓝牙网络入网速度的方法
CN107346981A (zh) * 2017-05-16 2017-11-14 北京数科技有限公司 数据发送方法、接收方法及数据发送装置、接收装置
CN107682052A (zh) * 2017-08-29 2018-02-09 深圳市沃特玛电池有限公司 一种数据分包传输方法及系统
CN107566972A (zh) * 2017-09-04 2018-01-09 马新禹 一种基于ble标准的蓝牙数据高速传输方法及装置
CN108235363A (zh) * 2017-12-30 2018-06-29 广东欧珀移动通信有限公司 终端无线数据传输方法、装置、终端及存储介质
CN108391237A (zh) * 2018-01-29 2018-08-10 北京怡和嘉业医疗科技股份有限公司 医疗器械数据的发送、接收方法和发送、接收设备
CN108463010A (zh) * 2018-02-06 2018-08-28 时瑞科技(深圳)有限公司 一种基于无线Mesh网络的近场音频收发系统及方法
CN108901012A (zh) * 2018-09-29 2018-11-27 深圳市恒昌通电子有限公司 一种低功耗蓝牙大数据分包传输方法

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112055314A (zh) * 2019-06-28 2020-12-08 合肥炬芯智能科技有限公司 蓝牙广播通信方法、系统及其主设备、从设备
CN110708691A (zh) * 2019-09-30 2020-01-17 联想(北京)有限公司 一种信息处理方法和电子设备
CN110719573A (zh) * 2019-10-09 2020-01-21 Oppo广东移动通信有限公司 信息传输方法、装置、终端设备及存储介质
CN110769382A (zh) * 2019-10-09 2020-02-07 Oppo广东移动通信有限公司 消息推送方法、装置、终端设备及存储介质
CN110769382B (zh) * 2019-10-09 2021-10-22 Oppo广东移动通信有限公司 消息推送方法、装置、终端设备及存储介质
CN111711941A (zh) * 2020-04-30 2020-09-25 杭州涂鸦信息技术有限公司 数据传输方法以及相关设备、装置
CN111711941B (zh) * 2020-04-30 2023-10-24 杭州涂鸦信息技术有限公司 数据传输方法以及相关设备、装置
CN113747369A (zh) * 2020-05-29 2021-12-03 芯海科技(深圳)股份有限公司 广播数据处理方法、装置、计算机设备和存储介质
CN112333674A (zh) * 2020-10-30 2021-02-05 展讯半导体(成都)有限公司 数据传输方法、装置及设备
CN112333674B (zh) * 2020-10-30 2022-06-24 展讯半导体(成都)有限公司 数据传输方法、装置及设备
CN115915027A (zh) * 2022-11-15 2023-04-04 上海商米科技集团股份有限公司 低功耗蓝牙广播方法、装置和电子设备

Similar Documents

Publication Publication Date Title
CN109561395A (zh) 一种蓝牙传输方法及装置
CN106850402B (zh) 消息的传输方法和装置
US20210021466A1 (en) Methods and apparatus to convert router configuration data
CN108989286B (zh) 通用数据流的封装方法、解封装方法及装置
CN112039796B (zh) 数据包传输方法和装置、存储介质和电子设备
US20060083234A1 (en) Method and apparatus for transmitting and receiving data via wireless universal serial bus (WUSB)
KR101330900B1 (ko) 가변 프레임 크기를 가진 링크 상에서 더 높은 데이터 레이트를 지원하는 장치 및 방법
CN101894092A (zh) 多核cpu及其核间通信方法
CN113287329B (zh) 一种数据传输的方法及装置
CN112929419B (zh) 一种数据包传输方法、装置、电子设备及可读存储介质
CN110535812B (zh) 报文传输方法、通信装置和系统
CN108093041A (zh) 单通道vdi代理服务系统及实现方法
JP6929946B2 (ja) データ伝送方法、装置、送信端、受信端及びシステム
CN110545230B (zh) 用于转发vxlan报文的方法和装置
CN107078837A (zh) 一种协议帧传输方法、装置、节点设备以及系统
US9014188B2 (en) Communication system
CN113141520B (zh) 视频流传输方法、装置、电子设备及存储介质
CN113595966B (zh) 串口通信控制、配置、测试方法、装置、电子设备和存储介质
CN108449166B (zh) 一种FlexE中的数据转发方法及网络设备
CN111490907B (zh) 一种确定vxlan网络性能参数的方法及装置
CN114079675B (zh) 报文处理方法、装置、终端设备及移动宽带上网设备
US7688718B2 (en) Variable-sized packet support for enhanced synchronous connection oriented links over a USB interface
WO2022227484A1 (zh) 数据通信方法、装置、计算机设备和存储介质
CN114024598B (zh) 前传接口测试方法及装置
CN113196720B (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
CB02 Change of applicant information

Address after: 266555 Qingdao economic and Technological Development Zone, Shandong, Hong Kong Road, No. 218

Applicant after: Hisense Visual Technology Co., Ltd.

Address before: 266100 Zhuzhou Road, Laoshan District, Shandong, No. 151, No.

Applicant before: QINGDAO HISENSE ELECTRONICS Co.,Ltd.

CB02 Change of applicant information
RJ01 Rejection of invention patent application after publication

Application publication date: 20190402

RJ01 Rejection of invention patent application after publication