Expand description
Wire protocol types, ALPN identifiers, and message definitions for deCDN.
This is the leaf crate in the dependency graph — it has minimal dependencies and defines the shared vocabulary used by all other deCDN crates.
Re-exports§
pub use client::BINDING_SIG_LEN;pub use client::CHUNK_BYTES;pub use client::ChunkData;pub use client::ChunkPreimage;pub use client::ClientBinding;pub use client::ClientMessage;pub use client::MAX_CHAIN_LENGTH;pub use client::MB_BYTES;pub use client::StreamError;pub use client::StreamRequest;pub use client::StreamRequestExt;pub use client::StreamResponse;pub use client::StreamResponseBody;pub use client::StreamResponseExt;pub use client::VOUCHER_SIG_LEN;pub use client::Voucher;pub use client::VoucherRejectReason;pub use client::encode_chunk_frame;pub use client::encode_stream_request;pub use client::encode_stream_response;pub use client::parse_stream_request_ext;pub use client::parse_stream_response_ext;pub use coverage::Coverage;pub use coverage::DISCOVERY_BLOCK_BYTES;pub use coverage::discovery_block_bytes;pub use coverage::num_blocks;pub use dht::BatchStoreAck;pub use dht::BatchStoreRequest;pub use dht::CloserNodes;pub use dht::CloserNodesError;pub use dht::DhtMessage;pub use dht::FindNodeRequest;pub use dht::FindNodeResponse;pub use dht::FindValueRequest;pub use dht::FindValueResponse;pub use dht::FindValueResponseExt;pub use dht::MAX_BATCH_STORE_HASHES;pub use dht::MAX_CLOSER_NODES;pub use dht::MAX_PROVIDERS_PER_HASH;pub use dht::StoreAck;pub use dht::StoreRequest;pub use dht::StoreRequestExt;pub use dht::encode_find_value_response;pub use dht::encode_store_request;pub use dht::parse_find_value_response_ext;pub use dht::parse_store_request_ext;pub use framing::FrameError;pub use framing::MAX_MESSAGE_SIZE;pub use framing::TopLevelEnum;pub use framing::decode_message;pub use framing::encode_message;pub use framing::is_unknown_variant;pub use framing::read_frame;pub use framing::write_frame;pub use identity::ContentHash;pub use identity::ID_LEN;pub use identity::NodeId;pub use message::MAX_RATE_PER_MB;pub use message::MessageValidationError;pub use message::ProbeMessage;pub use message::ProbeRequest;pub use message::ProbeResponse;pub use message::ProbeResponseBody;pub use message::ProbeResponseExt;pub use message::SLASH_SIG_LEN;pub use message::encode_probe_response;pub use message::parse_probe_response_ext;pub use region::InvalidRegion;pub use region::Region;pub use region::is_valid_region;
Modules§
- client
- Wire message payload types for the
cdn/client/v1paid-delivery protocol. - coverage
- Range-keyed block coverage bitmap (ADR 039-adjacent partial-holder discovery).
- dht
- Wire message types for the
cdn/dht/v1Kademlia content DHT (ADR 022). - framing
- Length-prefixed wire framing for deCDN ALPNs (ADR 013).
- identity
- Strongly-typed 32-byte identity newtypes for the deCDN wire protocol.
- message
- Wire message payload types for deCDN ALPN protocols.
- region
- ISO 3166-1 alpha-2 region-code validation.
Constants§
- ALPN_
CLIENT - ALPN protocol identifier for paid blob delivery (client-to-node and node-to-node).
- ALPN_
DHT - ALPN protocol identifier for Kademlia-based content discovery (ADR 022).
- ALPN_
PROBE - ALPN protocol identifier for latency and availability probing.
- APP_
ERR_ RATE_ LIMITED - Connection rejected by the per-source or global rate limiter (ADR 013 §0x10).