Crate ndn_sync

Crate ndn_sync 

Source
Expand description

NDN dataset synchronisation protocols.

Provides both the low-level data structures (svs::SvsNode, psync::PSyncNode) and the high-level network protocol layer (svs_sync::join_svs_group) that wires them to actual Interest/Data exchange.

§Architecture

Application
  └── SyncHandle (recv updates, publish names)
        └── svs_sync / psync_sync (background task)
              └── SvsNode / PSyncNode (pure data structure)

Re-exports§

pub use protocol::SyncError;
pub use protocol::SyncHandle;
pub use protocol::SyncUpdate;
pub use psync_sync::PSyncConfig;
pub use psync_sync::join_psync_group;
pub use svs_sync::RetryPolicy;
pub use svs_sync::SvsConfig;
pub use svs_sync::fetch_with_retry;
pub use svs_sync::join_svs_group;

Modules§

protocol
Sync protocol abstraction — SyncHandle, SyncUpdate, SyncError. Sync protocol trait — abstraction over SVS, PSync, etc.
psync
Partial Sync (PSync) — IBF-based dataset synchronisation (pure data structure).
psync_sync
PSync network protocol — wires PSyncNode + Ibf to Interest/Data exchange. PSync network protocol — wires PSyncNode + Ibf to Interest/Data exchange.
svs
State Vector Sync (SVS) — pure data structure.
svs_sync
SVS network protocol — wires SvsNode to Interest/Data exchange. SVS (State Vector Sync) network protocol.