(57)【要約】【課題】  仮想化環境におけるパケット処理の負荷を容易に監視することができる負荷監視方法、パケット処理プログラム、及びパケット処理装置を提供する。【解決手段】  パケット処理方法は、処理対象のパケットの有無の判定を繰り返し、  前記処理対象のパケットが有ると判定した場合、前記判定を中断して当該パケットの処理を行った後、前記判定を再開し、前記処理対象のパケットが無いと判定した場合、前記判定を続行し、単位時間内に前記処理対象のパケットが無いと判定した回数及び前記処理対象のパケットが有ると連続で判定した回数に基づいて、前記パケットの処理の負荷の度合いを判断し、判断結果を通知する方法である。【選択図】図８
2019080191.tif 000002
【特許請求の範囲】
【請求項１】
処理対象のパケットの有無の判定を繰り返し、
前記処理対象のパケットが有ると判定した場合、前記判定を中断して当該パケットの処理を行った後、前記判定を再開し、
前記処理対象のパケットが無いと判定した場合、前記判定を続行し、
単位時間内に前記処理対象のパケットが無いと判定した回数及び前記処理対象のパケットが有ると連続で判定した回数に基づいて、前記パケットの処理の負荷の度合いを判断し、該判断結果を通知することを特徴とする負荷監視方法。
【請求項２】
前記処理対象のパケットが無い場合に前記単位時間内に実行可能な前記判定の最大回数に対する、前記処理対象のパケットが無いと判定した回数の比に基づいて、前記パケットの処理の負荷の度合いを判断することを特徴とする請求項１に記載の負荷監視方法。
【請求項３】
前記処理対象のパケットが有ると連続で判定した回数と、前記処理対象のパケットを格納するバッファの容量に基づく閾値とを比較し、該比較結果に基づいて、前記パケットの処理の負荷の度合いを判断することを特徴とする請求項１または２に記載の負荷監視方法。
【請求項４】
仮想化ネットワークインターフェースにアクセスすることにより前記判定を行うことを特徴とする請求項１乃至３の何れかに記載の負荷監視方法。
【請求項５】
処理対象のパケットの有無の判定を繰り返し、
前記処理対象のパケットが有ると判定した場合、前記判定を中断して当該パケットの処理を行った後、前記判定を再開し、
前記処理対象のパケットが無いと判定した場合、前記判定を続行し、
単位時間内に前記処理対象のパケットが無いと判定した回数及び前記処理対象のパケットが有ると連続で判定した回数を算出する、処理を、コンピュータに実行させることを特徴とするパケット処理プログラム。
【請求項６】
処理対象のパケットの有無の判定を繰り返し、前記処理対象のパケットが有ると判定した場合、前記判定を中断して当該パケットの処理を行った後、前記判定を再開し、前記処理対象のパケットが無いと判定した場合、前記判定を続行する判定部と、
単位時間内に前記判定部が、前記処理対象のパケットが無いと判定した回数及び前記処理対象のパケットが有ると連続で判定した回数を算出する算出部とを有することを特徴とするパケット処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本件は、負荷監視方法、パケット処理プログラム、及びパケット処理装置に関する。
【背景技術】
【０００２】
Ｕ−Ｐｌａｎｅの通信装置を、専用のハードウェア及びオペレーティングシステムに代えて、ＮＦＶ（Network Functions Virtualization）などの技術により仮想化環境（例えば特許文献１）として汎用サーバに構築することが検討されている。仮想化環境では、ＱｏＳ（Quality Of Service）を改善するため、例えばパケット処理の負荷に応じて、ＣＰＵ（Central Processing Unit）及びメモリの使用量などのハードウェアリソースが動的に割り当てられる。
【０００３】
専用のハードウェア及びオペレーティングシステムを用いる場合、例えば、専用のハードウェアの機能によりパケットの統計情報が収集され、専用のオペレーティングシステムの機能によりタスク使用率が算出される。これにより、パケット処理の負荷によるパケットロスのリスクが分析される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２０１６／０９２８５１号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、仮想化環境では、汎用のハードウェア及びオペレーティングシステムが用いられるため、パケット処理の負荷を監視することが困難である。仮想化環境ではレイヤごとに機能形成されているため、統計情報が複数個所に分散している。このため、Ｕ−Ｐｌａｎｅの処理を行う仮想サーバから、所定のシーケンスに従って通信を行うことによって複数の統計情報を収集する必要があり、処理オーバヘッドが大きくなる。また、例えばＶＭ（Virtual Machine）とホストが別々の会社により運用される場合、セキュリティ上の理由によりＶＭからホストへの情報の参照が制限されるため、統計情報を収集できないこともあり得る。
【０００６】
また、仮想化環境では、汎用のオペレーティングシステムに実装されたプロファイラを用いて、関数（サブルーチン）ごとにＣＰＵ使用率を算出することによりタスク使用率が算出されるが、そのデータ積み上げ処理のため、処理オーバヘッドが大きい。
【０００７】
そこで本件は、仮想化環境におけるパケット処理の負荷を容易に監視することができる負荷監視方法、パケット処理プログラム、及びパケット処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
１つの態様では、負荷監視方法は、処理対象のパケットの有無の判定を繰り返し、前記処理対象のパケットが有ると判定した場合、前記判定を中断して当該パケットの処理を行った後、前記判定を再開し、前記処理対象のパケットが無いと判定した場合、前記判定を続行し、単位時間内に前記処理対象のパケットが無いと判定した回数及び前記処理対象のパケットが有ると連続で判定した回数に基づいて、前記パケットの処理の負荷の度合いを判断し、該判断結果を通知する方法である。
【０００９】
１つの態様では、パケット処理プログラムは、処理対象のパケットの有無の判定を繰り返し、前記処理対象のパケットが有ると判定した場合、前記判定を中断して当該パケットの処理を行った後、前記判定を再開し、前記処理対象のパケットが無いと判定した場合、前記判定を続行し、単位時間内に前記処理対象のパケットが無いと判定した回数及び前記処理対象のパケットが有ると連続で判定した回数を算出する、処理を、コンピュータに実行させるプログラムである。
【００１０】
１つの態様では、パケット処理装置は、処理対象のパケットの有無の判定を繰り返し、前記処理対象のパケットが有ると判定した場合、前記判定を中断して当該パケットの処理を行った後、前記判定を再開し、前記処理対象のパケットが無いと判定した場合、前記判定を続行する判定部と、単位時間内に前記判定部が、前記処理対象のパケットが無いと判定した回数及び前記処理対象のパケットが有ると連続で判定した回数を算出する算出部とを有する。
【発明の効果】
【００１１】
１つの側面として、仮想化環境におけるパケット処理の負荷を容易に監視することができる。
【図面の簡単な説明】
【００１２】
【図１】負荷監視システムが適用されるネットワークの一例を示す構成図である。
【図２】負荷監視システムの一例を示す構成図である。
【図３】汎用サーバの一例を示す構成図である。
【図４】比較例のＵ−Ｐｌａｎｅ装置の機能を示す構成図である。
【図５】実施例のＵ−Ｐｌａｎｅ装置の機能を示す構成図である。
【図６】負荷監視サーバの機能の一例を示す構成図である。
【図７】リソース管理サーバの一例を示す構成図である。
【図８】Ｕ−Ｐｌａｎｅ装置の動作の一例を示す図である。
【図９】負荷監視方法で用いられる変数の名称の一覧を示す図である。
【図１０】Ｕ−Ｐｌａｎｅ装置の動作の一例を示すフローチャートである。
【図１１】通信処理の一例を示すフローチャートである。
【図１２】Ｕ−Ｐｌａｎｅ装置の動作パタンの例（その１）を示す図である。
【図１３】Ｕ−Ｐｌａｎｅ装置の動作パタンの例（その２）を示す図である。
【図１４】負荷監視サーバの動作の一例を示すフローチャートである。
【図１５】リソース管理サーバの動作の一例を示すフローチャートである。
【図１６】負荷レベルが「Ｎｏｒｍａｌ」である場合の負荷監視システムの動作の一例を示す図である。
【図１７】負荷レベルが「Ｗａｒｎｉｎｇ」である場合の負荷監視システムの動作の一例を示す図である。
【図１８】負荷レベルが「Ｅｒｒｏｒ」である場合の負荷監視システムの動作の一例を示す図である。
【発明を実施するための形態】
【００１３】
図１は、負荷監視システムが適用されるネットワークの一例を示す構成図である。負荷監視システム８は、一例として、コアネットワーク９１に設けられる。コアネットワーク９１は、例えば複数のメトロネットワーク９２とインターネット９０を接続する基幹系のネットワークである。
【００１４】
メトロネットワーク９２は、複数の端末９３をコアネットワーク９１に接続する。端末９３としては、スマートフォン、パーソナルコンピュータ、自動車の通信端末などが挙げられるが、これに限定されない。
【００１５】
図２は、負荷監視システム８の一例を示す構成図である。負荷監視システム８は、Ｕ−Ｐｌａｎｅ装置１、負荷監視サーバ２、リソース管理サーバ３、Ｃ−Ｐｌａｎｅ装置４、及び操作端末５を有する。Ｕ−Ｐｌａｎｅ装置１、負荷監視サーバ２、リソース管理サーバ３、Ｃ−Ｐｌａｎｅ装置４、及び操作端末５は、例えばＬＡＮ（Local Area Network）を介して互いに接続されている。なお、Ｕ−Ｐｌａｎｅ装置１、負荷監視サーバ２、及びリソース管理サーバ３は、１つの物理サーバ内に集約して実装することも可能であるが、以下の例では別々の汎用サーバにより構成された例を挙げる。
【００１６】
Ｕ−Ｐｌａｎｅ装置１は、仮想化環境で動作する通信装置であり、例えば音声信号などのユーザ信号を含むパケットを処理する。Ｕ−Ｐｌａｎｅ装置１は、例えばＲＴＰ（Real-time Transport Protocol）などのプロトコルに従ってパケット処理を行う。なお、Ｕ−Ｐｌａｎｅ装置１は、パケット処理プログラムを実行するパケット処理装置の一例である。また、パケットとしては、ＩＰ（Internet Protocol）パケットが挙げられるが、これに限定されない。
【００１７】
Ｃ−Ｐｌａｎｅ装置４は、制御信号を含むパケットを処理する。Ｃ−Ｐｌａｎｅ装置４は、Ｕ−Ｐｌａｎｅ装置１の監視制御を実行する。
【００１８】
Ｕ−Ｐｌａｎｅ装置１は、自装置内の仮想化ネットワークインターフェースに対しポーリング処理を実行することによりパケットの受信を確認する。Ｕ−Ｐｌａｎｅ装置１は、ポーリング処理によるパケット受信の確認結果の統計（以下、「ポーリング統計情報」と表記）を負荷監視サーバ２に送信する。
【００１９】
負荷監視サーバ２は、仮想環境で動作し、ポーリング統計情報を分析することによりＵ−Ｐｌａｎｅ装置１のパケット処理の負荷の度合い（以下、「負荷レベル」と表記）を判断する。負荷監視サーバ２は、Ｕ−Ｐｌａｎｅ装置１と連携してパケット処理の負荷監視方法を実行することにより、パケットロスのリスクを検知する。負荷監視サーバ２は、負荷レベルを操作端末５に通知する。なお、負荷レベルの通知は、操作端末５からの要求に応じて行われてもよい。
【００２０】
操作端末５は、例えばパーソナルコンピュータなどの装置であり、負荷監視サーバ２及びリソース管理サーバ３に対して各種の操作を行う。操作端末５は、負荷監視サーバ２から負荷レベルの通知を受けると、例えばディスプレイなどに表示する。操作端末５のオペレータは、負荷レベルに応じＵ−Ｐｌａｎｅ装置１のハードウェアリソース（以下、単に「リソース」と表記）の割り当てを変更し、リソース割り当てコマンドをリソース管理サーバ３に送信する。
【００２１】
リソース管理サーバ３は、仮想環境で動作し、リソース割り当てコマンドに従ってＵ−Ｐｌａｎｅ装置１のリソースの割り当てを変更する。リソース管理サーバ３は、リソース割り当てを示すリソース情報をＵ−Ｐｌａｎｅ装置１に送信する。Ｕ−Ｐｌａｎｅ装置１は、リソース割り当て情報に従ってリソースが変更される。
【００２２】
Ｕ−Ｐｌａｎｅ装置１、負荷監視サーバ２、及びリソース管理サーバ３は、汎用サーバにより構成される。
【００２３】
図３は、汎用サーバの一例を示す構成図である。汎用サーバは、ＣＰＵ７０ａ，７０ｂと、メモリコントローラ７１ａ，７１ｂと、メモリ７２ａ，７２ｂと、Ｉ／Ｏ（Input/output）コントローラ７３ａ，７３ｂと、チップセットコントローラ７４と、ＨＤＤ（Hard Disk Drive）７５と、ＮＩＣ（Network Interface Card）７６ａ，７６ｂとを有する。
【００２４】
ＣＰＵ７０ａ，７０ｂは演算処理回路である。メモリ７２ａ，７２ｂには、ＣＰＵ７０ａ，７０ｂをそれぞれ駆動するプログラムが格納されている。ＣＰＵ７０ａ，７０ｂは、メモリ７２ａ，７２ｂからそれぞれプログラムを読み出して実行する。これにより、ＣＰＵ７０ａ，７０ｂには、後述する各種の機能が形成される。
【００２５】
メモリコントローラ７１ａ，７１ｂは、ＣＰＵ７０ａ，７０ｂからメモリ７２ａ，７２ｂに対するアクセスを制御する。メモリコントローラ７１ａ，７１ｂは、例えばＡＳＩＣ（Application Specified Integrated Circuit）などのハードウェアにより構成される。
【００２６】
ＮＩＣ７６ａ，７６ｂは、物理的なネットワークインターフェースであり、ＬＡＮなどのネットワークを介し他装置との通信を処理する。ＣＰＵ７０ａ，７０ｂは、ＮＩＣ７６ａ，７６ｂにアクセスすることによりパケットを送受信する。Ｉ／Ｏコントローラ７３ａ，７３ｂは、ＣＰＵ７０ａ，７０ｂからＮＩＣ７６ａ，７６ｂに対するアクセスを制御する。Ｉ／Ｏコントローラ７３ａ，７３ｂは、例えばＡＳＩＣなどのハードウェアにより構成される。また、Ｉ／Ｏコントローラ７３ａは、ＣＰＵ７０ａからチップセットコントローラ７４に対するアクセスも制御する。
【００２７】
チップセットコントローラ７４は、ＣＰＵ７０ａからＨＤＤ７５及びＮＩＣ７６ａに対するアクセスを制御する。ＨＤＤ７５には、ＣＰＵ７０ａ，７０ｂのプログラムで用いられる変数などが格納されている。チップセットコントローラ７４は、一方のＣＰＵ７０ａだけに設けられるが、他方のＣＰＵ７０ｂにも設けられてもよい。チップセットコントローラ７４は、例えばＡＳＩＣなどのハードウェアにより構成される。
【００２８】
ＣＰＵ７０ａ，７０ｂは、プログラムに従って１以上の仮想サーバを形成することにより、Ｕ−Ｐｌａｎｅ装置１、負荷監視サーバ２、及びリソース管理サーバ３の機能を実現する。
【００２９】
図４は、比較例のＵ−Ｐｌａｎｅ装置１の機能を示す構成図である。Ｕ−Ｐｌａｎｅ装置１において、ＣＰＵ７０ａ，７０ｂには、プログラムに従って、ＯＳ（Operating System）１５の機能である仮想化レイヤ１６及びドライバ１７が形成される。ＯＳ１５としては、例えばＬｉｎｕｘ（登録商標、以下同様）などの汎用のものが挙げられる。ドライバ１７は、ＮＩＣ７６ａ，７６ｂに対応する物理的なインターフェース１８を駆動する。
【００３０】
また、ＣＰＵ７０ａ，７０ｂには、プログラムに従って、仮想化レイヤ１６上で機能する仮想サーバ１０が形成される。仮想サーバ１０には、Ｌｉｎｕｘなどの汎用のＯＳ１２と、通信処理アプリケーション（ＡＰＬ）１１ａと、ドライバ１３と、仮想的なインターフェース１４とが設けられる。仮想的なインターフェース１４は、仮想化ネットワークインターフェースの一例であり、仮想サーバ１０と仮想化レイヤ１６との間のパケットの送受信処理を行う。
【００３１】
通信処理ＡＰＬ１１ａは、ＯＳ１２上で動作し、パケット処理を行う。通信処理ＡＰＬ１１ａは、複数個所に分散したパケットの統計情報（＃１〜＃３）を収集する。例えば、通信処理ＡＰＬ１１ａは、仮想的なインターフェース１４を介して物理的なインターフェース１８から統計情報（＃１）を収集し、仮想的なインターフェース１４から統計情報（＃２）を収集する。また、通信処理ＡＰＬ１１ａは、仮想化レイヤ１６から統計情報（＃３）を収集する。このため、通信処理ＡＰＬ１１ａは、所定のシーケンスに従って通信を行うことによって統計情報（＃１〜＃３）を収集する必要があり、処理オーバヘッドが大きくなる。
【００３２】
また、例えば仮想サーバ１０と仮想化レイヤ１６が別々の会社により運用される場合、セキュリティ上の理由により仮想サーバ１から仮想化レイヤ１６への情報の参照が制限されるため、統計情報の収集ができない場合がある（×印参照）。
【００３３】
また、通信処理ＡＰＬ１１ａは、汎用のＯＳ１２に実装されたプロファイラ１６０を用いて、関数ごとにＣＰＵ使用率を算出することによりタスク使用率が算出されるが、そのデータ積み上げ処理のため、処理オーバヘッドが大きい。
【００３４】
そこで、実施例のＵ−Ｐｌａｎｅ装置１は、仮想的なインターフェース１４に対するパケットのポーリング処理からポーリング統計情報を取得して負荷監視サーバ２に送信する。
【００３５】
図５は、実施例のＵ−Ｐｌａｎｅ装置１の機能を示す構成図である。図５において、図４と共通する構成には同一の符号を付し、その説明は省略する。
【００３６】
通信処理ＡＰＬ１１には、機能として、パケット処理部１１０と、統計情報算出部１１１、及び統計情報通知部１１２が設けられている。受信されたパケットは、物理的なインターフェース１８の受信バッファ１８０に格納され、仮想化レイヤ１６の機能により受信バッファ１８０から読み出されて仮想的なインターフェース１４に入力される。なお、受信バッファ１８０はバッファの一例である。
【００３７】
パケット処理部１１０は、ドライバ１３を介して仮想的なインターフェース１４にアクセスすることにより処理対象のパケットの有無を判定する。つまり、パケット処理部１１０は、仮想的なインターフェース１４に対しポーリング処理を行うことにより処理対象のパケットを検出する。このため、Ｕ−Ｐｌａｎｅ装置１は、統計情報の収集による通信処理の処理オーバヘッドを低減することができる。
【００３８】
パケット処理部１１０は、判定部の一例であり、処理対象のパケットの有無の判定を繰り返し、処理対象のパケットが有ると判定した場合、判定を中断してそのパケットの処理を行った後、判定を再開する。パケット処理としては、受信処理が挙げられるが、これに限定されない。また、パケット処理部１１０は、処理対象のパケットが無いと判定した場合、判定を続行する。このため、パケット処理部１１０は、ポーリング処理及びパケット処理の一方のみを行う。
【００３９】
統計情報算出部１１１は、パケット処理部１１０から判定結果を取得する。統計情報算出部１１１は、算出部の一例であり、単位時間（例えば１０秒間）内にパケット処理部１１０が、処理対象のパケットが無いと判定した回数（以下、「パケット未検出数」と表記）及び処理対象のパケットが有ると連続で判定した回数（以下、「連続パケット検出数」と表記）を算出する。
【００４０】
パケット処理部１１０は、処理対象のパケットが有ると判定した場合だけパケット処理を行う。このため、パケット未検出数と連続パケット検出数からパケット処理の負荷の監視が可能である。
【００４１】
例えば、パケット処理部１１０は、単位時間内で連続パケット検出数が所定の閾値を超えた回数を、パケット未検出数とともにポーリング統計情報として統計情報通知部１１２に出力する。統計情報通知部１１２は、ポーリング統計情報を物理的なインターフェース１８から負荷監視サーバ２に送信する。
【００４２】
図６は、負荷監視サーバ２の機能の一例を示す構成図である。負荷監視サーバ２において、ＣＰＵ７０ａ，７０ｂには、プログラムに従って、ＯＳ２５の機能である仮想化レイヤ２６及びドライバ２７が形成される。ＯＳ２５としては、例えばＬｉｎｕｘなどの汎用のものが挙げられる。ドライバ２７は、ＮＩＣ７６ａ，７６ｂに対応する物理的なインターフェース２８を駆動する。
【００４３】
また、ＣＰＵ７０ａ，７０ｂには、プログラムに従って、仮想化レイヤ２６上で機能する仮想サーバ２０が形成される。仮想サーバ２０には、Ｌｉｎｕｘなどの汎用のＯＳ２２と、負荷監視アプリケーション（ＡＰＬ）２１と、ドライバ２３と、仮想的なインターフェース２４とが設けられる。仮想的なインターフェース２４は、仮想サーバ２０と仮想化レイヤ２６との間の通信処理を行う。
【００４４】
負荷監視ＡＰＬ２１は、ＯＳ２２上で動作し、Ｕ−Ｐｌａｎｅ装置１のパケット処理の負荷を監視する。負荷監視ＡＰＬ２１には、機能として、統計情報取得部２１０と、負荷レベル解析部２１１と、負荷レベル通知部２１２とが設けられている。
【００４５】
統計情報取得部２１０は、仮想的なインターフェース２４にアクセスすることにより、物理的なインターフェース２８から、Ｕ−Ｐｌａｎｅ装置１が送信したポーリング統計情報を取得する。統計情報取得部２１０は、ポーリング統計情報を負荷レベル解析部２１１に出力する。
【００４６】
負荷レベル解析部２１１は、負荷判断部の一例であり、ポーリング統計情報に基づいて負荷レベルを判断する。このため、負荷監視サーバ２は、負荷レベルにより監視結果を通知することができる。負荷レベル解析部２１１は、負荷レベルを負荷レベル通知部２１２に出力する。負荷レベル通知部２１２は、仮想的なインターフェース２４にアクセスすることにより、負荷レベルを物理的なインターフェース２８から操作端末５に送信する。
【００４７】
図７は、リソース管理サーバ３の一例を示す構成図である。リソース管理サーバ３において、ＣＰＵ７０ａ，７０ｂには、プログラムに従って、ＯＳ３５の機能である仮想化レイヤ３６及びドライバ３７が形成される。ＯＳ３５としては、例えばＬｉｎｕｘなどの汎用のものが挙げられる。ドライバ３７は、ＮＩＣ７６ａ，７６ｂに対応する物理的なインターフェース３８を駆動する。
【００４８】
また、ＣＰＵ７０ａ，７０ｂには、プログラムに従って、仮想化レイヤ３６上で機能する仮想サーバ３０が形成される。仮想サーバ３０には、Ｌｉｎｕｘなどの汎用のＯＳ３２と、リソース管理アプリケーション（ＡＰＬ）３１と、ドライバ３３と、仮想的なインターフェース３４とが設けられる。仮想的なインターフェース３４は、仮想サーバ３０と仮想化レイヤ３６との間の通信処理を行う。
【００４９】
リソース管理ＡＰＬ３１は、ＯＳ３２上で動作し、Ｕ−Ｐｌａｎｅ装置１のリソースを管理する。リソース管理ＡＰＬ３１には、機能として、指示受付部３１０と、リソース割り当て部３１１と、リソース通知部３１２とが設けられている。
【００５０】
指示受付部３１０は、仮想的なインターフェース３４にアクセスすることにより、物理的なインターフェース３８から、操作端末５が送信したリソース割り当てコマンドを受け付ける。指示受付部３１０は、リソース割り当てコマンドに指示されたパラメータをリソース割り当て部３１１に出力する。リソース割り当て部３１１は、Ｕ−Ｐｌａｎｅ装置１に割り当てるリソース量をパラメータに基づき算出し、リソース通知部３１２に出力する。
【００５１】
リソース通知部３１２は、リソース量に基づくリソース割り当て情報を生成する。リソース通知部３１２は、仮想的なインターフェース３４にアクセスすることにより、物理的なインターフェース３８からリソース割り当て情報をＵ−Ｐｌａｎｅ装置１に送信する。
【００５２】
図８は、Ｕ−Ｐｌａｎｅ装置１の動作の一例を示す図である。図８において、横軸は時刻を示し、丸印は、ポーリング処理により処理対象のパケットが有ると判定したこと（パケットの検出）を示し、×印は、ポーリング処理により処理対象のパケットが無いと判定したこと（パケットの未検出）を示す。
【００５３】
通信処理ＡＰＬ１１は、例えば一定の時間間隔で仮想的なインターフェース１４にアクセスすることにより処理対象のパケットの有無を判定し、単位時間Ｔ内の判定結果に基づきポーリング統計情報を生成する。本例において、パケットの未検出が６回連続した後、時刻ｔ１でパケットが検出される。このため、通信処理ＡＰＬ１１は、時刻ｔ１においてポーリング処理を中断してパケット処理を行う。なお、パケット処理では、仮想的なインターフェース１４で検出した１以上のパケットの受信処理などが実行されるが、その処理時間は通信処理ＡＰＬ１１の状態などに応じて変動する。
【００５４】
通信処理ＡＰＬ１１は、時刻ｔ２においてパケット処理を完了しポーリング処理を再開する。その後、１回だけパケットの未検出となるが、時刻ｔ３で再びパケットが検出されると、パケット処理が行われて時刻ｔ４において完了する。これに続き、時刻ｔ５で再びパケットが検出されると、パケット処理が行われて時刻ｔ６において完了するその後、パケットの未検出が連続する。
【００５５】
通信処理ＡＰＬ１１は、単位時間Ｔ内のパケット未検出数が１０であり、単位時間Ｔ内の連続パケット検出数が２であると判断する。パケット未検出数が多いほど、パケット未検出数は増えるため、パケット未検出数からＵ−Ｐｌａｎｅ装置１のパケットの輻輳状態が判断される。また、連続パケット検出数はパケットのバースト受信の頻度を示すため、連続パケット検出数からパケットロスのリスクが判断される。
【００５６】
次に、Ｕ−Ｐｌａｎｅ装置１及び負荷監視サーバ２による負荷監視方法について述べる。
【００５７】
図９は、負荷監視方法で用いられる変数の名称の一覧を示す図である。最大ポーリング数は、処理対象のパケットが無い場合に単位時間Ｔ内に実行可能なパケットの有無の判定の最大回数である。つまり、最大ポーリング数Ｎは、単位時間Ｔ内に実行可能なポーリングの最大数である。最大ポーリング数Ｎは、例えばＵ−Ｐｌａｎｅ装置１の起動時、トラフィックの負荷がない状態においてパケット処理部１１０により計測される。
【００５８】
連続パケット検出数Ｎｃは、上記のように、ポーリング処理において単位時間Ｔ内に連続でパケットが検出された回数である。つまり、連続パケット検出数Ｎｃは、パケット処理部１１０が、単位時間Ｔ内に処理対象のパケットが有ると連続で判定した回数である。
【００５９】
パケット未検出数Ｎｘは、上記のように、ポーリング処理において単位時間Ｔ内に連続でパケットが検出されなかった回数である。つまり、パケット未検出数Ｎｘは、パケット処理部１１０が、単位時間Ｔ内に処理対象のパケットが無いと判定した回数である。
【００６０】
警告数Ｎｗは、単位時間Ｔ内に連続パケット検出数Ｎｃが閾値ＴＨｗを超えた回数である。閾値ＴＨｗは、例えば、受信バッファ１８０の最大パケット格納数Ｍの半分（Ｍ／２）に設定される。最大パケット格納数Ｍは、受信バッファ１８０が、パケットロスを発生させずに処理対象のパケットを格納できる格納量である。
【００６１】
エラー数Ｎｅは、単位時間Ｔ内に連続パケット検出数Ｎｃが閾値ＴＨｅを超えた回数である。閾値ＴＨｅは、例えば、受信バッファ１８０の最大パケット格納数Ｍに設定される。
【００６２】
図１０は、Ｕ−Ｐｌａｎｅ装置１の動作の一例を示すフローチャートである。Ｕ−Ｐｌａｎｅ装置１が起動すると、統計情報算出部１１１は、最大ポーリング数Ｎ及び最大パケット格納数Ｍを初期設定する（ステップＳｔ１）。次に、統計情報算出部１１１は、単位時間Ｔを監視するためのタイマを起動する（ステップＳｔ２）。なお、タイマは、統計情報算出部１１１の一部として構成されてもよいし、カウンタ回路などにより構成されてもよい。
【００６３】
次に、統計情報算出部１１１は、連続パケット検出数Ｎｃと、パケット未検出数Ｎｘと、警告数Ｎｗと、エラー数Ｎｅとを０に設定する（ステップＳｔ３）。次に、パケット処理部１１０は通信処理を行う（ステップＳｔ４）。なお、通信処理については後述する。
【００６４】
次に、統計情報算出部１１１は、タイマが満了したか否かを判定する（ステップＳｔ５）。なお、タイマの満了時間は、例えば１０秒とする。タイマが満了していない場合（ステップＳｔ５のＮｏ）、パケット処理部１１０は再びポーリング処理を行う（ステップＳｔ４）。その後、再びステップＳｔ５の処理が行われる。
【００６５】
統計情報算出部１１１は、タイマが満了している場合（ステップＳｔ５のＹｅｓ）、ポーリング統計情報を統計情報通知部１１２から負荷監視サーバ２に送信する（ステップＳｔ６）。ポーリング統計情報には、最大ポーリング数、パケット未検出数Ｎｘ、警告数Ｎｗ、及びエラー数Ｎｅが含まれる。次に、統計情報算出部１１１は、タイマをリセットし（ステップＳｔ７）、再びステップＳｔ３以降の処理を行う。このようにして、Ｕ−Ｐｌａｎｅ装置１は動作する。
【００６６】
図１１は、通信処理の一例を示すフローチャートである。本処理は、ステップＳｔ４において行われる。
【００６７】
パケット処理部１１０は仮想的なインターフェース１４にアクセスする（ステップＳｔ１１）。次に、パケット処理部１１０は、仮想的なインターフェース１４に処理対象のパケットが有るか否かを判定する（ステップＳｔ１２）。このとき、例えばパケット処理部１１０は、仮想的なインターフェース１４に割り当てられたメモリ７２ａ，７２ｂにアクセスすることによりパケットの有無を判定する。
【００６８】
統計情報算出部１１１は、パケット処理部１１０が処理対象のパケットが有ると判定した場合（ステップＳｔ１２のＹｅｓ）、連続パケット検出数Ｎｃに１を加算する（ステップＳｔ１３）。次に、統計情報算出部１１１は、連続パケット検出数Ｎｃと閾値ＴＨｅを比較する（ステップＳｔ１４）。より具体的には、統計情報算出部１１１は、連続パケット検出数Ｎｃが、受信バッファ１８０の最大パケット格納数Ｍを超えたか否かを判定する。
【００６９】
統計情報算出部１１１は、連続パケット検出数Ｎｃが閾値ＴＨｅより大きい場合（ステップＳｔ１４のＹｅｓ）、エラー数Ｎｅに１を加算する（ステップＳｔ１５）。次に、統計情報算出部１１１は、連続パケット検出数Ｎｃを０にリセットする（ステップＳｔ１６）。
【００７０】
次に、パケット処理部１１０は、処理対象のパケットを処理する（ステップＳｔ１７）。このパケット処理としては、受信処理が挙げられ、例えばパケット内のユーザ信号の変換や転送先ノードの検出などがある。このとき、パケット処理の時間は、例えば、処理対象のパケットの数やパケット内のユーザ信号の内容に応じて変動する。パケット処理部１１０は、パケット処理の実行中、処理対象のパケットの有無の判定を中断し、パケット処理の完了後に再開する。より具体的には、パケット処理の後、図１０のステップＳｔ５〜Ｓｔ７とステップＳｔ３の各処理を経て、再び通信処理（ステップＳｔ４）において、処理対象のパケットの有無の判定（ステップＳｔ１２）が行われる。
【００７１】
また、パケット処理部１１０は、連続パケット検出数Ｎｃが閾値ＴＨｅ以下である場合（ステップＳｔ１４のＮｏ）、ステップＳｔ１５，Ｓｔ１６の各処理が行われることなく、パケット処理を行う（ステップＳｔ１７）。
【００７２】
また、統計情報算出部１１１は、パケット処理部１１０が、処理対象のパケットが無いと判定した場合（ステップＳｔ１２のＮｏ）、連続パケット検出数Ｎｃと閾値ＴＨｗを比較する（ステップＳｔ１８）。より具体的には、統計情報算出部１１１は、連続パケット検出数Ｎｃが、受信バッファ１８０の最大パケット格納数Ｍの半分を超えたか否かを判定する。
【００７３】
統計情報算出部１１１は、連続パケット検出数Ｎｃが閾値ＴＨｗより大きい場合（ステップＳｔ１８のＹｅｓ）、警告数Ｎｗに１を加算する（ステップＳｔ１９）。次に、統計情報算出部１１１は、連続パケット検出数Ｎｃと閾値ＴＨｅを比較する（ステップＳｔ２０）。統計情報算出部１１１は、連続パケット検出数Ｎｃが閾値ＴＨｅより大きい場合（ステップＳｔ２０のＹｅｓ）、エラー数Ｎｅに１を加算する（ステップＳｔ２１）。
【００７４】
次に、統計情報算出部１１１は、連続パケット検出数Ｎｃを０にリセットする（ステップＳｔ２２）。次に、統計情報算出部１１１は、パケット未検出数Ｎｘに１を加算する（ステップＳｔ２３）。
【００７５】
また、統計情報算出部１１１は、連続パケット検出数Ｎｃが閾値ＴＨｗ以下である場合（ステップＳｔ１８のＮｏ）、ステップＳｔ１９〜Ｓｔ２１の各処理を行うことなく、ステップＳｔ２２，Ｓｔ２３の各処理を行う。また、統計情報算出部１１１は、連続パケット検出数Ｎｃが閾値ＴＨｅ以下である場合（ステップＳｔ２０のＮｏ）、ステップＳｔ２１の処理を行うことなく、ステップＳｔ２２，Ｓｔ２３の各処理を行う。このようにして、通信処理は行われる。
【００７６】
図１２及び図１３は、Ｕ−Ｐｌａｎｅ装置１の動作パタンの例を示す図である。図１２及び図１３において、図８と共通する構成及び表記については、その設定を省略する。また、符号ｔｐは、最新の判定処理（つまりポーリング処理）が行われる現在時刻を示す。なお、本例では、閾値ＴＨｗ＝２及び閾値ＴＨｅ＝４と仮定する。
【００７７】
符号Ｇ１は、単位時間Ｔ内の全ての判定処理において、処理対象のパケットが検出されない場合の動作例を示す。この場合、図１１のフローチャートでは、ステップＳｔ１２のＮｏ、ステップＳｔ１８のＮｏ、及びステップＳｔ２２，Ｓｔ２３の順序で処理が行われる。その結果、ステップＳｔ６で送信されるポーリング統計情報には、パケット未検出数Ｎｘ＝２５、警告数Ｎｗ＝０、及びエラー数Ｎｅ＝０が含まれる。
【００７８】
符号Ｇ２は、単位時間Ｔ内の各判定処理において、警告の閾値ＴＨｗを超えるまで処理対象のパケットが連続で検出された後、処理対象のパケットが無いと判定された場合の動作例を示す。この場合、図１１のフローチャートでは、ステップＳｔ１２のＮｏ、ステップＳｔ１８のＹｅｓ、ステップＳｔ１９、ステップＳｔ２０のＮｏ、及びステップＳｔ２２，Ｓｔ２３の順序で処理が行われる。その結果、ステップＳｔ６で送信されるポーリング統計情報には、パケット未検出数Ｎｘ＝６、警告数Ｎｗ＝１、及びエラー数Ｎｅ＝０が含まれる。
【００７９】
符号Ｇ３は、単位時間Ｔ内の各判定処理において、エラーの閾値ＴＨｅを超えるまで処理対象のパケットが連続で検出された後、処理対象のパケットが無いと判定された場合の動作例を示す。この場合、図１１のフローチャートでは、ステップＳｔ１２のＮｏ、ステップＳｔ１８のＹｅｓ、ステップＳｔ１９、ステップＳｔ２０のＹｅｓ、及びステップＳｔ２１〜Ｓｔ２３の順序で処理が行われる。その結果、ステップＳｔ６で送信されるポーリング統計情報には、パケット未検出数Ｎｘ＝１、警告数Ｎｗ＝１、及びエラー数Ｎｅ＝１が含まれる。
【００８０】
符号Ｇ４は、単位時間Ｔ内の各判定処理において、エラーの閾値ＴＨｅを超えるまで処理対象のパケットが連続で検出された後、処理対象のパケットが有ると判定された場合の動作例を示す。この場合、図１１のフローチャートでは、ステップＳｔ１２のＹｅｓ、ステップＳｔ１３、ステップＳｔ１４のＹｅｓ、及びステップＳｔ１５〜Ｓｔ１７の順序で処理が行われる。その結果、ステップＳｔ６で送信されるポーリング統計情報には、パケット未検出数Ｎｘ＝４、警告数Ｎｗ＝１、及びエラー数Ｎｅ＝１が含まれる。
【００８１】
符号Ｇ５は、単位時間Ｔ内の各判定処理において、パケットが不連続で検出された後、処理対象のパケットが有ると判定された場合の動作例を示す。この場合、図１１のフローチャートでは、ステップＳｔ１２のＹｅｓ、ステップＳｔ１３、ステップＳｔ１４のＮｏ、及びステップＳｔ１７の順序で処理が行われる。その結果、ステップＳｔ６で送信されるポーリング統計情報には、パケット未検出数Ｎｘ＝１４、警告数Ｎｗ＝０、及びエラー数Ｎｅ＝０が含まれる。
【００８２】
このように、パケット処理部１１０は、処理対象のパケットの有無の判定を繰り返し、処理対象のパケットが有ると判定した場合、判定を中断してパケットの処理を行った後、判定を再開し、処理対象のパケットが無いと判定した場合、判定を続行する。統計情報算出部１１１は、単位時間Ｔ内にパケット処理部１１０が、処理対象のパケットが無いと判定した回数及び処理対象のパケットが有ると連続で判定した回数を算出する。
【００８３】
上記の構成によると、Ｕ−Ｐｌａｎｅ装置１は、処理対象のパケットの有無の判定結果を集計することにより、処理対象のパケットが無いと判定した回数及び処理対象のパケットが有ると連続で判定した回数を算出する。このため、Ｕ−Ｐｌａｎｅ装置１は、比較例とは異なり、パケットの送受信の統計情報を収集しないので、処理オーバヘッドの増加が抑制される。
【００８４】
また、Ｕ−Ｐｌａｎｅ装置１は、単位時間Ｔ内にパケット処理部１１０が、処理対象のパケットが無いと判定した回数及び処理対象のパケットが有ると連続で判定した回数を算出するので、パケット処理の負荷の指標を得ることができる。したがって、負荷監視サーバ２は、Ｕ−Ｐｌａｎｅ装置１が算出した各判定の回数から、仮想化環境におけるパケット処理の負荷を容易に監視することができる。
【００８５】
次に、負荷監視サーバ２の処理について述べる。
【００８６】
図１４は、負荷監視サーバ２の動作の一例を示すフローチャートである。統計情報取得部２１０は、Ｕ−Ｐｌａｎｅ装置１から物理的なインターフェース２８を介してポーリング統計情報を取得する（ステップＳｔ３１）。ポーリング統計情報は負荷レベル解析部２１１に出力される。
【００８７】
次に、負荷レベル解析部２１１は、パケット処理の負荷の指標として負荷率を算出する（ステップＳｔ３２）。
【００８８】
Ｒ＝（１−Ｎｘ／Ｎ）×１００     ・・・（１）
【００８９】
負荷レベル解析部２１１は、例えば、ポーリング統計情報に含まれる最大ポーリング数Ｎ及びパケット未検出数Ｎｘに基づいて、上記の式（１）から負荷率Ｒを算出する。負荷率Ｒは、ＣＰＵ７０ａ，７０ｂのタスク使用率に該当し、正常なパケット処理が可能となるための基準値（例えば８０％）と比較される。なお、負荷率Ｒは、最大ポーリング数Ｎに対するパケット未検出数Ｎｘの比の一例である。
【００９０】
次に、負荷レベル解析部２１１は、エラー数Ｎｅが１以上であるか否かを判定する（ステップＳｔ３３）。負荷レベル解析部２１１は、エラー数Ｎｅが１以上である場合（ステップＳｔ３３のＹｅｓ）、負荷レベルを「Ｅｒｒｏｒ」に決定する（ステップＳｔ３４）。負荷レベル「Ｅｒｒｏｒ」は、その時刻にＵ−Ｐｌａｎｅ装置１においてパケットロスが発生した可能性が高いことを示す。このため、負荷レベル「Ｅｒｒｏｒ」が発生した場合、早急なネットワークの設計の見直しが望まれる。
【００９１】
次に、負荷レベル解析部２１１は、パケットロスのリスクの指標値であるリスク回数をエラー数Ｎｅに決定する（ステップＳｔ３５）。負荷レベル及びリスク回数は負荷レベル通知部２１２に出力される。次に、負荷レベル通知部２１２は、負荷レベル及びリスク回数を、物理的なインターフェース２８を介して操作端末５に通知する（ステップＳｔ３６）。
【００９２】
また、負荷レベル解析部２１１は、エラー数Ｎｅが１未満である場合（ステップＳｔ３３のＮｏ）、負荷率Ｒが８０％以上であるか否かを判定する（ステップＳｔ３７）。負荷レベル解析部２１１は、負荷率Ｒが８０％以上である場合（ステップＳｔ３７のＹｅｓ）、警告数Ｎｗが１以上であるか否かを判定する（ステップＳｔ３８）。
【００９３】
負荷レベル解析部２１１は、警告数Ｎｗが１以上である場合（ステップＳｔ３８のＹｅｓ）、負荷レベルを「Ｗａｒｎｉｎｇ」に決定する（ステップＳｔ３９）。負荷レベル「Ｗａｒｎｉｎｇ」は、パケットロスの発生のリスクが高い状態を示す。このため、負荷レベル「Ｗａｒｎｉｎｇ」の頻度が増えた場合、ネットワークの設計の見直しが望まれる。
【００９４】
次に、負荷レベル解析部２１１は、リスク回数を警告数Ｎｗに決定する（ステップＳｔ４０）。次に、負荷レベル通知部２１２は、負荷レベル、リスク回数、及び負荷率Ｒを、物理的なインターフェース２８を介して操作端末５に通知する（ステップＳｔ４１）。
【００９５】
また、負荷レベル解析部２１１は、負荷率Ｒが８０％未満である場合（ステップＳｔ３７のＮｏ）、警告数Ｎｗが１以上であるか否かを判定する（ステップＳｔ４２）。
【００９６】
負荷レベル解析部２１１は、警告数Ｎｗが１以上である場合（ステップＳｔ４２のＹｅｓ）、負荷レベルを「Ｉｎｆｏｒｍａｔｉｏｎ」に決定する（ステップＳｔ４３）。負荷レベル「Ｉｎｆｏｒｍａｔｉｏｎ」は、パケットロスの発生のリスクが生じた状態を示す。このため、負荷レベル「Ｉｎｆｏｒｍａｔｉｏｎ」が生じた場合、他のＵ−Ｐｌａｎｅ装置１の負荷レベルとの比較結果に応じてネットワークの設計の見直しが望まれる。
【００９７】
次に、負荷レベル解析部２１１は、リスク回数を警告数Ｎｗに決定する（ステップＳｔ４４）。次に、負荷レベル通知部２１２は、負荷レベル、リスク回数、及び負荷率Ｒを、物理的なインターフェース２８を介して操作端末５に通知する（ステップＳｔ４５）。
【００９８】
また、負荷レベル解析部２１１は、警告数Ｎｗが１未満である場合（ステップＳｔ３８のＮｏ）、ステップＳｔ４３〜Ｓｔ４５の各処理を行う。
【００９９】
さらに、負荷レベル解析部２１１は、警告数Ｎｗが１未満である場合（ステップＳｔ４２のＮｏ）、負荷レベルを「Ｎｏｒｍａｌ」に決定する（ステップＳｔ４６）。負荷レベル「Ｎｏｒｍａｌ」は、パケットロスの発生のリスクがない状態を示す。このため、負荷レベル通知部２１２は、操作端末５から負荷確認コマンドを受けない限り、負荷レベル「Ｎｏｒｍａｌ」を操作端末５に通知しない。このようにして、負荷監視サーバ２は動作する。
【０１００】
このように、負荷監視サーバ２は、単位時間Ｔ内のパケット未検出数Ｎｘ及び連続パケット検出数Ｎｃに基づいてパケット処理の負荷レベルを判断し、判断結果を通知する。このため、負荷監視サーバ２は、仮想化環境におけるパケット処理の負荷を容易に監視することができる。
【０１０１】
例えば、負荷レベル解析部２１１は、ステップＳｔ３７の処理により、パケット処理の負荷率Ｒに基づいて負荷レベルを判断する。このため、負荷レベル解析部２１１は、ＣＰＵ７０ａ，７０ｂの実行中の処理のうち、パケット処理が占める比率から高精度に負荷レベルを判断することができる。
【０１０２】
また、例えば、負荷レベル解析部２１１は、警告数Ｎｗ及びエラー数Ｎｅに基づいて負荷レベルを判断する。つまり、負荷レベル解析部２１１は、連続パケット検出数Ｎｃと、受信バッファ１８０の最大パケット格納数Ｍに基づく閾値ＴＨｗ，ＴＨｅとの比較結果に基づいて、負荷レベルを判断する。このため、負荷監視サーバ２は、受信バッファ１８０の容量に基づいて高精度に負荷レベルを判断することができる。
【０１０３】
本例において、負荷レベル解析部２１１は、負荷率Ｒによらず、エラー数Ｎｅが１以上である場合、負荷レベルを「Ｅｒｒｏｒ」に決定し、負荷率Ｒが８０％以上であり、かつ、警告数Ｎｗが１以上である場合、負荷レベルを「Ｗａｒｎｉｎｇ」に決定する。また、負荷レベル解析部２１１は、負荷率Ｒが８０％以上である場合、または、警告数Ｎｗが１以上である場合、負荷レベルを「Ｉｎｆｏｒｍａｔｉｏｎ」に決定し、その他の場合、負荷レベルを「Ｎｏｒｍａｌ」に決定する。しかし、負荷レベルは、上記の定義に限定されず、例えばネットワーク設計に応じて適宜に決定されればよい。
【０１０４】
次に、リソース管理サーバ３の動作について述べる。
【０１０５】
図１５は、リソース管理サーバ３の動作の一例を示すフローチャートである。指示受付部３１０は、操作端末５から物理的なインターフェース３８を介してリソース割り当てコマンドが入力されたか否かを判定する（ステップＳｔ５１）。リソース割り当てコマンドが入力されていない場合（ステップＳｔ５１のＮｏ）、処理は終了する。
【０１０６】
リソース割り当てコマンドが入力されている場合（ステップＳｔ５１のＹｅｓ）、リソース割り当て部３１１は、リソース割り当てコマンドに従ってＵ−Ｐｌａｎｅ装置１のリソース割り当てを変更する（ステップＳｔ５２）。リソース割り当てコマンドには、例えば負荷レベル、負荷率Ｒ、及びリスク回数に基づくリソースの割り当てが示されている。
【０１０７】
次に、リソース通知部３１２は、リソース割り当ての変更に応じたリソース割り当て情報を、物理的なインターフェース３８からＵ−Ｐｌａｎｅ装置１に送信する（ステップＳｔ５３）。Ｕ−Ｐｌａｎｅ装置１は、リソース割り当て情報に従って、リソースを増加することにより、パケットロスのリスクを低減する。このようにして、リソース管理サーバ３は動作する。
【０１０８】
次に、負荷監視システムの動作について述べる。
【０１０９】
図１６は、負荷レベルが「Ｎｏｒｍａｌ」である場合の負荷監視システムの動作の一例を示す図である。図１６において、図２と共通する構成には同一の符号を付し、その設定は省略する。
【０１１０】
Ｕ−Ｐｌａｎｅ装置１は、ポーリング統計情報を取得して負荷監視サーバ２に送信する。このとき、符号Ｐ１１に示されるように、最大ポーリング数Ｎ＝１００、連続パケット検出数Ｎｃ＝８、パケット未検出数Ｎｘ＝８０、警告数Ｎｗ＝０、エラー数Ｎｅ＝０、及び最大パケット格納数Ｍ＝６４とする。
【０１１１】
負荷監視サーバ２は、符号Ｐ１２で示されるポーリング統計情報（Ｎ，Ｎｘ、Ｎｗ，Ｎｅ）から、符号Ｐ１３で示されるように、負荷率Ｒ＝２０％（＝（１−８０／１００）×１００）、警告数Ｎｗ≦０、及びエラー数Ｎｅ≦０を判定し、負荷レベルを「Ｎｏｒｍａｌ」に決定する。負荷監視サーバ２は、操作端末５から負荷確認コマンドを受信すると、負荷レベル「Ｎｏｒｍａｌ」を操作端末５に通知する。
【０１１２】
操作端末５のオペレータは、負荷レベルが「Ｎｏｒｍａｌ」であるため、リソースの割り当てを変更しない。
【０１１３】
図１７は、負荷レベルが「Ｗａｒｎｉｎｇ」である場合の負荷監視システムの動作の一例を示す図である。図１７において、図２と共通する構成には同一の符号を付し、その設定は省略する。
【０１１４】
Ｕ−Ｐｌａｎｅ装置１は、ポーリング統計情報を取得して負荷監視サーバ２に送信する。このとき、符号Ｐ２１に示されるように、最大ポーリング数Ｎ＝１００、連続パケット検出数Ｎｃ＝１６、パケット未検出数Ｎｘ＝１０、警告数Ｎｗ＝０、エラー数Ｎｅ＝０、及び最大パケット格納数Ｍ＝６４とする。
【０１１５】
負荷監視サーバ２は、符号Ｐ２２で示されるポーリング統計情報（Ｎ，Ｎｘ、Ｎｗ，Ｎｅ）から、符号Ｐ２３で示されるように、負荷率Ｒ＝９０％（＝（１−１０／１００）×１００）、警告数Ｎｗ≦０、及びエラー数Ｎｅ≦０を判定し、負荷レベルを「Ｗａｒｎｉｎｇ」に決定する。負荷監視サーバ２は、負荷レベル「Ｗａｒｎｉｎｇ」をＷａｒｎｉｎｇトラップとして操作端末５に通知する。
【０１１６】
このため、操作端末５のオペレータは、負荷確認コマンドを入力しなくても、負荷レベル「Ｗａｒｎｉｎｇ」を認識することができる。操作端末５のオペレータは、他のＵ−Ｐｌａｎｅ装置１（不図示）の負荷レベルとの比較結果に応じて、リソース割り当てコマンドを発行する。
【０１１７】
図１８は、負荷レベルが「Ｅｒｒｏｒ」である場合の負荷監視システムの動作の一例を示す図である。図１８において、図２と共通する構成には同一の符号を付し、その設定は省略する。
【０１１８】
Ｕ−Ｐｌａｎｅ装置１は、ポーリング統計情報を取得して負荷監視サーバ２に送信する。このとき、符号Ｐ３１に示されるように、最大ポーリング数Ｎ＝１００、連続パケット検出数Ｎｃ＝７０、パケット未検出数Ｎｘ＝３０、警告数Ｎｗ＝１０、エラー数Ｎｅ＝２、及び最大パケット格納数Ｍ＝６４とする。
【０１１９】
負荷監視サーバ２は、符号Ｐ３２で示されるポーリング統計情報（Ｎ，Ｎｘ、Ｎｗ，Ｎｅ）から、符号Ｐ３３で示されるように、負荷率Ｒ＝７０％（＝（１−３０／１００）×１００）、警告数Ｎｗ≧１、及びエラー数Ｎｅ≧１を判定し、負荷レベルを「Ｅｒｒｏｒ」に決定する。負荷監視サーバ２は、負荷レベル「Ｅｒｒｏｒ」をＥｒｒｏｒトラップとして操作端末５に通知する。
【０１２０】
このため、操作端末５のオペレータは、リソースの増加を指示するリソース割り当てコマンドをリソース管理サーバ３に送信する。リソース管理サーバ３は、リソース割り当てコマンドに従ってリソース割り当て情報をＵ−Ｐｌａｎｅ装置１に送信する。
【０１２１】
Ｕ−Ｐｌａｎｅ装置１は、リソース割り当て情報に従ってリソースを増加する。これにより、Ｕ−Ｐｌａｎｅ装置１は、パケットロスのリスクを低減する。
【０１２２】
このように、負荷監視サーバ２は、操作端末５に負荷レベルを通知するため、操作端末５のオペレータは、パケットロスの発生及びリスクのあるＵ−Ｐｌａｎｅ装置１を認識し、ネットワーク設計に有効な情報を得ることができる。このため、操作端末５のオペレータは、パケットロスの発生及びリスクがある場合、Ｕ−Ｐｌａｎｅ装置１のリソースの割り当てを変更することにより、Ｕ−Ｐｌａｎｅ装置１のパケット処理を安定化することができる。
【０１２３】
さらに、Ｕ−Ｐｌａｎｅ装置１は、リソース割り当て情報に従ってリソースを追加するため、ネットワーク運用の開始時のＵ−Ｐｌａｎｅ装置１の装置コスト及び運用コストの低減も可能となる。
【０１２４】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、処理装置が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体（ただし、搬送波は除く）に記録しておくことができる。
【０１２５】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ（Digital Versatile Disc）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）などの可搬型記録媒体の形態で販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１２６】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１２７】
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形して実施可能である。
【０１２８】
なお、以上の説明に関して更に以下の付記を開示する。
（付記１）  処理対象のパケットの有無の判定を繰り返し、
前記処理対象のパケットが有ると判定した場合、前記判定を中断して当該パケットの処理を行った後、前記判定を再開し、
前記処理対象のパケットが無いと判定した場合、前記判定を続行し、
単位時間内に前記処理対象のパケットが無いと判定した回数及び前記処理対象のパケットが有ると連続で判定した回数に基づいて、前記パケットの処理の負荷の度合いを判断し、該判断結果を通知することを特徴とする負荷監視方法。
（付記２）  前記処理対象のパケットが無い場合に前記単位時間内に実行可能な前記判定の最大回数に対する、前記処理対象のパケットが無いと判定した回数の比に基づいて、前記パケットの処理の負荷の度合いを判断することを特徴とする付記１に記載の負荷監視方法。
（付記３）  前記処理対象のパケットが有ると連続で判定した回数と、前記処理対象のパケットを格納するバッファの容量に基づく閾値とを比較し、該比較結果に基づいて、前記パケットの処理の負荷の度合いを判断することを特徴とする付記１または２に記載の負荷監視方法。
（付記４）  仮想化ネットワークインターフェースにアクセスすることにより前記判定を行うことを特徴とする付記１乃至３の何れかに記載の負荷監視方法。
（付記５）  処理対象のパケットの有無の判定を繰り返し、
前記処理対象のパケットが有ると判定した場合、前記判定を中断して当該パケットの処理を行った後、前記判定を再開し、
前記処理対象のパケットが無いと判定した場合、前記判定を続行し、
単位時間内に前記処理対象のパケットが無いと判定した回数及び前記処理対象のパケットが有ると連続で判定した回数を算出する、処理を、コンピュータに実行させることを特徴とするパケット処理プログラム。
（付記６）  前記単位時間内に前記処理対象のパケットが無いと判定した回数及び前記処理対象のパケットが有ると連続で判定した回数に基づいて、前記パケットの処理の負荷の度合いを判断する、処理を、前記コンピュータに実行させることを特徴とする付記５に記載のパケット処理プログラム。
（付記７）  前記パケットの処理の負荷の度合いを判断する処理において、前記処理対象のパケットが無い場合に前記単位時間内に実行可能な前記判定の最大回数に対する、前記処理対象のパケットが無いと判定した回数の比に基づいて、前記パケットの処理の負荷の度合いを判断することを特徴とする付記６に記載のパケット処理プログラム。
（付記８）  前記パケットの処理の負荷の度合いを判断する処理において、前記処理対象のパケットが有ると連続で判定した回数と、前記処理対象のパケットを格納するバッファの容量に基づく閾値とを比較し、該比較結果に基づいて、前記パケットの処理の負荷の度合いを判断することを特徴とする付記６または７に記載のパケット処理プログラム。
（付記９）  前記判定を繰り返す処理において、仮想化ネットワークインターフェースにアクセスすることにより前記判定を行うことを特徴とする付記５乃至８の何れかに記載のパケット処理プログラム。
（付記１０）  処理対象のパケットの有無の判定を繰り返し、前記処理対象のパケットが有ると判定した場合、前記判定を中断して当該パケットの処理を行った後、前記判定を再開し、前記処理対象のパケットが無いと判定した場合、前記判定を続行する判定部と、
単位時間内に前記判定部が、前記処理対象のパケットが無いと判定した回数及び前記処理対象のパケットが有ると連続で判定した回数を算出する算出部とを有することを特徴とするパケット処理装置。
（付記１１）  前記単位時間内に前記処理対象のパケットが無いと判定した回数及び前記処理対象のパケットが有ると連続で判定した回数に基づいて、前記パケットの処理の負荷の度合いを判断する負荷判断部を有することを特徴とする付記１０に記載のパケット処理装置。
（付記１２）  前記負荷判断部は、前記処理対象のパケットが無い場合に前記単位時間内に実行可能な前記判定の最大回数に対する、前記処理対象のパケットが無いと判定した回数の比に基づいて、前記パケットの処理の負荷の度合いを判断することを特徴とする付記１１に記載のパケット処理装置。
（付記１３）  前記負荷判断部は、前記処理対象のパケットが有ると連続で判定した回数と、前記処理対象のパケットを格納するバッファの容量に基づく閾値とを比較し、該比較結果に基づいて、前記パケットの処理の負荷の度合いを判断することを特徴とする付記１１または１２に記載のパケット処理装置。
（付記１４）  前記判定部は、仮想化ネットワークインターフェースにアクセスすることにより前記判定を行うことを特徴とする付記１０乃至１３の何れかに記載のパケット処理装置。
【符号の説明】
【０１２９】
１       Ｕ−Ｐｌａｎｅ装置
２       負荷監視サーバ
３       リソース管理サーバ
７０ａ，７０ｂ     ＣＰＵ
１００      パケット処理部
１１０      統計情報算出部
１４       インターフェース
【図１】
2019080191.tif 000003
【図２】
2019080191.tif 000004
【図３】
2019080191.tif 000005
【図４】
2019080191.tif 000006
【図５】
2019080191.tif 000007
【図６】
2019080191.tif 000008
【図７】
2019080191.tif 000009
【図８】
2019080191.tif 000010
【図９】
2019080191.tif 000011
【図１０】
2019080191.tif 000012
【図１１】
2019080191.tif 000013
【図１２】
2019080191.tif 000014
【図１３】
2019080191.tif 000015
【図１４】
2019080191.tif 000016
【図１５】
2019080191.tif 000017
【図１６】
2019080191.tif 000018
【図１７】
2019080191.tif 000019
【図１８】
2019080191.tif 000020