[164] | 1 | INTRODUCTION
|
---|
| 2 |
|
---|
| 3 | lwIP is a small independent implementation of the TCP/IP protocol
|
---|
| 4 | suite that has been developed by Adam Dunkels at the Computer and
|
---|
| 5 | Networks Architectures (CNA) lab at the Swedish Institute of Computer
|
---|
| 6 | Science (SICS).
|
---|
| 7 |
|
---|
| 8 | The focus of the lwIP TCP/IP implementation is to reduce the RAM usage
|
---|
| 9 | while still having a full scale TCP. This making lwIP suitable for use
|
---|
| 10 | in embedded systems with tens of kilobytes of free RAM and room for
|
---|
| 11 | around 40 kilobytes of code ROM.
|
---|
| 12 |
|
---|
| 13 | FEATURES
|
---|
| 14 |
|
---|
| 15 | * IP (Internet Protocol) including packet forwarding over multiple network
|
---|
| 16 | interfaces
|
---|
| 17 | * ICMP (Internet Control Message Protocol) for network maintenance and debugging
|
---|
| 18 | * IGMP (Internet Group Management Protocol) for multicast traffic management
|
---|
| 19 | * UDP (User Datagram Protocol) including experimental UDP-lite extensions
|
---|
| 20 | * TCP (Transmission Control Protocol) with congestion control, RTT estimation
|
---|
| 21 | and fast recovery/fast retransmit
|
---|
| 22 | * Specialized raw/native API for enhanced performance
|
---|
| 23 | * Optional Berkeley-like socket API
|
---|
| 24 | * DNS (Domain names resolver)
|
---|
| 25 | * SNMP (Simple Network Management Protocol)
|
---|
| 26 | * DHCP (Dynamic Host Configuration Protocol)
|
---|
| 27 | * AUTOIP (for IPv4, conform with RFC 3927)
|
---|
| 28 | * PPP (Point-to-Point Protocol)
|
---|
| 29 | * ARP (Address Resolution Protocol) for Ethernet
|
---|
| 30 |
|
---|
| 31 | LICENSE
|
---|
| 32 |
|
---|
| 33 | lwIP is freely available under a BSD license.
|
---|
| 34 |
|
---|
| 35 | DEVELOPMENT
|
---|
| 36 |
|
---|
| 37 | lwIP has grown into an excellent TCP/IP stack for embedded devices,
|
---|
| 38 | and developers using the stack often submit bug fixes, improvements,
|
---|
| 39 | and additions to the stack to further increase its usefulness.
|
---|
| 40 |
|
---|
| 41 | Development of lwIP is hosted on Savannah, a central point for
|
---|
| 42 | software development, maintenance and distribution. Everyone can
|
---|
| 43 | help improve lwIP by use of Savannah's interface, CVS and the
|
---|
| 44 | mailing list. A core team of developers will commit changes to the
|
---|
| 45 | CVS source tree.
|
---|
| 46 |
|
---|
| 47 | The lwIP TCP/IP stack is maintained in the 'lwip' CVS module and
|
---|
| 48 | contributions (such as platform ports) are in the 'contrib' module.
|
---|
| 49 |
|
---|
| 50 | See doc/savannah.txt for details on CVS server access for users and
|
---|
| 51 | developers.
|
---|
| 52 |
|
---|
| 53 | Last night's CVS tar ball can be downloaded from:
|
---|
| 54 | http://savannah.gnu.org/cvs.backups/lwip.tar.gz [CHANGED - NEEDS FIXING]
|
---|
| 55 |
|
---|
| 56 | The current CVS trees are web-browsable:
|
---|
| 57 | http://savannah.nongnu.org/cgi-bin/viewcvs/lwip/lwip/
|
---|
| 58 | http://savannah.nongnu.org/cgi-bin/viewcvs/lwip/contrib/
|
---|
| 59 |
|
---|
| 60 | Submit patches and bugs via the lwIP project page:
|
---|
| 61 | http://savannah.nongnu.org/projects/lwip/
|
---|
| 62 |
|
---|
| 63 |
|
---|
| 64 | DOCUMENTATION
|
---|
| 65 |
|
---|
| 66 | The original out-dated homepage of lwIP and Adam Dunkels' papers on
|
---|
| 67 | lwIP are at the official lwIP home page:
|
---|
| 68 | http://www.sics.se/~adam/lwip/
|
---|
| 69 |
|
---|
| 70 | Self documentation of the source code is regularly extracted from the
|
---|
| 71 | current CVS sources and is available from this web page:
|
---|
| 72 | http://www.nongnu.org/lwip/
|
---|
| 73 |
|
---|
| 74 | There is now a constantly growin wiki about lwIP at
|
---|
| 75 | http://lwip.wikia.com/wiki/LwIP_Wiki
|
---|
| 76 |
|
---|
| 77 | Also, there are mailing lists you can subscribe at
|
---|
| 78 | http://savannah.nongnu.org/mail/?group=lwip
|
---|
| 79 | plus searchable archives:
|
---|
| 80 | http://lists.nongnu.org/archive/html/lwip-users/
|
---|
| 81 | http://lists.nongnu.org/archive/html/lwip-devel/
|
---|
| 82 |
|
---|
| 83 | Reading Adam's papers, the files in docs/, browsing the source code
|
---|
| 84 | documentation and browsing the mailing list archives is a good way to
|
---|
| 85 | become familiar with the design of lwIP.
|
---|
| 86 |
|
---|
| 87 | Adam Dunkels <adam@sics.se>
|
---|
| 88 | Leon Woestenberg <leon.woestenberg@gmx.net>
|
---|
| 89 |
|
---|