Native ICE STUN failover can stall when server entries share an address
まだ誰も着手していません。
評価
- 難易度
- 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 はありません
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
ValveSoftware/GameNetworkingSockets のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
-
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
-
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
ValveSoftware/GameNetworkingSockets#425 · コメント 7 件 ·
ValveSoftware/GameNetworkingSockets の issue をすべて見る
似ている issue
-
bug build
難易度 1/5 1時間未満 初心者へのやさしさ 91/100
facebookincubator/velox#19194 ·
-
JIT-compiled number -> Decimal conversion silently overflows instead of raising DECIMAL_OVERFLOW オープンfuzz
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
ClickHouse/ClickHouse#122114 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
-
module/agent platform/macos type/bug/regression
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
-
enhancement PyCDE
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100