forked from M-Labs/web2019
32 lines
1.2 KiB
Markdown
32 lines
1.2 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/smoltcp-rs/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/smoltcp-rs/smoltcp" rel="noopener noreferrer">on GitHub</a>.
|
|
|
|
**Commercial support for smoltcp is available.** Email {{ email(address="sales") }}.
|
|
|
|
{% end %}
|