Skip to main content

The NDN State Vector Sync (SVS) Protocol in Python 3

Project description

ndn-python-svs: State Vector Sync NDN Python library

This python library implements the State Vector Sync (SVS) protocol to synchronise states between multiple clients over NDN for distributed realtime applications.

This is an official implementation but considered 'experimental'.

ndn-python-svs uses the python-ndn library for it's implementation.

Installation

Prerequisites

Examples

To try out the chat demo application, follow the below steps.

To create a chat client, simply run this in the home directory:

python3 examples/chat_node.py -n NODE_NAME [-gp GROUP_PREFIX] [-h]

You may create as many of these as possible and all clients will sync up using SVS.

Before you run the program, you must register the group prefix as multi-cast (even if you did not specifically define the group prefix):

nfdc strategy set <group-prefix> /localhost/nfd/strategy/multicast/%FD%03

The default (unless specified) group prefix is /svs for our examples.

More on setting different strategies (like mutli-cast) for prefixes.

Branches

  • master : The Default Protocol Only, no other features from other branches

  • preserve : Does preserve cache via database ~/.ndn/svspy between runs

  • share : Able to cache other node's messages in case one goes down

License and Authors

ndn-python-svs is an open source project that is licensed. See LICENSE.md for more information.

Please note: This is only a reimplementation in python and does not claim any credit towards the actual design of SVS.

The Names of all authors associated with this reimplementation project are below:

  • Justin C Presley (justincpresley)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ndn-svs-0.1.1.tar.gz (9.0 kB view hashes)

Uploaded Source

Built Distribution

ndn_svs-0.1.1-py3-none-any.whl (20.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page