2.1、Profile Stack
本简介的目的是:
1、Profile roles
2、Discoverability modes and procedures(可发现模式和过程)
3、Connection modes and procedures(连接方式和过程)
4、Security modes and procedures(安全模式和过程)
2.2、Profile role
2.2.1、通过 BR/EDR Physical Transport(BR/EDR物理传输)操作的角色
在 GAP,用于描述发生在两个设备之间的蓝牙通信 BR/EDR GAP role 的作用,通用符号 A-party(paging device(分页设备)建立链接,或 initiator 的另一个 procedure 在建立链接)和 B-party( paged device(分页设备)或 acceptor(受体))。对于给定的过程,A-party 启动 device discovery(设备发现)、启动物理链接的建立或启动现有链接上的 transaction(事务)。
开始描述过程前,这个 profile 处理有关两台设备之间的发现与连接(link and connection establishment)的情况,两个设备都没有任何联系的情况,一个设备(至少)建立一个链接(可能与第三设备连接)的情况。
initiator(启动程序)和 acceptor(接受程序)通常根据此 profile 或根据引用此 profile 的另一个 profile 操作 generic procedures。如果 acceptor(接受器)同时根据多个 profiles 进行操作,则此 profile 描述了处理此操作的通用机制。
2.2.2、在LE物理传输上操作时的角色
在 LE physical transport(物理传输)上运行的设备定义了四个 GAP 角色:
1、Broadcaster(广播者)
2、Observer(观察者)
3、Peripheral(外围)
4、Central(中央)
表2.1在 LE physical transport 上操作时,为每个GAP角色定义了 Physical Layer(物理层)的遵从性需求和 Link Layer(链路层)功能。
GAP Roles When Operating Over an LE Physical Transport | |||||
Broadcaster | Observer | Peripheral | Central | ||
Physical Layer functionality: | |||||
Transmitter Characteristics | M | O | M | M | |
Receiver Characteristics | O | M | M | M | |
Link Layer functionality: | |||||
States: | |||||
Standby State | M | M | M | M | |
Advertising State | M | E | M | E | |
Scanning State | E | M | E | M | |
Initiating State | E | E | E | M | |
Connection State | Slave Role | E | E | M | E |
Master Role | E | E | E | M | |
Advertising event types: | |||||
Connectable and scannable undirected event | E | E | M | E | |
Connectable undirected event | E | E | O | E | |
Connectable directed event | E | E | O | E | |
Non-connectable and non-scannable undirected event | M | E | O | E | |
Non-connectable and non-scannable directed event | O | E | O | E | |
Scannable undirected event | O | E | O | E | |
Scannable directed event | O | E | O | E | |
Scanning type: | |||||
Passive scanning | E | M | E | O | |
Active scanning | E | O | E | C1 | |
Link Layer control procedures: | |||||
Connection Update procedure | E | E | M | M | |
Channel Map Update procedure | E | E | M | M | |
Encryption procedure | E | E | O | O | |
Master-initiated Feature Exchange procedure | E | E | M | M | |
Slave-initiated Feature Exchange procedure | E | E | C2 | C2 | |
Connection Parameters Request procedure | E | E | O | O | |
Version Exchange procedure | E | E | M | M | |
Termination procedure (终止程序) | E | E | M | M |
C1:如果支持被动扫描,那么主动扫描是可选的,否则主动扫描是强制性的。
C2:如果支持 Connection Parameters Request(连接参数请求)过程,则强制执行,否则可选。
2.2.2.1、广播的作用
扮演 Broadcaster(广播者)角色的设备是发送 advertising events(广告事件)的设备。以 Broadcaster(广播者)角色运行的设备称为 Broadcaster(广播者),并应具有 transmitter(发射机),可能具有 receiver(接收机)。
2.2.2.2、观察者的角色
以 Observer(观察者)角色运行的设备是接收 advertising events(广告事件)的设备。以 Observer(观察者)角色运行的设备称为 Observer(观察者),它应该有一个 receiver(接收器),也可能有一个 transmitter(发射器)。
2.2.2.3、外围的作用
任何使用 connection establishment procedures(连接建立过程)来接受 LE active physical link 的建立的设备都被称为 Peripheral 角色。处于 Peripheral 角色的设备将处于 Link Layer Connection State(链路层连接状态)的 Slave role(从属角色)。处于 Peripheral 角色的设备称为 Peripheral(外围设备)。Peripheral 应同时具有 transmitter(发射机)和 receiver(接收机)。
2.2.2.4、中央的作用
支持 Central(中央)角色的设备 initiates(初始化)一个 LE active physical link 的建立。处于 Central(中心)角色的设备将处于 Link Layer Connection State(链路层连接状态)的 Master(主)角色。在 Central 角色中操作的设备称为 Central。Central(中央设备)应同时具有 transmitter(发射机)和 receiver(接收机)。
2.2.2.5、多个GAP角色的 Concurrent(并发)操作
如果 Controller(控制器)支持,设备可以同时在多个 GAP 角色中运行。在使用任何 procedures(过程)或 modes(模式)之前,Host(主机)应该从 Controller(控制器)中读取所支持的 Link Layer States(链路层状态)和 State combinations(状态组合)。
2.3、用户需求和场景
蓝牙用户应该能够在预期的地方将蓝牙设备连接到任何其他蓝牙设备。即使这两个连接的设备不共享任何 common application(公共应用程序),用户也应该可以使用 basic Bluetooth capabilities(基本的蓝牙功能)发现这一点。当两台设备共享相同的 application(应用程序),但来自不同的 manufacturers(制造商)时,不应该仅仅因为 manufacturers(制造商)选择在 user interface level(用户界面级别)使用不同的名称调用 basic Bluetooth capabilities(基本蓝牙功能),或者实现按 different orders(不同顺序)执行的 basic procedures(基本过程),就阻止连接它们的能力。
2.4、Profile fundamentals(Profile 基本面)
此 profile 说明了对名称、值和 coding schemes(编码方案)的要求,这些用于 user interface level(用户界面级)所经历的参数和 procedures(过程)的名称。
此 profile 定义的操作模式不是特定于 service(服务)或 profile(概要文件)的,而是通用的,可以由引用此 profile 的 profile 和设备用来实现多个 profile 。
该 profile 定义了一般过程,可用于发现处于可发现模式的其他蓝牙设备的 identities(身份)、names (名称)和 basic capabilities(基本功能)。只指定没有使用 channel(通道)或 connection establishment(连接建立)的过程。
这个profile 定义了创建 bonds(即专用连接密钥交换)的一般过程。
此 profile 描述可用于建立到其他蓝牙设备的连接的一般过程,这些设备处于允许它们 accept connections(接受连接)和 service requests(服务请求)的模式。
2.5、conformance(一致性)
蓝牙设备应符合此 profile,以确保 basic interoperability(基本的互操作性)。
符合另一个 Bluetooth profile(蓝牙配置文件)的蓝牙设备可以使用该另一个 profile(配置文件)指定的通用过程的适配。但是,它们应至少在受支持的 generic procedures(通用程序)级别上与符合本 profile 的设备兼容。必须以指定的方式支持此 profile 中指定的所有功能(process-mandatory(流程强制))。这也适用于所有表示支持的 optional(可选)和 conditional capabilities(条件功能)。所有必需的功能,以及支持的可选和条件功能,须经过 Bluetooth qualification program 认证。