Top 10 C Protocol Projects
:zap: KCP - A Fast and Reliable ARQ ProtocolProject mention: How feasible is this idea? Creating a battery run audio transmitter and receiver over TCP/IP | reddit.com/r/esp8266 | 2021-05-30
I'd consider KCP protocol over TCP, it has 30-40% lower latency at the expense of 20% higher bandwidth.
A cross-platform protocol library to communicate with iOS devicesProject mention: Files disappeared | reddit.com/r/RemarkableTablet | 2022-01-14
I'm not an iOS developer so I might be wrong there but I don't know how to do that unfortunately. I tried https://libimobiledevice.org/ few months ago without being able to get raw files on said devices except some photos with their metadata but not a full dump of the device.
Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.
KeepalivedProject mention: MicroK8s – Low-ops, minimal Kubernetes, for cloud, clusters, Edge and IoT | news.ycombinator.com | 2021-07-21
Cross-platform, C implementation of the IETF QUIC protocol.Project mention: .plan | news.ycombinator.com | 2021-11-16
A protocol for secure client/server connections over UDPProject mention: Why is client FPS limited by netcode? | reddit.com/r/starcitizen | 2022-01-10
You may not be there yet with your developer skills but if you are curious you can have a look at the netcode source code. I'm not sure if they're still using it since the switch to Lumberyard and Amazon Services but it's a really good and strong codebase: https://github.com/networkprotocol/netcode
A network library for client/server games written in C++Project mention: Handling acks during 1+ second packet loss with Glenn Fiedler's Reliable UDP Solution | reddit.com/r/gamedev | 2021-12-27
I can't remember exactly how best to handle this (Glenn's yojimbo project is probably your best bet for a concrete implementation), but here's an idea: buffer and ACK some packets (e.g. up to N packets following your missing packet) and discard everything else (without ACK) until the missing one shows up. The protocol will then continuously try to send your missing packet, in addition to the packets you've intentionally not ACK'd. Once the missing packet shows up you can process it and any buffered packets up to your next missing packet and repeat.
LiteSpeed QUIC and HTTP/3 LibraryProject mention: LiteSpeed QUIC (LSQUIC) is an open-source implementation of QUIC and HTTP/3 | news.ycombinator.com | 2021-02-15
> the word "thread" does not appear anywhere.
because it doesn't use threads? The library is intended to be used inside an eventloop. I think the same also applies for other typical transport libraries - e.g. HTTP/2 or TLS ones.
> Not sure why one would choose this over QUICHE.
I think there are certainly reasons. lsquic seems a lot more optimized than quiche and most other libraries out there. It makes use of some pretty clever datastructures (e.g. https://github.com/litespeedtech/lsquic/blob/master/src/libl...), and likely has a drastically lower rate of heap allocations than other implementations. Some of those things - like the use of intrusive linked lists - are unfortunately not that easy to apply in Rust.
I wouldn't be suprised if lsquic outperforms various other implementations - and if that's important to users it might be a reason to choose it (but as always: measure for your use-case).
I personally also think Rust is the way to go for system level code. But I wouldn't dismiss a project for not using Rust. And this one at least has a fair set of unit-tests, so it looks to me a lot more sane than a lot of other C based projects.
Deliver Cleaner and Safer Code - Right in Your IDE of Choice!. SonarLint is a free and open source IDE extension that identifies and catches bugs and vulnerabilities as you code, directly in the IDE. Install from your favorite IDE marketplace today.
Reliable UDP networking libraryProject mention: [Hobby // RevShare] Looking For Senior Multiplayer Developer (Unity) | reddit.com/r/INAT | 2021-09-11
Tiny Software Protocol for communication over UART, SPI, etcProject mention: Serial not sending full packets at once | reddit.com/r/esp32 | 2021-09-22
Generally you have to use HLDC or something like this to transfer data over fragmented links. This might be a good start: https://github.com/lexus2k/tinyproto
The bit level data interchange format for serializing data structures.Project mention: Are there any libraries for defining and generating code for byte- or bit- aligned messaging or packet formats? | reddit.com/r/cpp | 2021-09-06
I had a similar use case for embedded microcontroller work. Unfortunately, the only one that I found that lets you have bit-level control is bitproto. The problem with all these protocol formats is that they require generated sources to be included in your project at compile time.
C Protocol related posts
1 project | reddit.com/r/RemarkableTablet | 14 Jan 2022
Why is client FPS limited by netcode?
1 project | reddit.com/r/starcitizen | 10 Jan 2022
I need help transferring data from ipad to pc
1 project | reddit.com/r/datarecovery | 28 Dec 2021
Handling acks during 1+ second packet loss with Glenn Fiedler's Reliable UDP Solution
1 project | reddit.com/r/gamedev | 27 Dec 2021
Should I write my game server in C so that I can use the latest version of the netcode protocol?
1 project | reddit.com/r/gamedev | 18 Dec 2021
Apple Helps Asahi Linux
2 projects | news.ycombinator.com | 17 Dec 2021
[Request] Kali Linux tools iOS 14
1 project | reddit.com/r/jailbreak | 8 Dec 2021
What are some of the best open-source Protocol projects in C? This list will help you:
Are you hiring? Post a new remote job listing for free.