GameNetworkingSockets is a basic transport layer for games. A reliability layer significantly more sophisticated than a basic TCP-style sliding window. It is based on the "ack vector" model from DCCP (RFC 4340, section 11.4) and Google QUIC and discussed in the context of games by Glenn Fiedler. The basic idea is for the receiver to efficiently communicate to the sender the status of every packet number (whether or not a packet was received with that number). By remembering which segments were sent in each packet, the sender can deduce which segments need to be retransmitted. Encryption. AES-GCM-256 per packet, Curve25519 for key exchange and cert signatures. The details for shared key derivation and per-packet IV are based on the design used by Google's QUIC protocol. This library has shipped on consoles, mobile platforms, and non-Steam stores, and has been used to facilitate cross-platform connectivity. Contact us to get access to the code.

Features

  • Connection-oriented API (like TCP)
  • Supports both reliable and unreliable message types
  • Messages can be larger than underlying MTU
  • IPv6 support
  • Tools for simulating packet latency/loss, and detailed stats measurement
  • Peer-to-peer networking

Project Samples

Project Activity

See All Activity >

License

BSD License

Follow GameNetworkingSockets

GameNetworkingSockets Web Site

Other Useful Business Software
Build on Google Cloud with $300 in Free Credit Icon
Build on Google Cloud with $300 in Free Credit

New to Google Cloud? Get $300 in free credit to explore Compute Engine, BigQuery, Cloud Run, Vertex AI, and 150+ other products.

Start your next project with $300 in free Google Cloud credit. Spin up VMs, run containers, query exabytes in BigQuery, or build AI apps with Vertex AI and Gemini. Once your credits are used, keep building with 20+ products with free monthly usage, including Compute Engine, Cloud Storage, GKE, and Cloud Run functions. Sign up to start building right away.
Start Free Trial
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of GameNetworkingSockets!

Additional Project Details

Operating Systems

Windows

Programming Language

C++

Related Categories

C++ Communications Software, C++ Networking Software

Registered

2021-10-07