# 第1章 介绍
本文档描述 LoRaWAN™ 网络协议,是这针对电池供电的终端设备(无论是移动或是固定)进行优化的一套网络协议。
LoRaWAN 网络通常采用星型拓扑结构,其中网关(gateway[1])转发终端设备(end-devices[2])和中心网络服务器(Network Server)之间的消息,而网络服务器将来自网络的每个设备的数据包发送到关联的应用服务器(Application Server)。为了保证无线射频传输的安全,LoRaWAN 协议采用对称加密方法,这种方法使用会话密钥(从设备的根密钥计算得到)。在后端,设备的根密钥的存储和相关的密钥计算操作由入网服务器(Join Server)保证。
此规范假定网络服务器、应用服务器和入网服务器始终处于同一位置。在多个不相交的网络节点上管理这些功能服务器超出了本规范的讨论范围,但 [BACKEND-DOC] 中包括这些内容。
网关通过可靠的标准 IP 连接来接入网络服务器,终端则通过单跳的 LoRa™ 或者 FSK 来和一个或多个网关通讯[3]。虽然主要传输方式是终端上行传输给网络服务器,但所有的传输通常都是双向的。
终端和网关间的通讯被分散到不同的信道(frequency channels)和数据速率(data rates)上。数据速率的选择需要权衡通信距离和消息时长两个因素,使用不同数据速率的设备互不影响。LoRa 的数据速率范围可以从 0.3kbps 到 50kbps。为了最大程度地延长终端的电池寿命和扩大网络容量,LoRa 网络设施使用速率自适应(adaptive data rate,ADR)机制来独立管理每个终端的速率和RF输出。
每个设备可以在任意可用的信道,任意时间,使用任意可用数据速率发送数据,只要遵守如下规定:
- 终端的每次传输都使用伪随机方式来改变信道。频率的多变使得系统具有更强的抗干扰能力。
- 终端要遵守相应频段和本地区的无线电规定中的最大发射占空比要求。
- 终端要遵守相应频段和本地区的无线电规定中的最大发射时长(或驻留时间)要求。
注意:每个频段的最大发射占空比和空中停留时间各个地区有不同的规定,在 [PHY-DOC] 中有详细定义。
# 1.1 LoRaWAN Classes
所有的 LoRaWAN 设备都必须至少实现本文档描述的 Class A 功能。另外也可以选择性实现本文档中描述的 Class B 和 Class C 及后续可能定义的可选功能。但是在任何情况下,设备都必须兼容 Class A。
# 1.2 文档约定
本文件中的关键词 “必须(MUST)”,“不得(MUST NOT)”,“必需(REQUIRED)”,“应该(SHALL)”,“不应该(SHALL NOT)”,“建议(SHOULD)”,“不建议(SHOULD NOT)”,“推荐(RECOMMENDED)”,“可以(MAY)”和“可选(OPTIONAL)” 按照 RFC 2119中的描述进行解释。
MAC 命令的书写方式形如 LinkCheckReq(粗斜体),位和位域的书写方式形如 FRMPayload(粗体),常量书写形如 RECEIVE_DELAY1(常规体,大写),变量书写形如 N(斜体大写)。
在本文档中,
- 所有空中传输数据的多字节字段的字节序均采用小端模式(little endian)
- EUI 是8字节字段,采用小端模式传输(little endian)
- 默认情况下,所有 RFU 保留位必需由消息发送方设置为零,并且接收方忽略