17 unstable releases (5 breaking)

0.6.1 Mar 13, 2023
0.5.2 Sep 19, 2022
0.4.4 May 9, 2022
0.4.1 Mar 15, 2022
0.1.0 Dec 14, 2020

#1065 in Network programming

Download history 159/week @ 2022-11-29 132/week @ 2022-12-06 103/week @ 2022-12-13 115/week @ 2022-12-20 75/week @ 2022-12-27 59/week @ 2023-01-03 67/week @ 2023-01-10 50/week @ 2023-01-17 74/week @ 2023-01-24 115/week @ 2023-01-31 49/week @ 2023-02-07 143/week @ 2023-02-14 123/week @ 2023-02-21 37/week @ 2023-02-28 117/week @ 2023-03-07 98/week @ 2023-03-14

422 downloads per month
Used in 10 crates (4 directly)

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

~12–18MB
~239K SLoC