netcode.io
wdt
Our great sponsors
netcode.io | wdt | |
---|---|---|
6 | 3 | |
2,371 | 2,640 | |
1.1% | - | |
8.6 | 4.2 | |
27 days ago | over 2 years ago | |
C | C++ | |
BSD 3-clause "New" or "Revised" License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
netcode.io
-
Multiplayer Networking Solutions
yojimbo/ netcode/ reliable, all developped by Glenn Fidler, author of GafferOnGames
-
I just want force-feedback
Man-in-the-middling the netcode. From what I can tell, this would work ... but the packets are encrypted. It appears the netcode is largely based on this library, that they sponsor. There appear to be some differences from the "standard" but there are too many similarities to not have a common ancestor. I got pretty far on this, just to at least verify there was encryption. Even if it is not encrypted, it appears to be a custom protocol.
-
What's an actually useful netcode package!
I use netcode.io - if you have read gafferongames posts, this is made by the guy.
-
Why is client FPS limited by netcode?
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
-
Should I write my game server in C so that I can use the latest version of the netcode protocol?
I found that there is a relatively new protocol called netcode.io that provides UDP-like connection between client-server.
-
P2P vs Client Server
If you want to learn more about networking for game in C++, Glenn Fiedler has great articles from the basics to advanced topics: https://www.gafferongames.com/ He also created a library for client-server networking: https://github.com/networkprotocol/netcode (He has a big name in networking, totally recommend reading his articles if you want to learn more about networking)
wdt
-
.plan
I like the way you're thinking here, I think the limitations you mentioned with gemini may stand... for me it's kind of like the limitations generally speaking with markdown. Doesn't leave much room for doing stuff like parsing the raw data when they aren't in a hierarchical structure with xpaths you can target and stuff like that, it just throws out so much baby with the bathwater that I'm ready to scream infanticide.
Any thoughts on fast experimental protocols like warp data transfer [1] or fast and secure protocol [2] ? I know they're not exactly the most open things or wellsupported in terms of what you're looking for but I've been really wondering when we're going to start seeing pressure to relieve network congestion using stuff like this.
[1] https://github.com/facebookarchive/wdt
-
Show HN: Wcp – a reimplementation of cp using io_uring. With a nice progress bar
That's great stuff, I wonder how it compares to wdt[0] when there's only one TCP path. This has been my go-to tool to transfer files on the network.
0: https://github.com/facebook/wdt
-
Data transfer to new Lustre storage overwhelms campus network
I guess? If you’re building parallel infrastructure (vlans are not enough obviously) just for running Aspera over it might not be the worst thing ever, but that’s an expensive way to live and that’s before you pay for the A$pera licenses. There are free and better behaved platforms out there like https://github.com/facebook/wdt if you don’t want other applications’ TCP sessions to time out while you’re trying to squeeze out the last half percent with Aspera.
What are some alternatives?
KCP - :zap: KCP - A Fast and Reliable ARQ Protocol
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, Npcap, WinPcap, DPDK, AF_XDP and PF_RING.
yojimbo - A network library for client/server games written in C++
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.
libquic - QUIC, a multiplexed stream transport over UDP
nghttp2 - nghttp2 - HTTP/2 C Library and tools
RakNet - RakNet is a cross platform, open source, C++ networking engine for game programmers.
WebSocket++ - C++ websocket client/server library
GameNetworkingSockets - Reliable & unreliable messages over UDP. Robust message fragmentation & reassembly. P2P networking / NAT traversal. Encryption.
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
Simple-Web-Server
Mongoose - Embedded Web Server