C++ Networking

Open-source C++ projects categorized as Networking | Edit details
Related topics: #CPP #C++ #HTTP #HTTP Server #Cpp11

Top 23 C++ Networking Projects

  • GitHub repo Muduo

    Event-driven network library for multi-threaded Linux server in C++11

  • GitHub repo ZeroTier

    A Smart Ethernet Switch for Earth

    Project mention: Microsoft and Qualcomm special deal coming to an end could mean Windows for M1 Macs | reddit.com/r/apple | 2021-11-23

    Might I recommend Tailscale or Zerotier?

  • Nanos

    Run Linux Software Faster and Safer than Linux with Unikernels.

  • GitHub repo ZeroMQ

    ZeroMQ core engine in C++, implements ZMTP/3.1

    Project mention: Implement message handling in firmware | reddit.com/r/embedded | 2021-11-28

    I just pulled this: https://github.com/zeromq/libzmq and it was like 80k lines of code.

  • GitHub repo Proxygen

    A collection of C++ HTTP libraries including an easy to use HTTP server.

    Project mention: kleinsHTTP: A stupid stupidly simple HTTP Server | reddit.com/r/cpp | 2021-08-21

    proxygen claims to support all 3, although I'm still not sure if it's an actual library or just an interface.

  • GitHub repo C++ REST SDK

    The C++ REST SDK is a Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design. This project aims to help C++ developers connect to and interact with services.

    Project mention: Web services in C++ | reddit.com/r/developersIndia | 2021-09-24

    Assuming you want to make a REST API check this out: https://github.com/Microsoft/cpprestsdk

  • GitHub repo C++ Workflow

    C++ Parallel Computing and Asynchronous Networking Engine

    Project mention: WFKafkaClient: A simple C++ asynchronous Kafka client | news.ycombinator.com | 2021-10-20
  • GitHub repo cpp-httplib

    A C++ header-only HTTP/HTTPS server and client library

    Project mention: Crow finally gets rid of `CROW_MAIN` macro | reddit.com/r/cpp | 2021-11-24

    I went with cpp-httplib instead, also partially because it lets me seperate the cpp from the h header only library (I despise this trend of header only libraries blowing up compile times). But now that crowcpp is getting new manpower behind it, I will seriously consider it, partially because handles url arguments better.

  • Scout APM

    Scout APM: A developer's best friend. Try free for 14-days. Scout APM uses tracing logic that ties bottlenecks to source code so you know the exact line of code causing performance issues and can get back to building a great product faster.

  • GitHub repo GameNetworkingSockets

    Reliable & unreliable messages over UDP. Robust message fragmentation & reassembly. P2P networking / NAT traversal. Encryption.

    Project mention: Which one of these plans should i take to make my game multiplayer? | reddit.com/r/learnprogramming | 2021-11-28

    https://github.com/ValveSoftware/GameNetworkingSockets Works with AND without Steamworks.

  • GitHub repo POCO

    The POCO C++ Libraries are powerful cross-platform C++ libraries for building network- and internet-based applications that run on desktop, server, mobile, IoT, and embedded systems.

    Project mention: Higher level threading in C++ | dev.to | 2021-04-29

    This is why I generally prefer Threadpools, or a producer-consumer pattern. Both these patterns require a queue that contains the jobs or units of work. Worker threads will continually try to read items from such a queue and process the item. There are some libraries that offer threadsafe queue's and/or threadpools, such as poco, QT or boost, but it's actually fairly simple to implement your own, using only the STL. So let's implement one now!

  • GitHub repo WebSocket++

    C++ websocket client/server library

    Project mention: How and where I can learn about Web sockets, APIs, Wrappers to connect with my C++ code? | reddit.com/r/cpp_questions | 2021-04-19

    Learning how to use this library is probably your best bet: https://github.com/zaphoyd/websocketpp

  • GitHub repo cpr

    C++ Requests: Curl for People, a spiritual port of Python Requests.

    Project mention: HTTP libraries | reddit.com/r/cpp_questions | 2021-11-26

    It's got several C++ wrappers if you prefer those, my favourite is C++ requests

  • GitHub repo Game-Networking-Resources

    A Curated List of Game Network Programming Resources

    Project mention: N64 Games Only Allow 1 Controller Online | reddit.com/r/NintendoSwitch | 2021-10-27

    When you play any kind of real-time online multiplayer game, it is physically impossible for all players to have the same view of the world. As a result, approximations have to be made, for example by extrapolating other player positions. There is plenty of research on this subject, and most modern games do a pretty good job. But when you add a second local player, things get a lot more complicated.

  • GitHub repo nghttp2

    nghttp2 - HTTP/2 C Library and tools

    Project mention: How To Configure NGINX With SSL and HTTP/2 | dev.to | 2021-05-11

    In this section, I'll use an open-source HTTP client named Nghttp2 for testing the server.

  • GitHub repo Boost.Beast

    HTTP and WebSocket built on Boost.Asio in C++11

    Project mention: Suggestions for a minimal and simple http client library? | reddit.com/r/cpp_questions | 2021-11-02

    Boost Beast?

  • GitHub repo evpp

    A modern C++ network library for developing high performance network services in TCP/UDP/HTTP protocols.

  • GitHub repo cpp-netlib

    The C++ Network Library Project -- cross-platform, standards compliant networking library.

  • GitHub repo Silicon

    A high performance, middleware oriented C++14 http web framework please use matt-42/lithium instead

  • GitHub repo PcapPlusPlus

    PcapPlusPlus is a multiplatform C++ library for capturing, parsing and crafting of network packets. It is designed to be efficient, powerful and easy to use. It provides C++ wrappers for the most popular packet processing engines such as libpcap, WinPcap, DPDK and PF_RING.

    Project mention: PcapPlusPlus v21.11 released - C++ library for capturing and analyzing network packets | reddit.com/r/coolgithubprojects | 2021-11-10
  • GitHub repo libquic

    QUIC, a multiplexed stream transport over UDP

  • GitHub repo Restbed

    Corvusoft's Restbed framework brings asynchronous RESTful functionality to C++14 applications.

    Project mention: What does modern (good) API development look like and what are the best tools to use? | reddit.com/r/AskProgramming | 2021-09-02

    Contrary to the direction most people go, I've been writing REST APIs as C++ servers using two different fairly full featured C++ REST frameworks: first using https://github.com/Corvusoft/restbed and more lately using https://github.com/Stiffstream/restinio. These can be peers with any other server, while living on embedded and/or high compute devices for video encode/decode/analysis, deployed ML models, encryption for and remote process communications, model data collection and similar expensive or in-field processing. In both high compute and in-field-no-internet situations creating REST APIs in C++ enables speed and system controls not present in the majority of the mainstream REST frameworks. It's a big world, and here comes ubiquitous high compute...

  • GitHub repo MongoDB C++ Driver

    C++ Driver for MongoDB

  • GitHub repo RESTinio

    Cross-platform, efficient, customizable, and robust asynchronous HTTP/WebSocket server C++14 library with the right balance between performance and ease of use

    Project mention: Modern C++ Web API (Back-End Development) | reddit.com/r/cpp | 2021-11-15
  • GitHub repo roc-toolkit

    Real-time audio streaming over the network.

    Project mention: PipeWire 0.3.21 is now in Extra | reddit.com/r/archlinux | 2021-02-04

    Sorry, no idea. Maybe it's possible with Roc? if the drivers mentioned in the roc-send man page don't require the PulseAudio modules then maybe it's possible, and there's also support for ALSA.

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). The latest post mention was on 2021-11-28.

C++ Networking related posts


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

Project Stars
1 Muduo 10,504
2 ZeroTier 7,666
3 ZeroMQ 7,370
4 Proxygen 7,337
5 C++ REST SDK 6,609
6 C++ Workflow 6,350
7 cpp-httplib 6,048
8 GameNetworkingSockets 5,761
9 POCO 5,701
10 WebSocket++ 5,143
11 cpr 4,130
12 Game-Networking-Resources 4,128
13 nghttp2 3,848
14 Boost.Beast 3,213
15 evpp 2,831
16 cpp-netlib 1,862
17 Silicon 1,719
18 PcapPlusPlus 1,663
19 libquic 1,561
20 Restbed 1,542
21 MongoDB C++ Driver 852
22 RESTinio 791
23 roc-toolkit 738
Find remote jobs at our new job board 99remotejobs.com. There are 34 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives