CN115296996A - 数据传输方法、空中升级方法、网络设备、网络系统 - Google Patents

数据传输方法、空中升级方法、网络设备、网络系统 Download PDF

Info

Publication number
CN115296996A
CN115296996A CN202210318906.2A CN202210318906A CN115296996A CN 115296996 A CN115296996 A CN 115296996A CN 202210318906 A CN202210318906 A CN 202210318906A CN 115296996 A CN115296996 A CN 115296996A
Authority
CN
China
Prior art keywords
packets
bluetooth
packet
data
broadcast
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.)
Granted
Application number
CN202210318906.2A
Other languages
English (en)
Other versions
CN115296996B (zh
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.)
Hangzhou C Sky Microsystems Co Ltd
Original Assignee
Hangzhou C Sky Microsystems 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 Hangzhou C Sky Microsystems Co Ltd filed Critical Hangzhou C Sky Microsystems Co Ltd
Priority to CN202210318906.2A priority Critical patent/CN115296996B/zh
Publication of CN115296996A publication Critical patent/CN115296996A/zh
Application granted granted Critical
Publication of CN115296996B publication Critical patent/CN115296996B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • 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/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • 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
    • 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)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请实施例提供了一种数据传输方法、空中升级方法、网络设备、网络系统,尤其适用于以RISC‑V架构指令集为基础、包括蓝牙通信芯片在内的被广泛应用的各类芯片;该数据传输方法应用于蓝牙网络的节点,包括:通过扩展广播承载层封装来自于网络层的待发送数据包对应的至少两个数据分包,得到对应的至少两个蓝牙扩展包,至少两个蓝牙扩展包中携带有同一广播事件标识,以及携带有用于至少指示数据分包的长度的包头信息;将至少两个蓝牙扩展包发送至蓝牙网络的节点。本申请的方案,可以通过一次蓝牙扩展广播发送尽量多的数据,最大化地利用了蓝牙扩展广播,大幅提高发包效率,使得本实施例提供的方案对空中升级等大包发送场景下有较高的应用价值。

Description

数据传输方法、空中升级方法、网络设备、网络系统
技术领域
本申请实施例涉及蓝牙技术领域,尤其涉及一种数据传输方法、空中升级方法、网络设备、网络系统。
背景技术
相对于Zigbee网络,蓝牙网络(蓝牙Mesh)能实现多点通信的同时,可通过任何支持蓝牙低能耗(BLE)的设备如智能手机进行通信,而无需专门的网关,这使得蓝牙Mesh在智能家居等物联网环境中具有广泛的应用。
蓝牙5.0标准中新增了蓝牙扩展广播,与传统的蓝牙广播相比,蓝牙扩展广播极大地提高了单次广播可发送的数据量。但是现有技术中并未存在将蓝牙扩展广播应用至蓝牙Mesh的方案。
发明内容
有鉴于此,本申请实施例提供一种数据传输方案,以至少部分解决上述问题。
根据本申请实施例的第一方面,提供了一种数据传输方法,应用于蓝牙网络的节点,所述方法包括:通过扩展广播承载层封装来自于网络层的待发送数据包对应的至少两个数据分包,得到对应的至少两个蓝牙扩展包,所述至少两个蓝牙扩展包中携带有同一广播事件标识,以及携带有用于至少指示所述数据分包的长度的包头信息;将所述至少两个蓝牙扩展包发送至所述蓝牙网络的节点。
根据本申请实施例的第二方面,提供了一种数据传输方法,应用于蓝牙网络的节点,所述方法包括:通过扩展广播承载层接收若干个蓝牙扩展包,将携带有同一广播事件标识的蓝牙扩展包确定为一组;根据所述蓝牙扩展包携带的用于至少指示所述数据分包的长度的包头信息,从一组蓝牙扩展包中提取出来自同一节点的至少两个数据分包。
根据本申请实施例的第三方面,提供了一种空中升级方法,应用于蓝牙网络中的节点,包括:确定待发送升级包;通过扩展广播承载层封装来自于网络层的待发送升级包对应的至少两个数据分包,得到对应的至少两个蓝牙扩展包,所述至少两个蓝牙扩展包中携带有同一广播事件标识,以及携带有用于至少指示所述数据分包的长度的包头信息;将所述至少两个蓝牙扩展包发送至所述蓝牙网络的节点,以使所述蓝牙网络的节点根据升级包进行升级。
根据本申请实施例的第四方面,提供了一种网络设备,包括:至少一个处理器和存储器;所述存储器存储计算机执行指令;所述至少一个处理器执行所述计算机执行指令,使得所述网络设备执行如上所述的方法。
根据本申请实施例的第五方面,提供了一种网络系统,至少包括:用于执行如上第一方面所述的方法的第一节点和用于执行如上第二方面所述的方法第二节点。
根据本申请实施例的第六方面,提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的数据传输方法。
根据本申请实施例的第七方面,提供了一种计算机程序产品,包括计算机指令,所述计算机指令指示计算设备执行如上所述的数据传输方法对应的操作。
根据本申请实施例提供的数据传输方案,在第一节点发送出至少两个蓝牙扩展包时,两个蓝牙扩展包中携带有同一广播事件标识,由此,使得接收端可以通过广播事件标识来将至少两个蓝牙扩展包进行聚合,避免与其他节点发出的蓝牙扩展包之间的混淆;另外,接收端通过携带有用于至少指示所述数据分包的长度的包头信息,可以方便地根据数据分包的长度,将数据分包从至少两个蓝牙扩展包中提取出来,便于后续进行正确解析,由此,可以通过一次蓝牙扩展广播发送尽量多的数据,最大化地利用了蓝牙扩展广播,大幅提高发包效率,使得本实施例提供的方案对空中升级等大包发送场景下有较高的应用价值。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种蓝牙网络的示意图;
图2为本申请实施例的一种基于蓝牙协议的示意图;
图3A为本申请实施例的一种数据传输方法的流程示意图;
图3B为本申请实施例的一种场景示意图;
图4A为本申请实施例的另一种数据传输方法的流程示意图;
图4B为本申请实施例的一种数据包的结构示意图;
图5为本申请实施例的又一种数据传输方法的流程示意图;
图6为本申请实施例的一种空中升级方法的流程示意图;
图7为本申请实施例的一种网络设备的结构示意图。
具体实施方式
为了使本领域的人员更好地理解本申请实施例中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请实施例一部分实施例,而不是全部的实施例。基于本申请实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本申请实施例保护的范围。
下面结合本申请实施例附图进一步说明本申请实施例具体实现。
图1为本申请实施例提供的一种蓝牙Mesh网络的示意图。
蓝牙Mesh网络是一种多对多网络(Many to Many)如图所示,蓝牙Mesh的网络可以包括多个节点,图1中以节点A-T为示例,多个节点之间基于蓝牙协议进行通信。
蓝牙Mesh网络中的节点可以包括蓝牙网关节点,蓝牙网关节点可以用于与其他网络进行通信,例如与Wifi网络、ZigBee网络等进行通信。蓝牙网关还可以作为入网管理器或者配置客户端,用于配置蓝牙mesh中的节点接入等。
蓝牙Mesh网络中还可以包括蓝牙中继节点、代理节点、友元节点等。图1中的双实线节点为中继节点relay node,具体包括图中的节点Q、R和S,图1中的双虚线节点为友元节点friend node,具体包括图中的节点O和P,代理节点在图中未示出。
蓝牙中继节点,主要负责消息转发,例如,中继节点Q、R和S可以将节点B的消息转发给节点H,这样,可以减少节点B和节点H之间的距离限制。代理节点负责为不属于蓝牙Mesh网络的蓝牙设备接入蓝牙Mesh网络中,以增加蓝牙Mesh网络的灵活性。友元节点可以用于暂存消息,例如为处于休眠状态的低功耗节点或者暂时连接失败的节点暂存消息,当低功耗节点切换至唤醒状态或者节点重新连接成功时,友元节点可以将暂存的数据发送至这些节点。
蓝牙Mesh网络中的节点还可以按照用电划分为长供电节点和低功耗节点(LowPower Node,LPN),长供电节点一般无休眠,低功耗节点存在休眠状态和唤醒状态。
长供电节点可以为直接连接于电源的节点,例如电灯、电脑、电视等电子设备。低功耗节点可以为通过充电宝、电池等供电的节点,例如耳机、蓝牙音箱等电子设备。
例如,图1中的单实线节点为长供电节点,具体包括图中的节点A、B、C、D、E、F、G、H、T;图1中的单虚线节点为低功耗节点,具体包括图中的节点I、J、K、M、N、,节点I、J、K对应有友元节点P,节点L、M和N对应有友元节点O。
为了更加清楚地对本申请的方案进行说明,下面先对蓝牙Mesh的协议栈进行说明。
参见图2,蓝牙Mesh的协议栈可以包括五层结构,分别为从底向上依次为:
承载层,bearer layer,用于定义Mesh节点传递网络消息的方式。承载层可以包括两种,分别为广播承载协议Advertising Bearer和通用广播承载协议GATT bearer。Advertising Bearer主要利用的是BLE GAP广播包实现消息的收发。GATT Bearer允许不支持Advertising Bearer的设备间接的与蓝牙mesh节点进行通讯,主要在蓝牙Mesh的代理节点中使用。
网络层,network layer,主要用于定义网络地址类型、定义输入输出过滤器、定义网络消息的加密和认证等。
底层传输层,lower Transport layer,用于把太长的传输层的包拆成若干个分给网络层,把短的网络层的包再组成一个长的传输层的PDU。
上层传输层,Upper Transport layer,用于加密、解密、授权等;
访问层,Access layer,用于将消息转换为Mesh协议规定的格式,以及将消息上传至指定应用。
为了支持蓝牙扩展广播,上述五层的基础上,还添加了:
扩展广播承载协议Extended advertising bearer、扩展通用广播承载协议Extended GATT bearer,位于承载层,主要用于定义Mesh节点以扩展蓝牙广播方式传递网络消息的方式。与GATT bearer类似,Extended GATT bearer也用于允许不支持ExtendedAdvertising Bearer的设备间接的与蓝牙mesh节点以蓝牙扩展广播的方式进行通讯。
扩展网络层,Extended network layer,主要用于定义用于扩展蓝牙广播的网络地址类型、定义输入输出过滤器、定义网络消息的加密和认证等
扩展底层传输层,Extended lower transport layer,用于把太长的传输层的包拆成若干个适用于蓝牙扩展广播的分包分给网络层,把短的网络层的包再组成一个长的适用于蓝牙扩展广播传输层的包。
在原有的蓝牙广播过程中,可以通过原有的五层协议栈发送或接收消息;当需要传输的数据量较大时,可以通过添加的扩展广播承载协议Extended advertising bearer、扩展网络层Extended network layer、扩展底层传输层Extended lower transport layer以及原有的访问层Access layer、上层传输层Upper Transport layer五层协议栈以蓝牙扩展广播的方式发送或接收消息。
下面对蓝牙扩展广播的实现进行说明。
蓝牙广播信道可以被抽象为两类,一种叫做主广播信道,另一种叫第二广播信道。具体在通过蓝牙扩展广播进行数据传输时,一般会通过主广播信道发送ADV_EXT_IND指令,其中携带有蓝牙扩展包的相关信息,还可携带有部分待发送数据;然后会通过第二广播信道发送蓝牙扩展包,蓝牙扩展包中可以携带有另一部分待发送数据。
若单个蓝牙扩展包中不足以携带全部数据,则发送端会在上一蓝牙扩展包中携带有下一蓝牙扩展包的信息。
接收端在通过主广播信道接收到ADV_EXT_IND指令后,可以根据其中携带的信息在第二广播信道上监听得到蓝牙扩展包;若接收到的蓝牙扩展包中还携带有下一蓝牙扩展包的信息,则可以继续在第二广播信号上监听得到蓝牙扩展包,直至接收到所有的蓝牙扩展包。
跟随ADV_EXT_IND指令的第一个蓝牙扩展包被称为Aux包,Aux包后续的其他蓝牙扩展包被称为Chain包。
上述方案主要应用于蓝牙的点对点传输过程中。但在蓝牙Mesh中存在多个蓝牙节点,其并非为点对点传输,而是多对多进行传输,而上述协议栈不支持指定大小的数据拆包、且缺少确认蓝牙扩展包的方案。若将蓝牙广播的方案直接应用于蓝牙Mesh网络,当一个节点先后两次通过蓝牙扩展广播的方式发送Chain包时,由于缺少确认蓝牙扩展包的方案,接收方会混淆两次发送的Chain包导致数据混乱。另外,由于蓝牙芯片的规格多种多样,不同种的蓝牙芯片支持的Aux包和Chain包的大小等存在差异,且上述协议栈不支持指定大小的数据拆包,在蓝牙Mesh网络中,接收方会接收到多种蓝牙芯片发出的规格各异的Chain包,导致接收方无法准确解析出Chain包中的分包包头导致数据解码失败。
上述原因会导致接收方极易出现数据混淆或者数据解码失败的情况发生。
因此,一般情况下,在蓝牙Mesh网络中通过蓝牙扩展广播进行数据传输时,会在单次蓝牙扩展广播中发送一个Aux包,后续不跟随Chain包。但是蓝牙扩展广播的主要优势为Aux包后续可以跟随多个Chain包,以提高发包效率。
为了更进一步地将蓝牙扩展广播的优势应用至蓝牙Mesh网络中,本申请提供了一种数据传输方案,应用于蓝牙网络的第一节点和第二节点,当然,需要说明的是,下述实施例中的第一节点为发送端、第二节点为接收端,第一节点可以为蓝牙Mesh中任意能够发送数据的节点,第二节点为蓝牙Mesh中任意能够接收数据的节点,图4A和图5中的虚线表示第一节点和第二节点的分界,本实施例对此不进行限定。
参见图3A,数据传输方法包括:
S301、通过第一节点的扩展广播承载层封装来自于网络层的待发送数据包对应的至少两个数据分包,得到对应的至少两个蓝牙扩展包。
所述至少两个蓝牙扩展包中携带有同一广播事件标识,以及携带有用于至少指示所述数据分包的长度的包头信息。
根据上述论述可知,蓝牙协议栈包括多层,待发送数据包每经过一层蓝牙协议栈会被进行一次处理,处理过程可以包括将待发送数据包进行加密、拆分、转换格式等。
示例地,当待发送数据包的数据量较多时,可以通过蓝牙协议栈中的AccessLayer将待发送数据包按照蓝牙扩展广播的格式进行封装,然后可以通过蓝牙协议栈中的Upper Transport Layer将封装后的待发送数据包进行加密,再通过Lower TransportLayer对加密后的待发送数据包拆分为多个数据分包,并传递至网络层Extended NextworkLayer;网络层可以将数据分包进行加密后传输至扩展广播承载层Extended Adv bearer。当然,上述仅对待发送数据包的发送过程进行示例性说明,其他方案也在本申请的保护范围内,只要能够将待发送数据包拆分为能够通过蓝牙扩展广播方式传输的数据分包即可,具体方案本领域的技术人员可根据蓝牙协议栈确定,在此不再赘述。
扩展广播承载层Extended advertising bearer在接收到至少两个数据分包后,可以确定这两个数据分包来源于同一待发送数据包。扩展广播承载层可以对接收到的待发送数据包进行处理,向其中增加用于至少指示所述数据分包的长度的包头信息以及向至少两个数据分包中增加同一广播事件标识,得到至少两个蓝牙扩展包。
每个蓝牙扩展包中可以包括数据分包的部分数据或全部数据,例如,第一个蓝牙扩展包中可以包括一个完整的数据分包,或者包括一个数据分包的一部分数据;第二个蓝牙扩展包可以一个完整的数据分包,或者可以包括两个数据分包的部分数据,本实施例对此不进行限定。
S302、将所述至少两个蓝牙扩展包发送至所述蓝牙网络的第二节点。
在获得至少两个蓝牙扩展包后,第一节点可以通过一次蓝牙扩展广播对应的广播事件将至少两个蓝牙扩展包发送至蓝牙网络中的第二节点。
S303、通过第二节点的扩展广播承载层接收若干个蓝牙扩展包,将携带有同一广播事件标识的蓝牙扩展包确定为一组。
由于同一节点发出的至少两个蓝牙扩展包中的携带有相同的广播事件标识,因此,第二节点可以通过接收到的多个蓝牙扩展包中携带的广播事件标识,将具有同一广播事件标识的确定为一组,即其来由同一个节点发送。
S304、根据所述蓝牙扩展包携带的用于至少指示所述数据分包的长度的包头信息,从一组蓝牙扩展包中提取出来自同一节点的至少两个数据分包。
由于包头信息至少指示数据分包的长度,因此,根据蓝牙扩展包中携带的由于指示数据分包长度的包头信息,可以从蓝牙扩展包中确定出多个数据分包,从而可以对数据分包进行正确地提取与解析。
下面通过一种具体地使用场景,对上述方案进行示例性说明。
以蓝牙Mesh中包括四个节点为例,如图3B所示,分别为节点1、节点2、节点3、节点4。
四个节点中,节点1先按照上述方案封装并通过一次蓝牙扩展广播发送了3个蓝牙扩展包,3个蓝牙扩展包中携带有相同的广播事件标识A;节点1又按照上述方案封装并再次通过蓝牙扩展广播发送了2个蓝牙扩展包,2个蓝牙扩展包中携带有相同的广播事件标识B;节点2按照上述方案将3个数据分包封装为了2个蓝牙扩展包,2个蓝牙扩展包中携带有相同的广播事件标识C;节点3按照上述方案将3个数据分包封装为了3个蓝牙扩展包,3个蓝牙扩展包中携带有相同的广播事件标识D。
节点4共接收到了6个蓝牙扩展包,其中3个蓝牙扩展包携带的广播事件标识为A,1个蓝牙扩展包携带的广播事件标识为B,一个蓝牙扩展包携带的广播事件标识为C,一个蓝牙扩展包携带的广播事件标识为D。则可以将3个携带的广播事件标识为A的蓝牙扩展包划分为一组,且确定来自节点1的第一组蓝牙扩展包已完整,则可以根据这三个蓝牙扩展包中用于指示数据分包的长度的包头信息,从三个蓝牙扩展包中提取出两个数据分包。
需要说明的是,上述广播事件标识A、B、C、D仅为示例性说明,具体的广播事件标识可以为一串数字或者一串字符串。节点进行蓝牙扩展广播时,可以在上一广播事件标识的基础上按照预设方案进行变更得到本次的广播事件标识,例如,在上一广播事件标识的基础上加1。
当所有节点均按照上述方案确定广播事件标识时,多个节点的广播事件标识可能存在重复,例如两个节点同时发送出了广播事件标识为A的蓝牙扩展包。为此,作为接收方的节点可以根据作为发送方的节点的地址来区分来自不同节点的蓝牙扩展包,并进一步根据广播事件标识区分来自于同一节点的蓝牙扩展包所对应的蓝牙广播事件。
本实施例提供的方案,在第一节点发送出至少两个蓝牙扩展包时,两个蓝牙扩展包中携带有同一广播事件标识,由此,使得接收端可以通过广播事件标识来将至少两个蓝牙扩展包进行聚合,避免与其他节点发出的蓝牙扩展包之间的混淆;另外,接收端通过携带有用于至少指示所述数据分包的长度的包头信息,可以方便地根据数据分包的长度,将数据分包从至少两个蓝牙扩展包中提取出来,便于后续进行正确解析,由此,可以通过一次蓝牙扩展广播发送尽量多的数据,最大化地利用了蓝牙扩展广播,大幅提高发包效率,使得本实施例提供的方案对空中升级等大包发送场景下有较高的应用价值。
本申请实施例中,参见图4A,为本申请实施例提供的一种数据传输方法的流程示意图,如图所示,其包括:
S401、若所述待发送数据包的长度大于所述蓝牙扩展包的包长度阈值,则通过第一节点的扩展底层传输层,按照所述蓝牙扩展包的包长度阈值,将待发送数据包拆分为至少两个数据分包,并传输至所述网络层。
本实施例中,蓝牙芯片可以包括多种类型,不同类型的蓝牙芯片对应的蓝牙扩展包的包长度阈值可能存在差异,包长度阈值的具体数值可由本领域的技术人员根据蓝牙芯片确定,在此不再赘述。
本步骤中,可通过扩展底层传输层,判断待发送数据包的长度是否大于所述蓝牙扩展包的包长度阈值;若大于,则可以通过扩展底层传输层按照所述蓝牙扩展包的包长度阈值,将待发送数据包拆分为至少两个数据分包,拆分完的数据分包的长度可以小于或等于包长度阈值。
扩展底层传输层对待发送数据包进行拆分后,可以将得到的至少两个数据分包传输至网络层,网络层可以将各个数据分包进行加密,并将加密后的数据分包传输至扩展广播承载层。
S402、通过第一节点的扩展广播承载层,按照标准广播数据包格式封装所述至少两个数据分包,得到至少两个标准广播包,以为所述至少两个数据分包分别增加用于至少指示所述数据分包的长度的包头信息。
本实施例中,标准广播数据包格式可以包括数据包本体以及包头信息,包头信息中可以用于指示数据包的长度信息,还可以用于指示数据包的类型。参见图4B,可以包括包头信息和数据包本体,数据包本体可以为来自网络层的数据分包,包头信息可以至少用于指示数据分包的长度,即AD-len字段,此外,包头信息还可以包括用于指示数据类型的type字段。
S403、通过第一节点的扩展广播承载层,将所述至少两个标准广播包封装为所述至少两个蓝牙扩展包。
参见图4B,示出了一种通过蓝牙扩展广播发送的数据包的结构示意图,如图所示,其包括:通过主广播信道发送的扩展广播指示包、跟随扩展广播指示包通过第二广播信道发送的蓝牙扩展包。
扩展广播指示包可以包括:包头部分header、有效载荷PDU。PDU中可以包括扩展头部长度部分Extended Header Length、数据类型部分AdvMode、扩展头部部分ExtendedHeader、广播数据部分AdvData。
包头部分header的数据可参考相关文件,在此不再赘述。
PDU中的扩展头部长度部分Extended Header Length用于指示扩展头部的长度。
数据类型部分AdvMode用于指示扩展广播类型。
扩展头部部分Extended Header是扩展广播指示包的核心组成部分,其中包括:用于标识头部可用内容的Extended Header Flags、广播地址AdvA、目标地址TargeA、用于标识广播信息的AdvDataInfo、用于指示蓝牙扩展包的位置及信道的AuxPtr等。
需要说明的是,用于标识广播信息的AdvDataInfo中可以包括广播数据标识DID,以及至少两个蓝牙扩展包对应的同一广播事件标识SID。
蓝牙扩展包可以包括:前缀部分Preamble、地址部分Access Address,以及有效载荷部分PDU,有效载荷部分可以为封装有数据分包的标准广播包。参见图4B,第一个数据分包的部分数据封装在AUX_ADV_IND中,第一个数据分包(Mesh_data_1)的另一部分数据被封装在AUX_CHAIN_IND中有效载荷的前半部分,第二个数据分包(Mesh_data_2)被封装在AUX_CHAIN_IND中有效载荷的后半部分。
本实施例中,前缀部分Preamble可以包括1~2Octet。地址部分Access Address可以包括4Octet,可以为广播信道的地址。
另外,由于蓝牙扩展包中前缀部分Preamble、地址部分Access Address以及有效载荷部分中的包头信息的长度可能发生变化,但一个蓝牙芯片中生成的蓝牙扩展包的大小阈值一定,可能导致一个数据分包不能完整地存在于一个蓝牙扩展包中的情况。此时,可以将该数据分包中不能存在于这一蓝牙扩展包的部分存储于下一蓝牙扩展包。
可选地,本实施例中,具体可以通过所述扩展广播承载层将所述至少两个数据分包注册至同一扩展广播事件中,以使得到的所述至少两个蓝牙扩展包中携带有同一广播事件标识。
具体注册扩展广播事件的方法可参考相关技术,在此不再赘述。
本实施例中,在注册扩展广播事件时,可以使用至少两个数据分包进行注册,使得至少两个数据分包被传输时携带的广播事件标识,通过在注册广播事件的方式使得至少两个蓝牙扩展包携带的广播事件标识相同,耗费的处理资源较少,且可以直接通过蓝牙协议栈进行实现,实现方便简单。当然,本申请其他实现方式中,也可以采用其他方式来统一至少两个数据分包被传输时携带的广播事件标识,本实施例对此不进行限定。
具体地,蓝牙广播信道可以被抽象为两类,一种叫做主广播信道,另一种叫第二广播信道。具体在通过蓝牙扩展广播进行数据传输时,一般会通过主广播信道发送ADV_EXT_IND指令,其中携带有蓝牙扩展包的相关信息;然后会通过第二广播信道发送蓝牙扩展包。则,至少两个蓝牙扩展包携带的同一广播事件标识可以位于蓝牙扩展包对应的通过主广播信道发送的ADV_EXT_IND中。
可选地,所述将所述至少两个标准广播包封装为所述至少两个蓝牙扩展包,包括:将所述至少两个标准广播包封装为辅助广告指示封包,以及跟随所述辅助广告指示封包发送的至少一个辅助链接指示封包,得到至少两个蓝牙扩展包。
本事实例中,辅助广告指示封包可以包括Aux包,跟随所述辅助广告指示封包发送的至少一个辅助链接指示封包可以为Chain包。由此,可以采用链式数据包的方式通过一次扩展广播事件发送大量数据,极大地提高了蓝牙Mesh的可传输数据量的上限。辅助广告指示封包和跟随其的辅助链接指示封包被连续依次发送,上一包中携带有下一个包的指示信息。
S404、通过第一节点,将所述至少两个蓝牙扩展包发送至所述蓝牙网络的第二节点。
上述步骤S401-S404可由蓝牙网络中任意具有发送数据包功能的第一节点执行。
S405、通过第二节点的扩展广播承载层接收若干个蓝牙扩展包,将携带有同一广播事件标识的蓝牙扩展包确定为一组。
S406、通过第二节点,根据所述蓝牙扩展包携带的用于至少指示所述数据分包的长度的包头信息,从一组蓝牙扩展包中提取出来自同一节点的至少两个数据分包。
步骤S404-S406的具体实现方式可参考上述实施例,在此不再赘述。
可选地,当第一节点发送的至少两个蓝牙扩展包包括辅助广告指示封包和跟随其的辅助链接指示封包时,步骤S404包括:通过所述扩展广播承载层,确定跟随所述辅助广告指示封包的辅助链接指示封包被全部接收;将携带有同一广播事件标识的辅助广告指示封包及跟随其的辅助链接指示封包进行聚合,得到聚合数据。
本申请实施例中,参见图5,为本申请实施例提供的一种数据传输方法的流程示意图,如图所示,其包括:
S501、通过蓝牙协议栈中的Access Layer将待发送数据包按照蓝牙扩展广播的格式进行封装,得到符合蓝牙扩展广播格式的应用程序报文Application Message;
S502、通过蓝牙协议栈中的Upper Transport Layer将封装后的待发送数据包进行加密,得到加密访问文件Encrypted Access Payload;
S503、通过Lower Transport Layer对加密后的待发送数据包拆分为多个数据分包Seg,并传递至网络层Extended Nextwork Layer;
S504、网络层可以将数据分包Seg进行加密后传输至扩展广播承载层ExtendedAdv bearer。
加密后的数据分包可记为Extened Transport PDU(Seg*),其中的*标识数据分包的顺序。
加密后的数据分包前后可以包括进行解密的信息,例如数据分包Seg0头部可以包括IVI、NID、CTL、TTL、SEQ、SRC、DST,加密后的数据分包Seg0尾部可以包括NetMic。
IVI字段包含用于验证和加密此网络PDU的随机数中的IV索引的最低有效位。
NID字段包含一个7位网络标识符,允许更轻松地查找用于验证和加密此网络PDU的加密密钥和隐私密钥。
CTL字段用于确定消息是控制消息还是访问消息的一部分。
TTL字段是一个7位字段。该字段的初始值由传输层(lower transport layer,upper transport layer,access,)或应用程序设置,并在作为中继节点运行时由网络层使用。
SEQ字段是一个24位整数。组合的SEQ字段、IV索引字段和SRC字段对于该PDU是唯一值。
SRC字段是一个16位值,用于标识发起此网络PDU的元素。
DST字段是一个16位值,用于标识此网络PDU所指向的一个或多个元素。
NetMIC字段是一个32位或64位字段(取决于CTL位的值),用于验证DST和TransportPDU未更改。当CTL位为0时,NetMIC字段应为32位。当CTL位为1时,NetMIC字段应为64位。
S505、扩展广播承载层将来自网络层的数据分包seg依次更新到一个扩展广播事件中,每个来自网络层的数据分包seg分别通过标准广播数据包格式进行封装,得到至少两个标准广播包,并可以按照扩展广播要求对标准广播包进行再次封装,得到通过主广播信道发送的扩展广播指示包,以及通过第二广播信道发送的至少两个蓝牙扩展包(即Aux包和至少一个chain包),标准广播包作为数据封装在蓝牙扩展包中。
蓝牙扩展包对应的广播事件标识可以位于其跟随的扩展广播指示包中。
S506、通过主广播信道发送扩展广播指示包,以及通过第二广播信道发送蓝牙扩展包;
扩展广播指示包可以为ADV_EXT_IND,通过主广播信道37、38、39发送;蓝牙扩展包可以包括辅助广告指示封包AUX_ADV_IND(即Aux包),跟随所述辅助广告指示封包发送的至少一个辅助链接指示封包AUX_CHAIN_IND(即Chain包)。
S507、通过第二节点接收主广播信道的扩展广播指示包;
S508、根据扩展广播指示包监听第二广播信道,得到辅助广告指示封包AUX_ADV_IND(即Aux包);
S509、若Aux包被标记为完整包,则直接解析Aux包,否则继续根据Aux包监听第二广播信道,接收跟随Aux包的Chain包,直至根据接收到的Chain包确定后续不再跟随其他Chain包为止。
从接收到主广播信道传输的扩展广播指示包后可以开始计时,若通过计时器确定聚合超时,可以丢弃具有相同广播事件标识的蓝牙扩展包。
S510、将与作为结尾的蓝牙扩展包具有相同广播事件标识的其他蓝牙扩展包进行聚合,得到完整包,根据包头信息指示的数据分包的长度信息,解析完整包得到多个数据分包;
S511、通过Extended Transport Layer解析多个数据分包。
本实施例提供的方案,在第一节点发送出至少两个蓝牙扩展包时,两个蓝牙扩展包中携带有同一广播事件标识,由此,使得接收端可以通过广播事件标识来将至少两个蓝牙扩展包进行聚合,避免与其他节点发出的蓝牙扩展包之间的混淆;另外,接收端通过携带有用于至少指示所述数据分包的长度的包头信息,可以方便地根据数据分包的长度,将数据分包从至少两个蓝牙扩展包中提取出来,便于后续进行正确解析。
本申请实施例中,参见图6,为本申请实施例提供的一种空中升级方法的流程示意图,如图所示,其包括:
S601、确定待发送升级包;
S602、通过扩展广播承载层封装来自于网络层的待发送升级包对应的至少两个数据分包,得到对应的至少两个蓝牙扩展包,所述至少两个蓝牙扩展包中携带有同一广播事件标识,以及携带有用于至少指示所述数据分包的长度的包头信息;
S603、将所述至少两个蓝牙扩展包发送至所述蓝牙网络的节点,以使所述蓝牙网络的节点根据升级包进行升级。
空中升级(BLE OTA)是指使用空中无线方式实现设备固件升级的方法。具体主要包括通过无线方式下载升级包,并根据升级包更新设备固件的方案。
由于升级包的数据量较大,在蓝牙网络中传输的难度较大,而本实施例提供的方案,可以通过蓝牙扩展广播方便地以无线方式传输升级包,大幅度提高了发包效率,使得蓝牙设备的空中升级方案更加方便快捷。
参照图7,示出了本申请实施例提供的一种网络设备的结构示意图,本申请具体实施例并不对网络设备的具体实现做限定。
如图7所示,该网络设备可以包括:处理器(processor)702、通信接口(Communications Interface)704、存储器(memory)706、以及通信总线708、蓝牙通信模块712。
其中:
处理器702、通信接口704、以及存储器706通过通信总线708完成相互间的通信。
通信接口704,用于与其它网络设备或服务器进行通信。
处理器702,用于执行程序710,具体可以执行上述数据传输方法实施例中的相关步骤。
具体地,程序710可以包括程序代码,该程序代码包括计算机操作指令。
处理器702可能是CPU(central processing unit),或者是特定集成电路ASIC(Application Specific Integrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路。智能设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
RISC-V是一种基于精简指令集(RISC)原则的开源指令集架构,其可以应用于单片机和FPGA芯片等各个方面,具体可应用在物联网安全、工业控制、手机、个人计算机等领域,且由于其在设计时考虑了小型、快速、低功耗的现实情况,使得其尤其适用于仓库规模云计算机、高端移动电话和微小嵌入式系统等现代计算设备。随着人工智能物联网AIoT的兴起,RISC-V指令集架构也受到越来越多的关注和支持,并有望成为下一代广泛应用的CPU架构。
本申请实施例中的计算机操作指令可以是基于RISC-V指令集架构的计算机操作指令,对应地,处理器702可以基于RISC-V的指令集设计。具体地,本申请实施例提供的电子设备中的处理器的芯片可以为采用RISC-V指令集设计的芯片,该芯片可基于所配置的指令执行可执行代码,进而实现上述实施例中的数据传输方法或空中升级方法。
存储器706,用于存放程序710。存储器706可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序710中各步骤的具体实现可以参见上述数据传输方法实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
本申请实施例还提供了一种计算机程序产品,包括计算机指令,该计算机指令指示计算设备执行上述多个方法实施例中的任一数据传输对应的操作。
需要指出,根据实施的需要,可将本申请实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本申请实施例的目的。
上述根据本申请实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如CD ROM、RAM、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如ASIC或FPGA)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,RAM、ROM、闪存等),当所述软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的数据传输方法。此外,当通用计算机访问用于实现在此示出的数据传输方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的数据传输方法的专用计算机。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。
以上实施方式仅用于说明本申请实施例,而并非对本申请实施例的限制,有关技术领域的普通技术人员,在不脱离本申请实施例的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本申请实施例的范畴,本申请实施例的专利保护范围应由权利要求限定。

Claims (13)

1.一种数据传输方法,应用于蓝牙网络的节点,所述方法包括:
通过扩展广播承载层封装来自于网络层的待发送数据包对应的至少两个数据分包,得到对应的至少两个蓝牙扩展包,所述至少两个蓝牙扩展包中携带有同一广播事件标识,以及携带有用于至少指示所述数据分包的长度的包头信息;
将所述至少两个蓝牙扩展包发送至所述蓝牙网络的节点。
2.根据权利要求1所述的方法,其中,所述通过扩展广播承载层封装来自于网络层的待发送数据包对应的至少两个数据分包,得到对应的至少两个蓝牙扩展包,包括:
按照标准广播数据包格式封装所述至少两个数据分包,得到至少两个标准广播包,以向所述至少两个数据分包分别增加用于至少指示所述数据分包的长度的包头信息;
将所述至少两个标准广播包封装为所述至少两个蓝牙扩展包。
3.根据权利要去2所述的方法,其中,所述方法还包括:
通过所述扩展广播承载层将所述至少两个数据分包注册至同一扩展广播事件中,以使得到的所述至少两个蓝牙扩展包中携带有同一广播事件标识。
4.根据权利要求2所述的方法,其中,所述将所述至少两个标准广播包封装为所述至少两个蓝牙扩展包,包括:
将所述至少两个标准广播包封装为辅助广告指示封包,以及跟随所述辅助广告指示封包发送的至少一个辅助链接指示封包,得到至少两个蓝牙扩展包。
5.根据权利要求1所述的方法,其中,所述方法还包括:
若所述待发送数据包的长度大于所述蓝牙扩展包的包长度阈值,则通过扩展底层传输层,按照所述蓝牙扩展包的包长度阈值,将待发送数据包拆分为至少两个数据分包,并传输至所述网络层。
6.根据权利要求1所述的方法,其中,所述包头信息还用于指示所述数据分包的类型。
7.一种数据传输方法,应用于蓝牙网络的节点,所述方法包括:
通过扩展广播承载层接收若干个蓝牙扩展包,将携带有同一广播事件标识的蓝牙扩展包确定为一组;
根据所述蓝牙扩展包携带的用于至少指示所述数据分包的长度的包头信息,从一组蓝牙扩展包中提取出来自同一节点的至少两个数据分包。
8.根据权利要求7所述的方法,其中,所述蓝牙扩展包包括辅助广告指示封包以及跟随所述辅助广告指示封包的至少一个辅助链接指示封包,所述通过扩展广播承载层接收若干个蓝牙扩展包,将携带有同一广播事件标识的蓝牙扩展包确定为一组,包括:
通过所述扩展广播承载层,确定跟随所述辅助广告指示封包的辅助链接指示封包被全部接收;
将携带有同一广播事件标识的辅助广告指示封包及跟随其的辅助链接指示封包进行聚合,得到聚合数据。
9.一种空中升级方法,应用于蓝牙网络中的节点,包括:
确定待发送升级包;
通过扩展广播承载层封装来自于网络层的待发送升级包对应的至少两个数据分包,得到对应的至少两个蓝牙扩展包,所述至少两个蓝牙扩展包中携带有同一广播事件标识,以及携带有用于至少指示所述数据分包的长度的包头信息;
将所述至少两个蓝牙扩展包发送至所述蓝牙网络的节点,以使所述蓝牙网络的节点根据升级包进行升级。
10.一种网络设备,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述计算机执行指令,使得所述网络设备执行如权利要求1-9任一项所述的方法。
11.一种网络系统,至少包括:用于执行如权利要求1-6任一项所述的方法的第一节点和用于执行如权利要求7-8任一项所述的方法第二节点。
12.一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1-9中任一所述的方法。
13.一种计算机程序产品,包括计算机指令,所述计算机指令指示计算设备执行如权利要求1-9中任一所述的方法对应的操作。
CN202210318906.2A 2022-03-29 2022-03-29 数据传输方法、空中升级方法、网络设备、网络系统 Active CN115296996B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210318906.2A CN115296996B (zh) 2022-03-29 2022-03-29 数据传输方法、空中升级方法、网络设备、网络系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210318906.2A CN115296996B (zh) 2022-03-29 2022-03-29 数据传输方法、空中升级方法、网络设备、网络系统

Publications (2)

Publication Number Publication Date
CN115296996A true CN115296996A (zh) 2022-11-04
CN115296996B CN115296996B (zh) 2024-03-15

Family

ID=83820917

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210318906.2A Active CN115296996B (zh) 2022-03-29 2022-03-29 数据传输方法、空中升级方法、网络设备、网络系统

Country Status (1)

Country Link
CN (1) CN115296996B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107251508A (zh) * 2014-10-14 2017-10-13 瑞迪厄思网络公司 交织多个蓝牙低功耗公告
US20190098483A1 (en) * 2017-11-27 2019-03-28 Intel IP Corporation Enhanced bluetooth mechanism for triggering wi-fi radios
CN111294737A (zh) * 2020-02-28 2020-06-16 深圳市中科蓝讯科技股份有限公司 通过经典蓝牙生成和发射ble广播包的方法和系统
CN113055942A (zh) * 2021-03-10 2021-06-29 重庆邮电大学 一种6tisch网络下数据聚合的方法
CN113645600A (zh) * 2021-08-13 2021-11-12 Oppo广东移动通信有限公司 数据传输方法、装置、终端及存储介质
CN113709055A (zh) * 2020-05-20 2021-11-26 安徽华米信息科技有限公司 基于ble的通讯方法、装置、设备、系统以及存储介质
WO2022022234A1 (zh) * 2020-07-31 2022-02-03 华为技术有限公司 处理蓝牙数据包的方法和通信装置
WO2022042637A1 (zh) * 2020-08-31 2022-03-03 华为技术有限公司 一种蓝牙数据传输方法及相关装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107251508A (zh) * 2014-10-14 2017-10-13 瑞迪厄思网络公司 交织多个蓝牙低功耗公告
US20190098483A1 (en) * 2017-11-27 2019-03-28 Intel IP Corporation Enhanced bluetooth mechanism for triggering wi-fi radios
CN111294737A (zh) * 2020-02-28 2020-06-16 深圳市中科蓝讯科技股份有限公司 通过经典蓝牙生成和发射ble广播包的方法和系统
CN113709055A (zh) * 2020-05-20 2021-11-26 安徽华米信息科技有限公司 基于ble的通讯方法、装置、设备、系统以及存储介质
WO2022022234A1 (zh) * 2020-07-31 2022-02-03 华为技术有限公司 处理蓝牙数据包的方法和通信装置
WO2022042637A1 (zh) * 2020-08-31 2022-03-03 华为技术有限公司 一种蓝牙数据传输方法及相关装置
CN113055942A (zh) * 2021-03-10 2021-06-29 重庆邮电大学 一种6tisch网络下数据聚合的方法
CN113645600A (zh) * 2021-08-13 2021-11-12 Oppo广东移动通信有限公司 数据传输方法、装置、终端及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JOE TILLISON;: "使用蓝牙5增强信标", 电子产品世界, no. 04 *
PELLE SVENSSON;: "蓝牙5和蓝牙Mesh网络:支持工业4.0应用实例", 数字通信世界, no. 1 *

Also Published As

Publication number Publication date
CN115296996B (zh) 2024-03-15

Similar Documents

Publication Publication Date Title
EP3852403B1 (en) Communication method and apparatus
CN113271579B (zh) 蓝牙设备控制方法、客户端、计算机设备和可读存储介质
CN107005841B (zh) 用于使用封装的直接设备到设备通信的系统、方法和设备
US8406191B2 (en) Pseudo wires for mobility management
WO2019143463A1 (en) Hardware offload for quic connections
CN108601043B (zh) 用于控制无线接入点的方法和设备
US11153207B2 (en) Data link layer-based communication method, device, and system
WO2011137783A1 (zh) 一种数据处理方法、装置和系统
EP3840518A1 (en) Rrc connection method, device, and system
CN111447678A (zh) 通信方法和通信装置
Chavan et al. Secure CoAP using enhanced DTLS for Internet of things
CN105120454A (zh) 信息传输方法、联网接入方法及相应的终端
US20210168614A1 (en) Data Transmission Method and Device
EP3654579A1 (en) Methods and devices for providing message authentication code suitable for short messages
US20230239279A1 (en) Method and apparatus for security communication
US8477683B2 (en) Configuring a host device by way of MMP
WO2023005929A1 (zh) 一种通信方法及装置
CN115296996B (zh) 数据传输方法、空中升级方法、网络设备、网络系统
CN114666745B (zh) 数据传输方法、节点控制方法、网络设备、网络系统
US12010243B2 (en) Methods and devices for providing message authentication code suitable for short messages
CN116800486B (zh) 云网络通信方法及系统
US20230261900A1 (en) Packet fragmentation in gre
EP3432536A1 (en) Communication device for communicating data via a first communication network with a second communication network using a cryptographic token
CN102882867A (zh) 基于以太网上的点对点协议的最大接收单元协商方法
CN114040389A (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