GAP Profile: Generic Access Profile ,该Profile保证不同的Bluetooth产品可以互相发现对方并建立连接

GAP定义了蓝牙设备如何发现和建立与其他设备的安全/不安全连接。
它处理一些一般模式的业务(如询问、命名和搜索)和一些安全性问题(如担保) ,同时还处理一些有关连接的业务(如链路建立、信道和连接建立) 。
GAP规定的是一些一般性的运行任务。因此,它具有强制性,并作为所有其它蓝牙应用规范的基础

1 GAP协议栈                                              

GAP有如下四个目的 
- Profile Role 
- 可发现模式和过程 
- 连接模式和过程 
- 安全模式和过程

2 Profile Role                                            

在BLE下,GAP Role有四种 
- Broadcaster : 发送advertising events的设备(有Transmitter, 可能有Receiver) 
- Observer    : 接收advertising events的设备(可能有Transmitter, 有Receiver) 
- Peripheral  : 物理链路上接受连接的设备, 在LL层Connection State为Slave(有Transmitter和Receiver) 
- Central     : 物理链路上发起连接的设备, 在LL层Connection State为Master(有Transmitter和Receiver)

3 用户接口                                              

用户可配置的参数如下 
- Bluetooth Device Address : BD_ADDR 
- Bluetooth Device Name    : the user-friendly name 
- Bluetooth Passkey        : Bluetooth PIN 
- Class of Device          : 设备发现阶段用于指示设备类别和支持的设备类别

4 模式                                                

发现模式(Discoverablity Modes) 
- Non-discoverable Mode 
- Discoverable Mode 
- Limited discoverable Mode 
- General discoverable Mode

连接模式(Connectability Modes) 
- Non-connectable Mode 
- Connectable Mode

配对模式(Bondable Modes) 
- Non-bondable Mode 
- Bondable Mode

5 安全                                                

5.1 认证(Authentication)

认证过程,描述了两个蓝牙设备进行LMP认证LMP配对的一般过程。过程如下:

5.2 安全模式

安全模式描述了Channel连接建立过程中的涉及的Secure问题

安全模式大体上可分为两种Legacy Security Modes(1、2、3)Security Mode 4
Legacy Security Modes用于Controller/Host不支持SSP(Secure Simple Pairing)

注意: 设备可能同时支持Security Mode 2(兼容不支持SSP设备)和Security Mode 4

详细有如下四种 
- Security Mode 1 : Non-secure 
- Security Mode 2 : Service level enforced security 
- Security Mode 3 : Link level enforced security 
- Security Mode 4 : Service level enforced security

6 Idle Mode Procedures                                      

描述了发起方Inquiry和Discovery的过程

- General Inquiry 
- Limited Inquiry 
- Name Discovery 
- Device Discovery 
- Bonding

7 Establishment Procedures                                    

进行下面过程之前需要Discovery过程提供远端设备如下信息

基本信息 
- DB_ADDR、Device Access Code 
- System Clock 
- Page Scan Mode

附加信息 
- The Class of device 
- The Device name 
- The supported Service Classes

有如下三种 
- Link Establishment 
- Channel Establishment 
- Connection Establishment

8 BLE操作模式和过程                                         

在LE物理层通道上可能同时存在多个模式和过程

- Broadcast mode and observation procedure 
- Discovery modes and procedures 
- Connection modes and procedures 
- Bonding modes and procedures

====================== 华丽的分割线 =========================

笔者能力有限,对于GAP目前只能了解这么多 
规范中有非常完整的描述 
见Core System Package[Host volume]     -Part C(Generic Access Profile)

Bluetooth GAP介绍的更多相关文章

  1. Bluetooth GATT介绍

    目录 1. 介绍 2 内容 2.1 Configured Broadcast 2.2 GATT Profile Hierarchy 3 Service Interoperability Require ...

  2. Bluetooth ATT介绍

    目录 1 介绍 2 详细内容 2.1 Attribute Type 2.2 Attribute Handle 2.3 Attribute Handle Grouping 2.4 Attribute V ...

  3. Bluetooth LMP介绍

    目录 1. 介绍 2. 数据包格式(Packet Format) 3. Procedure Rules 4. 通用回应消息(General Response Messages) 5. 设备特性(Dev ...

  4. Bluetooth Baseband介绍

    目录 1. 概述 1.1 Clock(时钟) 1.2 寻址方式 2. 物理信道(Physical Channels) 3. 物理链路(Physical Links) 4. 逻辑传输层(Logical ...

  5. Bluetooth HFP介绍

    目录 1. 介绍 1.1 目的 1.2 使用场景 1.3 依赖关系 1.4 协议栈 1.5 角色 2. 应用层 3. 空白章节 4. 互操作性要求 4.1 介绍 4.2 Service Level C ...

  6. Bluetooth RFCOMM介绍

    目录 1. 介绍 2. 服务概述 2.1 RS-232控制信号 2.2 Null Modem Emulation 2.3 多串口仿真 3. 服务接口描述 4. RFCOMM帧类型 5. RFCOMM帧 ...

  7. Bluetooth HCI介绍

    目录 1. HCI功能 2. HCI Packet 1. HCI Command 2. HCI Event 3. HCI Data 3. HCI传输层 HCI, 主机控制接口(Host Control ...

  8. Bluetooth L2CAP介绍

    目录 1. 通用操作 1. L2CAP Channel 2. 设备间操作 3. 层间操作 4. 操作模式 2. 数据包格式(Data Packet Format) 1. B-Frame 2. G-Fr ...

  9. Bluetooth SDP介绍

    目录 1. 概念 2. 服务记录(Service Record) 3. 服务属性(Service Attribute) 4. 服务类(Service Class) 5. 服务查找 5.1 UUID 5 ...

随机推荐

  1. AngularJS学习笔记二:AngularJS指令

    AngularJS 指令: AngularJS 通过被称为 指令 的新属性来扩展 HTML. AngularJS 指令是扩展的 HTML 属性,带有前缀 ng-. 几个常用 指令: ng-app 指令 ...

  2. css构造文本

    1. 1. 文本缩进text-indent:值:值为数字,最常用的数值单位是px(像素),也可以直接是百分比!text-indent:100px;text-indent:10%;2. 文本对齐text ...

  3. 剪花布条[HDU2087]

    剪花布条 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submi ...

  4. BZOJ2862 : 分糖果

    二分答案$x$表示最大的一段的和. 设$f[i]$表示前$i$个最多分几段,满足最大的一段不超过$x$,若$f[n]\geq k$,则可行, 则$f[i]=\max(f[j])+1,sum[i]-su ...

  5. 20145315 《Java程序设计》实验五实验报告

    20145315 <Java程序设计>实验五实验报告 实验五 Java网络编程 我负责服务器部分,王嘉澜负责客户端部分:http://www.cnblogs.com/SJZGM10/p/5 ...

  6. 用 Freemarker 生成 word 文档(包含图片)

    1. 用word写一个需要导出的word模板,然后存为xml格式. 2. 将xml中需要动态修改内容的地方,换成freemarker的标识符,例如: <w:p wsp:rsidR="0 ...

  7. jquery easyui datagrid 分页详解

    由于项目原因,用了jquery easyui 感觉界面不错,皮肤样式少点,可是官网最近打不开了,资料比较少,给的demo没有想要的效果,今天在用datagrid 做分页显示的时候,折腾了半天,网上的资 ...

  8. java截取图片部分尺寸

    package util; import java.awt.Rectangle; import java.awt.image.BufferedImage; import java.io.File; i ...

  9. lightning mdb 源代码分析(1)

    lighting mdb(lmdb) 是一个高性能mmap kv数据库,基本介绍和文档参见symas官网,本文将尝试分析其源代码结构以理解数据库设计的关键技术. 本系列文章将尝试从以下几个方面进行分析 ...

  10. hdu 饭卡

    本题的思路是:首先如果m<5,直接输出:若m>5,则先拿出5元钱买最贵的东西,这样背包容量就变成了m-5,商品数量为n-1的0/1背包问题. 此题的状态转移方程为:dp[j]=max{dp ...