1339N/AlwIP is a small independent implementation of the
TCP/IP protocol
325N/Asuite that has been developed by Adam Dunkels at the Computer and
1339N/ANetworks Architectures (CNA) lab at the Swedish Institute of Computer
919N/AThe focus of the lwIP
TCP/IP implementation is to reduce the RAM usage
919N/Awhile still having a full scale TCP. This making lwIP suitable for use
919N/Ain embedded systems with tens of kilobytes of free RAM and room for
919N/Aaround 40 kilobytes of code ROM.
919N/A * IP (Internet Protocol) including packet forwarding over multiple
919N/A * ICMP (Internet Control Message Protocol) for network maintenance
919N/A * UDP (User Datagram Protocol) including experimental UDP-lite
919N/A * TCP (Transmission Control Protocol) with congestion control, RTT
919N/A * Specialized API for enhanced performance
919N/A * Optional Berkeley socket API
325N/AlwIP is freely available under a BSD license.
970N/AlwIP has grown into an excellent
TCP/IP stack for embedded devices,
970N/Aand developers using the stack often submit bug fixes, improvements,
970N/Aand additions to the stack to further increase its usefulness.
1179N/ADevelopment of lwIP is hosted on Savannah, a central point for
325N/Asoftware development, maintenance and distribution. Everyone can
911N/Ahelp improve lwIP by use of Savannah's interface, CVS and the
1179N/Amailing list. A core team of developers will commit changes to the
325N/AThe lwIP
TCP/IP stack is maintained in the 'lwip' CVS module and
325N/Acontributions (such as platform ports) are in the 'contrib' module.
325N/ALast night's CVS tar ball can be downloaded from:
970N/AThe current CVS trees are web-browsable:
Submit patches and bugs via the lwIP project page:
The original out-dated homepage of lwIP and Adam Dunkels' papers on
lwIP are at the official lwIP home page:
Self documentation of the source code is regularly extracted from the
current CVS sources and is available from this web page:
Reading Adam's papers, the files in docs/, browsing the source code
documentation and browsing the mailing list archives is a good way to
become familiar with the design of lwIP.
Adam Dunkels <adam@sics.se>
Leon Woestenberg <leon.woestenberg@gmx.net>