The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning. Learn more →
Top 23 Networking Open-Source Projects
-
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.
-
libcurl
A command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS. libcurl offers a myriad of powerful features
-
90DaysOfDevOps
This repository started out as a learning in public project for myself and has now become a structured learning map for many in the community. We have 3 years under our belt covering all things DevOps, including Principles, Processes, Tooling and Use Cases surrounding this vast topic.
-
tokio
A runtime for writing reliable asynchronous applications with Rust. Provides I/O, networking, scheduling, timers, ...
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
fasthttp
Fast HTTP package for Go. Tuned for high performance. Zero memory allocations in hot paths. Up to 10x faster than net/http
-
kcptun
A Stable & Secure Tunnel based on KCP with N:M multiplexing and FEC. Available for ARM, MIPS, 386 and AMD64。N:M 多重化と FEC を備えた KCP に基づく安定した安全なトンネル。 N:M 다중화 및 FEC를 사용하는 KCP 기반의 안정적이고 안전한 터널입니다. Un tunnel stable et sécurisé basé sur KCP avec multiplexage N:M et FEC.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Project mention: Consuming and Testing third party API's using Spring Webclient | dev.to | 2024-02-19We will use Square’s Mock Webserver to spin up a mock server which we can use to simulate real api's request to the get coffee endpoint.
Then, in another terminal window, we use curl to hit the endpoint:
Code of netty is here and using following library
90DaysOfDevOps 2022
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.
Project mention: Epoll: The API that powers the modern internet (2022) | news.ycombinator.com | 2024-01-11
Someone made a benchmark of serialization libraries in go [1], and I was surprised to see gobs is one of the slowest ones, specially for decoding. I suspect part of the reason is that the API doesn't not allow reusing decoders [2]. From my explorations it seems like both JSON [3], message-pack [4] and CBOR [5] are better alternatives.
By the way, in Go there are a like a million JSON encoders because a lot of things in the std library are not really coded for maximum performance but more for easy of usage, it seems. Perhaps this is the right balance for certain things (ex: the http library, see [6]).
There are also a bunch of libraries that allow you to modify a JSON file "in place", without having to fully deserialize into structs (ex: GJSON/SJSON [7] [8]). This sounds very convenient and more efficient that fully de/serializing if we just need to change the data a little.
--
1: https://github.com/alecthomas/go_serialization_benchmarks
2: https://github.com/golang/go/issues/29766#issuecomment-45492...
--
3: https://github.com/goccy/go-json
4: https://github.com/vmihailenco/msgpack
5: https://github.com/fxamacker/cbor
--
6: https://github.com/valyala/fasthttp#faq
--
7: https://github.com/tidwall/gjson
8: https://github.com/tidwall/sjson
Project mention: Cisco to Acquire Cloud Native Networking and Security Leader Isovalent | news.ycombinator.com | 2023-12-21They would have had to add a few externals to get to Graduated but it's definitely a minority:
https://github.com/cilium/cilium/blob/main/MAINTAINERS.md
Sniffnet is an open source, Rust-based network monitoring tool I’ve been working on for almost two years now.
Alternatives at the low to medium level of abstraction include civetweb and mongoose, which have a common ancestor. Both of these appear to be C rather than C++, but seem to be production quality and well-documented. Another C library is cpp-httplib, which is probably too low-level for me.
Project mention: Epoll: The API that powers the modern internet (2022) | news.ycombinator.com | 2024-01-11
I've found myself at this webpage multiple times while trying to minimize the complexity of APIs in my C projects.
My conclusion for now is that C coroutines are something to be left to the implementer. For example: Mongoose (https://github.com/cesanta/mongoose) uses event callbacks to deal with asynchronousness. It is much more pleasant to wrap a library like this in whatever thread/task primitives your system has rather than try to integrate the mythical cross-platform c couroutine.
Networking related posts
- Zenoh: Zero Overhead Network Protocol
- Show HN: OpenZiti (Apache 2.0, P2P, E2E encrypted, full mesh overlay) is now 1.0
- 3rd Edition of Programming: Principles and Practice Using C++ by Stroustrup
- Caching RESTful API requests with Heroku’s Redis Add-on
- Verified Curl
- Sniffnet 1.3 released!
- Reactor Netty: UDP DNS client example
-
A note from our sponsor - WorkOS
workos.com | 25 Apr 2024
Index
What are some of the best open-source Networking projects? This list will help you:
Project | Stars | |
---|---|---|
1 | OkHttp | 45,243 |
2 | Alamofire | 40,518 |
3 | Dubbo | 40,021 |
4 | libcurl | 34,167 |
5 | Netty | 32,765 |
6 | 90DaysOfDevOps | 25,803 |
7 | tokio | 24,677 |
8 | libuv | 23,219 |
9 | fasthttp | 21,033 |
10 | cilium | 18,510 |
11 | Moya | 14,964 |
12 | KCP | 14,696 |
13 | Muduo | 14,254 |
14 | sniffnet | 13,759 |
15 | kcptun | 13,678 |
16 | ZeroTier | 13,373 |
17 | CocoaAsyncSocket | 12,421 |
18 | C++ Workflow | 12,412 |
19 | RustScan | 12,178 |
20 | cpp-httplib | 11,806 |
21 | gRPC | 11,162 |
22 | libevent | 10,728 |
23 | Mongoose | 10,589 |
Sponsored