(57)【要約】【課題】ネットワークに負荷をかけることなくコンピュータ内におけるパケット処理の遅延を計測する。【解決手段】パケット処理機能部１２１，１５１は、自身内の複数の所定の遅延計測ポイントにおいて自身内のパケット処理のイベント発生を検出すると当該パケットの識別情報と遅延計測ポイントの識別情報を含むイベント情報を生成し、タイムスタンプ付与機能部１２３，１５３が前記イベント情報に対してタイムスタンプを付与し、遅延算出機能部１２４が同一のパケットについての複数のイベント情報に基づき遅延計測ポイント間における遅延時間を算出する。【選択図】図２
2020178313.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続され且つパケット処理機能部を有するコンピュータ内におけるパケット処理による遅延を計測するネットワーク遅延計測方法であって、
前記パケット処理機能部が、自身内の複数の所定の遅延計測ポイントにおいてパケットの処理イベントが発生した際に当該パケットの識別情報及び遅延計測ポイントの識別情報を含むイベント情報を生成するステップと、
タイムスタンプ付与機能部が、前記パケット処理機能部により生成されたイベント情報に対してタイムスタンプを付与するステップと、
遅延算出機能部が、前記タイムスタンプ付与機能部によりタイムスタンプが付与された同一のパケットについての複数のイベント情報に基づき遅延計測ポイント間における遅延時間を算出するステップとを備えた
ことを特徴とするネットワーク遅延計測方法。
【請求項２】
前記コンピュータは、ハードウェア上に仮想化環境を構築する仮想化環境構築部と、前記仮想化環境構築部により構築された仮想コンピュータとを備えるとともに、前記仮想化環境構築部及び前記仮想コンピュータは、それぞれ前記パケット処理機能部及び前記タイムスタンプ付与機能部並びに計時機能部を備え、前記タイムスタンプ付与機能部は、前記計時機能部で計時される時刻情報に基づきタイムスタンプを付与し、
前記仮想化環境構築部の時刻同期機能部が、前記仮想コンピュータから参照可能なメモリ上に前記仮想化環境構築部の前記計時機能部で計時される時刻情報を保存するステップと、
前記仮想コンピュータの時刻同期機能部が、前記メモリ上の時刻情報を参照して前記仮想コンピュータの前記計時機能部と前記仮想化環境構築部の前記計時機能部とを同期させるステップとを備えた
ことを特徴とする請求項１記載のネットワーク遅延計測方法。
【請求項３】
前記遅延算出機能部を前記仮想化環境構築部内に設けた
ことを特徴とする請求項２記載のネットワーク遅延計測方法。
【請求項４】
前記コンピュータのカーネル内部に前記パケット処理機能部を設けた
ことを特徴とする請求項１記載のネットワーク遅延計測方法。
【請求項５】
前記仮想化環境構築部のカーネル内部に前記パケット処理機能部を設けるとともに、前記仮想コンピュータのカーネル内部に前記パケット処理機能部を設けた
ことを特徴とする請求項２記載のネットワーク遅延計測方法。
【請求項６】
前記パケット処理機能部はパケットが流通する一連の複数の処理部により処理されるよう構成され、
前記遅延計測ポイントを前記複数の処理部の間に設定した
ことを特徴とする請求項１乃至５何れか１項記載のネットワーク遅延計測方法。
【請求項７】
ネットワークに接続され且つパケット処理機能部を有するコンピュータ内におけるパケット処理による遅延を計測するネットワーク遅延計測装置であって、
前記パケット処理機能部は、自身内の複数の所定の遅延計測ポイントにおいてパケットの処理イベントが発生した際に当該パケットの識別情報及び遅延計測ポイントの識別情報を含むイベント情報を生成し、
前記ネットワーク遅延計測装置は、
前記パケット処理機能部により生成されたイベント情報に対してタイムスタンプを付与するタイムスタンプ付与機能部と、
前記タイムスタンプ付与機能部によりタイムスタンプが付与された同一のパケットについての複数のイベント情報に基づき遅延計測ポイント間における遅延時間を算出する遅延算出機能部とを備えた
ことを特徴とするネットワーク遅延計測装置。
【請求項８】
コンピュータを請求項７記載のネットワーク遅延計測装置の各部として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークの遅延計測に関し、コンピュータ内におけるパケット処理の遅延を計測する技術に関する。
【背景技術】
【０００２】
従来、ネットワーク遅延を計測する技術について、非仮想化環境でも利用できる技術はアクティブ型とパッシブ型のネットワーク遅延計測技術が提案されている（特許文献１及び２参照）。
【０００３】
特許文献１に記載のものは、アクティブ型のネットワーク遅延計測技術である。特許文献１に記載のものでは、図５（ａ）に示すように、試験パケット生成装置１が、主信号に係るパケットとは別に試験パケットを生成し、ネットワーク２に印可する。試験パケットのプロトコルとして例えばＰＩＮＧが挙げられる。当該試験パケットは、ネットワークを介して、すなわちネットワークを構成するパケット転送装置２を介して、試験パケット受信装置３に到達する。試験パケット生成装置１及び試験パケット受信装置３は、試験パケットの送信時又は受信時にタイムスタンプを記録し、品質情報として遅延計算装置４に送信する。遅延計算装置５では、タイムスタンプの差分等によりネットワーク遅延を推定する。
【０００４】
特許文献２に記載のものは、パッシブ型のネットワーク遅延計測技術である。特許文献２に記載のものでは、図５（ｂ）に示すように、遅延推定装置１１が、主信号に係るパケットの特定情報（例：５−ｔｕｐｌｅ等）を各パケット転送装置１２から収集し、得られた統計情報から遅延等の品質劣化原因箇所を判定する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−１１８５８６号公報
【特許文献２】特開２００６−２４６１１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、前記特許文献１及び２に記載のものは、ネットワークにおけるパケットの転送遅延を計測するものである。換言すれば、パケット転送装置間におけるパケットの転送遅延を計測するものである。
【０００７】
一方、ネットワークの遅延計測として、パケット転送装置間に生じる遅延だけでなくパケット転送装置内においてどの箇所に遅延が生じているかを把握したいという要望がある。特に、近年はサーバの仮想化技術の発達によりパケット転送装置を仮想化することが一般的になっているため、物理装置・仮想化環境構築部・仮想化サーバのどの箇所で遅延が生じているかを詳細に把握したいという要望がある。他方、上述したように、前記特許文献１及び２に記載のものでは、このようなパケット転送装置内の遅延計測はできないという問題があった。
【０００８】
また、前記特許文献１に記載のものは、ネットワークに試験パケットを印可するので、ネットワークリソースを不要に消費してしまうという問題があった。
【０００９】
本発明は上記事情に鑑みてなされたものであり、第１の目的とするところは、ネットワークに負荷をかけることなくコンピュータ内におけるパケット処理の遅延を計測することにある。また、第２の目的とするところは、仮想化環境が構築されたコンピュータ内におけるパケット処理の遅延を計測することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本願発明は、ネットワークに接続され且つパケット処理機能部を有するコンピュータ内におけるパケット処理による遅延を計測するネットワーク遅延計測方法であって、前記パケット処理機能部が、自身内の複数の所定の遅延計測ポイントにおいてパケットの処理イベントが発生した際に当該パケットの識別情報及び遅延計測ポイントの識別情報を含むイベント情報を生成するステップと、タイムスタンプ付与機能部が、前記パケット処理機能部により生成されたイベント情報に対してタイムスタンプを付与するステップと、遅延算出機能部が、前記タイムスタンプ付与機能部によりタイムスタンプが付与された同一のパケットについての複数のイベント情報に基づき遅延計測ポイント間における遅延時間を算出するステップとを備えたことを特徴とする。
【００１１】
また、本願発明は、前記コンピュータは、ハードウェア上に仮想化環境を構築する仮想化環境構築部と、前記仮想化環境構築部により構築された仮想コンピュータとを備えるとともに、前記仮想化環境構築部及び前記仮想コンピュータは、それぞれ前記パケット処理機能部及び前記タイムスタンプ付与機能部並びに計時機能部を備え、前記タイムスタンプ付与機能部は、前記計時機能部で計時される時刻情報に基づきタイムスタンプを付与し、前記仮想化環境構築部の時刻同期機能部が、前記仮想コンピュータから参照可能なメモリ上に前記仮想化環境構築部の前記計時機能部で計時される時刻情報を保存するステップと、前記仮想コンピュータの時刻同期機能部が、前記メモリ上の時刻情報を参照して前記仮想コンピュータの前記計時機能部と前記仮想化環境構築部の前記計時機能部とを同期させるステップとを備えたことを特徴とする。
【発明の効果】
【００１２】
本発明によれば、コンピュータ内に設定された複数の遅延計測ポイント間における遅延時間を算出できるので、ネットワークに負荷をかけることなくコンピュータ内のパケット処理の遅延を計測できる。また、仮想化環境であっても、仮想化環境構築部と仮想コンピュータのそれぞれの内部における遅延や両者間における遅延時間を算出できる。ここで、仮想化環境構築部と仮想コンピュータとの間で時刻同期しているので、仮想化環境における遅延計測を正確に実施できる。
【図面の簡単な説明】
【００１３】
【図１】ネットワーク遅延計測方法の概要を説明する図
【図２】ネットワーク遅延計測装置の機能ブロック図
【図３】ネットワーク遅延計測装置の遅延計測処理を説明するフローチャート
【図４】他の例に係るネットワーク遅延計測装置の機能ブロック図
【図５】従来のネットワーク遅延測定を説明する図
【発明を実施するための形態】
【００１４】
まず、本発明の一実施の形態に係るネットワーク遅延計測装置及び方法の概要について図１を参照して説明する。図１は本発明の一実施の形態に係るネットワーク遅延計測方法の概要を説明する図である。
【００１５】
本発明は、図１の左側に示すように、仮想化環境が構築されたコンピュータにおけるカーネル等においてパケット処理イベントの発生を捕捉し、当該イベント発生時におけるパケット毎のタイムスタンプを記録し、遅延計測ポイント間のタイムスタンプ差分により、コンピュータ内のネットワーク遅延を算出する。
【００１６】
また、本発明は、図１の右側に示すように、Ｈｏｓｔ／Ｇｕｅｓｔを跨るパケット処理ルート区間のネットワーク遅延を精度高く計測するために、Ｈｏｓｔ／Ｇｕｅｓｔ間で共有メモリを介して高速にＨｏｓｔ／Ｇｕｅｓｔ間の時刻同期を行う。
【００１７】
次に、本発明の一実施の形態に係るネットワーク遅延計測装置及び方法の詳細について図面を参照して説明する。図２はネットワーク遅延計測装置の機能ブロック図である。
【００１８】
ネットワーク遅延計測装置１００は、図２に示すように、物理ハードウェアであるコンピュータ上に仮想マシン（ＶＭ：Virtual Machine）構成の仮想化環境が構築されている。まず、本願発明の前提として、ネットワーク遅延計測装置１００の装置構成及び仮想化環境構成について説明する。なお、ここでは本発明の要旨に係る構成のみを説明する。
【００１９】
ネットワーク遅延計測装置１００の物理ハードウェア１１０は、少なくとも１つの物理的なネットワークインターフェイス部であるＮＩＣ１１１と、ｈｗｃｌｏｃｋやＴＳＣ（Ｔｉｍｅ  Ｓｔａｍｐ  Ｃｏｕｎｔｅｒ）などｃｌｏｃｋ関連の物理的なハードウェアである物理計時機能部１１２とを備えている。
【００２０】
物理ハードウェア１１０には、ＨｏｓｔＯＳ１２０がインストールされている。ＨｏｓｔＯＳの種類は不問である。本実施の形態では、ＨｏｓｔＯＳ１２０としてＬｉｎｕｘ（登録商標）を用いた。ＨｏｓｔＯＳ１２０は、標準的な機能として、ＮＩＣ１１１を介したパケットの送信又は受信処理を、ＨｏｓｔＯＳ１２０上のアプリケーションに提供するパケット処理機能部１２１と、物理計時機能部１１２を参照、または、割り込み処理によりｃｌｏｃｋを刻む計時機能部であるＨｏｓｔ  ｓｙｓｔｅｍ  ｃｌｏｃｋ１２２を備えている。なお、本実施の形態で用いたＬｉｎｕｘ（登録商標）では、パケット処理機能部１２１の前記標準的な機能及びＨｏｓｔ  ｓｙｓｔｅｍ  ｃｌｏｃｋ１２２の機能はカーネル内に実装されている。
【００２１】
ＨｏｓｔＯＳ１２０上には、仮想化環境構築用のアプリケーションソフトウェアであるＨｙｐｅｒｖｉｓｏｒ１３０がインストールされている。Ｈｙｐｅｒｖｉｓｏｒ１３０は、１つ以上のＶＭ１４０を構築する。図２では２つのＶＭ１４０を構築した例を示している。Ｈｙｐｅｒｖｉｓｏｒ１３０により構築されたＶＭ１４０は、少なくとも、１つ以上の仮想的なネットワークインターフェイス部であるｖＮＩＣ１４１を備えている。
【００２２】
ＶＭ１４０には、ＧｕｅｓｔＯＳ１５０がインストールされている。ＧｕｅｓｔＯＳ１５０はＨｏｓｔＯＳ１２０と同一の種類であってもよいし、異なる種類であってもよい。本実施の形態では、ＧｕｅｓｔＯＳ１５０としてＨｏｓｔＯＳ１２０と同一の種類のＬｉｎｕｘ（登録商標）を用いた。
【００２３】
ＧｕｅｓｔＯＳ１５０は、標準的な機能として、ｖＮＩＣ１４１を介したパケットの送信又は受信処理を、ＧｕｅｓｔＯＳ１５０上のアプリケーション２００に提供するパケット処理機能部１５１と、割り込み処理によりｃｌｏｃｋを刻む計時機能部であるＧｕｅｓｔ  ｓｙｓｔｅｍ  ｃｌｏｃｋ１５２を備えている。なお、本実施の形態で用いたＬｉｎｕｘ（登録商標）では、パケット処理機能部１５１の前記標準的な機能及びＨｏｓｔ  ｓｙｓｔｅｍ  ｃｌｏｃｋ１５２の機能はカーネル内に実装されている。
【００２４】
このように、ネットワーク遅延計測装置１００は、物理ハードウェア１１０上に、仮想化環境構築部としてＨｏｓｔＯＳ１２０及びＨｙｐｅｒｖｉｓｏｒ１３０を備えており、仮想環境構築部により構築された仮想コンピュータとしてＶＭ１４０及びＧｕｅｓｔＯＳ１５０を備えている。本実施の形態に係るネットワーク遅延計測装置１００は、このような仮想化環境を前提として、さらに以下に示す特徴を備えている。
【００２５】
ＨｏｓｔＯＳ１２０のＨｏｓｔパケット処理機能部１２１は、上述した標準的なパケット送受信処理機能に加えて、予め設定した自身内の遅延計測ポイントにおいて、パケット処理イベントが発生（例：パケットの到着等）した際に、当該パケットの識別情報（例：５−ｔｕｐｌｅ）を取得し、当該パケットの識別情報と遅延計測ポイントの識別情報（例：遅延計測ポイント名）とを含むイベント情報を生成して、後述するＨｏｓｔタイムスタンプ付与機能部１２３に通知する機能を有する。
【００２６】
同様に、ＧｕｅｓｔＯＳ１５０のＧｕｅｓｔパケット処理機能部１５１は、上述した標準的なパケット送受信処理機能に加えて、予め設定した自身内の遅延計測ポイントにおいて、パケット処理イベントが発生（例：パケットの到着等）した際に、当該パケットの識別情報を取得し、当該パケットの識別情報（例：５−ｔｕｐｌｅ）と遅延計測ポイントの識別情報（例：遅延計測ポイント名）とを含むイベント情報を生成して、後述するＧｕｅｓｔタイムスタンプ付与機能部１５３に通知する機能を有する。
【００２７】
ここで、Ｈｏｓｔパケット処理機能部１２１及びＧｕｅｓｔパケット処理機能部１５１においてパケット処理イベントの発生を検出する対象となるパケットはＩｎｇｒｅｓｓ／Ｅｇｒｅｓｓ方向のいずれであってもよいし、双方であってもよい。また、対象となるパケットは、全てのパケットであってもよいし、所定の条件を満たすものに限定してもよい。ここで所定の条件は、例えば、パケットの宛先又は送信元アドレス或いはアドレス範囲、宛先又は送信元ポート番号或いはポート番号範囲、上位レイヤ情報（例えばＴＣＰやＵＤＰなどの種別を示す情報）、これらの任意の組み合わせなどが挙げられる。
【００２８】
Ｈｏｓｔパケット処理機能部１２１及びＧｕｅｓｔパケット処理機能部１５１におけるパケット処理イベントの発生を検出する方法としては様々な手段を用いることができる。例えば、Ｌｉｎｕｘ（登録商標）の場合、ｋｐｒｏｂｅを用いることができる。
【００２９】
また、ＨｏｓｔＯＳ１２０及びＧｕｅｓｔＯＳ１５０における遅延計測ポイントは、少なくともネットワーク遅延計測装置１００の全体で２つ設定されている。Ｈｏｓｔパケット処理機能部１２１又はＧｕｅｓｔパケット処理機能部１５１において、その内部に複数の遅延計測ポイントを設定すると、ＨｏｓｔＯＳ１２０の内部又はＧｕｅｓｔＯＳ１５０の内部における処理遅延を計測することができる。また、Ｈｏｓｔパケット処理機能部１２１及びＧｕｅｓｔパケット処理機能部１５１の内部の双方に遅延計測ポイントを設定すると、ＨｏｓｔＯＳ１２０とＧｕｅｓｔＯＳ１５０との間における処理遅延を計測することができる。また、ネットワーク遅延計測装置１００内に複数のＶＭ１４０及びＧｕｅｓｔＯＳ１５０が構築されている場合、各ＧｕｅｓｔＯＳ１５０の間における処理遅延を計測することができる。このように、遅延計測ポイントは、遅延計測の目的などに応じて適切な位置に設定することにより、ネットワーク遅延計測装置１００内の任意の位置における遅延を計測できる。
【００３０】
遅延計測ポイントの設定方針としては、パケットがＨｏｓｔＯＳ１２０やＧｕｅｓｔＯＳ１５０に入ってから出るまで、遅延計測ポイント間がなるべく広い区間となるように設定すると、遅延を網羅的に計測することができるので好適である。すなわち、遅延計測ポイントは、入口に近ければ近いほど、また、出口に近ければ近いほど好適である。
【００３１】
ところで、Ｈｏｓｔパケット処理機能部１２１やＧｕｅｓｔパケット処理機能部１５１は、一般的に、パケットが流通する一連の複数の処理部により処理されるよう構成されている。遅延計測ポイントは、これら処理部の間のポイントに設定すると好適である。これは、同一の処理部内に複数の遅延計測ポイントを設けても、あまり遅延が発生せず、意味のある計測とならないことが多いためである。
【００３２】
本実施の形態では、Ｉｎｇｒｅｓｓ方向（ネットワーク遅延計測装置１００外からアプリケーション２００に向かう方向）については、Ｈｏｓｔパケット処理機能部１２１では２箇所、Ｇｕｅｓｔパケット処理機能部１５１では２箇所に遅延計測ポイントを設定した。また、Ｅｎｇｒｅｓｓ方向（アプリケーション２００からネットワーク遅延計測装置１００外に向かう方向）については、Ｈｏｓｔパケット処理機能部１２１では３箇所、Ｇｕｅｓｔパケット処理機能部１５１では３箇所に遅延計測ポイントを設定した。
【００３３】
ＨｏｓｔＯＳ１２０は、図２に示すように、Ｈｏｓｔタイムスタンプ付与機能部１２３を備えている。Ｈｏｓｔタイムスタンプ付与機能部１２３は、Ｈｏｓｔパケット処理機能部１２１からイベント情報を取得すると、タイムスタンプとしてＨｏｓｔ  ｓｙｓｔｅｍ  ｃｌｏｃｋ１２２からｃｌｏｃｋ情報（例えばＬｉｎｕｘ（登録商標）の場合、ＣＬＯＣＫ＿ＭＯＮＯＴＯＮＩＣ等）を取得し、前記イベント情報とタイムスタンプを紐づけて、［パケット識別情報，タイムスタンプ，計測ポイント識別情報］からなる情報を保持するとともに、後述する遅延算出機能部１２４に通知する。
【００３４】
同様に、ＧｕｅｓｔＯＳ１５０は、Ｇｕｅｓｔタイムスタンプ付与機能部１５３を備えている。Ｇｕｅｓｔタイムスタンプ付与機能部１５３は、Ｇｕｅｓｔパケット処理機能部１５１からイベント情報を取得すると、タイムスタンプとしてＨｏｓｔ  ｓｙｓｔｅｍ  ｃｌｏｃｋ１２２からｃｌｏｃｋ情報（例えばＬｉｎｕｘ（登録商標）の場合、ＣＬＯＣＫ＿ＭＯＮＯＴＯＮＩＣ等）を取得し、前記イベント情報とタイムスタンプを紐づけて、［パケット識別情報，タイムスタンプ，計測ポイント識別情報］からなる情報を保持するとともに、後述する遅延算出機能部１２４に通知する。
【００３５】
なお、Ｌｉｎｕｘ（登録商標）の場合、ＨｏｓｔＯＳ１２０のパケット処理機能部１２１におけるイベント発生の捕捉・イベント情報の生成処理、タイムスタンプ付与機能部１２３における処理は、ｅＢＰＦ（extended Berkeley Packet Filter）バイトコードとして実施すると、カーネルの再構築無く実施することが可能である。ＧｕｅｓｔＯＳ１５０においても同様である。
【００３６】
ＨｏｓｔＯＳ１２０は、さらに、遅延算出機能部１２４を備えている。遅延算出機能部１２４は、Ｈｏｓｔタイムスタンプ付与機能部１２３及びＧｕｅｓｔタイムスタンプ付与機能部１２３から受信した［パケット識別情報，タイムスタンプ，計測ポイント識別情報］からなる情報について、配列等の形態で情報群として所定の記憶手段に保持する。記憶手段としてはメモリ空間等に格納すると高速であり望ましい。遅延算出機能部１２４は、当該情報群に基づき、同一パケット識別情報について、遅延計測ポイント間のタイムスタンプの時刻差分を計算することにより、遅延計測ポイント間のネットワーク遅延を算出する。算出したネットワーク遅延は、所定の記憶手段に保持したり、他の装置に送信したりすることができる。
【００３７】
本実施の形態に係るネットワーク遅延計測装置１００の遅延計測処理について図３のフローチャートを参照して説明する。
【００３８】
Ｈｏｓｔパケット処理機能部１２１及びＧｕｅｓｔパケット処理機能部１５１は、それぞれ遅延計測ポイントにおいてパケット処理の発生を検出すると（ステップＳ１０１）、当該パケットの識別情報と遅延計測ポイントの識別情報を含むイベント情報を生成する（ステップＳ１０２）。Ｈｏｓｔタイムスタンプ付与機能部１２３及びＧｕｅｓｔタイムスタンプ付与機能部１２３は、各イベント情報にタイムスタンプを付与する（ステップＳ１０３）。そして、遅延算出機能部１２４は、同一パケットについて複数のイベント情報に基づき、遅延計測ポイント間の遅延を算出する（ステップＳ１０４）。
【００３９】
本発明では、Ｈｏｓｔタイムスタンプ付与機能部１２３で付与するタイムスタンプと、Ｇｕｅｓｔタイムスタンプ付与機能部１５３で付与するタイムスタンプが高精度で同期していることが好ましい。
【００４０】
そこで、本実施の形態に係るネットワーク遅延計測装置１００では、図２に示すように、ＨｏｓｔＯＳ１２０にＨｏｓｔ時刻同期機能部１２５を設けるとともに、ＧｕｅｓｔＯＳ１５０にＧｕｅｓｔ時刻同期機能部１５５を設けている。
【００４１】
Ｈｏｓｔ時刻同期機能部１２５は、Ｈｏｓｔ  ｓｙｓｔｅｍ  ｃｌｏｃｋ１２２で計時しているｃｌｏｃｋ情報を、ＶＭ１４０から参照可能な共有メモリ上に保存する。Ｇｕｅｓｔ時刻同期機能部１５５は、Ｈｏｓｔ時刻同期機能部１２５が保存したｃｌｏｃｋ情報を、共有メモリから参照する。そして、Ｇｕｅｓｔ時刻同期機能部１５５は、Ｇｕｅｓｔ  ｓｙｓｔｅｍ  ｃｌｏｃｋ１５２に対して、同期時刻を通知する。これにより、ＨｏｓｔＯＳ１２０のＨｏｓｔ  ｓｙｓｔｅｍ  ｃｌｏｃｋ１２２と、ＧｕｅｓｔＯＳ１５０のＧｕｅｓｔ  ｓｙｓｔｅｍ  ｃｌｏｃｋ１５２とが高精度に同期する。このように、本実施の形態では、ｎｔｐ等のネットワークを介した時刻同期と異なり、共有メモリを介した同期処理を行っているので、高速な時刻同期が可能となる。
【００４２】
以上詳述したように、本実施の形態に係るネットワーク遅延計測装置１００によれば、仮想化環境において、コンピュータ内のネットワーク遅延を計測することが可能となる。特に、この遅延計測は、試験パケットを印加することなく、主信号の疎通により計測が可能なので、ネットワークリソースの不要な消費を抑制できる。また、本実施の形態に係るネットワーク遅延計測装置１００によれば、パケット毎にネットワーク遅延を計測しており、全てのパケットについてネットワーク遅延を計測することも可能なので、任意の情報粒度での計測が可能となる。
【００４３】
また、本実施の形態に係るネットワーク遅延計測装置１００によれば、Ｈｏｓｔ／Ｇｕｅｓｔが跨る区間のネットワーク遅延も精度高く計測することが可能である。また、本実施の形態に係るネットワーク遅延計測装置１００によれば、Ｈｏｓｔ内やＧｕｅｓｔ内におけるネットワーク遅延も精度高く計測することが可能である。
【００４４】
以上、本発明の一実施の形態について詳述したが、本発明は上記実施の形態に限定されるものではなく、本発明の主旨を逸脱しない範囲において、種々の改良や変更をしてもよい。
【００４５】
例えば、上記実施の形態では、遅延算出機能部１２４をＨｏｓｔＯＳ１２０に設けたが、実装位置は不問である。例えば、ＧｕｅｓｔＯＳ１５０に設けてもよいし、他の装置に設けてもよい。
【００４６】
また、上記実施の形態では、ＶＭ構成の仮想化環境を構築する形態としてホストＯＳ型のものを例示したが、ホストＯＳを必要としないＨｙｐｅｒｖｉｓｏｒ型の仮想化環境であってもよい。この場合、物理ハードウェアにＨｙｐｅｒｖｉｓｏｒアプリケーションを直接インストールする。そして、当該Ｈｙｐｅｒｖｉｓｏｒアプリケーションに上記実施形態と同様の、パケット処理機能部・タイムスタンプ付与機能部・時刻同期部を構成すればよい。
【００４７】
また、上記実施の形態では、ＶＭ構成の仮想化環境を構築していたが、コンテナ型の仮想化環境であっても本発明を実施できる。この場合、コンテナ内においてはパケット遅延計測ができないものの、ＨｏｓｔＯＳにおいては上記実施の形態と同様のパケット遅延計測技術を適用できる。ただし、ＧｕｅｓｔＯＳが存在しないので時刻同期機能は不要である。図４にコンテナ型の仮想化環境の場合のネットワーク遅延計測装置１００’の機能ブロック図を示す。図４に示すように、ＨｏｓｔＯＳ１２０以下の構成は、上記実施の形態と同様である。ＨｏｓｔＯＳ１２０には、コンテナ環境構築部であるコンテナエンジン１６０がインストールされている。コンテナエンジン１６０上ではコンテナ１７０が形成されており、コンテナ１７０内のアプリケーション２００が動作する。なお、図４は階層構造に注目した機能ブロック図であるため、アプリケーション２００はコンテナ１７０の外側（上側）に記載している。
【００４８】
また、上記実施の形態では、コンピュータ上に仮想化環境を構築していたが、仮想化環境を構築しない場合であっても本発明を実施できる。この場合、コンピュータには上記実施の形態におけるＨｏｓｔＯＳと同様のパケット遅延計測技術を備えたＯＳをインストールすればよい。ただし、ＧｕｅｓｔＯＳが存在しないので時刻同期機能は不要である。
【符号の説明】
【００４９】
１００…ネットワーク遅延計測装置
１１０…物理ハードウェア
１１１…ＮＩＣ
１１２…物理計時機能部
１２０…ＨｏｓｔＯＳ
１２１…Ｈｏｓｔパケット処理機能部
１２２…Ｈｏｓｔ  ｓｙｓｔｅｍ  ｃｌｏｃｋ
１２３…Ｈｏｓｔタイムスタンプ付与機能部
１２４…遅延算出機能部
１２５…Ｈｏｓｔ時刻同期機能部
１５０…ＧｕｅｓｔＯＳ
１５１…Ｇｕｅｓｔパケット処理機能部
１５２…Ｇｕｅｓｔ  ｓｙｓｔｅｍ  ｃｌｏｃｋ
１５３…Ｇｕｅｓｔタイムスタンプ付与機能部
１５５…Ｇｕｅｓｔ時刻同期機能部
２００…アプリケーション
【図１】
2020178313.tif 000003
【図２】
2020178313.tif 000004
【図３】
2020178313.tif 000005
【図４】
2020178313.tif 000006
【図５】
2020178313.tif 000007