LWIP协议栈
LWIP(Lightweight IP,轻量级 IP)是一个专为嵌入式系统设计的、功能完整且占用资源极少的开源 TCP/IP 协议栈。它由瑞典计算机科学研究院的 Adam Dunkels 开发,现在由全球开发者社区共同维护。LWIP本身是一个TCP/IP协议栈,它主要实现了传输层(如TCP、UDP)和网络层(如IP、ICMP)的协议。它并不强制规定或实现任何特定的应用层协议。应用层协议需要由开发者基于LWIP提供的API(接口)来自行实现或移植现有的协议库。
OSI七层模型与TCP/IP四层模型的对应关系
OSI七层模型 | TCP/IP四层模型 | 对应网络协议 |
---|---|---|
应用层(Application) | 应用层(写信的内容(中文、格式)) | HTTP、TFTP, FTP, NFS, WAIS、SMTP |
表示层(Presentation | Telnet, Rlogin, SNMP, Gopher | |
会话层(Session) | SMTP, DNS | |
传输层(Transport) | 传输层(将信装入信封,写上收件人和寄件人的姓名(TCP/UDP端口号),并选择邮寄方式(TCP像挂号信,可靠但慢;UDP像平信,快但可能丢失) | TCP面向连接、可靠;UDP无连接、高效 |
网络层(Network) | 网络层(邮局在信封上写上收件人和寄件人的城市和街道地址(IP地址),并决定这封信要经过哪些国家的邮局(路由)来传递。) | IP寻址和路由, ICMP, ARP, RARP, AKP, UUCP |
数据链路层 (Data Link) | 数据链路层(邮递员根据具体的地址,选择交通工具(卡车、飞机,相当于以太网、Wi-Fi)将信件实际送达。) | FDDI, 以太网Ethernet, Arpanet, PDN, SLIP, PPP |
物理层(Physical) | IEEE 802.1A, IEEE 802.2到IEEE 802.11(WIFI) |
【RAW/Callback】 API | 【NETCONN】 API | 【SOCKET】 API |
---|---|---|