[1.実施形態]
図1は、実施形態に係るネットワークシステム10の全体構成を示すブロック図である。ネットワークシステム10は、例えば、通信の品質が制御されるネットワーク300と、ネットワーク300に接続される端末装置100と、端末装置100にネットワーク300を介して所定のサービスを提供するサーバ装置200とを有する。所定のサービスは、特に限定されないが、例えば、IP(Internet Protocol)電話サービス、動画配信サービス及びオンラインゲームサービス等であってもよい。
なお、本明細書における「装置」という用語は、回路、デバイス又はユニット等の他の用語に読替えてもよい。また、ネットワーク300と端末装置100との接続等は、例えば、複数の要素間を互いに通信可能にする接続であればよく、有線及び無線の一方を用いた接続であってもよいし、有線及び無線の両方を用いた接続であってもよい。例えば、サーバ装置200は、図示しないインターネットを介して、ネットワーク300に接続されてもよい。
ネットワーク300は、例えば、通信事業者により管理される移動体通信網等の電気通信回線であり、有線ネットワーク及び無線ネットワークの一方又は両方を含む。例えば、ネットワーク300は、端末装置100及びサーバ装置200等に通信サービスを提供する。通信サービスは、例えば、3G(3rd generation mobile communication system)、4G(4th generation mobile communication system)及び5G(5th generation mobile communication system)等の移動通信システムの無線通信サービスであってもよいし、有線通信サービスであってもよい。あるいは、通信サービスは、無線通信サービス及び有線通信サービスの両方を含むサービスであってもよい。
例えば、ネットワーク300は、通信サービスにより提供される通信の品質を制御する品質制御を実行する品質制御装置302を有する。図1では、図を見やくするため、ネットワーク300に含まれる複数のノード(装置)のうち、品質制御装置302以外のノード(例えば、基地局等)の記載を省略している。以下では、品質制御は、QoS(Quality of Service)制御とも称される。
QoS制御は、例えば、帯域制御、低遅延制御及び優先制御等を含む。帯域制御では、例えば、ネットワーク300における通信の帯域が制御される。帯域の制御は、帯域の下限値が設定される帯域保証であってもよいし、帯域の上限値が設定される帯域制限であってもよい。同様に、低遅延制御は、例えば、遅延の上限値が設定されている遅延保証であってもよいし、遅延の下限値が設定される遅延制限であってもよい。優先制御では、例えば、特定の通信に係るパケット(通信を行う際の転送単位のデータ)が優先して転送される。例えば、ネットワーク300上を流れるパケットに優先度が付けられ、優先度が他のパケットより高いパケットは、他のパケットよりも先に処理される。
本実施形態では、QoS制御が端末装置100毎に実行可能である場合を想定する。なお、QoS制御は、端末装置100により要求されてもよいし、サーバ装置200により要求されてもよい。例えば、端末装置100がQoS制御の実行を要求する場合、端末装置100が「情報処理装置」に該当し、サーバ装置200が「他の情報処理装置」に該当する。また、例えば、サーバ装置200がQoS制御の実行を要求する場合、サーバ装置200が「情報処理装置」に該当し、端末装置100が「他の情報処理装置」に該当する。なお、本実施形態では、端末装置100がQoS制御の実行を要求する場合を想定する。
端末装置100としては、例えば、任意の情報処理装置を採用することができ、パーソナルコンピュータ等の据置型の情報機器であってもよいし、スマートフォン、ノートパソコン、ウェアラブル端末及びタブレット端末等の可搬型の情報端末であってもよい。以下の説明では、端末装置100としてスマートフォンを想定する。
端末装置100は、例えば、処理装置110、記憶装置160、通信装置170、入力装置180及び出力装置190を具備するコンピュータシステムにより実現される。端末装置100の複数の要素は、情報を通信するための単体又は複数のバスにより相互に接続される。また、端末装置100の複数の要素の各々は、単数又は複数の機器により構成されてもよい。また、端末装置100の一部の要素は、省略されてもよい。通信装置170は、「通信部」の一例である。
処理装置110は、端末装置100の全体を制御するプロセッサであり、例えば、単数又は複数のチップにより構成される。処理装置110は、例えば、周辺装置とのインタフェース、演算装置及びレジスタ等を含む中央処理装置(CPU:Central Processing Unit)により構成される。なお、処理装置110の機能の一部又は全部を、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、及び、FPGA(Field Programmable Gate Array)等のハードウェアによって実現してもよい。処理装置110は、各種の処理を並列的又は逐次的に実行する。
処理装置110は、例えば、制御プログラムPRos1を記憶装置160から読み出し、読み出した制御プログラムPRos1を実行することにより、端末装置100の全体を制御する制御部120として機能する。制御部120としては、例えば、OS(Operating System)が該当する。また、処理装置110は、所定のサービスを利用するためのアプリケーションプログラムPRap10を記憶装置160から読み出し、読み出したアプリケーションプログラムPRap10を実行することにより、要求部140等として機能する。なお、図1では、アプリケーションプログラムPRap10の実行により実現される機能ブロックのうち、QoS制御の要求に関する要求部140以外の機能ブロックの記載を省略している。制御プログラムPRos1及びアプリケーションプログラムPRap10は、他の装置から送信されてもよい。
要求部140は、例えば、QoS制御の開始又は終了を品質制御装置302に要求する。例えば、要求部140は、サーバ装置200が端末装置100に所定のサービスを提供する場合、端末装置100が享受する所定のサービスの品質を向上させるために、端末装置100とサーバ装置200との通信に対するQoS制御の実行を品質制御装置302に要求する。なお、要求部140は、例えば、端末装置100とサーバ装置200との通信に対するQoS制御が実行されても、所定のサービスの品質が向上しない場合、QoS制御の実行を要求しなくてもよい。
例えば、要求部140は、端末装置100とサーバ装置200との通信に対するQoS制御の効果が所定のサービスの品質向上に反映されないと判定した場合、QoS制御の実行を要求しない。換言すれば、要求部140は、端末装置100とサーバ装置200との通信に対するQoS制御の効果が所定のサービスの品質向上に反映されると判定した場合、QoS制御の実行を品質制御装置302に要求する。
QoS制御の効果が所定のサービスの品質向上に反映されると判定される場合としては、例えば、所定のサービスの提供及び享受の少なくとも一方のために使用されるリソースを調整するための複数の調整処理のうちの一部又は全部が実行可能である場合が該当する。すなわち、要求部140は、サーバ装置200が端末装置100に所定のサービスを提供する場合、複数の調整処理のうちの一部又は全部が実行可能であることを条件として、端末装置100とサーバ装置200との通信の品質を制御するQoS制御の実行を要求する。
このように、本実施形態では、QoS制御の効果が所定のサービスの品質向上に反映されると判定される場合、QoS制御の実行が要求され、QoS制御の効果が所定のサービスの品質向上に反映されないと判定される場合、QoS制御の実行は要求されない。これにより、本実施形態では、端末装置100とサーバ装置200との通信に対するQoS制御を効果的に実行することができる。すなわち、本実施形態では、端末装置100とサーバ装置200との通信に対するQoS制御の効果が低下することを抑制することができる。
ここで、例えば、所定のサービスの提供のために使用されるリソースとしては、サーバ装置200のハードウェアリソース、及び、ネットワーク300のリソース等が該当する。また、例えば、所定のサービスの享受のために使用されるリソースとしては、端末装置100のハードウェアリソース、及び、ネットワーク300のリソース等が該当する。なお、ネットワーク300のリソースは、所定のサービスの提供及び享受の両方において使用される。また、端末装置100のハードウェアリソースとしては、例えば、処理装置110、記憶装置160及び通信装置170等が該当する。また、サーバ装置200のハードウェアリソースとしては、例えば、後述する処理装置210、記憶装置260及び通信装置270等が該当する。
また、複数の調整処理は、例えば、ネットワーク300のリソースを調整するネットワーク調整処理と、端末装置100及びサーバ装置200の少なくとも一方のハードウェアリソースを調整するハード調整処理とを含む。さらに、複数の調整処理は、例えば、端末装置100及びサーバ装置200の少なくとも一方において実行されるソフトウェアに対する処理であるソフト調整処理を含んでもよい。ソフトウェアは、例えば、所定のサービスに関するアプリケーションプログラムPRap(例えば、アプリケーションプログラムPRap10等)であってもよいし、所定のサービスとは関係ないアプリケーションプログラムPRapであってもよい。
以下では、端末装置100のハードウェアリソースを調整するハード調整処理を、第1ハード調整処理と称し、サーバ装置200のハードウェアリソースを調整するハード調整処理を、第2ハード調整処理と称する場合がある。同様に、以下では、端末装置100において実行されるソフトウェアに対するソフト調整処理を、第1ソフト調整処理と称し、サーバ装置200において実行されるソフトウェアに対するソフト調整処理を、第2ソフト調整処理と称する場合がある。ハード調整処理の詳細は、後述する図3において説明し、ソフト調整処理の詳細は、後述する図4において説明する。
記憶装置160は、処理装置110が読取可能な記録媒体であり、処理装置110が実行する制御プログラムPRos1及びアプリケーションプログラムPRap10を含む複数のプログラム等の各種のデータを記憶する。記憶装置160は、例えば、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、及び、RAM(Random Access Memory)等の少なくとも1つによって構成されてもよい。記憶装置160は、レジスタ、キャッシュ、又は、メインメモリ(主記憶装置)等と呼ばれてもよい。
通信装置170は、サーバ装置200及び品質制御装置302等の他の装置と通信を行うためのモデムチップ等のハードウェア(送受信デバイス)である。通信装置170は、例えば、ネットワークデバイス、ネットワークコントローラ、ネットワークカード、及び、通信モジュール等とも呼ばれる。通信装置170は、例えば、周波数分割複信(FDD:Frequency Division Duplex)及び時分割複信(TDD:Time Division Duplex)の一方又は両方を実現するために、高周波スイッチ、デュプレクサ、フィルタ、及び、周波数シンセサイザ等を含んで構成されてもよい。
入力装置180は、外部からの入力を受け付ける入力デバイス(例えば、キーボード、マウス、マイクロフォン、スイッチ、ボタン、及び、センサ等)である。例えば、入力装置180は、数字及び文字等の符号を処理装置110に入力するための操作と、端末装置100の表示面に表示されるアイコンを選択するための操作とを受け付ける。例えば、端末装置100の表示面に対する接触を検出するタッチパネルが入力装置180として好適である。なお、入力装置180は、ユーザが操作可能な複数の操作子を含んでもよい。
出力装置190は、外部への出力を実施するディスプレイ等の出力デバイスである。出力装置190は、例えば、処理装置110による制御のもとで、画像を表示する。例えば、液晶表示パネル及び有機EL(Electro Luminescence)表示パネル等の各種の表示パネルが出力装置190として好適に利用される。なお、入力装置180及び出力装置190は、一体となった構成(例えば、タッチパネル)であってもよい。また、出力装置190は、スピーカー及びLED(Light Emitting Diode)ランプ等を有する出力デバイスでもよい。
サーバ装置200としては、例えば、任意の情報処理装置を採用することができる。例えば、サーバ装置200は、処理装置210、記憶装置260及び通信装置270を具備するコンピュータシステムにより実現される。
処理装置210は、サーバ装置200の全体を制御するプロセッサであり、上述した端末装置100の処理装置110と同様に構成される。例えば、処理装置210は、制御プログラムPRos2を記憶装置260から読み出し、読み出した制御プログラムPRos2を実行することにより、サーバ装置200の全体を制御する制御部220として機能する。制御部220としては、例えば、OSが該当する。
また、処理装置210は、所定のサービスを提供するためのアプリケーションプログラムPRap20を記憶装置260から読み出し、読み出したアプリケーションプログラムPRap20を実行することにより、サービス提供部230として機能する。サービス提供部230は、例えば、アプリケーションプログラムPRap10を実行している端末装置100に、ネットワーク300を介して、所定のサービスを提供する。なお、制御プログラムPRos2及びアプリケーションプログラムPRap20は、他の装置から送信されてもよい。
記憶装置260は、処理装置210が読取可能な記録媒体であり、処理装置210が実行する制御プログラムPRos2及びアプリケーションプログラムPRap20を含む複数のプログラム等の各種のデータを記憶する。記憶装置260は、上述した端末装置100の記憶装置160と同様に、例えば、ROM、EPROM、EEPROM、及び、RAM等の少なくとも1つによって構成されてもよい。
通信装置270は、端末装置100及び品質制御装置302等の他の装置と通信を行うためのモデムチップ等のハードウェア(送受信デバイス)であり、上述した通信装置170と同様に構成される。
なお、サーバ装置200は、例えば、MEC(Multi-access Edge Computing)を実現するための情報処理装置であってもよい。MECは、例えば、移動体通信網等の電気通信回線において、ユーザにより近い位置にサーバ及びストレージ等のコンピュータシステムを配置する仕組みである。端末装置100に近い位置にサーバ装置200が配置されることにより、通信の遅延時間の低減、及び、ネットワーク300上を流れるパケットの量の低減等が見込まれる。
品質制御装置302は、例えば、端末装置100等からのQoS制御の要求に応じて、端末装置100とサーバ装置200との通信の品質を制御するQoS制御を実行する。品質制御装置302の構成は、後述する図2において説明する。
なお、ネットワークシステム10の構成は、図1に示す例に限定されない。例えば、複数の端末装置100がネットワーク300に接続されてもよいし、複数のサーバ装置200がネットワーク300に接続されてもよい。また、例えば、サーバ装置200は、端末装置100と同様に、入力装置及び出力装置を有してもよい。また、例えば、端末装置100は、補助記憶装置を有してもよい。補助記憶装置は、端末装置100が読取可能な記録媒体であり、例えば、CD-ROM(Compact Disc ROM)等の光ディスク、ハードディスクドライブ、フレキシブルディスク、光磁気ディスク(例えば、コンパクトディスク、デジタル多用途ディスク、及び、Blu-ray(登録商標)ディスク)、スマートカード、フラッシュメモリ(例えば、カード、スティック、及び、キードライブ)、フロッピー(登録商標)ディスク、及び、磁気ストリップ等の少なくとも1つによって構成されてもよい。同様に、サーバ装置200は、補助記憶装置を有してもよい。補助記憶装置は、ストレージと呼ばれてもよい。
図2は、図1に示した品質制御装置302の構成を示すブロック図である。
品質制御装置302としては、例えば、サーバ装置200と同様に、任意の情報処理装置を採用することができる。例えば、品質制御装置302は、品質制御装置302の全体を制御する処理装置310と、各種のデータを記憶する記憶装置360と、他の装置と通信を行うための通信装置370とを具備するコンピュータシステムにより実現される。
処理装置310は、品質制御装置302の全体を制御するプロセッサであり、上述した端末装置100の処理装置110と同様に構成される。例えば、処理装置310は、制御プログラムPRos3を記憶装置260から読み出し、読み出した制御プログラムPRos3を実行することにより、品質制御装置302の全体を制御する制御部320として機能する。制御部320としては、例えば、OSが該当する。
また、処理装置310は、QoS制御を実行するためのアプリケーションプログラムPRap30を記憶装置260から読み出し、読み出したアプリケーションプログラムPRap30を実行することにより、受付部330、応答部340及び実行部350等として機能する。受付部330は、例えば、QoS制御の要求等を受け付ける。また、応答部340は、例えば、QoS制御の要求を承諾するか否かを判定し、判定結果をQoS制御の要求元(例えば、端末装置100)に通知する。実行部350は、例えば、QoS制御を実行する。なお、制御プログラムPRos3及びアプリケーションプログラムPRap30は、他の装置から送信されてもよい。
記憶装置360は、処理装置310が読取可能な記録媒体であり、処理装置310が実行する制御プログラムPRos3及びアプリケーションプログラムPRap30を含む複数のプログラム等の各種のデータを記憶する。記憶装置360は、上述した端末装置100の記憶装置160と同様に、例えば、ROM、EPROM、EEPROM、RAM等の少なくとも1つによって構成されてもよい。
通信装置370は、端末装置100及びサーバ装置200等の他の装置と通信を行うためのモデムチップ等のハードウェア(送受信デバイス)であり、上述した通信装置170と同様に構成される。
なお、品質制御装置302は、単体の装置として実現されてもよいし、相互に別体で構成された複数の装置の集合(すなわち、システム)として実現されてもよい。例えば、QoS制御の要求等を受け付ける機能(例えば、受付部330及び応答部340等)、及び、QoS制御を実行する機能(例えば、実行部350)等が、単体の装置として実現されてもよい。あるいは、QoS制御の要求等を受け付ける機能、及び、QoS制御を実行する機能等が、相互に別体で構成された2つの装置の集合として実現されてもよい。また、品質制御装置302は、QoS制御を実行する複数の装置を有してもよい。
また、品質制御装置302の構成は、図2に示す例に限定されない。例えば、品質制御装置302は、補助記憶装置を有してもよい。また、品質制御装置302は、例えば、図1において説明した入力装置180及び出力装置190と同様な入力装置及び出力装置を有してもよい。
図3は、ハード調整処理の一例を示す説明図である。ハード調整処理は、例えば、通信装置170又は270の調整処理、処理装置110又は210の調整処理、及び、記憶装置160又は260の調整処理等を含む。
図3に示す例では、QoS制御が要求される場合に実行されるハード調整処理は、QoS制御の品質モード(例えば、低遅延、高速大容量及び低速等)に基づいて、選択される。品質モードとしては、例えば、他の品質モードに比べて通信の遅延が小さい低遅延モード、他の品質モードに比べて大容量のデータを高速に転送可能な高速大容量モード、及び、他の品質モードに比べて通信速度が遅い低速モード等が該当する。例えば、低遅延モードのQoS制御では、遅延の上限値が設定される遅延保証の低遅延制御が実行されてもよい。また、例えば、高速大容量モードのQoS制御では、帯域の下限値が設定される帯域保証の帯域制御が実行されてもよい。また、例えば、低速モードのQoS制御では、帯域の上限値が設定される帯域制限が実行されてもよい。なお、品質モードは、例えば、端末装置100により指定されてもよいし、サーバ装置200等のサーバにより指定されてもよい。あるいは、品質モードは、ネットワーク300に含まれる装置(品質制御装置302とは別の図示しない装置)により指定されてもよい。また、品質モードの指定は、例えば、QCI(QoS Class Identifier)を指定することであってもよい。また、品質モードは、上述の例に限定されない。例えば、品質モードは、ベストエフォートによる制御が行われるベストエフォートモードを含んでもよい。
図3では、第1ハード調整処理(通信装置170、処理装置110及び記憶装置160の各々の調整処理)及び第2ハード調整処理(通信装置270、処理装置210及び記憶装置260の各々の調整処理)のうちの第1ハード調整処理を中心に説明する。
通信装置170の調整処理としては、例えば、品質モードが低遅延モードの場合、データの送信間隔を所定時間より短くする処理、及び、データの送信サイズを所定サイズより小さくする処理等が該当する。所定時間及び所定サイズは、例えば、低遅延モードにおいて保証される遅延時間等に基づいて決定されてもよい。品質モードが高速大容量モードの場合、通信装置170の調整処理は、実行されなくてもよい。また、品質モードが低速モードの場合、通信装置170の調整処理としては、例えば、データの送信間隔を所定時間より長くする処理、及び、データの送信サイズを所定サイズより大きくする処理等が該当する。所定時間及び所定サイズは、例えば、低速モードにおいて制限される帯域等に基づいて決定されてもよい。
処理装置110の調整処理としては、例えば、品質モードが低遅延モード又は高速大容量モードの場合、クロック周波数(例えば、処理装置110の動作周波数)を所定周波数より高くする処理、マルチスレッド処理、GPUの呼び出し等が該当する。所定周波数は、例えば、所定のサービスを享受するために必要な動作周波数の下限であってもよい。また、マルチスレッド処理は、例えば、QoS制御の対象となるアプリケーションプログラムPRapをマルチスレッド処理により実行することであってもよい。また、GPUの呼び出しは、例えば、画像処理等を実行するモジュールをCPUからGPUに変更することであてもよい。また、品質モードが低速モードの場合、処理装置110の調整処理としては、例えば、クロック周波数を所定周波数より低くする処理及びシングルスレッド処理等が該当する。所定周波数は、例えば、低速モードにおいて制限される帯域等に基づいて決定されてもよい。また、シングルスレッド処理は、例えば、QoS制御の対象となるアプリケーションプログラムPRapをシングルスレッド処理により実行することであってもよい。
記憶装置160の調整処理としては、例えば、品質モードが高速大容量モードの場合、スワップメモリの利用、不要なデータの削除、及び、他処理のメモリ消去等が該当する。他処理のメモリ消去は、例えば、QoS制御の対象となるアプリケーションプログラムPRap以外のアプリケーションプログラムPRapの処理に使用されたメモリ領域の消去であってもよい。記憶装置160の調整処理により確保されるメモリの空き容量は、例えば、所定のサービスを享受するために必要なメモリの空き容量の下限であってもよい。また、品質モードが低遅延モード又は低速モードの場合、記憶装置160の調整処理は、実行されなくてもよい。
なお、第1ハード調整処理に含まれる処理は、図3に示す例に限定されない。例えば、第1ハード調整処理は、図3に示した処理の代わりに、図3に示した処理以外の処理を含んでもよい。あるいは、第1ハード調整処理は、図3に示した処理の一部又は全部と、図3に示した処理以外の処理とを含んでもよい。図3に示した処理以外の処理は、例えば、処理装置110が複数のCPUコアを有する場合、実行中の処理に割り当てるCPUコアを調整する処理であってもよい。
また、第2ハード調整処理の内容は、第1ハード調整処理の内容と同様であってもよいし、第1ハード調整処理の内容と異なってもよい。例えば、第2ハード調整処理が第1ハード調整処理と同様の場合、通信装置270の調整処理は、通信装置170の調整処理と同様であり、処理装置210の調整処理は、処理装置110の調整処理と同様であり、記憶装置260の調整処理は、記憶装置160の調整処理と同様である。
図4は、ソフト調整処理の一例を示す説明図である。図4に示す例では、QoS制御が要求される場合に実行されるソフト調整処理は、QoS制御の品質モードに基づいて、選択される。
ソフト調整処理は、例えば、アプリケーションプログラムPRap等のソフトウェアにより使用されるリソースを調整する処理である。ソフト調整処理としては、例えば、品質モードが低遅延モードの場合、QoS制御の対象外のアプリケーションプログラムPRapの停止、UDP(User Datagram Protocol)/QUIC(Quick UDP Internet Connections)の利用、及び、一部の処理を端末装置100及びサーバ装置200間で移動する処理等が該当する。また、品質モードが高速大容量モードの場合、ソフト調整処理としては、例えば、QoS制御の対象外のアプリケーションプログラムPRapの停止等が該当する。また、品質モードが低速モードの場合、ソフト調整処理としては、例えば、QoS制御の対象となるアプリケーションプログラムPRapの優先度を下げる処理等が該当する。
なお、ソフト調整処理に含まれる処理は、図4に示す例に限定されない。例えば、ソフト調整処理は、図4に示した処理の代わりに、図4に示した処理以外の処理を含んでもよい。あるいは、ソフト調整処理は、図4に示した処理の一部又は全部と、図4に示した処理以外の処理とを含んでもよい。図4に示した処理以外の処理は、例えば、制御部120が通信量を節約する機能(所謂、データセーバー)、及び、制御部120が消費電力を低くする機能(所謂、バッテリーセーバー)等の制限機能が有効に設定されている場合、当該制限機能を無効にする処理であってもよい。例えば、高速大容量モードのQoS制御では、データセーバー等が無効にされる。
また、図4では、第1ソフト調整処理と第2ソフト調整処理とを特に区別せずに説明したが、第1ソフト調整処理の内容は、第2ソフト調整処理の内容と同様であってもよいし、第1ソフト調整処理の内容は、第2ソフト調整処理の内容と異なってもよい。
また、所定のサービスの品質を向上するために要求されるQoS制御の品質モードは、所定のサービスに適した品質モードが選択されると考えられる。従って、QoS制御が要求される場合に実行されるハード調整処理及びソフト調整処理は、所定のサービスに基づいて、選択されてもよい。
図5は、図1に示したネットワークシステム10の動作の一例を示すシーケンスチャートである。
図5に示す例では、低遅延モードのQoS制御が要求される場合を想定する。QoS制御の品質モードが低遅延モードの場合、図3に示したハード調整処理では、記憶装置160の調整処理及び記憶装置260の調整処理は、実行されなくてもよい。このため、図5に示す動作では、記憶装置160の調整処理及び記憶装置260の調整処理が実行可能であるか否かの問い合わせは行われない。
また、図5に示す例では、ネットワーク調整処理、通信装置170の調整処理、処理装置110の調整処理及び第1ソフト調整処理が、所定のサービスの享受に必須なリソースを確保するための第1処理である場合を想定する。また、図5に示す例では、通信装置270の調整処理、処理装置210の調整処理及び第2ソフト調整処理が、所定のサービスの享受に推奨されるリソースを確保するための第2処理である場合を想定する。この場合、例えば、記憶装置160の調整処理及び記憶装置260の調整処理は、第1処理及び第2処理のいずれにも該当しない処理である。
ここで、所定のサービスの享受に必須なリソースは、例えば、所定のサービスを享受するために必要な最低限のシステム要件(システムの機能及び性能等)に基づいて決定されてもよい。また、所定のサービスの享受に推奨されるリソースは、例えば、標準的な品質又は最高品質の所定のサービスを享受するためのシステム要件に基づいて決定されてもよい。所定のサービスを享受するために必要な最低限のシステム要件、及び、標準的な品質又は最高品質の所定のサービスを享受するためのシステム要件は、所定のサービスを提供するサービス提供事業者により公開された情報であってもよい。
本実施形態では、QoS制御の品質モード等に基づく第1処理の全てが実行可能な場合に、QoS制御の実行が要求される場合を想定する。従って、図5に示す動作では、ネットワーク調整処理、通信装置170の調整処理、処理装置110の調整処理及び第1ソフト調整処理の全てが実行可能な場合に、QoS制御の実行が要求される。図5では、ネットワーク調整処理、通信装置170の調整処理、処理装置110の調整処理及び第1ソフト調整処理の全てが実行可能である場合を例にして、ネットワークシステム10の動作を説明する。
先ず、端末装置100は、所定のサービスを利用するためのアプリケーションプログラムPRap10を起動する(S100a)。これにより、端末装置100とサーバ装置200との間の通信が可能になる(S200)。
次に、端末装置100の要求部140は、ネットワーク300のリソースを調整するネットワーク調整処理を実行可能であるか否かを問合せる問合せ情報Inetを、品質制御装置302に送信する(S120a)。これにより、品質制御装置302の受付部330は、問合せ情報Inetを取得する(S310a)。
ここで、ネットワーク調整処理としては、例えば、パラメータ設定処理、経路設定処理及び優先制御処理等が該当する。例えば、パラメータ設定処理は、端末装置100とサーバ装置200と間の通信に割り当てる周波数帯域及びネットワークパラメータ等をQoS制御の品質モードに応じて変更する処理である。ネットワークパラメータとしては、例えば、パケットの送信間隔等が該当する。
また、例えば、経路設定処理は、端末装置100とサーバ装置200と間の通信経路を安定した経路又は最短の経路等に変更する処理である。なお、所定のサービスを提供する複数のサーバ装置200がネットワーク300に接続されている場合、端末装置100に所定のサービスを提供する一のサーバ装置200を複数のサーバ装置200から選択する処理が経路設定処理に含まれてもよい。一のサーバ装置200は、例えば、故障率が低いサーバ装置200であってもよいし、端末装置100に近い位置に配置されたサーバ装置200であってもよい。
また、例えば、優先制御処理では、低遅延、高速大容量及び多接続等を実現するための優先制御が実行される。ネットワーク調整処理は、例えば、品質制御装置302により実行される。
品質制御装置302の応答部340は、ネットワーク調整処理を実行可能であるか否かを確認し、確認結果を示す返答情報Rnetを端末装置100の要求部140に送信する(S310b)。これにより、端末装置100の要求部140は、問合せ情報Inetの返答として、返答情報Rnetを取得する(S120b)。
端末装置100の要求部140は、ネットワーク調整処理が実行可能であるか否かを、品質制御装置302から取得した返答情報Rnetに基づいて判定する(S120c)。以下では、調整処理を実行可能であるか否かの判定は、調整処理に対する判定とも称される。要求部140は、ネットワーク調整処理が実行可能でないと判定した場合、QoS制御を要求することなく、QoS制御の要求に関する処理を終了する。なお、図5に示す例では、ネットワーク調整処理が実行可能であると要求部140が判定した場合を想定しているため、通信装置170の調整処理を実行可能であるか否かの判定が実行される。
例えば、端末装置100の要求部140は、通信装置170の調整処理を実行可能であるか否かを問合せる問合せ情報Iconを、制御部120に送信する(S130a)。これにより、制御部120は、問合せ情報Iconを取得する(S130b)。制御部120は、通信装置170の調整処理を実行可能であるか否かを確認し、確認結果を示す返答情報Rconを、要求部140に送信する(S130c)。これにより、要求部140は、問合せ情報Iconの返答として、返答情報Rconを取得する(S130d)。
端末装置100の要求部140は、通信装置170の調整処理が実行可能であるか否かを、制御部120から取得した返答情報Rconに基づいて判定する(S130e)。要求部140は、通信装置170の調整処理が実行可能でないと判定した場合、QoS制御を要求することなく、QoS制御の要求に関する処理を終了する。なお、図5に示す例では、通信装置170の調整処理が実行可能であると要求部140が判定した場合を想定しているため、処理装置110の調整処理を実行可能であるか否かの判定が実行される。
例えば、端末装置100の要求部140は、処理装置110の調整処理を実行可能であるか否かを問合せる問合せ情報Iproを、制御部120に送信する(S130f)。これにより、制御部120は、問合せ情報Iproを取得する(S130g)。制御部120は、処理装置110の調整処理を実行可能であるか否かを確認し、確認結果を示す返答情報Rproを、要求部140に送信する(S130h)。これにより、要求部140は、問合せ情報Iproの返答として、返答情報Rproを取得する(S130i)。
端末装置100の要求部140は、処理装置110の調整処理が実行可能であるか否かを、制御部120から取得した返答情報Rproに基づいて判定する(S130j)。要求部140は、処理装置110の調整処理が実行可能でないと判定した場合、QoS制御を要求することなく、QoS制御の要求に関する処理を終了する。なお、図5に示す例では、処理装置110の調整処理が実行可能であると要求部140が判定した場合を想定しているため、第1ソフト調整処理を実行可能であるか否かの判定が実行される。
例えば、端末装置100の要求部140は、第1ソフト調整処理を実行可能であるか否かを問合せる問合せ情報Iswを、制御部120に送信する(S150a)。これにより、制御部120は、問合せ情報Iswを取得する(S150b)。制御部120は、第1ソフト調整処理を実行可能であるか否かを確認し、確認結果を示す返答情報Rswを、要求部140に送信する(S150c)。これにより、要求部140は、問合せ情報Iswの返答として、返答情報Rswを取得する(S150d)。
端末装置100の要求部140は、第1ソフト調整処理が実行可能であるか否かを、制御部120から取得した返答情報Rswに基づいて判定する(S150e)。要求部140は、第1ソフト調整処理が実行可能でないと判定した場合、QoS制御を要求することなく、QoS制御の要求に関する処理を終了する。なお、図5に示す例では、第1ソフト調整処理が実行可能であると要求部140が判定した場合を想定しているため、QoS制御の実行が要求される。
例えば、端末装置100の要求部140は、ネットワーク調整処理、通信装置170の調整処理、処理装置110の調整処理及び第1ソフト調整処理の全てが実行可能であるため、QoS制御の開始を要求する開始要求REQsqを、品質制御装置302に送信する(S170a)。これにより、品質制御装置302の受付部330は、開始要求REQsqを取得する(S320a)。
品質制御装置302の応答部340は、開始要求REQsqに応じたQoS制御が実行される場合、開始要求REQsqに対する肯定応答ACKsqを、端末装置100に送信する(S320b)。そして、品質制御装置302の実行部350は、開始要求REQsqにより示される品質モードのQoS制御を開始する(S320c)。このように、品質制御装置302は、端末装置100とサーバ装置200との通信の品質を制御するQoS制御を、開始要求REQsqに基づいて実行する。すなわち、開始要求REQsqは、QoS制御の実行を要求する実行要求に該当する。なお、本実施形態では、ネットワーク調整処理は、QoS制御に含まれる。従って、QoS制御が実行されることにより、ネットワーク調整処理が実行される。
また、端末装置100の要求部140は、QoS制御の開始要求REQsqに対する応答として、肯定応答ACKsqを取得する(S170b)。そして、要求部140は、端末装置100のリソースを調整する調整処理(通信装置170の調整処理、処理装置110の調整処理及び第1ソフト調整処理等)の実行を要求する調整要求REQaj1を、制御部120に送信する(S174a)。これにより、制御部120は、調整要求REQaj1を取得する(S174b)。そして、制御部120は、通信装置170の調整処理、処理装置110の調整処理及び第1ソフト調整処理等の調整処理を実行する(S174c)。この結果、端末装置100のリソースは、サーバ装置200から提供される所定のサービスを十分に享受できるように割り当てられる。
また、端末装置100の要求部140は、サーバ装置200のリソースを調整する調整処理(通信装置270の調整処理、処理装置210の調整処理及び第2ソフト調整処理)の実行を要求する調整要求REQaj2を、サーバ装置200に送信する(S178)。これにより、サーバ装置200は、調整要求REQaj2を取得する(S220a)。そして、サーバ装置200の制御部220は、通信装置270の調整処理、処理装置210の調整処理及び第2ソフト調整処理のうち、実行可能な調整処理を実行する(S220b)。この結果、サーバ装置200のリソースは、品質をできるだけ高くした所定のサービスを端末装置100に提供できるように割り当てられる。
また、端末装置100の要求部140は、所定のサービスの開始を要求するサービス要求REQssvを、サーバ装置200に送信する(S180)。これにより、サーバ装置200は、サービス要求REQssvを取得する(S240a)。そして、サーバ装置200のサービス提供部230は、所定のサービスの提供を開始する(S240b)。これにより、所定のサービスが端末装置100に提供される。
端末装置100は、アプリケーションプログラムPRap10を終了させる(S190a)。これにより、アプリケーションプログラムPRap10は、終了情報EINFsv及び終了要求REQeqが送信された後、終了する。なお、終了情報EINFsvは、所定のサービスを利用するためのアプリケーションプログラムPRap10が終了することを示す情報であり、端末装置100からサーバ装置200に送信される(S190b)。また、終了要求REQeqは、端末装置100とサーバ装置200との通信に対するQoS制御の終了を要求する情報であり、端末装置100から品質制御装置302に送信される(S194a)。
例えば、サーバ装置200のサービス提供部230は、端末装置100から送信された終了情報EINFsvを、取得する(S260a)。そして、サーバ装置200のサービス提供部230は、所定のサービスの提供を終了する(S260b)。
また、例えば、品質制御装置302の受付部330は、端末装置100から送信された終了要求REQeqを、取得する(S340a)。そして、品質制御装置302の応答部340は、終了要求REQeqにより示されるQoS制御を終了する場合、終了要求REQeqに対する肯定応答ACKeqを、端末装置100の要求部140に送信する(S340b)。これにより、端末装置100は、QoS制御の終了要求REQeqに対する応答として、肯定応答ACKeqを取得する(S194b)。また、品質制御装置302の実行部350は、終了要求REQeqにより示されるQoS制御を、終了する(S340c)。これにより、端末装置100とサーバ装置200との通信に対するQoS制御が終了する。
このように、本実施形態では、端末装置100の要求部140は、端末装置100等の状態がサーバ装置200から提供されるサービスを十分に享受できる状態になる場合、QoS制御の実行を要求する。換言すれば、要求部140は、端末装置100等の状態がサーバ装置200から提供されるサービスを十分に享受できる状態にならない場合、QoS制御の実行を要求しない。これにより、本実施形態では、QoS制御を効果的に実行することができる。
また、図5に示す動作では、端末装置100の要求部140は、ネットワーク調整処理、通信装置170の調整処理、処理装置110の調整処理及び第1ソフト調整処理が実行可能であるか否かを、所定の順に判定する。所定の順は、調整処理の実行が不可となる可能性が高い順であってもよい。
例えば、ネットワーク調整処理では、QoS制御を要求する端末装置100以外の他の端末装置100等の通信の影響を精度よく予測することが困難である。このため、ネットワーク調整処理は、ハード調整処理及びソフト調整処理に比べて、実行不可と判定される可能性が高いと考えられる。また、例えば、ソフト調整処理は、ソフトウェアに対する処理であるため、ハード調整処理に比べて柔軟に対応できる。このため、ソフト調整処理は、ハード調整処理に比べて、実行不可と判定される可能性が低いと考えられる。すなわち、ハード調整処理は、ソフト調整処理に比べて、実行不可と判定される可能性が高いと考えられる。
また、例えば、第1ハード調整処理に該当する通信装置170の調整処理、処理装置110の調整処理、及び、記憶装置160の調整処理においても、各調整処理が実行可能であるか否かの判定は、調整処理の実行が不可となる可能性が高い順に実行されてもよい。例えば、通信装置170の調整処理では、端末装置100内の他の処理の影響を精度よく予測することが困難であり、かつ、通信装置170の処理を変更した場合の他の処理への影響が他の第1ハード調整処理に比べて大きい。このため、通信装置170の調整処理は、処理装置110の調整処理及び記憶装置160の調整処理に比べて、実行不可と判定される可能性が高いと考えられる。なお、他の処理は、例えば、QoS制御の対象となるアプリケーションプログラムPRap10以外のアプリケーションプログラムPRapに関する処理等である。また、例えば、処理装置110の調整処理は、端末装置100内の他の処理の影響を精度よく予測することが困難であるため、記憶装置160の調整処理に比べて、実行不可と判定される可能性が高いと考えられる。
すなわち、図5に示す例では、実行不可と判定される可能性が高い順が、ネットワーク調整処理、通信装置170の調整処理、処理装置110の調整処理及び第1ソフト調整処理の順である場合を想定している。従って、図5に示す動作では、ネットワーク調整処理、通信装置170の調整処理、処理装置110の調整処理及び第1ソフト調整処理が実行可能であるか否かの判定は、実行不可と判定される可能性の高い順に実行される。これにより、本実施形態では、QoS制御の要求に関する処理を効率よく実行することができる。例えば、要求部140は、ネットワーク調整処理が実行可能でない場合(S120cの判定結果が否定の場合)、QoS制御の実行を要求しないと決定し、ステップS120c以降の処理を実行することなく、QoS制御の要求に関する処理を終了する。
なお、ネットワークシステム10の動作は、図5に示す例に限定されない。例えば、要求部140は、通信装置170の調整処理が実行可能であるか否かの問合せ、及び、通信装置170の調整処理の実行要求を、制御部120を介さずに、通信装置170に行ってもよい。同様に、要求部140は、記憶装置160の調整処理が実行可能であるか否かの問合せ、及び、記憶装置160の調整処理の実行要求を、制御部120を介さずに、記憶装置160に行ってもよい。
また、例えば、第2処理(図5に示す例では、通信装置270の調整処理、処理装置210の調整処理及び第2ソフト調整処理)が実行可能であるか否かの問い合わせは、行われてもよい。この場合、端末装置100は、第2処理のうちのどの処理が実行可能であるかを把握することができる。
また、例えば、QoS制御の処理に関する要求は、開始要求REQsq及び終了要求REQeq等の処理要求の送信の代わりに、処理に関するAPI(Application Programming Interface)を呼び出すことにより実現されてもよい。具体的には、QoS制御の開始の要求は、要求部140がQoS制御の開始APIの呼び出しを品質制御装置302に対して実行することであってもよい。また、QoS制御の終了の要求は、要求部140がQoS制御の終了APIの呼び出しを品質制御装置302に対して実行することであってもよい。同様に、各種の問合せも、問合せ情報Inet等の問合せ情報の送信の代わりに、問合せに関するAPIを呼び出すことにより実現されてもよい。
本実施形態では、処理要求を送信すること、及び、処理に関するAPIを呼び出すことを、特に区別せずに、処理要求を送信すると称する場合がある。同様に、問合せ情報を送信すること、及び、問合せに関するAPIを呼び出すことを、特に区別せずに、問合せ情報を送信すると称する場合がある。
図6は、図1に示した端末装置100の動作の一例を示すフローチャートである。なお、図6は、端末装置100とサーバ装置200との通信に対するQoS制御の要求に関する処理の一例を示している。図5において説明した動作については、詳細な説明を省略する。
先ず、ステップS100において、端末装置100は、所定のサービスを利用するためのアプリケーションプログラムPRap10を起動する。
次に、ステップS120において、端末装置100の要求部140は、ネットワーク調整処理が実行可能であるか否かを判定する。なお、ネットワーク調整処理として、複数の調整処理が該当する場合、要求部140は、図5において説明した第1ハード調整処理と同様に、ネットワーク調整処理に該当する複数の調整処理の各々について、実行可能であるか否かを判定する。この場合、ネットワーク調整処理に該当する複数の調整処理のいずれかが実行可能でない場合、ネットワーク調整処理は実行可能でないと判定される。また、ネットワーク調整処理に該当する複数の調整処理が実行可能であるか否かの判定は、実行不可と判定される可能性の高い順に実行されてもよい。
ステップS120における判定の結果が否定の場合、要求部140は、QoS制御を要求することなく、QoS制御の要求に関する処理を終了する。一方、ステップS120における判定の結果が肯定の場合、要求部140は、処理をステップS130に進める。
ステップS130において、端末装置100の要求部140は、第1ハード調整処理が実行可能であるか否かを判定する。なお、第1ハード調整処理として、複数の調整処理が該当する場合、要求部140は、図5において説明したように、第1ハード調整処理に該当する複数の調整処理の各々について、実行可能であるか否かを判定する。この場合、第1ハード調整処理に該当する複数の調整処理のいずれかが実行可能でない場合、第1ハード調整処理は実行可能でないと判定される。
ステップS130における判定の結果が否定の場合、要求部140は、QoS制御を要求することなく、QoS制御の要求に関する処理を終了する。一方、ステップS130における判定の結果が肯定の場合、要求部140は、処理をステップS140に進める。
ステップS140において、端末装置100の要求部140は、第2ハード調整処理が実行可能であるか否かを判定する。第2ハード調整処理が実行可能であるか否かの判定動作は、例えば、第2ハード調整処理が実行可能であるか否かの問合せがサーバ装置200の制御部220に対して行われることを除いて、第1ハード調整処理が実行可能であるか否かの判定動作と同様である。例えば、端末装置100の要求部140は、第2ハード調整処理が実行可能であるか否かを問合せる問合せ情報を、サーバ装置200の制御部220に送信する。そして、端末装置100の要求部140は、第2ハード調整処理を実行可能であるか否かの確認結果を示す返答情報をサーバ装置200の制御部220から取得し、制御部220から取得した返答情報に基づいて、第2ハード調整処理を実行可能であるか否かを判定する。
なお、第2ハード調整処理として、複数の調整処理が該当する場合、図5において説明した第1ハード調整処理と同様に、要求部140は、第2ハード調整処理に該当する複数の調整処理の各々について、実行可能であるか否かを判定する。この場合、第2ハード調整処理に該当する複数の調整処理のいずれかが実行可能でない場合、第2ハード調整処理は実行可能でないと判定される。また、第2ハード調整処理に該当する複数の調整処理が実行可能であるか否かの判定は、実行不可と判定される可能性の高い順に実行されてもよい。
ステップS140における判定の結果が否定の場合、要求部140は、QoS制御を要求することなく、QoS制御の要求に関する処理を終了する。一方、ステップS140における判定の結果が肯定の場合、要求部140は、処理をステップS150に進める。
ステップS150において、端末装置100の要求部140は、第1ソフト調整処理が実行可能であるか否かを判定する。なお、第1ソフト調整処理として、複数の調整処理が該当する場合、要求部140は、図5において説明した第1ハード調整処理と同様に、第1ソフト調整処理に該当する複数の調整処理の各々について、実行可能であるか否かを判定する。この場合、第1ソフト調整処理に該当する複数の調整処理のいずれかが実行可能でない場合、第1ソフト調整処理は実行可能でないと判定される。また、第1ソフト調整処理に該当する複数の調整処理が実行可能であるか否かの判定は、実行不可と判定される可能性の高い順に実行されてもよい。
ステップS150における判定の結果が否定の場合、要求部140は、QoS制御を要求することなく、QoS制御の要求に関する処理を終了する。一方、ステップS150における判定の結果が肯定の場合、要求部140は、処理をステップS160に進める。
ステップS160において、端末装置100の要求部140は、第2ソフト調整処理が実行可能であるか否かを判定する。第2ソフト調整処理が実行可能であるか否かの判定動作は、例えば、第2ソフト調整処理が実行可能であるか否かの問合せがサーバ装置200の制御部220に対して行われることを除いて、第1ソフト調整処理が実行可能であるか否かの判定動作と同様である。例えば、端末装置100の要求部140は、第2ソフト調整処理が実行可能であるか否かを問合せる問合せ情報を、サーバ装置200の制御部220に送信する。そして、端末装置100の要求部140は、第2ソフト調整処理を実行可能であるか否かの確認結果を示す返答情報をサーバ装置200の制御部220から取得し、制御部220から取得した返答情報に基づいて、第2ソフト調整処理を実行可能であるか否かを判定する。
なお、第2ソフト調整処理として、複数の調整処理が該当する場合、要求部140は、図5において説明した第1ハード調整処理と同様に、第2ソフト調整処理に該当する複数の調整処理の各々について、実行可能であるか否かを判定する。この場合、第2ソフト調整処理に該当する複数の調整処理のいずれかが実行可能でない場合、第2ソフト調整処理は実行可能でないと判定される。また、第2ソフト調整処理に該当する複数の調整処理が実行可能であるか否かの判定は、実行不可と判定される可能性の高い順に実行されてもよい。
ステップS160における判定の結果が否定の場合、要求部140は、QoS制御を要求することなく、QoS制御の要求に関する処理を終了する。一方、ステップS160における判定の結果が肯定の場合、要求部140は、処理をステップS170に進める。
ステップS170において、端末装置100の要求部140は、QoS制御の実行を品質制御装置302に要求する。例えば、要求部140は、QoS制御の開始を要求する開始要求REQsqを、品質制御装置302に送信する。
次に、ステップS174において、端末装置100の制御部120は、第1ハード調整処理及び第1ソフト調整処理を実行する。
次に、ステップS178において、端末装置100の要求部140は、第2ハード調整処理及び第2ソフト調整処理の実行をサーバ装置200に要求する。例えば、要求部140は、第2ハード調整処理及び第2ソフト調整処理の実行を要求する調整要求REQaj2を、サーバ装置200に送信する。これにより、例えば、サーバ装置200の制御部220は、第2ハード調整処理及び第2ソフト調整処理を実行する。
次に、ステップS180において、端末装置100の要求部140は、所定のサービスの提供をサーバ装置200に要求する。例えば、要求部140は、所定のサービスの開始を要求するサービス要求REQssvを、サーバ装置200に送信する。これにより、例えば、サーバ装置200のサービス提供部230は、所定のサービスを端末装置100に提供する。
このように、図6に示す動作では、実行不可と判定される可能性がハード調整処理及びソフト調整処理に比べて高いと考えられるネットワーク調整処理に対する判定(ステップS120)が他の調整処理に対する判定(ステップS130等)より先に実行される。さらに、図6に示す動作では、実行不可と判定される可能性がソフト調整処理に比べて高いと考えられるハード調整処理に対する判定(ステップS130及びS140)がソフト調整処理に対する判定(ステップS150及びS160)より先に実行される。そして、端末装置100の要求部140は、複数の調整処理のうちのいずれかの調整処理が実行可能でないと判定した場合、複数の調整処理のうちの未判定の調整処理が実行可能であるか否かを判定することなく、QoS制御の実行を要求しないと決定する。これにより、本実施形態では、QoS制御の要求に関する処理を効率よく実行することができる。
なお、端末装置100の動作(QoS制御の要求に関する処理)は、図6に示す例に限定されない。例えば、ステップS130、S140、S150及びS160の判定順は、ステップS130の判定がステップS150の判定より先に実行され、ステップS140の判定がステップS160の判定より先に実行されるのであれば、図6に示した順番と相違してもよい。
また、例えば、ネットワーク調整処理、第1ハード調整処理、第1ソフト調整処理、第2ハード調整処理及び第2ソフト調整処理の各々は、第1処理及び第2処理の少なくとも一方を含んでもよい。
ネットワーク調整処理、第1ハード調整処理、第1ソフト調整処理、第2ハード調整処理及び第2ソフト調整処理のいずれかに第2処理が含まれる場合、要求部140は、例えば、第2処理が実行可能であることを条件として、QoS制御を要求してもよい。すなわち、要求部140は、第1処理及び第2処理が実行可能である場合、QoS制御の実行を要求し、第1処理及び第2処理の少なくとも一方が実行可能でない場合、QoS制御の実行を要求しないと決定してもよい。この場合、複数の調整処理のうち、第1処理及び第2処理のいずれにも該当しない処理が実行可能であるか否かの判定は、実行されなくてもよい。
また、複数の調整処理の各々が第1処理及び第2処理のいずれかに該当し、かつ、第1処理及び第2処理の両方が実行可能であることを条件としてQoS制御が要求される場合、端末装置100の動作は、図6に示す動作と同様であってもよい。あるいは、要求部140は、ステップS160の後でステップS170の前に、ネットワーク調整処理、第1ハード調整処理、第1ソフト調整処理、第2ハード調整処理及び第2ソフト調整処理のいずれかに含まれる第2処理が実行可能であるか否かを判定してもよい。すなわち、要求部140は、第2処理が実行可能であるか否かを判定する前に、第1処理が実行可能であるか否かを判定し、第1処理が実行可能でない場合、第2処理が実行可能であるか否かを判定することなく、QoS制御の実行を要求しないと決定してもよい。
なお、ネットワーク調整処理、第1ハード調整処理、第1ソフト調整処理、第2ハード調整処理及び第2ソフト調整処理のいずれかに、第1処理以外の処理(例えば、第2処理等)が含まれる場合、第1処理以外の処理が実行可能であるか否かの判定は、実行されなくてもよい。具体的には、例えば、ネットワーク調整処理に該当する複数の調整処理に、第1処理以外の処理が含まれる場合、ステップS120において、要求部140は、第1処理以外の処理が実行可能であるか否かの判定を実行しなくてもよい。また、ネットワーク調整処理の全てが、第1処理以外の処理である場合、ステップS120の判定は、実行されなくてもよい。ステップS130、S140、S150及びS160の各々の判定においても、第1処理以外の処理が含まれる場合、第1処理以外の処理が実行可能であるか否かの判定は、実行されなくてもよい。すなわち、要求部140は、第1処理が実行可能である場合、第1処理以外の処理(例えば、第2処理等)が実行可能であるか否かを判定することなく、QoS制御、第1処理及び第2処理等の実行を要求してもよい。この場合、第1処理以外の処理が実行可能であるか否かの判定を省くことができるため、QoS制御の要求に関する処理を効率よく実行することができる。
なお、第2処理が実行可能であるか否かに拘わらず、第1処理が実行可能である場合にQoS制御が要求される態様においても、第2処理が実行可能であるか否かの判定が実行されてもよい。この場合、要求部140は、ステップS160の後でステップS170の前に、ネットワーク調整処理、第1ハード調整処理、第1ソフト調整処理、第2ハード調整処理及び第2ソフト調整処理のいずれかに含まれる第2処理が実行可能であるか否かを判定してもよい。この場合、端末装置100は、第2処理のうちのどの処理が実行可能であるかを把握することができる。
以上、本実施形態では、ネットワークシステム10は、通信の品質が制御されるネットワーク300と、ネットワーク300に接続される端末装置100と、ネットワーク300を介して端末装置100にサービスを提供するサーバ装置200とを含む。例えば、端末装置100は、ネットワーク300に接続されたサーバ装置200と通信を行う通信装置170と、QoS制御の実行を要求する要求部140とを有する。要求部140は、サーバ装置200が端末装置100にサービスを提供する場合、複数の調整処理のうちの一部又は全部が実行可能であることを条件として、端末装置100とサーバ装置200との通信の品質を制御するQoS制御の実行を要求する。なお、複数の調整処理は、サービスの提供及び享受の少なくとも一方のために使用されるリソースを調整するための処理である。
このように、本実施形態では、サービスの提供及び享受の少なくとも一方のために使用されるリソースが、サーバ装置200が提供するサービスを端末装置100が十分に享受できるように、割り当てられる場合、QoS制御の実行が要求される。換言すれば、サービスの提供及び享受の少なくとも一方のために使用されるリソースが、サーバ装置200が提供するサービスを端末装置100が十分に享受できるように、割り当てられない場合、QoS制御の実行は要求されない。これにより、本実施形態では、端末装置100とサーバ装置200との通信に対するQoS制御を効果的に実行することができる。すなわち、本実施形態では、端末装置100とサーバ装置200との通信に対するQoS制御の効果が低下することを抑制することができる。
また、本実施形態の一の態様(第1態様)では、要求部140は、サービスの享受に推奨されるリソースを確保するための第2処理が実行可能であるか否かを判定する前に、サービスの享受に必須なリソースを確保するための第1処理が実行可能であるか否かを判定してもよい。そして、要求部140は、第1処理が実行可能でない場合、第2処理が実行可能であるか否かを判定することなく、QoS制御の実行を要求しないと決定してもよい。第1態様では、第2処理が実行可能であるか否かの判定を省くことができるため、QoS制御の要求に関する処理を効率よく実行することができる。
また、第1態様では、要求部140は、第1処理が実行可能である場合、第2処理が実行可能であるか否かを判定することなく、QoS制御、第1処理及び第2処理の実行を要求してもよい。この場合においても、第2処理が実行可能であるか否かの判定を省くことができるため、QoS制御の要求に関する処理を効率よく実行することができる。
また、本実施形態の別の態様(第2態様)では、要求部140は、サービスの享受に必須なリソースを確保するための第1処理とサービスの享受に推奨されるリソースを確保するための第2処理とが実行可能である場合、QoS制御の実行を要求してもよい。また、要求部140は、第1処理及び第2処理の少なくとも一方が実行可能でない場合、QoS制御の実行を要求しないと決定してもよい。第2態様では、サービスの享受に必須なリソースを確保できる場合でも、サービスの享受に推奨されるリソースを確保できない場合、QoS制御の実行は要求されない。すなわち、第2態様では、例えば、標準的な品質又は最高品質のサービスを端末装置100が享受できる場合に、QoS制御の実行が要求される。これにより、第2態様では、サービスの享受に推奨されるリソースを確保できない場合にもQoS制御が要求される場合に比べて、QoS制御を効果的に実行することができる。すなわち、第2態様においても、QoS制御の効果が低下することを抑制することができる。
また、第1態様及び第2態様では、複数の調整処理は、ネットワーク300のリソースを調整するネットワーク調整処理と、端末装置100及びサーバ装置200の少なくとも一方のハードウェアリソースを調整するハード調整処理と、ソフト調整処理とを含んでもよい。ソフト調整処理は、端末装置100及びサーバ装置200の少なくとも一方において実行されるソフトウェアに対する処理である。なお、ネットワーク調整処理は、第1処理及び第2処理の少なくとも一方を含み、ハード調整処理は、第1処理及び第2処理の少なくとも一方を含み、ソフト調整処理は、第1処理及び第2処理の少なくとも一方を含む。この場合においても、上述した態様と同様の効果を得ることができる。
また、本実施形態の別の態様(第3態様)では、複数の調整処理は、ネットワーク300のリソースを調整するネットワーク調整処理と、端末装置100及びサーバ装置200の少なくとも一方のハードウェアリソースを調整するハード調整処理と、ソフト調整処理とを含んでもよい。ソフト調整処理は、端末装置100及びサーバ装置200の少なくとも一方において実行されるソフトウェアに対する処理である。また、要求部140は、ネットワーク調整処理、ハード調整処理及びソフト調整処理が実行可能であるか否かを、ネットワーク調整処理、ハード調整処理及びソフト調整処理の順に、判定してもよい。そして、要求部140は、ネットワーク調整処理、ハード調整処理及びソフト調整処理の全てが実行可能である場合、QoS制御の実行を要求してもよい。また、要求部140は、ネットワーク調整処理、ハード調整処理及びソフト調整処理のいずれかが実行可能でない場合、QoS制御の実行を要求しないと決定してもよい。
このように、第3態様では、ネットワーク調整処理、ハード調整処理及びソフト調整処理に対する判定が所定の順に実行され、ネットワーク調整処理、ハード調整処理及びソフト調整処理のいずれかが実行可能でない場合、QoS制御は要求されない。このため、第3態様においても、QoS制御の要求に関する処理を効率よく実行することができる。さらに、所定の順が、例えば、実行不可と判定される可能性の高い順である場合、QoS制御の要求に関する処理をより効率的に実行することができる。
また、本実施形態の別の態様(第4態様)では、複数の調整処理は、ネットワーク300のリソースを調整するネットワーク調整処理と、第1ハード調整処理と、第1ソフト調整処理と、第2ハード調整処理と、第2ソフト調整処理とを含んでもよい。第1ハード調整処理は、端末装置100のハードウェアリソースを調整する処理であり、第1ソフト調整処理は、端末装置100において実行されるソフトウェアに対する処理である。また、第2ハード調整処理は、サーバ装置200のハードウェアリソースを調整する処理であり、第2ソフト調整処理は、サーバ装置200において実行されるソフトウェアに対する処理である。
そして、要求部140は、ネットワーク調整処理、第1ハード調整処理、第1ソフト調整処理、第2ハード調整処理及び第2ソフト調整処理の全てが実行可能である場合、QoS制御の実行を要求してもよい。また、要求部140は、ネットワーク調整処理、第1ハード調整処理、第1ソフト調整処理、第2ハード調整処理及び第2ソフト調整処理のいずれかが実行可能でない場合、品質制御の実行を要求しないと決定してもよい。なお、ネットワーク調整処理、第1ハード調整処理、第1ソフト調整処理、第2ハード調整処理及び第2ソフト調整処理のうち、ネットワーク調整処理が実行可能であるか否かの判定が最初に実行される。また、第1ハード調整処理が実行可能であるか否かの判定は、第1ソフト調整処理が実行可能であるか否かの判定より先に実行され、第2ハード調整処理が実行可能であるか否かの判定は、第2ソフト調整処理が実行可能であるか否かの判定より先に実行される。
このように、第4態様においても、ネットワーク調整処理、第1ハード調整処理、第1ソフト調整処理、第2ハード調整処理及び第2ソフト調整処理に対する判定が所定の順に実行される。そして、ネットワーク調整処理、第1ハード調整処理、第1ソフト調整処理、第2ハード調整処理及び第2ソフト調整処理のいずれかが実行可能でない場合、QoS制御は要求されない。このため、第4態様においても、QoS制御の要求に関する処理を効率よく実行することができる。さらに、所定の順が、例えば、実行不可と判定される可能性の高い順である場合、QoS制御の要求に関する処理をより効率的に実行することができる。
また、第3態様及び第4態様では、要求部140は、複数の調整処理のうちのいずれかの調整処理が実行可能でないと判定した場合、複数の調整処理のうちの未判定の調整処理が実行可能であるか否かを判定することなく、QoS制御の実行を要求しないと決定してもよい。この場合においても、未判定の調整処理が実行可能であるか否かの判定を省くことができるため、QoS制御の要求に関する処理を効率よく実行することができる。
[2.変形例]
本発明は、以上に例示した実施形態に限定されない。具体的な変形の態様を以下に例示する。以下の例示から任意に選択された2以上の態様を併合してもよい。
[第1変形例]
上述した実施形態では、端末装置100がQoS制御の実行を品質制御装置302に要求する場合を示したが、本発明はこのような態様に限定されるものではない。例えば、サーバ装置200がQoS制御の実行を品質制御装置302に要求してもよい。この場合、端末装置100の要求部140は、QoS制御の要求に関する機能を含まなくてもよい。
図7は、第1変形例に係るサーバ装置200の構成を示すブロック図である。図1から図6において説明した要素と同様の要素については、同一の符号を付し、詳細な説明を省略する。図7に示すサーバ装置200は、図1に示したサーバ装置200と同様である。例えば、サーバ装置200は、処理装置210、記憶装置260及び通信装置270を具備するコンピュータシステムにより実現される。但し、図7に示すサーバ装置200では、アプリケーションプログラムPRap20の代わりにアプリケーションプログラムPRap21を処理装置210が実行する点が、図1に示したサーバ装置200と相違する。このため、記憶装置260は、アプリケーションプログラムPRap20の代わりにアプリケーションプログラムPRap21を記憶する。なお、アプリケーションプログラムPRap21は、他の装置から送信されてもよい。図7に示すサーバ装置200は、「情報処理装置」の一例である。この場合、通信装置270は、「通信部」の一例である。また、端末装置100は、「他の情報処理装置」の一例である。
処理装置210は、記憶装置260から読み出した制御プログラムPRos2を実行することにより、制御部220として機能する。また、処理装置210は、例えば、記憶装置260から読み出したアプリケーションプログラムPRap21を実行することにより、サービス提供部230及び要求部240として機能する。制御部220及びサービス提供部230は、図1に示した制御部220及びサービス提供部230と同様である。また、要求部240は、図1に示した端末装置100の要求部140と同様である。
例えば、要求部240は、サーバ装置200が端末装置100に所定のサービスを提供する場合、複数の調整処理のうちの一部又は全部が実行可能であることを条件として、端末装置100とサーバ装置200との通信の品質を制御するQoS制御の実行を要求する。複数の調整処理は、上述した実施形態と同様に、所定のサービスの提供及び享受の少なくとも一方のために使用されるリソースを調整するための処理である。
第1変形例においても、要求部240は、上述した第1態様から第4態様までの各態様において説明した要求部140の動作と同様の動作を実行してもよい。第1変形例においても、上述した実施形態と同様の効果を得ることができる。
[第2変形例]
上述した実施形態及び第1変形例では、複数の調整処理のうちの一部又は全部が実行可能であるか否かの判定が端末装置100の要求部140又はサーバ装置200の要求部240により実行される場合を示したが、本発明はこのような態様に限定されるものではない。例えば、品質制御装置302が、複数の調整処理のうちの一部又は全部が実行可能であるか否かを判定してもよい。この場合、要求部140又は240は、複数の調整処理のうちの一部又は全部が実行可能であるか否かを判定する機能を含まなくてもよい。
図8は、第2変形例に係る品質制御装置302の構成を示すブロック図である。図1から図7において説明した要素と同様の要素については、同一の符号を付し、詳細な説明を省略する。図8に示す品質制御装置302は、図2に示した品質制御装置302と同様である。例えば、品質制御装置302は、処理装置310、記憶装置360及び通信装置370を具備するコンピュータシステムにより実現される。但し、図8に示す品質制御装置302では、アプリケーションプログラムPRap30の代わりにアプリケーションプログラムPRap31を処理装置310が実行する点が、図2に示した品質制御装置302と相違する。このため、記憶装置360は、アプリケーションプログラムPRap30の代わりにアプリケーションプログラムPRap31を記憶する。なお、アプリケーションプログラムPRap31は、他の装置から送信されてもよい。図8に示す品質制御装置302は、「品質制御システム」の一例である。また、第2変形例では、端末装置100は、「第1情報処理装置」の一例であり、サーバ装置200は、「第2情報処理装置」の一例である。
処理装置310は、記憶装置360から読み出した制御プログラムPRos3を実行することにより、制御部320として機能する。また、処理装置310は、例えば、記憶装置360から読み出したアプリケーションプログラムPRap31を実行することにより、受付部330、応答部341及び実行部350等として機能する。制御部320、受付部330及び実行部350は、図2に示した制御部320、受付部330及び実行部350と同様である。また、応答部341は、複数の調整処理のうちの一部又は全部が実行可能であることを条件として、受付部330が受けた開始要求REQsqを承諾する点を除いて、図2に示した応答部340と同様である。開始要求REQsqは、「実行要求」の一例である。
例えば、応答部341は、端末装置100及びサーバ装置200間における所定のサービスの提供及び享受の少なくとも一方のために使用されるリソースを調整するための複数の調整処理のうちの一部又は全部が実行可能である場合、受付部330が受けた開始要求REQsqを承諾する。この場合、応答部341は、開始要求REQsqに対する応答として、肯定応答ACKsqを、開始要求REQsqの送信元(端末装置100又はサーバ装置200等)に送信する。なお、第2変形例では、QoS制御の要求は、端末装置100により行われてもよいし、サーバ装置200等のサーバにより行われてもよい。あるいは、QoS制御の要求は、ネットワーク300に含まれる装置(品質制御装置302とは別の図示しない装置)により行われてもよい。
第2変形例においても、応答部341は、調整処理のうちの一部又は全部が実行可能であるか否かの判定等を、上述した第1態様から第4態様までの各態様において説明した要求部140と同様に実行してもよい。第2変形例においても、上述した実施形態及び第1変形例と同様の効果を得ることができる。
[第3変形例]
上述した実施形態、第1変形例及び第2変形例では、ネットワーク調整処理、ハード調整処理及びソフト調整処理のうち、ネットワーク調整処理に対する判定が最初に実行される場合を示したが、本発明はこのような態様に限定されるものではない。例えば、所定のサービスによって、ハード調整処理及びソフト調整処理のうちのいずれかに対する判定が、ネットワーク調整処理に対する判定より先に実行されてもよい。具体的には、シューティングゲーム等では、画質が悪いと公平な試合が成立しないと考えられる。このため、所定のサービスが、高画質を必須とするゲーム等である場合、要求部140は、ハード調整処理のうちの処理装置110の調整処理に対する判定をネットワーク調整処理に対する判定より先に実行してもよい。第3変形例においても、上述した実施形態、第1変形例及び第2変形例と同様の効果を得ることができる。
[第4変形例]
上述した実施形態、第1変形例、第2変形例及び第3変形例では、複数の通信事業者により管理される複数のネットワーク300に端末装置100が接続可能である場合については、特に説明していないが、端末装置100は、複数のネットワーク300に接続可能であってもよい。この場合、複数の調整処理には、端末装置100と接続するネットワーク300を複数のネットワーク300から選択する処理等が含まれてもよい。例えば、端末装置100に最も近い基地局を有するネットワーク300を、端末装置100と接続するネットワーク300として選択する処理が、ネットワーク調整処理に含まれてもよい。第3変形例においても、上述した実施形態、第1変形例、第2変形例及び第3変形例と同様の効果を得ることができる。
[3.その他]
(1)上述した実施形態では、記憶装置(例えば、記憶装置160、260及び360)は、処理装置(例えば、処理装置110、210及び310)が読取可能な記録媒体であり、ROM及びRAMなどを例示したが、フレキシブルディスク、光磁気ディスク(例えば、コンパクトディスク、デジタル多用途ディスク、Blu-ray(登録商標)ディスク)、スマートカード、フラッシュメモリデバイス(例えば、カード、スティック、キードライブ)、CD-ROM(Compact Disc-ROM)、レジスタ、リムーバブルディスク、ハードディスク、フロッピー(登録商標)ディスク、磁気ストリップ、データベース、サーバその他の適切な記憶媒体である。また、プログラムは、電気通信回線を介してネットワークから送信されてもよい。また、プログラムは、電気通信回線を介して通信網から送信されてもよい。
(2)上述した実施形態は、LTE(Long Term Evolution)、LTE-A(LTE-Advanced)、SUPER 3G、IMT-Advanced、4G(4th generation mobile communication system)、5G(5th generation mobile communication system)、FRA(Future Radio Access)、NR(new Radio)、W-CDMA(登録商標)、GSM(登録商標)、CDMA2000、UMB(Ultra Mobile Broadband)、IEEE 802.11(Wi-Fi(登録商標))、IEEE 802.16(WiMAX(登録商標))、IEEE 802.20、UWB(Ultra-WideBand)、Bluetooth(登録商標)、その他の適切なシステムを利用するシステム及びこれらに基づいて拡張された次世代システムの少なくとも一つに適用されてもよい。また、複数のシステムが組み合わされて(例えば、LTE及びLTE-Aの少なくとも一方と5Gとの組み合わせ等)適用されてもよい。
(3)上述した実施形態において、説明した情報、信号などは、様々な異なる技術のいずれかを使用して表されてもよい。例えば、上記の説明全体に渡って言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、チップなどは、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。
(4)上述した実施形態において、入出力された情報等は特定の場所(例えば、メモリ)に保存されてもよいし、管理テーブルを用いて管理してもよい。入出力される情報等は、上書き、更新、又は追記され得る。出力された情報等は削除されてもよい。入力された情報等は他の装置へ送信されてもよい。
(5)上述した実施形態において、判定は、1ビットで表される値(0か1か)によって行われてもよいし、真偽値(Boolean:true又はfalse)によって行われてもよいし、数値の比較(例えば、所定の値との比較)によって行われてもよい。
(6)上述した実施形態において例示した処理手順、シーケンス、フローチャートなどは、矛盾の無い限り、順序を入れ替えてもよい。例えば、本開示において説明した方法については、例示的な順序を用いて様々なステップの要素を提示しており、提示した特定の順序に限定されない。
(7)図1等の図面に例示された各機能は、ハードウェア及びソフトウェアの少なくとも一方の任意の組み合わせによって実現される。また、各機能ブロックの実現方法は特に限定されない。すなわち、各機能ブロックは、物理的又は論理的に結合した1つの装置を用いて実現されてもよいし、物理的又は論理的に分離した2つ以上の装置を直接的又は間接的に(例えば、有線、無線などを用いて)接続し、これら複数の装置を用いて実現されてもよい。機能ブロックは、上記1つの装置又は上記複数の装置にソフトウェアを組み合わせて実現されてもよい。
また、通信装置(例えば、通信装置170、270及び370)は、有線ネットワーク及び無線ネットワークの少なくとも一方を介してコンピュータ間の通信を行うためのハードウェア(送受信デバイス)であり、例えばネットワークデバイス、ネットワークコントローラ、ネットワークカード、通信モジュールなどともいう。通信装置170は、例えば、周波数分割複信(FDD:Frequency Division Duplex)及び時分割複信(TDD:Time Division Duplex)の少なくとも一方を実現するために、高周波スイッチ、デュプレクサ、フィルタ、周波数シンセサイザなどを含んで構成されてもよい。
(8)上述した実施形態で例示したプログラムは、ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、他の名称で呼ばれるかを問わず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、手順、機能などを意味するよう広く解釈されるべきである。
また、ソフトウェア、命令、情報などは、伝送媒体を介して送受信されてもよい。例えば、ソフトウェアが、有線技術(同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL:Digital Subscriber Line)など)及び無線技術(赤外線、マイクロ波など)の少なくとも一方を使用してウェブサイト、サーバ、又は他のリモートソースから送信される場合、これらの有線技術及び無線技術の少なくとも一方は、伝送媒体の定義内に含まれる。
(9)前述の各形態において、「システム」及び「ネットワーク」という用語は、互換的に使用される。
(10)本開示において説明した情報、パラメータなどは、絶対値を用いて表されてもよいし、所定の値からの相対値を用いて表されてもよいし、対応する別の情報を用いて表されてもよい。例えば、無線リソースはインデックスによって指示されるものであってもよい。上述したパラメータに使用する名称はいかなる点においても限定的な名称ではない。さらに、これらのパラメータを使用する数式等は、本開示で明示的に開示したものと異なる場合もある。様々なチャネル(例えば、PUCCH、PDCCHなど)及び情報要素は、あらゆる好適な名称によって識別できるので、これらの様々なチャネル及び情報要素に割り当てている様々な名称は、いかなる点においても限定的な名称ではない。
(11)上述した実施形態において、端末装置100は、移動局(MS:Mobile Station)である場合が含まれる。移動局は、当業者によって、加入者局、モバイルユニット、加入者ユニット、ワイヤレスユニット、リモートユニット、モバイルデバイス、ワイヤレスデバイス、ワイヤレス通信デバイス、リモートデバイス、モバイル加入者局、アクセス端末、モバイル端末、ワイヤレス端末、リモート端末、ハンドセット、ユーザエージェント、モバイルクライアント、クライアント、又はいくつかの他の適切な用語で呼ばれる場合もある。また、本開示においては、「移動局」、「ユーザ端末(user terminal)」、「ユーザ装置(UE:User Equipment)」、「端末」等の用語は、互換的に使用され得る。
(12)上述した実施形態において、「接続された(connected)」、「結合された(coupled)」という用語、又はこれらのあらゆる変形は、2又はそれ以上の要素間の直接的又は間接的なあらゆる接続又は結合を意味し、互いに「接続」又は「結合」された2つの要素間に1又はそれ以上の中間要素が存在することを含むことができる。要素間の結合又は接続は、物理的なものであっても、論理的なものであっても、或いはこれらの組み合わせであってもよい。例えば、「接続」は「アクセス」で読み替えられてもよい。本開示で使用する場合、2つの要素は、1又はそれ以上の電線、ケーブル及びプリント電気接続の少なくとも一つを用いて、並びにいくつかの非限定的かつ非包括的な例として、無線周波数領域、マイクロ波領域及び光(可視及び不可視の両方)領域の波長を有する電磁エネルギーなどを用いて、互いに「接続」又は「結合」されると考えることができる。
(13)上述した実施形態において、「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。
(14)本開示で使用する「判断(determining)」、「決定(determining)」という用語は、多種多様な動作を包含する場合がある。「判断」、「決定」は、例えば、判定(judging)、計算(calculating)、算出(computing)、処理(processing)、導出(deriving)、調査(investigating)、探索(looking up、search、inquiry)(例えば、テーブル、データベース又は別のデータ構造での探索)、確認(ascertaining)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、受信(receiving)(例えば、情報を受信すること)、送信(transmitting)(例えば、情報を送信すること)、入力(input)、出力(output)、アクセス(accessing)(例えば、メモリ中のデータにアクセスすること)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、解決(resolving)、選択(selecting)、選定(choosing)、確立(establishing)、比較(comparing)などした事を「判断」「決定」したとみなす事を含み得る。つまり、「判断」「決定」は、何らかの動作を「判断」「決定」したとみなす事を含み得る。また、「判断(決定)」は、「想定する(assuming)」、「期待する(expecting)」、「みなす(considering)」などで読み替えられてもよい。
(15)上述した実施形態において、「含む(include)」、「含んでいる(including)」及びそれらの変形が使用されている場合、これらの用語は、用語「備える(comprising)」と同様に、包括的であることが意図される。さらに、本開示において使用されている用語「又は(or)」は、排他的論理和ではないことが意図される。
(16)本開示において、例えば、英語でのa, an及びtheのように、翻訳により冠詞が追加された場合、本開示は、これらの冠詞の後に続く名詞が複数形であることを含んでもよい。
(17)本開示において、「AとBが異なる」という用語は、「AとBが互いに異なる」ことを意味してもよい。なお、当該用語は、「AとBがそれぞれCと異なる」ことを意味してもよい。「離れる」、「結合される」等の用語も、「異なる」と同様に解釈されてもよい。
(18)本開示において説明した各態様/実施形態は単独で用いてもよいし、組み合わせて用いてもよいし、実行に伴って切り替えて用いてもよい。また、所定の情報の通知(例えば、「Xであること」の通知)は、明示的に行うものに限られず、暗黙的(例えば、当該所定の情報の通知を行わない)ことによって行われてもよい。
以上、本開示について詳細に説明したが、当業者にとっては、本開示が本開示中に説明した実施形態に限定されるものではないということは明らかである。本開示は、請求の範囲の記載により定まる本開示の趣旨及び範囲を逸脱することなく修正及び変更態様として実施することができる。従って、本開示の記載は、例示説明を目的とするものであり、本開示に対して何ら制限的な意味を有するものではない。