Native ICE STUN failover can stall when server entries share an address
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 45/100
- Issue 类型
- 缺陷
- 描述清晰度
- 描述清楚
- 活跃度
- 活跃
- 技术栈
- networking
- 领域
- networking
调研方向
Look at the native ICE client code, likely in files handling STUN server lists and failover logic. The issue describes a loop when duplicate addresses exist in the server list. Start by finding where STUN requests are made and how the next server is selected after a timeout. Check for address-based indexing. The fix involves ensuring unique address selection or marking discovery as failed. Test with a setup using duplicate hostname entries.
由索引模型根据 Issue 内容生成。
描述
We hit a repeatable stall in the native ICE client on Windows with GameNetworkingSockets 1.6.0.
When a STUN request times out, the client uses the server's address to find its position in the configured server list, then tries the next entry. If several entries have the same address, it keeps finding the first match and retrying the same next entry.
The client doesn't mark STUN discovery as failed, and the retries continue without a pause.
In our setup, stun.l.google.com and stun1.l.google.com through stun4.l.google.com all resolved to the same IPv4 and IPv6 addresses.
On a machine with an additional network adapter, sends through that adapter failed with WSAEADDRNOTAVAIL or WSAENETUNREACH. During match startup, the repeated retries caused the game to freeze.
We worked around it by configuring only STUN hostnames that resolve to distinct addresses. The keepalive path also appears to select servers by address, so duplicate entries may affect it as well.
- 主要语言
- C++
- 星标
- 9.9k
- 派生
- 749
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
ValveSoftware/GameNetworkingSockets 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 74/100
-
难度 2/5 1-3 小时 新手友好度 78/100
-
难度 4/5 3-5 天 新手友好度 55/100
-
难度 3/5 1-2 天 新手友好度 68/100
-
难度 5/5 一周以上 新手友好度 25/100
查看 ValveSoftware/GameNetworkingSockets 的全部 Issue
相似的 Issue
-
component: split-view platform: windows
难度 2/5 1-3 小时 新手友好度 74/100
zen-browser/desktop#15616 · 1 个 reaction ·
维护者通常 1 天内回复
-
area/ysql kind/bug priority/medium status/awaiting-triage
难度 2/5 1-3 小时 新手友好度 84/100
yugabyte/yugabyte-db#34415 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 86/100
WayfireWM/wayfire#3148 · 1 条评论 ·
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 84/100
维护者通常 1 天内回复
-
backend:DirectX
难度 2/5 1-3 小时 新手友好度 84/100
llvm/llvm-project#227530 ·
维护者通常 1 天内回复