RUDP/UDPとP2Pの違い、リアルタイムサーバ経由のオンラインゲームの仕組み(2)
MOBAの正式名称はマルチプレヤーオンラインバトルアリーナ(Multiplayer online battle arena)、複数のプレイヤーが同時に参加できるオンライン対戦ゲームを指します。スマホ、PC、PS5やXBOX、プラットフォームを問わずMOBAゲームに寄せられた世界各地のプレイヤーたちはインターネットを通じて競い合い、まるでコミュニティみたいに交流します。 従来の電信機から現在のオンライン通話に至るまで、実用された技術の革新・普及は目を瞠るほど飛躍的でした。その裏にはUDP、TCP、RUDP、P2Pなどといった通信プロトコルの活用があります。
目次
「前回:RUDP/UDPとP2Pの違い、リアルタイムサーバ経由のオンラインゲームの仕組み(1)」
P2Pとクライアント・サーバの違い(メリット・デメリット)
オンラインゲームにおいて、一見してプレイヤーは1体のキャラクターしかコントロールしていないのですが、実際に参加者が増えるほどリアルタイム通信は複雑になります。

例えば、下記の図を示すように、1v1対戦ゲームの中では自分のキャラクターを操縦するだけでなく、相手のキャラクターへのダメージや影響を正しく反映させなければなりません。そうなると、端末ごとに2体のキャラクターが存在し、システム全体にはキャラクターが4体存在することになります。

4体ならまだしも、対戦ゲームに参加した人数が増えればそれなりにサーバーの処理負荷は重くなります。そのため、リアルタイムサーバのような低遅延・高頻度・高速通信を実現できる構成が求められます。ひいては、サーバ経由を捨て、P2Pのようなクライアントとサーバの一体化を生み出しました。
多人数、リアルタイムを特徴づけられるマルチプレイヤーのオンラインゲームから見ると、P2Pとクライアント・サーバ型の違いをいくつかにまとめます。
P2Pのメリット
-
一体化による低遅延(低いレイテンシ)
-
少人数(要素が少ない)はシステムに優しい
-
サーバー経由なしで、コスト削減につなぐ
クライアント・サーバ型のメリット
-
参加者が増えてもシステム通信はシンプルでいける
-
サーバーに繋がることでプレイーできる
-
相互通信(対戦)を制御できる
-
強いセキュリティ(チート)対策
P2Pにおける合意問題
合意問題とは各端末に存在したある変数の値を統一する問題です。ゲームの中ではボスを倒した後に宝箱やアイテムが1つや2つ出てくるでしょ。それを参加者の誰かに渡すのかについては合意で決められます、いわゆる多数決で。 各Peerはある変数をYと設定しておいて、自分の変数値を代入します。そして自分の変数値を全てのPeerに送信します。

他のPeerから受信した変数値を記録した後に多数決を行います。多数決で決めた変数値を全てのPeerに共有して統一させます。

お勧めの記事
メールアドレス

-
レイヤ2(L2)スイッチとレイヤ3(L3)スイッチ、ルーターとの違いは?
2022年06月20日
-
電源コードの種類・規格について:国内規格と海外規格の選定
2022年06月09日
-
ハブ、スイッチとルーターの違いをわかりやすく解説
2024年08月29日
-
T568AとT568B:ストレートケーブルとクロスケーブルの違い
2022年06月30日
-
PoEインジェクター(パワーインジェクター)とは?
2022年06月24日