LWIP简介 |
LWIP是Light Weight (轻型)IP协议,有无操作系统的支持都可以运行。LwIP实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用,它只需十几KB的RAM和40K左右的ROM就可以运行,这使LwIP协议栈适合在低端的嵌入式系统中使用。为了简化处理过程和内存要求,lwIP对API进行了裁减,可以不需要复制一些数据。
编程接口 |
LWIP有三种编程接口:
1. RAW 可以不需要操作系统,但是复杂,主要使用需要掌握回调函数的使用。
2. NETCONN 需要操作系统支持,但是简单
3. SOCKET 需要操作系统支持,简单,有内存拷贝会浪费内存。
NETCONN |
数据缓冲区-netbuf |
netbuf-API |
连接结构-netconn |
在使用NETCONN接口的时候不管你是UDP还是TCP统一使用一个连接结构—netconn,这样应用程序就可以忽略掉连接类型的差异,使用统一的连接结构和编程函数,在api.h中定义了netconn结构体。
netconn-API |