Valve 时隔四年再次更新 GameNetworkingSockets 库:新增 Rust 绑定与 P2P 改进,从 CS 到 Dota 2 都在用
时间:2026-04-29 | 作者:318050 | 阅读:0Valve 时隔四年再次更新 GameNetworkingSockets 库:新增 Rust 绑定与 P2P 改进,从 CS 到 Dota 2 都在用
4 月 29 日消息,Valve 于当地时间 4 月 28 日发布了 GameNetworkingSockets v1.5 版本。这也是该开源网络库自 2024 年 6 月 v1.4.1 版本以来的首次更新。
说起 GameNetworkingSockets,这可是 Valve 在 2018 年就开源的一个核心网络库。它本质上扮演着 Steam 网络套接字层的角色,专门为游戏提供底层网络传输支持。像《反恐精英》《刀塔 2》这些大家耳熟能详的游戏,背后都有它的身影。这个库的特性相当全面:支持 IPv6、P2P 网络、加密,同时兼容可靠与不可靠的消息类型。它提供的是面向连接的 API,但底层设计思路更接近 UDP 那种面向消息的风格。
API 层面的重要演进
这次 v1.5 版本在 API 上做了不少调整。具体来看,ISteamNetworkingSockets::SendMessages 函数在发送失败场景下的语义被更新了,现在支持重试机制。配置选项也丰富了,新增了 ECN(显式拥塞通知)、抖动统计、IPLocalHost_AllowWithoutAuth 等选项及其访问器。为了方便 C 语言开发者,库还为 ISteamNetworkingMessages 新增了一套扁平的 C API。此外,还引入了 SteamNetworkingSockets_SetServiceThreadInitCallback 这个新函数。当然,最让社区兴奋的可能是,这个版本首次提供了由社区贡献的 Rust 语言绑定。
P2P 功能的加固与测试完善
在 P2P 网络这个关键领域,新版本解决了一个可能导致 WebRTC ICE 客户端卡死的竞态条件错误。对于仍处于测试状态的原生 ICE 客户端,也进行了大量的 Bug 修复。示例代码中的简易信令服务器现在用 Python 重写了,并修复了已知问题。更值得关注的是,P2P 测试现在已经被正式纳入持续集成(CI)流程。这意味着什么?意味着相关的网络功能在未来的稳定性会更有保障。目前,CI 测试覆盖的范围已经相当广泛,包括 macOS、多种 Linux 发行版以及更多版本的 Windows 系统。测试套件本身也增加了多项新测试,特别是 P2P 测试的覆盖率得到了显著提升。
累积性改进与安全增强
除了上述亮点,此次更新更像是一次大规模的“查漏补缺”和性能打磨。库现在能够自动纠正报文和消息队列层在某些乱序条件下的问题。针对不同平台和编译器的兼容性问题,也修复了一大堆。对于开发者而言,构建体验有所改善,CMake 与 vcpkg 的集成得到了改进,同时也解决了与新版本 protobuf 和 abseil 的兼容性问题。在诊断方面,新增了 Windows 事件跟踪(ETW)支持,这对于在 Windows 平台下进行深度调试和性能分析会很有帮助。最后,版本还包含了加密、连接管理和线路协议方面的大量细微错误修复,以及一些重要的安全漏洞修复,进一步夯实了网络层的可靠性与安全性。
来源:整理自互联网
免责声明:文中图文均来自网络,如有侵权请联系删除,心愿游戏发布此文仅为传递信息,不代表心愿游戏认同其观点或证实其描述。
相关文章
更多-
- 火狐浏览器Network面板不显示数据解决方法
- 时间:2026-06-13
-
- 谷歌浏览器控制台Network面板JSON预览错乱解决方法
- 时间:2026-06-10
-
- 谷歌浏览器Network面板如何过滤抓取WebSocket帧
- 时间:2026-06-05
-
- 谷歌浏览器Network面板拦截特定URL请求进行压力测试
- 时间:2026-05-13
精选合集
更多大家都在玩
大家都在看
更多-
- Safari浏览器翻译外语页面失效的原因
- 时间:2026-06-19
-
- 国家税务总局电子税务局网页版登录入口
- 时间:2026-06-19
-
- UC浏览器智能预读开启实现自动翻页教程
- 时间:2026-06-19
-
- Safari浏览器全屏模式下工具栏无法自动隐藏或显示原因
- 时间:2026-06-19
-
- 米侠浏览器V5.9网页深色模式强行渲染开启方法
- 时间:2026-06-19
-
- 如何限制vivo浏览器后台耗电
- 时间:2026-06-19
-
- 宙斯浏览器加密网页证书不安全手动信任解决方法
- 时间:2026-06-19
-
- Premiere视频转场随机块擦除效果教程
- 时间:2026-06-19
