Rust Networking

Open-source Rust projects categorized as Networking

Top 23 Rust Networking Projects

  • tokio

    A runtime for writing reliable asynchronous applications with Rust. Provides I/O, networking, scheduling, timers, ...

  • Project mention: On Implementation of Distributed Protocols | dev.to | 2024-04-05

    Being able to control nondeterminism is particularly useful for testing and debugging. This allows creating reproducible test environments, as well as discrete-event simulation for faster-than-real-time simulation of time delays. For example, Cardano uses a simulation environment for the IO monad that closely follows core Haskell packages; Sui has a simulator based on madsim that provides an API-compatible replacement for the Tokio runtime and intercepts various POSIX API calls in order to enforce determinism. Both allow running the same code in production as in the simulator for testing.

  • sniffnet

    Comfortably monitor your Internet traffic 🕵️‍♂️

  • Project mention: Sniffnet 1.3 released! | dev.to | 2024-04-08

    Sniffnet is an open source, Rust-based network monitoring tool I’ve been working on for almost two years now.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • RustScan

    🤖 The Modern Port Scanner 🤖

  • Project mention: RustScan – The Modern Port Scanner | news.ycombinator.com | 2023-08-25
  • Bandwhich

    Terminal bandwidth utilization tool

  • Project mention: Bandwhich: A CLI utility for displaying current network utilizations | news.ycombinator.com | 2023-09-20
  • bore

    🕳 bore is a simple CLI tool for making tunnels to localhost

  • Project mention: List of ngrok/Cloudflare Tunnel alternatives and other tunneling software and services. Focus on self-hosting. | dev.to | 2024-04-30

    bore - Minimal tunneling solution. MIT Licensed. Written in Rust.

  • MIO

    Metal I/O library for Rust.

  • Project mention: What's the canonical way of doing it in rust? | /r/rust | 2023-10-16

    Was playing around with mio (https://github.com/tokio-rs/mio) (not that mio itself is very important here!) and was trying to implement a simple something that I've done in java before: a Reactor that you can register ReactorClients with that will get callback whenever there are events on the corresponding socket etc.

  • rust-libp2p

    The Rust Implementation of the libp2p networking stack.

  • Project mention: On Implementation of Distributed Protocols | dev.to | 2024-04-05

    Substrate and Lighthouse use libp2p as a networking stack for communication between nodes. The libp2p framework is a versatile modular peer-to-peer networking stack. It provides a collections of abstractions, mechanisms, and protocols for facilitating communication in P2P systems. In particular, libp2p supports multiple transport mechanisms (TCP, QUIC, WebSocket, WebTransport, etc.), encryption schemes (TLS and Noise), and stream multiplexing. Higher-level protocols in libp2p are implemented on top of reliable, ordered, bidirectional binary streams, which are transparently encrypted and multiplexed by the framework.

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  • smol

    A small and fast async runtime for Rust

  • Project mention: The State of Async Rust | news.ycombinator.com | 2023-09-25

    My understanding is you always need a runtime, somethings needs to drive the async flow. But there are others on the market, just not without the.. market domination... of tokio.

    https://github.com/smol-rs/smol looks promising simply for being minimal

    https://github.com/bytedance/monoio looks potentially easier to work with than tokio

    https://github.com/DataDog/glommio is built around linux io_uring and seems somewhat promising for performance reasons.

    I haven't played with any of these yet, because Tokio is unfortunately the path of least resistance. And a bit viral in how it's infected tings.

  • trippy

    A network diagnostic tool

  • Project mention: Apnic: Cgnat is harming internet innovation (2022) | news.ycombinator.com | 2024-04-26

    [3] https://github.com/fujiapple852/trippy/issues/1104

  • libpnet

    Cross-platform, low level networking using the Rust programming language.

  • ntex

    framework for composable networking services

  • shadow

    Shadow is a discrete-event network simulator that directly executes real application code, enabling you to simulate distributed systems with thousands of network-connected processes in realistic and scalable private network experiments using your laptop, desktop, or server running Linux. (by shadow)

  • Project mention: Turmoil, a framework for developing and testing distributed systems | news.ycombinator.com | 2023-08-17

    Cool, will be interested to see how this develops! tokio's loom framework has been a big help in testing some tricky concurrency code I've worked on.

    Folks interested in this space might also be interested in the system I spend most of my time working on: Shadow. It also performs deterministic simulation of a network of hosts, but it intercepts network and system interactions at the syscall level via seccomp. As such it can work with binaries compiled from ~any language, usually without any code modification or special compilation. https://shadow.github.io/

  • zenoh

    zenoh unifies data in motion, data in-use, data at rest and computations. It carefully blends traditional pub/sub with geo-distributed storages, queries and computations, while retaining a level of time and space efficiency that is well beyond any of the mainstream stacks.

  • Project mention: Zenoh: Zero Overhead Network Protocol | news.ycombinator.com | 2024-04-24
  • laminar

    A simple semi-reliable UDP protocol for multiplayer games

  • actix-net

    A collection of lower-level libraries for composable network services.

  • nanocl

    Distributed System that simplifies the management of containers and virtual machines.

  • Project mention: Solving the Localhost Development Headache with Nanocl | dev.to | 2024-05-09

    Nanocl is a powerful tool designed to streamline project deployment and alleviate the pains associated with localhost development. By seamlessly integrating with your development workflow, Nanocl simplifies the process of running multiple services locally and eliminates common headaches like CORS issues, port conflicts and cookies.

  • distant

    🚧 (Alpha stage software) Library and tooling that supports remote filesystem and process operations. 🚧

  • ggrs

    GGRS is a reimagination of GGPO, enabling P2P rollback networking in Rust. Rollback to the future!

  • aquatic

    High-performance open BitTorrent tracker (UDP, HTTP, WebTorrent)

  • Project mention: Bitmagnet Allows People to Run Their Own Decentralized Torrent Indexer Locally | news.ycombinator.com | 2024-02-18

    How does Bitmagnet compare to Aquatic? https://github.com/greatest-ape/aquatic

  • ngrok-rust

    Embed ngrok secure ingress into your Rust apps with a single line of code.

  • bevy_quinnet

    A Client/Server game networking plugin using QUIC, for the Bevy game engine.

  • popol

    Minimal non-blocking I/O for Rust

  • Project mention: Test hanging forever after the end of the test function | /r/learnrust | 2023-07-08

    For those curious, I’m working on fixing issue #19 in popol.

  • Citadel-Protocol

    Post-quantum endpoint-to-endpoint encryption for messaging and file-sharing SDK

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

Rust Networking related posts

  • Fast, simple, hard real time allocator for Rust

    8 projects | news.ycombinator.com | 1 May 2024
  • Zenoh: Zero Overhead Network Protocol

    1 project | news.ycombinator.com | 24 Apr 2024
  • Sniffnet 1.3 released!

    1 project | dev.to | 8 Apr 2024
  • Bifrost: A peer-to-peer communications engine with pluggable transports

    4 projects | news.ycombinator.com | 22 Oct 2023
  • What's the canonical way of doing it in rust?

    1 project | /r/rust | 16 Oct 2023
  • netcrab: a networking tool

    4 projects | dev.to | 14 Oct 2023
  • Thread-per-Core

    3 projects | news.ycombinator.com | 6 Oct 2023
  • A note from our sponsor - InfluxDB
    www.influxdata.com | 28 May 2024
    Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality. Learn more →

Index

What are some of the best open-source Networking projects in Rust? This list will help you:

Project Stars
1 tokio 24,976
2 sniffnet 14,073
3 RustScan 12,794
4 Bandwhich 8,726
5 bore 8,083
6 MIO 6,108
7 rust-libp2p 4,211
8 smol 3,451
9 trippy 3,079
10 libpnet 2,191
11 ntex 1,801
12 shadow 1,356
13 zenoh 1,287
14 laminar 804
15 actix-net 682
16 nanocl 625
17 distant 537
18 ggrs 488
19 aquatic 459
20 ngrok-rust 290
21 bevy_quinnet 202
22 popol 160
23 Citadel-Protocol 128

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com