NB-IOT介绍

@

简介

LPWAN(Low Power Wide Area Network,低功耗广域网),是一种技术概念,包括了很多技术标准,比较主流的有NB-IoT,SigFox,LoRa等技术。
NB-IoT(Narrow Band Internet of Things, 窄带物联网)成为万物互联网络的一个重要分支。
NB-IoT构建于蜂窝网络,只消耗大约180KHz的带宽,可直接部署于GSM网络、UMTS网络或LTE网络,以降低部署成本、实现平滑升级。

特点

img

NB-IoT技术有四大特点:超低功耗,超大连接,超低成本,超强覆盖。

超低功耗

物联网设备和传统通信设备不同,大部分物联网设备不需要随时在线,它们仅在自己需要发送数据包时连入网络即可,其余时间如果一直保持在线只会增加功耗,并无实际价值。针对物联网设备的这种行为特征,NB-IoT技术设计了三种不同的省电模式:

img

注:图中y轴表示设备功耗。

DRX模式

该模式的终端基本处于在线状态,物联网平台的下行数据随时可达终端设备,在每个DRX周期(例如1.28秒、2.56秒,5.12秒 或者10.24秒),终端都会检测一次是否有下行业务到达,适用于对时延有高要求的业务。
DRX虽然叫做“不连续接收”,但是对硬件产品来讲,是“连续接收”。随时都可以收到数据。相当于随时在监听,所以功耗最高。(DRX待机功耗1mA左右)

eDRX模式

eDRX模式是基于DRX拓展的省电模式,该模式下的终端在每个eDRX周期内,只有在设置的寻呼时间窗口内,终端可接收物联网平台的下行数据,其余时间处于休眠状态,不接收下行数据。对下行业务时延有较高要求,物联网平台可根据设备是否处于休眠状态缓存消息或者立即下发消息。
eDRX,就是把网络先开一会、再停一会。 开的时候能收到数据,停的时候收不到数据。停的时间从几十秒到几个小时,可以配置。(eDRX 5分钟间隔的待机功耗在0.2mA左右)

PSM模式

该模式的终端非业务期间深度休眠,不接收下行数据,只有终端主动发送上行数据时可接收物联网平台缓存的下行数据,适合对下行数据无时延要求的业务。以应用场景来说,NB-IOT(简称NB)的上行数据传给核心网之后,NB进入空闲状态,此时开启一个激活定时器,定时器的时间由核心网和NB协商决定。激活定时器超时之后,NB进入PSM状态。在此状态下NB的射频被关闭,相当于关机,但是核心网还保留着NB的信息,当NB从PSM唤醒之后进入连接状态(不需要再次进行附着建立)。在PSM状态下,下行数据不可达,那核心网就是要下发怎么办,此时需要服务网关缓存下行数据并延迟,等NB从PSM唤醒之后,再下发这条数据。那么NB被唤醒有2种方式,第一是NB需要上行发数据的时候,第二是TAU定时器超时,注意TAU和激活定时器是2个不同的定时器。TAU定时器的用途是NB必须多久上报一次,类似心跳。进入PSM状态,NB不再接收寻呼消息和下行数据,看起来NB和核心网失去连接,但是NB仍然注册在核心网上(核心网还保留着NB的信息)。
PSM,相当于把eDRX开关网络的频率放的更低,低至几天打开一次网络。同样,打开网络的时候能收到数据,不打开网络的时候收不到数据。(PSM模式下,待机功耗只有微安级别,此时才能做到“一节电池用5年”。)

img

PSM状态下特性
PSM即低功耗模式,是3GPP R12引入的技术,其原理是允许在空闲态一段时间后,关闭信号的收发和AS(接入层)相关功能,相当于部分关机,从而减少天线,射频,信号处理等的功耗。
UE在PSM期间,不接收任何网络寻呼,对于网络侧来说,UE此时是不可达的,数据,短信,电话均进不来。
PSM模式下,终端处于休眠模式,近乎关机状态,可大幅度省电。在PSM期间,终端不在监听寻呼,但终端还是注册在网络中,因此,要发送数据时不需要重新连接或建立PDN连接。

  • 连接态:进行数据收发,由TAU定时器T3412超时
  • 空闲态:T3324启动,RRC释放,空闲状态,监听寻呼
  • PSM:T3324超时,启动T3412, 不监听寻呼

img

三个模式的核心区别

设计NB-IOT物联网产品,选择什么工作模式,核心在:是否需要随时随地找到设备
DRX,能够随时随地找到设备。(共享单车锁、智能锁,远程开锁)
eDRX,需要花几分钟至一两个小时才能找到设备。(货物物流监控)
PSM,可能需要一两天才能找到设备。(远程水表煤气表)

超大连接

NB-IoT设备联网的方式和其他移动设备类似,终端设备通过基站接入核心网,再连接至业务平台。但物联网设备的话务模型和传统移动设备不同,物联网设备数量多,且大部分设备发送包小,对时延不敏感。基于物联网的话务模型,NB-IoT网络要允许更多的设备同时接入,达到现有无线技术的50~100倍。
为了达到超大连接的目标,NB-IoT采用了以下关键技术:

  1. NB-IoT使用15kHZ的子载波进行传输,调度粒度小,在同样资源的情况下,资源的利用率会比LTE等宽带技术高很多。
  2. NB-IoT的省电技术减少了设备与基站间的通信,不仅为设备省了电,还降低了每个设备对基站的资源使用。
  3. NB-IoT物理层精简了很多物理信道和信号,减少了空口令开销。
  4. NB-IoT基于物联网话务模型优化了基站和核心网,拥有独立的准入拥塞控制、终端上下文信息存储能力和下行数据缓存机制,使终端设备能够安心休眠,并在激活后能快速接入核心网。根据仿真测试,现在NB-IoT网络单小区基站可接入约5万个终端设备,这样的超大连接能力使物联网能够做到真正的“万”物互联。

超低成本

NB-IoT是再现有的LET网络的基础上面升级改造的,大大的降低了网络的建设以及维护的成本,并且国内目前4G基站覆盖率非常高,方便运营商推广NB-Iot。在终端方面,NB-IoT芯片是专门为物联网设计的,所需要的各个组件比传统的更少,使得所需要的成本大大降低。

超强覆盖

NB-IOT通过时域重传技术和提升功率谱密度,相比之下GSM还有LTE网络的MCL有着20dB的增益提高,同时NB-IOT具有更强的穿透性,甚至可以穿透3层水泥到达地下室等一般网络无法到达的地方,这样就可以在一些一般网络无法穿透的地区使用。

通信协议

NB-IoT是一种通信技术,使用NB-IoT网络和物联网平台进行通信的设备一般还要遵守某种通信协议,相当于两个人打电话,声音通过电波传播,但这两个人使用的语言必须是对方能理解的语言通话才能成立。
当前NB-IoT设备和物联网平台通信的主流通信协议是CoAP, LWM2M以及MQTT协议。
由于大部分物联网设备都是资源受限型设备,它们的物理资源和网络资源都非常有限,直接使用现有的TCP和HTTP协议进行通信对它们来说要求实在是太高了。

COAP协议

  1. COAP协议网络传输层由TCP改为UDP。

img

  1. 它基于REST,SERVER的资源地址和互联网一样也有类似url的格式,客户端同样有POST,GET, PUT, DELETE方法来访问SERVER,对HTTP做了简化
  2. COAP是二进制格式的,HTTP是文本格式的,COAP比HTTP更加紧凑。
  3. 轻量化,COAP最小长度仅仅4B,一个HTTP的头都几十个B了。
  4. 支持可靠传输,数据重传,块传输。 确保数据可靠到达。
  5. 支持IP多播,  即可以同时向多个设备发送请求。
  6. 非长连接通信,适用于低功耗物联网场景。

COAP协议消息类型

COAP协议有4种消息类型

  • CON -- 需要被确认的请求,如果CON请求被发送,那么对方必须做出响应。这有点像TCP,对方必须给确认收到消息,用以可靠消息传输。
  • NON -- 不需要被确认的请求,如果NON请求被发送,那么对方不必做出回应。这适用于消息会重复频繁的发送,丢包不影响正常操作。这个和UDP很像。用以不可靠消息传输。
  • ACK -- 应答消息,对应的是CON消息的应答。
  • RST -- 复位消息,可靠传输时候接收的消息不认识或错误时,不能回ACK消息,必须回RST消息。

COAP的请求码(requests)和响应码(responses)

  • GET方法 --用于获得某资源
  • POST方法 --用于创建某资源
  • PUT方法 --用于更新某资源
  • DELETE方法 --用于删除某资源

COAP的安全性

COAP的安全性是用DTLS加密实现的。DTLS的实现需要的资源和带宽较多,如果是资源非常少的终端和极有限的带宽下可能会跑不起来。DTLS仅仅在单播情况下适用。

MQTT协议

MQTT协议(Message Queuing Telemetry Transport),翻译过来就是遥信消息队列传输,是IBM公司于1999年提出的,现在最新版本是3.1.1。MQTT是一个基于TCP的发布订阅协议,设计的初始目的是为了极有限的内存设备和网络带宽很低的网络不可靠的通信,非常适合物联网通信。

MQTT工作原理

img

如上图所示,客户端A连接到消息代理(message broker), 消息代理返回确认消息。客户B发布消息温度25度,客户A订阅‘温度’,消息代理吧消息推给客户A,客户A发布温度20度,但客户B没有订阅,消息代理不推送。消息B又发布了温度38度,客户A就再次收到订阅的消息38度。最后客户端断开连接。
MQTT消息的QOS
MQTT支持三种QOS等级:

  • QoS 0:“最多一次”,消息发布完全依赖底层 TCP/IP 网络。分发的消息可能丢失或重复。例如,这个等级可用于环境传感器数据,单次的数据丢失没关系,因为不久后还会有第二次发送。
  • QoS 1:“至少一次”,确保消息可以到达,但消息可能会重复。
  • QoS 2:“只有一次”,确保消息只到达一次。例如,这个等级可用在一个计费系统中,这里如果消息重复或丢失会导致不正确的收费。

MQTT的消息类型

  1. CONNECT – 连接服务端:客户端到服务端的网络连接建立后, 客户端发送给服务端的第一个报文必须是CONNECT报文

  2. CONNACK – 确认连接请求:服务端发送CONNACK报文响应从客户端收到的CONNECT报文。 服务端发送给客户端的第一个报文必须是CONNACK。如果客户端在合理的时间内没有收到服务端的CONNACK报文, 客户端应该关闭网络连接。合理的时间取决于应用的类型和通信基础设施。

  3. PUBLISH – 发布消息:PUBLISH控制报文是指从客户端向服务端或者服务端向客户端传输一个应用消息。

  4. PUBACK –发布确认:PUBACK报文是对QoS 1等级的PUBLISH报文的响应。

  5. PUBREC – 发布收到( QoS 2, 第一步):PUBREC报文是对QoS等级2的PUBLISH报文的响应。 它是QoS 2等级协议交换的第二个报文。

  6. PUBREL – 发布释放( QoS 2, 第二步):PUBREL报文是对PUBREC报文的响应。 它是QoS 2等级协议交换的第三个报文。

  7. PUBCOMP – 发布完成( QoS 2, 第三步):PUBCOMP报文是对PUBREL报文的响应。 它是QoS 2等级协议交换的第四个也是最后一个报文。

  8. SUBSCRIBE - 订阅主题:客户端向服务端发送SUBSCRIBE报文用于创建一个或多个订阅。 每个订阅注册客户端关心的一个或多个主题。 为了将应用消息转发给与那些订阅匹配的主题, 服务端发送PUBLISH报文给客户端。 SUBSCRIBE报文也( 为每个订阅) 指定了最大的QoS等级, 服务端根据这个发送应用消息给客户端。

  9. SUBACK – 订阅确认:服务端发送SUBACK报文给客户端, 用于确认它已收到并且正在处理SUBSCRIBE报文。

  10. UNSUBSCRIBE –取消订阅:客户端发送UNSUBSCRIBE报文给服务端, 用于取消订阅主题。

  11. UNSUBACK – 取消订阅确认:服务端发送UNSUBACK报文给客户端用于确认收到UNSUBSCRIBE报文。

  12. PINGREQ – 心跳请求:客户端发送PINGREQ报文给服务端的。
    1. 在没有任何其它控制报文从客户端发给服务的时, 告知服务端客户端还活着。
    2. 请求服务端发送 响应确认它还活着。
    3. 使用网络以确认网络连接没有断开。

  13. PINGRESP – 心跳响应:服务端发送PINGRESP报文响应客户端的PINGREQ报文。 表示服务端还活着。

  14. DISCONNECT –断开连接:DISCONNECT报文是客户端发给服务端的最后一个控制报文。 表示客户端正常断开连接。

LWM2M协议

OMA(OMA是一家国际组织) Lightweight M2M 主要动机是定义一组轻量级的协议适用于各种物联网设备,因为M2M设备通常是资源非常有限的嵌入式终端,无UI,  计算能力和网络通信能力都有限。同时也因为物联网终端的巨大数量,节约网络资源变得很重要。
LWM2M 定义了三个逻辑实体:

  • LWM2M Server 服务器
  • LWM2M client 客户端 负责执行服务器 的命令和上报执行结果
  • LWM2M 引导服务器  Bootstrap server 负责 配置LWM2M客户端

在这三个逻辑实体之间有4个逻辑接口:

  1. Device Discovery and Registration 这个接口让客户端注册到服务器并通知服务器客户端所支持的能力(简单说就是支持哪些资源Resource和对象Object)
  2. Bootstrap Bootstrap server通过这个接口来配置Clinet - 比如说LWM2M server的URL地址
  3. Device Management and Service Enablement 这个就是最主要的业务接口了。 LWM2M Server 发送指令给 Client 并受到回应.
  4. Information Reporting 这个接口是 LWM2M Client 来上报其资源信息的,比如传感器温度。上报方式可以是事件触发,也可以是周期性的。
    LwM2M属于应用层协议,位于CoAP协议之上,而CoAP可以进行DTLS加密处理,最后通过UDP或SMS方式传送。

img

与物联网平台关系

img

物联网平台使用介绍

华为平台:

支持的所有协议
https://support.huaweicloud.com/devg-IoT/iot_02_9997.html
COAP/LWM2M协议: 可以正常连接,平台可以正常接收数据(BASE64加密后的数据)
MQTT协议: 可以正常连接,平台可以正常接收数据(BASE64加密后的数据)

阿里平台:

支持的所有协议
https://help.aliyun.com/document_detail/30540.html?spm=a2c4g.11186623.6.586.426c6eebzNvatB
COAP协议: 仅上海地域支持COAP通信
MQTT协议: 可以正常连接,正常订阅以及发布消息

电信平台:

https://help.ctwing.cn/she-bei-jie-ru/LWM2M-xie-yi/she-bei-ce-kai-fa/jie-kou-jie-shao.html
LWM2M协议: 可以正常连接上线
MQTT协议: 可以正常连接,正常订阅以及发布消息

移动平台:

支持的所有协议
https://open.iot.10086.cn/doc/multiprotocol/

附录

问题:使用NB模块与NB卡是否能够连接普通的PC端服务器

可以连接
原因1. 能够分配到IP地址
原因2. 支持TCP和UDP连接

问题:使用NB模块与普通卡是否能够连接到我们的PC端服务器

不可以连接
原因1:查找不到信号
原因2:不能注网
原因3:分配不到IP地址

问题:NB-IOT网与普通网是否互通

基于LTE网络的低功耗物联网解决方案称为NB-IOT, 并且经过验证,是可以连接到我们本地PC建立的服务器上。

问题:NB的数据链路层是什么

PPP

问题:又要省电,又要随时工作?有这些招数

虽然NB-IoT的三种模式各有优劣,但实际应用场景还可以通过额外的手段来提升用户体验。

  • 智能锁:虽然eDRX模式做不到立刻开锁,但是可以预留一个按钮,用户按一下,锁就被激活,主动联网去服务器取开锁数据,然后开锁。虽然多按一次按键,但是电量可以节约几十倍,等候时间最多也就十多二十秒。
  • 货物的物流监控:可以在监控器中放一个加速度传感器。货物动的时候把联网频率加快,货物不动的时候就不联网。也能够数据传输实时度提升几倍,而且不增加总的功耗。
  • 智能井盖:平时打开PSM模式省电,一旦被盗窃,可以通过加速度传感器检测到翻转,然后切换到DRX模式,就能够被实时追踪了。

posted @ 2022-09-21 18:42  啊唯0o  阅读(1127)  评论(0编辑  收藏  举报