mbed-os

Fork of mbed-os by erkin yucel

Committer:
xuaner
Date:
Thu Jul 20 14:26:57 2017 +0000
Revision:
1:3deb71413561
Parent:
0:f269e3021894
mbed_os

Who changed what in which revision?

UserRevisionLine numberNew contents of line
elessair 0:f269e3021894 1 INTRODUCTION
elessair 0:f269e3021894 2
elessair 0:f269e3021894 3 lwIP is a small independent implementation of the TCP/IP protocol
elessair 0:f269e3021894 4 suite that has been developed by Adam Dunkels at the Computer and
elessair 0:f269e3021894 5 Networks Architectures (CNA) lab at the Swedish Institute of Computer
elessair 0:f269e3021894 6 Science (SICS).
elessair 0:f269e3021894 7
elessair 0:f269e3021894 8 The focus of the lwIP TCP/IP implementation is to reduce the RAM usage
elessair 0:f269e3021894 9 while still having a full scale TCP. This making lwIP suitable for use
elessair 0:f269e3021894 10 in embedded systems with tens of kilobytes of free RAM and room for
elessair 0:f269e3021894 11 around 40 kilobytes of code ROM.
elessair 0:f269e3021894 12
elessair 0:f269e3021894 13
elessair 0:f269e3021894 14 FEATURES
elessair 0:f269e3021894 15
elessair 0:f269e3021894 16 * IP (Internet Protocol, IPv4 and IPv6) including packet forwarding over
elessair 0:f269e3021894 17 multiple network interfaces
elessair 0:f269e3021894 18 * ICMP (Internet Control Message Protocol) for network maintenance and debugging
elessair 0:f269e3021894 19 * IGMP (Internet Group Management Protocol) for multicast traffic management
elessair 0:f269e3021894 20 * MLD (Multicast listener discovery for IPv6). Aims to be compliant with
elessair 0:f269e3021894 21 RFC 2710. No support for MLDv2
elessair 0:f269e3021894 22 * ND (Neighbor discovery and stateless address autoconfiguration for IPv6).
elessair 0:f269e3021894 23 Aims to be compliant with RFC 4861 (Neighbor discovery) and RFC 4862
elessair 0:f269e3021894 24 (Address autoconfiguration)
elessair 0:f269e3021894 25 * UDP (User Datagram Protocol) including experimental UDP-lite extensions
elessair 0:f269e3021894 26 * TCP (Transmission Control Protocol) with congestion control, RTT estimation
elessair 0:f269e3021894 27 and fast recovery/fast retransmit
elessair 0:f269e3021894 28 * raw/native API for enhanced performance
elessair 0:f269e3021894 29 * Optional Berkeley-like socket API
elessair 0:f269e3021894 30 * DNS (Domain names resolver)
elessair 0:f269e3021894 31
elessair 0:f269e3021894 32
elessair 0:f269e3021894 33 APPLICATIONS
elessair 0:f269e3021894 34
elessair 0:f269e3021894 35 * HTTP server with SSI and CGI
elessair 0:f269e3021894 36 * SNMPv2c agent with MIB compiler (Simple Network Management Protocol)
elessair 0:f269e3021894 37 * SNTP (Simple network time protocol)
elessair 0:f269e3021894 38
elessair 0:f269e3021894 39
elessair 0:f269e3021894 40 LICENSE
elessair 0:f269e3021894 41
elessair 0:f269e3021894 42 lwIP is freely available under a BSD license.
elessair 0:f269e3021894 43
elessair 0:f269e3021894 44
elessair 0:f269e3021894 45 DEVELOPMENT
elessair 0:f269e3021894 46
elessair 0:f269e3021894 47 lwIP has grown into an excellent TCP/IP stack for embedded devices,
elessair 0:f269e3021894 48 and developers using the stack often submit bug fixes, improvements,
elessair 0:f269e3021894 49 and additions to the stack to further increase its usefulness.
elessair 0:f269e3021894 50
elessair 0:f269e3021894 51 Development of lwIP is hosted on Savannah, a central point for
elessair 0:f269e3021894 52 software development, maintenance and distribution. Everyone can
elessair 0:f269e3021894 53 help improve lwIP by use of Savannah's interface, Git and the
elessair 0:f269e3021894 54 mailing list. A core team of developers will commit changes to the
elessair 0:f269e3021894 55 Git source tree.
elessair 0:f269e3021894 56
elessair 0:f269e3021894 57 The lwIP TCP/IP stack is maintained in the 'lwip' Git module and
elessair 0:f269e3021894 58 contributions (such as platform ports) are in the 'contrib' Git module.
elessair 0:f269e3021894 59
elessair 0:f269e3021894 60 See doc/savannah.txt for details on Git server access for users and
elessair 0:f269e3021894 61 developers.
elessair 0:f269e3021894 62
elessair 0:f269e3021894 63 The current Git trees are web-browsable:
elessair 0:f269e3021894 64 http://git.savannah.gnu.org/cgit/lwip.git
elessair 0:f269e3021894 65 http://git.savannah.gnu.org/cgit/lwip/lwip-contrib.git
elessair 0:f269e3021894 66
elessair 0:f269e3021894 67 Submit patches and bugs via the lwIP project page:
elessair 0:f269e3021894 68 http://savannah.nongnu.org/projects/lwip/
elessair 0:f269e3021894 69
elessair 0:f269e3021894 70 Continuous integration builds (GCC, clang):
elessair 0:f269e3021894 71 https://travis-ci.org/yarrick/lwip-merged
elessair 0:f269e3021894 72
elessair 0:f269e3021894 73
elessair 0:f269e3021894 74 DOCUMENTATION
elessair 0:f269e3021894 75
elessair 0:f269e3021894 76 Self documentation of the source code is regularly extracted from the current
elessair 0:f269e3021894 77 Git sources and is available from this web page:
elessair 0:f269e3021894 78 http://www.nongnu.org/lwip/
elessair 0:f269e3021894 79
elessair 0:f269e3021894 80 There is now a constantly growin wiki about lwIP at
elessair 0:f269e3021894 81 http://lwip.wikia.com/wiki/LwIP_Wiki
elessair 0:f269e3021894 82
elessair 0:f269e3021894 83 Also, there are mailing lists you can subscribe at
elessair 0:f269e3021894 84 http://savannah.nongnu.org/mail/?group=lwip
elessair 0:f269e3021894 85 plus searchable archives:
elessair 0:f269e3021894 86 http://lists.nongnu.org/archive/html/lwip-users/
elessair 0:f269e3021894 87 http://lists.nongnu.org/archive/html/lwip-devel/
elessair 0:f269e3021894 88
elessair 0:f269e3021894 89 lwIP was originally written by Adam Dunkels:
elessair 0:f269e3021894 90 http://dunkels.com/adam/
elessair 0:f269e3021894 91
elessair 0:f269e3021894 92 Reading Adam's papers, the files in docs/, browsing the source code
elessair 0:f269e3021894 93 documentation and browsing the mailing list archives is a good way to
elessair 0:f269e3021894 94 become familiar with the design of lwIP.
elessair 0:f269e3021894 95
elessair 0:f269e3021894 96 Adam Dunkels <adam@sics.se>
elessair 0:f269e3021894 97 Leon Woestenberg <leon.woestenberg@gmx.net>