Expand description
P2P networking layer with anonymous routing.
This module provides the networking layer for the QuDAG protocol, implementing anonymous routing, P2P communication, and traffic obfuscation.
Re-exports§
pub use dark_resolver::DarkDomainRecord;pub use dark_resolver::DarkResolver;pub use dark_resolver::DarkResolverError;pub use discovery::DiscoveredPeer;pub use discovery::DiscoveryConfig;pub use discovery::DiscoveryEvent;pub use discovery::DiscoveryMethod;pub use discovery::DiscoveryStats;pub use discovery::KademliaPeerDiscovery;pub use dns::CloudflareClient;pub use dns::CloudflareConfig;pub use dns::DnsError;pub use dns::DnsManager;pub use dns::DnsRecord;pub use dns::RecordType;pub use kademlia::BootstrapConfig;pub use kademlia::ContentRoutingConfig;pub use kademlia::KademliaDHT;pub use kademlia::PeerReputation;pub use message::MessageEnvelope;pub use nat_traversal::ConnectionType;pub use nat_traversal::ConnectionUpgradeManager;pub use nat_traversal::HolePunchCoordinator;pub use nat_traversal::HolePunchPhase;pub use nat_traversal::NatInfo;pub use nat_traversal::NatPmpClient;pub use nat_traversal::NatTraversalConfig;pub use nat_traversal::NatTraversalError;pub use nat_traversal::NatTraversalManager;pub use nat_traversal::NatTraversalStats;pub use nat_traversal::NatType;pub use nat_traversal::PortMapping;pub use nat_traversal::PortMappingMethod;pub use nat_traversal::PortMappingProtocol;pub use nat_traversal::RelayConnection;pub use nat_traversal::RelayManager;pub use nat_traversal::RelayServer;pub use nat_traversal::StunClient;pub use nat_traversal::StunServer;pub use nat_traversal::TurnClient;pub use nat_traversal::TurnServer;pub use nat_traversal::UpgradeAttempt;pub use onion::Circuit;pub use onion::CircuitManager;pub use onion::CircuitState;pub use onion::CircuitStats;pub use onion::DirectoryClient;pub use onion::HopMetadata;pub use onion::LayerFlags;pub use onion::MLKEMOnionRouter;pub use onion::MetadataConfig;pub use onion::MetadataProtector;pub use onion::MixConfig;pub use onion::MixMessage;pub use onion::MixMessageType;pub use onion::MixNode;pub use onion::MixNodeStats;pub use onion::NodeFlags;pub use onion::NodeInfo;pub use onion::OnionError;pub use onion::OnionLayer;pub use onion::OnionRouter;pub use onion::ProtectedMetadata;pub use onion::TrafficAnalysisConfig;pub use onion::TrafficAnalysisResistance;pub use p2p::NetworkConfig as P2PNetworkConfig;pub use p2p::P2PCommand;pub use p2p::P2PEvent;pub use p2p::P2PHandle;pub use p2p::P2PNode;pub use p2p::QuDagRequest;pub use p2p::QuDagResponse;pub use quantum_crypto::MlKemCiphertext;pub use quantum_crypto::MlKemPublicKey;pub use quantum_crypto::MlKemSecretKey;pub use quantum_crypto::MlKemSecurityLevel;pub use quantum_crypto::QuantumKeyExchange;pub use router::HopInfo;pub use router::Router;pub use shadow_address::DefaultShadowAddressHandler;pub use shadow_address::NetworkType;pub use shadow_address::RotationPolicies;pub use shadow_address::ShadowAddress;pub use shadow_address::ShadowAddressError;pub use shadow_address::ShadowAddressGenerator;pub use shadow_address::ShadowAddressManager;pub use shadow_address::ShadowAddressMixer;pub use shadow_address::ShadowAddressPool;pub use shadow_address::ShadowAddressResolver;pub use shadow_address::ShadowFeatures;pub use shadow_address::ShadowMetadata;pub use traffic_obfuscation::ObfuscationPattern;pub use traffic_obfuscation::ObfuscationStats;pub use traffic_obfuscation::TrafficObfuscationConfig;pub use traffic_obfuscation::TrafficObfuscator;pub use traffic_obfuscation::DEFAULT_MESSAGE_SIZE;pub use traffic_obfuscation::STANDARD_MESSAGE_SIZES;pub use transport::AsyncTransport;pub use transport::Transport;pub use transport::TransportConfig;pub use transport::TransportError;pub use types::ConnectionStatus;pub use types::LatencyMetrics;pub use types::MessagePriority;pub use types::NetworkAddress;pub use types::NetworkError;pub use types::NetworkMessage;pub use types::PeerId;pub use types::QueueMetrics;pub use types::RoutingStrategy;pub use types::ThroughputMetrics;pub use circuit_breaker::CircuitBreaker;pub use circuit_breaker::CircuitState as CircuitBreakerState;pub use connection::ConnectionInfo;pub use connection::ConnectionManager;pub use connection::HealthStatistics;pub use connection::SecureConfig;pub use connection::SecureConnection;pub use connection::TransportKeys;pub use connection::UnhealthyConnectionInfo;
Modules§
- circuit_
breaker - connection
- connection_
pool - dark_
resolver - discovery
- Production-ready P2P network peer discovery implementation with Kademlia DHT, dark addressing support, and sophisticated peer reputation management.
- dns
- DNS integration module for ruv.io using Cloudflare API.
- kademlia
- Production-ready Kademlia DHT implementation for decentralized peer discovery with bootstrap node functionality, content routing, and peer reputation scoring.
- message
- metrics
- nat_
traversal - NAT traversal and firewall penetration module for QuDAG network.
- onion
- p2p
- peer
- P2P network peer management implementation.
- quantum_
crypto - Quantum-resistant cryptographic primitives for secure P2P communication.
- router
- routing
- shadow_
address - Shadow address implementation for stealth payments.
- traffic_
obfuscation - Comprehensive traffic obfuscation module for QuDAG
- transport
- Network transport layer implementation with TLS 1.3 and post-quantum cryptography.
- types
Structs§
- Network
Config - Network configuration for the manager
- Network
Manager - Comprehensive network manager for P2P operations
- Network
Stats - Network statistics
- Peer
Metadata - Peer metadata for tracking
- Reputation
Manager - Reputation management for peers
Enums§
- Network
Event - Network events for inter-component communication
Traits§
- Peer
Discovery Service - Trait for peer discovery services