物联网操作系统LiteOS支持的协议栈

LiteOS是华为于2015年5月面向IoT领域发布的轻量级物联网操作系统。LiteOS可以支持 ARM64、ARM Cortex-A、ARM Cortex-M0,Cortex-M3,Cortex-M4,Cortex-M7 等芯片架构,几乎涵盖了目前所有主流的嵌入式芯片架构。

(图片来自于https://gitee.com/LiteOS/LiteOS)

    上图是官网所给出的架构图,主要包括如下几个部分:组件、应用接口层、文件系统、增加内核、基础内核、硬件抽象层、CPU架构。在这里不对LiteOS的内核、文件系统方面做介绍,将把重点放在它的网络连接能力上面。在架构图中,可以看到应用接口层包括应用相关协议栈,其中主要有LwM2M、CoAP、MQTT、DTLS、LwIP。

     (1) LwM2M:轻量级物联网设备管理协议

     LwM2M,即Lightweight M2M,轻量级M2M,是由开放移动联盟(OMA)提出的一种轻量级的物联网设备管理协议,它为物联网设备的管理和应用建立了一套标准。关于L2M2M的更多详细内容,可以参考https://omaspecworks.org/。

      (2) CoAP:资源受限的Web传输协议

      CoAP(Constrained Application Protocol),是针对资源受限的物联网设备所提出的Web传输协议。由于很多低成本物联网终端的处理能力、存储能力、传输能力都有限,在这一类设备上使用HTTP协议不合适,所以提出了CoAP。关于CoAP的详细内容,可以参考http://coap.technology/。

      (3) MQTT:消息队列遥测传输协议

      MQTT(Message Queuing Telemetry Transport),即消息队列遥测传输协议,是基于发布/订阅的消息协议。与CoAP类似,也是为硬件能力受限的设备所提出。关于MQTT的详细内容,可以参考http://mqtt.p2hp.com/。

      (3) DTLS: 数据报传输层安全协议

      DTLS(Datagram Transport Layer Security),即数据报传输层安全协议。由于TLS不能用来保证UDP传输的数据安全,因此Datagram TLS在现有的TLS协议架构上扩展使之支持UDP。关于DTLS的详细内容,可以参考https://datatracker.ietf.org/doc/html/rfc6347。

      (4) LwIP: 轻量级IP协议

    LwIP(Light Weight Internet Protoco1),即轻量级IP协议,是瑞士计算机科学院(Swedish Institute of Computer Science)Adam Dunkels等人开发的一套用于资源受限的嵌入式设备的开源TCP/IP协议栈。关于LwIP的详细内容,可以参考http://lwip.nongnu.org/。

      除了应用层的协议栈,LiteOS的框架图中并没有看到关于底层连接相关的协议。那它又是通过什么方式来实现底层连接和传输的呢?

      主要是通过LiteOS的硬件抽象层来实现。LiteOS针对不同的目标开发版提供了不同的硬件抽象层,其中包括支持板载各种设备的驱动。以STM32F7xx的HAL层代码为例,可以看到有如下的驱动支持,包括ADC、DAC、CAN bus、Ethernet、Flash、I2C、irDA、SPI、UART、USB等。详细的驱动信息可以参考如下连接:

https://gitee.com/LiteOS/LiteOS/tree/master/targets/bsp/drivers/STM32F7xx_HAL_Driver/Src

      如果物联网设备是通过以太网的方式接入网络,那通过以太网->LwIP->DTLS->CoAP的链路可以完成。那如果物联网设备是通过其他无线的方式接入网络,比如,常用的Wifi、蓝牙、Zigbee、NB-iot等无线协议接入,链路是怎么样的呢?

      纵观LiteOS所开源的框架图和源代码,并没有看到无线协议相关的信息。从实现的角度来讲,比较可行的方式是通过挂载相关无线通信模块,模块通过板载串行总线与主板连接。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值