Embedded TCP/IP stack
4.1.0
|
FNET Key Features
The core element of the FNET Project is the TCP/IP stack.
The FNET TCP/IP stack enables to connect an embedded system to a TCP/IP network. This stack is implemented as a stand-alone software library for 32-bit MCUs.
It is modular, portable, and written in the C programming language with some platform-specific optimization in assembler. It is distributed in the form of source code, so the compile-time optimizations and configuration are possible (actually, it is the preferred way to configure stack features).
- The stack provides following protocols and services:
- Supported Platforms:
- ARM Cortex-M4, Kinetis:
- MK64FN1M (FRDM-K64F board)
- MK66FN2M (FRDM-K66F board)
- MK6DN512 (TWR-K60D100M board)
- Older Platforms (not supported):
- ColdFire: MCF51CN128, MCF5282, MCF52235, MCF54418, MCF52259
- PowerPC: MPC5668G, MPC5566, MPC564xBC, MPC5744P, S32R274.
- Kinetis: MK70FN1M, MK60FN1M.
- LPC: LPC54628.
- ARM Cortex-M4, Kinetis:
- Supported Compilers:
- IAR: Embedded Workbench for ARM, version 7.8
- GCC: Kinetis Design Studio, version 3.0
- Bare-metal TCP/IP stack. No underlying RTOS is required, although it can be used with it. FreeRTOS example is provided.
- Non-blocking Socket API (DGRAM, STREAM, RAW).
- Core Protocols:
- TCP (Transmission Control Protocol).
- UDP (User Datagram Protocol).
- IPv4.
- ICMPv4 (Internet Control Message Protocol).
- IGMP (Internet Group Management Protocol).
- ARP (Address Resolution Protocol).
- IPv6.
- Passed the "IPv6 Ready Logo" Phase-2 IPv6 Core Protocols Conformance Tests, for host.
- ICMPv6 (Internet Control Message Protocol).
- MLDv1 (Multicast Listener Discovery).
- Neighbor Discovery for IPv6.
- IPv6 Stateless Address Autoconfiguration.
- Path MTU Discovery for IPv6
- Network Interfaces:
- Ethernet (FEC/ENET module).
- Wi-Fi (QCA4002 module).
- Loopback.
- Services:
- HTTP server:
- HTTP/1.0 or HTTP/0.9 protocols.
- GET and POST requests.
- CGI and SSI.
- Basic access authentication.
- HTTP over TLS (HTTPS).
- TELNET server.
- DHCPv4 client and server.
- Auto-IP service. Passed "Phase 1, Link-Local Address Allocation", Bonjour Conformance Test suite Version 1.3.1.
- DNS client/resolver.
- Link-Detection service.
- Multicast DNS (mDNS) "Bonjour" Server/Responder.
- LLMNR Server/Responder.
- PING service.
- SNTP client.
- TFTP server and client. Both Read and Write requests are supported.
- TLS using mbedTLS library.
- ROM File System.
- On-chip Flash Memory driver.
- Command line shell.
- Serial driver.
- HTTP server:
- Tools:
- Applications:
- Source-code based User documentation, by Doxygen.
- RFC list supported by the FNET stack:
- RFC 768 - UDP.
- RFC 791 - IPv4.
- RFC 792 - ICMPv4.
- RFC 793 - TCP.
- RFC 826 - ARP.
- RFC 854 - Telnet server.
- RFC 951 - BOOTP client.
- RFC 6762 - Multicast DNS server.
- RFC 1035 - DNS resolver.
- RFC 1350 - TFTP client and server.
- RFC 1945 - HTTP v 1.0 server.
- RFC 1981 - Path MTU Discovery for IPv6.
- RFC 2131 - DHCP IPv4 client and server.
- RFC 2236 - IGMPv2.
- RFC 2460 - IPv6.
- RFC 3927 - Dynamic Configuration of IPv4 Link-Local.
- RFC 4330 - Simple Network Time Protocol (SNTP) Version 4.
- RFC 4861 - Neighbor Discovery for IPv6.
- RFC 4862 - IPv6 Stateless Address Autoconfiguration.
- RFC 4443 - ICMPv6.
- RFC 4795 - Link-Local Multicast Name Resolution (LLMNR) server.
- Supported Platforms:
© 2005-2018 by Andrey Butok. http://fnet.sourceforge.net