web2019/content/software/smoltcp.md

32 lines
1.1 KiB
Markdown

+++
title = "smoltcp"
weight = 2
template = "page.html"
+++
{% layout_centered_content(min_width=true) %}
##### smoltcp is a standalone, event-driven TCP/IP stack that is designed for bare-metal, real-time systems.
{% end %}
{% layout_centered_content(min_width=true, force_left=true) %}
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 <a href="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 <a href="https://github.com/m-labs/smoltcp#examplesbenchmarkrs" target="_blank" rel="noopener noreferrer">~Gbps</a> of throughput when tested against the Linux TCP stack in loopback mode.
The source code is available <a href="https://github.com/m-labs/smoltcp" rel="noopener noreferrer">on GitHub</a>.
**Commercial support for smoltcp is available.** Email sales@m-l***s.hk.
{% end %}