(57)【要約】  システムが、マルチクライアントネットワークサービスを複数の既存のユーザに提供するように構成された少なくとも１つのサーバを含む。サーバが、新しいユーザからマルチクライアントネットワークサービスに参加するための要求を受信したとき、サーバは、各々の新しいユーザに対してタイムスタンプを発行し、要求又はタイムスタンプに基づいて負荷メトリックを取得し、負荷メトリックを収集して、ある時間にわたりマルチクライアントネットワークサービスの需要を特徴づける履歴データを取得し得る。さらに、履歴データに基づき、サーバは、マルチクライアントネットワークサービスの将来負荷需要を予測し、将来負荷需要に基づいて複数の新しいユーザのうち少なくとも１によりマルチクライアントネットワークサービスに参加することを選択的に可能にすることができる。
2020504388.tif 000002
【特許請求の範囲】
【請求項１】
マルチクライアントネットワークサービスを提供するシステムであって、
サーバであり、該サーバは少なくとも１つのプロセッサと、コンピュータ実行可能プログラム命令を含む非一時的コンピュータ読取可能媒体と、該サーバを複数のリモートユーザデバイスに動作上接続するように構成されたネットワークインターフェースとを含む、サーバと、
データストレージであり、少なくともデジタルメディアコンテンツを記憶する、データストレージと、
を含み、
前記コンピュータ実行可能プログラム命令が前記少なくとも１つのプロセッサにより実行されたとき、前記少なくとも１つのプロセッサは、
少なくとも１つのデータネットワークを通じて前記マルチクライアントネットワークサービスを複数の既存のユーザに提供し、前記マルチクライアントネットワークサービスは前記デジタルメディアコンテンツを含み、
前記既存のユーザが前記マルチクライアントネットワークサービスにアクセスする方法と同様に複数の新しいユーザが前記マルチクライアントネットワークサービスにアクセスできるように、前記新しいユーザから前記マルチクライアントネットワークサービスに参加するための複数の要求を受信し、
前記マルチクライアントネットワークサービスに参加するための前記複数の要求から負荷メトリックを取得し、前記負荷メトリックは前記マルチクライアントネットワークサービスへの少なくともトラフィック負荷を特徴づけ、
前記負荷メトリックを収集して、ある時間にわたる前記マルチクライアントネットワークサービスの需要を特徴づける履歴データを取得し、
前記履歴データに基づいて前記マルチクライアントネットワークサービスの将来負荷需要を予測し、
前記将来負荷需要に基づいて前記複数の新しいユーザのうち少なくとも１により前記マルチクライアントネットワークサービスに参加することを選択的に可能にする、
システム。
【請求項２】
前記コンピュータ実行可能プログラム命令が前記少なくとも１つのプロセッサにより実行されたとき、前記少なくとも１つのプロセッサはさらに、
前記負荷メトリックを閾負荷値と繰り返し比較して前記負荷メトリックが前記閾負荷値を満たし又は上回るかを決定し、
前記負荷メトリックが前記閾負荷値を満たさず又は下回ると決定されたとき、前記複数の新しいユーザのうち少なくとも１により前記マルチクライアントネットワークサービスに参加することを可能にし、
前記負荷メトリックが前記閾負荷値を満たし又は上回ると決定されたとき、前記複数の新しいユーザのうち少なくとも１に対する待機メッセージの配信をもたらし、前記閾負荷値を満たさない又は上回らないように前記負荷メトリックが変わるまで前記複数の新しいユーザのうち前記少なくとも１を待機モードに保つことをもたらす、
請求項１に記載のシステム。
【請求項３】
マルチクライアントネットワークサービスを提供する方法であって、
サーバにより、少なくとも１つのデータネットワークを通じて前記マルチクライアントネットワークサービスを複数の既存のユーザに提供するステップと、
前記既存のユーザが前記マルチクライアントネットワークサービスにアクセスする方法と同様に複数の新しいユーザが前記マルチクライアントネットワークサービスにアクセスできるように、前記サーバにより、前記新しいユーザから前記マルチクライアントネットワークサービスに参加するための複数の要求を受信するステップと、
前記サーバにより、前記マルチクライアントネットワークサービスに参加するための前記複数の要求から負荷メトリックを取得するステップであり、前記負荷メトリックは前記マルチクライアントネットワークサービスへの少なくともトラフィック負荷を特徴づける、ステップと、
前記サーバにより、前記負荷メトリックを収集して、ある時間にわたる前記マルチクライアントネットワークサービスの需要を特徴づける履歴データを取得するステップと、
前記サーバにより、前記履歴データに基づいて前記マルチクライアントネットワークサービスの将来負荷需要を予測するステップと、
前記サーバにより、前記将来負荷需要に基づいて前記複数の新しいユーザのうち少なくとも１により前記マルチクライアントネットワークサービスに参加することを選択的に可能にするステップと、
を含む方法。
【請求項４】
前記マルチクライアントネットワークサービスは、ネットワークマルチプレーヤゲーム、オンラインマルチプレーヤゲーム、及び仮想現実マルチプレーヤゲーム、のうち１つ以上を含む、請求項３に記載の方法。
【請求項５】
前記マルチクライアントネットワークサービスはさらに、ビデオオンデマンドサービス、テレビジョンブロードキャスティングサービス、及びマルチユーザオンラインエンターテインメントサービス、のうち１つ以上を含む、請求項３に記載の方法。
【請求項６】
前記サーバにより、前記負荷メトリックを閾負荷値と繰り返し比較して所与の時間に前記負荷メトリックが前記閾負荷値を満たし又は上回るかを決定するステップと、
前記負荷メトリックが前記閾負荷値を満たさず又は下回ると決定されたとき、前記サーバにより、前記複数の新しいユーザのうち少なくとも１により前記マルチクライアントネットワークサービスに参加することを可能にするステップと、
前記負荷メトリックが前記閾負荷値を満たし又は上回ると決定されたとき、前記サーバにより、前記複数の新しいユーザのうち少なくとも１に対する待機メッセージの配信をもたらし、前記閾負荷値を満たさない又は上回らないように前記負荷メトリックが変わるまで前記複数の新しいユーザのうち前記少なくとも１を待機モードに保つことをもたらすステップと、
をさらに含む請求項３に記載の方法。
【請求項７】
前記サーバにより、前記複数の新しいユーザから前記マルチクライアントネットワークサービスに参加するための前記要求を受信すると、前記新しいユーザの各々に対するタイムスタンプを個々に及び独立して発行するステップ、
をさらに含む請求項３に記載の方法。
【請求項８】
前記負荷メトリックは、前記複数の新しいユーザに関連づけられた前記タイムスタンプに少なくとも基づいて算出される、請求項７に記載の方法。
【請求項９】
前記サーバにより、前記マルチクライアントネットワークサービスの現在負荷キャパシティを繰り返し決定するステップ、
をさらに含み、
前記負荷メトリックは、前記複数の新しいユーザに関連づけられた前記タイムスタンプと前記マルチクライアントネットワークサービスの前記現在負荷キャパシティとに少なくとも基づいて算出される、
請求項７に記載の方法。
【請求項１０】
前記サーバにより、前記マルチクライアントネットワークサービスの現在負荷キャパシティを繰り返し決定するステップと、
前記サーバにより、前記マルチクライアントネットワークサービスの前記現在負荷キャパシティの変化に基づいて前記閾負荷値を動的に更新するステップと、
をさらに含む請求項７に記載の方法。
【請求項１１】
前記サーバにより、前記負荷メトリックと前記新しいユーザの各々の前記タイムスタンプとに基づいて前記新しいユーザの各々について推定待機時間を算出するステップであり、前記待機メッセージの各々は、前記新しいユーザの各々について個々に算出された前記推定待機時間を含む、ステップと、
前記負荷メトリックが前記閾負荷値を満たし又は上回ると決定されたとき、前記サーバにより、各々の新しいユーザの前記タイムスタンプが第２の閾値を上回るか又は下回るかを決定するステップと、
特定の新しいユーザの前記タイムスタンプが前記第２の閾値を上回ると決定された場合、前記サーバにより、前記特定の新しいユーザを前記待機モードに保つことをもたらすステップと、
特定の新しいユーザの前記タイムスタンプが前記第２の閾値を下回ると決定された場合、前記サーバにより、前記特定の新しいユーザにより前記マルチクライアントネットワークサービスに参加することを可能にするステップと、
をさらに含む請求項７に記載の方法。
【請求項１２】
前記複数の新しいユーザのうち前記少なくとも１により前記マルチクライアントネットワークサービスに参加することを可能にするステップは先着順ポリシーに基づく、請求項３に記載の方法。
【請求項１３】
前記負荷メトリックが前記閾負荷値を満たし又は上回ると決定されたとき、１つ以上のさらなるネットワークリソースを動作上アクティブ化して前記マルチクライアントネットワークサービスのキャパシティを増加させるステップ、
をさらに含む請求項３に記載の方法。
【請求項１４】
前記１つ以上のさらなるネットワークリソースがアクティブ化されたとき、前記サーバにより、前記複数の新しいユーザのうち前記少なくとも１により前記マルチクライアントネットワークサービスに参加することを可能にするステップ、
をさらに含む請求項１３に記載の方法。
【請求項１５】
前記負荷メトリックが前記閾負荷値を満たし又は上回ると決定されたとき、前記複数の既存のユーザは中断又はサービス品質の低下なく前記マルチクライアントネットワークサービスを享受する、請求項３に記載の方法。
【請求項１６】
前記サーバにより、前記新しいユーザの各々についてリモートユーザデバイスの型を決定するステップと、
前記負荷メトリックが前記閾負荷値を満たし又は上回ると決定されたとき、前記サーバにより、前記複数の新しいユーザのうち少なくとも１により前記マルチクライアントネットワークサービスに参加することを選択的に可能にするステップであり、前記複数の新しいユーザのうち前記少なくとも１の前記リモートユーザデバイスの型は、所定のユーザデバイス型のうちの１つである、ステップと、
前記負荷メトリックが前記閾負荷値を満たし又は上回ると決定されたとき、前記サーバにより、前記複数の新しいユーザのうち他のユーザに対する前記待機メッセージの配信をもたらし、前記閾負荷値を満たさない又は上回らないように前記負荷メトリックが変わるまで前記複数の新しいユーザのうち他のユーザを前記待機モードに保つステップであり、前記複数の新しいユーザのうち前記他のユーザは、前記所定のユーザデバイス型のうち少なくとも１つに関連づけられない、ステップと、
をさらに含む請求項３に記載の方法。
【請求項１７】
前記履歴データに基づいて前記マルチクライアントネットワークサービスの前記将来負荷需要を予測するステップは、前記履歴データに機械学習アルゴリズムを適用するステップを含む、請求項３に記載の方法。
【請求項１８】
前記履歴データに基づいて前記マルチクライアントネットワークサービスの前記将来負荷需要を予測するステップは、前記サーバにより、前記履歴データに基づいて前記負荷需要の加速度又は減速度を検出するステップを含む、請求項３に記載の方法。
【請求項１９】
前記履歴データに基づいて前記マルチクライアントネットワークサービスの前記将来負荷需要を予測するステップは、前記サーバにより、前記履歴データの中の１つ以上の所定のデータパターンを認識するステップを含む、請求項３に記載の方法。
【請求項２０】
１つ以上のプロセッサにより実行されたときに前記１つ以上のプロセッサに方法を実現させる命令を記憶させた非一時的プロセッサ読取可能媒体であって、前記方法は、
少なくとも１つのデータネットワークを通じてマルチクライアントネットワークサービスを複数の既存のユーザに提供するステップと、
前記既存のユーザが前記マルチクライアントネットワークサービスにアクセスする方法と同様に複数の新しいユーザが前記マルチクライアントネットワークサービスにアクセスできるように、前記新しいユーザから前記マルチクライアントネットワークサービスに参加するための複数の要求を受信するステップと、
前記マルチクライアントネットワークサービスに参加するための前記複数の要求から負荷メトリックを取得するステップであり、前記負荷メトリックは前記マルチクライアントネットワークサービスへの少なくともトラフィック負荷を特徴づける、ステップと、
前記負荷メトリックを収集して、ある時間にわたる前記マルチクライアントネットワークサービスの需要を特徴づける履歴データを取得するステップと、
前記履歴データに基づいて前記マルチクライアントネットワークサービスの将来負荷需要を予測するステップと、
前記将来負荷需要に基づいて前記複数の新しいユーザのうち少なくとも１により前記マルチクライアントネットワークサービスに参加することを選択的に可能にするステップと、
を含む、媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、マルチプレーヤオンラインゲーム又はビデオオンデマンドサービスなどのマルチクライアントネットワークサービスに一般に関する。より詳細には、本開示は、マルチクライアントネットワークサービスを提供するシステム及び方法に関し、増加したデータトラフィックレイテンシの検出に応じて新しいユーザセッションを遅延させることができる。本開示のシステム及び方法は、例えば、オンラインゲーム環境、デジタルコンテンツ配信環境、及びさらに非エンターテインメント環境に適用可能であり得る。
【背景技術】
【０００２】
近年、マルチプレーヤオンラインゲーム、オンラインエンターテインメントサービス、及びビデオオンデマンドサービスなどのマルチクライアントネットワークサービスが一般的かつ人気になっている。従来、マルチクライアントネットワークサービスは１つ以上のサーバ上で実現され、該サーバは複数のリモートに位置するユーザにサービスする。マルチクライアントネットワークサービスでの既存の技術的問題の１つは、即時のスケーリングが必要とされるときのその不十分な性能を含む。例えば、或る量の既存のユーザに既に提供されている同じマルチクライアントネットワークサービスにアクセスしようとする新しいユーザの数が急速に増加したとき、マルチクライアントネットワークサービスを扱うサーバは、新しいユーザをマルチクライアントネットワークサービスに加えるのに迅速に応答しない可能性がある。これらイベントは典型的に、サービス速度を低下させ、新しいユーザ及び既存のユーザを含む全ユーザについてマルチクライアントネットワークサービスの体験及び享受を不十分にすることをもたらす。
【０００３】
この問題の１つの特定の例が「ゲームラッシュ」として知られており、これは、特定のマルチプレーヤオンラインゲームが大きい新プレーヤのグループの関心事になり、該プレーヤが実質的に同じ時間にゲームに加わろうとしたとき、発生することがある。したがって、新しいユーザによる参加要求の増加により、マルチプレーヤオンラインゲームを扱うサーバ及びネットワークインフラストラクチャへのデータ負荷ストレスもまた増加する。或る閾を超えてストレスが増加すると、新しい及び既存のユーザは、より大きいレイテンシ、より遅い速度、又は全体的に低下した体験を体験し始める。これは、新しい及び既存のユーザにマルチプレーヤオンラインゲームに対して再起動又は再接続させる可能性があり、これは、サーバ及びインフラストラクチャ上のデータトラフィックを徐々に増加させ、それにより、サーバへのさらに大きいストレスとサービスのさらなるスローダウンとをもたらす。したがって、同じマルチクライアントネットワークサービスにアクセス又は参加しようとする新しいユーザの急増に対してマルチクライアントネットワークサービスの性能を向上及び安定させる必要が依然としてある。
【発明の概要】
【０００４】
本セクションは、以下で詳細な説明のセクションでさらに説明される概念のうち選択されたものを簡素化された形式で導入するために提供される。本発明の概要は、請求される対象事項の重要な特徴又は必須の特徴を識別することは意図されず、請求される対象事項の範囲を決定する助けとして使用されることも意図されない。
【０００５】
本開示の１つの態様において、エンターテインメント又は非エンターテインメント性のマルチクライアントネットワークサービスを提供するシステムが提供される。システムはサーバを含み、該サーバは少なくとも１つのプロセッサと、コンピュータ実行可能プログラム命令を含む非一時的コンピュータ読取可能媒体と、該サーバを複数のリモートユーザデバイスに動作上（operatively）接続するように構成されたネットワークインターフェースとを含む。システムは、少なくともデジタルメディアコンテンツを記憶するように構成された少なくとも１つのデータストレージをさらに含むことができる。コンピュータ実行可能プログラム命令が少なくとも１つのプロセッサにより実行されたとき、少なくとも１つのプロセッサは、少なくとも１つのデータネットワークを通じてマルチクライアントネットワークサービスを複数の既存のユーザに提供し、既存のユーザがマルチクライアントネットワークサービスにアクセスする方法と同様に複数の新しいユーザがマルチクライアントネットワークサービスにアクセスできるように、該新しいユーザからマルチクライアントネットワークサービスに参加するための複数の要求を受信し、マルチクライアントネットワークサービスに参加するための複数の要求から負荷メトリックを取得し、負荷メトリックはマルチクライアントネットワークサービスへの少なくともトラフィック負荷を特徴づける。
【０００６】
さらに、少なくとも１つのプロセッサは、負荷メトリックを収集して、例えば、ある時間にわたるマルチクライアントネットワークサービスの需要を特徴づける履歴データを取得し、履歴データに基づいてマルチクライアントネットワークサービスの将来負荷需要を予測し、将来負荷需要に基づいて複数の新しいユーザのうち少なくとも１によりマルチクライアントネットワークサービスに参加することを選択的に可能にする。
【０００７】
本開示の別の態様において、マルチクライアントネットワークサービスを提供する方法が提供される。方法は、コンピュータ又はサーバにより実現され、以下の動作、すなわち、少なくとも１つのデータネットワークを通じてマルチクライアントネットワークサービスを複数の既存のユーザに提供するステップと、既存のユーザがマルチクライアントネットワークサービスにアクセスする方法と同様に複数の新しいユーザがマルチクライアントネットワークサービスにアクセスできるように、該新しいユーザからマルチクライアントネットワークサービスに参加するための複数の要求を受信するステップと、マルチクライアントネットワークサービスに参加するための複数の要求から負荷メトリックを取得するステップであり、負荷メトリックはマルチクライアントネットワークサービスへの少なくともトラフィック負荷を特徴づける、ステップとを含んでよい。方法は、負荷メトリック収集して、ある時間にわたるマルチクライアントネットワークサービスの需要を特徴づける履歴データを取得するステップと、履歴データに基づいてマルチクライアントネットワークサービスの将来負荷需要を予測するステップと、将来負荷需要に基づいて複数の新しいユーザのうち少なくとも１によりマルチクライアントネットワークサービスに参加することを選択的に可能にするステップとをさらに含む。
【０００８】
開示のさらに別の態様において、１つ以上のプロセッサにより実行されたときに１つ以上のプロセッサに、マルチクライアントネットワークサービスを提供する上記で概説された方法を実現させる命令を記憶させた非一時的プロセッサ読取可能媒体が提供される。
【０００９】
例のさらなる対象、利点、及び新規の特徴が、続く説明において部分的に明記され、以下の説明及び添付図面を考察すると当業者に部分的に明らかになり、あるいは例の生産又は稼働により学習され得る。概念の対象及び利点は、別記の特許請求の範囲において具体的に指し示される方法論、手段、及び組み合わせを用いて実現され、達成され得る。
【図面の簡単な説明】
【００１０】
実施形態は、添付図面の図において限定ではなく例として例示され、同様の参照は類似の要素を示す。
【図１】マルチクライアントネットワークサービスを提供するシステムを示すブロック図を示す。
【図２】マルチクライアントネットワークサービスを提供する方法の処理フロー図を示す。
【図３】マルチクライアントネットワークサービスを提供する別の方法の処理フロー図を示す。
【図４】マルチクライアントネットワークサービスを提供する方法を実現するために使用できる一例示的なコンピュータシステムを示す。
【００１１】
対応する参照文字は、図面のいくつかの図を通して対応するコンポーネントを示す。図内の要素が簡潔さ及び明りょうさのため例示されており、必ずしも縮尺どおり描かれていないことを当業者は十分理解するであろう。例えば、図内の要素のうちいくつかの寸法が、本開示の様々な実施形態の理解を向上させるのに役立つように、他の要素に対して誇張されていることがある。さらに、商業的に実現可能な実施形態において有用又は必要である一般的だが十分理解される要素は、本開示のこれら様々な実施形態のより分かりやすい図を容易にするために、しばしば表されない。
【発明を実施するための形態】
【００１２】
本開示は、複数のリモートに位置するユーザに利用可能なマルチプレーヤオンラインゲーム、ビデオオンデマンドサービス、又は同様のオンライン若しくはネットワークベースのエンターテインメントサービスなどのマルチクライアントネットワークサービスを提供するシステム及び方法に一般に関する。本開示の原理は、非エンターテインメントシステムにも適用可能である。本明細書に開示される実施形態の態様は、（「ゲームラッシュ」イベントの間などに）マルチクライアントネットワークサービスに参加しようとする、セッションに対して新しい（new-to-session）ユーザの数の急増に対して、少なくともいくつかの従来技術の欠点を克服し、かつ／あるいはマルチクライアントネットワークサービスの性能を低下させる技術的問題を解決する。したがって、本明細書で開示される実施形態の少なくともいくつかの態様は、同じマルチクライアントネットワークサービスにおける需要の増加に対してマルチクライアントネットワークサービスを提供するシステムの安定性及び性能を向上させることなどの或る技術的効果を提供することができ、それにより、マルチクライアントネットワークサービスに対する既存のユーザは、マルチクライアントネットワークサービスの享受において有意なレイテンシ又は低下を体験しない。本開示の原理は、そのキャパシティを動的に増大できるシステム（例えば、スケーラブルなシステム）及び静的なキャパシティを有するシステムの双方で利用できる。
【００１３】
本開示の様々な実施形態によれば、システムがクライアント（ユーザ）から特定のマルチクライアントネットワークサービスについて開始、アクセス、又は参加するための要求を受信したとき、システムはすべてのクライアント（ユーザ）に対してタイムスタンプ（又は他のしるし（indicia））を発行する。クライアント（ユーザ）がマルチクライアントネットワークサービスについて開始、アクセス、又は参加することができるとき、クライアントは「既存のユーザ」になる。さらに、システムが新しいユーザからマルチクライアントネットワークサービスに参加するための要求を受信し、このマルチクライアントネットワークサービスが既に複数の既存のユーザにより参加されているとき、システムは要求又は新しいユーザ又は新しいユーザのユーザデバイスに対してタイムスタンプ又は他のしるしを発行することができる。複数の新しいユーザに関連づけられたタイムスタンプは、システムへの「ストレス」のレベル、レイテンシ、トラフィックボリューム、及び／又は任意の他の同様の負荷メトリックを決定するために、システムより監視され、処理されてよい。この負荷メトリックは、それが或る所定の又は動的に決定される閾値を上回っているかを決定するために、リアルタイムで監視されてよい。負荷メトリックが閾値を上回っている場合、システムは、既存のユーザによるマルチクライアントネットワークサービスの体験及び享受を低下させないように、新しいユーザがマルチクライアントネットワークサービスに参加することを許可しなくてよい。新しいユーザは、システムの現在負荷キャパシティが拡大されるか又はシステムが既存のユーザへの影響なく新しいユーザを加えることができるよう適切にスケーリングされるまで、或る期間待機するよう求められてよい。したがって、新しいユーザは、先着順（first-come-first-served）ポリシーに基づいて、例えば、新しいユーザに割り当てられた対応するタイムスタンプ又は他のしるし若しくは識別子（ＩＤ）に基づいて、マルチクライアントネットワークサービスに加えられてよい。
【００１４】
別の実施形態において、システムは別の負荷閾を有し、それにより、負荷が負荷閾を下回るとき要求はタイムスタンプを発行されない。こうした一実施形態において、システムに対して負荷がほとんどない場合、タイムスタンプを発行するオーバヘッドは回避される。負荷が増加するとき、新しい閾は超えられることになり、ユーザからの要求はタイムスタンプを受けることになる。負荷がさらに増加するとき、負荷閾が超えられ、しかし前のユーザからの要求はタイムスタンプを有し、「既存のユーザ」として認識され、待機させられないことになる。
【００１５】
或る実装において、システムは、新しいユーザのパーソナルユーザデバイス又はマシンの型（make）、モデル、タイプ、又は任意の他の特性を決定してもよく、それにより、システムは、所定の型、モデル、タイプ、又は他の特性のパーソナルユーザデバイス又はマシンを操作するユーザのみ加えることを優先させることができる。例えば、特定のブランドのゲームデバイスを操作する新しいユーザは、他のデバイスを操作する他の新しいユーザが同じマルチクライアントネットワークサービスに参加できる前に、マルチクライアントネットワークサービスに参加することを許可されてよい。
【００１６】
別の実装において、到来する要求の処置に関する決定が、要求が来た元のデバイスというよりもユーザに基づくことができる。例えば、「ゴールドレベル」アカウントを有するユーザは、どのデバイスが使用されているかにかかわらず、優先権を与えられてよい。アカウントレベルは、ユーザ要求に含まれるデータに基づいてシステムにより決定されてよい。
【００１７】
別の実装において、ユーザ要求に応答して推定待機時間が提供されたとき、ユーザデバイスは推定待機時間をユーザに対して表示することができる。
【００１８】
別の実装において、推定待機時間が算出されたとき、要求に対する応答は、ユーザ（クライアント）がユーザ要求を再試行するまでの期間を制御することに関する情報を提供することができる。この遅延は、システムへの負荷が増加するとき増加することができ、システムに到来する再試行要求の数を低減させ、これは、システムへのストレスをその軽減が最も必要とされるときに低減させる。
【００１９】
さらに別の実装において、サーバは、ＩＤを用いてなどで発行された特定のタイムスタンプを経過を追う（keep  track  of）ことができ、それにより、サーバは、タイムスタンプを提示するクライアントが要求を過度に頻繁に再試行するなど無作法にふるまう（misbehaves）場合、タイムスタンプを無効にしてよい。
【００２０】
さらなる実装において、発行されたタイムスタンプは満了時間を有してよい。特定の既存のユーザが長い不在の後にタイムスタンプと共に復帰した場合、そのタイムスタンプは満了されることになり、該ユーザは、「既存のユーザ」でなく「新しいユーザ」として処置されることになり、新しいタイムスタンプを発行されることになり、同じマルチクライアントネットワークサービスに参加する前に待機をさせられてよい。タイムスタンプの満了は、ユーザがタイムスタンプと共にさらなる要求を行うとき、延長されてよい。これは、更新されたタイムスタンプをユーザに返すことにより、又はサーバ側に記憶された満了を調整することにより行われてよい。タイムスタンプ満了がどれほど延長できるかに対して制限が存在してよい。
【００２１】
いくつかのさらなる実装において、ユーザ（クライアント又はユーザデバイス）に提供されるタイムスタンプは、暗号化、ハッシュ、ソルト（salting）、チェックサム、又はタイムスタンプをユーザ（例えば、インターネットプロトコル（ＩＰ）アドレス、デバイスＩＤ、アカウントＩＤなど）に関連づけることを適用することにより、安全にされてよい。
【００２２】
またさらなる実装において、システムは、負荷メトリックをある時間にわたり集約して履歴データを生成するように構成されてよい。履歴データは、負荷又はトラフィック予測を行うために、システムにより解析されてよい。予測は、あり得る新しいユーザの急増に前もって対処するために閾値を変更することができる。換言すると、予測は、所与の時間に新しいユーザをマルチクライアントネットワークサービスに加えるかどうかを決定することに使用されてよい。ゆえに、システムは、「ゲームラッシュ」イベントなどの或るイベントの早期検出を可能にし、これらイベントに前もって対処する。予測は、人工知能方法、機械学習方法、統計的方法、ヒューリスティックな方法、データパターン認識方法、曲線比較方法、及び／又はマルチクライアントネットワークサービスの使用に関連づけられた負荷需要又は別の特性の加速度又は減速度を決定する方法を使用して、履歴データに基づいて行われてよい。
【００２３】
或るさらなる実装において、観察するよう確立された１つより多くの閾値が存在してよい。例えば、システムへの所定量の負荷に対応する第１の閾値が存在してよい。負荷メトリック（例えば、本明細書で説明されるように、タイムスタンプに基づくシステムへの「ストレス」のレベル、レイテンシ、トラフィックボリューム、又は他のメトリック）が第１の閾値を上回ったとき、システムは、既存のユーザによるマルチクライアントネットワークサービスの体験及び享受を低下させないように、新しいユーザがマルチクライアントネットワークサービスに参加することを許可しなくてよい。新しいユーザは、システムの現在負荷キャパシティが拡大されるか又はシステムが既存のユーザに対してシームレスに新しいユーザを加えることができるよう適切にスケーリングされるまで、或る期間待機するよう求められてよい。第１の閾値は、システムのキャパシティに基づいて設定されてよい。第１の閾値は、固定され、あるいは１つ以上の基準に基づいてリアルタイムで自動的に更新されてよい。システムは、第１の閾値と異なる第２の閾値をさらに維持することができる。第２の閾値は典型的に、第１の閾値が「トリガされた」とき（すなわち、負荷メトリックが第１の閾値に達したとき）、作用し始める（comes  into  play）。第２の閾値は、タイムスタンプについての遮断（cut-off）時間とすることができる。したがって、第２の閾値（すなわち、遮断時間）の前に発行されたタイムスタンプを有するユーザ要求の生成をもたらしたユーザは、マルチクライアントネットワークサービスに参加することを許可される。対照的に、第２の閾値（すなわち、遮断時間）の後に発行されたタイムスタンプを有するユーザ要求の生成をもたらしたユーザは、少なくとも待機期間の間、マルチクライアントネットワークサービスに参加することを許可されない。第２の閾値は、予め決定され、あるいはシステムへの負荷に基づいて絶えず更新されてよい。
【００２４】
いくつかの実装において、マルチクライアントネットワークサービス又はシステムは、それが発行するタイムスタンプの経過を追うことができる。例えば、システムはこの情報を、第２の閾値を調整するとき第２の閾値をどれほど移動するかを決定することに使用できる。
【００２５】
マルチクライアントネットワークサービスはエンターテインメントサービス（例えば、コンテンツ配信システム、オンラインゲーム等）及び非エンターテインメントサービス（例えば、オンライン株式相場及び取引システム）の双方で利用できることに言及すべきである。本開示の実施形態は、エンターテインメントサービス及び非エンターテインメントサービスの双方に適用可能である。しかしながら、例を提供するために、開示はほぼオンラインゲーミングを参照する。
【００２６】
或る実施形態において、本明細書で説明されるマルチクライアントネットワークサービスを提供するシステムは、固定のキャパシティのものであってよい。これらの実施形態において、システムは、新しいユーザを待機させて、システムキャパシティが超えられず既存のユーザがシステムを正常に使用可能であることを確保するように設計される。したがって、本明細書で説明される原理は、システムが新しいユーザによりもたらされるデータトラフィックの急上昇（spike）を体験する状況に有用であり得る。新しい及び既存のユーザのすべてに対してサービスを提供する試みは、システムがそのキャパシティを超えることを結果としてもたらすことになる。こうした急上昇は、例えば、タイマにより作り出されるトラフィックによりもたらされる可能性がある。
【００２７】
他の実装において、本明細書で説明されるマルチクライアントネットワークサービスを提供するシステムは、増加した負荷（トラフィック）に応じてシステムキャパシティを動的に増加させる能力を所有することができる。これは、例えば、さらなるサーバがシステム要求を扱うことを許可にすることにより達成できる。システムがキャパシティの増加を開始すると、新しいキャパシティが利用可能になるのにいくらかの時間がかかる可能性がある。トラフィックにおける突然の急上昇は、システムがキャパシティの増加を開始する時間とキャパシティの増加が利用可能になる時間との間に、システムへの要求数がこれら要求を扱うためのシステムのキャパシティを超えることをもたらす可能性がある。既存のユーザが悪い影響を受けないことを確保するために、トラフィックがキャパシティを超えたとき、新しいユーザ要求は待機するよう強制されてよい。さらなるキャパシティが利用可能になったとき、待機するよう強制された新しいセッション要求は、マルチクライアントネットワークサービスへのアクセスを取得することを許可されてよい。トラフィックの増加がキャパシティの増加より相当である場合、新しい既存ユーザのセットが新しいキャパシティを超えないことを確保するために、待機するよう強制された新しいユーザのうちいくらかのみがマルチクライアントネットワークサービスにアクセスすることを許可されてよい。
【００２８】
実施形態の以下の詳細な説明は添付図面に対する参照を含み、該添付図面は詳細な説明の一部を形成する。本セクションにおいて説明される手法は特許請求の範囲に対して従来技術でなく、本セクションに含まれることにより従来技術であると認められない。本明細書を通しての「１つの実施形態」、「一実施形態」、「いくつかの実施形態」、「いくつかの実装」、又は同様の言語に対する参照は、一例示的な実装と関連して説明される特定の特徴、構造、又は特性が本開示の少なくとも１つの実施形態に含まれることを意味する。ゆえに、本明細書を通してのフレーズ「１つの実施形態において」、「一実施形態において」、「いくつかの実施形態において」、及び同様の言語の出現はすべて、同じ実施形態を参照し得るが、必ずではない。
【００２９】
さらに、実施形態の説明される特徴、構造、又は特性は、１つ以上の実装において任意の適切な方法で組み合わせられてよい。以下の説明において、実施形態の完全な理解を提供するために、プログラミング、ソフトウェアモジュール、ユーザ選択、ネットワークトランザクション、データベースクエリ、データベース構造、ハードウェアモジュール、ハードウェア回路、ハードウェアチップ等の例などの多数の具体的な詳細が提供される。しかしながら、実施形態は具体的な詳細のうち１つ以上なしに、又は他の方法、コンポーネント、材料などを用いて実現できることを当業者は認識するであろう。他の例において、周知の構造、材料、又は動作は、開示の態様を分かりにくくすることを回避するために、詳細に図示又は説明されない。
【００３０】
次に、本開示の実施形態の態様が、簡潔さのため集合的に「要素」と呼ばれるブロック、コンポーネント、回路、ステップ、動作、処理、アルゴリズムなどを示す添付図面を参照して提示される。これらの要素は、電子ハードウェア、コンピュータソフトウェア、又はこれらの任意の組み合わせを使用して実現されてよい。こうした要素がハードウェアとして実現されるか又はソフトウェアとして実現されるかは、全体システムに課される特定のアプリケーション及び設計制約に依存する。例として、要素、又は要素のうち任意の部分、又は要素の任意の組み合わせが、１つ以上のプロセッサを含む「処理システム」で実現されてよい。プロセッサの例は、マイクロプロセッサ、マイクロコントローラ、中央処理ユニット（ＣＰＵ）、デジタル信号プロセッサ（ＤＳＰ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、プログラマブルロジックデバイス（ＰＬＤ）、状態機械、ゲート付きロジック、ディスクリートハードウェア回路、及び本開示を通して説明される様々な機能を実行するように構成された他の適切なハードウェアを含む。処理システム内の１つ以上のプロセッサが、ソフトウェア、ファームウェア、又はミドルウェア（集合的に「ソフトウェア」と呼ばれる）を実行してよい。用語「ソフトウェア」は、ソフトウェアと呼ばれるか、ファームウェアと呼ばれるか、ミドルウェアと呼ばれるか、マイクロコードと呼ばれるか、ハードウェア記述言語と呼ばれるか、又はその他の方法で呼ばれるかにかかわらず、プロセッサ実行可能命令、命令セット、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアコンポーネント、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、プロシージャ、関数などを意味するよう広く解釈されるものとする。
【００３１】
したがって、１つ以上の実施形態において、本明細書で説明される機能は、ハードウェア、ソフトウェア、又はこれらの任意の組み合わせで実現されてよい。ソフトウェアにおいて実現される場合、機能は、非一時的コンピュータ読取可能媒体上の１つ以上の命令又はコードに記憶され、あるいは該命令又はコードとしてエンコードされてよい。コンピュータ読取可能媒体はコンピュータ記憶媒体を含む。記憶媒体は、コンピュータによりアクセスできる任意の利用可能な媒体であってよい。限定でなく例として、こうしたコンピュータ読取可能媒体は、ランダムアクセスメモリ（ＲＡＭ）、読取専用メモリ（ＲＯＭ）、電気的消去可能プログラマブルＲＯＭ（ＥＥＰＲＯＭ）、コンパクトディスクＲＯＭ（ＣＤ‐ＲＯＭ）若しくは他の光学ディスクストレージ、磁気ディスクストレージ、ソリッドステートメモリ、若しくは任意の他のデータ記憶デバイス、前述のタイプのコンピュータ読取可能媒体の組み合わせ、又はコンピュータによりアクセスできる命令又はデータ構造の形式のコンピュータ実行可能コードを記憶するために使用できる任意の他の媒体を含んでよい。
【００３２】
本特許文献を目的として、用語「又は」及び「及び」は、別段示されず、あるいはこれらの使用の文脈により別段明らかに意図されない限り、「及び／又は」を意味するものとする。用語「一の」（a）は、別段示されず、あるいは「１つ以上」の使用が明らかに不適切である場合でない限り、「１つ以上」を意味するものとする。用語「含む」、「含んでいる」、「含める」、「含めている」は交換可能であり、限定的であることは意図されない。例えば、用語「含めている」は、「含むがこれらに限られない」を意味するよう解釈されるものとする。
【００３３】
用語「デジタルコンテンツ」及び「デジタル製品」は、メディアコンテンツ、マルチメディアコンテンツ、エンターテインメントコンテンツ、ビデオ、ビデオオンデマンド、ペイパービュー（pay-per-view）ビデオ、オーディオ、ミュージック、テレビジョンショー、テレビジョンプログラム、映画、コンピュータゲーム、ビデオゲーム、インターネットゲーム、ネットワークゲーム、コンソールゲーム、仮想現実コンテンツ、電子ブック、及び電子マガジン、のうち１つ以上を意味するよう解釈されるものとする。本開示の実施形態によれば、デジタル製品は、購入のみの製品に関してよい。用語「デジタルコンテンツ」及び「デジタル製品」は交換可能に使用できる。
【００３４】
用語「マルチクライアントネットワークサービス」は、要求されたサービスに関するデータを複数のエンドユーザに通信するためにクライアントサーバアーキテクチャを使用する要求されたサービスの供給を意味するよう解釈されるものとする。マルチクライアントネットワークサービスのいくつかの例が、マルチプレーヤオンラインゲーム、マルチプレーヤネットワークゲーム、マルチプレーヤインターネットベースゲーム、マルチプレーヤ仮想現実ゲーム、インターネットベースメディアコンテンツブロードキャスティング、オンラインマルチメディアコンテンツブロードキャスティング、オンラインエンターテインメントコンテンツブロードキャスティング、ビデオオンデマンドサービス、ペイパービュービデオサービス、ウェブサービスなどを含む。マルチクライアントネットワークサービスは、エンドユーザにより、及び／又は自動化された処理により、すなわちエンドユーザデバイス、ネットワークデバイス、サーバなどのコンピュータマシンにより、開始され、あるいは呼び出されてよい。したがって、マルチクライアントネットワークサービスは、ユーザ又はマシンであり得る「クライアント」により開始され、あるいは呼び出されてよい。
【００３５】
用語「ユーザデバイス」、「リモートユーザデバイス」、及び「パーソナルデバイス」は、データ通信と共にデジタルデータを処理及び表示するように構成された任意の電子デバイスを意味するものとする。限定でなく例として、ユーザデバイスのいくつかの例は、モバイルデバイス、セルラーフォン、ユーザ装置（user  equipment）、端末、モバイルフォン、スマートフォン、インターネットフォン、タブレットコンピュータ、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、シンクライアント、パーソナルデジタルアシスタント、ミュージックプレーヤ、マルチメディアプレーヤ、ゲーミングデバイス、ゲームコンソール、ナビゲーションシステム、テレビジョンシステム、マルチメディアシステム、マルチメディアプレーヤ、ネットブック、ホームゲートウェイ、ブロードバンドゲートウェイ、ネットワーク電化製品、セットトップボックス、アクセスゲートウェイ、ネットワーキングスイッチ、エンターテインメントシステム、インフォテインメントシステム、及び車載コンピュータを含む。用語「ユーザデバイス」、「リモートユーザデバイス」、及び「パーソナルデバイス」は交換可能に使用できる。
【００３６】
用語「ユーザ」は、上記で定義されたユーザデバイスのエンドユーザを意味するよう解釈されるものとする。用語「既存のユーザ」は、マルチクライアントネットワークサービスに対して既にアクセスを受け取り又は参加したユーザデバイスのユーザを意味するよう解釈されるものとする。用語「新しいユーザ」は、マルチクライアントネットワークサービスに対してアクセス又は参加を要求したがまだマルチクライアントネットワークサービスに対してアクセスを提供されておらず又は参加していないユーザデバイスのユーザを意味するよう解釈されるものとする。用語「新しいユーザ」はさらに、「セッションに対して新しい」ユーザ（すなわち、マルチクライアントネットワークサービスの特定のセッションに対して新しいユーザ）を意味するよう解釈されてよい。
【００３７】
用語「負荷メトリック」は、例えば、少なくとも１つのマルチクライアントネットワークサービスを提供するシステム又はサーバへの負荷（例えば、トラフィック負荷）を特徴づけるパラメータを意味するよう解釈されるものとする。用語「負荷メトリック」はさらに、少なくとも１つのマルチクライアントネットワークサービスを提供するシステム又はサーバの利用を特徴づけるパラメータを意味するよう解釈されてよい。用語「負荷メトリック」はさらに、少なくとも１つのマルチクライアントネットワークサービスを提供するシステム又はサーバに関連づけられたデータトラフィックレイテンシを特徴づけるパラメータを意味するよう解釈されてよい。
【００３８】
次に図面を参照し、例示的な実施形態が説明される。図面は、理想的な例示的な実施形態の概略的例示である。ゆえに、本明細書で論じられる例示的な実施形態は、本明細書で提示される特定の例示に限定されると解釈されるべきでなく、むしろ、これら例示的な実施形態は逸脱を含み、本明細書で提示される例示と異なる可能性がある。
【００３９】
図１は、１つの例示的な実施形態による、マルチクライアントネットワークサービスを提供するシステム１００を示すブロック図を示す。図１は、マルチクライアントネットワークサービスに対するすべての呼び出し元がユーザデバイスであることを仮定する。マルチクライアントネットワークサービスは、デジタル製品又はデータを有して動作してよく、あるいは単にトークンを検証又は生成し、又は算出を行うことができる。システム１００はサーバ１０５を含むことができ、同様にサーバ１０５は、少なくとも１つのプロセッサと、データベース、少なくとも１つのデジタル製品、又はコンピュータ実現可能命令を記憶するコンピュータ読取可能媒体と、サーバがシステムの他の要素と通信することを可能にするネットワークインターフェースとを含むことができる。サーバ１０５は、デジタル製品をユーザに販売するためのオンラインデジタルコンテンツストア又はオンラインゲームストアなどのオンラインストアを維持し、提供してよい。サーバ１０５は、複数のユーザに対してビデオオンデマンドサービスを維持し、提供してよい。サーバ１０５は、ゲームサーバにさらに関し、複数のユーザに対してマルチプレーヤオンラインゲームを維持し、提供してよい。
【００４０】
サーバ１０５は、１つ以上の通信ネットワーク１１５を介して１つ以上のユーザデバイス１１０Ａ、１１０Ｂと動作上通信することができる。上記で説明されたように、ユーザデバイス１１０Ａ、１１０Ｂはユーザにより操作され、パーソナルコンピュータ、ゲームコンソール、モバイルデバイス、及び同様のデバイスを参照することができる。通信ネットワーク１１５は、例えばインターネット、イントラネット、ローカルエリアネットワーク（ＬＡＮ）、パーソナルエリアネットワーク（ＰＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、仮想プライベートネットワーク（ＶＰＮ）、セルラーフォンネットワーク（例えば、パケット交換通信ネットワーク、回線交換通信ネットワーク）、ブルートゥース（登録商標）無線、イーサネット（登録商標）ネットワーク、ＩＥＥＥ８０２．１１ベースの無線周波数ネットワーク、ＩＰ通信ネットワーク、若しくはデータパケットを搬送するために物理層、リンク層能力、若しくはネットワーク層を利用する任意の他のデータ通信ネットワーク、又は上記で列挙されたデータネットワークの任意の組み合わせを含む、任意の有線、無線、又は光ネットワークを参照することができる。
【００４１】
ユーザデバイス１１０Ａ、１１０Ｂは、異なる型、モデル、又はタイプのものとすることができる。例えば、ユーザデバイス１１０Ａが存在してよく、これは所定の型、モデル、又はタイプのユーザデバイスを参照し、ユーザデバイス１１０Ｂが存在してよく、これは該所定の型、モデル、又はタイプのユーザデバイスを参照しない。あるいは、ユーザデバイス１１０Ａは第１の所定の型、モデル、又はタイプのユーザデバイスを参照し、一方、ユーザデバイス１１０Ｂは第２の所定の型、モデル、又はタイプのユーザデバイスを参照する。例えば、ユーザデバイス１１０Ａは、プレイステーション（登録商標）ＴＭデバイス、又はソニー（登録商標）ＴＭ製デバイスとすることができる。
【００４２】
いくつかの実装において、サーバ１０５は、ユーザデバイスの型、モデル、又はタイプを決定し、それをユーザデバイス１１０Ａとして又はユーザデバイス１１０Ｂとして分類するように構成されてよい。この決定は、ユーザデバイスから受信されるメタデータ又は他の通信、例えば、同様にユーザデバイスから受信されるマルチクライアントネットワークサービスに参加するための要求などに基づいて、サーバにより行われてよい。さらに、サーバ１０５は、特定のユーザデバイスを追加するための判断を、それがユーザデバイス１１０Ａとして分類されたか又はユーザデバイス１１０Ｂとして分類されたかに基づいて行うことができる。例えば、サーバ１０５は、ユーザデバイス１１０Ｂよりユーザデバイス１１０Ａを加え及びサービスすることを優先させることができる。
【００４３】
システム１００は、サーバコンピュータなどの１つ以上のデータストレージ又はデジタルコンテンツプロバイダ１２５をさらに含み、これは、デジタル製品を記憶し、あるいはマルチクライアントネットワークサービスの少なくともいくらかの部分を供給することができる。デジタル製品は、サーバ１０５から受信される命令に基づいて選択されたユーザデバイスに送信され、あるいはブロードキャストされてよい。例えば、ユーザデバイス１１０のうち１つのユーザが、サーバ１０５により維持されるオンラインストアにアクセスし、或るデジタル製品（例えば、ビデオオンデマンド又はオンラインマルチプレーヤコンピュータゲーム）へのアクセスを要求したとき、それは、コンテンツプロバイダ１２５のうち１つからそれぞれのユーザデバイスにダウンロードされてよく、あるいは、ユーザデバイスは、デジタル製品にアクセスするためにコンテンツプロバイダ１２５へのアクセスを許可されてよい。
【００４４】
サーバ１０５は、ユーザアカウント、ユーザ設定、ユーザ好み、ユーザ個人情報、ユーザ支払情報、及び任意選択でいくつかのデジタル製品を維持するデータベースをさらに含むことができる。データベースは、ユーザＩＤ又はユーザアカウントに関連づけられたデジタル製品のＩＤ又は参照を記憶する関係データベースとすることができる。
【００４５】
本明細書で説明されるように、サーバ１０５は、マルチプレーヤオンラインゲームなどのマルチクライアントネットワークサービス１２０をユーザデバイス１１０Ａ及び／又はユーザデバイス１１０Ｂの複数のユーザに提供することができる。マルチクライアントネットワークサービス１２０は、１つ以上の通信ネットワーク１１５を通じてユーザデバイスに供給されてよい。サーバ１０５は、マルチクライアントネットワークサービス１２０に関連づけられたデータトラフィックを絶えず監視して、マルチクライアントネットワークサービス１２０を供給することにおけるレイテンシがなく、マルチクライアントネットワークサービス１２０に関連づけられたいかなる性能にも低下がないことを確保することができる。これらの目的のため、サーバ１０５は、ユーザによりマルチクライアントネットワークサービス１２０にアクセス又は参加するための要求をサーバ１０５により受信すると、ユーザデバイス１１０Ａ、１１０Ｂの各々の新しいユーザに対してタイムスタンプを発行することができる。他の実装において、サーバ１０５は、タイムスタンプの代わりに又は追加で、新しいユーザに対して他のしるし又はＩＤを発行することができる。
【００４６】
タイムスタンプに専ら基づき、サーバ１０５は、レイテンシ値、データトラフィック値、システムストレス値などの負荷メトリックの決定又は算出を行うことができる。しかしながら他の実装において、負荷メトリックは、データネットワーク関連測定、現在負荷キャパシティなどの他の又はさらなる基準に基づいて決定され、取得され、あるいは算出されてよい。
【００４７】
サーバ１０５は閾負荷値をさらに維持することができ、これは予め決定され、あるいは或る基準（例えば、マルチクライアントネットワークサービスを供給するためのサーバ１０５の現在負荷キャパシティ）に基づいて動的に変更されてよい。サーバ１０５は、ユーザ要求又はタイムスタンプから取得された負荷メトリックを閾負荷値と繰り返し比較して、負荷メトリックが閾負荷値を満たし又は超えているかを決定することができる。例えば、「ゲームラッシュ」イベント又は新しいユーザの急増があるとき、サーバ１０５は、現在負荷メトリックが閾負荷値を満たし又は超えていることを検出することができる。この場合、新しいユーザは、少なくとも一時的にマルチクライアントネットワークサービス１２０にアクセス又は参加することを許可されず、待機モードに保たれ、それにより、既存のユーザが中断もマルチクライアントネットワークサービス１２０に関連づけられたサービス品質の低下もなくマルチクライアントネットワークサービス１２０を享受し続けることを確保する。
【００４８】
いくつかの実装において、所定期間の満了の後、待機モードが終了されてよく、新しいユーザがマルチクライアントネットワークサービス１２０に参加することができる。他の実装において、サーバ１０５が現在負荷メトリックが閾負荷値を下回っていると決定した後、待機モードが終了されてよく、新しいユーザがマルチクライアントネットワークサービス１２０に参加することができる。他の実装において、速度の実質的減少又はレイテンシの増加なく同じマルチクライアントネットワークサービス１２０をより大きいユーザグループに供給することができるようにサーバ１０５がスケールアップした後、待機モードが終了されてよく、新しいユーザがマルチクライアントネットワークサービス１２０に参加することができる。例えば、サーバ１０５は、同じマルチクライアントネットワークサービス１２０をより大きいユーザグループに供給することにおいてサーバ１０５と協調して動作するように１つ以上のさらなる計算リソース１３０（例えば、サーバ１０５と同様のサーバ）を追加又はアクティブ化することを管理することができる。さらなる計算リソース１３０が追加又はアクティブ化されたとき、新しいユーザのうち１以上がマルチクライアントネットワークサービス１２０に参加することを可能にされてよい。
【００４９】
サーバ１０５が現在負荷メトリックが閾負荷値を満たし又は超えていることを検出したとき、新しいユーザがマルチクライアントネットワークサービス１２０にアクセス又は参加することを許可されない限り、サーバ１０５は、これらの新しいユーザに対し、該ユーザが少なくとも一時的にマルチクライアントネットワークサービス１２０にアクセス又は参加することを許可されないことを該ユーザに知らせるための待機メッセージを配信し、あるいは配信することをもたらすことができる。サーバ１０５はさらに、各個々の新しいユーザについて、そのタイムスタンプと、任意選択で現在負荷キャパシティ、現在負荷メトリック、又は現在閾負荷値などの他の基準とに少なくとも基づいて、待機時間を算出することができる。待機時間は待機メッセージに含まれてよい。ゆえに、新しいユーザは、該ユーザがいつマルチクライアントネットワークサービス１２０を享受し始めることができるかを理解し得る。
【００５０】
サーバ１０５はさらに、新しい及び既存のユーザの数、タイムスタンプ、帯域幅、ネットワークインフラストラクチャパラメータ、レイテンシパラメータなどの１つ以上の基準に基づいてサーバ１０５又はマルチクライアントネットワークサービス１２０の現在負荷キャパシティを決定及び監視するように構成されてよい。いくつかの実装において、サーバ１０５はさらに、ある時間にわたる現在負荷キャパシティの変化に基づいて閾負荷値を動的に又は繰り返し更新するように構成されてよい。
【００５１】
サーバ１０５はさらに、新しいユーザ及び既存のユーザにより生成された１つ以上の別々のネットワーク要求に返答するように構成される。サーバ１０５は、既存のユーザに対して確立された接続を維持しなくてよく、しかし、既存のユーザにより生成されたさらなる要求に返答することができる。サーバ１０５は、要求を解析し、これらが既存のユーザにより発せられたか又は新しいユーザにより発せられたかを区別することができる。例えば、サーバ１０５がこれらさらなる要求の各々に返答するとき、サーバ１０５はタイムスタンプから、特定の要求が既存のユーザからであるとわかることになり、他の要求が待機するよう命じられているとしても、その要求を通し許可することになる。
【００５２】
またさらなる実装において、サーバ１０５はさらに、１つ以上の期間にわたり負荷メトリックを収集して履歴データを取得するように構成されてよい。ゆえに、履歴データは、所定の期間にわたるマルチクライアントネットワークサービス１２０の需要を特徴づける。換言すると、履歴データは、或るマルチクライアントネットワークサービスに関して複数のファクタ又はイベントに基づいて負荷メトリックがある時間にわたり如何に変化するかを知らせることができる。
【００５３】
さらに、サーバ１０５は、履歴データを処理及び解析して、マルチクライアントネットワークサービス１２０の将来負荷需要、サーバ１０５若しくはマルチクライアントネットワークサービス１２０に関連づけられた負荷キャパシティ、又は負荷メトリックに関連した或る予測を行うことができる。サーバ１０５は、これらの予測に少なくとも部分的に基づいて、１以上の新しいユーザがマルチクライアントネットワークサービス１２０にアクセス又は参加することを選択的に可能にすることができる。予測は、人工知能方法、機械学習方法、統計的方法、ヒューリスティックな方法、データパターン認識方法、曲線比較方法、及び／又はマルチクライアントネットワークサービス１２０に関連づけられた負荷需要若しくは別の特性の加速度若しくは減速度を決定する方法を使用して、履歴データに基づいて行われてよい。
【００５４】
図２は、一例示的な実施形態による、マルチクライアントネットワークサービスを提供する方法２００を示す処理フロー図である。方法２００は、ハードウェア（例えば、意思決定ロジック、専用ロジック、プログラマブルロジック、特定用途向け集積回路（ＡＳＩＣ））、ソフトウェア（汎用コンピュータシステム又は専用マシン上で動作するソフトウェアなど）、又は双方の組み合わせを含み得る、処理ロジックにより実行されてよい。１つの例示的な実施形態において、処理ロジックは図１のサーバ１０５を参照する。以下に記載される方法２００の動作は、図において説明され示されるのと異なる順序で実現されてよい。さらに、方法２００は本明細書に示されないさらなる動作を有してよく、このことは本開示から当業者に明らかになり得る。方法２００は、以下で概説され図２に示されるより少ない動作を有してもよい。
【００５５】
方法２００は、マルチクライアントネットワークサービスが１つ以上のクライアント（ユーザデバイス）により既に開始されており、マルチクライアントネットワークサービスを使用するユーザは「既存のユーザ」であることを仮定する。したがって、方法２００は、動作２０５において、サーバ１０５が少なくとも１つの通信ネットワーク１１５を通じてユーザデバイス１１０Ａ、１１０Ｂの複数の既存のユーザに対してマルチクライアントネットワークサービス１２０を提供又は維持することにより開始することができる。マルチクライアントネットワークサービス１２０は、例えば、ネットワークマルチプレーヤゲーム、オンラインマルチプレーヤゲーム、仮想現実マルチプレーヤゲーム、ビデオオンデマンドサービス、テレビジョンブロードキャスティングサービス、マルチユーザオンラインエンターテインメントサービスなどを参照することができる。
【００５６】
動作２１０において、サーバ１０５は、既存のユーザがマルチクライアントネットワークサービス１２０についてアクセス及び享受する方法と同様に１以上の新しいユーザが同じマルチクライアントネットワークサービス１２０にアクセスできるように、該新しいユーザからマルチクライアントネットワークサービス１２０に参加するための１つ以上の要求を受信する。マルチクライアントネットワークサービス１２０に参加するための要求は、ユーザＩＤ、ユーザクレデンシャル、ユーザがどのマルチクライアントネットワークサービスに参加又はアクセスしたいかを指し示す情報、ユーザデバイスの型、モデル、又はタイプに関する情報などの或るデータ又はメタデータを含むことができる。いくつかの実施形態において、サーバ１０５は、新しいユーザのユーザデバイスからの、ユーザＩＤ、ユーザクレデンシャル、ユーザがどのマルチクライアントネットワークサービスに参加又はアクセスしたいかを指し示す情報、及びユーザデバイスの型、モデル、又はタイプに関する情報などの上記で列挙されたパラメータのうち任意のもの又はすべてを要求することができる。
【００５７】
動作２１５において、サーバ１０５は、新しいユーザからマルチクライアントネットワークサービス１２０にアクセス又は参加するための要求を受信すると、新しいユーザの各々に対してタイムスタンプを個々に及び独立して発行する。タイムスタンプは、マルチクライアントネットワークサービス１２０にアクセス又は参加するための要求に関連づけられ、サーバ１０５のメモリ若しくはデータベース、又はデータストレージ１２５などの他のデータストレージに記憶されてよい。タイムスタンプの各々は、或る新しいユーザがマルチクライアントネットワークサービス１２０にアクセス又は参加することを要求したとき、又はマルチクライアントネットワークサービス１２０にアクセス又は参加するための対応する要求がサーバ１０５により受信されたときの、時間及び日付を特徴づけることができる。
【００５８】
動作２２０において、サーバ１０５は、マルチクライアントネットワークサービス１２０に参加又はアクセスするための要求から負荷メトリックを取得する。負荷メトリックは、タイムスタンプと、任意選択でマルチクライアントネットワークサービス１２０の現在負荷キャパシティなどの他のパラメータとに基づいて、算出されてよい。これらの目的のため、サーバ１０５は、マルチクライアントネットワークサービス１２０の現在負荷キャパシティを繰り返し決定してよい。ゆえに、負荷メトリックは、１つ以上の所与の時間におけるマルチクライアントネットワークサービスへの少なくともトラフィック負荷を特徴づけることができる。
【００５９】
動作２２５において、サーバ１０５は、負荷メトリックを閾負荷値と繰り返し比較して、所与の時間に負荷メトリックが閾負荷値を満たし又は上回るかを決定する。したがって、動作２３０において、サーバ１０５は、所与の時間に負荷メトリックが閾負荷値を満たし又は上回るかどうかについて対応する判断を行う。明らかに、動作２２５及び２３０は、サーバ１０５により実行される単一の動作と考えられてよい。
【００６０】
負荷メトリックが閾負荷値を満たさず又は下回ると決定された場合、方法２００は動作２３５に進み、サーバ１０５は、新しいユーザのうち１以上がマルチクライアントネットワークサービス１２０に参加又はアクセスすることを選択的に可能にする。いくつかの実装において、新しいユーザは、先着順ポリシーに基づいてマルチクライアントネットワークサービス１２０に参加することを可能にされ、あるいは許可されてよい。他の実装において、及び上記で説明されたように、新しいユーザは、該新しいユーザが使用するユーザデバイス１１０Ａ又は１１０Ｂの型、モデル、ブランド、又はタイプに基づいてマルチクライアントネットワークサービス１２０に参加することを可能にされ、あるいは許可されてよい。
【００６１】
あるいは、負荷メトリックが閾負荷値を満たし又は上回ると決定された場合、方法２００は動作２４０に進み、サーバ１０５は、負荷メトリックと新しいユーザの各々のタイムスタンプとに基づいて新しいユーザの各々について推定待機時間を算出する。さらに、動作２４５において、サーバ１０５は、新しいユーザのうち少なくとも１に対する待機メッセージの配信をもたらし、閾負荷値を満たさない又は上回らないように所定期間の間又は負荷メトリックが変わるまで、新しいユーザのうち少なくとも１を待機モードに保つ。負荷メトリックは、既存のユーザがマルチクライアントネットワークサービス１２０を「去り」もはやアクセスしない場合、又はサーバ１０５が１つ以上のさらなる計算（又はネットワーク）リソース１３０をアクティブ化してサーバ１０５又はマルチクライアントネットワークサービス１２０のキャパシティを増加させたとき、変わる可能性がある。待機メッセージの各々は、新しいユーザの各々について個々に計算された推定待機時間を含むことができる。所定期間の満了の後、方法２００は動作２２５及び２３０に戻り、負荷メトリックが閾負荷値を満たし又は上回るように変わったかどうかを決定してよい。したがって、既存のユーザがマルチクライアントネットワークサービス１２０を去り、もはやアクセスせず、あるいはサーバ１０５が１つ以上のさらなる計算（又はネットワーク）リソース１３０をアクティブ化した場合、サーバ１０５は、新しいユーザのうち１以上によりマルチクライアントネットワークサービス１２０に参加することを可能にすることができる。
【００６２】
いくつかの実装において、閾負荷値は、マルチクライアントネットワークサービスの現在負荷キャパシティの変化、又はデータトラフィックパラメータなどの他のパラメータに基づいて、サーバ１０５により動的に更新されてよい。
【００６３】
上記で説明されたように、サーバ１０５は、上記閾値と異なる第２の閾値を維持することができる。第２の閾値は、動作２４０又は２４５において作用し始めてよい。第２の閾値は、タイムスタンプについての遮断時間とすることができる。したがって、第２の閾値（すなわち、遮断時間）の前に発行されたタイムスタンプを有するユーザ要求の生成をもたらしたユーザは、マルチクライアントネットワークサービスに参加することを許可される。対照的に、第２の閾値（すなわち、遮断時間）の後に発行されたタイムスタンプを有するユーザ要求の生成をもたらしたユーザは、少なくとも待機期間の間、マルチクライアントネットワークサービスに参加することを許可されない。第２の閾値は、予め決定され、あるいはシステムへの負荷に基づいて絶えず更新されてよい。
【００６４】
図３は、一例示的な実施形態による、マルチクライアントネットワークサービスを提供する別の方法３００を示す処理フロー図である。方法３００は、ハードウェア（例えば、意思決定ロジック、専用ロジック、プログラマブルロジック、ＡＳＩＣ）、ソフトウェア（汎用コンピュータシステム又は専用マシン上で動作するソフトウェアなど）、又は双方の組み合わせを含み得る、処理ロジックにより実行されてよい。１つの例示的な実施形態において、処理ロジックは図１のサーバ１０５を参照する。以下に記載される方法３００の動作は、図において説明され示されるのと異なる順序で実現されてよい。さらに、方法３００は本明細書に示されないさらなる動作を有してよく、このことは本開示から当業者に明らかになり得る。方法３００は、以下で概説され図３に示されるより少ない動作を有してもよい。いくつかの実装において、方法２００の動作及び方法３００の動作は、ハイブリッドな方法に一緒に混合されてよい。
【００６５】
方法３００は、動作３０５において、サーバ１０５が少なくとも１つの通信ネットワーク１１５を通じてユーザデバイス１１０Ａ、１１０Ｂの複数の既存のユーザに対してマルチクライアントネットワークサービス１２０を提供、供給、又は維持するとき開始する。上記で説明されたように、マルチクライアントネットワークサービス１２０は、例えば、ネットワークマルチプレーヤゲーム、オンラインマルチプレーヤゲーム、仮想現実マルチプレーヤゲーム、ビデオオンデマンドサービス、テレビジョンブロードキャスティングサービス、マルチユーザオンラインエンターテインメントサービスなどを参照することができる。
【００６６】
動作３１０において、サーバ１０５は、既存のユーザがマルチクライアントネットワークサービス１２０についてアクセス及び享受する方法と同様に１以上の新しいユーザが同じマルチクライアントネットワークサービス１２０にアクセスできるように、該新しいユーザからマルチクライアントネットワークサービス１２０に参加するための１つ以上の要求を受信する。マルチクライアントネットワークサービス１２０に参加するための要求は、ユーザＩＤ、ユーザクレデンシャル、ユーザがどのマルチクライアントネットワークサービスに参加又はアクセスしたいかを指し示す情報、ユーザデバイスの型、モデル、又はタイプに関する情報などの或るデータ又はメタデータを含むことができる。いくつかの実施形態において、サーバ１０５は、新しいユーザのユーザデバイスからの、ユーザＩＤ、ユーザクレデンシャル、ユーザがどのマルチクライアントネットワークサービスに参加又はアクセスしたいかを指し示す情報、及びユーザデバイスの型、モデル、又はタイプに関する情報などの上記で列挙されたパラメータのうち任意のもの又はすべてを要求することができる。
【００６７】
動作３１５において、サーバ１０５は、新しいユーザからマルチクライアントネットワークサービス１２０にアクセス又は参加するための要求を受信すると、新しいユーザの各々に対してタイムスタンプを個々に及び独立して発行する。タイムスタンプは、マルチクライアントネットワークサービス１２０にアクセス又は参加するための要求に関連づけられ、サーバ１０５のメモリ若しくはデータベース、又はデータストレージ１２５などの他のデータストレージに記憶されてよい。タイムスタンプの各々は、或る新しいユーザがマルチクライアントネットワークサービス１２０にアクセス又は参加することを要求したとき、又はマルチクライアントネットワークサービス１２０にアクセス又は参加するための対応する要求がサーバ１０５により受信されたときの、時間及び日付を特徴づけることができる。いくつかの実装において、タイムスタンプは、対応する要求がいつサーバ１０５により発行、送信、又は受信されたかのタイミングを反映する他のＩＤ又はしるしで置換されてよい。
【００６８】
動作３２０において、サーバ１０５は、マルチクライアントネットワークサービス１２０に参加又はアクセスするための要求から負荷メトリックを取得する。負荷メトリックは、タイムスタンプと、任意選択でマルチクライアントネットワークサービス１２０の現在負荷キャパシティなどの他のパラメータとに基づいて、算出されてよい。これらの目的のため、サーバ１０５は、マルチクライアントネットワークサービス１２０の現在負荷キャパシティを繰り返し決定してよい。ゆえに、負荷メトリックは、１つ以上の所与の時間におけるマルチクライアントネットワークサービスへの少なくともトラフィック負荷を特徴づけることができる。
【００６９】
動作３２５において、サーバ１０５は、負荷メトリックを収集して、例えば、ある時間にわたるマルチクライアントネットワークサービス１２０の需要を特徴づける履歴データを取得する。換言すると、履歴データは、マルチクライアントネットワークサービス１０２に関して（「ゲームラッシュ」イベントなどの）複数のファクタ又はイベントに基づいて負荷メトリックがある時間にわたり如何に変わるかを知らせることができる。
【００７０】
動作３３０において、サーバ１０５は、マルチクライアントネットワークサービス１２０に関して履歴データに基づいて将来負荷需要を予測する。予測は、人工知能方法、機械学習方法、統計的方法、ヒューリスティックな方法、データパターン認識方法、曲線比較方法、及びマルチクライアントネットワークサービス１２０に関連づけられた負荷需要又は別の特性の加速度又は減速度を決定する方法のうち１つ以上を使用して、履歴データに基づいてサーバ１０５により行われてよい。
【００７１】
動作３３５において、サーバ１０５は、サーバ１０５により前に予測された将来負荷需要に基づいて、新しいユーザのうち少なくとも１によりマルチクライアントネットワークサービス１２０に参加又はアクセスすることを選択的に可能にする。動作３３５は、図２の方法２００で実行される動作２２５及び２３０に対して補足的な動作であり得る。換言すると、いくつかの任意的な実装において、予測は、閾負荷値を判断又は算出することに貢献することができる。
【００７２】
図４は、本明細書で説明される方法を実現するのに適したコンピューティングデバイス４００を示す高レベルブロック図である。特に、コンピューティングデバイス４００は、上記で説明されたようなマルチクライアントネットワークサービスを提供する方法を実現するために使用されてよい。コンピューティングデバイス４００は、他の中でも、汎用コンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、サーバ、ネットブック、モバイルフォン、スマートフォン、インフォテインメントシステム、スマートテレビジョンデバイスなどの、様々なタイプのデバイスのうち１つ以上を含んでよく、該１つ以上であってよく、あるいは該１つ以上の不可欠な部分であってよい。いくつかの実施形態において、コンピューティングデバイス４００は、サーバ１０５、ユーザデバイス１１０Ａ、１１０Ｂ、さらなる計算リソース１３０、及びデータストレージ／デジタルコンテンツプロバイダ１２５の例とみなされてよい。
【００７３】
図４に示されるように、コンピューティングデバイス４００は、１つ以上のプロセッサ４１０、メモリ４２０、１つ以上の大容量記憶デバイス４３０、ゼロ個以上の出力デバイス４５０、ゼロ個以上の入力デバイス４６０、１つ以上のネットワークインターフェース４７０、ゼロ個以上の任意的な周辺デバイス４８０、及び上記で列挙された要素を動作上相互接続する通信バス４９０を含む。プロセッサ４１０は、コンピューティングデバイス４００内での実行のための機能性を実現し、及び／又は命令を処理するように構成されてよい。例えば、プロセッサ４１０は、メモリ４２０に記憶された命令又は記憶デバイス４３０に記憶された命令を処理してよい。こうした命令は、オペレーティングシステム又はソフトウェアアプリケーションのコンポーネントを含んでよい。
【００７４】
メモリ４２０は、１つの例によれば、動作の間にコンピューティングデバイス４００内の情報を記憶するように構成される。例えば、メモリ４２０は、データベース、又はデジタル製品若しくはマルチクライアントネットワークサービスに属する他のデータなどのデジタルメディアコンテンツを記憶することができる。メモリ４２０は、いくつかの例示的な実施形態において、非一時的コンピュータ読取可能記憶媒体又はコンピュータ読取可能記憶デバイスを参照してよい。いくつかの例において、メモリ４２０は一時メモリであり、メモリ４２０の主な目的が長期記憶でなくてよいことを意味している。メモリ４２０は揮発メモリを参照してもよく、メモリ４２０が電力を受信していないときにメモリ４２０は記憶された内容を維持しないことを意味している。揮発メモリの例は、ＲＡＭ、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、スタティックランダムアクセスメモリ（ＳＲＡＭ）、及び当該分野で知られる他の形式の揮発メモリを含む。いくつかの例において、メモリ４２０は、プロセッサ４１０による実行のためのプログラム命令を記憶するために使用される。メモリ４２０は、１つの例において、ソフトウェアアプリケーションにより使用される。一般に、ソフトウェアアプリケーションは、本明細書で説明されるような方法の少なくともいくつかの動作を実現するのに適したソフトウェアアプリケーションを参照する。
【００７５】
大容量記憶デバイス４３０もまた、１つ以上の一時的又は非一時的コンピュータ読取可能記憶媒体又はコンピュータ読取可能記憶デバイスを含むことができる。例えば、メモリ４３０は、データベース、又はデジタル製品若しくはマルチクライアントネットワークサービスに属する他のデータなどのデジタルメディアコンテンツを記憶することができる。いくつかの実施形態において、大容量記憶デバイス４３０は、メモリ４２０より多量の情報を記憶するように構成されてよい。大容量記憶デバイス４３０は、情報の長期記憶に対して構成されてもよい。いくつかの例において、大容量記憶デバイス４３０は不揮発記憶要素を含む。こうした不揮発記憶要素の例は、磁気ハードディスク、光ディスク、ソリッドステートディスク、フラッシュメモリ、電気的プログラマブルメモリ（electrically  programmable  memories、ＥＰＲＯＭ）又は電気的消去可能及びプログラマブルメモリの形式、並びに当該分野で知られる他の形式の不揮発メモリを含む。
【００７６】
コンピューティングデバイス４００は、ゼロ個以上の入力デバイス４６０をさらに含んでよい。入力デバイス４６０は、触覚、オーディオ、ビデオ、又はバイオメトリックチャネルを通じてユーザから入力を受信するように構成されてよい。入力デバイス４６０の例は、キーボード、キーパッド、マウス、トラックボール、タッチスクリーン、タッチパッド、マイクロフォン、ビデオカメラ、画像センサ、指紋センサ、又はユーザ若しくは他のソースからの入力を検出して該入力をコンピューティングデバイス４００若しくはそのコンポーネントに中継することができる任意の他のデバイスを含んでよい。
【００７７】
出力デバイス４５０は、視覚又は聴覚チャネルを通じて出力をユーザに提供するように構成されてよい。出力デバイス４５０は、ビデオグラフィックスアダプタカード、液晶ディスプレイ（ＬＣＤ）モニタ、発光ダイオード（ＬＥＤ）モニタ、若しくは有機ＬＥＤモニタなどのディスプレイ、サウンドカード、スピーカー、ライティングデバイス、プロジェクタ、又はユーザに理解でき得る出力を生成することができる任意の他のデバイスを含んでよい。出力デバイス４５０は、タッチスクリーン、存在感知可能（presence-sensitive）ディスプレイ、又は当該分野で知られる他の入力／出力可能ディスプレイを含んでもよい。
【００７８】
コンピューティングデバイス４００は、ネットワークインターフェース４７０をさらに含むことができる。ネットワークインターフェース４７０は、例えば、他の中でもインターネット、イントラネット、ローカルエリアネットワーク、ワイドエリアネットワーク、セルラーフォンネットワーク（例えば、グローバルシステムフォーモバイルコミュニケーションズ（Global  System  for  Mobile  communications）ネットワーク、ロングタームエボリューション通信ネットワーク、パケット交換通信ネットワーク、回線交換通信ネットワーク）、ブルートゥース無線、及びＩＥＥＥ８０２．１１ベースの無線周波数ネットワークを含む、１つ以上の有線、無線、又は光ネットワークなどの１つ以上のネットワークを介して外部デバイスと通信するために利用されてよい。ネットワークインターフェース４７０は、イーサネットカードなどのネットワークインターフェースカード、光トランシーバ、無線周波数トランシーバ、又は情報を送信及び受信することができる任意の他タイプのデバイスであってよい。
【００７９】
コンピューティングデバイス４００のオペレーティングシステムは、コンピューティングデバイス４００又はそのコンポーネントの１つ以上の機能性を制御してよい。例えば、オペレーティングシステムは、ソフトウェアアプリケーションと相互作用してよく、ソフトウェアアプリケーションとプロセッサ４１０、メモリ４２０、記憶デバイス４３０、入力デバイス４６０、出力デバイス４５０、及びネットワークインターフェース４７０との間の１つ以上の相互作用を容易にしてよい。オペレーティングシステムは、ソフトウェアアプリケーション又はそのコンポーネントと相互作用し、あるいはその他の方法で結合されてよい。いくつかの実施形態において、ソフトウェアアプリケーションはオペレーティングシステムに含まれてよい。
【００８０】
こうして、マルチクライアントネットワークサービスを提供する方法及びシステムが説明された。実施形態が特定の例示的な実施形態を参照して説明されたが、本願のより広い主旨及び範囲から逸脱することなくこれら例示的な実施形態に対して様々な修正及び変更がなされ得ることが明らかであろう。したがって、明細書及び図面は限定的でなく例示的な意味において考慮されるべきである。
【図１】
2020504388.tif 000003
【図２】
2020504388.tif 000004
【図３】
2020504388.tif 000005
【図４】
2020504388.tif 000006
【国際調査報告】
2020504388.tif 000007