Zephyr网络分析-功能概述

Creative Commons
本作品采用知识共享署名

Zephyr网络功能介绍说明.

Zephyr的网络模组是高度模块化设计的,构建时通过配置项可以对网络模组进行高度的配置剪裁。当不需要网络功能的情况下可以通过配置完全关闭Zephyr的网络功能。

Zephyr支持的网络功能如下:

  • IPv6

    • 支持单播和组播地址
    • 支持设置静态地址或者SLAAC(RFC 4862)
    • 支持多个IPv6 prefixes
    • 支持IPv6 neighbor cache
    • 支持neighbor discovery (RFC 4861)
    • 支持组播监听发现v2(RFC 3810)
    • 支持6lowpan 可用于蓝牙 IPSP (RFC 7668) 和 802.15.4 (RFC 4944)
  • IPv4

    • 可手动设置ip
    • 仅支持DHCP Client(RFC 2131)不支持DHCP server
    • IPv4不支持IPSP和802.15.4,只能对接ethernet
  • 双协议栈

    • 可同时支持IPv6和IPv4
  • UDP

    • 支持UDP数据报收发(RFC 768)
  • TCP

    • 支持TCP传输(RFC 793)
  • BSD Socket API

    • 支持阻塞和非阻塞的TCP/UDP socket
    • 支持offload socket
  • Secure Socket API

    • 使用mbedTLS库支持TLS/DTLS
  • Socks代理

  • DNS

    • 支持DNS客服端(RFC 1035),应用程序可以查询域名信息
    • IPv4和IPv6都支持
    • 支持mDNS(RFC 6762)和LLMNR(RFC 4795)
  • 网络管理

    • 支持网络协议栈或网络接口的核心事件监听
  • 多网络支持

    • 支持多种网络技术:802.15.4, bluetooth,ethernet,canbus
    • 多网络之间不提供路由
  • 最少的封包靠谱

    • 最小的复制网络数据路径
  • VLAN

    • 支持虚拟局域网
  • 网络流量分类

    • 可以根据应用需要对发送和接收的网络数据包进行优先级排序
  • 时间敏感网络

    • 支持gPTP
  • IOT应用协议

    • MQTT
    • CoAP
    • LwM2M
    • Openthread(导入外部库)
  • 网络应用&应用协议

    • http
    • tftp
    • sntp
    • websocket
    • civetweb(http服务器,导入外部库)
  • 调试功能

    • 网络Shell:基本的网络工具,可以做ping和DNS解析命令
    • 抓包功能

参考

https://docs.zephyrproject.org/latest/connectivity/networking/overview.html#supported-features