モバイル ゲームでのリアルタイム マルチプレーでP2PとC/Sネットワーキングに対して比較しながら叙述します。

 

結論から言えば、次のようです。

 

  • Wifi環境でゲームをする時は高い確率で直接P2P通信をします。
  • FPS、レーシング ジャンルなどのレイテンシの敏感なゲームはP2Pが効果的です。
  • P2Pはハッキングに脆弱な面があります。C/Sは使用法によりハッキングに脆弱になります。
  • 普遍的にP2PはC/Sよりレイテンシ(反応速度)がより良いです。

 

詳しい内容を申し上げます。

C/S ネットワキングとP2Pネットワキングとは

マルチプレーヤーゲームでC/Sネットワーキング或いはクライアント-サーバーネットワーキングをする時は、クライアントでのメッセージ例えばプレーヤーキャラクターの移動やプレーヤーが入力した命令をサーバーに送ってサーバーがそれを他のクライアントらに送ります。

도식1-01

 

P2Pネットワーキング或いはピアツーピア(peer-to-peer)ネットワーキングをする時はクライアントが直接他のクライアントにメッセージを送ります。도식2-01

 

 

  • Wifi環境でゲムをする時高い確率で直接P2P通信をします。

ゲームをする時二つの機器が全部セルラーネットワーク即ち3GやLTEの場合にはホルパンチングの成功率が非常に低いです。即ち、ほとんどの場合リレー処理になってしまいます。

だが、片方や両側がWifiならばホルポンチングの成功率は高いです。

도식3-01

 

リアルタイム マルチプレーゲームではデータ通信料金が発生します。使用者の立場ではどうしても気になります。

通信料金が高い中国ではメッセンジャーアプリのプッシュのお知らせがくればこれを確認するためにWifiができる環境を訪ねて行ったりします。

したがって使用者らは3GやLTEの代わりにWifiを好むものです。

 

 

  • レイテンシが敏感なゲムはP2P果的です。

モバイル ネットワーク(3G/LTE)の回線品質が良くない場合にはP2PとC/Sのレイテンシは大きな差がありません。

 

だが、モバイル ネットワーク(3G/LTE)の品質が良い時はP2PとC/S間の差が明確になります。

 

品質が良いモバイル ネットワーク(3G/LTE))では

P2Pの場合約2msを、

C/Sでは約12msの

処理ヂィレーを確認できます。(環境により多少差があります。)

 

恐らくFPSゲームを主にするユーザーらはレイテンシ10msの差が何を意味するのか切実に共感するでしょう。

도식5-01

 

 

  • P2Pはハッキングに脆弱な面があります。C/Sは使用方法によりハッキングに弱くなることができます。

C/S方式のリアルタイム マルチプレーオンライン ゲームの場合、マルチプレー同期化をする方式は大きく三つに区分されます。

도식6(중문)-01

  • 方式1:クライアントで“命令”を送る方式(Player 1 -> Player 1 Input(Scene Update))
  • 方式2:クライアントで“演算されたプレーヤー移動情報”だけを送る方式

方式1は方式2に比べてクライアント ハッキングに強いです。

その理由はプレーヤーキャラクターに対する移動演算をサーバーでも処理するためです。

だがscene updateをサーバーで全部処理するのはサーバー性能において相当な負荷を占めます。

 

さらに大きな問題が発生するのに、方式2よりゲーム プレー中に発生する切れる現象或いはラック現象がもっと深刻です。

 

image

< 方式1を使ったゲームのラック現象 https://www.youtube.com/watch?v=83i8Yzkkzvg>

方式2は方式1と違って、プレーヤーキャラクターに対する移動演算をクライアントがします。したがって方式1と違ってハッキングに弱いです。P2Pはハッキングに弱いが方式1もP2Pとほとんど同級でハッキングに弱いです。それさえもできる最善は、クライアントの演算がハッキングされた結果なのかを検査するだけです。

方式1の長所は方式1よりはるかに快適なマルチプレーです。レイテンシにそれほど敏感ではないためです。

 

モバイル ゲームは無線ネットワーク(WIFI/3G/LTE)を使います。

問題は無線ネットワークのレイテンシが有線ネットワークに比べて偏差が大きいということにあります。

無線ネットワークの品質が良好でも間欠的な大きいレイテンシは避けられません。

方式2は間欠的な大きいレイテンシが起きてもほとんどのゲーム プレー中に異常さを感じられません。

だが、方式1は大きなレイテンシが起きる時ごとにゲームプレーがstutteringが起きます。画面が少しの間少しずつ止まってしまう現象です。

 

このような問題点のためにほとんどのモバイル ゲームではクライアント-サーバーネットワーキングをする時、やむを得ず方式2を使っています。

 

モバイルP2Pネットワーキングではプレーヤーの移動処理をクライアントが担当します。したがってハッキングに脆弱でなければなりません。

しかしクライアント-サーバーネットワーキングで作るにしても方式2を選択する以上P2Pネットワーキングと同じようにハッキングに弱くなります。解決しようとするなら方式1を使わなければならないがゲームの質を大きく落とすので好まれないでいます。

 

 

  • 普遍的にP2PC/Sよりレイテンシ(反応速度)が良いです。

マルチプレーでP2Pネットワーキングを適用する方式は大きく2種類があります。슈퍼-대칭(일문)-01

  • スーパーピア方式:クライアントの中の一つがすべてのプレーヤーのscene updateを担当します。俗にリッスンサーバー方式だと言います。
  • 対称ピア方式:各クライアントが各自プレーヤーのscene updateを担当します。リッスンサーバー方式ではありません。

 

スーパーピア方式はパッケージ ゲームで始まった方式でありこの方式は一部のオンライン ゲームでも使われています。サーバーで処理するにはscene updateらの演算量が多かったり、対称ピア方式で開発するのが難しい理由がある時に使われたりします。

 

避けられない場合ではない以上スーパーピア方式を避けなければなりません。

スーパーピア方式の場合、スーパーピアと選ばれたプレーヤーがゲーム プレー途中離脱する時共にプレーしていた他のプレーヤーらもゲームが中断されるという問題点があって、スーパーピアの処理性能が悪い場合、他のプレーヤーらも全部悪影響を受けます。

 

したがって多くのオンライン ゲームでP2Pネットワーキングは対称ピア方式で使われます。

対称ピア方式では各プレーヤーの位置情報を直接他のクライアントらに伝送します。

したがってプレーヤーはC/S方式でプレーする時より速い反応速度を感じることができます。

たとえP2Pホルパンチングができなくてリレーをすることになって、これによって遅くなったといってもC/S方式で通信するゲームと同じレイテンシを確認できます。

 

即ちP2P方式はC/S方式よりさらにはやい反応速度を提供して、最悪の場合にも反応速度はC/S方式と全く同じになります。

 

P2Pネットワキングのいろんな用途

P2Pネットワーキングはさらに速い反応速度のマルチプレーだけでなく次の用途にも活用されます。

 

  • クライアント間多い量のトラフィックが発生する場合(例示:音声、画像対話など)
  • サーバーで処理するにはとても多い量の演算をしなければならない場合(例示:ゲーム物理エンジン演算など)

 

これに対する詳しい内容は プラウドネットのヘルプ中P2P通信に対する文(韓国語)でも 説明しています。