目录
一、什么是BLE Mesh Upper Transport Layer上传输层?
2.1 Upper Transport Access PDU
2.2 Upper Transport Control PDU
一、什么是BLE Mesh Upper Transport Layer上传输层?
上传输层(Upper Transport Layer)是蓝牙Mesh网络的一部分,它主要负责以下两个方面的功能:
- 对接入层(Access Layer)进出的应用数据进行加密、解密和认证。这样可以保证数据的安全性和完整性,防止被篡改或伪造。
- 处理一些特殊的消息,称为“传输控制消息”(Transport Control Messages),包括与“友谊”(Friendship)相关的心跳和消息。这些消息用于实现低功耗节点(Low Power Nodes)和好友节点(Friend Nodes)之间的通信,以节省电池寿命和网络资源。
上传输层(Upper Transport Layer)与底层传输层(Lower Transport Layer)协同工作,实现数据的分段和重组,以适应不同的承载层(Bearer Layer)的要求。
二、Upper Transport PDU
Upper Transport有两种PDU,分别是Upper Transport Access PDU和Upper Transport Control PDU。Upper Transport Access PDU用于传输来自Access Layer的应用数据,Upper Transport Control PDU用于传输一些特殊的消息,如与Friendship相关的消息和Heartbeat消息。
2.1 Upper Transport Access PDU
Upper Transport Access PDU是Upper Transport Layer发送或接收的一种PDU(协议数据单元),它用于传输来自Access Layer的应用数据。Upper Transport Access PDU由两个字段组成:
- Encrypted Access Payload:这是对Access Layer的PDU进行加密后的结果,使用Application Key或Device Key进行加密。加密后的Access Payload最大为380字节(如果TransMIC为4字节)或376字节(如果TransMIC为8字节)。
- TransMIC:这是一个用于检查Access Payload的完整性和安全性的字段,使用Transport Message Integrity Check(TransMIC)算法生成。TransMIC的大小取决于Lower Transport Layer的SEG和SZMIC字段,如果是分段消息,TransMIC可以是4字节或8字节;如果是不分段消息,TransMIC只能是4字节。
Upper Transport Access PDU的结构如下图所示: