LwIP
lwIP (англ. lightweight IP) широко используемый TCP/IP-стек с открытым исходным кодом, предназначенный для встраиваемых систем. LwIP был первоначально разработан Адамом Дункельсом в Шведском институте компьютерных наук и в настоящее время разрабатывается и поддерживается командой разработчиков.
LwIP используется многими производителями встраиваемых систем, например, Altera (в операционных системах для архитектуры Nios II)[2], Analog Devices (процессоры Blackfin)[3][4], Xilinx[5] и Honeywell (системы авионики). Также на основе lwIP создан TCP/IP драйвер операционной системы ReactOS[6].
Вместе с lwIP Адам Дункелс создал ещё один TCP/IP стек — uIP. Этот стек оптимизировали для минимизации используемой памяти, в нём не используется динамическое выделение памяти (куча).
Общие сведения
| lwIP | |
|---|---|
| Тип | стек TCP/IP |
| Автор | Adam Dunkels |
| Разработчик | lwIP developers group |
| Написана на | C |
| Операционная система | Кроссплатформенное программное обеспечение |
| Аппаратная платформа | Встраиваемые системы |
| Последняя версия | 2.1.3 (10 ноября 2021[1]) |
| Репозиторий | git.savannah.nongnu.org/… |
| Лицензия | Модифицированная лицензия BSD |
| Сайт | savannah.nongnu.org/proj… |
Возможности LwIP
- IP, включая пересылку пакетов через несколько сетевых интерфейсов
- ICMP
- IGMP
- UDP, включая экспериментальные расширения UDP Lite
- TCP с поддержкой управления перегрузкой, оценкой RTT и быстрым восстановлением / быстрым повтором
- Специализированные API для повышения производительности
- Поддержка API сокетов Беркли
- DNS
- SNMP
- DHCP
- AutoIP / Link-local address (для IPv4, RFC 3927)
- PPP
- ARP