17 releases

0.10.0 Sep 27, 2023
0.7.0 Jun 13, 2023
0.6.1 Mar 13, 2023
0.5.4 Sep 21, 2023
0.1.0 Dec 14, 2020

#2252 in Asynchronous

Custom license

115KB
3K SLoC

Netapp - a toolkit library for distributed software

Build Status

Netapp is a Rust library that takes care of a few common tasks in distributed software:

  • establishing secure connections
  • managing connection lifetime, reconnecting on failure
  • checking peer's state
  • peer discovery
  • query/response message passing model for communications
  • multiplexing transfers over a connection
  • overlay networks: full mesh, and byzantine-tolerant random peer sampling using Bᴀsᴀʟᴛ.

See examples folder to learn how to use netapp.


lib.rs:

Netapp is a Rust library that takes care of a few common tasks in distributed software:

  • establishing secure connections
  • managing connection lifetime, reconnecting on failure
  • checking peer's state
  • peer discovery
  • query/response message passing model for communications
  • multiplexing transfers over a connection
  • overlay networks: full mesh, and soon other methods

Of particular interest, read the documentation for the netapp::NetApp type, the message::Message trait, and proto::RequestPriority to learn more about message priorization. Also check out the examples to learn how to use this crate.

Dependencies

~22–31MB
~234K SLoC