Kenji Arai / mbed-os_TYBLE16

Dependents:   TYBLE16_simple_data_logger TYBLE16_MP3_Air

Committer:
kenjiArai
Date:
Tue Dec 17 23:23:45 2019 +0000
Revision:
0:5b88d5760320
mbed-os5 only for TYBLE16

Who changed what in which revision?

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