Async networking primitives for TCP/UDP/Unix communication
Rust
146
55 commits
updated Feb 15, 2026
Async networking primitives for TCP/UDP/Unix communication.
This crate is an async version of std::net and std::os::unix::net.
This crate uses async-io for async I/O and blocking for DNS lookups.
A simple UDP server that echoes messages back to the sender:
use async_net::UdpSocket;
let socket = UdpSocket::bind("127.0.0.1:8080").await?;
let mut buf = vec![0u8; 1024];
loop {
let (n, addr) = socket.recv_from(&mut buf).await?;
socket.send_to(&buf[..n], &addr).await?;
}
Licensed under either of
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
41 followers · starred Jul 2025
Rust
100.0%
Async networking primitives for TCP/UDP/Unix communication
Rust
146
55 commits
updated Feb 15, 2026
Async networking primitives for TCP/UDP/Unix communication.
This crate is an async version of std::net and std::os::unix::net.
This crate uses async-io for async I/O and blocking for DNS lookups.
A simple UDP server that echoes messages back to the sender:
use async_net::UdpSocket;
let socket = UdpSocket::bind("127.0.0.1:8080").await?;
let mut buf = vec![0u8; 1024];
loop {
let (n, addr) = socket.recv_from(&mut buf).await?;
socket.send_to(&buf[..n], &addr).await?;
}
Licensed under either of
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
41 followers · starred Jul 2025
Rust
100.0%