(57)【要約】【課題】ネットワーク負荷の増大を抑えつつ、クラウドネットワーク環境においても粒度の細かいネットワーク遅延を測定すること。【解決手段】動的フィルタ設定部１５１が、転送装置２１０に対して、ネットワーク遅延の測定対象となるトラフィックの単位を特定するためのキー情報をフィルタリング条件として設定する。また、フロー情報収集部１５２が、転送装置２１０から配信されたフロー情報を収集する。また、フロー情報蓄積部１５３が、フロー情報収集部１５２によって収集されたフロー情報をフロー情報ＤＢ１４２に蓄積する。そして、遅延測定部１５４が、フロー情報ＤＢ１４２に蓄積されたフロー情報を参照して、転送装置２１０のポートでパケットが送信された時刻と当該パケットに対する応答パケットが受信された時刻との差分を計算することで、ネットワーク遅延を測定する。【選択図】図１
2013240017.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク上でパケットを転送する転送装置であって、自装置が有するポートで送受信したパケットの中から所定のフィルタリング条件に合致するパケットを抽出し、抽出したパケットのヘッダ情報を含む一部又は全てを切り出した情報と当該パケットを送受信した時刻とを含むフロー情報を配信する転送装置に対して、ネットワーク遅延の測定対象となるトラフィックの単位を特定するためのキー情報を前記フィルタリング条件として設定する設定部と、
前記転送装置から配信されたフロー情報を収集する収集部と、
前記収集部によって収集されたフロー情報を記憶部に蓄積する蓄積部と、
前記記憶部に蓄積されたフロー情報を参照して、前記ポートでパケットが送信された時刻と当該パケットに対する応答パケットが受信された時刻との差分を計算することで、ネットワーク遅延を測定する測定部と
を備えたことを特徴とするネットワーク遅延測定装置。
【請求項２】
複数のキー情報を記憶する記憶部をさらに備え、
前記設定部は、所定の時間間隔で前記記憶部から順次キー情報を読み出し、読み出したキー情報を順次前記フィルタリング条件として設定することで、前記所定の時間間隔で前記フィルタリング条件を変更し、
前記測定部は、前記測定対象となるトラフィックの単位ごとに前記ネットワーク遅延を測定することを特徴とする請求項１に記載のネットワーク遅延測定装置。
【請求項３】
前記測定部は、前記設定部によって前記フィルタリング条件が変更される時間間隔に合わせて、前記ネットワーク遅延を測定することを特徴とする請求項１又は２に記載のネットワーク遅延測定装置。
【請求項４】
前記設定部は、前記キー情報として、クラウドサービスにおいてクラウド事業者の基盤上でサービスを提供するユーザであるテナントを特定するための情報を用いることを特徴とする請求項１、２又は３に記載のネットワーク遅延測定装置。
【請求項５】
前記転送装置によって配信されるフロー情報には、ＴＣＰヘッダ情報が含まれており、
前記測定部は、前記フロー情報に含まれるＴＣＰヘッダ情報を用いて前記応答パケットを特定して時刻の差分を計算することで、前記ネットワーク遅延を測定することを特徴とする請求項１〜４のいずれか一つに記載のネットワーク遅延測定装置。
【請求項６】
ネットワーク遅延を測定するネットワーク遅延測定装置によって実行されるネットワーク遅延測定方法であって、
前記ネットワーク遅延測定装置が、
ネットワーク上でパケットを転送する転送装置であって、自装置が有するポートで送受信したパケットの中から所定のフィルタリング条件に合致するパケットを抽出し、抽出したパケットのヘッダ情報を含む一部又は全てを切り出した情報と当該パケットを送受信した時刻とを含むフロー情報を配信する転送装置に対して、ネットワーク遅延の測定対象となるトラフィックの単位を特定するためのキー情報を前記フィルタリング条件として設定する設定工程と、
前記転送装置から配信されたフロー情報を収集する収集工程と、
前記収集工程によって収集されたフロー情報を記憶部に蓄積する蓄積工程と、
前記記憶部に蓄積されたフロー情報を参照して、前記ポートでパケットが送信された時刻と当該パケットに対する応答パケットが受信された時刻との差分を計算することで、ネットワーク遅延を測定する測定工程と
を含んだことを特徴とするネットワーク遅延測定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本願に開示される技術は、ネットワーク遅延測定装置及びネットワーク遅延測定方法に関する。
【背景技術】
【０００２】
近年、クラウドサービスに代表されるように多種多様なサービスがネットワーク経由で提供されている。クラウドサービスでは、ネットワーク経由でサービスが提供されるため、オンプレミスなシステムと比べてネットワーク遅延の影響を受けやすい。そのため、近年では、ネットワーク遅延の監視や対処の重要性が増している。しかし、クラウドサービスでは、テナント（クラウド基盤上で提供されるサービス）ごとにサービスを提供するためにネットワークが仮想ネットワーク技術によって論理的に分割されたり、カプセル化されたトンネルネットワークで分割されたりするため、ネットワーク品質の監視の困難さは増している。このようなことから、トラフィックの変化を踏まえたうえで、ネットワーク遅延を多数のテナントごとに詳細に測定するための測定技術が求められている。
【０００３】
従来、このような測定技術として、測定対象の装置に対して能動的に試験パケットを送信することで、ネットワーク遅延を測定する方法が知られている。例えば、測定用の装置から測定対象の装置に対してＩＣＭＰ  ｐｉｎｇパケットを送信したり、Ｗｅｂサーバに対してｇｅｔリクエストを送信することで、能動的にネットワーク遅延を測定する方法が知られている。また、例えば、パケットを５−ｔｕｐｌｅ（送信元ＩＰアドレス、送信先ＩＰアドレス、送信元ポート番号、送信先ポート番号、プロトコル）で識別されるフローで分類して品質測定を行うＦｌｏｗ技術を発展させ、転送装置で転送されるパケットの遅延の揺らぎを含む品質を測定するＩＰ−ＳＬＡといった技術も知られている。このＩＰ−ＳＬＡでは、転送装置が、測定対象の装置に対して試験パケットを送信し、その試験パケットに応じて測定対象の装置から送信される応答パケットをもとに、ネットワーク遅延を測定する。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】”INTERNET  CONTROL  MESSAGE  PROTOCOL”、[online]、[平成２４年２月２２日検索]、インターネット＜http://tools.ietf.org/html/rfc792＞
【非特許文献２】”Methodology  for  Network  Flow  Performance  Measurement”、[online]、[平成２４年２月２２日検索]、Cisco  IOS  フル活用への道：第３回  IP  SLA、＜http://www.cisco.com/web/JP/news/cisco＿news＿letter/tech/IPSLA/index.html＞
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した従来の能動的な測定技術では、送信対象の装置に試験パケットが送信されるため、試験パケットの増加によってネットワーク負荷が増大する場合があった。なお、この課題は、クラウドサービスを提供するネットワークに限って生じるものではなく、他の各種サービスを提供するネットワークで同様に生じうる課題である。また、クラウドネットワークにおいては、カプセル化をはじめとする仮想ネットワーク技術を用いた論理的なネットワーク分割が進んでいるため、テナントに代表される粒度の細かいトラフィック単位のネットワーク遅延測定が難しいという課題がある。
【０００６】
本願に開示される技術は、上記に鑑みてなされたものであって、ネットワーク負荷の増大を抑えつつ、クラウドネットワーク環境においても粒度の細かいネットワーク遅延を測定することができるネットワーク遅延測定装置及びネットワーク遅延測定方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本願に開示されるネットワーク遅延測定装置は、ネットワーク上でパケットを転送する転送装置であって、自装置が有するポートで送受信したパケットの中から所定のフィルタリング条件に合致するパケットを抽出し、抽出したパケットのヘッダ情報を含む一部又は全てを切り出した情報と当該パケットを送受信した時刻とを含むフロー情報を配信する転送装置に対して、ネットワーク遅延の測定対象となるトラフィックの単位を特定するためのキー情報を前記フィルタリング条件として設定する設定部と、前記転送装置から配信されたフロー情報を収集する収集部と、前記収集部によって収集されたフロー情報を記憶部に蓄積する蓄積部と、前記記憶部に蓄積されたフロー情報を参照して、前記ポートでパケットが送信された時刻と当該パケットに対する応答パケットが受信された時刻との差分を計算することで、ネットワーク遅延を測定する測定部とを備えたことを特徴とする。
【０００８】
また、本願に開示されるネットワーク遅延測定方法は、ネットワーク遅延を測定するネットワーク遅延測定装置で実行されるネットワーク遅延測定方法であって、前記ネットワーク遅延測定装置が、ネットワーク上でパケットを転送する転送装置であって、自装置が有するポートで送受信したパケットの中から所定のフィルタリング条件に合致するパケットを抽出し、抽出したパケットのヘッダ情報を含む一部又は全てを切り出した情報と当該パケットを送受信した時刻とを含むフロー情報を配信する転送装置に対して、ネットワーク遅延の測定対象となるトラフィックの単位を特定するためのキー情報を前記フィルタリング条件として設定する設定工程と、前記転送装置から配信されたフロー情報を収集する収集工程と、前記収集工程によって収集されたフロー情報を記憶部に蓄積する蓄積工程と、前記記憶部に蓄積されたフロー情報を参照して、前記ポートでパケットが送信された時刻と当該パケットに対する応答パケットが受信された時刻との差分を計算することで、ネットワーク遅延を測定する測定工程とを含んだことを特徴とする。
【発明の効果】
【０００９】
本願に開示されるネットワーク遅延測定装置及びネットワーク遅延測定方法によれば、ネットワーク負荷の増大を抑えつつ、クラウドネットワーク環境においても粒度の細かいネットワーク遅延を測定することができるという効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】図１は、本実施形態に係るネットワーク遅延測定装置の構成の一例を示す図である。
【図２】図２は、本実施形態に係る転送装置によるフロー情報配信処理を模式的に示す図である。
【図３】図３は、本実施形態に係るテナント情報ＤＢによって記憶されるテナント情報の一例を示す図である。
【図４】図４は、本実施形態に係るフロー情報ＤＢによって記憶されるフロー情報の一例を示す図である。
【図５】図５は、本実施形態に係る測定結果ＤＢによって記憶される測定結果情報の一例を示す図である。
【図６】図６は、本実施形態に係るネットワーク遅延測定装置によって実行されるネットワーク遅延測定方法の処理手順を示すフローチャートである。
【図７】図７は、従来技術に係るネットワーク遅延測定方法の例を模式的に示す図（１）である。
【図８】図８は、従来技術に係るネットワーク遅延測定方法の例を模式的に示す図（２）である。
【図９】図９は、本実施形態に係るネットワーク遅延測定プログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【００１１】
以下に、本願に開示されるネットワーク遅延測定装置及びネットワーク遅延測定方法の実施形態を図面に基づいて詳細に説明する。
【００１２】
まず、本実施形態に係るネットワーク遅延測定装置の構成について説明する。図１は、本実施形態に係るネットワーク遅延測定装置１００の構成の一例を示す図である。図１に示すように、ネットワーク遅延測定装置１００は、ネットワーク２００に接続され、ネットワーク２００に発生するネットワーク遅延を測定する。
【００１３】
ネットワーク２００は、図１に示すように、転送装置２１０、２２０、２３０及び２４０を含む。なお、図１においては、４台の転送装置のみが示されているが、実際には、ネットワーク２００は、多数の転送装置やブリッジ装置を含む。例えば、ネットワーク２００は、ＬＡＮ（Local  Area  Network）やＷＡＮ（Wide  Area  Network）などであり、ＩＰ（Internet  Protocol）パケット又はカプセル化されたＩＰパケットを転送する。
【００１４】
ここで、ネットワーク２００においては、例えば、クラウドサービスを提供するために仮想ネットワーク技術によってネットワークが論理的に分割され、分割された論理ネットワークそれぞれに、種々のサービスを提供するテナントが割当てられる。ここで、テナントとは、クラウドサービスにおいてクラウド事業者の基盤上でサービスを提供するユーザである。
【００１５】
転送装置２１０は、図１に示すように、転送処理部２１１と、フィルタリング部２１２と、パケット処理部２１３と、フロー情報配信部２１４とを有し、ネットワーク２００上でＩＰパケットを転送する。また、転送装置２１０は、自装置が有するポートで送受信したパケットの中から所定のフィルタリング条件に合致するパケットを抽出し、抽出したパケットのヘッダ情報を含む一部又は全てを切り出した情報と当該パケットを送受信した時刻とを含むフロー情報をネットワーク遅延測定装置１００に配信する。なお、ネットワーク２００に含まれるその他の転送装置（転送装置２２０〜２４０など）及びブリッジ装置についても転送装置２１０と同様の構成を有する。
【００１６】
転送処理部２１１は、他の転送装置から受信したＩＰパケットを転送先に転送する。具体的には、転送処理部２１１は、複数の物理ポート又は論理ポートを介して受信したＩＰパケット或いはカプセル化されたＩＰパケットを他の転送装置が備えるポートに転送する。なお、以下では、ＩＰパケット及びカプセル化されたＩＰパケットをまとめてパケットと記す。
【００１７】
フィルタリング部２１２は、後述するネットワーク遅延測定装置１００の制御のもと、転送処理部２１１によって転送されるパケットの中から特定のパケットを抽出する。具体的には、フィルタリング部２１２は、転送装置２１０が有するポートで送受信されるパケットの中から、ネットワーク遅延測定装置１００によって設定されるフィルタリング条件に合致するパケットを抽出する。ここでいうフィルタリング条件とは、送信元ＩＰアドレス、送信先ＩＰアドレス、送信元ＭＡＣアドレス、送信先ＭＡＣアドレス、送信元ポート番号、及び送信先ポート番号のうち少なくとも１つの具体的な値によって定義される条件である。そして、フィルタリング部２１２は、パケットのヘッダ情報に含まれる送信元ＩＰアドレス、送信先ＩＰアドレス、送信元ＭＡＣアドレス、送信先ＭＡＣアドレス、送信元ポート番号、及び送信先ポート番号とフィルタリング条件とを比較することで、パケットをフィルタリングする。
【００１８】
例えば、フィルタリング部２１２は、所定のテナントのパケットを抽出するためのフィルタリング条件として、送信元ＩＰアドレス、送信先ＩＰアドレス、送信元ＭＡＣアドレス、送信先ＭＡＣアドレス、送信元ポート番号、及び送信先ポート番号をネットワーク遅延測定装置１００から受け付けて、受け付けたフィルタリング条件に基づいてパケットを抽出する。この結果、所定のテナントに関するパケットのみが抽出されることになる。
【００１９】
パケット処理部２１３は、フィルタリング部２１２によって抽出されたパケットのヘッダ情報の一部或いは全てを切り出す。具体的には、パケット処理部２１３は、抽出されたパケットの先頭から予め定められた固定バイト数を切り出す。ここで切り出されるヘッダ情報には、イーサネット（登録商標）ヘッダ情報、ＩＰヘッダ情報及びＴＣＰヘッダ情報が含まれる。また、例えば、パケットがカプセル化されている場合には、データ部の外側に付与されたヘッダ情報も含まれる。なお、ここではＴＣＰヘッダ情報を用いる場合について説明するが、上位の通信プロトコルとしてＵＤＰが利用される場合には、ＵＤＰヘッダ情報が用いられてもよいし、上位の通信プロトコルとしてＩＣＭＰが利用される場合には、ＩＣＭＰヘッダ情報が用いられてもよい。
【００２０】
フロー情報配信部２１４は、パケット処理部２１３によって切り出された固定バイト数のヘッダ情報に取得時刻と収集ポート名とを付与する。ここで、取得時刻とは、転送装置２１０のポートでパケットが送受信された時刻である。また、収集ポート名とは、転送装置２１０においてパケットが送受信されたポートに付与されたインターフェース名である。そして、フロー情報配信部２１４は、パケット処理部２１３によって切り出されたすべてのヘッダ情報に取得時刻と収集ポート名とを付与し、フロー情報としてまとめることでフロー情報配信フォーマットに整形した後、ネットワーク遅延測定装置１００に配信する。
【００２１】
図２は、本実施形態に係る転送装置２１０によるフロー情報配信処理を模式的に示す図である。図２に示すように、転送装置２１０は、ネットワーク２００上を転送されたパケットを転送処理部２１１にて受信する。フィルタリング部２１２は、転送処理部２１１が受信したパケットから所定のフィルタリング条件にあったパケットだけを抽出して、パケット処理部２１３に送信する。
【００２２】
パケット処理部２１３は、フィルタリング部２１２から受け付けたパケットの先頭固定バイトを切り取り、切り取ったヘッダ情報をフロー情報配信部２１４に送信する。フロー情報配信部２１４は、パケット処理部２１３から受け付けたヘッダ情報をフロー情報配信フォーマットでまとめ、まとめたフロー情報をネットワーク遅延測定装置１００に配信する。
【００２３】
図１に戻って、ネットワーク遅延測定装置１００は、図１に示すように、通信制御部１１０と、入力部１２０と、表示部１３０と、記憶部１４０と、制御部１５０とを有する。そして、ネットワーク遅延測定装置１００は、ネットワーク２００に含まれる各転送装置からフロー情報を収集して、収集したフロー情報に基づいて、ネットワーク２００における通信品質を監視する。
【００２４】
なお、本実施形態では、ネットワーク遅延測定装置１００が、転送装置２１０を監視対象とする場合について説明するが、監視対象の転送装置の数は単数に限られず、ネットワークの到達性がある転送装置であれば複数であってもよい。また、本実施形態では、ネットワーク遅延測定装置１００が、テナントごとにネットワーク遅延を測定する場合について説明する。
【００２５】
通信制御部１１０は、ネットワーク２００に含まれる各転送装置と、制御部１５０との間でやり取りする各種情報に関する通信を制御する。例えば、通信制御部１１０は、各転送装置に対するフロー情報の配信に係る通信を制御する。
【００２６】
入力部１２０は、例えば、キーボードやマウスなどであり、ユーザによる種々の情報の入力処理を受け付ける。一例を挙げると、入力部１２０は、後述する記憶部１４０によって記憶されるテナント情報などの入力処理を受け付ける。なお、テナント情報については後述する。
【００２７】
表示部１３０は、例えば、ディスプレイなどであり、ユーザに対して処理結果を表示出力する。一例を挙げると、表示部１３０は、ネットワーク２００におけるテナントごとの遅延の測定結果に関する情報を表示出力する。
【００２８】
記憶部１４０は、図１に示すように、テナント情報ＤＢ１４１と、フロー情報ＤＢ１４２と、測定結果ＤＢ１４３とを有する。例えば、記憶部１４０は、ハードディスク、光ディスクなどの記憶装置、又は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（Flash  Memory）などの半導体メモリ素子であり、ネットワーク遅延測定装置１００によって実行される各種プログラムなどを記憶する。
【００２９】
テナント情報ＤＢ１４１は、ネットワーク遅延の測定対象となるトラフィックの単位を特定するためのキー情報を記憶する。なお、テナント情報ＤＢ１４１は、複数のキー情報を記憶する。また、本実施形態では、テナント情報ＤＢ１４１は、キー情報として、テナントを特定するための情報を記憶する。
【００３０】
図３は、本実施形態に係るテナント情報ＤＢ１４１によって記憶されるテナント情報の一例を示す図である。例えば、図３に示すように、テナント情報ＤＢ１４１は、テナント名と、カプセル化キー情報と、キー情報とを対応付けた情報をテナント情報として記憶する。そして、本実施形態では、キー情報には、テナントを特定するための情報として、送信元ＩＰアドレスと、送信先ＩＰアドレスと、送信元ＭＡＣアドレスと、送信先ＭＡＣアドレスと、送信元ポート番号と、送信先ポート番号とがそれぞれ設定される。
【００３１】
ここで、テナント名は、テナントを一意に識別する情報である。例えば、テナント名には、テナントＡを識別する情報として「Ａ」が設定され、テナントＢを識別する情報として「Ｂ」が設定される。また、カプセル化キー情報は、ネットワーク２００上で転送されるパケットがカプセル化されている場合の外側のヘッダ情報である。例えば、カプセル化キー情報には、Ｌ３（Ｌａｙｅｒ−３）のカプセル化の場合は外側の送信元ＩＰアドレス及び送信先ＩＰアドレスなどが設定され、Ｌ２（Ｌａｙｅｒ−２）のカプセル化の場合は外側の送信元ＭＡＣアドレス及び送信先ＭＡＣアドレスなどが設定される。
【００３２】
また、送信元ＩＰアドレスは、テナントによって送受信されるパケットの送信元となる装置のＩＰアドレスである。また、送信先ＩＰアドレスは、テナントによって送受信されるパケットの送信先となる装置のＩＰアドレスである。また、送信元ＭＡＣアドレスは、テナントによって送受信されるパケットの送信元となる装置のＭＡＣアドレスである。また、送信先ＭＡＣアドレスは、テナントによって送受信されるパケットの送信先となる装置のＭＡＣアドレスである。また、送信元ポート番号は、テナントによって送受信されるパケットの送信元となる装置で当該パケットが送信されるポートのポート番号である。また、送信先ポート番号は、テナントによって送受信されるパケットの送信先となる装置で当該パケットが受信されるポートのポート番号である。なお、送信元ポート番号及び送信先ポート番号は、パケットの転送に用いられる通信プロトコルやプログラムに応じて一意に決められる。
【００３３】
また、図３に示す例では、テナントＡ及びＢに関するテナント情報のみを示しているが、テナント情報ＤＢ１４１には、複数のテナントに関するテナント情報が記憶される。また、テナント情報のデータ構造は図３に示すものに限られず、テナントごとのパケットを特定することができるものであればどのようなデータ構造であってもよい。
【００３４】
また、図３に示す例では、１つのテナントについて１つのキー情報が設定される場合について説明したが、実施形態はこれに限られない。例えば、１つのテナントについて複数のキー情報が設定されてもよい。この場合には、例えば、テナントＡのテナント名をＡ−１、Ａ−２、・・・のように複数設定し、それぞれに１つずつキー情報を対応付けて、テナント情報ＤＢ１４１に登録しておく。
【００３５】
図１に戻って、フロー情報ＤＢ１４２は、転送装置２１０から配信されたフロー情報を記憶する。具体的には、フロー情報ＤＢ１４２は、後述するフロー情報収集部１５２によって収集されたフロー情報を時系列順に蓄積する。
【００３６】
図４は、本実施形態に係るフロー情報ＤＢ１４２によって記憶されるフロー情報の一例を示す図である。例えば、図４に示すように、フロー情報ＤＢ１４２は、収集時刻と、収集ポート名と、送信元ＩＰアドレスと、送信先ＩＰアドレスと、送信元ＭＡＣアドレスと、送信先ＭＡＣアドレスと、送信元ポート番号と、送信先ポート番号と、ＩＰヘッダフラグと、ＴＣＰヘッダフラグと、シーケンス番号とを対応付けて記憶する。なお、図４に示すフロー情報はあくまでも一例であり、データ構造は図示のものに限られない。
【００３７】
ここで、収集時刻は、転送装置２１０においてパケットが送受信された時刻である。また、収集ポート名は、転送装置２１０においてパケットが送受信されたポートに付与されたインターフェース名である。また、送信元ＩＰアドレスは、転送装置２１０において送受信されたパケットの送信元として設定された装置のＩＰアドレスである。また、送信先ＩＰアドレスは、転送装置２１０において送受信されたパケットの送信先として設定された装置のＩＰアドレスである。
【００３８】
また、送信元ＭＡＣアドレスは、転送装置２１０において送受信されたパケットの送信元として設定された装置のＭＡＣアドレスである。また、送信先ＭＡＣアドレスは、転送装置２１０において送受信されたパケットの送信先として設定された装置のＭＡＣアドレスである。また、送信元ポート番号は、転送装置２１０において送受信されたパケットの送信元として設定された装置で当該パケットを送信するポートのポート番号である。また、送信先ポート番号は、転送装置２１０において送受信されたパケットの送信先として設定された装置で当該パケットを受信するポートのポート番号である。
【００３９】
また、ＩＰヘッダフラグは、転送装置２１０において送受信されたパケットのＩＰヘッダに含まれるフラグである。また、ＴＣＰヘッダフラグは、転送装置２１０において送受信されたパケットのＴＣＰヘッダに含まれるフラグである。また、シーケンス番号は、転送装置２１０において送受信されたパケットのＴＣＰヘッダに含まれるシーケンス番号である。
【００４０】
図１に戻って、測定結果ＤＢ１４３は、ネットワーク遅延の測定結果を記憶する。具体的には、測定結果ＤＢ１４３は、後述する遅延測定部１５４によって測定された遅延時間を含む測定結果情報をテナントごとに記憶する。
【００４１】
図５は、本実施形態に係る測定結果ＤＢ１４３によって記憶される測定結果情報の一例を示す図である。例えば、図５に示すように、測定結果ＤＢ１４３は、テナント名と、転送装置名と、測定時刻と、遅延時間とを対応付けた情報を測定結果情報として記憶する。なお、図５に示す測定結果情報はあくまでも一例であり、データ構造は図示のものに限られない。
【００４２】
ここで、テナント名は、テナントを一意に識別する情報である。また、転送装置名は、遅延測定の基となるパケットを送受信した転送装置に付与された名称である。例えば、本実施形態では、転送装置名は、監視対象の転送装置２１０に付与された名称となる。また、測定時刻は、遅延測定部１５４によってネットワーク遅延が測定された時刻である。また、遅延時間は、遅延測定部１５４によって測定された遅延時間である。なお、ここでは、監視対象の転送装置を識別するための情報として転送装置名を用いる場合について説明するが、転送装置名の代わりに、例えば転送装置のＩＰアドレスや装置番号などが用いられてもよい。
【００４３】
図１に戻って、制御部１５０は、動的フィルタ設定部１５１と、フロー情報収集部１５２と、フロー情報蓄積部１５３と、遅延測定部１５４とを有する。例えば、制御部１５０は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などの電子回路やＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などの集積回路であり、ネットワーク遅延測定装置１００の全体制御を実行する。
【００４４】
動的フィルタ設定部１５１は、転送装置２１０に対して、ネットワーク遅延の測定対象となるトラフィックの単位を特定するためのキー情報をフィルタリング条件として設定する。本実施形態では、動的フィルタ設定部１５１は、キー情報として、テナントを特定するための情報を用いる。すなわち、本実施形態では、動的フィルタ設定部１５１は、キー情報として、送信元ＩＰアドレスと、送信先ＩＰアドレスと、送信元ＭＡＣアドレスと、送信先ＭＡＣアドレスと、送信元ポート番号と、送信先ポート番号とを用いる。
【００４５】
具体的には、動的フィルタ設定部１５１は、所定の時間間隔でテナント情報ＤＢ１４１から順次キー情報を読み出し、読み出したキー情報を順次フィルタリング条件として設定することで、所定の時間間隔でフィルタリング条件を変更する。これにより、測定対象となるテナントごとのフロー情報が網羅的に収集されることになる。
【００４６】
なお、動的フィルタ設定部１５１は、転送装置２１０に対してフィルタリング条件を設定する際に、監視対象となるポートの入力トラフィック及び出力トラフィックの両方に同じフィルタリング条件を設定する。これにより、転送装置２１０からは、当該ポートで送信されるパケットに関するフロー情報と、当該ポートで受信されるパケットに関するフロー情報とが、それぞれ配信されることになる。ここで、当該ポートで受信されるパケットに関するフロー情報には、当該ポートで送信されたパケットに対して応答される応答パケットも含まれる。
【００４７】
また、本実施形態では、測定対象となるトラフィックの単位を「テナント」とし、転送装置２１０に対して、測定対象のテナントに対応付けられた送信元ＩＰアドレス、送信先ＩＰアドレス、送信元ＭＡＣアドレス、送信先ＭＡＣアドレス、送信元ポート番号、及び送信先ポート番号をフィルタリング条件として設定する場合について説明するが、実施形態はこれに限られない。例えば、測定対象となるトラフィックの単位を「送信元ＩＰアドレス」や「送信先ＩＰアドレス」、送信元ＩＰアドレス及び送信先ＩＰアドレスに送信元ポート番号及び送信先ポート番号を加えた「サービス」などとしてもよい。
【００４８】
例えば、測定対象となるトラフィックの単位を送信元ＩＰアドレスとする場合には、動的フィルタ設定部１５１は、転送装置２１０に対して、送信元ＩＰアドレスのみをフィルタリング条件として設定する。また、例えば、測定対象となるトラフィックの単位を送信先ＩＰアドレスとする場合には、動的フィルタ設定部１５１は、転送装置２１０に対して、送信先ＩＰアドレスのみをフィルタリング条件として設定する。また、例えば、測定対象となるトラフィックの単位をサービスとする場合には、動的フィルタ設定部１５１は、転送装置２１０に対して、送信元ＩＰアドレス及び送信先ＩＰアドレスに送信元ポート番号及び送信先ポート番号をフィルタリング条件として設定する。さらに、動的フィルタ設定部１５１は、パケットがカプセル化されて転送される場合には、カプセル化キー情報に設定されている情報をフィルタリング条件に加えて設定してもよい。
【００４９】
フロー情報収集部１５２は、転送装置２１０から配信されたフロー情報を収集する。具体的には、フロー情報収集部１５２は、通信制御部１１０を介して、転送装置２１０から配信されたフロー情報を受信し、受信したフロー情報を解析する。ここで、フロー情報収集部１５２は、フロー情報を解析して、収集時刻、収集ポート名、送信元ＭＡＣアドレス、及び送信先ＭＡＣアドレスを抽出する。また、フロー情報収集部１５２は、フロー情報に含まれるＩＰヘッダ情報を解析して、送信元ＩＰアドレス、送信先ＩＰアドレス、及びＩＰヘッダフラグの情報を抽出する。また、フロー情報収集部１５２は、フロー情報に含まれるＴＣＰヘッダ情報を解析して、送信元ポート番号、送信先ポート番号、ＴＣＰヘッダフラグ、及びシーケンス番号の情報を抽出する。そして、フロー情報収集部１５２は、フロー情報から抽出した各情報をフロー情報蓄積部１５３へ引き渡す。
【００５０】
フロー情報蓄積部１５３は、フロー情報収集部１５２によって収集されたフロー情報をフロー情報ＤＢ１４２に蓄積する。具体的には、フロー情報蓄積部１５３は、フロー情報収集部１５２から受け付けた収集時刻、収集ポート名、送信元ＩＰアドレス、送信先ＩＰアドレス、送信元ＭＡＣアドレス、送信先ＭＡＣアドレス、送信元ポート番号、送信先ポート番号、ＩＰヘッダフラグ、ＴＣＰヘッダフラグ、及びシーケンス番号をそれぞれ対応付けた情報をフロー情報として生成し、フロー情報ＤＢ１４２に格納する。ここで、フロー情報蓄積部１５３は、フロー情報収集部１５２から各情報を受け付けるごとにフロー情報を生成し、生成したフロー情報を時系列順にフロー情報ＤＢ１４２に格納する。
【００５１】
遅延測定部１５４は、フロー情報ＤＢ１４２に蓄積されたフロー情報を参照して、転送装置２１０のポートでパケットが送信された時刻と当該パケットに対する応答パケットが受信された時刻との差分を計算することで、ネットワーク遅延を測定する。
【００５２】
具体的には、遅延測定部１５４は、測定対象となるトラフィックの単位ごとにネットワーク遅延を測定する。本実施形態では、遅延測定部１５４は、テナントごとにネットワーク遅延を測定する。また、本実施形態では、遅延測定部１５４は、動的フィルタ設定部１５１によって転送装置２１０のフィルタリング条件が変更される時間間隔に合わせて、ネットワーク遅延を測定する。
【００５３】
例えば、遅延測定部１５４は、フロー情報に含まれるＴＣＰヘッダ情報を用いて応答パケットを特定して時刻の差分を計算することで、ネットワーク遅延を測定する。具体的には、遅延測定部１５４は、フロー情報ＤＢ１４２に蓄積されたフロー情報の中からシーケンス番号が一致する２つのフロー情報を読み出し、読み出した各フロー情報に含まれる収集時刻の差分を計算することで、ネットワーク遅延を表す遅延時間を測定する。
【００５４】
ここで、例えば、ネットワーク上で転送されるパケットは、分割されて送受信される場合もある。そのような場合には、転送装置２１０のポートで送信されたパケットと、当該パケットに対する応答パケットとの間で、シーケンス番号が同一のパケットが複数ある場合もある。このような場合には、例えば、遅延測定部１５４は、フロー情報に含まれるＩＰヘッダフラグに基づいて、パケットが分割されているか否かを判定し、分割されていた場合には、前後のパケットをたどることで応答パケットを特定して、収集時刻の差分を計算する。
【００５５】
そして、遅延測定部１５４は、ネットワーク遅延を表す遅延時間を測定すると、測定した遅延時間を測定結果として測定結果ＤＢ１４３に保存する。具体的には、遅延測定部１５４は、遅延時間を測定すると、テナント名と、遅延測定の基となるパケットを送受信した転送装置の転送装置名と、遅延時間を測定した時刻である測定時刻と、測定した遅延時間とを対応付けた測定結果情報を生成する。そして、遅延測定部１５４は、生成した測定結果情報を測定結果ＤＢ１４３に保存する。さらに、遅延測定部１５４は、生成した測定結果情報に含まれるテナント名、転送装置名、測定時刻、及び遅延時間を、それぞれ測定結果として表示部１３０に出力する。
【００５６】
なお、本実施形態では、遅延測定部１５４が、動的フィルタ設定部１５１によって転送装置２１０のフィルタリング条件が変更される時間間隔に合わせて、ネットワーク遅延を測定する場合について説明するが、実施形態はこれに限られない。例えば、遅延測定部１５４は、動的フィルタ設定部１５１によって転送装置２１０のフィルタリング条件が変更される時間間隔よりも長い時間間隔で、ネットワーク遅延を測定してもよい。これにより、ネットワーク遅延を測定する回数を減らすことができるので、ネットワーク遅延測定装置１００の負荷を低減させることができる。
【００５７】
なお、前述したように、テナント情報ＤＢ１４１において１つのテナントについて複数のキー情報が設定されている場合には、１つのテナントについて、複数の遅延時間が算出されることになる。この場合には、遅延測定部１５４は、例えば、算出された複数の遅延時間の平均時間を１つのテナントの遅延時間としてもよい。
【００５８】
次に、本実施形態に係るネットワーク遅延測定装置１００によって実行されるネットワーク遅延測定の処理手順について説明する。
【００５９】
図６は、本実施形態に係るネットワーク遅延測定装置１００によって実行されるネットワーク遅延測定方法の処理手順を示すフローチャートである。図６に示すように、本実施形態に係るネットワーク遅延測定装置１００は、例えば、操作者からネットワーク遅延測定の開始指示を受け付けた場合に、以下に示す処理手順を実行する。
【００６０】
具体的には、まず、動的フィルタ設定部１５１が、操作者からネットワーク遅延測定の開始指示を受け付けた場合に（ステップＳ１０１，Ｙｅｓ）、テナント情報ＤＢ１４１からキー情報を読み出す（ステップＳ１０２）。そして、動的フィルタ設定部１５１は、転送装置２１０に対して、テナント情報ＤＢ１４１から読み出したキー情報をフィルタリング条件として設定する（ステップＳ１０３）。
【００６１】
続いて、フロー情報収集部１５２が、転送装置２１０から配信されるフロー情報を収集する（ステップＳ１０４）。また、フロー情報蓄積部１５３が、フロー情報収集部１５２によって収集されたフロー情報を時系列にフロー情報ＤＢ１４２に蓄積する（ステップＳ１０５）。
【００６２】
続いて、遅延測定部１５４が、前回、ネットワーク遅延を測定してから所定の時間が経過しているか否かを判定する（ステップＳ１０６）。ここで、所定の時間が経過していなかった場合には（ステップＳ１０６，Ｎｏ）、フロー情報収集部１５２によってフロー情報がさらに収集され（ステップＳ１０４）、フロー情報蓄積部１５３によってフロー情報がさらに蓄積される（ステップＳ１０５）。
【００６３】
そして、所定の時間が経過していた場合には（ステップＳ１０６，Ｙｅｓ）、遅延測定部１５４は、フロー情報ＤＢ１４２に蓄積されたフロー情報を参照して、ネットワーク遅延を測定する（ステップＳ１０７）。その後、遅延測定部１５４は、測定結果を測定結果ＤＢ１４３に保存し（ステップＳ１０８）、さらに、測定結果を表示部１３０に出力する（ステップＳ１０９）。
【００６４】
なお、ネットワーク遅延測定装置１００は、操作者からネットワーク遅延測定の終了指示を受け付けるまでは、上述したステップＳ１０２〜Ｓ１０９の処理手順を繰り返し実行する（ステップＳ１１０，Ｎｏ）。これにより、動的フィルタ設定部１５１によるフィルタリング条件の設定と遅延測定部１５４によるネットワーク遅延の測定とが、所定の時間間隔で繰り返し実行されることになる。そして、ネットワーク遅延測定装置１００は、操作者からネットワーク遅延測定の終了指示を受け付けた場合には（ステップＳ１１０，Ｙｅｓ）、ネットワーク遅延測定の処理を終了する。
【００６５】
上述したように、本実施形態では、動的フィルタ設定部１５１が、転送装置２１０に対して、ネットワーク遅延の測定対象となるトラフィックの単位を特定するためのキー情報をフィルタリング条件として設定する。また、フロー情報収集部１５２が、転送装置２１０から配信されたフロー情報を収集する。また、フロー情報蓄積部１５３が、フロー情報収集部１５２によって収集されたフロー情報をフロー情報ＤＢ１４２に蓄積する。そして、遅延測定部１５４が、フロー情報ＤＢ１４２に蓄積されたフロー情報を参照して、転送装置２１０のポートでパケットが送信された時刻と当該パケットに対する応答パケットが受信された時刻との差分を計算することで、ネットワーク遅延を測定する。
【００６６】
一方、従来の測定技術としては、測定対象の装置に対して能動的に試験パケットを送信することで、ネットワーク遅延を測定する方法があった。
【００６７】
図７及び８は、従来技術に係るネットワーク遅延測定方法の例を模式的に示す図である。例えば、図７に示すように、測定用の装置であるプローブから測定対象の装置に対してＩＣＭＰ  ｐｉｎｇパケットを送信したり、Ｗｅｂサーバに対してｇｅｔリクエストを送信することで、能動的にネットワーク遅延を測定する方法がある。この方法では、測定対象の装置に試験パケットが送信されるため、この試験パケットの増加によってネットワーク負荷が増大する場合があるという課題があった。また、試験パケットを送信するためのプローブを全てのユーザ拠点に柔軟に設置するのが難しいという課題もあった。
【００６８】
また、例えば、図８に示すように、パケットを５−ｔｕｐｌｅ（送信元ＩＰアドレス、送信先ＩＰアドレス、送信元ポート番号、送信先ポート番号、プロトコル）で識別されるフローで分類して品質測定を行うＦｌｏｗ技術を発展させ、転送装置で転送されるパケットの遅延の揺らぎを含む品質を測定するＩＰ−ＳＬＡといった技術もある。このＩＰ−ＳＬＡでは、転送装置が、測定対象の装置に対して試験パケットを送信し、その試験パケットに応じて測定対象の装置から送信される応答パケットをもとに、ネットワーク遅延を測定する。この方法では、測定対象の装置に試験パケットが送信されるため、この試験パケットの増加によってネットワーク負荷が増大する場合があるという課題があった。また、転送装置側で計測を行うため、多数のテナントのトラフィックを識別して測定する必要があるクラウドネットワークでは、転送装置への負荷が増大し、対応が困難であるという課題があった。
【００６９】
これに対し、本実施形態に係るネットワーク遅延測定方法では、ポートを通過するトラフィックに対して所定のフィルタリング条件でフィルタリングすることで特定のパケットを抽出し、抽出したパケットのヘッダ情報を一定バイト切り取り、まとめてフロー情報として配信するという転送装置２１０の機能を活用して、転送装置２１０の外部装置であるネットワーク遅延測定装置１００によってネットワーク遅延を測定する。
【００７０】
したがって、本実施形態によれば、従来の測定技術のように能動的に試験パケットを送信することがないので、ネットワーク負荷の増大を抑えつつネットワーク遅延を測定することができる。また、転送装置にネットワーク遅延測定のための機能を新たに追加する必要がないので、転送装置の負荷が増大することもない。また、試験パケットを送信するためのプローブをユーザ拠点に設置する必要がないので、プローブの設置に関する困難性も生じない。
【００７１】
また、本実施形態では、テナント情報ＤＢ１４１が、複数のキー情報を記憶する。また、動的フィルタ設定部１５１が、所定の時間間隔でテナント情報ＤＢ１４１から順次キー情報を読み出し、転送装置２１０に対して、読み出したキー情報を順次フィルタリング条件として設定することで、所定の時間間隔で前記フィルタリング条件を変更する。そして、遅延測定部１５４が、測定対象となるトラフィックの単位ごとにネットワーク遅延を測定する。したがって、本実施形態によれば、測定対象となるトラフィックの単位ごとに、網羅的にネットワーク遅延を測定することができる。
【００７２】
また、本実施形態では、遅延測定部１５４が、動的フィルタ設定部１５１によってフィルタリング条件が変更される時間間隔に合わせて、ネットワーク遅延を測定する。したがって、本実施形態によれば、測定対象となるトラフィックの単位が変更されるごとに、ネットワーク遅延が測定されるので、測定対象となるトラフィックの単位ごとにネットワーク遅延の測定結果を速やかに提供することができる。
【００７３】
また、本実施形態では、動的フィルタ設定部１５１が、キー情報として、クラウドサービスにおいてクラウド事業者の基盤上でサービスを提供するユーザであるテナントを特定するための情報を用いる。したがって、本実施形態によれば、クラウドサービスを提供するネットワークに発生するネットワーク遅延をテナントごとに測定することができる。
【００７４】
また、本実施形態では、転送装置によって配信されるフロー情報には、ＴＣＰヘッダ情報が含まれている。そして、遅延測定部１５４が、フロー情報に含まれるＴＣＰヘッダ情報を用いて応答パケットを特定して時刻の差分を計算することで、ネットワーク遅延を測定する。したがって、本実施形態によれば、ＴＣＰにおける確認応答の機能を利用して、ネットワーク遅延を正確に測定することができる。
【００７５】
なお、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、或いは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００７６】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散又は統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散又は統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部又は任意の一部が、ＣＰＵ及び当該ＣＰＵにて解析実行されるプログラムにて実現され、或いは、ワイヤードロジックによるハードウェアとして実現され得る。
【００７７】
例えば、上記実施形態で説明したネットワーク遅延測定方法は、あらかじめ用意されたプログラムをコンピュータで実行することで実現することもできる。そこで、以下では、上記実施形態で説明したネットワーク遅延測定方法を実現するネットワーク遅延測定プログラムを実行するコンピュータの一例を説明する。
【００７８】
図９は、本実施形態に係るネットワーク遅延測定プログラムを実行するコンピュータ３００を示す図である。図９に示すように、コンピュータ３００は、例えば、メモリ３１０と、ＣＰＵ（Central  Processing  Unit）３２０と、ハードディスクドライブインタフェース３３０と、ディスクドライブインタフェース３４０と、シリアルポートインタフェース３５０と、ビデオアダプタ３６０と、ネットワークインタフェース３７０とを有する。これらの各部は、バス３８０によって接続される。
【００７９】
メモリ３１０は、ＲＯＭ（Read  Only  Memory）３１１及びＲＡＭ（Random  Access  Memory）３１２を含む。ＲＯＭ３１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース３３０は、ハードディスクドライブ３９０に接続される。ディスクドライブインタフェース３４０は、ディスクドライブ３４１に接続される。ディスクドライブ３４１には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース３５０には、例えば、マウス３５１及びキーボード３５２が接続される。ビデオアダプタ３６０には、例えば、ディスプレイ３６１が接続される。
【００８０】
ここで、図９に示すように、ハードディスクドライブ３９０は、例えば、ＯＳ（Operating  System）３９１、アプリケーションプログラム３９２、プログラムモジュール３９３及びプログラムデータ３９４を記憶する。本実施形態に係るネットワーク遅延測定プログラムは、例えば、コンピュータ３００によって実行される指令が記述されたプログラムモジュールとして、例えばハードディスクドライブ３９０に記憶される。具体的には、上記実施形態で説明した動的フィルタ設定部１５１と同様の情報処理を実行する動的フィルタ制御手順、フロー情報収集部１５２と同様の情報処理を実行するフロー情報収集手順、フロー情報蓄積部１５３と同様の情報処理を実行するフロー情報蓄積手順、遅延測定部１５４と同様の情報処理を実行する遅延測定手順が記述されたプログラムモジュールが、ハードディスクドライブ３９０に記憶される。
【００８１】
また、上記実施形態で説明したテナント情報ＤＢ１４１、フロー情報ＤＢ１４２、測定結果ＤＢ１４３などに記憶されるデータのように、ネットワーク遅延測定プログラムによる情報処理に用いられるデータは、例えば、ハードディスクドライブ３９０に記憶される。そして、ＣＰＵ３２０が、ハードディスクドライブ３９０に記憶されたプログラムモジュールやプログラムデータを必要に応じてＲＡＭ３１２に読み出して、動的フィルタ制御手順、フロー情報収集手順、フロー情報蓄積手順、遅延測定手順を実行する。
【００８２】
なお、ネットワーク遅延測定プログラムに係るプログラムモジュールやプログラムデータは、ハードディスクドライブ３９０に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ３４１等を介してＣＰＵ３２０によって読み出されてもよい。或いは、ネットワーク遅延測定プログラムに係るプログラムモジュールやプログラムデータは、ＬＡＮ（Local  Area  Network）やＷＡＮ（Wide  Area  Network）等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース３７０を介してＣＰＵ３２０によって読み出されてもよい。
【符号の説明】
【００８３】
１００  ネットワーク遅延測定装置
１４０  記憶部
１４１  テナント情報ＤＢ
１４２  フロー情報ＤＢ
１４３  測定結果ＤＢ
１５０  制御部
１５１  動的フィルタ設定部
１５２  フロー情報収集部
１５３  フロー情報蓄積部
１５４  遅延測定部
【図１】
2013240017.tif 000003
【図２】
2013240017.tif 000004
【図３】
2013240017.tif 000005
【図４】
2013240017.tif 000006
【図５】
2013240017.tif 000007
【図６】
2013240017.tif 000008
【図７】
2013240017.tif 000009
【図８】
2013240017.tif 000010
【図９】
2013240017.tif 000011