More Related Content Similar to ゲームの通信をつくる仕事はどうなるのだろう? (20) ゲームの通信をつくる仕事はどうなるのだろう?12. • WiFi 1 : 802.11b (1999) 11Mbps
• WiFi 2 : 802.11a (1999) 54Mbps
• WiFi 3 : 802.11g (2003) 54Mbps
• WiFi 4 : 802.11n (2009) ~600Mbps
• WiFi 5 : 802.11ac (2014) 292Mbps~6.9Gbps
• WiFi 6 : 802.11ax (2019) 9.6Gbps
• WiFi 7 : 802.11be (2024?) ?
WiFi
13. モバイル通信
名称 時期 帯域幅 遅延 料金
2G 1991 40Kbps 100ms~ ∝パケ数
3G 2000 144Kbps~ 100ms~ ∝パケ数
4G 2009 ~1Gbps 10ms~ ∝パケ数/定額
5G 2018 ~数Gbps(複雑) 1ms~ 定額?
6G ? Tbps? マイクロ秒 ?
21. 長距離転送
• 東京 - サンフランシスコ
• 往復 16000km
• 光速 200000km/s
• 理論上の時間 : 80ms
• pingして計測 : 110ms~120ms
• 10年前は150ms~200msだった
• これ以上改善は難しいかも
22. 中距離転送
• 東京 - 富山
• 往復 1600km (大阪経由)
• 光速 200000km/s
• 理論上の時間 8ms
• pingして計測 24ms
• まだ改善するかもしれない
24. 同一AZ内転送
• AWS
• ピークは10Gbps / 20Gbps (インスタンスによる)
• インスタンスタイプによって様々な制限がかかる
• 負荷が一定以上継続すると制限
• 帯域制限
• パケット数制限 (100万~140万pps)
• 高額なインスタンスは制限がゆるい
https://cloudonaut.io/ec2-network-performance-cheat-sheet/
29. インターネットの性能
• パケットロス率
• 有線LAN : スイッチとケーブルがちゃんとしてたら、ほぼ0だが、
受信側マシンに余裕がなくなると消える
• 無線LAN : 負荷がないときでも10000個に1個ぐらい消える。負荷
が高いと、100個に1個消えるときもある
• モバイルネットワーク : 電波がいいときでも100個に1個消えるか
も、電波が悪いと1割消えたりする
32. トランスポート層: TCPの時代分け
• 1980年代 : TCP登場、telnetでマシンを遠隔操作
• 1990年代 : メールやHTTPなどで大ブレイク
• 2000年代 : モバイルで長時間のストールを防ぎたい!
• 2010年代 : 動画や音声を高速送信したい!
Nagleアルゴリズム、スロースタート
高速リカバリの導入と改良
Long Fat パイプへの対応
状況や用途に合わせてアルゴリズムの使い分け
34. head of line blocking
TCP
こんなふうにしたい
packet1の影響で、全体が長時間ストールする
packet1はストールするがpacket2,3は早く届く
packet1の再送
packet1の再送
https://qiita.com/Jxck_/items/0dbdee585db3e21639a8
37. MRU : Monobit RUDP
• C++(ほぼC), 小さい
• IPアドレス変化への対応
• 正しい順序で送る
• 確実に送る (早めの再送,QUICにはない)
• 順序も確実さも保証しない方法で送ることもできる
• 0RTTハンドシェイク
• チェックサム
• サーバサイドの動的なアドレス, QUICにはない
• C10K以上のMMO向けにチューニング(少人数ももちろんOK)
• スロット飽和攻撃対策
• IP偽装対策
• 大量接続対策
• Linux/Windows/iOS/Android/MacOSに対応、ゲーム機は対応予定
• 暗号化は上位レイヤで実装
49. クラウドゲームと遅延
• スタンドアロンゲーム(非タッチ)
• 入力 ~0.1ms 描画 16.6~33.3ms 合計16.6~33.3ms
• スタンドアロンゲーム(タッチ)
• 入力 40~100ms 描画 16.6~33.3ms 合計 50~135ms
• クラウドゲーム(非タッチ)
• 4G 入力 ~0.1ms ネットワーク 40~100ms 描画 16.6~33.3ms ネットワーク
40~100ms デコード 1ms 描画 16.6ms 合計110〜250ms
• 5G 入力 ~0.1ms ネットワーク 5~20ms 描画 16.6~33.3ms ネットワーク 5~20ms
デコード 1ms 描画 16.6ms 合計45〜90ms
• クラウドゲーム (タッチ)
• 非タッチ+40~100ms
• 4G 合計 150~350ms
• 5G 合計 85~190ms