GameNetworkingSockets is just one in a list of open source projects worked on by Valve developers, and this doesn't even require Steam so developers can use it anywhere.
What is it? A basic transport layer for games, with a long list of features to add networking of some form into your games. It can be easily used with Steam, since it matches up with a lot of the Steamworks SDK but it's entirely standalone so it can be used across stores. The idea is that for Steam you use the SDK, for everywhere else you slot this in.
Today, September 4 they released GameNetworkingSockets 1.2.0 which adds major new features:
- Added support for peer-to-peer connections.
- NAT-punched connections, using google webrtc's ICE implementation.
- Plugin architecture for signaling service.
- Symmetric connect mode
- For full details, see README_P2P.md
- Reworked callback mechanism, improving compatibility with Steamworks version.
- Easier Windows configuration using vcpkg
- Numerous bugfixes, etc.
With the addition of P2P with NAT punching, it really is become quite a feature filled free and open source networking solution for game developers. Nice work from Valve.
You can find it on GitHub.