Its design goals are simplicity and robustness. Its design anti-goals include complicated compile-time computations, such as macro or type tricks, even at cost of performance degradation.
smoltcp does not need heap allocation at all, is <ahref="https://docs.rs/smoltcp/"target="_blank"rel="noopener noreferrer">extensively documented</a>, and compiles on stable Rust 1.20 and later. It is used in embedded systems such as the ARTIQ core device and ionpak.
smoltcp achieves <ahref="https://github.com/smoltcp-rs/smoltcp#examplesbenchmarkrs"target="_blank"rel="noopener noreferrer">~Gbps</a> of throughput when tested against the Linux TCP stack in loopback mode.