123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- INTRODUCTION
- lwIP is a small independent implementation of the TCP/IP protocol
- suite that has been developed by Adam Dunkels at the Computer and
- Networks Architectures (CNA) lab at the Swedish Institute of Computer
- Science (SICS).
- The focus of the lwIP TCP/IP implementation is to reduce the RAM usage
- while still having a full scale TCP. This making lwIP suitable for use
- in embedded systems with tens of kilobytes of free RAM and room for
- around 40 kilobytes of code ROM.
- FEATURES
- * IP (Internet Protocol, IPv4 and IPv6) including packet forwarding over
- multiple network interfaces
- * ICMP (Internet Control Message Protocol) for network maintenance and debugging
- * IGMP (Internet Group Management Protocol) for multicast traffic management
- * MLD (Multicast listener discovery for IPv6). Aims to be compliant with
- RFC 2710. No support for MLDv2
- * ND (Neighbor discovery and stateless address autoconfiguration for IPv6).
- Aims to be compliant with RFC 4861 (Neighbor discovery) and RFC 4862
- (Address autoconfiguration)
- * UDP (User Datagram Protocol) including experimental UDP-lite extensions
- * TCP (Transmission Control Protocol) with congestion control, RTT estimation
- and fast recovery/fast retransmit
- * raw/native API for enhanced performance
- * Optional Berkeley-like socket API
- * DNS (Domain names resolver)
- APPLICATIONS
- * HTTP server with SSI and CGI
- * SNMPv2c agent with MIB compiler (Simple Network Management Protocol)
- * SNTP (Simple network time protocol)
- * NetBIOS name service responder
- * MDNS (Multicast DNS) responder
- * iPerf server implementation
- LICENSE
- lwIP is freely available under a BSD license.
- DEVELOPMENT
- lwIP has grown into an excellent TCP/IP stack for embedded devices,
- and developers using the stack often submit bug fixes, improvements,
- and additions to the stack to further increase its usefulness.
- Development of lwIP is hosted on Savannah, a central point for
- software development, maintenance and distribution. Everyone can
- help improve lwIP by use of Savannah's interface, Git and the
- mailing list. A core team of developers will commit changes to the
- Git source tree.
- The lwIP TCP/IP stack is maintained in the 'lwip' Git module and
- contributions (such as platform ports) are in the 'contrib' Git module.
- See doc/savannah.txt for details on Git server access for users and
- developers.
- The current Git trees are web-browsable:
- http://git.savannah.gnu.org/cgit/lwip.git
- http://git.savannah.gnu.org/cgit/lwip/lwip-contrib.git
- Submit patches and bugs via the lwIP project page:
- http://savannah.nongnu.org/projects/lwip/
- Continuous integration builds (GCC, clang):
- https://travis-ci.org/yarrick/lwip-merged
- DOCUMENTATION
- Self documentation of the source code is regularly extracted from the current
- Git sources and is available from this web page:
- http://www.nongnu.org/lwip/
- There is now a constantly growing wiki about lwIP at
- http://lwip.wikia.com/wiki/LwIP_Wiki
- Also, there are mailing lists you can subscribe at
- http://savannah.nongnu.org/mail/?group=lwip
- plus searchable archives:
- http://lists.nongnu.org/archive/html/lwip-users/
- http://lists.nongnu.org/archive/html/lwip-devel/
- lwIP was originally written by Adam Dunkels:
- http://dunkels.com/adam/
- 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 <[email protected]>
- Leon Woestenberg <[email protected]>
|