C Networking

Open-source C projects categorized as Networking

Top 23 C Networking Projects

  • 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

    Project mention: libcurl VS FileCentipede - a user suggested alternative | libhunt.com/r/curl | 2023-01-30
  • libuv

    Cross-platform asynchronous I/O

    Project mention: It is wise to deploy multiple nodejs instance in multicore CPU? | reddit.com/r/node | 2023-01-11

    That is not strictly true. Node.Js uses a single thread to execute your javascript code. But, underneath there is libuv that spawns thread-pool to execute DNS lookups, FS calls and crypto - by default the size of that pool is 4 threads.

  • SonarQube

    Static code analysis for 29 languages.. Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.

  • KCP

    :zap: KCP - A Fast and Reliable ARQ Protocol

    Project mention: Ousterhout: It's time to replace TCP in the Datacenter [pdf] | news.ycombinator.com | 2022-10-30
  • libevent

    Event notification library

    Project mention: Concurrency Model in JavaScript Runtime Environments | dev.to | 2022-09-03
  • Mongoose

    Embedded Web Server (by cesanta)

    Project mention: What C source code or library do you use for a local server? | reddit.com/r/C_Programming | 2023-01-27

    If you are looking for something simple there is mongoose from cesanta, https://github.com/cesanta/mongoose

  • coturn

    coturn TURN server project

    Project mention: WebRTC for p2p voice calling app? | reddit.com/r/WebRTC | 2022-11-30

    You're welcome! If this is for mission-critical or commercial use, you will want to invest in a good TURN server to ensure a reliable connection between peers. You can either self-host your own Coturn server or pay for a service like Twilio. But if this is just a hobby project, you can just use the free Open Relay Project.

  • GameNetworkingResources

    A Curated List of Game Network Programming Resources

    Project mention: Where to start with online multiplayer? | reddit.com/r/gamedev | 2022-09-28
  • InfluxDB

    Build time-series-based applications quickly and at scale.. InfluxDB is the Time Series Platform where developers build real-time applications for analytics, IoT and cloud-native services. Easy to start, it is available in the cloud or on-premises.

  • cjdns

    An encrypted IPv6 network using public-key cryptography for address allocation and a distributed hash table for routing.

    Project mention: Tailscale/golink: A private shortlink service for tailnets | news.ycombinator.com | 2022-12-13

    From a purely networking perspective, there are far better solutions than tailscale.

    Have a look at full mesh VPNs like:

    https://github.com/cjdelisle/cjdns

    https://github.com/yggdrasil-network/yggdrasil-go

    https://github.com/gsliepen/tinc

    https://github.com/costela/wesher

    These build actual mesh networks where every node is equal and can serve as a router for other nodes to resolve difficult network topologies (where some nodes might not be connected to the internet, but do have connections to other nodes with an internet connection).

    Sending data through multiple routers is also possible. They also deal with nodes disappearing and change routes accordingly.

    tailscale (and similar solutions like netbird) still use a bunch of "proxy servers" for that. You can set them up on intermediate nodes, but that have to be dealt with manually (and you get two kinds of nodes).

  • libwebsockets

    canonical libwebsockets.org networking library

    Project mention: Rusty C programmer needs help with modern tools | reddit.com/r/C_Programming | 2022-08-24

    I'm trying to setup a project using libwebsockets.

  • frr

    The FRRouting Protocol Suite

    Project mention: Flush BGP table faster | reddit.com/r/networking | 2022-09-10

    Use a decent PC or three, use https://frrouting.org/ and see fast bgp convergence 8-)

  • netcode.io

    A protocol for secure client/server connections over UDP

    Project mention: Multiplayer Networking Solutions | reddit.com/r/gamedev | 2022-10-06

    yojimbo/ netcode/ reliable, all developped by Glenn Fidler, author of GafferOnGames

  • Onion

    C library to create simple HTTP servers and Web Applications.

  • facil.io

    Your high performance web application C framework

    Project mention: Caffè Italia * 08/09/22 | reddit.com/r/italy | 2022-09-08

    ?

  • miniupnp

    UPnP IGD implementation

    Project mention: Xbox strict NAT | reddit.com/r/opnsense | 2022-07-30

    It's odd, because the nat-pmp/pcp configuration does support a lifetime configuration (apparently not exposed by the OPNSense UI). I assume that's not shared by the UPnP code path. Even so, time-limited rules was one of the security additions with UPnP v2, so I would doubt "unlimited" would be an option if it were made configurable. It really feels like this is on Xbox to implement properly. Other UPnP consumers like Plex handle it just fine.

  • netsniff-ng

    A Swiss army knife for your daily Linux network plumbing.

    Project mention: What is the correct way to do a git pull, ./configure, make, make install within a dockerfile? | reddit.com/r/docker | 2022-10-08

    RUN apt-get update && \ apt-get install -y iproute2 iputils-ping iperf3 tcpdump netcat ethtool \ mtr iftop nmap python3 python3-pip joe nano ccache flex bison libnl-3-dev \ libnl-genl-3-dev libnl-route-3-dev libgeoip-dev libnetfilter-conntrack-dev \ libncurses5-dev liburcu-dev libnacl-dev libpcap-dev zlib1g-dev libcli-dev \ libnet1-dev git RUN pip3 install ncclient requests scapy iperf3 RUN mkdir -p python_scripts/ \ mkdir -p packet_samples/ RUN git clone https://github.com/netsniff-ng/netsniff-ng.git COPY packet_samples/ packet_samples/ ADD python_scripts/iperf3_docker_client.py python_scripts/iperf3_docker_client.py ADD python_scripts/iperf3_docker_server.py python_scripts/iperf3_docker_server.py ADD python_scripts/ping_test.py python_scripts/ping_test.py RUN /netsniff-ng/configure WORKDIR /netsniff-ng RUN /netsniff-ng/configure && \ make && \ make install && WORKDIR / ENTRYPOINT ["/bin/bash"]

  • librg

    🚀 Making multi-player gamedev simpler since 2017

    Project mention: Multiplayer Networking Solutions | reddit.com/r/gamedev | 2022-10-06

    LibRG is an open-source, C99 header-only that handles actor relevancy, similar to Unreals Actor Relevancy Graph.

  • gsocket

    Connect like there is no firewall. Securely.

    Project mention: gsocket: Connect like there is no firewall. Securely. | reddit.com/r/planetemacs | 2022-12-01
  • felix

    Project Calico's per-host agent Felix, responsible for programming routes and security policy.

  • nope.c

    WAFer is a C language-based software platform for scalable server-side and networking applications. Think node.js for C programmers.

  • ENet-CSharp

    Reliable UDP networking library

    Project mention: Worried about server security and seperation with Mirror Networking | reddit.com/r/Unity3D | 2022-02-14

    You definitely want to a low level API (LLAPI) instead, like f.ex. LiteNetLib, ENet, lidgren or similar. I haven't touched anyone of these recently, except the first one a year-ish ago, so I won't say anything about where they stand today.

  • Polyphony

    Fine-grained concurrency for Ruby

  • pig

    A Linux packet crafting tool. (by rafael-santiago)

  • net_skeleton

    Async non-blocking multi-protocol networking library for C/C++

  • SaaSHub

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

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 2023-01-30.

C Networking related posts

Index

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

Project Stars
1 libcurl 28,326
2 libuv 20,811
3 KCP 12,087
4 libevent 9,501
5 Mongoose 9,119
6 coturn 8,714
7 GameNetworkingResources 5,355
8 cjdns 4,969
9 libwebsockets 3,750
10 frr 2,449
11 netcode.io 2,257
12 Onion 1,911
13 facil.io 1,679
14 miniupnp 1,226
15 netsniff-ng 1,068
16 librg 1,053
17 gsocket 1,008
18 felix 924
19 nope.c 693
20 ENet-CSharp 671
21 Polyphony 473
22 pig 434
23 net_skeleton 421
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com