LoRa数据包格式介绍

  以下是关于LoRa数据包格式的完整解析,结合物理层(PHY)与MAC层(LoRaWAN协议)结构,并区分不同协议栈差异:

  一、LoRa物理层(PHY)数据包格式

  LoRa物理层数据包的核心是线性调频扩频(CSS)调制,通过频率线性变化的“啁啾信号”编码数据。其结构分为显式模式隐式模式两种:

lora

  1. 显式模式(Explicit Mode)

  适用于通用场景,包含完整的头部信息,结构如下:

字段功能描述长度/配置技术原理
前导码(Preamble)接收端时钟同步与信号检测6–65.535个符号(默认12.25符号)由基准up-Chirp组成,通过相关性检测实现同步
同步字(Sync Word)标识网络归属,防止干扰1字节编码网络号(如0x34为私有网络),接收端据此过滤无关数据包
物理层头部(PHDR)携带载荷参数:扩频因子(SF)、带宽(BW)、编码率(CR)1字节决定数据速率与容错性
SF↑ → 传输距离↑、速率↓
PHDR-CRC校验头部完整性2字节CRC16算法
有效载荷(Payload)应用层数据(传感器读数、控制命令等)1–255字节经CSS调制后的编码Chirp序列
CRC校验码检测传输错误(仅上行链路)可选(默认启用)下行链路无CRC

  2. 隐式模式(Implicit Mode)

  适用于低开销场景(如时钟同步广播),特点:

  无PHDR头部:SF、BW、CR等参数由收发双方预先约定。

  仅含前导码+有效载荷:减少冗余数据,提升传输效率。

  二、MAC层(LoRaWAN协议)数据包格式

  LoRaWAN在物理层载荷(PHY Payload)内定义MAC帧结构,由三部分组成:

  PHY Payload = MHDR(MAC头) + MACPayload(MAC载荷) + MIC(完整性校验)

  1. MHDR(MAC Header,1字节)

位域名称功能描述取值示例
7–5MType消息类型010:未确认上行数据
011:需确认上行数据
4–2RFU保留位默认为000
1–0Major协议版本00:LoRaWAN R1.0

  2. MACPayload(可变长度)

字段功能描述结构细节
FHDR(帧头)设备地址与控制信息包含:
– DevAddr(4字节):设备唯一地址
– FCtrl(1字节):帧控制位(ADR/ACK等)
– FCnt(2字节):帧计数器防重放
– FOpts(0-15字节):MAC命令(如速率调整)
FPort端口号0:MAC命令
1–223:应用数据
224–255:保留
FRMPayload加密的应用数据AES-CTR模式加密(密钥=AppSKey)

  3. MIC(Message Integrity Code,4字节)

  作用:防篡改校验。

  算法:AES-CMAC,基于NwkSKey计算MHDR+MACPayload的摘要。

  三、不同协议栈的数据包差异

  1. LoRaWAN(标准协议)

  设备分类

  Class A:双向通信(上行后开两个下行窗口),最低功耗。

  Class B:定时开启下行窗口(需时间同步)。

  Class C:持续监听下行(高功耗,适用于供电设备)。

  安全机制:端到端AES加密(AppSKey)与网络级加密(NwkSKey)。

  2. Symphony Link(专有协议)

  由Link Labs开发,优化LoRaWAN的局限性:

特性LoRaWANSymphony Link
确认机制单向ACK(Class A)双向确认(保证可靠交付)
占空比限制1%(欧盟868MHz频段)无限制
中继支持不支持支持多跳中继
动态参数调整需网关命令设备自主计算链路质量

  四、关键参数对数据包的影响

  1. 扩频因子(SF)

  SF7(最快)至SF12(最远),相同数据下SF12传输时间比SF7长10倍。

  2. 编码率(CR)

  CR=4/5(高效)至4/8(高容错),冗余数据提升抗干扰性。

  3. 带宽(BW)

  125/250/500kHz,带宽↑ → 速率↑ → 距离↓。

  五、总结

  物理层:CSS调制保障远距离与抗噪性,显式/隐式模式适应不同场景。

  MAC层(LoRaWAN) :分层加密(AppSKey/NwkSKey)与MIC校验确保安全,设备分类优化功耗。

  协议栈选择

  公共网络首选LoRaWAN(标准化、高兼容性);

  工业专网可选Symphony Link(高可靠、无占空比限制)。

  注:LoRa物理层与LoRaWAN协议需严格区分——前者定义信号调制,后者定义组网规则。

滚动至顶部