Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
velnet
Networking abstractions built on Veilid API primitives.
Velnet provides high-level networking capabilities using the Veilid distributed hash table and private routing system. It enables applications to communicate over the Veilid network without dealing directly with low-level Veilid APIs.
Features
- Anonymous communication - Messages are routed through Veilid's private route system
- DHT-based addressing - Services are addressed using distributed hash table records
- Datagram-style messaging - UDP-like message passing with automatic route management
- Connection recovery - Built-in handling of network failures and route changes
Quick Start
Add velnet to your Cargo.toml:
[]
= "0.1.0"
Setting up a listener
use ;
async
Sending messages
use ;
async
Example: vcat
The vcat example demonstrates a simple netcat-like tool for Veilid networks:
# Terminal 1 - Start a listener
# Terminal 2 - Connect and send messages
Architecture
Velnet is built around three core concepts:
- Connection - Manages the Veilid network connection and attachment state
- DHTAddr - Addresses combining a DHT record key with a subkey (port)
- Datagram - UDP-like datagram abstraction with listeners and dialers
The library handles the complexity of Veilid's routing system while providing familiar networking patterns. Messages are automatically encrypted and routed through the Veilid network's onion routing system.
Error Handling
Velnet provides comprehensive error handling primitives supporting automatic recovery for common network issues:
- Route failures trigger automatic re-resolution
- Connection drops initiate reconnection attempts
- Attachment state changes are monitored continuously
See the vcat example for examples of handling these errors in practice.
License
MPL-2.0