JP7537528B2 - リソース割当装置、リソース割当方法、および、リソース割当プログラム - Google Patents

リソース割当装置、リソース割当方法、および、リソース割当プログラム Download PDF

Info

Publication number
JP7537528B2
JP7537528B2 JP2022581105A JP2022581105A JP7537528B2 JP 7537528 B2 JP7537528 B2 JP 7537528B2 JP 2022581105 A JP2022581105 A JP 2022581105A JP 2022581105 A JP2022581105 A JP 2022581105A JP 7537528 B2 JP7537528 B2 JP 7537528B2
Authority
JP
Japan
Prior art keywords
allocation
group
state management
calculation unit
management unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022581105A
Other languages
English (en)
Other versions
JPWO2022172389A1 (ja
Inventor
諒平 佐藤
裕一 中谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2022172389A1 publication Critical patent/JPWO2022172389A1/ja
Application granted granted Critical
Publication of JP7537528B2 publication Critical patent/JP7537528B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46—Multiprogramming arrangements
    • G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061—Partitioning or combining of resources
    • G06F9/5072—Grid computing
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46—Multiprogramming arrangements
    • G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46—Multiprogramming arrangements
    • G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00—Indexing scheme relating to G06F9/00
    • G06F2209/50—Indexing scheme relating to G06F9/50
    • G06F2209/502—Proximity
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00—Indexing scheme relating to G06F9/00
    • G06F2209/50—Indexing scheme relating to G06F9/50
    • G06F2209/509—Offload

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

本発明は、リソース割当装置、リソース割当方法、および、リソース割当プログラムに関する。
分散クラウド環境は、NW(Network)内にDC(Data Center)が分散して配置されたアーキテクチャである(非特許文献1,2)。DCは、サーバやユーザが従来担っていた処理をオフロード(代行)するための計算機資源(リソース)を提供する。
以下、DCに割り当てる対象として、ステート管理部を例示する。なお、「ステート」とは、複数のユーザ間でリアルタイムにやりとりするサービスに用いられるデータである。「ステート管理部」とは、各ユーザから受信したアクセス内容をもとに、自身の管理するステートを更新し、その更新後のステートを各ユーザにデータ共有する処理部である。
図7は、ステート管理部5zをオフロードする前のオンラインシステム9z1の構成図である。
オンラインシステム9z1では、サービス提供装置1zは、ステートを複数のユーザ端末4z間でリアルタイムにデータ共有させるサービスを提供する。ステート管理部5zが管理するステートは、例えば以下が挙げられる。
・オンラインゲーム:アバタの位置・加速度・動作・装備、ダメージ判定や戦闘不能のステータスなど。
・XR(Extended_Reality):アバタ(ユーザ)の動作や五感情報、仮想世界において発生する事象など。
・オンライン会議:ユーザや画面共有の音声・映像データプレゼンタ権限やミュートの設定など。
このオンラインシステム9z1では、サービス提供装置1zと各ユーザ端末4zとの間の通信距離が長いため、大きな通信遅延がサービスの品質を低下させる要因となる。
図8は、ステート管理部5zをDC3zにオフロードした後のオンラインシステム9z2の構成図である。
オンラインシステム9z2では、ステート管理部5zを動作させる装置を、サービス提供装置1zから、ユーザ端末4zに近いDC3zにオフロードさせている。このオフロードにより、下記のような効果が得られる。
・ユーザ:計算コスト・遅延の低減。
・通信事業者:トラフィック量・輻輳の軽減。
・サービス提供者:サーバ負荷・メンテナンスコストの削減。
つまり、サービス品質を向上させるためには、複数のDC3zの候補から、どのDC3zにステート管理部5zを配置するかを選択することが重要となる。非特許文献3には、各ユーザ端末4zの間の遅延を求め、その遅延の最大値(最大のE2E遅延)を小さくするようなリソース割当方法が記載されている。
Alicherry and T. V. Lakshman, "Network aware resource allocation in distributed clouds," in 2012 Proceedings IEEE INFOCOM, pp. 963-971, 2012. M. Mukherjee, L. Shu, and D. Wang, "Survey of fog computing: Fundamental, network applications, and research challenges," in IEEE Communications Surveys & Tutorials, Vol. 20, No. 3, pp. 1826-1857, 2018. A. Kawabata, B. C. Chatterjee, S. Ba and E. Oki, "A Real-Time Delay-Sensitive Communication Approach Based on Distributed Processing," in IEEE Access, vol. 5, pp. 20235-20248, 2017.
同じオンラインシステムの環境を利用するユーザでも、ユーザのグループごとに様々なアプリケーションを実行させる。その際、例えば、以下の問題を定義する。
・複数のDCと多数のユーザとが、NW内に散在している。
・ユーザ同士で比較的少人数(例:2人~10人)のグループを形成済みである。
・複数のグループに所属するユーザは存在しない。
・全グループのステート管理部を、それぞれ適切なDCに各々収容したい。
また、上記の問題に対して、以下の前提条件がすでに与えられているものと仮定する。
・形成されたすべてのグループとそのメンバ。
・全ユーザと全DC間の遅延時間(例:ping一回の測定値や複数回の平均値など)。
・各DCに収容可能なユーザ数と、ユーザが満たすべき遅延要件(許容可能な遅延の最大値など)。
図9は、ステート管理部を複数のDCにオフロードした場合の分散クラウド環境8zの構成図である。
分散クラウド環境8zでは、波線で示すNW内に2つのDC(DC1,DC2)が存在し、そのDCには5人のユーザ(UA1,UA2,UA3,UB1,UB2)が収容されている。図9の例では、各ユーザは最寄りのDCに収容される。よって、DC1には、ユーザ(UA1,UA2,UB1)が収容される。DC2には、ユーザ(UA3,UB2)が収容される。
ここで、前記の問題定義で説明したように、ユーザ間で第1グループ(UA1,UA2,UA3:2文字目が「A」のグループ)と、第2グループ(UB1,UB2:2文字目が「B」のグループ)とが形成されたとする。第1グループのメンバ同士で同じ対戦ゲームをするためには、UA1,UA2のステート(ST1)とUA3のステート(ST2)とをDC間で共有(同期)する必要がある。第2グループも同様である。
また、第1グループのアプリケーションと、第2グループのアプリケーションとで、サービス要件が異なることもある。
例えば、第1グループで遊ばれるサバイバルゲームでは、100人など参加人数が多いことを重視し、対戦相手の情報は対戦格闘ゲームほど厳密には求められない。
一方、第2グループで遊ばれる対戦格闘ゲームでは、1対1などの少人数であるがメンバが見る画面情報やメンバの入力した操作情報がすばやく(フレーム単位で)相手側に反映される必要がある。
このようなサービス要件を考慮しつつ、効率的にグループごとに適したリソース割当を行う手法が求められる。しかし、非特許文献3などの従来のリソース割当技術では、複数のグループが存在し、各グループが様々なサービス要件を求めるような複雑な状況には対応できなかった。
そこで、本発明は、複数のユーザが形成したグループごとの要件に沿ったリソース割当を行うことを主な課題とする。
前記課題を解決するために、本発明のリソース割当装置は、以下の特徴を有する。
本発明は、複数のユーザ端末から構成されるグループごとのステートをグループ内で共有させるためのステート管理部を、分散クラウド環境に配備された複数のデータセンタのうちのいずれかに割り当てる旨のリクエストを受信するリクエスト受信部と、
前記グループが要求する要件に応じた割当指標を用いて、前記ステート管理部を前記各データセンタに割り当てるときの割当コストを計算し、その割当コストに従って前記ステート管理部の割当先の前記データセンタを決定する割当計算部とを有することを特徴とする。
本発明によれば、複数のユーザが形成したグループごとの要件に沿ったリソース割当を行うことができる。
本実施形態に係わるオンラインシステムの構成図である。 本実施形態に係わるリソース割当装置のハードウェア構成図である。 本実施形態に係わる割当計算部がグループごとにステート管理部を割り当てる分散クラウド環境の構成図である。 本実施形態に係わる貪欲法のメイン処理を示すフローチャートである。 本実施形態に係わる図4の貪欲法のサブルーチン処理を示すフローチャートである。 本実施形態に係わる図4、図5の貪欲法の処理例を示す説明図である。 ステート管理部をオフロードする前のオンラインシステムの構成図である。 ステート管理部をDCにオフロードした後のオンラインシステムの構成図である。 ステート管理部を複数のDCにオフロードした場合の分散クラウド環境の構成図である。
以下、図面を参照して本実施形態を説明する。
図1は、オンラインシステム9の構成図である。
オンラインシステム9は、サービス提供装置1と、リソース割当装置2と、分散クラウド環境8とがネットワークで接続されて構成される。分散クラウド環境8では、ステートを複数のユーザ端末4間でリアルタイムにデータ共有させるサービスが提供される。
そのため、ステート管理部5はグループごとのステートを管理する。各ステート管理部5はいずれかのDC3に配置される。
まず、リソース割当装置2は、(手順1A)~(手順5A)のようなグループマッチング処理を行う。
(手順1A)ユーザ端末4はサービス提供装置1にアクセスする。
(手順2A)ユーザ端末4はサービス提供装置1上で、ステートを共有する相手である任意の(複数の)ユーザ端末4とマッチングし、グループを形成する。例えばオンラインゲームにおいては、「チームメイトや対戦相手」がステートを共有する相手になる。または、オンライン会議システムの場合は「同じ会議の参加者」がステートを共有する相手になる。
(手順3A)サービス提供装置1は、(手順2A)で形成されたグループのオフロード先として適切なDC3を選択し、そのDC3にグループごとのステート管理部5を配置することでサービスを開始する。
(手順4A)ステート管理部5には、サービスを提供するサーバ機能(オンラインゲームにおける対戦機能など)があらかじめVMやコンテナで実装されている。ステート管理部5は、グループ内で仮想空間などのステートを更新することで、サービスを提供する。
(手順5A)対戦終了後にグループが解散された場合は、解散されたグループメンバのユーザ端末4をサービス提供装置1に返却し、(手順2A)に戻る。
そして、(手順4A)の詳細として、DC3は、各グループのステート管理部5が自身の管理するステートを更新する処理を行う。例えば、オンラインの対戦ゲームでは、以下の(手順1B)~(手順4B)に示すように、各ユーザ端末4はDC3にコマンドを送り、それと同時に、すでに同期処理され生成された仮想空間(ステート)をDC3から受信する。これにより、ユーザ端末4はDC3と1対1通信を行うだけで他のユーザ端末4のコマンドも取得できる。
(手順1B)各ユーザ端末4はDC3上のステート管理部5に自身のコマンドを書き込む。例えば、コントローラを用いて自身のアバタを前に進めるためのコマンドを送る。
(手順2B)DC3上のステート管理部5が各ユーザ端末4からの(手順1B)のコマンドを集約・同期する。例えば、各ユーザ端末4から届いたコマンドにしたがって、各ユーザのアバタに移動やアクションを実行させる。すなわち、先ほどよりも僅かに時間が経過した後の仮想世界をステートとして生成する。
(手順3B)DC3上のステート管理部5は(手順2B)の情報を用いて仮想世界をレンダリング(画像化)するなどし、全ユーザ端末4に対してステートを送信する。例えば、ステート管理部5は全ユーザ端末4のコマンドを反映させたゲーム画面(の1コマ)を配信する。
(手順4B)ステートを受信した各ユーザ端末4は再びコマンドを送信する。例えば、敵が攻撃してくるのが見えたので回避コマンドを入力する。そして(手順1B)に戻る。
以上は、オンラインの対戦ゲームの事例だが、IoT(Internet of Things)環境などにおいて、複数の特定モジュールを組み合わせて最終的な処理結果を得る事例に分散クラウド環境8を適用してもよい。
例えば、気象予測モジュール用のユーザ端末4と、土壌分析モジュール用のユーザ端末4と、農作物分析モジュール用のユーザ端末4とを個別に用意する。そして、これら3つのモジュールをグループ化し、そのグループに属するモジュール群の出力結果を受け取り、それらを処理したり田畑を管理したりする処理部(前記のステート管理部5に対応する処理部)をDC3に配置する。
(手順3A)において、リソース割当装置2は、サービス提供装置1からオフロードされるステート管理部5を、どのDC3に配置するか(以下「DC配置」と呼ぶ)を、複数のユーザが形成したグループごとの要件(例えば、グループが利用しているアプリケーションごとの要件や、グループが利用しているサービスごとの要件)に沿って選択する。そのため、リソース割当装置2は、リクエスト受信部21と、NWデータ収集部22と、割当計算部23と、制御部24とを有する。
リクエスト受信部21は、グループ構成と、ユーザの遅延要件とを含むグループごとのリクエストをサービス提供装置1から受信する。このリクエストは、複数のユーザ端末4から構成されるグループごとにデータ交換するためのステート管理部5を、分散クラウド環境8に配備された複数のDC3のうちのいずれかに割り当てる旨の内容である。
NWデータ収集部22は、各ユーザ端末4と各DC3との間の遅延情報と、各DC3の空き容量(割当可能なユーザの数)情報とを含むNWデータを分散クラウド環境8から測定および収集する。
割当計算部23は、リクエスト受信部21からのリクエストと、割当計算部23からのNWデータとをもとに、リソース割当スキーム(以下「スキーム」)に従ってグループごとのDC配置を計算する。スキームは、ステート管理部5をどのDCに、どの程度、どのようなポリシで割り当てるかを決定するための情報(主にどの割当指標を重視するか)であり、分散クラウド環境8の性能はスキームに強く依存する。
なお、スキームは、リソース割当装置2がサービス提供装置1からリクエストとして受信してもよい。または、割当計算部23は、リソース割当装置2がサービス提供装置1からリクエストとして受信したアプリケーション種別をもとに、データベースを参照してスキームを求めてもよい。データベースには、アプリケーション種別ごとに対応するスキームが事前に登録されている。
または、割当計算部23は、グループ内のメンバからスキームの指定を受けてもよい。
制御部24は、割当計算部23からのDC配置に従って、各ステート管理部5を各DC3にリソース割り当てを行う。
図2は、リソース割当装置2のハードウェア構成図である。
リソース割当装置2は、CPU901と、RAM902と、ROM903と、HDD904と、通信I/F905と、入出力I/F906と、メディアI/F907とを有するコンピュータ900として構成される。
通信I/F905は、外部の通信装置915と接続される。入出力I/F906は、入出力装置916と接続される。メディアI/F907は、記録媒体917からデータを読み書きする。さらに、CPU901は、RAM902に読み込んだプログラム(リクエスト受信部21、NWデータ収集部22、割当計算部23、制御部24に備わるリソース割当プログラムなど)を実行することにより、各処理部を制御する。そして、このプログラムは、通信回線を介して配布したり、CD-ROM等の記録媒体917に記録して配布したりすることも可能である。
図3は、割当計算部23がグループごとにステート管理部を割り当てる分散クラウド環境8の構成図である。
なお、図9の分散クラウド環境8zではグループの概念を考慮せず、ユーザ単位でDCの選択を行っていたために、DC間のステート共有が必要であった。そのため、ステート共有による余分なオーバーヘッドの影響で、ユーザ間の通信遅延も増大してしまっていた。
一方、図3の分散クラウド環境8では、割当計算部23はグループ単位でのDC配置を行う。これにより、1グループあたり1つのステート管理部5が1台のDC3に割り当てられる。例えば、第1グループ(UA1,UA2,UA3)用のステート管理部(STA)がDC1に割り当てられる一方、第2グループ(UB1,UB2)用のステート管理部(STB)がDC2に割り当てられる。よって、ステート共有時のオーバーヘッドを抑制し、厳しいリアルタイム要件に対応できる。
また、割当計算部23は、グループごとのアプリケーション種別に適したスキームをリクエストから参照することで、グループごとの要件に適したDC配置を立案できる。
つまり、割当計算部23は、グループごとの要件に応じたスキームの割当指標を用いて、ステート管理部5を各データセンタに割り当てるときの割当コストを計算し、その割当コストに従ってステート管理部5の割当先のデータセンタを決定する。以下、アプリケーション種別とスキームとの組み合わせとして事例を例示する。
「事例1:完全同期型」は、グループに属するすべてのユーザの通信を逐一待ってからステートを同期することで、グループに属するすべてのユーザが同じ画面を閲覧させるアプリケーションである。以下、完全同期型のアプリケーションを例示する。
・1対1の対戦格闘ゲーム。
・図1の説明で前記した田畑を管理するシステム。
完全同期型のスキーム(割当指標)は、「グループ内の最大遅延」を最小化するものである。グループ全体のQoS(Quality of Service)やQoE(Quality of Experience)が最も遅延の大きなユーザに依存するためである。
「事例2:準同期型」は、ユーザ間で厳密な同期を取らない(取れない)アプリケーションであり、例えば、100人程度のFPS(First-Person Shooter)のサバイバルゲームである。グループに属する遅延の大きいユーザの通信を待たずにステートを同期することで、遅延の大きいユーザが見る画面がカクついたり、遅延の大きいユーザのキャラクターの最新位置が他ユーザに見えなくなったりする。
準同期型のスキーム(割当指標)は、「グループ内の平均遅延」を最小化するものである。例えば100人のグループのうちの3人程度のメンバだけ大きな遅延が発生したとしても、その不便を感じるのは3人だけで、残りの97人は小さい平均遅延で快適な環境が提供されれば充分である。
「事例3:公平環境型」は、ユーザ間のプレイ環境において公平性が特に求められるリアルタイムアプリケーションであり、以下に例示する。
・10人程度が同時に同じサーキットを走行するレースゲーム。
・XR空間やバーチャル会議室では、ユーザの動作が視界に反映されるまでの時間(motion-to-photonlatency)が20[ms]以下になることが望ましい。
・現実の街を模した仮想空間内で会話をするアプリケーションでも、レスポンスを低下させないために一つの空間に滞在可能なユーザ数が制限されている。
公平環境型のスキーム(割当指標)は、「グループ内の遅延のばらつき(分散または標準偏差)」を最小化するものである。
一般に遅延が大きいほどQoS・QoEが低下し、仮想世界における優位性(例:ゲームのスコア)にも影響する。よって、公平環境型のアプリケーションに限らず、他の事例のアプリケーションでも、グループ内の遅延のばらつきを小さくすることが望ましい。
以上、3種類のスキームを例示したが、例えば、準同期型のスキームとして「グループ内の平均遅延」および「グループ内の最大遅延」の最小化を同時に行うなど、複数の割当指標を組み合わせてもよい。同様に、公平環境型のスキームとして、「グループ内の平均遅延」と、「グループ内の最大遅延」と、「グループ内の遅延のばらつき」という3つの割当指標をバランスよく最小化してもよい。
以下では、グループ内の遅延の最小化と平等化を両立するための定式化を行う。具体的には、3つの割当指標を総合的に評価可能なモデルを説明する。まず、モデルに用いられるパラメータを定義する。
記号「i∈I」は、ユーザiとその集合Iを示す。
記号「j∈J」は、グループj(j=1,2,...,n)とその集合Jを示す。
記号「k∈K」は、DCk(k番目のDC、k=1,2,...,m)とその集合Kを示す。
記号「Ij⊂I」は、グループjに属するユーザの集合Ijを示す。
記号「wij」は、二値変数であり、ユーザiがグループjに属しているなら「1」、そうでなければ「0」の値をとる。
記号「dik」は、ユーザi-DCk間の遅延時間を示す。
記号「Di」は、ユーザiの遅延要件を示す。
記号「Ck」は、DCkが収容可能なユーザ数を示す。
これらの各パラメータは、リクエスト受信部21のリクエストや、NWデータ収集部22の収集データとして、割当計算部23に与えられる。
Figure 0007537528000001
割当計算部23は、割当指標として(式1)および(式2)を計算する。最大遅延の計算式は(式4)で後記する。
(式1)の左辺「ajk」は、グループjをDCkに収容した場合のユーザi∈Ijの平均遅延を示す。
(式2)の左辺「v2 jk」は、グループjをDCkに収容した場合のユーザi∈Ijの遅延分散を示す。
Figure 0007537528000002
(式3)はDC割当の目的関数を示す。この目的関数は、グループjの割当コストの総和を最小化(minimize)する問題に帰着する。
記号「cjk」は、グループjをDCkに収容した場合の割当コストである。
記号「xjk」は、割当計算部23の計算結果である。「xjk」は決定変数であり、グループjをDCkに収容したら「1」の値、そうでなければ「0」の値をとる。
割当計算部23が割当コストcjkを求める具体的な計算式として(式4)または(式5)を説明する。なお、遅延のばらつきを示す数値として、(式4)では分散を採用し、(式5)では標準偏差を採用した。分散の代わりに標準偏差を用いることで、2乗を含む項がなくなるので、各項のスケールをある程度合わせることができる。
Figure 0007537528000003
α,β(α,β≧0, α+β≦1)は3つの割当指標間のトレードオフを調整するためのパラメータであり、サービス要件等に応じて、サービス提供者、ユーザ、または、NW事業者などが任意に決定する。
(式4)の右辺第1項の「1-α-β」は、その数値が大きいほど「グループ内の平均遅延」を重視するハイパーパラメータである。
(式4)の右辺第2項の「α」は、その数値が大きいほど「グループ内の遅延のばらつき」を重視するハイパーパラメータである。
(式4)の右辺第3項の「β」は、その数値が大きいほど「グループ内の最大遅延」を重視するハイパーパラメータである。なお、右辺第3項のβよりも後の計算式はグループ内の最大遅延の計算式である。
つまり、(式4)または(式5)では、以下のように3つのハイパーパラメータの配分に応じて、3種類の指標の優先度合いを調整できる。
・α=0かつβ=0とした場合は、平均遅延のみを最適化する(事例2:準同期型に適した設定)。
・α≠0かつβ=0(α+β<1)とした場合は(例:α=0.5,β=0)、平均遅延と分散(標準偏差)とを最適化する。
・α=1かつβ=0(α+β=1)とした場合は、分散(標準偏差)のみを最適化する(事例3:公平環境型に適した設定)。
・α=0かつβ≠0(α+β<1)とした場合は、平均遅延と最大遅延とを最適化する。
・α=0かつβ=1(α+β=1)とした場合は、最大遅延のみを最適化する(事例1:完全同期型に適した設定)。
・α≠0かつβ≠0(α+β=1)とした場合は、分散(標準偏差)と最大遅延とを最適化する。
・α≠0かつβ≠0(α+β<1)とした場合は、平均遅延・分散(標準偏差)・最大遅延のすべてを最適化する。
Figure 0007537528000004
なお、割当計算部23は、割当コストcjkを求める計算式として、分散を用いる(式4)の代わりに(式6)を用いてもよいし、標準偏差を用いる(式5)の代わりに(式7)を用いてもよい。
(式6)および(式7)では、3種類のハイパーパラメータ(α,β,γ)を用いている。これにより、パラメータ設定の自由度が高いが,その分扱い(最適なパラメータ設定)が難しくなる。
右辺第1項の「α」は、その数値が大きいほど「グループ内の平均遅延」を重視するハイパーパラメータである。
右辺第2項の「β」は、その数値が大きいほど「グループ内の遅延のばらつき」を重視するハイパーパラメータである。
右辺第3項の「γ」は、その数値が大きいほど「グループ内の最大遅延」を重視するハイパーパラメータである。
一方、(式4)や(式5)では、パラメータが一つ少なく設定範囲も狭い。しかし、割合で重みが設定できることもあり、3種類のハイパーパラメータ(α,β,γ)を用いるよりも、扱いが容易になる可能性が高い。
Figure 0007537528000005
(式8)は、(式3)の目的関数に対応する制約条件(subject to)を示す。制約条件は以下の通りである。
・1グループに割当てられるDCは1個以下である。
・収容されるユーザ数が各DCの容量を超えない。
・各ユーザの実際の遅延が遅延要件を満たす。
以上、(式3)~(式8)として定式化した問題は、組み合わせ最適化問題であり、大域的最適解を求めるためには、割当計算部23は、すべての組み合わせを調査(総当たり計算)する必要がある。このときの本問題の計算量は、グループ数をn、DC数をmとして計算量オーダ(mのn乗)であり膨大である。
そこで、割当計算部23が総当たり計算の代わりに用いる近似アルゴリズムとして、貪欲法(greedy algorithm)と、局所探索法とを順に説明する。割当計算部23は、貪欲法を単独で用いる、または、貪欲法と局所探索法とを併用する。これにより、総当たり計算で求まる最適解(または最適解に近いスコアの準最適解)を、総当たり計算よりも少ない計算量で求めることができる。
図4は、貪欲法のメイン処理を示すフローチャートである。なお、貪欲法とは、1つの大きな問題を複数の小さな問題に分割し、小さな問題を個別に評価して評価値の高い候補を採用する手法である。
割当計算部23は、リクエスト受信部21からのリクエストと、NWデータ収集部22からのNWデータとをもとに、図6で後記するコストテーブルを作成する(S101)。割当計算部23は、S101のコストテーブルの各グループについて、コストの最小値を算出する(S102)。
割当計算部23は、コストテーブルの各グループについてコストの最小値について昇順ソートする(S103)。
割当計算部23は、グループの変数jに初期値1を代入する(S104)。
ここで、割当計算部23は、グループjをコストテーブルのグループ数まで1つずつ順番に選択するループを実行し(S105~S107)、このループ内でグループjにDC割当を行うサブルーチン(図5)を呼び出す(S106)。
なお、S106の処理において、あるユーザの遅延要件を満たせるような割当先DCが存在しないとき、もしくはDCのキャパシティが十分でない場合は、割当できないグループが発生する可能性がある。
図5は、図4の貪欲法のサブルーチン処理(S106)を示すフローチャートである。
割当計算部23は、コストテーブルの第jグループ行を読み込み(S111)、その中でコストが最小となるDCに割当を試みる(S112)。
割当計算部23は、ユーザの遅延要件を満たし(S113,Yes)、かつ、DCの容量が充分にある(S114,Yes)場合に、グループjをそのDCに割り当てる(S115)。
一方、(S113,No)、または、(S114,No)の場合は、割当計算部23は、そのDCを第jグループのコストテーブルから削除する(S116)。
図6は、図4、図5の貪欲法の処理例を示す説明図である。
説明をわかりやすくするため、図6では以下の問題設定とする。
・6個のグループ(G1-G6)を3個のDC(DC1-DC3)に割り当てたい。
・各DCは2グループまで割当可能である。なお、本来のCkの単位はユーザ数であるが、ここでは簡単のためグループ数で指定した。
・簡単のため、ユーザの遅延要件は考えない(つまりD=∞)。
・平均遅延のみを考慮するため、α=β=0とする。もちろん他のパラメータ設定を用いてもよい。
コストテーブル201は、グループjをDCkに収容した場合の割当コストcjkについて、グループjを行としDCkを列としたときの2次元のテーブルである。割当計算部23は図4のS101でコストテーブル201を作成する。そして、割当計算部23は、コストテーブル201を最小値で昇順ソートした結果をコストテーブル202とする(S103)。
DC割当テーブル211~217は、コストテーブル202をもとにした割当計算部23の計算結果「xjk」をテーブル形式にしたものである。例えば、DC割当テーブル214では、DC1に「G4,G2」という2グループが割り当てられ、DC2にはグループが未割当であり(記号「-」)、DC3に「G5」という1グループが割り当てられている。
以下の手順により、割当計算部23は、コストテーブル202の上位に位置するグループから順に、S106のサブルーチンを呼び出すことで各グループを各DCに割り当てる。
(第1行のG4)割当計算部23は、G4をコスト最小(=6.0)となるDC1に割り当てる(DC割当テーブル211→DC割当テーブル212)。
(第2行のG2)割当計算部23は、G2をコスト最小となるDC1に割り当てる(DC割当テーブル212→DC割当テーブル213)。
(第3行のG5)割当計算部23は、G5をコスト最小となるDC3に割り当てる(DC割当テーブル213→DC割当テーブル214)。
(第4行のG6)割当計算部23は、G6をコスト最小となるDC1に割り当てようとするも、DC1は容量不足である。よって、割当計算部23は、G6をコストが2番目に小さいDC3に割り当てる(DC割当テーブル214→DC割当テーブル215)。
(第5行のG3)割当計算部23は、G3をコスト最小となるDC2に割り当てる(DC割当テーブル215→DC割当テーブル216)。
(第6行のG1)割当計算部23は、G1をコスト最小となるDC2に割り当てる(DC割当テーブル216→DC割当テーブル217)。
以上、図4~図6を参照して貪欲法について説明した。
以下では、貪欲法のアルゴリズムを詳細に説明する疑似コードを例示する。この疑似コードは、代入「A←1」(変数Aに値1を代入)、繰り返し制御「for~end for、while~end while」、分岐制御「if~end if」などを行う手続型言語である。また、疑似コードの行頭には、説明用の行番号(L01,L02,…)を付加した。
各関数(function)は、「Input:~」で与えられた入力変数をもとに、所定の計算を行い、その計算結果を「Output:~」で示す出力変数として応答(return)する。
まず、Greedy_Allocation関数を示す。
Input: α,β,wij,dik,Di, and Ck for ∀i∈I,∀j∈J, and ∀k∈K
Output: xjk for ∀j∈J and ∀k∈K
L01: function Greedy_Allocation(α,β,wij,dik,Di,Ck)
L02: for all i∈I,j∈J,k∈K do
L03: w[i][j]←wij,d[i][k]←dik
L04: D[i]←Di,C[k]←Ck
L05: Calculate cjkusing (式4)~(式7)
L06: c[j][k]←cjk
L07: end for
L08: for all j∈J do
L09: J[j]←j,L[j]←minkc[j][k]
L10: end for
L11: Sort J in ascending order of L
L12: X←GroupDC_Mapping(J,c,w,d,D,C)
L13: return X
L14: end function
Greedy_Allocation関数(α,β,wij,dik,Di,Ck)では、αおよびβを用いてコスト表を作成し(L05)、表の中で最小コストが小さいグループから優先的に(L11)DC割当を行うための前処理を行う。なお、実際のDC割当については引数wij,dik,Di,Ckと、ここで作成されたコスト表cおよびコスト表を参照する順列Jを引数としたGroupDC_Mapping関数を呼び出して実行する(L12)。
図4のフローチャートでは、S100がL01に、S101がL05に、S102がL09に、S103がL11に、S106がL12に、それぞれ対応する。
次に、GroupDC_Mapping関数を示す。
L16: function GroupDC_Mapping(J,c,w,d,D,C)
L17: for j'=1 to size(J) do
L18: j←J[j']
L19: Discover Ijfrom I using w
L20: X[j]←DC_Selection(c[j],Ij,d,D,C)
L21: if X[j]=∞ then
L22: D[i]←∞ for ∀i∈Ij
L23: X[j]←DC_Selection(c[j],Ij,d,D,C)
L24: end if
L25: end for
L26: return X
L27: end function
GroupDC_Mapping関数(J,c,w,d,D,C)では、与えられたコスト表cを順列Jにしたがって(L17)順に参照し(すなわちコスト表のある行c[j]を抽出し)、各グループにDCを割り当てるためのDC_Selection関数を順次呼び出して割当を得る(L20,L23)。仮にDC_Selection関数がユーザの遅延要件Dを満たすことのできるDCが存在しないことを示した場合には、遅延要件Dを無視して割当を行う。
なお、L20,L23のX[j]←kは、割り当て有なら値1(xjk’=1 if k’=k)、または、割り当て無なら値0(xjk’=0 otherwise)と等価である。
図4のフローチャートでは、S104、S105、および、S107がL17~L25のfor文に、S112がL20およびL23に、それぞれ対応する。
さらに、DC_Selection関数を示す。
L29: function DC_Selection(c[j],Ij,d,D,C)
L30: tmp←c[j]
L31: while True do
L32: k←arg mink'tmp[k']
L33: if tmp[k]=∞ then
L34: return ∞
L35: end if
L36: if d[i][k]≦D[i] for ∀i∈I and |Ij|≦C[k] then
L37: C[k]←C[k]-|Ij|
L38: return k
L39: else
L40: tmp[k]←∞
L41: end if
L42: end while
L43: end function
DC_Selection関数(c[j],Ij,d,D,C)では、グループメンバIjについて、各ユーザの遅延要件Dを満たし、残容量Cがグループサイズ|Ij|より大きいDCの中から(L36)、遅延コストc[j][k]が最も小さいDCkを割当先として選択する(L37,L38)。
図5のフローチャートでは、S113およびS114がL36に、S115がL37に、S116がL40に、それぞれ対応する。なお、L40の「tmp[k]←∞」とは、グループコストを無限大にすることで、そのグループを割り当て対象から削除することと等価である。
以上説明したように、割当計算部23は、貪欲法を単独で用いる場合は、Greedy_Allocation関数を呼び出せばよい。これにより、グループをソートし、コストが小さいものから優先的に割り当てていくことで、少ない計算時間で高精度な最適化が可能となる。一方、割当計算部23は、提案法と局所探索法とを組み合わせることで、さらに良い解を求めてもよい。
以下は、提案法と局所探索法とを組み合わせたアルゴリズムの疑似コードである。
Input: N,α,β,wij,dik,Di, and Ck
Output: xjk
M01: X←Greedy_Allocation(α,β,wij,dik,Di,Ck)
M02: Calculate the total cost tx of X like (式3)
M03: n←0
M04: while n++<N do
M05: Randomize the order of J
M06: X'←GroupDC_Mapping(J,c,w,d,D,C)
M07: Calculate the total cost t'xof X'
M08: if t'x<txthen
M09: X←X',tx←t'x
M10: end if
M11: end while
この疑似コード(M01~M11)では、まず、割当計算部23は、Greedy_Allocation関数を実行する(M01)。次に、割当計算部23は、GroupDC_Mapping関数を一定回数(M04のN回)実行する(M06)。このとき、「コストテーブルのソート」の部分で、割当計算部23は、グループの順列をランダムに変更する(M05)。そして、割当計算部23は、N回の繰り返しの中で最も全体のコストが低かった割当を選択する(M08~M10)。
この疑似コード(M01~M11)により、GroupDC_Mapping関数をN回繰り返す旨の探索回数の追加により、計算コストは増えるものの、貪欲法よりも割当コストがさらに小さくなる可能性がある。なお、探索回数Nはサービス提供者や分散環境運用者が任意に設定する。
ここで、リクエスト受信部21に与えられるグループ数に着目して、以下のように分類する。
(分類1)オフライン割当は、割り当てるべきすべてのグループがあらかじめリクエスト受信部21に与えられる場合である。
(分類2)バッチ割当は、割り当てるべきグループの一部(複数のグループ)が逐次リクエスト受信部21に与えられ、その都度(比較的小規模な)オフライン割当を実行する場合である。例えば大規模システムでは、例えば10秒の間にいくつものグループが作成されるため、この場合は10秒ごとにバッチ割当をおこなうニーズが出てくる。
(分類3)オンライン割当は、割り当てるべきグループが一つずつリクエスト受信部21に与えられ、その都度割当を実行する場合である。例えば、バッチ処理を実行するほど頻繁にグループが形成されない場合や、グループ形成から割当完了までの時間を可能な限り小さくしたい場合などが挙げられる。
これまで説明したGreedy_Allocation関数は、リクエスト受信部21にまとまった数のグループが与えられた場合(オフライン割当やバッチ処理)を想定している。一方、リクエスト受信部21に割り当てるべきグループが逐次やってくる場合には、以下に示すオンライン割当の疑似コードを実行すればよい。
Input: α,β,wij,dik,Di, and Ck for ∀i∈I,∀j∈J, and ∀k∈K
Output: xjk for ∀j∈J and ∀k∈K
N01: while True do
N02: if receive an offload request for group j then
N03: Calculate cjkfor ∀k∈K
N04: c[k]←cjk
N05: X[j]←DC_Selection(c[j],Ij,d,D,C)
N06: if X[j]=∞ then
N07: D[i]←∞ for ∀i∈Ij
N08: X[j]←DC_Selection(c[j],Ij,d,D,C)
N09: end if
N10: return X[j]
N11: end if
N12: end while
この疑似コード(N01~N12)では、まず、割当計算部23は、グループjの割当リクエストを受信したとき(N02)、そのグループjと各DC間の割当コストcjkをすべて計算し(N03)、グループjについてのみのコストテーブルを作成する(N04)。
そして、割当計算部23は、グループjについてDC_Selection関数を実行する(N05,N08)。このとき、割当計算部23は、各DCの容量Ck=C[k]を常にモニタしておき、グループjがDCを離れたときはその分容量を増やす。
以下、(分類1)~(分類3)それぞれの計算量を示すため、各分類の関数の呼び出す回数を例示する。
(分類1)オフライン割当として、グループ数=10がいっぺんに与えられる場合は、以下の通りである。
(分類1)で貪欲法だけを実行する場合は、Greedy_Allocation関数を1回、GroupDC_Mapping関数を1回、DC_Selection関数を10回以上実行する。なお、DC_Selection関数を呼び出す回数が10回を超える場合は、ユーザの遅延要件を満たせるDCがなかった場合(L20行目の返り値が∞となった場合)に、L23行目に移って再びDC_Selection関数が呼び出される場合である。
(分類1)で貪欲法と局所探索とを併せて実行する場合は、Greedy_Allocation関数を1回実行した後、GroupDC_Mapping関数およびDC_Selection関数をワンセットとしてN回繰り返す(Greedy_Allocation関数を1回、GroupDC_Mapping関数を1+N回、DC_Selection関数を10×(1+N)回以上)。Nはオペレータ等が任意に設定可能なパラメータである。
(分類2)バッチ割当として、グループ数=10が、「グループ数=5」→「グループ数=3」→「グループ数=2」の順に3段階で与えられる場合は、以下の通りである。
(分類2)で貪欲法だけを実行する場合は、以下のようになる。
・Greedy_Allocation関数を1回(グループ数5のとき)+1回(グループ数3のとき)+1回(グループ数2のとき)で計3回実行する。
・GroupDC_Mapping関数を1回(グループ数5のとき)+1回(グループ数3のとき)+1回(グループ数2のとき)で計3回実行する。
・DC_Selection関数を5回以上(グループ数5のとき)+3回以上(グループ数3のとき)+2回以上(グループ数2のとき)で計10回以上実行する。
(分類2)で貪欲法と局所探索とを併せて実行する場合は、Greedy_Allocation関数を各1回ずつ行った後、GroupDC_Mapping関数およびDC_Selection関数をワンセットとして各バッチ処理時にN回ずつ繰り返すことになるため、以下のようになる。
・Greedy_Allocation関数を各1回ずつ計3回実行する。
・GroupDC_Mapping関数を各(1+N)ずつ×3回実行する。
・DC_Selection関数を5×(1+N)回以上+3×(1+N)回以上+2×(1+N)回以上で計10×(1+N)回以上実行する。
(分類3)オンライン割当として、グループ数=10が1つずつ与えられる場合は、以下のようになる。
(分類3)で貪欲法だけを実行する場合は、DC_Selection関数を1回or2回ずつ10回呼び出されるため計10回以上実行する。
(分類3)で貪欲法と局所探索とを併せて実行することは不可である。1つのグループしかない場合は、割当順序が関係ないため、局所探索をおこなう余地がないためである。
[効果]
本発明のリソース割当装置2は、複数のユーザ端末4から構成されるグループごとのステートをグループ内で共有させるためのステート管理部5を、分散クラウド環境8に配備された複数のDC3のうちのいずれかに割り当てる旨のリクエストを受信するリクエスト受信部21と、
グループが要求する要件に応じた割当指標を用いて、ステート管理部5を各DC3に割り当てるときの割当コストを計算し、その割当コストに従ってステート管理部5の割当先のDC3を決定する割当計算部23とを有することを特徴とする。
これにより、グループのメンバであるユーザ端末4が、そのグループでステート管理部5を共有して行うアプリケーションに適した割当先にステート管理部5を割り当てることができる。よって、複数のユーザが形成したグループごとの要件に沿ったリソース割当を行うことができる。
本発明は、割当計算部23が、グループを構成する各ユーザ端末4とDC3との間の遅延時間を求め、それらの求めた遅延時間の平均遅延をステート管理部5の割当指標とすることを特徴とする。
これにより、サバイバルゲームなどの多人数が参加するアプリケーションにおいて、その多数が満足する割当先を発見できる。
本発明は、割当計算部23が、グループを構成する各ユーザ端末4とDC3との間の遅延時間を求め、それらの求めた遅延時間の最大遅延をステート管理部5の割当指標とすることを特徴とする。
これにより、対戦格闘ゲームなどのグループに属するすべてのユーザの通信で厳密な同期を要するアプリケーションに適した割当先を発見できる。
本発明は、割当計算部23が、グループを構成する各ユーザ端末4とDC3との間の遅延時間を求め、それらの求めた遅延時間の分散または標準偏差をステート管理部5の割当指標とすることを特徴とする。
これにより、レースゲームなどのユーザ間のプレイ環境の公平性が特に求められるリアルタイムアプリケーションに適した割当先を発見できる。
本発明は、割当計算部23が、リクエスト受信部21が受信したリクエストの各グループの割当コストの総和を最小化する組み合わせ最適化問題に対して、貪欲法を用いた近似アルゴリズムにより、各グループの割当先を計算することを特徴とする。
これにより、組み合わせ最適化問題に対して総当たり計算よりも少ない計算量で、妥当な割当先を計算することができる。
本発明は、割当計算部23が、リクエスト受信部21が受信したリクエストの各グループの割当コストの総和を最小化する組み合わせ最適化問題に対して、貪欲法と局所探索法とを併用する近似アルゴリズムにより、各グループの割当先を計算することを特徴とする。
これにより、貪欲法を単独で用いる場合と比べて、さらに良い割当先を発見する可能性が高まる。
1 サービス提供装置
2 リソース割当装置
3 DC(データセンタ)
4 ユーザ端末
5 ステート管理部
8 分散クラウド環境
9 オンラインシステム
21 リクエスト受信部
22 NWデータ収集部
23 割当計算部
24 制御部

Claims (8)

  1. 複数のユーザ端末から構成されるグループごとのステートをグループ内で共有させるためのステート管理部を、分散クラウド環境に配備された複数のデータセンタのうちのいずれかに割り当てる旨のリクエストを受信するリクエスト受信部と、
    前記グループが要求する要件に応じた割当指標を用いて、前記ステート管理部を前記各データセンタに割り当てるときの割当コストを計算し、その割当コストに従って前記ステート管理部の割当先の前記データセンタを決定する割当計算部とを有することを特徴とする
    リソース割当装置。
  2. 前記割当計算部は、グループを構成する前記各ユーザ端末と前記データセンタとの間の遅延時間を求め、それらの求めた遅延時間の平均遅延を前記ステート管理部の割当指標とすることを特徴とする
    請求項1に記載のリソース割当装置。
  3. 前記割当計算部は、グループを構成する前記各ユーザ端末と前記データセンタとの間の遅延時間を求め、それらの求めた遅延時間の最大遅延を前記ステート管理部の割当指標とすることを特徴とする
    請求項1に記載のリソース割当装置。
  4. 前記割当計算部は、グループを構成する前記各ユーザ端末と前記データセンタとの間の遅延時間を求め、それらの求めた遅延時間の分散または標準偏差を前記ステート管理部の割当指標とすることを特徴とする
    請求項1に記載のリソース割当装置。
  5. 前記割当計算部は、前記リクエスト受信部が受信したリクエストの各グループの割当コストの総和を最小化する組み合わせ最適化問題に対して、貪欲法を用いた近似アルゴリズムにより、各グループの割当先を計算することを特徴とする
    請求項1ないし請求項4のいずれか1項に記載のリソース割当装置。
  6. 前記割当計算部は、前記リクエスト受信部が受信したリクエストの各グループの割当コストの総和を最小化する組み合わせ最適化問題に対して、貪欲法と局所探索法とを併用する近似アルゴリズムにより、各グループの割当先を計算することを特徴とする
    請求項1ないし請求項4のいずれか1項に記載のリソース割当装置。
  7. リソース割当装置は、リクエスト受信部と、割当計算部とを有しており、
    前記リクエスト受信部は、複数のユーザ端末から構成されるグループごとのステートをグループ内で共有させるためのステート管理部を、分散クラウド環境に配備された複数のデータセンタのうちのいずれかに割り当てる旨のリクエストを受信し、
    前記割当計算部は、前記グループが要求する要件に応じた割当指標を用いて、前記ステート管理部を前記各データセンタに割り当てるときの割当コストを計算し、その割当コストに従って前記ステート管理部の割当先の前記データセンタを決定することを特徴とする
    リソース割当方法。
  8. コンピュータを、請求項1ないし請求項6のいずれか1項に記載のリソース割当装置として機能させるためのリソース割当プログラム。
JP2022581105A 2021-02-12 2021-02-12 リソース割当装置、リソース割当方法、および、リソース割当プログラム Active JP7537528B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/005175 WO2022172389A1 (ja) 2021-02-12 2021-02-12 リソース割当装置、リソース割当方法、および、リソース割当プログラム

Publications (2)

Publication Number Publication Date
JPWO2022172389A1 JPWO2022172389A1 (ja) 2022-08-18
JP7537528B2 true JP7537528B2 (ja) 2024-08-21

Family

ID=82838538

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022581105A Active JP7537528B2 (ja) 2021-02-12 2021-02-12 リソース割当装置、リソース割当方法、および、リソース割当プログラム

Country Status (3)

Country Link
US (1) US20240126612A1 (ja)
JP (1) JP7537528B2 (ja)
WO (1) WO2022172389A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115412563B (zh) * 2022-08-22 2024-03-22 西南交通大学 一种边缘设备资源分配方法、装置、设备及可读存储介质

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI98973C (fi) * 1994-11-22 1997-09-10 Nokia Telecommunications Oy Menetelmä ryhmätietojen ylläpitämiseksi matkaviestinjärjestelmässä ja matkaviestinjärjestelmä
US8370490B2 (en) * 2010-07-01 2013-02-05 International Business Machines Corporation Cloud service cost-optimal data center assignment
US8869157B2 (en) * 2012-06-21 2014-10-21 Breakingpoint Systems, Inc. Systems and methods for distributing tasks and/or processing recources in a system
US11086723B2 (en) * 2019-01-31 2021-08-10 Rubrik, Inc. Distributed streaming parallel database restores
US10838759B2 (en) * 2019-02-04 2020-11-17 Verizon Patent And Licensing Inc. Elastic container platform architecture
US11650851B2 (en) * 2019-04-01 2023-05-16 Intel Corporation Edge server CPU with dynamic deterministic scaling
US11010195B2 (en) * 2019-07-19 2021-05-18 International Business Machines Corporation K-tier architecture scheduling
US12443831B1 (en) * 2020-01-23 2025-10-14 Nvidia Corporation Neural network execution streams
US11593112B2 (en) * 2020-03-06 2023-02-28 Microsoft Technology Licensing, Llc Automated runtime configuration for dataflows
US12530237B2 (en) * 2020-09-17 2026-01-20 Ntt, Inc. Device, system, method, and computer program product for dynamic workload offloading and accelerator allocation
US20230109096A1 (en) * 2020-12-18 2023-04-06 Strong Force Vcn Portfolio 2019, Llc Maintenance Prediction and Health Monitoring for Robotic Fleet Management
US11200096B1 (en) * 2021-03-26 2021-12-14 SambaNova Systems, Inc. Resource allocation for reconfigurable processors

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
佐藤諒平ほか,ICNにおける低コストなキャッシュ配置最適化手法の一検討,電子情報通信学会技術研究報告,日本,一般社団法人電子情報通信学会,2020年02月27日,Vol.119 No.460,455~460ページ

Also Published As

Publication number Publication date
JPWO2022172389A1 (ja) 2022-08-18
US20240126612A1 (en) 2024-04-18
WO2022172389A1 (ja) 2022-08-18

Similar Documents

Publication Publication Date Title
CN111400001B (zh) 一种面向边缘计算环境的在线计算任务卸载调度方法
CN111669444A (zh) 基于边缘计算的云游戏服务质量增强方法及系统
KR102352375B1 (ko) 유전 알고리즘 기반의 엣지 컴퓨팅 최적화 장치 및 방법
US20100113159A1 (en) Method and apparatus for partitioning virtual worlds using prioritized topic spaces in virtual world systems
CN116319522B (zh) 一种算力网络中的多路径转发方法及系统
Jia et al. Delay-sensitive multiplayer augmented reality game planning in mobile edge computing
CN117640413B (zh) 雾计算中基于强化学习的微服务和数据库联合部署方法
US20210006459A1 (en) Network and Method for Servicing a Computation Request
CN113742048B (zh) 一种酒店云服务系统及其服务方法
Lakshmi et al. An adaptive multi-cloud offloading using hierarchical game-theoretic approach
CN111211984A (zh) 优化cdn网络的方法、装置及电子设备
Aloqaily et al. Trustworthy cooperative UAV-based data management in densely crowded environments
CN114638415A (zh) 一种基于Geohash索引的实时空间众包任务分配方法
JP2017037445A (ja) サーバ管理装置およびサーバ管理方法
CN116668354B (zh) 一种基于数字孪生的sdn路由优化方法
WO2022172389A1 (ja) リソース割当装置、リソース割当方法、および、リソース割当プログラム
Zou et al. A multipath routing approach for tile-based virtual reality video streaming based on sdn
CN118394486B (zh) 一种算力网络任务调度方法及装置
CN116633932B (zh) 一种云计算资源池动态调度系统
CN118796443A (zh) 资源调度方法、装置与系统、电子设备、存储介质与产品
Kumari et al. QoS CBSC: an enhanced metaheuristic strategy on QoS-cloud-based service in cloud
Morillo et al. An ACS-based partitioning method for distributed virtual environment systems
Morillo et al. A comparison study of modern heuristics for solving the partitioning problem in distributed virtual environment systems
CN114466385B (zh) 基于用户移动感知的无缝服务迁移方法及计算机系统
Selvakumar et al. A novel approach in load balancing for dynamic cloud environment using ACO

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230612

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240709

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240722

R150 Certificate of patent or registration of utility model

Ref document number: 7537528

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350