DevelopersP2pOverview
P2p

Peer-to-peer

Our peer-to-peer technology works at the heart of Spacedrive allowing all of your devices to seamlessly communicate and share data. This documentation outlines the system's design and how to use it.

Terminology

  • Node: An application running Spacedrive's network stack.
    • This could be the Spacedrive app or the P2P relay.
    • If you have multiple Spacedrive installations open on your computer, each one is an independent node.
  • Library: A logical collection of your data within Spacedrive.
    • Conceptually, a library is the conflict resolved state of one or more instances, although a lot of the time we don't strictly treat it that way.
  • Instance: An instance of a library running on a particular node.
    • An instance correlates directly to each SQLite file.
    • You could technically have more than one instance for a library on a single node, although our core would fall apart as we identify traffic by library.
  • Identity - A public/private keypair which represents the library or node.
  • RemoteIdentity - A public key which represents the library or node.
  • PeerId - The identifier libp2p uses. Can be derived from a RemoteIdentity.