femtoTCP/README.md

37 lines
1 KiB
Markdown
Raw Permalink Normal View History

2024-10-27 13:23:31 +01:00
# FemtoTCP
The smallest TCP/IP stack on the planet
## Description and project goals
FemtoTCP is a TCP/IP stack with no dynamic memory allocations, designed to be
used in resource-constrained embedded systems.
Endpoint only mode is supported, which means that femtotcp can be used to
establish network connections but it does not route traffic between different
network interfaces.
A single network interface can be associated with the device.
## Features supported
- ARP (RFC 826)
- IPv4 (RFC 791)
- ICMP (RFC 792): only ping replies
- DHCP (RFC 2131): client only
2024-12-16 08:55:45 +01:00
- DNS (RFC 1035): client only
2024-10-27 13:23:31 +01:00
- UDP (RFC 768): unicast only
- TCP (RFC 793)
- TCP options supported: Timestamps, Maximum Segment Size
- BSD-like, non blocking socket API, with custom callbacks
- No dynamic memory allocation
2024-12-16 08:55:45 +01:00
- Fixed number of concurrent sockets
- Pre-allocated buffers for packet processing in static memory
2024-10-27 13:23:31 +01:00
## Copyright and License
FemtoTCP is licensed under the GPLv3 license. See the LICENSE file for details.
Copyright (c) 2024 Daniele Lacamera. Some rights reserved.