LoRaWAN介绍16 Server分类
来源:互联网 发布:box2d.js 编辑:程序博客网 时间:2024/05/22 13:02
LoRaWAN介绍16 Server分类
“软件构建的核心就是管理复杂度”--SteveMcConnell《代码大全》
在《LoRaWAN介绍2 架构》中提到:LoRaWAN的重点和难点--LoRaWAN Server!http://blog.csdn.net/jiangjunjie_2005/article/details/54134636
“分而治之”是人们降低复杂度的有效方法,LoRaWAN Server很娴熟地运用了该技巧,它将Server分成4种角色。
1 服务器框架
阅读《InterconnectingSmart Objects with IP》会发现,该书籍的作者极力推荐使用IPv6将智能设备互联,构建一个物联网。
目前,更可行的物联网方案是:将智能设备连接到Internet。这样,基于已有的互联网,无论是经济上,还是技术上,都性价比更高。另外,大部分智能设备的计算能力和电能都不适合IPv6的协议栈运行。
看到下面LoRaWAN的架构,它是基于Internet建设物联网,Gateway是IP设备(运行IP协议栈),而End Node运行的是LoRaMac-node(没有运行IP协议栈)。
LoRaWAN Server共有4种角色,包括:NS(Network Server,网络服务器)、AS(Application Server,应用服务器)、NC(Network Controller,网络控制服务器)和CS(Customer Server,客户服务器)。
2 各角色功能
4种Server的功能如下表所示。
Server
功能
下游设备
上游设备
NS
连接网关,收发RF数据包
Gateway
AS和NC
AS
加密和解密应用数据
NS
CS
NC
控制网关和终端的RF参数
NS
Console
CS
存储终端上传和用户下发数据
AS
/
2.1 NS(Network Server,网络服务器)
1个NS可以连接1个或多个Gateway,它们之间的接口协议为JSON / GWMP / UDP / IP。同样,NS可以连接1个或多个AS和NC,它们之间的接口协议为JSON / TCP / IP。
NS负责RF数据包的完整性校验:
上行:End NodeàGatewayàNS,它将检验RF数据包的MIC是否正确;
下行:NSàGatewayàEnd Node,它将给RF数据包计算并封装MIC。
为此,NS需要记录每一个End Node的如下信息:
属性
位宽
功能
DevEUI
64
该End Node全局唯一标识码
AppEUI
64
该End Node分配的应用标识码
DevAddr
32
该End Node的网络地址
NwkSKey
128
检验该End Node上行和下行RF数据包的完整性
SeqSend
16
该End Node下一个上行RF数据包的序列号
SeqRecv
16
该End Node下一个下行RF数据包的序列号
2.2 AS(Application Server,应用服务器)
1个AS可以连接1个或多个NS和CS,它们之间的协议为JSON / TCP / IP。
AS负责RF数据包的应用数据加密和解密:
上行:End NodeàGatewayàNSàAS,它将解密应用数据并提交给CS;
下行:ASàNSàGatewayàEnd Node,它将CS转交的应用数据加密。
为此,NS需要记录每一个End Node的如下信息:
属性
位宽
功能
DevEUI
64
该End Node全局唯一标识码
AppEUI
64
该End Node分配的应用标识码
AppSKey
128
解密该End Node的上行数据;加密下行数据给该End Node
2.3 NC(Network Controller,网络控制服务器)
1个NC可以连接1个或多个NS,它们之间的协议为JSON / TCP / IP。
NC负责控制RF参数,目前,End Node的通信速率(ADR)由它控制。(后续扩展可能包括:End Node的发射功率、移动Node的漫游和选择最佳Gateway通信等)。
2.4 CS(Customer Server,客户服务器)
1个CS可以连接1个或多个AS,它们之间的协议为JSON / TCP / IP。
CS是用户自定义的服务器,除了接口协议外,它具备高度的灵活性:灵活的数据存储(如:使用关系性数据库或简单文件),灵活的数据加工(如:基于数据挖掘或简单显示)。
3 通信接口
4种服务器角色和Gateway,以及Command console的层次关系如下图所示。
它们之间的通信协议规律如下:
NS和Gateways通过JSON / GWMP / UDP / IP;
Command console和4种服务器通过JSON / UDP / IP;
4种服务器之间通过JSON / TCP / IP。
下载经典的LoRaWAN资料,请链接:http://www.rimelink.com/nd.jsp?id=48&_np=107_316
- LoRaWAN介绍16 Server分类
- LoRaWAN介绍17 Server接口
- LoRaWAN介绍18 Server杂谈
- LoRaWAN介绍19 Server开源
- LoRaWAN介绍
- LoRaWAN介绍1 概貌
- LoRaWAN介绍2 架构
- LoRaWAN介绍3 优点
- LoRaWAN介绍4 缺点
- LoRaWAN介绍5 对手
- LoRaWAN介绍6 部署
- LoRaWAN介绍7 入网
- LoRaWAN介绍8 QoS
- LoRaWAN介绍9 安全
- LoRaWAN介绍10 定位
- LoRaWAN介绍13 SX1301
- 标记 LoRaWAN介绍
- LoRaWAN介绍11 唤醒通信
- 如何做好程序猿?--个人心得
- 最短路
- android sqlite入门知识
- android bindService 方法flags参数FAQ
- Spring+Struts2+hibernate快速使用
- LoRaWAN介绍16 Server分类
- python中的下划线
- (一)CocoaPods入门(原文翻译)
- 关于全栈的知乎讨论
- Tomcat结构浅析
- day 2
- C2-3实心菱形
- HDFS 架构
- z-stack home 1.2.2a之z-tool使能