CN111328056B - 基于att和读写指令进行协议适配的通信方法及系统 - Google Patents
基于att和读写指令进行协议适配的通信方法及系统 Download PDFInfo
- Publication number
- CN111328056B CN111328056B CN202010067516.3A CN202010067516A CN111328056B CN 111328056 B CN111328056 B CN 111328056B CN 202010067516 A CN202010067516 A CN 202010067516A CN 111328056 B CN111328056 B CN 111328056B
- Authority
- CN
- China
- Prior art keywords
- att
- layer
- cpa
- connection
- communication
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/14—Direct-mode setup
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/30—Connection release
-
- 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
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Communication Control (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明属于数据通信技术领域,尤其涉及基于ATT和读写指令进行协议适配的通信方法及系统,所述通信方法包括ATT建立连接过程、ATT运行过程、ATT有计划断开连接过程,本发明解决了现有健康设备互技术中主设备对于交互节奏缺乏掌控能力的问题,以及应对从设备因管理交互流程而导致开销压力的问题,具有适应于PHD层和ATT层各自的技术特点,具有可以节省计算资源和系统功耗,提高用户体验,降低成本,同时也不会对系统的安全造成负面影响,既可以有效地利用BLE本身的低功耗特性,又能够保持通信双方在应用层的交互的同步的技术效果。
Description
技术领域
本发明属于数据通信技术领域,尤其涉及基于ATT和读写指令进行协议适配的通信方法及系统。
背景技术
在众多短距离通信技术当中,蓝牙是应用最为广泛、最为普及的技术之一;其中低功耗蓝牙重用了经典蓝牙协议栈的许多模块,定义了全新的物理层和链路层,简化了协议栈的实现;由于大多数健康监测设备和健康应用程序只需传输少量的数据,这使得低功耗蓝牙在医疗卫生健康、体育健身、家庭娱乐、安全保障等诸多领域具有巨大的潜力;
所述属性协议(ATT)是蓝牙低功耗(BLE)技术标准体系中的一个标准,其特征在于:遵循该标准的从设备在与主设备进行数据交换时,按照BLE标准中所定义的属性(Attribute)的格式提供被交换的数据。遵循该标准的主设备可以通过ATT中所定义的属性操作方法中的“写请求”、“写响应”、“读请求”、“读响应”和“信息查找请求”方法对从设备提供的属性进行操作。所述ATT由ATT数据单元(ATT PDU)和ATT数据交换过程构成。所述ATTPDU,是在ATT层被交换的、符合ATT定义的消息格式的数据消息,其净荷(Payload)部分的字节长度不会超过“ATT PDU最大净荷长度”。ATT PDU的传输由底层传输层来完成。所述ATT数据交换过程包括“ATT建立连接过程”、“ATT运行过程”和“ATT有计划断开连接过程”。所述ATT建立连接过程是通信双方使用BLE中定义的广播事件和扫描事件建立双方之间在底层传输层的通信连接的过程;所述ATT有计划断开连接过程是通信双方使用BLE中定义的“终止连接事件”断开双方之间在底层传输层的通信连接的过程;
本发明基于“201910765383.4”的一种依赖于ATT和指示进行适配的数据通信方法及系统;
在健康设备互操作的应用场景下,主设备有可能需要与多个从设备之间分别进行通信,因为每一个从设备彼此之间独立运行,主设备在与他们进行交互时,需要同时管理不同的业务目标下的设备间互操作,主设备的内部时序较难控制,管理开销较大。本发明采用基于请求与响应的消息流控制原则,使能够主设备充分地掌握“主-从”设备之间的交互节奏,根据自身的运行时资源情况和当前所处理任务的紧急程度灵活调度通信资源,安排通信顺序,避免通信双方同时向对方发送应用层消息的情况。相比于本领域的其它通信方式,本发明能够减少消息流控制的复杂度,强化消息流的秩序,提高应用层数据交换的可控性;此外,从设备管理用于交互流程的开销减少,终端厂商的技术实施难度更低。
发明内容
本发明提供基于ATT和读写指令进行协议适配的通信方法及系统,以解决上述背景技术中提出的现有健康设备互技术中主设备对于交互节奏缺乏掌控能力的问题,以及应对从设备因管理交互流程而导致开销压力的问题。
本发明所解决的技术问题采用以下技术方案来实现:基于ATT和读写指令进行协议适配的通信方法,所述通信方法包括在主、从设备进行数据交换前,通信双方分别建立由下至上依次为底层传输层、属性协议ATT层、通用属性规范协议适配CPA层、数据交换协议PHD层和应用层的数据通信协议栈层级结构;
所述ATT层包括ATT数据交换方法,所述ATT数据交换方法包括:
ATT建立连接过程:通信双方使用BLE中定义的广播事件和扫描事件建立双方之间在底层传输层的通信连接的过程;
ATT运行过程:通信双方中其发送方CPA层将PHD层传输的APDU封装成CPA PDU,其接收方的CPA层将从ATT层接收到的CPA PDU解封装为APDU,CPA PDU被置于ATT PDU的净荷中,通过基于请求与响应的消息流控制原则的属性操作方法完成数据交换过程;
ATT有计划断开连接过程:
通信双方中的发起方发起断开ATT层连接处理,其接受方接受ATT层连接断开处理。
进一步,所述基于请求与响应的消息流控制原则的属性操作方法包括写请求属性操作方法;
所述写请求属性操作方法包括:
ATT写请求:主设备发送ATT写请求将CPA PDU发送给从设备;
以及;
ATT写响应:从设备接收ATT写请求以接收CPA PDU,并向主设备回复相应的ATT写响应。
进一步,所述基于请求与响应的消息流控制原则的属性操作方法包括读请求属性操作方法;
所述读请求属性操作方法包括:
ATT读请求:主设备发送ATT读请求,邀请从设备发送一个CPA PDU;
以及;
ATT读响应:从设备发送相应的ATT读响应,将CPA PDU发送给主设备。
进一步,所述请求与响应的消息流控制原则还包括:
若发送方在发送请求后且在未接收到对应的响应前,则禁止发送其他请求。
进一步,所述通信双方中的发起方发起断开ATT层连接处理,其接受方接受ATT层连接断开处理包括:
通信双方中一方为发起断开ATT层连接事件的设备角色的发起方,另一方为接受ATT层连接已断开事件的设备角色的接受方;
若PHD层处于“已连接”状态且CPA层当前没有需要传输的APDU,则:
主设备连续等待相应已定义的时间间隔后仍未接收到PHD层的APDU或者从设备所在设备在一定时间后没有产生新的待传输数据时,发起方根据应用层的要求可向本方的ATT层发送语义为断开ATT层连接内部指令,同时保存工作状态的数据;
发起方的ATT层接收到断开ATT层连接内部指令后,调用BLE中定义的终止连接事件,断开底层传输层的连接;
底层传输层的连接断开后,发起方和接受方的ATT层向各自的CPA层发送语义为ATT层连接已断开的事件通知,并分别保存工作状态数据。
进一步,主、从设备任一方可作为但不可同时作为发起方或接受方。
进一步,所述CPA PDU由头部编码和信息部编码依次组成:
所述头部编码包括长度为1比特的CPA连接标识位CLC,若CLC置位,则表示CPA层连接已建立,若CLC复位,则表示CPA层未连接,所述CLC在清除工作状态数据的时候复位。
进一步:
所述头部编码由长度为1比特的CPA连接标识位CLC、长度为1比特的长度字段扩展标识位LE、长度为6比特的消息序号ASN和APDU长度AL的四个字段依次组成;
若LE为1,则AL字段占3个字节,若LE为0,则AL字段占2个字节。
进一步,所述信息部编码仅包含一个PHD层的APDU;
所述ASN字段和AL字段均为无符号整数,并且ASN字段的初始值为0且在清除工作状态数据的时候被重置为0;
若CPA层处于数据交换状态的时候,则ASN值随着发送或接收的CPA PDU个数的增加而递增,所述ASN值以26为模且可循环;
并且;
若LE比特置位的时候,则AL字段的字节长度为3字节,此时信息部内的APDU的字节长度最大为16MB;
若LE比特复位的时候,则AL字段的字节长度为2字节,此时信息部内的APDU的字节长度最大为64KB。
同时,本发明还提供基于ATT和读写指令进行协议适配的通信系统,所述通信系统基于主、从设备进行数据交换前,通信双方分别建立由下至上依次为底层传输层、属性协议ATT层、通用属性规范协议适配CPA层、数据交换协议PHD层和应用层的数据通信协议栈层级结构;
所述ATT层包括ATT数据交换模块,所述ATT数据交换模块用于:
实现上述任一项的ATT数据交换方法。
有益技术效果:
本专利采用所述ATT层包括ATT数据交换方法,所述ATT数据交换方法包括:ATT建立连接过程:通信双方使用BLE中定义的广播事件和扫描事件建立双方之间在底层传输层的通信连接的过程;ATT运行过程:通信双方中其发送方CPA层将PHD层传输的APDU封装成CPAPDU,其接收方的CPA层将从ATT层接收到的CPA PDU解封装为APDU,CPAPDU被置于ATTPDU的净荷中,通过基于请求与响应的消息流控制原则的属性操作方法完成数据交换过程;ATT有计划断开连接过程:通信双方中的发起方发起断开ATT层连接处理,其接受方接受ATT层连接断开处理;
按照BLE标准中所定义的属性的格式提供被交换的数据,遵循该标准的主设备可以通过ATT中所定义的属性操作方法中的“写请求”、“写响应”、“读请求”、“读响应”和“信息查找请求”方法对从设备提供的属性进行操作。所述ATT由ATT数据单元(ATT PDU)和ATT数据交换过程构成,所述ATT PDU,是在ATT层被交换的、符合ATT定义的消息格式的数据消息,其净荷(Payload)部分的字节长度不会超过“ATT PDU最大净荷长度”。ATT PDU的传输由底层传输层来完成。所述ATT数据交换过程包括“ATT建立连接过程”、“ATT运行过程”和“ATT有计划断开连接过程”。所述ATT建立连接过程是通信双方使用BLE中定义的广播事件和扫描事件建立双方之间在底层传输层的通信连接的过程;所述ATT有计划断开连接过程是通信双方使用BLE中定义的“终止连接事件”断开双方之间在底层传输层的通信连接的过程;
通过构建的CPA层,主设备(网关设备)可以通过ATT定义的“写请求”向从设备(个人健康设备)发送数据,以及通过ATT定义的“读请求”从从设备接收数据,如上述请求与响应的消息流控制原则,主设备能够充分地掌握“主-从”设备之间的交互节奏,根据自身的运行时资源情况灵活安排应用层APDU的交换,避免通信双方同时向对方发送应用层消息的情况。主设备在“主-从”设备交互过程中承担了更多的管理交互顺序的责任,从而也使得从设备能够减少在这方面的管理开销,降低技术实施的复杂度。
综上所述,本发明提供的技术方案适应于PHD层和ATT层各自的技术特点,可以节省计算资源和系统功耗,提高用户体验,降低成本,同时也不会对系统的安全造成负面影响,既可以有效地利用BLE本身的低功耗特性,又能够保持通信双方在应用层的交互的同步。本发明的诸多优势使得本发明具有较强的通用性和兼容性。
附图说明
图1是本发明所述通信方法的数据通信协议栈的体系结构图;
图2是本发明所述通信方法的总流程图;
图3是本发明所述通信方法的具体流程图;
图4是本发明所述通信方法的ATT建立连接过程的流程图;
图5是本发明所述通信方法的ATT运行过程的流程图;
图6是本发明所述通信方法的ATT有计划断开连接过程的流程图;
本发明提供的技术方案在实施时具有灵活性,通过设置该技术方案中的部分参数以及阐述与之关联的较佳的应用设计,可以为本发明所要达到的技术效果提供优选方案,下面结合附图对本发明做进一步描述:
图中标号表示如下:
1—底层传输层,2—ATT层,3—CPA层,4—PHD层,5—应用层;
ST101:ATT建立连接过程;
ST102:ATT运行过程;
ST103:ATT有计划断开连接过程;
ST201:通信双方使用BLE中定义的广播事件和扫描事件建立双方之间在底层传输层的通信连接的过程;
ST202:通信双方中其发送方CPA层将PHD层传输的APDU封装成CPA PDU;
ST203:其接收方的CPA层将从ATT层接收到的CPA PDU解封装为APDU;
ST204:CPA PDU被置于ATT PDU的净荷中,通过基于请求与响应的消息流控制原则的属性操作方法完成数据交换过程;
ST205:通信双方中的发起方发起断开ATT层连接处理,其接受方接受ATT层连接断开处理;
实施例一:
本实施例:如图1、2、3所示,基于ATT和读写指令进行协议适配的通信方法,所述通信方法包括在主、从设备进行数据交换前,通信双方分别建立由下至上依次为底层传输层、属性协议ATT层、通用属性规范协议适配CPA层、数据交换协议PHD层和应用层的数据通信协议栈层级结构;
所述ATT层包括ATT数据交换方法,所述ATT数据交换方法包括:
ATT建立连接过程ST101:通信双方使用BLE中定义的广播事件和扫描事件建立双方之间在底层传输层的通信连接的过程ST201;
ATT运行过程ST102:通信双方中其发送方CPA层将PHD层传输的APDU封装成CPAPDU ST202,其接收方的CPA层将从ATT层接收到的CPA PDU解封装为APDU ST203,CPAPDU被置于ATT PDU的净荷中,通过基于请求与响应的消息流控制原则的属性操作方法完成数据交换过程ST204;
ATT有计划断开连接过程ST103:
通信双方中的发起方发起断开ATT层连接处理,其接受方接受ATT层连接断开处理ST205。
通信双方按照BLE标准中所定义的属性的格式提供被交换的数据,遵循该标准的主设备可以通过ATT中所定义的属性操作方法中的“写请求”、“写响应”、“读请求”、“读响应”和“信息查找请求”方法对从设备提供的属性进行操作。所述ATT由ATT数据单元(ATTPDU)和ATT数据交换过程构成,所述ATT PDU,是在ATT层被交换的、符合ATT定义的消息格式的数据消息,其净荷(Payload)部分的字节长度不会超过“ATT PDU最大净荷长度”。ATT PDU的传输由底层传输层来完成。所述ATT数据交换过程包括“ATT建立连接过程”、“ATT运行过程”和“ATT有计划断开连接过程”。所述ATT建立连接过程是通信双方使用BLE中定义的广播事件和扫描事件建立双方之间在底层传输层的通信连接的过程;所述ATT有计划断开连接过程是通信双方使用BLE中定义的“终止连接事件”断开双方之间在底层传输层的通信连接的过程;
由于本实施例中的从设备CPA层和主设备CPA层基于ATT发送和接收CPAPDU。CPAPDU被置于ATT PDU的净荷中,通信双方通过发送和接收ATT PDU来完成CPAPDU的交换。本实施例用到了ATT定义的“写请求”、“写响应”、“读请求”、“读响应”和“信息查找请求”属性操作方法,用于实现从设备CPA层和主设备CPA层之间的数据交换过程。更具体地,主设备CPA层通过ATT定义的“写请求”向从设备CPA层发送CPA PDU。主设备CPA层通过ATT定义的“读请求”邀请从设备CPA层发送CPAPDU,进而从设备CPA层通过ATT定义的“读响应”向主设备CPA层发送CPA PDU。ATT中定义了“请求—响应”消息流控制原则,即一条“请求”(写请求或者读请求)被发送后,在未接收到对应的响应之前,主设备不会发送其它请求。
CPA中,发送或接收一个CPA PDU被视为CPA层的最小操作,即不可再分、必须一次性完成的操作,主设备CPA层发送一个CPA PDU且从设备CPA层确认完整接收该CPA PDU之前,主设备CPA层不会发送其它CPA PDU;主设备CPA层邀请从设备CPA层发送一个CPA PDU且从设备CPA层完整发送该CPA PDU之前,主设备CPA层不会接收到其它CPA PDU。CPA这项规范主要是考虑到,通常情况下,如果一个CPA PDU不能被完整地置于一个“写请求”或一个“读响应”的ATT PDU中,主设备CPA层会发送一组(连读多对)“写请求/写响应”来完成一个CPAPDU的传输或者发送一组(连续多对)“读请求/读响应”来完成一个CPA PDU的传输;
通过构建的CPA层,主设备(网关设备)可以通过ATT定义的“写请求”向从设备(个人健康设备)发送数据,以及通过ATT定义的“读请求”从从设备接收数据,如上述请求与响应的消息流控制原则,主设备能够充分地掌握“主-从”设备之间的交互节奏,根据自身的运行时资源情况灵活安排应用层APDU的交换,避免通信双方同时向对方发送应用层消息的情况。主设备在“主-从”设备交互过程中承担了更多的管理交互顺序的责任,从而也使得从设备能够减少在这方面的管理开销,降低技术实施的复杂度。
所述基于请求与响应的消息流控制原则的属性操作方法包括写请求属性操作方法;
所述写请求属性操作方法包括:
ATT写请求:主设备发送ATT写请求将CPA PDU发送给从设备;
以及;
ATT写响应:从设备接收ATT写请求以接收CPA PDU,并向主设备回复相应的ATT写响应。
所述基于请求与响应的消息流控制原则的属性操作方法包括读请求属性操作方法;
所述读请求属性操作方法包括:
ATT读请求:主设备发送ATT读请求,邀请从设备发送一个CPA PDU;
以及;
ATT读响应:从设备发送相应的ATT读响应,将CPA PDU发送给主设备。
若发送方在发送请求后且在未接收到对应的响应前,则禁止发送其他请求;
实施例二:
如图4所示,所述ATT建立连接过程包括:
从设备调用BLE定义的广播事件通过广播通道发送广播包;
主设备调用BLE定义的扫描事件接收广播包;
主设备向从设备发送连接请求;
主从设备进入ATT运行过程中,并向各自的CPA层传递ATT层连接已建立事件通知。
如图5所示,图5描述的ATT运行过程实例,该实例仅用于描述数据的交互过程,不能保证该时序图可以被完整复制。
所述ATT运行过程可以概述为:
主设备发送数据时:主设备CPA层将一个CPA PDU下发给本方ATT层,进一步,主设备ATT层通过写请求将该CPA PDU作为净荷发送给从设备ATT层;从设备ATT层接收到写请求后将净荷部分传递给本方CPA层,并回复相应的“写响应”。CPA层进行后续的操作,判定该CPA PDU是否完整、或者是否需要发送给上层PHD层,或者判定当前处于CPA层哪一个连接阶段。
主设备接收数据时:主设备ATT层根据应用层需求设定向从设备ATT层发送读请求;从设备ATT层接收到读请求后等待从本方CPA层接收一个CPA PDU,并将其作为净荷通过读响应回复给主设备ATT层,主设备接收到读响应后将净荷部分传递给本方CPA层,CPA层进行后续的操作。
ATT运行过程中,主设备发送数据和接收数据的执行顺序由应用层根据自身需求来设计并且由CPA层来触发。本质上,ATT层对传输的数据不做解析,在本专利中,可以将其理解为由CPA层管理的数据交通工具。
如图6所示,ATT有计划断开连接过程可以概述为:
通信双方中一方为发起断开ATT层连接事件的设备角色的发起方,另一方为接受ATT层连接已断开事件的设备角色的接受方。
若PHD层处于“已连接”状态且CPA层当前没有需要传输的APDU,则:
发起方根据应用层的要求可向本方的ATT层发送语义为断开ATT层连接内部指令,同时保存工作状态的数据;
发起方的ATT层接收到断开ATT层连接内部指令后,调用BLE中定义的终止连接事件,即通信双方退出连接状态,进入广播态或扫描态或待机状态(该状态根据ATT建立连接前的状态而定);
ATT层的连接断开后,发起方和接受方的ATT层向各自的CPA层发送语义为ATT层连接已断开的事件通知,并分别保存工作状态数据。
主、从设备任一方可作为但不可同时作为发起方或接受方。
工作原理:
本发明通过所述ATT层包括ATT数据交换方法,所述ATT数据交换方法包括:ATT建立连接过程:通信双方使用BLE中定义的广播事件和扫描事件建立双方之间在底层传输层的通信连接的过程;ATT运行过程:通信双方中其发送方CPA层将PHD层传输的APDU封装成CPAPDU,其接收方的CPA层将从ATT层接收到的CPA PDU解封装为APDU,CPAPDU被置于ATTPDU的净荷中,通过基于请求与响应的消息流控制原则的属性操作方法完成数据交换过程;ATT有计划断开连接过程:通信双方中的发起方发起断开ATT层连接处理,其接受方接受ATT层连接断开处理;
按照BLE标准中所定义的属性的格式提供被交换的数据,遵循该标准的主设备可以通过ATT中所定义的属性操作方法中的“写请求”、“写响应”、“读请求”、“读响应”和“信息查找请求”方法对从设备提供的属性进行操作。所述ATT由ATT数据单元(ATT PDU)和ATT数据交换过程构成,所述ATT PDU,是在ATT层被交换的、符合ATT定义的消息格式的数据消息,其净荷(Payload)部分的字节长度不会超过“ATT PDU最大净荷长度”。ATT PDU的传输由底层传输层来完成。所述ATT数据交换过程包括“ATT建立连接过程”、“ATT运行过程”和“ATT有计划断开连接过程”。所述ATT建立连接过程是通信双方使用BLE中定义的广播事件和扫描事件建立双方之间在底层传输层的通信连接的过程;所述ATT有计划断开连接过程是通信双方使用BLE中定义的“终止连接事件”断开双方之间在底层传输层的通信连接的过程;
由于本实施例中的从设备CPA层和主设备CPA层基于ATT发送和接收CPAPDU。CPAPDU被置于ATT PDU的净荷中,通信双方通过发送和接收ATT PDU来完成CPAPDU的交换。本实施例用到了ATT定义的“写请求”、“写响应”、“读请求”、“读响应”和“信息查找请求”属性操作方法,用于实现从设备CPA层和主设备CPA层之间的数据交换过程。更具体地,主设备CPA层通过ATT定义的“写请求”向从设备CPA层发送CPA PDU。主设备CPA层通过ATT定义的“读请求”邀请从设备CPA层发送CPAPDU,进而从设备CPA层通过ATT定义的“读响应”向主设备CPA层发送CPAPDU。ATT中定义了“请求—响应”消息流控制原则,即一条“请求”(写请求或者读请求)被发送后,在未接收到对应的响应之前,主设备CPA层不会发送其它请求。CPA中,发送或接收一个CPAPDU被视为CPA层的最小操作,即不可再分、必须一次性完成的操作,主设备CPA层发送一个CPAPDU且从设备CPA层确认完整接收该CPA PDU之前,主设备CPA层不会发送其它CPA PDU;主设备CPA层邀请从设备CPA层发送一个CPA PDU且从设备CPA层完整发送该CPA PDU之前,主设备CPA层不会接收到其它CPA PDU。CPA这项规范主要是考虑到,通常情况下,如果一个CPA PDU不能被完整地置于一个“写请求”或一个“读响应”的ATT PDU中,主设备CPA层会发送一组(连读多对)“写请求/写响应”来完成一个CPA PDU的传输或者发送一组(连续多对)“读请求/读响应”来完成一个CPA PDU的传输。
本发明解决了现有健康设备互技术中主设备对于交互节奏缺乏掌控能力的问题,以及应对从设备因管理交互流程而导致开销压力的问题。
通过本发明,主设备能够充分地掌握“主-从”设备之间的交互节奏,根据自身的运行时资源情况灵活安排应用层APDU的交换,避免通信双方同时向对方发送应用层消息的情况。主设备在“主-从”设备交互过程中承担了更多的管理交互顺序的责任,从而也使得从设备能够减少在这方面的管理开销,降低技术实施的复杂度。
综上所述,本发明提供的技术方案适应于PHD层和ATT层各自的技术特点,具有可以节省计算资源和系统功耗,提高用户体验,降低成本,同时也不会对系统的安全造成负面影响,既可以有效地利用BLE本身的低功耗特性,又能够保持通信双方在应用层的交互的同步的技术效果。本发明的诸多优势使得本发明具有较强的通用性和兼容性。
利用本发明的技术方案,或本领域的技术人员在本发明技术方案的启发下,设计出类似的技术方案,而达到上述技术效果的,均是落入本发明的保护范围。
Claims (9)
1.基于ATT和读写指令进行协议适配的通信方法,其特征在于,所述通信方法包括在主、从设备进行数据交换前,通信双方分别建立由下至上依次为底层传输层、属性协议ATT层、通用属性规范协议适配CPA层、数据交换协议PHD层和应用层的数据通信协议栈层级结构;
所述ATT层包括ATT数据交换方法,所述ATT数据交换方法包括:
ATT建立连接过程:通信双方使用BLE中定义的广播事件和扫描事件建立双方之间在底层传输层的通信连接的过程;
ATT运行过程:通信双方中其发送方CPA层将PHD层传输的APDU封装成CPA PDU,其接收方的CPA层将从ATT层接收到的CPA PDU解封装为APDU,CPA PDU被置于ATT PDU的净荷中,通过基于请求与响应的消息流控制原则的属性操作方法完成数据交换过程;
ATT有计划断开连接过程:
通信双方中的发起方发起断开ATT层连接处理,其接受方接受ATT层连接断开处理;
所述通信双方中的发起方发起断开ATT层连接处理,其接受方接受ATT层连接断开处理包括:
通信双方中一方为发起断开ATT层连接事件的设备角色的发起方,另一方为接受ATT层连接已断开事件的设备角色的接受方;若PHD层处于“已连接”状态且CPA层当前没有需要传输的APDU,则:主设备连续等待相应已定义的时间间隔后仍未接收到PHD层的APDU或者从设备所在设备在一定时间后没有产生新的待传输数据时,发起方可通过CPA层向本方的ATT层发送语义为断开ATT层连接内部指令,同时保存工作状态的数据;发起方的ATT层接收到断开ATT层连接内部指令后,调用BLE中定义的终止连接事件,断开底层传输层的连接;底层传输层的连接断开后,发起方和接受方的ATT层向各自的CPA层发送语义为ATT层连接已断开的事件通知,并分别保存工作状态数据;
此外,所述通信双方中的发起方发起断开ATT层连接处理,其接受方接受ATT层连接断开处理还包括:
若PHD层处于“已连接”状态且CPA层当前没有需要传输的APDU,则:发起方根据应用层的要求可向本方的ATT层发送语义为断开ATT层连接内部指令,同时保存工作状态的数据;发起方的ATT层接收到断开ATT层连接内部指令后,调用BLE中定义的终止连接事件,即通信双方退出连接状态,进入广播态或扫描态或根据ATT建立连接前的状态而定的待机状态;ATT层的连接断开后,发起方和接受方的ATT层向各自的CPA层发送语义为ATT层连接已断开的事件通知,并分别保存工作状态数据。
2.根据权利要求1所述的通信方法,其特征在于,所述基于请求与响应的消息流控制原则的属性操作方法包括写请求属性操作方法;
所述写请求属性操作方法包括:
ATT写请求:主设备发送ATT写请求将CPA PDU发送给从设备;
以及;
ATT写响应:从设备接收ATT写请求以接收CPA PDU,并向主设备回复相应的ATT写响应。
3.根据权利要求2所述的通信方法,其特征在于,所述基于请求与响应的消息流控制原则的属性操作方法包括读请求属性操作方法;
所述读请求属性操作方法包括:
ATT读请求:主设备发送ATT读请求,邀请从设备发送一个CPA PDU;
以及;
ATT读响应:从设备发送相应的ATT读响应,将CPA PDU发送给主设备。
4.根据权利要求1所述的通信方法,其特征在于,所述请求与响应的消息流控制原则还包括:
若发送方在发送请求后且在未接收到对应的响应前,则禁止发送其他请求。
5.根据权利要求1所述的通信方法,其特征在于,主、从设备任一方可作为但不可同时作为发起方或接受方。
6.根据权利要求1所述的通信方法,其特征在于,所述CPA PDU由头部编码和信息部编码依次组成:
所述头部编码包括长度为1比特的CPA连接标识位CLC,若CLC置位,则表示CPA层连接已建立,若CLC复位,则表示CPA层未连接,所述CLC在清除工作状态数据的时候复位。
7.根据权利要求6所述的通信方法,其特征在于,
所述头部编码由长度为1比特的CPA连接标识位CLC、长度为1比特的长度字段扩展标识位LE、长度为6比特的消息序号ASN和APDU长度AL的四个字段依次组成;
若LE为1,则AL字段占3个字节,若LE为0,则AL字段占2个字节。
8.根据权利要求7所述的通信方法,其特征在于,所述信息部编码仅包含一个PHD层的APDU;
所述ASN字段和AL字段均为无符号整数,并且ASN字段的初始值为0且在清除工作状态数据的时候被重置为0;
若CPA层处于数据交换状态的时候,则ASN值随着发送或接收的CPA PDU个数的增加而递增,所述ASN值以26为模且可循环;
并且;
若LE比特置位的时候,则AL字段的字节长度为3字节,此时信息部内的APDU的字节长度最大为16MB;
若LE比特复位的时候,则AL字段的字节长度为2字节,此时信息部内的APDU的字节长度最大为64KB。
9.基于ATT和读写指令进行协议适配的通信系统,其特征在于,所述通信系统基于主、从设备进行数据交换前,通信双方分别建立由下至上依次为底层传输层、属性协议ATT层、通用属性规范协议适配CPA层、数据交换协议PHD层和应用层的数据通信协议栈层级结构;
所述ATT层包括ATT数据交换模块,所述ATT数据交换模块用于:
实现如权利要求1中的所述ATT数据交换方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010067516.3A CN111328056B (zh) | 2020-01-20 | 2020-01-20 | 基于att和读写指令进行协议适配的通信方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010067516.3A CN111328056B (zh) | 2020-01-20 | 2020-01-20 | 基于att和读写指令进行协议适配的通信方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111328056A CN111328056A (zh) | 2020-06-23 |
CN111328056B true CN111328056B (zh) | 2023-03-24 |
Family
ID=71168674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010067516.3A Active CN111328056B (zh) | 2020-01-20 | 2020-01-20 | 基于att和读写指令进行协议适配的通信方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111328056B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111417116B (zh) * | 2020-03-10 | 2023-09-19 | 国家体育总局体育科学研究所 | 通过att、读写和异常处理来适配的通信方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014186873A1 (en) * | 2013-05-21 | 2014-11-27 | Bagheri Ebrahim | Method and system of intelligent generation of structured data and object discovery from the web using text, images, video and other data |
CN109474969A (zh) * | 2018-12-19 | 2019-03-15 | 苏芯物联技术(南京)有限公司 | 基于ieee 802.15.4和低功耗蓝牙双协议栈的混合通信方法及系统 |
CN109495870A (zh) * | 2018-07-24 | 2019-03-19 | 华为机器有限公司 | 蓝牙测试的方法和装置 |
CN110493775A (zh) * | 2019-08-23 | 2019-11-22 | 重庆大学 | 通过att和异常处理来适配的通信方法及系统 |
CN110545265A (zh) * | 2019-08-19 | 2019-12-06 | 重庆大学 | 一种依赖于att和指示进行适配的数据通信系统及方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8966113B2 (en) * | 2006-03-03 | 2015-02-24 | Cisco Technology, Inc. | Technique for dynamically restoring original TE-LSP attributes for interdomain TE-LSPs |
-
2020
- 2020-01-20 CN CN202010067516.3A patent/CN111328056B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014186873A1 (en) * | 2013-05-21 | 2014-11-27 | Bagheri Ebrahim | Method and system of intelligent generation of structured data and object discovery from the web using text, images, video and other data |
CN109495870A (zh) * | 2018-07-24 | 2019-03-19 | 华为机器有限公司 | 蓝牙测试的方法和装置 |
CN109474969A (zh) * | 2018-12-19 | 2019-03-15 | 苏芯物联技术(南京)有限公司 | 基于ieee 802.15.4和低功耗蓝牙双协议栈的混合通信方法及系统 |
CN110545265A (zh) * | 2019-08-19 | 2019-12-06 | 重庆大学 | 一种依赖于att和指示进行适配的数据通信系统及方法 |
CN110493775A (zh) * | 2019-08-23 | 2019-11-22 | 重庆大学 | 通过att和异常处理来适配的通信方法及系统 |
Non-Patent Citations (2)
Title |
---|
一种基于IPv6和低功耗蓝牙的物联网体系结构;王剑锋等;《计算机科学》;20130515(第05期);全文 * |
基于智能移动终端及蓝牙的金属探测器的研制;李鹏等;《计算机工程与应用》(第16期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111328056A (zh) | 2020-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108400997A (zh) | 会话管理方法、终端、管理功能实体及接入网节点 | |
CN110545318B (zh) | 一种依赖于gatt和指示进行适配的数据通信方法及系统 | |
CN110545265B (zh) | 一种依赖于att和指示进行适配的数据通信系统及方法 | |
CN102111409B (zh) | 支持无线多播传输的方法和系统 | |
CN101640581A (zh) | 无线装置及其配对方法及解除配对方法 | |
CN106686056A (zh) | 一种安卓客户端通信装置及与服务器进行连接通信的方法 | |
CN109688555B (zh) | 一种信号数据的实时采集与通信系统及方法 | |
CN108370606A (zh) | 早期连接释放 | |
CN110493775A (zh) | 通过att和异常处理来适配的通信方法及系统 | |
CN111328056B (zh) | 基于att和读写指令进行协议适配的通信方法及系统 | |
US6993005B2 (en) | Information transfer method radio terminal and radio gateway device using datalink layer signaling of protocol identifier | |
CN103178943A (zh) | 用于链路自适应的方法、装置和系统 | |
CN102480473A (zh) | 基于fsk的安全性信息交互系统及方法 | |
CN105471718B (zh) | 一种全双工消息队列的实现方法 | |
CN109862553B (zh) | 终端和通信方法 | |
CN106102101A (zh) | 一种无线接入点与无线接入控制器连接的处理方法及系统 | |
CN111314448B (zh) | 基于cpa的现场保护来适配的数据通信系统及方法 | |
CN113573252B (zh) | 数据传输方法、系统、芯片、电子设备及存储介质 | |
CN110572440B (zh) | 用于数据传输的方法及装置、家电设备、存储介质 | |
CN107645438A (zh) | 一种智能交互机器人远程通信的方法和系统 | |
CN100527753C (zh) | 一种传输网点业务报文的方法和系统 | |
CN106888121B (zh) | 一种基于数据块传输的1553b总线协议仿真方法 | |
CN108810154A (zh) | 一种智能终端的通信连接系统 | |
CN111416889A (zh) | 通过gatt和异常处理来适配的通信方法及系统 | |
CN114630368B (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 |