想要精通lwip协议栈,需要熟悉如下的要点:
- 驱动网卡的电路原理图;
- 开发的软件系统的架构决定了该如何使用lwip:
>单线程模式使用回调函数模式;
>多线程模式使用netconn模式;
>多线程模式使用回调模式;
>三者之间的优缺点。
- lwip代码结构与特点;
- 回调函数模式的lwip协议栈的移植;
- 多线程模式下使用netconn模式的lwip协议栈的移植;
- 内核方面:网络数据包(根据递交流程分析)、网络接口管理、内存管理;
ARP、IP、UDP、TCP、ICMP各层机制与协议的实现; - 上层API的实现机制,以及常用的网络应用程序结构及其编程方法;
- lwip的其他高级应用:IGMP、DNS、DHCP;
- 内核调试,协议栈稳定性和性能优化,并发服务器设计
- 最终目标:
>根据内核源码学习TCP/IP的各层机制与实现原理;
>掌握移植过程,编程框架,应用编程,性能调优。