uIP (micro IP)

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис

uIP (micro IP) — это открытый TCP/IP-стек/модуль, разработан для микроконтроллеров с 8- и 16-битной архитектурой .

Проект «uIP» основан Адамом Дункелсом из группы сетевых встроенных систем Шведского института компьютерных наук (SICS) под лицензией BSD и в дальнейшем развивался группой разработчиков. Стек портирован на несколько платформ[1][2][3] , включая DSP[4].

В отличие от lwIP, uIP оптимизирован с точки зрения ресурсов памяти. lwIP использует динамически выделяемую память (кучу) для работы с сетевыми данными и информацией о соединениях. В uIP дескрипторы соединений создаются на этапе компиляции, а обмен сетевыми данными ведется через специальный статический буфер. Вследствие такой оптимизации uIP не поддерживает некоторые возможности TCP/IP стека, например сборку фрагментированных IP пакетов, алгоритм Нейгла, восстановление правильной последовательности пакетов, несколько пакетов на один ACK и т.п. Проблема резервного хранения неподтвержденных приемной стороной данных вынесена из uIP и возложена на пользователя стека.

На сегодня uIP не является самостоятельным проектом и поддерживается в рамках проекта открытой ОС Contiki.

В октябре 2008 Cisco, Atmel и SICS анонсировали полностью совместимое IPv6 расширение uIP под названием uIPv6[5].

См. также

Примечания

  1. Maxim IC Application Note 4205, Using the uIP Stack to Network a MAXQ Microcontroller, Zach Metzinger (недоступная ссылка). Дата обращения: 5 мая 2010. Архивировано 12 декабря 2009 года.
  2. Cyan Technology Application Note 57, uIP V1.0 TCP/IP Stack for eCOG1k and eCOG1X
  3. Adam Dunkel’s uIP on the Olimex EasyWeb2 and LPC-E2124, Paul Curtis. Дата обращения: 5 мая 2010. Архивировано 15 января 2017 года.
  4. Drew Barnett and Anthony J. Massa, Inside the uIP Stack, Dr Dobbs Journal, February 2005. Дата обращения: 5 мая 2010. Архивировано 27 мая 2009 года.
  5. Cisco, Atmel и SICS открыли для использования протокол uIPv6 Архивировано 28 октября 2008 года.

Ссылки