[ WiFi 智能家居项目 ] [ 6 ] LwIP 协议

简介

LwIP (Light Weight Internet Protocol)是轻型 IP 协议,重点是在保持 TCP 协议主要功能的基础上减少对RAM的占用,这使得LwIP协议非常适合在小型嵌入式系统中使用。

在 SDK 的 third_party 目录下,由 lwip 源码,结构如下:

.
├── api
│   └── multi-threads
├── apps
├── arch
├── core
│   ├── ipv4
│   ├── ipv6
│   └── snmp
└── netif
    └── ppp

10 directories

1、api:应用程序接口文件。

2、arch:与硬件和 OS 有关的文件,包括网络驱动、移植需要修改的文件。

3、core:LwIP 的核心代码,包括 ICMP、IP、UDP、TCP 等协议的实现。

4、netif:PPP 协议和 LwIP 网络设备驱动程序的模板,提供了网络接口驱动程序的基本框架。

LwIP 协议可以使上层应用实现 Socket 编程。为了兼容性,LwIP 协议的 Socket 通过宏定义提供标准的 Socket 接口函数。

Socket 编程

Socket 是一个网络编程接口,有 3 种类型:流式套接字(SOCK_STREAM)、数据报套接字(SOCK_DGRAM)和原始套接字(SOCK_RAW)。


TCP

image.png

UDP

image.png