网络子系统源代码布局:
subsys/net/ip:IP 协议栈代码
subsys/net/lib:DNS,mqtt,BSD等应用层的协议栈代码
include/net:需要使用IP网络功能的头文件,应用程序需要包含的头文件。
tests/net/:测试应用,主要是验证IP协议栈的功能。
http://docs.zephyrproject.org/subsystems/networking/overview.html
网络子系统是一个通过编译配置选项可配置的模块。可以根据自己的应用具体选择可以使用的功能。
ipv6,IPv4,dual stack support(同时使用IPv4和IPv6)
UDP(客户端和服务端),TCP(客户端和服务端)
BSD socket API:实验支持一个BSD socket 兼容API子集的一个实现。
HTTP:为应用程序提供了一个简单的库。一个实例应用实现了HTTP 的client端和server端。
MQTT(消息队列遥测传输):实现了一个基于MQTTv3.1.1的客户端应用。
CoPA(Constrained Application Protocol ):实现了COAP的客户端和服务端的应用。
LWM2M(OMA Lightweight Machine-to-Machine Protocol):
RPL:
DNS:
network management API:应用程序可以使用network management API监听管理内核生成的事件。如,一个IP地址增加到设备中或者是网络借口准备好了等。
multiple network technologies:zephyr OS能够同时支持多种网络技术。应用可以根据自己需要的网络协议的传输数据。