LwIP - LwIP
Оригинальный автор (ы) | Адам Данкелс |
---|---|
Разработчики) | группа разработчиков lwIP |
Стабильный выпуск | 2.1.2 / 22 ноября 2018 |
Репозиторий | |
Написано в | C |
Операционная система | несколько |
Платформа | встроенные системы |
Тип | Стек IP |
Лицензия | Модифицированная лицензия BSD |
Интернет сайт | www |
lwIP (легкий IP) широко используется Открытый исходный код Стек TCP / IP предназначен для встроенные системы. lwIP был первоначально разработан Адам Данкелс на Шведский институт компьютерных наук и теперь разрабатывается и поддерживается всемирной сетью разработчиков.
lwIP используется многими производителями встраиваемых систем. Примеры включают Альтера (в Ниос II Операционная система ), Аналоговые устройства (для Blackfin DSP чип),[1] Xilinx,[2] Honeywell (для некоторых из их сертифицированных FAA систем авионики) и Freescale Semiconductor (ПО потоковой передачи Ethernet для автомобильных микроконтроллеров).
сетевой стек lwIP
Основное внимание при реализации сетевого стека lwIP уделяется сокращению использования ресурсов при сохранении полномасштабного стека TCP.[3] Это делает lwIP подходящим для использования во встроенных системах с десятками килобайт свободной оперативной памяти и местом для около 40 килобайт ПЗУ с кодом.
реализация протокола lwIP
Помимо Стек TCP / IP, lwIP имеет несколько других важных частей, таких как сетевой интерфейс, слой эмуляции операционной системы, буферы и раздел управления памятью. Уровень эмуляции операционной системы и сетевой интерфейс позволяют трансплантировать сетевой стек в операционную систему, поскольку он обеспечивает общий интерфейс между кодом lwIP и ядро операционной системы.[3]
Сетевой стек lwIP включает IP (Интернет-протокол) реализация на Интернет-уровень который может обрабатывать пересылку пакетов через несколько сетевых интерфейсов.[3] Обе IPv4 и IPv6 поддерживаются двойной стек с lwIP v2.0.0.[4] Для обслуживания и отладки сети lwIP реализует ICMP (Протокол управляющих сообщений Интернета).[3] IGMP (Протокол управления группами Интернета) поддерживается для управления многоадресным трафиком. Пока ICMPv6 (включая MLD ) реализован для поддержки использования IPv6.[нужна цитата ]
lwIP включает реализацию IPv4 ARP (Протокол разрешения адресов) и IPv6 Протокол обнаружения соседей поддерживать Ethernet на уровень канала передачи данных. lwIP также может работать поверх PPP (Point-to-Point Protocol) реализация на уровне канала передачи данных.[нужна цитата ]
На транспортный уровень lwIP реализует TCP (Протокол управления передачей) с контролем перегрузки, оценкой RTT и быстрым восстановлением / быстрой повторной передачей.[3] UDP (Протокол дейтаграмм пользователя) реализован с помощью экспериментальных UDP-Lite расширения.[нужна цитата ]
API и сокеты
lwIP предоставляет специализированный запрет на копирование интерфейс прикладного программирования (API) для повышения производительности сетевого стека. В API сокетов Беркли не является обязательным.[3] Необработанные сокеты или необработанные печатные платы предоставляются в зависимости от используемого API.[5]
Поддержка прикладного уровня
На прикладном уровне сетевой стек lwIP может поддерживаться посредством реализации следующих протоколов. В DNS (Система доменных имен), SNMP (Simple Network Management Protocol) агент в версиях v1, v2 или v3 с частным MIB (база управленческой информации ) и компилятор MIB.
Операционные системы, реализующие стек lwIP TCP / IP, могут предоставлять ряд поддерживающих клиентов и серверов на уровне приложений. Например, IPv4 DHCP (Протокол динамической конфигурации хоста) клиент или IPv4 Адреса локальных ссылок (он же AutoIP). Специализированные необработанные приложения API включают: HTTP сервер, а SNTP клиент, SMTP клиент, NetBIOS сервер имен, mDNS ответчик, а MQTT клиент и TFTP сервер.[нужна цитата ]
Реализации ОС
lwIP используется как сетевой стек в ReactOS и Genode[6] и может использоваться в Minix и GNU Hurd для реализации сетевых серверов.
Смотрите также
- микро IP (uIP )
Рекомендации
- ^ "Создание сложных приложений VDK / LwIP с использованием процессоров Blackfin », Каушал Сангхай, Analog Devices Inc., сентябрь 2008 г.
- ^ Сива Велусами, Примеры приложений LightWeight IP (lwIP), Xilinx Inc., июнь 2009 г.
- ^ а б c d е ж (ред.), Янвен Ву (2010). Программная инженерия и инженерия знаний: теория и практика. Берлин: Springer. п. 639. ISBN 978-3-642-03717-7.CS1 maint: дополнительный текст: список авторов (связь)
- ^ http://www.nongnu.org/lwip/2_0_x/upgrading.html
- ^ документация по функциям lwIP
- ^ «Примечания к выпуску Genode OS Framework 9.11».
внешняя ссылка
- Первоначальная бумага Lwip Адама Данкельса
- lwIP разработка
- lwIP документация вики
- документация по функциям lwIP
- lwIP бывшая домашняя страница (устарела)
- Руководство по использованию LwIP от Microchip (pdf)
Этот микрокомпьютер - или же микропроцессор -связанная статья является заглушка. Вы можете помочь Википедии расширяя это. |