101 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			101 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 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 <adam@sics.se>
 | |
| Leon Woestenberg <leon.woestenberg@gmx.net>
 |