Expand description
Async networking primitives for TCP/UDP/Unix communication.
This crate is an async version of std::net
and std::os::unix::net
.
§Implementation
This crate uses async-io
for async I/O and blocking
for DNS lookups.
§Examples
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?;
}
Modules§
- Unix domain sockets.
Structs§
- An error which can be returned when parsing an IP address or a socket address.
- A stream of incoming TCP connections.
- An IPv4 address.
- An IPv6 address.
- An IPv4 socket address.
- An IPv6 socket address.
- A TCP server, listening for connections.
- A TCP connection.
- A UDP socket.
Enums§
- An IP address, either IPv4 or IPv6.
- Possible values which can be passed to the
TcpStream::shutdown
method. - An internet socket address, either IPv4 or IPv6.
Traits§
- Converts or resolves addresses to
SocketAddr
values.
Functions§
- Converts or resolves addresses to
SocketAddr
values.