LoRaWAN协议(一)--架构解析
LoRaWAN 分层
总体架构一共分为4部分:

LoRaWAN从底层到最后用户拿到数据的通讯过程通讯大致可分为三段:
- MOTE <---> GW (MAC层)
- GW <---> server
- server <---> 用户
LoRa联盟 规定了 MAC层的通讯协议,只有在设备(GW、MOTE)共同遵守的MAC层协议的前提下,不同硬件厂商的设备才能互相接入。
而GW <---> Server以及Server <---> 用户这两层的协议虽然LoRa联盟有所规范,但不同厂商之间可能会存在不同。
Mote/Node
Mote/Node 就是节点,在LoRaWAN中,节点一般与传感器连接,负责的就是收集传感数据,然后通过LoRaMAC 协议传输给Gateway。
Gateway
Gateway也就是网关,主要负责将节点的数据传输给服务器,也就是完成数据从LoRa方式到网络方式的转换,其中Gateway并不对数据做处理,只是负责将数据打包封装,然后传输给server(服务器)。
Server
按照LoRaWAN的规定,Server又分为四部分--NS(Network server)、AS(Application server)、CS(Customer server)、NC(Network controller)
其中每个部分的分工和职能各不相同。相应的我会在后续的文章中讲到。
用户
用户一般只的是直观使用这个数据的人,一般是APP或者其他客户端方式,从服务器获取数据。
应用分析
在这里我以LoRaWAN 方式实现农场的土壤湿度检测来具体说明这各个部分的区别:
实现农场的土壤湿度的检测主要分为几个步骤:
- 实现传感器采集土壤湿度(sensor层)
- 将采集到的土壤湿度通过MOTE发送给GW(LoRaMac 层)
- GW将收到的数据发送给NS(GW<--->Server)
- NS再将数据发送给用户(Server<--->Customer)
- 用户通过APP或者其他方式可以看到土壤的湿度状态。(Display)
通过以上的几个步骤,就可以实现远程监控农场土壤湿度。
LoRaWAN协议(一)--架构解析的更多相关文章
- LoRaWAN协议(一)------架构解析
摘自:http://www.cnblogs.com/answerinthewind/p/6200497.html LoRaWAN协议(一)-----架构解析 (1)LoRaWAN分层 LoRaWAN总 ...
- LoRaWAN协议(三)--Server端数据协议
LoRaWAN Server 端架构 LoRaWAN 的server包括 NS(Network server).AS(application server).CS(Custom server).... ...
- LoRaWAN协议(六)--OTAA KEY生成过程
前言 通过OTAA方式入网的设备,通讯时使用的KEY需要通过服务器获得,在入网之间,设备无法通讯. 相关的OTAA入网流程已经在上一章中讲解过了,有兴趣的可以去看看**LoRaWAN协议(五)__OT ...
- LoRaWAN协议(五)--OTAA入网方式详述
前言 OTAA(Over-The-Air Activation),是LoRaWAN的一种空中入网方式.当node在上电的时候处于非入网状态时,需要先入网才能和服务器进行通信.其操作就是node发送jo ...
- PrismCDN 网络的架构解析,以及低延迟、低成本的奥秘
5 月 19.20 日,行业精英齐聚的 WebRTCon 2018 在上海举办.又拍云 PrismCDN 项目负责人凌建发在大会做了<又拍云低延时的 WebP2P 直播实践>的精彩分享. ...
- 亿级日PV的魅族云同步的核心协议与架构实践(转)
云同步的业务场景 这是魅族云同步的演进,第一张是M8.M9,然后到后面的是MX系统,M9再往后发展,我们的界面可以看到基本上是没有什么变化的,但本质发生了很大的变化,我们经过了一些协议优化,发展到今天 ...
- 亿级日PV的魅族云同步的核心协议与架构实践
声明:本文根据msup和魅族联合举办的<第三期魅族技术开放日-架构设计与优化>录音整理原创首发,转载或节选内容前需获授权. 嘉宾:沈辉煌,魅族高级架构师,魅族云同步负责人.2010年加入魅 ...
- [转]毕设- 深入HBase架构解析(一)
深入HBase架构解析(一) 前记 公司内部使用的是MapR版本的Hadoop生态系统,因而从MapR的官网看到了这篇文文章:An In-Depth Look at the HBase Archi ...
- 王院生:Apache APISIX 微服务网关极致性能架构解析
2019 年 10 月 27 日,又拍云联合 Apache APISIX 社区举办 API 网关与高性能服务最佳实践丨Open Talk 杭州站活动,Apache APISIX PPMC 成员王院生做 ...
随机推荐
- python实现curl功能
之前写过一篇文章关于python CURL模块的,在这里我们从urllib来实现同样的功能.具体代码如下: import urllib import urllib2 import json #发起请求 ...
- 修復jquery的tablesorter对加了千分位的数字无法正确排序的bug
找到函数: function getElementText(config, node) { var text = ""; if (!node) return "" ...
- Cocos2d-x3.x塔防游戏(保卫萝卜)从零开始(三)
一.前提: 完成前一篇的内容. 具体参考:Cocos2d-x3.x塔防游戏(保卫萝卜)从零开始(二)篇 二.本篇目标: l 说说游戏中各种角色的动作.属性以及重构思路 l 进行代码重构让色狼大叔和 ...
- spring和ehcache整合,实现基于注解的缓存实现
要实现基于注解的缓存实现,要求Spring的版本在3.1或以上版本. 首先需要在spring的配置文件中添加对缓存注解的实现: <?xml version="1.0" enc ...
- java.lang.OutOfMemoryError: PermGen space PermGen space & java.lang.OutOfMemoryError: Java heap space Heap siz
java.lang.OutOfMemoryError: PermGen space PermGen space 由-XX:PermSize -XX:MaxPermSize 引起 java.lang. ...
- spring整合activemq发送MQ消息[Topic模式]实例
Topic模式消息发送实例 1.pom引入 <dependency> <groupId>junit</groupId> <artifactId>juni ...
- 自己写的一个Yeoman的Generator-Require-Angularjs
Yeoman是一个常见的工作流,能够很方面的搭建属于自己的脚手架. 这段时间我用闲暇时间写了一个Generator来玩了一下,这个Generator的主要目的是快速建立一个RequireJS+Angu ...
- Mac OS X Terminal 101:终端使用初级教程
Mac OS X Terminal 101:终端使用初级教程 发表于 2012 年 7 月 29 日 由 Renfei Song | 文章目录 1 为什么要使用命令行/如何开启命令行? 2 初识Com ...
- Android手机的 storage
老外的一段解释 -------------------------------------------------------------------------------------------- ...
- kwm备忘
brew install homebrew/binary/kwm ==> Tapping homebrew/binary Cloning into '/usr/local/Library/Tap ...