7.2 网络协议栈
2026/7/18大约 2 分钟常用组件组件网络SocketMQTTCoAP
7.2 网络协议栈
📚 本节导读
学习时长:约 120 分钟
难度级别:⭐⭐⭐⭐☆
前置知识:TCP/IP 基础知识、Socket 编程、第 4 章 任务与 IPC
🎯 学习目标
- 理解 OneOS 网络协议栈的整体架构(LWIP + Socket + 应用协议 + Molink)
- 掌握 BSD Socket API(socket / bind / listen / accept / connect / send / recv)
- 掌握 HTTP 客户端的使用方法(GET / POST 请求)
- 掌握 MQTT 协议客户端的使用(发布 / 订阅、QoS、遗嘱消息)
- 掌握 CoAP 协议的使用(资源发现、GET / PUT / POST / DELETE)
- 了解 Molink 蜂窝模组抽象层架构
- 能够根据实际需求选择合适的网络协议
📖 子章节导航
| 编号 | 章节 | 内容简介 | 学习时长 |
|---|---|---|---|
| 7.2.1 | Socket 基础网络编程 | 协议栈架构概述、BSD Socket API、TCP/UDP 通信、select 多路复用 | 约 40 分钟 |
| 7.2.2 | HTTP 协议 | HTTP 客户端数据结构、GET/POST/PUT/DELETE 请求、自定义请求头 | 约 25 分钟 |
| 7.2.3 | MQTT 协议 | 发布/订阅模型、QoS 服务质量、Paho MQTT 与 Mini MQTT、遗嘱消息 | 约 35 分钟 |
| 7.2.4 | CoAP 协议 | libcoap 客户端/服务端、RESTful 操作、资源发现、CoAP vs MQTT 对比 | 约 25 分钟 |
| 7.2.5 | Molink 蜂窝模组抽象层 | 架构设计、支持模组列表、核心 API、AT 指令通信 | 约 15 分钟 |
| 7.2.6 | Kconfig 配置指南 | 网络基础配置、应用协议配置、Molink 配置、典型场景配置 | 约 10 分钟 |
| 7.2.7 | 协议选择指南 | HTTP/MQTT/CoAP 协议对比、选择建议、适用场景分析 | 约 10 分钟 |
🏗️ 网络协议栈架构
┌─────────────────────────────────────────────────────┐
│ 应用协议层 │
│ HTTP Client │ MQTT Client │ CoAP │ LwM2M │ WebSocket │
├─────────────────────────────────────────────────────┤
│ Socket 接口层 │
│ BSD Socket API (socket.h) │
├─────────────────────────────────────────────────────┤
│ TCP/IP 协议栈 │
│ LWIP 2.1.2 (IPv4 / IPv6) │
├─────────────────────────────────────────────────────┤
│ Molink 蜂窝模组抽象层 │
│ EC20 │ BC26 │ ESP8266 │ M5311 │ SIM7600 │ ... │
└─────────────────────────────────────────────────────┘