(57)【特許請求の範囲】
【請求項１】
少なくとも一つのクライアントと少なくとも一つのサーバとが、複数のルータを含んで構成されるネットワークを介して接続された通信システムの通信性能を測定する装置であって、前記少なくとも一つのクライアントと前記少なくとも一つのサーバとの間の経路上に存在する分岐点ノードと通信可能な通信性能測定装置において、
通信性能測定装置は、
ＴＣＰ／ＩＰに従って前記ネットワークを介した通信を実行する通信手段と、
少なくともサーバを特定するためのサーバ識別情報とクライアントあるいはクライアントが利用するアクセスポイントを特定するためのクライアント識別情報とを含み、測定対象となる通信環境を表すパラメータを受け取る入力手段と、
所定の手順に従って、所定のファイルを前記サーバから取得するための前記通信手段による通信動作を制御する通信制御手段と、
送信指示で指定された識別情報で特定される宛先との間で所定の制御パケットを送受信するパケット送受信手段、
各宛先に送出した前記所定の制御パケットおよびこの制御パケットに対して各宛先から返される所定の制御パケットの送受信状況に関する情報を収集する状況収集手段と、
前記通信手段によるデータパケットあるいは制御パケットの受信状況に応じて、前記パケット送受信手段に対して、前記クライアント識別情報および分岐点ノードを特定する識別情報をそれぞれ宛先として指定した送信指示を入力する第１送出指示手段と、
前記所定の制御パケットの送受信状況について収集された情報に基づいて、所定の遅延モデルに基づいて、サーバからクライアントにデータパケットを送信する際に発生する遅延時間を推定する遅延推定手段と、
推定された遅延時間に応じて、データパケットあるいは制御パケットを受信したことに対する応答パケットを前記通信手段が送出する時刻を制御する応答制御手段と、
前記通信手段による通信の進行状況に関する情報を収集し、収集した情報に基づいて、前記クライアントと前記サーバとの間の通信経路についての通信性能を推定する性能推定手段と
を備えたことを特徴とする通信性能測定装置。
【請求項２】
請求項１に記載の通信性能測定装置において、
状況収集手段は、
パケット送受信手段によって各宛先へ所定の制御パケットが送信されたことを検出し、その時刻を送信時刻として宛先ごとに記録する送信検出手段と、
各宛先へ送信された所定の制御パケットに対する応答として宛先から返される制御パケットをパケット送受信手段が受信したことを検出し、その時刻を受信時刻として宛先ごとに記録する受信検出手段と、
各宛先に対応する送信時刻および受信時刻を遅延推定手段に通知する時刻通知手段とを備えた構成であり、
遅延推定手段は、
時刻通知手段から通知された送信時刻および受信時刻に基づいて、クライアントと通信性能測定装置との間で前記所定の制御パケットが往復するために要した第１往復時間と、分岐点ノードと通信性能測定装置との間で前記所定の制御パケットが往復するために要した第２往復時間を算出する往復時間算出手段と、
第１往復時間、第２往復時間および遅延モデルに基づいて、通信手段によって受信されたデータパケットあるいは制御パケットが、サーバから通信性能測定装置に伝達されるのに要する時間と、サーバからクライアントに伝達されるまでに要する時間との差を推定する差分推定手段とを備えた構成である
ことを特徴とする通信性能測定装置。
【請求項３】
請求項１に記載の通信性能測定装置において、
入力手段は、
自装置からクライアントまでの経路上に存在する各ノードを特定する識別情報からなる第１経路情報と、自装置からサーバまでの経路上に存在する各ノードを特定する識別情報からなる第２経路情報を収集する経路情報収集手段と、
前記第１経路情報と前記第２経路情報とを比較することによって分岐点ノードの識別情報を検出し、この識別情報をパラメータの一部として入力する分岐検出手段とを備えた構成である
ことを特徴とする通信性能測定装置。
【請求項４】
請求項１に記載の通信性能測定装置において、
入力手段は、
それぞれ異なるデータ長を有し、所定の形式を持つ２つの制御パケットをクライアントに送出する旨をパケット送受信手段に指示する第２送出指示手段と、
前記２つの制御パケットそれぞれについて、制御パケットを送信してからその制御パケットに対する応答パケットを受信するまでに要する往復時間を計測する往復時間計測手段と、
前記２つの制御パケットについてそれぞれ得られた往復時間に基づいて、分岐点ノードとクライアントとの間のデータ伝送を表す所定の遅延モデルにおいて、伝送されるパケットのサイズによって変動する要素にかかわる係数の値を推定し、この値をパラメータの一部として入力する要素推定手段とを備えた構成である
ことを特徴とする通信性能測定装置。
【請求項５】
請求項２に記載の通信性能測定装置において、
遅延推定手段は、
サーバからクライアントにデータパケットがバースト的に送信される場合に、これらのデータパケットの蓄積によって発生する遅延時間の成分を所定のモデルに基づいて算出し、差分推定手段によって得られた差分値に対する補正値として出力する補正値算出手段と、
前記差分推定手段によって得られた推定値に、前記補正値を加えた値を推定値として出力する差分値出力手段とを備えた構成である
ことを特徴とする通信性能測定装置。
【請求項６】
請求項５に記載の通信性能測定装置において、
遅延推定手段は、補正値算出手段によって算出された補正値と所定の閾値とを比較し、この比較結果に応じて、応答制御手段に応答パケットの送出を停止する旨を指示する停止判定手段を備えた構成である
ことを特徴とする通信性能測定装置。
【請求項７】
請求項１に記載の通信性能測定装置において、
性能推定手段は、
通信手段によって実行される制御パケットおよびデータパケットの送受信動作を監視し、ＨＴＴＰにおいて規定された各手順の開始時刻および終了時刻を手順ごとに記録する第１記録手段と、
手順ごとに記録された開始時刻と終了時刻との差分を手順ごとの所要時間として算出するとともに、各手順の所要時間の総和を算出する時間算出手段とを備えた構成である
ことを特徴とする通信性能測定装置。
【請求項８】
請求項１に記載の通信性能測定装置において、
性能推定手段は、
通信手段によって実行される制御パケットおよびデータパケットの送受信動作を監視し、ＦＴＰにおいて規定された各手順の開始時刻および終了時刻を手順ごとに記録する第２記録手段と、
手順ごとに記録された開始時刻と終了時刻との差分を手順ごとの所要時間として算出するとともに、各手順の所要時間の総和を算出する時間算出手段とを備えた構成である
ことを特徴とする通信性能測定装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＴＣＰ／ＩＰプロトコルを用いて行なわれる通信について、ネットワークの性能を計測するための通信性能測定装置に関するものである。
近年のパーソナルコンピュータやインターネットに接続可能な携帯電話の普及に伴って、様々な事業者によって、インターネットを介した様々なサービスが一般の利用者に提供されるようになってきている。また一方、一般の利用者からは、単に多種多様なサービスの提供を受けるだけでなく、そのサービスをより快適に享受したいという要望が出てきている。
【０００２】
このような利用者からの要望に応えるためには、利用者が快適にサービスを受けることを可能とする環境を整える必要がある。そして、環境を整えるために設備の拡充などが必要であるか否かを見極めるためには、まず、利用者がサービスを受ける現状の環境、すなわち、サービスを提供する媒体である現実のネットワークにおいて、ＴＣＰ／ＩＰプロトコルを用いてファイル転送などを行なう際に要する時間などの通信性能を正確に把握する必要がある。
【０００３】
【従来の技術】
ＴＣＰ／ＩＰプロトコルを用いた通信について、ネットワークの性能を計測するために、従来は、次に挙げる２つの方法のいずれかを採用していた。
図２１(ａ)に、従来の通信性能計測システムの第１の構成例を示し、また、図２１(ｂ)に、従来の通信性能計測システムの第２の構成例を示す。
図２１において、クライアント４０１は、ルータ４０２clを介してアクセスポイント４０３に接続し、更に、ルータ４０２a1〜ルータ４０２akあるいは、ルータ４０２b1〜ルータ４０２blを介して、それぞれサーバ４０４ａおよびサーバ４０４ｂとの間にコネクションを確立し、サーバ４０４ａあるいはサーバ４０４ｂからサービスを受ける。
【０００４】
したがって、図２１(ａ)に示すように、アクセスポイント４０３に、クライアント４０１と同等の通信環境を備えた性能計測装置４１０を配置し、この性能計測装置４１０によって、サーバ４０４ａあるいはサーバ４０４ｂとの間にコネクションを確立するまでの時間や、サーバ４０４ａあるいはサーバ４０４ｂからファイルをダウンロードするために要した時間などを測定することにより、クライアント４０１の利用者が体感するサービス品質を正確に評価することができる。
【０００５】
一方、図２１(ｂ)に示すように、サーバ４０４ａが直接に接続されているルータ４０２akに別の性能計測装置４２０を接続し、この性能計測装置４２０によって、サーバ４０４ａに流入するトラフィックとサーバ４０４ａから送出されるトラフィックとをそれぞれ記録し、この記録を分析することにより、サーバ側から見たネットワークの性能を評価することができる。
【０００６】
【発明が解決しようとする課題】
ところで、上述した従来の技術を適用するためには、図２１に示したように、クライアントあるいはサーバに物理的に近接した位置に性能測定装置を配置し、クライアントから見たネットワークの通信性能およびサーバから見たネットワークの通信性能をそれぞれ実測する必要がある。
一方、ネットワークの利用者、即ちクライアントは急速に増大しており、また、その通信環境は多種多様である。また、サービスを提供するサーバもまた急速に増大している。したがって、上述したような従来方式によって、個々のクライアントあるいは個々のサーバについて通信性能を実測する技術を適用したのでは、膨大な数のクライアントあるいはサーバについてそれぞれの性能を評価するために、莫大な時間と労力と費用が費やされてしまう。
【０００７】
本発明は、性能測定装置の物理的な位置にかかわらず、ネットワークに接続された任意のクライアントと任意のサーバとの間における通信品質を測定可能な通信性能測定装置を提供することを目的とする。
【０００８】
【課題を解決するための手段】
図１に、本発明の通信性能測定装置の原理ブロック図を示す。
請求項１の発明は、クライアント１０１とサーバ１０２との間の経路上に存在する分岐点ノード１０３と通信可能な通信性能測定装置において、通信性能測定装置１１０は、ＴＣＰ／ＩＰに従って通信を実行する通信手段１１１と、少なくともサーバ識別情報とクライアント識別情報とをパラメータとして受け取る入力手段１１２と、所定の手順に従って、所定のファイルをサーバ１０２から取得するための通信手段１１１による通信動作を制御する通信制御手段１１３と、送信指示で指定された識別情報で特定される宛先との間で所定の制御パケットを送受信するパケット送受信手段１１４、各宛先に送出した所定の制御パケットおよびこの制御パケットに対して各宛先から返される所定の制御パケットの送受信状況に関する情報を収集する状況収集手段１１５と、通信手段１１１によるパケットの受信状況に応じて、パケット送受信手段１１４に、クライアント１０１および分岐点ノード１０３を宛先として指定する送信指示を入力する第１送出指示手段１１６と、所定の制御パケットの送受信状況について収集された情報に基づいて、所定の遅延モデルに基づいて、サーバ１０２からクライアント１０１にデータパケットを送信する際に発生する遅延時間を推定する遅延推定手段１１７と、推定された遅延時間に応じて、データパケットあるいは制御パケットを受信したことに対する応答パケットを通信手段１１１が送出する時刻を制御する応答制御手段１１８と、通信手段１１１による通信の進行状況に関する情報を収集し、収集した情報に基づいて、指定されたクライアント１０１と指定されたサーバ１０２との間の通信経路についての通信性能を推定する性能推定手段１１９とを備えたことを特徴とする。
【０００９】
請求項１の発明は、入力手段１１２によって入力されたパラメータに基づいて、通信制御手段１１３が通信手段１１１による通信動作を制御し、サーバ１０２から所定のファイルを取得する際に、第１送出指示手段１１６からの指示に応じてパケット送受信手段１１４により、クライアント１０１および分岐点ノード１０３との間で所定の制御パケットを送受信することにより、分岐点ノード１０３およびクライアント１０１と通信性能測定装置１１０との間それぞれについて、サーバ１０２から実際のパケットが伝送される時点における通信環境に関する情報を、状況収集手段１１５によって収集する。このようにして収集された情報と所定の遅延モデルとに基づいて、遅延推定手段１１７は、サーバ１０２とクライアント１０１との間でパケットが伝送される際に生じる遅延時間を推定し、この遅延時間に応じて、通信手段１１１が受信したパケットに対する応答パケットを送出するタイミングを制御することにより、サーバ１０２とクライアント１０１との間の通信を遅延時間に関してシミュレートすることができる。したがって、上述したようにして、サーバ１０２とクライアント１０１との間の通信をシミュレートしつつ、性能推定手段１１９により、通信性能に関する情報を収集することにより、クライアント１０１とサーバ１０２との間の経路についての通信性能を、通信性能測定装置１１０の物理的な位置にかかわらずに推定することが可能である。
【００１０】
なお、遅延推定手段１１７において用いる遅延モデルについては、後述する。
図２に、本発明の通信性能測定装置の原理ブロック図を示す。
請求項２の発明は、請求項１に記載の通信性能測定装置において、状況収集手段１１５は、パケット送受信手段１１４によって各宛先へ所定の制御パケットが送信された時刻を記録する送信検出手段１２１と、宛先から返される応答パケットをパケット送受信手段１１４が受信した時刻を記録する受信検出手段１２２と、各宛先に対応する送信時刻および受信時刻を遅延推定手段１１７に通知する時刻通知手段１２３とを備えた構成であり、遅延推定手段１１７は、時刻通知手段１２３から通知された送信時刻および受信時刻に基づいて、クライアント１０１と通信性能測定装置１１０との間でパケットが往復するために要した第１往復時間と、分岐点ノード１０３と通信性能測定装置１１０との間でパケットが往復するために要した第２往復時間を算出する往復時間算出手段１２４と、第１往復時間、第２往復時間および遅延モデルに基づいて、通信手段１１１によって受信されたパケットが、サーバ１０２から通信性能測定装置１１０に伝達されるのに要する時間と、サーバ１０２からクライアント１０１に伝達されるまでに要する時間との差を推定する差分推定手段１２５とを備えた構成であることを特徴とする。
【００１１】
請求項２の発明は、状況収集手段１１５に備えた送信検出手段１２１と受信検出手段１２２とにより、パケット送受信手段１１４によって所定の制御パケットが送受信される時刻を記録し、時刻通知手段１２３によって遅延推定手段１１７に通知する。これらの時刻に基づいて、往復時間算出手段１２４により、第１往復時間および第２往復時間を算出し、これらの時間をそれぞれの経路についての遅延モデルに代入して未知数を消去すれば、差分推定手段１２５により、通信手段１１１によって受信されたパケットのサイズを考慮して、このパケットがクライアント１０１に到達するまでに要する時間と通信性能測定装置１１０に到達した時間との差分を推定することができる。そして、このように推定された差分に応じて、応答制御手段１１８が、通信手段１１１による応答パケットの送出動作を遅延させれば、通信性能測定装置１１０は、その位置にかかわらず、クライアント１０１から応答パケットが返されるべきタイミングでサーバ１０２に応答パケットを返すことができる。
【００１２】
図３に、本発明の通信性能測定装置に備えられる入力手段の第１の構成を示す。
請求項３の発明は、請求項１に記載の通信性能測定装置において、入力手段１１２は、自装置からクライアントまでの経路上に存在する各ノードを特定する識別情報からなる第１経路情報と、自装置からサーバまでの経路上に存在する各ノードを特定する識別情報からなる第２経路情報を収集する経路情報収集手段１３１と、第１経路情報と第２経路情報とを比較して分岐点ノードを示す識別情報を検出し、この識別情報をパラメータの一部として入力する分岐検出手段１３２とを備えた構成であることを特徴とする。
【００１３】
請求項３の発明は、入力手段１１２に備えられた経路情報収集手段１３１により、第１経路情報と第２経路情報とを収集し、これらを分岐検出手段１３２によって比較することにより、分岐点ノード１０３の識別情報を自動的に検出することができる。これにより、通信性能測定装置１１０とサーバ１０２およびクライアント１０１とがネットワークにおいて占めている位置関係を自動的に把握して測定を行なうことが可能となるので、通信性能測定装置１１０を操作する操作者の負担を軽減し、ネットワークの通信性能を正確に測定することができる。
【００１４】
図４に、本発明の通信性能測定装置に備えられる入力手段の第２の構成を示す。
請求項４の発明は、請求項１に記載の通信性能測定装置において、入力手段１１２は、それぞれ異なるデータ長をする２つの制御パケットをクライアント１０１に送出する旨をパケット送受信手段１１４に指示する第２送出指示手段１３３と、２つの制御パケットそれぞれについて、往復時間を計測する往復時間計測手段１３４と、２つの制御パケットそれぞれの往復時間に基づいて、分岐点ノード１０３とクライアント１０１との間のデータ伝送を表す所定の遅延モデルにおいて、伝送されるパケットのサイズによって変動する要素にかかわる係数の値を推定し、パラメータの一部として入力する要素推定手段１３５とを備えた構成であることを特徴とする。
【００１５】
請求項４の発明は、第２送出指示手段１３３による指示に応じて、パケット送受信手段１１４が異なるデータ長を有する２つの制御パケットをクライアント１０１との間で送受信する際に、往復時間計測手段１３４により、上述した２つの制御パケットの往復時間を計測する。このように、サイズの異なる制御パケットについてそれぞれの往復時間を計測し、要素推定手段１３５により、これらの往復時間を分岐点ノード１０３とクライアント１０１との間の遅延モデルに代入することにより、この遅延モデルにおいて、伝送されるパケットのサイズによって変動する要素にかかわる係数を推定することができる。
【００１６】
図５に、本発明の通信性能測定装置に備えられる遅延推定手段の構成を示す。請求項５の発明は、請求項２に記載の通信性能測定装置において、遅延推定手段１１７は、バースト的に送信されるデータパケットの蓄積によって発生する遅延時間の成分を所定のモデルに基づいて算出し、この成分に相当する補正値を出力する補正値算出手段１４１と、差分推定手段１２５によって得られた推定値に上述した補正値を加えた値を推定値として出力する差分値出力手段１４２とを備えた構成であることを特徴とする。
【００１７】
請求項５の発明は、補正値算出手段１４１によって算出された補正値を用いて、差分値出力手段１４２により、差分推定手段１２５によって得られた差分値を補正するので、バースト的に送信されるデータパケット自身の蓄積によって発生する成分を含めて、遅延時間を正確に推定することができる。
請求項６の発明は、請求項５に記載の通信性能測定装置において、遅延推定手段１１７は、補正値算出手段１４１によって算出された補正値と所定の閾値とを比較し、この比較結果に応じて、応答制御手段１１８に応答パケットの送出を停止する旨を指示する停止判定手段１４３を備えた構成であることを特徴とする。
【００１８】
請求項６の発明は、停止判定手段１４３により、例えば、上述した補正値が所定の閾値を超えたときに、応答制御手段１１８に対して、応答パケットの送出を停止する旨を指示することにより、クライアント１０１に備えられた有限のキューからパケットがあふれた場合に発生するパケット廃棄を考慮して、クライアント１０１とサーバ１０２との間のデータ伝送をシミュレートすることができる。
【００１９】
図６に、本発明の通信性能測定装置に備えられる性能推定手段の構成を示す。請求項７の発明は、請求項１に記載の通信性能測定装置において、性能推定手段１１９は、通信手段１１１によって実行される制御パケットおよびデータパケットの送受信動作を監視し、ＨＴＴＰにおいて規定された各手順の開始時刻および終了時刻を手順ごとに記録する第１記録手段１４４と、記録された開始時刻と終了時刻との差分を所要時間として手順ごとに算出する時間算出手段１４５とを備えた構成であることを特徴とする。
【００２０】
請求項７の発明は、第１記録手段１４４により、ＨＴＴＰにおいて規定された各手順の開始時刻および終了時刻を記録し、この記録された時刻に基づいて、時間算出手段１４５によって各手順の実行に要した所要時間を算出するので、例えば、コネクションを確立するために必要な一連の手順の実行に要する時間や、個々のファイルあるいは複数のファイルを一括して取得するために必要な一連の手順の実行に要する時間など、ＨＴＴＰに従って行なわれる様々な手順の連鎖に応じて、個々の手順に対応する所要時間を積算していくことにより、利用者が通信性能を意識する様々な場面に対応して柔軟に通信性能を測定することができる。
【００２１】
請求項８の発明は、請求項１に記載の通信性能測定装置において、性能推定手段１１９は、通信手段１１１によって実行される制御パケットおよびデータパケットの送受信動作を監視し、ＦＴＰにおいて規定された各手順の開始時刻および終了時刻を手順ごとに記録する第２記録手段１４６と、手順ごとに記録された開始時刻と終了時刻との差分を手順ごとの所要時間として算出する時間算出手段１４５とを備えた構成であることを特徴とする。
【００２２】
請求項８の発明は、第２記録手段１４６により、ＦＴＰにおいて規定された各手順の開始時刻および終了時刻を記録し、この記録された時刻に基づいて、時間算出手段１４５によって各手順の実行に要した所要時間を算出するので、例えば、コネクションを確立するために必要な一連の手順の実行に要する時間や、個々のファイルあるいは複数のファイルを一括して取得するために必要な一連の手順の実行に要する時間など、ＦＴＰに従って行なわれる様々な手順の連鎖に応じて、個々の手順に対応する所要時間を積算していくことにより、利用者が通信性能を意識する様々な場面に対応して柔軟に通信性能を測定することができる。
【００２３】
【発明の実施の形態】
まず、本発明の通信性能測定装置において利用する遅延モデルについて説明する。
一般に、ｉ番目のルータＲ(i)から次のルータＲ(i+1)にサイズＳ(bit) のパケットが伝送される際に生じる遅延時間Ｔi(sec)は、注目しているルータＲ(i) のキューに他のトラフィックも流入していることによって発生するキューイング遅延ｑi(sec)と、次のルータＲ(i+1)までの伝送路における物理的な伝播遅延ｄi(sec) と、ルータＲ(i) がパケットを伝送路に出力する速度すなわちルータの伝送速度ｂi(bps)とを用いて、式１のように表すことができる。
【００２４】
Ｔi＝ｑi＋Ｓ／ｂi＋ｄi    ・・・（１）
また、ｎ個のルータから形成される経路をサイズＳのパケットが伝送される際に生じる遅延時間Ｔは、各ルータに対応する遅延時間Ｔｉの総和であるので、当然ながら、遅延時間Ｔｉの各成分、すなわち、キューイング遅延ｑｉ、伝播遅延ｄｉおよびルータ自身による伝送速度ｂｉおよびパケットのサイズＳに依存する処理遅延Ｓ／ｂｉをそれぞれ加え合わせた総和に等しい。
【００２５】
したがって、遅延時間Ｔは、キューイング遅延ｑｉの総和Ｑと、伝播遅延ｄｉの総和Ｄと、伝送速度の逆数１／ｂｉの総和の逆数Ｂとを用いて、式２のように表すことができる。
Ｔ＝Ｑ＋Ｓ／Ｂ＋Ｄ        ・・・（２）
つまり、経路上に存在するｎ個のルータを、これらのルータの特性を反映した特性値を持つ一つのルータに置き換えることができる。これにより、複雑なネットワークを単純化した遅延モデルを形成することができる。
【００２６】
図７に、ネットワークの遅延モデルを説明する図を示す。
図７において、符号Ｃ，符号Ａ，符号Ｉ，符号Ｍおよび符号Ｗは、それぞれクライアント、アクセスポイント、分岐点ノード、通信性能測定装置およびサーバを示している。また、図７において、符号Ｌ(XY)は、ノードＸからノードＹへの経路に存在する少なくとも一つのルータに相当する仮想的なルータの遅延モデルを示しており、例えば、符号Ｌ(AI)は、アクセスポイントから分岐点ノードに向かう経路に対応する仮想的なルータの遅延モデルを示している。
【００２７】
このようなネットワークの遅延モデルにおいて、サイズＳのパケットが遅延モデルＬ(XY)で表されるルータを通過するのに要する時間Ｔ(Ｓ，Ｌ(XY))は、上述した遅延モデルＬ(XY)におけるキュー遅延ｑ(Ｌ(XY))、伝送速度ｂ(Ｌ(XY))および伝送遅延ｄ(Ｌ(XY))を用いて、式３のように表すことができる。
Ｔ(Ｓ，Ｌ(XY))＝ｑ(Ｌ(XY))＋Ｓ／ｂ(Ｌ(XY))＋ｄ(Ｌ(XY))    ・・・（３）
この遅延モデルを用いれば、ノードＸからノードＹに至る経路上に存在する各ルータを通過するために要する時間を加え合わせることにより、ネットワークに接続された任意のノードから別の任意のノードにサイズＳのパケットを伝送するために要する時間を求めることができる。
【００２８】
次に、本発明の通信性能測定装置の具体的な構成について説明する。
図８に、本発明の通信性能測定装置の実施形態を示す。
図８に示した通信性能測定装置において、通信実行部２１０は、計測制御部２２０からの指示に応じて図７に示したサーバ１０２との間にコネクションを確立し、このコネクションを介して、データパケットや制御パケットのやり取りを実行する。また、図８において、計測実行部２３０は、計測制御部２２０からの指示に応じて、図７に示した分岐点ノード１０３あるいはクライアント１０１との間で、ＩＣＭＰ(Internet Control Message Protocol)で規定された手順に従って所定のフレームをやり取りする動作、いわゆるｐｉｎｇ(Packet Internet Groper)動作を実行することにより、通信性能測定装置と分岐点ノード１０３あるいはクライアント１０１との間の経路に関する情報を収集する。また、図８において、性能評価部２４０は、通信実行部２１０によって実行される通信を監視し、通信の実行に要した時間に基づいて、クライアント１０１とサーバ１０２との間の経路について、その通信性能を評価する。また、図８において、係数推定部２５０は、計測制御部２２０からの指示に応じて、計測実行部２３０の動作を制御し、この計測実行部２３０から得られたデータに基づいて、上述した指示によって指定された遅延モデルの係数を推定し、その推定値を計測制御部２２０に返す。また、図８に示した分岐検出部２６０は、計測制御部２２０からの指示に応じて、指定された接続相手との間の経路に関する情報を収集し、この情報に基づいて、分岐点ノード１０３を検出して、これを特定する識別情報を探査パケット送受信部２３１に渡す。
【００２９】
図８に示した計測制御部２２０において、入力受付部２２１は、図７に示したサーバ１０２を特定するための識別情報およびクライアント１０１あるいはアクセスポイントを特定するための識別情報を含んだパラメータの入力を受け付ける。例えば、入力受付部２２１は、サーバ識別情報として、サーバ１０２が提供しているコンテンツのＵＲＬを受け取って、このサーバ識別情報をコネクション管理部２２３に渡す。また、入力受付部２２１は、クライアント識別情報として、クライアント１０１あるいはアクセスポイントのＩＰアドレスを受け取り、このクライアント識別情報を計測実行部２３０に渡す。
【００３０】
更に、入力受付部２２１は、クライアント１０１の通信環境を示すパラメータとして、クライアント１０１とアクセスポイントとの間の経路に対応する遅延モデルＬ(AC)における各係数の入力を受け付け、これらの値を遅延モデル適用部２２４の処理に供する。例えば、クライアント１０１がアナログモデムを介してアクセスポイントに接続する場合には、伝送速度ｂ(Ｌ(AC)),ｂ(Ｌ(CA))としてアナログモデムの伝送速度を入力し、伝送遅延ｄ(Ｌ(AC)),ｄ(Ｌ(CA))としてクライアント１０１とアクセスポイントとの距離に応じた値を入力し、キュー遅延ｑ(Ｌ(AC))、ｑ(Ｌ(CA))の推定値として数値「０」を入力すればよい。なお、クライアント１０１の通信環境が、ＡＤＳＬなどを用いた常時接続環境である場合には、後述する方法を用いて、キュー遅延ｑ(Ｌ(AC))、ｑ(Ｌ(CA))の値を推定することも可能である。
【００３１】
また、入力受付部２２１は、クライアント１０１とサーバ１０２との間の経路の通信性能を評価するために出力するべき出力パラメータを指定する情報を受け取り、この情報を手順制御部２２２と性能評価部２４０とに渡す。
図８に示した手順制御部２２２は、受け取ったパラメータに基づいて、計測を実行する手順を組み立て、コネクション管理部２２３を介して通信実行部２１０の動作を制御するとともに、係数推定部２５０に必要な係数の推定処理を指示する。
【００３２】
図８に示したコネクション管理部２２３は、入力受付部２２１から受け取ったＵＲＬを解析しておき、手順制御部２２２からの指示に応じて、通信実行部２１０に備えられたコネクション制御部２１１に、上述したＵＲＬの解析結果で示されるサーバ１０２との間にコネクションを確立する旨を指示するとともに、このコネクションを介するパケットのやり取りを管理する。
【００３３】
また、図８に示した探査制御部２２５は、通信実行部２１０に備えられたコネクション制御部２１１およびデータパケット受信部２１２から、制御パケットあるいはデータパケットを受信した旨の通知を受けて、計測実行部２３０に備えられた探査パケット送受信部２３１にｐｉｎｇ動作の実行を指示する。
一方、図８に示した遅延モデル適用部２２４は、計測実行部２３０に備えられた時間計測部２３２によって記録された各ｐｉｎｇ動作に関する時間と、上述した遅延モデルとに基づいて、各パケットが通信性能測定装置に到達した時刻とそれぞれのパケットがクライアント１０１に到達するであろう時刻との差分を推定する。
【００３４】
この遅延推定部２２４によって得られた推定値と、上述した通知を受け取った時刻とに基づいて、図８に示した応答制御部２２６は、通信性能測定装置が受信したパケットに対する応答パケットを返すべきタイミングを求め、適切なタイミングで応答パケット送信部２１３に応答パケットの送信を指示する。
また、図８に示した性能評価部２４０において、時刻収集部２４１は、通信実行部２１０に備えられた各部、即ち、コネクション制御部２１１、データパケット受信部２１２および応答パケット送信部２１３の動作を監視し、各部がＴＣＰ／ＩＰに従って実行している個々の手順の開始時刻および完了時刻を逐次に記録し、特性値算出部２４２の処理に供する。これらの時刻に関する情報と入力受付部２２１から受け取った情報に基づいて、特性値算出部２４２は、通信性能をあらわすパラメータとして出力することが指示された特性値を算出する。
【００３５】
ここで、図８に示した各部と、図１乃至図６に示した各手段との対応関係を説明する。
図８に示した通信実行部２１０は、図１に示した通信手段１１１に相当する。また、図１に示した通信制御手段１１３の機能は、コネクション管理部２２３が手順制御部２２２からの指示に応じて動作することによって果たされる。また、図８に示した入力受付部２２１は、図１に示した入力手段１１２に相当する。一方、図１に示したパケット送受信手段１１４は、図８に示した探査パケット送受信部２３１に相当し、図１に示した状況収集手段１１５は、図８に示した時間計測部２３２に相当する。また、図８に示した遅延モデル適用部２２４は、図１に示した遅延推定手段１１７に相当し、図８に示した応答制御部２２６は、図１に示した応答制御手段１１８に相当する。また、図８に示した分岐検出部２６０は、図３に示した入力手段１１２に備えられた経路情報収集手段１３１および分岐検出手段１３２に相当する。一方、図４に示した入力手段１１２において、第２送出指示手段１３３は、図８に示した手順制御部２２２が係数推定部２５０の処理を起動することによって果たされ、また、この係数推定部２５０により、図４に示した往復時間計測手段１３４および要素推定手段１３５の機能が果たされる。また、図５に示した遅延推定手段１１７に備えられる各手段の機能は、図８に示した遅延モデル適用部２２４によって果たされる。図６に示した性能推定手段１１９に備えられる第１記録手段１４４および第２記録手段１４６の機能は、図８に示した入力受付部２２１からの指示に応じて、時刻収集部２４１が通信実行部２１０の各部によって通信手順が実行される時刻を収集することによって果たされ、また、図６に示した時間算出手段１４５の機能は、図８に示した特性値算出部２４２によって果たされる。
【００３６】
次に、この通信性能測定装置の動作を説明する。
図９に、通信性能測定装置の動作の概略を示す流れ図を示す。
まず、入力受付部２２１は、コンテンツのＵＲＬおよびクライアント１０１に関する情報を含んだ測定環境パラメータと、出力すべき特性値を指定する出力パラメータとの入力を受け付けて、これらのパラメータの解析を行なう(ステップ３０１)。
【００３７】
手順制御部２２２は、入力受付部２２１を介して入力されていない測定環境パラメータが有るか否かを判定し(ステップ３０２)、不足パラメータが有る場合(ステップ３０２の肯定判定)には、ステップ３０３に進んで必要な測定環境パラメータを推定する。
このとき、手順制御部２２２は、不足パラメータの種類に応じて、係数推定部２５０と分岐検出部２６０とに対して、それぞれ必要な指示を入力する。
【００３８】
例えば、分岐点ノード１０３のＩＰアドレスが測定環境パラメータとして入力されなかった場合には、分岐点ノード１０３の識別情報そのものとともに、分岐点ノードと通信性能測定装置との間の伝送速度ｂ(Ｌ(IM)),ｂ(Ｌ(MI))および分岐点ノードとアクセスポイントとの間の伝送速度ｂ(Ｌ(IA)),ｂ(Ｌ(AI))もまた不足パラメータである。この場合に、手順制御部２２２は、入力受付部２２１を介して入力されたパラメータを解析することによって、不足となっている測定環境パラメータを判別し、まず、分岐検出部２６０に分岐点ノード１０３のＩＰアドレスを検出する旨を指示し、次いで、係数推定部２５０に、上述した伝送速度ｂ(Ｌ(IM)),ｂ(Ｌ(MI)),ｂ(Ｌ(IA)),ｂ(Ｌ(AI))の推定を指示する。
【００３９】
ここで、係数推定部２５０および分岐検出部２６０の詳細構成および動作を説明する。
図１０に、係数推定部および分岐検出部の詳細構成を示す。
図１０に示した係数推定部２５０において、送出指示部２５１は、手順制御部２２２から伝送速度を推定すべき経路（Ｘ、Ｙ）を特定する情報を受け取り、この情報に基づいて、探査パケット送受信部２３１に、データ長Ｓ１を有する探査パケットＰ１とこの探査パケットＰ１とは異なるデータ長Ｓ２を有する探査パケットＰ２とを用いたｐｉｎｇ動作を指示する。また、図１０において、時刻データ収集部２５２は、探査パケット２３１によって上述した探査パケットＰ１，Ｐ２が送受信される時刻をパケットごとに収集し、往復時間算出部２５３に渡す。この往復時間算出部２５３は、受け取った時刻データに基づいて、各探査パケットが上述した経路を往復するために要した時間を算出し、得られた往復時間ＲＴＴ１，ＲＴＴ２を係数算出部２５４に渡す。係数算出部２５４は、この経路における遅延を表す遅延モデルＬ(XY)、Ｌ(YX)に従って往復時間ＲＴＴ１，ＲＴＴ２を表す式を伝送速度について解くことにより、伝送速度を表す係数ｂ(Ｌ(XY)),ｂ(Ｌ(YX))を求め、遅延モデル適用部２２４にこれらの係数の推定値を渡す。
【００４０】
例えば、通信性能測定装置と分岐点ノード１０３との間の伝送速度を推定する場合に、手順制御部２２２は、この経路を特定する情報として、分岐点ノード１０３のＩＰアドレスを係数推定部２５０の送出指示部２５１に渡す。
これに応じて、この送出指示部２５１は、探査パケット送受信部２３１に、上述した探査パケットＰ１および探査パケットｐ２を分岐点ノード１０３に対応するＩＰアドレスを宛先として送出する旨を指示する。
【００４１】
このときに、時刻データ収集部２５２によって収集された時刻データに基づいて、往復時間算出部２５３により、探査パケットＰ１の往復時間ＲＴＴ１と探査パケットＰ２の往復時間ＲＴＴ２とが算出される。
ここで、往復時間ＲＴＴ１，ＲＴＴ２は、通信性能測定装置Ｍと分岐点ノードＩとの間の経路についての遅延モデルＬ(MI)、Ｌ(IM)を用いて、式４、式５のように表すことができる。
【００４２】
【数１】
0003696806.tif 000002
これらの式において、上りの伝送速度ｂ(Ｌ(MI))と下りの伝送速度ｂ(Ｌ(IM))とが等しいと仮定すると、この伝送速度ｂ(Ｌ(MI))は、探査パケットのデータ長Ｓ１，Ｓ２と往復時間ＲＴＴ１，ＲＴＴ２とを用いて、式６のように表すことができる。
【００４３】
【数２】
0003696806.tif 000003
ところで、上述した式４、式５から式６を導く過程においては、式４に含まれるキュー遅延ｑ(Ｌ(MI)),ｑ(Ｌ(IM))と、式５に含まれるキュー遅延ｑ(Ｌ(MI)),ｑ(Ｌ(IM))とを同一の値として消去している。しかしながら、探査パケットＰ１と探査パケットＰ２とはそれぞれ別の時点において送受信されているので、これらのキュー遅延ｑ(Ｌ(MI)),ｑ(Ｌ(IM))の値は必ずしも互いに同一であるとはいえない。
【００４４】
したがって、統計的に確からしい値を求めるために、送出指示部２５１により、上述した探査パケットの送出を複数回にわたって繰り返して探査パケット送受信部２３１に指示し、係数算出部２５４によって、その都度、往復時間算出部２５３によって算出された往復時間ＲＴＴ１，ＲＴＴ２および探査パケットのデータ長Ｓ１，Ｓ２を上述した式６に代入して係数値を算出し、これらの係数値の平均値もしくは中間値を求める。そして、係数算出部２５４は、このようにして得られた平均値もしくは中間値を伝送速度ｂ(Ｌ(XY)),ｂ(Ｌ(YX))として遅延モデル適用部２２４に渡せばよい。
【００４５】
なお、アクセスポイントＡに対応するＩＰアドレスを探査パケットの宛先として、同様の手順を実行することにより、分岐点ノードＩとアクセスポイントＡとの間の伝送速度ｂ(Ｌ(IA)),ｂ(Ｌ(AI))を推定することができる。
一方、図１０に示した分岐検出部２６０において、コマンド発行部２６１は、手順制御部２２２からサーバＷのＩＰアドレスとアクセスポイントＡのＩＰアドレスとを受け取り、サーバＷおよびアクセスポイントＡに対して、tracerouteコマンドをそれぞれ発行する。なお、このtracerouteコマンドは、UNIXやWINDOWSなどのオペレーティングシステムによって、接続相手までの経路に存在するルータのＩＰアドレスを調べるための標準機能として用意されているコマンドである。また、図１０において、応答収集部２６２は、上述したtracerouteコマンドに対する応答としてそれぞれの経路上に存在するルータから返されたＩＰアドレスを、通信性能測定装置からのホップ数が少ない順に並べて、通信性能測定装置ＭとアクセスポイントＡとの間の経路上に存在するルータを示すＩＰアドレスの集合Ａ(Ａ１，Ａ２，・・・Ａｎ)および通信性能測定装置ＭとサーバＷとの間の経路上に存在するルータを示すＩＰアドレスの集合Ｂ(Ｂ１，Ｂ２，・・・Ｂｍ)を作成し、アドレス照合部２６３に渡す。このアドレス照合部２６３は、上述した集合Ａに含まれる要素と集合Ｂに含まれる同一のホップ数に対応する要素とを照合していき、初めて互いの要素が不一致となったホップ数の一つ手前のホップ数に対応する要素を、分岐点ノードＩのＩＰアドレスとして検出し、手順制御部２２２にこのＩＰアドレスを返す。
【００４６】
このようにして、不足しているパラメータを推定した後に、手順制御部２２２は、コネクション管理部２２３に、サーバＷとの間のコネクションを介して通信に関する計測動作を開始する旨を指示し、これに応じて、コネクション管理部２２３は、まず、入力受付部２２１から受け取った通信環境パラメータで指定されたＤＮＳ(Domain Name System)から、サーバＷのＩＰアドレスを取得するまでに要する時間、即ち、ＤＮＳアクセス時間を計測する。また、もちろん、図９に示したステップ３０１において、全てのパラメータが入力されていた場合は、ステップ３０２の否定判定となり、上述したパラメータの推定処理(ステップ３０３)をスキップしてステップ３０４に進めばよい。
【００４７】
このステップ３０４において、コネクション管理部２２３は、まず、入力受付部２２１から受け取った通信環境パラメータで指定されたＤＮＳ(Domain Name System)に対して、同じく通信環境パラメータで指定されたＵＲＬで示されるコンテンツを保持しているサーバＷのＩＰアドレスを問い合わせる。このとき、性能評価部２４０に備えられた時刻収集部２４１は、ＤＮＳに対する問い合わせを送信した時刻と、この問い合わせに対する応答としてＩＰアドレスを受信した時刻とを収集し、特性値算出部２４２は、これらの時刻の差からＤＮＳアクセス時間Ｔｉを算出し、特性値の一つとして出力する。なお、ＤＮＳアクセスに要する時間を出力パラメータとして指定しない場合は、予め、サーバＷのＩＰアドレスを指定するとともに、コネクション管理部２２３において、この処理をスキップしてもよい。
【００４８】
次に、手順制御部２２２は、通信環境パラメータで指定されたＵＲＬに基づいて、以降の計測動作において採用すべき手順がＨＴＴＰであるかＦＴＰであるかを判定し(ステップ３０５)、この判定結果に応じて、コネクション管理部２２３にそれぞれ必要な指示を入力する。
ステップ３０５においてＨＴＴＰ手順を採用するとされた場合に、コネクション管理部２２３は、コネクション制御部２１１を介してサーバＷとの間のコネクションを確立するための処理をＨＴＴＰ手順に従って実行し、コネクションの確立に要する時間(以下、コネクション確立時間と称する)を評価する(ステップ３０６)。
【００４９】
ここで、コネクション確立時間を評価する動作について説明する。
コネクション管理部２２３からサーバＷとの間にコネクションを確立する旨が指示されたときに、コネクション制御部２１１は、所定の手順(以下、３ｗａｙハンドシェイクと称する)に従って制御パケットを交換することにより、コネクションを確立する。
【００５０】
図１１に、３ｗａｙハンドシェイクによるコネクション確立手順を説明する図を示す。また、図１２に、コネクション確立に関する性能を評価する動作を表す流れ図を示す。
ＴＣＰに従ってコネクションを確立する際には、図１１に示すように、クライアントＣからサーバＷに接続要求パケット(以下、ＳＹＮパケットと称する)を送信し、サーバＷからの接続応答兼接続要求パケット(以下、ＳＹＮ＋ＡＣＫパケットと称する)を受信した後に、クライアントＣが応答パケット(以下、ＡＣＫパケットと称する)を送信する。そして、このＡＣＫパケットを伝送経路に送出した時点において、クライアントＣにおけるコネクション接続処理が完了し、また、ＡＣＫパケットがサーバＷに到達した時点で接続手順が完了する。したがって、クライアント側から見た場合に、クライアントＣがサーバＷとの間にコネクションを接続するために要する時間(以下、コネクション確立時間と称する)Ｔｃは、ＳＹＮパケットをクライアントＣからサーバＷに伝送するために要する時間(図１１において符号Ｔｃｓを付して示す)と、ＳＹＮ＋ＡＣＫパケットをサーバＷからクライアントＣに伝送するために要する時間(図１１において符号Ｔｃａを付して示す)と、クライアントＣがＡＣＫパケットを伝送経路にそれぞれのパケットを送出するために要する時間(図１１において符号Ｔｃｃを付して示す)との和である。ゆえに、コネクション確立時間Ｔｃは、ＳＹＮパケットのデータ長ＳSYN、ＳＹＮ＋ＡＣＫパケットのデータ長ＳSYN+ACK、ＡＣＫパケットのデータ長ＳACKおよび図７に示したネットワークの遅延モデルを用いて、式７のように表すことができる。
【００５１】
【数３】
0003696806.tif 000004
次に、図８に示した探査パケット送受信部２３１によるｐｉｎｇ機能を利用して、式１１に示したコネクション確立時間Ｔｃを求める方法について説明する。まず、図８に示したコネクション管理部２２３からの指示に応じて、コネクション制御部２１１は、サーバＷを宛先としてＳＹＮパケットを送信し、このとき、時刻収集部２４１は現在時刻Ｔ０を記録する(図１２に示したステップ３２１、３２２)。
【００５２】
サーバＷからのＳＹＮ＋ＡＣＫパケットを受信したときに、ステップ３２３の肯定判定としてステップ３２４に進み、図８に示した時刻収集部２４１は、現在時刻Ｔ１を記録する。また、探査制御部２２５は、制御パケットを受信した旨の通知をコネクション制御部２１１から受け取り、これに応じて、探査パケット送受信部２３１に対してｐｉｎｇ動作の実行を指示する。この指示に応じて、探査パケット送受信部２３１は、分岐点ノードＩとアクセスポイントＡとを宛先として、それぞれデータ長Ｓpingの探査パケットを送出する(図１２に示したステップ３２５)。
【００５３】
このとき、図８に示した時間計測部２３２は、探査パケット送受信部２３１によって分岐点ノードＩおよびアクセスポイントＡに探査パケットが送出された時刻と、これらの探査パケットに対する応答パケットが探査パケット送受信部２３１に到達した時刻とを記録し、それぞれの差を分岐点ノードＩおよびアクセスポイントＡと通信性能測定装置Ｍとの間で探査パケットが往復するのに要する往復時間ＲＴＴａ，ＲＴＴｂとして遅延モデル適用部２２４に渡す(図１２のステップ３２６)。
【００５４】
このとき、遅延モデル適用部２２４は、手順制御部２２２からの指示に応じて、上述した往復時間ＲＴＴａ，ＲＴＴｂとステップ３２１，３２４において記録された時刻Ｔ０，Ｔ１と図７に示したネットワークの遅延モデルとに基づいて、クライアントＣにおけるコネクション確立時間Ｔｃを推定する処理を実行する(ステップ３２７)。
【００５５】
ここで、往復時間ＲＴＴａ，ＲＴＴｂおよび通信性能測定装置ＭからＳＹＮパケットを送出してからサーバＷからＳＹＮ＋ＡＣＫパケットを受信するまでの時間（Ｔ１−Ｔ０）は、遅延モデルを適用することにより、それぞれ式８〜式１０のように表すことができる。
【数４】
0003696806.tif 000005
また、これらの式８〜式１０を用いて、上述した式７を書き換えることにより、式１１に示すように、コネクション確立時間Ｔｃを、計測値である往復時間ＲＴＴａ、ＲＴＴｂおよび時間（Ｔ１−Ｔ０）と、既知となっている遅延モデルの各係数および各制御パケットのサイズによって表すことができる。
【００５６】
【数５】
0003696806.tif 000006
したがって、遅延モデル適用部２２４は、時間計測部２３２から受け取った往復時間ＲＴＴａ，ＲＴＴｂおよび時間（Ｔ１−Ｔ０）とともに遅延モデルの各係数を、この式１１に代入してコネクション確立時間Ｔｃを求め、図８に示した応答制御部２２６に渡せばよい。
【００５７】
これに応じて応答制御部２２６は、現在の時刻と上述した時刻Ｔ１にコネクション確立時間Ｔｃを加算した時刻とを比較し、これらが一致したときに、ステップ３２８の肯定判定とし、図８に示した応答パケット送信部２１３にＡＣＫパケットの送信を指示する。この指示に応じて、この応答パケット送信部２１３により、ＡＣＫパケットが送信され(ステップ３２９)、通信性能測定装置ＭとサーバＷとの間にコネクションが確立される。
【００５８】
このようにしてサーバＷとの間にコネクションが確立された後に、コネクション管理部２２３は、通信環境パラメータとして指定されたＵＲＬに基づいて、目的とするファイルあるいはコンテンツの取得をコネクション制御部２１１に指示し、このファイルあるいはコンテンツのダウンロードに要する時間、即ち、ダウンロード時間Ｔｄの評価を行なう(図９に示したステップ３０７参照)。
【００５９】
ここで、ダウンロード時間Ｔｄの評価動作について説明する。
図１３に、ＨＴＴＰ手順によるデータ通信を説明するシーケンス図を示す。
ＨＴＴＰ手順においては、上述したコネクション確立手順によってコネクションが確立した後に、クライアントＣがサーバＷにＨＴＴＰ  ＧＥＴリクエストを送信することにより、目的のファイルあるいはコンテンツを要求する。この要求に応じて、サーバＷは、指定されたファイルあるいはコンテンツを複数のデータパケット(図１３において、符号ＤＡＴＡを付して示した)に分割して送信し、クライアントＣは、これらのデータパケットを受信するごとに、ＡＣＫパケットをサーバＷに返す。そして、全てのデータパケットの送信が完了したときに、サーバＷは、ダウンロードの完了を示すＦＩＮパケットを送信し、これに応じて、クライアントＣとサーバＷとの間のコネクションを解放する手順が開始される。
【００６０】
ところで、クライアントＣとサーバＷとの間における各データパケットについての送受信シーケンスは、図１４(ａ)に示すように、データパケットがサーバＷから送信され、分岐点ノードＩおよびアクセスポイントＡを経由してクライアントＣに到達するまでと、クライアントＣから送信されるＡＣＫパケットがアクセスポイントＡおよび分岐点ノードＩを経由してサーバＷに到達するまでとからなっている。一方、通信性能測定装置ＭとサーバＷとの間における各データパケットの送受信シーケンスは、図７から分かるように、データパケットがサーバＷから分岐点ノードＩを経由して通信性能測定装置Ｍに到達するまでと、この通信性能測定装置Ｍから分岐点ノードＩを経由してＡＣＫパケットがサーバＷに到達するまでとからなっている。
【００６１】
したがって、クライアントＣとサーバＷとの間において、ｊ番目のデータパケットを送受信する送受信シーケンスに要する時間ＲＴＴWC（ｊ）と、通信性能測定装置ＭとサーバＷとの間で同じデータパケットを送受信する送受信シーケンスに要する時間との差分Ｘｊを推定し、図１４(ｂ)に示すように、サーバＷからｊ番目のデータパケットを受信した後、この差分Ｘｊだけ待機した後に、ＡＣＫパケットをサーバＷに送信すれば、通信性能測定装置Ｍの配置にかかわらず、クライアントＣとサーバＷとの間の送受信シーケンスを擬似的に再現することができる。
【００６２】
図１５に、ダウンロード時間を測定する動作を表す流れ図を示す。
図８に示したコネクション管理部２２３からの指示に応じて、コネクション制御部２１１は、サーバＷに対してＨＴＴＰ  ＧＥＴリクエストを送信し、コンテンツのダウンロードを要求する(ステップ３３１)。このとき、図８に示した性能評価部２４０の時刻収集部２４１は、現在時刻Ｔ０を記録する(ステップ３３２)。
【００６３】
その後、ステップ３３３においてパケットを受信するごとに、そのパケットがデータパケットであるかデータ転送の終了を示すＦＩＮパケットであるかを判定し(ステップ３３４)、データパケットである場合は(ステップ３３４の肯定判定)、図８に示したデータパケット受信部２１２からの通知に応じて、応答制御部２２６は、現在時刻をデータパケットの受信順ｊに対応して、受信時刻Ｔ(ｊ)として記録する(ステップ３３５)。
【００６４】
また、この通知に応じて、図８に示した探査制御部２２５は、分岐点ノードＩおよびアクセスポイントＡに対して探査パケットを送出する旨の指示を出力し、これに応じて、探査パケット送受信部２３１が、指定されたノードを宛先として探査パケットを送出することにより、通信性能測定装置Ｍと分岐点ノードＩおよびアクセスポイントＡとの間について、それぞれ経路状態の計測を行なう(ステップ３３６)。このとき、図８に示した時間計測部２３２は、分岐点ノードＩを宛先として探査パケットを送出してからこの探査パケットに対する応答パケットが返されるまでの往復時間ＲＴＴMI（ｊ）と、アクセスポイントＡを宛先として探査パケットを送出してからこの探査パケットに対する応答パケットが返されるまでの往復時間ＲＴＴMA（ｊ）とを計測し、これらの往復時間を遅延モデル適用部２２４に渡す。  これらの往復時間ＲＴＴMI（ｊ）、ＲＴＴMA（ｊ）と探査パケットのデータ長Ｓpingおよびｊ番目のデータパケットのデータ長Ｓdata（ｊ）に基づいて、遅延モデル適用部２２４は、図１４に示した遅延時間の差分(以下、待機時間と称する)Ｘｊを推定し(ステップ３３７)、応答制御部２２６に渡す。
【００６５】
ここで、待機時間Ｘｊを推定する方法について説明する。
上述したように、待機時間Ｘｊは、クライアントＣとサーバＷとの間でｊ番目のデータパケットを受け渡しするために要するデータ受信時間ＲＴＴWC（ｊ）と、通信性能測定装置ＭとサーバＷとの間で同じデータパケットを受け渡しするために要するデータ受信時間ＲＴＴWM（ｊ）とを用いて、式１２のように表すことができる。
【００６６】
Ｘｊ＝ＲＴＴWC（ｊ）−ＲＴＴWM（ｊ）      ・・・（１２）
一方、図７に示したネットワークの遅延モデルを適用すれば、ｊ番目のデータパケットのデータ長Ｓdata（ｊ）、ＡＣＫパケットのデータ長Ｓackおよび探査パケットのデータ長Ｓpingを用いて、上述したステップ３３５において実測された往復時間ＲＴＴMI（ｊ）、ＲＴＴMA（ｊ）を式１３，１４のように表すことができ、また、データ受信時間ＲＴＴWM（ｊ）を式１５のように表すことができる。
【００６７】
【数６】
0003696806.tif 000007
ところで、実際に、サーバＷとクライアントＣとの間でデータパケットの送受信を行なう場合には、図１３において符号▲１▼で示したように、サーバＷからデータパケットがバースト的に送信される場合がある。このような場合には、式３に示した遅延モデルに、サーバＷからクライアントＣに伝送されるデータパケット自身によるキューイング遅延を表す成分ｑbottle(ｊ)を追加する必要がある。このため、データ受信時間ＲＴＴWC(ｊ)は、式１６のように表される。
【００６８】
【数７】
0003696806.tif 000008
上述した式１３から式１６を用いて、式１２を書き換えることにより、待機時間Ｘｊを、式１７に示すように、往復時間ＲＴＴMI(ｊ)、ＲＴＴMA(ｊ)の実測値と、各パケットのデータ長Ｓdata(ｊ)、Ｓack、Ｓpingと、各経路についてのルータモデルの係数および上述したキューイング遅延成分ｑbottle(ｊ)を用いて表すことができる。
【００６９】
【数８】
0003696806.tif 000009
さて、このキューイング遅延成分ｑbottle(ｊ)は、サーバＷとクライアントＣとの間でデータパケットとＡＣＫパケットをやり取りする経路の少なくとも一部において、その経路が次の経路にパケットを出力する速度を超える速度でパケットが入力されているときに発生する。したがって、図１６に示すように、パケットが蓄積されるリンクに、ｊ−１番目のパケットが入力される時点、即ち、時刻ｔ(ｊ−１)においてキューイング遅延ｑbottle(ｊ−１)が存在する場合に、このｊ−１番目のパケットの到着によって、このリンクのキューイング遅延は、このパケットのサイズＳをリンクの伝送速度Ｂによって除算した分だけ増大する。したがって、その後、時刻ｔ(ｊ)にｊ番目のパケットがこのリンクに到着した時点におけるキューイング遅延成分ｑbottle(ｊ)は、時刻ｔ(ｊ−１)、ｔ(ｊ)、パケットのサイズＳおよびリンクの伝送速度Ｂを用いて、式１８のように表すことができる。
【００７０】
0003696806.tif 000010
この式１８に示したモデルを分岐点ノードＩからクライアントＣへの経路について適用すると、分岐点ノードＩとクライアントＣとの間における自トラフィックによるキューイング遅延ｑbottle(ｊ)を、各パケットのサイズと、各経路についてのルータモデルの係数とを用いて、式１９のように表すことができる。
【００７１】
【数９】
0003696806.tif 000011
遅延モデル適用部２２４は、キューイング遅延ｑbottle(ｊ)の値をこの式１９に基づいて算出し、この値を上述した式１８に代入することにより、ｊ番目のデータパケットがサーバＷから送信された時点におけるサーバＷ−アクセスポイントＡ間の経路状態を反映した待機時間Ｘｊを求め、応答制御部２２６に入力することができる。
【００７２】
図８に示した応答制御部２２６は、現在時刻を監視し、図１５に示したステップ３３５において記録した受信時刻Ｔ(ｊ)から上述した待機時間Ｘｊが経過したときに、ステップ３３８の肯定判定として応答パケット送信部２１３にＡＣＫパケットの送信を指示する。そして、この指示に応じて、応答パケット送信部２１３は、サーバＷを宛先としてＡＣＫパケットを送出し(ステップ３３９)、その後、ステップ３３３に戻って、次のパケットを受信する。
【００７３】
一方、ステップ３３３において受け取ったパケットがＦＩＮパケットであった場合（ステップ３３４の否定判定）に、性能評価部２４０の時刻収集部２４１は、例えば、上述したＦＩＮパケットを受信した時刻Ｔ１を記録して、この時刻Ｔ１をステップ３３２において記録しておいた時刻ｔ０とともに特性値算出部２４２に渡す。そして、特性値算出部２４２において、この時刻Ｔ１から時刻ｔ０を差し引いた時間、即ち、ダウンロード時間Ｔｄを算出し（ステップ３４０）、ダウンロード時間の評価処理を終了する。
【００７４】
このようにして、図９に示したステップ３０７の処理が完了した後に、ステップ３０８に進んで、サーバＷとクライアントＣとの間のコネクションを解放するために要する時間、即ち、コネクション解放時間を評価する。
次に、コネクション解放時間を評価する動作について説明する。
図１７に、コネクション解放時間を説明する図を示す。
【００７５】
サーバＷとクライアントＣとの間にコネクションが確立されていた場合に、このコネクションは、図１７に示すように、サーバＷとクライアントＣとの間で、ＦＩＮパケットおよびＡＣＫパケットをやり取りした後に解放される。クライアントＣに着目した場合に、サーバＷとのコネクションが解放される時点は、サーバＷによって送出されたＡＣＫパケットがクライアントＣに到達した時点となるので、クライアントＣにおけるコネクション解放時間Ｔｒは、サーバＷからのＦＩＮパケットが到達してから、このＡＣＫパケットがサーバＷから返されるまでの時間となる。したがって、コネクション解放時間Ｔｒは、ＦＩＮパケットのデータ長ＳFIN、ＡＣＫパケットのデータ長ＳackおよびサーバＷとクライアントＣとの間の経路に存在する各ルータモデルの係数とを用いて、式２０のように表すことができる。
【００７６】
【数１０】
0003696806.tif 000012
図１８に、コネクション解放時間を評価する動作を表す流れ図を示す。
サーバＷからのＦＩＮパケットが通信性能測定装置Ｍに到達したときに、図８に示した性能評価部２４０の時刻収集部２４１は、ＦＩＮ到着時刻Ｔ０を記録する(ステップ３４１)。次いで、通信実行部２１０により、ＴＣＰに従ってＡＣＫパケットおよびＦＩＮパケットをサーバＷに送信する(ステップ３４２)。
【００７７】
その後、サーバＷからＡＣＫパケットを受信したときに、ステップ３４３の肯定判定としてステップ３４４に進み、現在時刻Ｔ１からＦＩＮ到着時刻Ｔ０を差し引いた値を、サーバＷと通信性能測定装置Ｍとの間でコネクションを解放するために必要なコネクション解放時間ＴｒMWの計測値として遅延モデル適用部２２４に渡す。
【００７８】
このとき、図８に示した探査制御部２２５からの指示に応じて、探査パケット送受信部２３１は、分岐点ノードＩおよびアクセスポイントＡに探査パケットをそれぞれ送出し(ステップ３４５)、時間計測部２３２により、これらの探査パケットについて、それぞれの往復時間ＲＴＴａ，ＲＴＴｂを計測する(ステップ３４６)。
【００７９】
遅延モデル適用部２２４は、このステップ３４６において計測された往復時間ＲＴＴａ，ＲＴＴｂおよびコネクション解放時間ＴｒMWの計測値とに基づいて、サーバＷとクライアントＣとの間についてのコネクション解放時間Ｔｒを推定する(ステップ３４７)。
ここで、サーバＷと通信性能測定装置との間のコネクション解放時間ＴｒMWは、ＦＩＮパケットのデータ長ＳFIN、ＡＣＫパケットのデータ長ＳackおよびサーバＷと通信性能測定装置Ｍとの間の経路に存在する各ルータモデルの係数とを用いて、式２１のように表すことができ、また、往復時間ＲＴＴａ，ＲＴＴｂは、それぞれ式８、式９のように表すことができる。
【００８０】
【数１１】
0003696806.tif 000013
これらの式を用いて、上述した式２０を書き換えると、サーバＷとクライアントＣとの間のコネクション解放時間Ｔｒを、式２２のように、コネクション解放時間ＴｒMWの計測値と、往復時間ＲＴＴａ，ＲＴＴｂと、各パケットのデータ長およびサーバＷとクライアントＣとの間に存在するルータモデルの各係数とを用いて表すことができる。
【００８１】
【数１２】
0003696806.tif 000014
遅延モデル適用部２２４は、この式２２を用いて推定したコネクション解放時間Ｔｒを図８に示した応答制御部２２６に渡せばよい。
この応答制御部２２６は、ＦＩＮ到着時刻Ｔ０からこのコネクション解放時間Ｔｒだけ経過した後に、図１８に示したステップ３４８の肯定判定として、応答パケット送信部２１３にＡＣＫパケットの送出を指示し、これに応じて、ステップ３４９において、応答パケット送信部２１３により、ＡＣＫパケットをサーバＷに返すことにより、サーバＷと通信性能測定装置Ｍとの間のコネクションを解放する手順が完了する。
【００８２】
上述したようにして、図９に示したステップ３０４，ステップ３０６，ステップ３０７およびステップ３０８において、ＤＮＳアクセス時間Ｔｉ，コネクション確立時間Ｔｃ，ダウンロード時間Ｔｄおよびコネクション解放時間Ｔｒを評価した後、図８に示した特性値算出部２４２は、例えば、これらの値を加え合わせることにより、通信環境パラメータで指定されたＵＲＬで示されるコンテンツを、クライアントＣがサーバＷから取得するために要する取得時間Ｔhttpの推定値を算出して出力する(ステップ３１３)。また、特性値算出部２４２において、この取得時間Ｔhttpの推定値によって、上述したコンテンツのサイズＳｃを除算し、その値をスループットの推定値Ｔｐhttpとして出力してもよい。
【００８３】
このように、サーバＷから制御パケットやデータパケットを受信するごとに、探査パケットを分岐点ノードＩおよびアクセスポイントＡに送出し、通信性能測定装置Ｍと分岐点ノードＩとの間の経路および通信性能測定装置ＭとアクセスポイントＡとの間の経路の状況に関する情報を収集して、この情報に基づいて、各パケットおよびその応答パケットをサーバＷと通信性能測定装置Ｍとの間でやり取りする時間と、サーバＷとクライアントＣとの間でやり取りする時間との差を推定して、その分だけ応答パケットを遅延させることにより、サーバＷとクライアントＣとの間でパケットをやり取りする場合と同等の遅延を持って、サーバＷと通信性能測定装置Ｍとの間でパケットをやり取りすることができる。つまり、通信性能測定装置Ｍの配置にかかわらず、サーバＷとクライアントＣとの間のＨＴＴＰによるデータ通信を、サーバＷとクライアントＣとの間の経路における遅延について擬似的に再現し、指定されたＵＲＬで示されるコンテンツをサーバＷから取得するために要する時間やその際のスループットなどを正確に評価することができる。
【００８４】
同様にして、クライアントＣとサーバＷとの間で行なわれるＦＴＰによるデータ通信を擬似的に再現し、クライアントＣとサーバＷとの間の経路について、通信性能を評価することもできる。
通信環境パラメータによって、ＦＴＰによって少なくとも一つのファイルを取得する旨を指示された場合に、手順制御部２２２は、コネクション管理部２２３にＦＴＰに従って指定されたファイルを取得する旨を指示し、これに応じて、ステップ３０９からステップ３１２において、ＦＴＰに則ったデータ通信において、それぞれの手順を実行するとともに、そのために要する時間をそれぞれ評価する。
【００８５】
図１９に、ＦＴＰによるデータ通信を説明するシーケンス図を示す。
まず、ステップ３０９において、図１９に符号(１)で示したシーケンスによって、クライアントＣがサーバＷとの間に制御コネクションを確立する手順を実行し、このシーケンスに要する時間、即ち、制御コネクション確立時間Ｔｆ１を評価する。図１９から明らかなように、この制御コネクションを確立するシーケンスは、ＨＴＴＰにおいて、コネクションを確立するシーケンスと同等であるので、上述したステップ３０６において、コネクション確立時間Ｔｃを求める処理と同様にして、制御コネクション確立時間Ｔｆ１を評価すればよい。
【００８６】
次に、ステップ３１０において、図１９において符号(２)〜(４)で示したシーケンスによって、クライアントＣがｐｏｒｔコマンドを送出してから、データコネクションの接続が完了するまでの手順を実行するとともに、このシーケンスに要する時間、即ち、データコネクション確立時間Ｔｆ２を評価する。
このデータコネクション確立時間Ｔｆ２は、図１９に符号(２)〜(４)で示したシーケンスの各段階を実行するために要する時間要素Ｔｆ２ａ，Ｔｆ２ｂ，Ｔｆ２ｃの和であり、これらの時間要素Ｔｆ２ａ，Ｔｆ２ｂ，Ｔｆ２ｃは、上述したシーケンスで送受信される各パケットのデータ長Ｓport，Ｓreter，Ｓsuccを用いて、それぞれ式２３，２４，２５のように表すことができる。
【００８７】
【数１３】
0003696806.tif 000015
図１９に符号(２)で示した段階に対応する時間要素Ｔｆ２ａを求めるために、図８に示したコネクション制御部２１１は、データコネクションのためのポート番号を通知するためにｐｏｒｔコマンドをサーバＷに送信し、このとき、時刻収集部２４１は、ｐｏｒｔ送信時刻Ｔ０を記録する。その後、サーバＷからの応答として、port successfulパケットが返されたときに、現在時刻Ｔ１からｐｏｒｔ送信時刻Ｔ０を差し引いた値を、サーバＷと通信性能測定装置Ｍとの間で上述した段階を実行するために必要な時間要素Ｔｆ２ａMWの計測値として遅延モデル適用部２２４に渡す。
【００８８】
このとき、図８に示した探査制御部２２５からの指示に応じて、探査パケット送受信部２３１は、分岐点ノードＩおよびアクセスポイントＡに探査パケットをそれぞれ送出し、時間計測部２３２により、これらの探査パケットについて、それぞれの往復時間ＲＴＴａ，ＲＴＴｂを計測する。
遅延モデル適用部２２４は、計測された往復時間ＲＴＴａ，ＲＴＴｂおよび上述した時間要素Ｔｆ２ａMWの計測値とに基づいて、サーバＷとクライアントＣとの間についての対応する時間要素Ｔｆ２ａを推定する。
【００８９】
ここで、サーバＷと通信性能測定装置Ｍとの間の時間要素Ｔｆ２ａMWは、上述した段階において送受信される各パケットのデータ長Ｓport、ＳsuccおよびサーバＷと通信性能測定装置Ｍとの間の経路に存在する各ルータモデルの係数とを用いて、式２６のように表すことができ、また、往復時間ＲＴＴａ，ＲＴＴｂは、それぞれ式８、式９のように表すことができる。
【００９０】
【数１４】
0003696806.tif 000016
これらの式を用いて、上述した式２３を書き換えると、サーバＷとクライアントＣとの間で上述した段階(２)を実行するために要する時間要素Ｔｆ２ａを、式２７のように、時間要素Ｔｆ２ａMWの計測値と、往復時間ＲＴＴａ，ＲＴＴｂと、各パケットのデータ長およびサーバＷとクライアントＣとの間に存在するルータモデルの各係数とを用いて表すことができる。
【００９１】
【数１５】
0003696806.tif 000017
遅延モデル適用部２２４は、この式２７を用いて時間要素Ｔｆ２ａを推定し、その値を性能評価部２４０に渡すとともに、図８に示したコネクション管理部２２３に渡せばよい。
これに応じて、コネクション管理部２２３は、上述したｐｏｒｔ送信時刻Ｔ０から時間要素Ｔｆ２ａが経過した後に、図１９において符号(３)で示した段階に対応する時間要素Ｔｆ２ｂの評価を開始するために、コネクション制御部２１１に対してＲＥＴＲコマンドの送出を指示する。
【００９２】
この指示に応じて、コネクション制御部２１１は、ＲＥＴＲコマンドを送信してサーバＷに対してコンテンツを要求する。また、このとき、コネクション管理部２２３は、現在時刻をＲＥＴＲ送信時刻Ｔ０として記録する。その後、上述した時間要素Ｔｆ２ａの評価処理と同様に、サーバＷからＳＹＮパケットを受信したときに、その時点の現在時刻Ｔ１からＲＥＴＲ送信時刻Ｔ０を差し引いた値を時間要素Ｔｆ２ｂMWの計測値として遅延モデル適用部２２４に渡すとともに、探査制御部２２５および探査パケット送受信部２３１により、探査パケットによる経路状況の探査を実行して往復時間ＲＴＴａ、ＲＴＴｂを計測する。
【００９３】
また、上述した時間要素Ｔｆ２ａの評価処理において述べた手法と同様にして、時間要素Ｔｆ２ｂを、図１９において符号(３)で示した段階において送受信されるパケットのデータ長ＳRETR，ＳSYNを用いて表す式２８を導くことができる。
【数１６】
0003696806.tif 000018
したがって、遅延モデル適用部２２４は、この式２８にそれぞれ適切な値を代入して、時間要素Ｔｆ２ｂを推定し、その値を性能評価部２４０に渡すとともに、図８に示したコネクション管理部２２３に渡せばよい。
【００９４】
これに応じて、コネクション管理部２２３は、上述したＲＥＴＲ送信時刻Ｔ０から時間要素Ｔｆ２ｂが経過した後に、図１９において符号(４)で示した段階に対応する時間要素Ｔｆ２ｃの評価を開始する。
この場合に、コネクション管理部２２３は、コネクション制御部２１１に対して、上述したＳＹＮパケットに対する応答としてＳＹＮ＋ＡＣＫパケットを送出する旨を指示する。
【００９５】
この指示に応じて、コネクション制御部２１１は、ＳＹＮ＋ＡＣＫパケットをサーバＷに送信する。また、このとき、コネクション管理部２２３は、現在時刻をＳ＋Ａ送信時刻Ｔ０として記録する。その後、上述した時間要素Ｔｆ２ａの評価処理と同様に、サーバＷからＡＣＫパケットを受信したときに、その時点の現在時刻Ｔ１からＳ＋Ａ送信時刻Ｔ０を差し引いた値を時間要素Ｔｆ２ｃMWの計測値として遅延モデル適用部２２４に渡すとともに、探査制御部２２５および探査パケット送受信部２３１により、探査パケットによる経路状況の探査を実行して往復時間ＲＴＴａ、ＲＴＴｂを計測する。
【００９６】
また、上述した時間要素Ｔｆ２ａの評価処理において述べた手法と同様にして、時間要素Ｔｆ２ｃを、図１９において符号(４)で示した段階において送受信されるパケットのデータ長ＳSYN+ACK、ＳACKと探査パケットのデータ長Ｓpingとを用いて表す式２９を導くことができる。
【数１７】
0003696806.tif 000019
したがって、遅延モデル適用部２２４は、この式２９にそれぞれ適切な値を代入して時間要素Ｔｆ２ｃを推定し、その値を性能評価部２４０に渡す。
【００９７】
性能評価部２４０は、これらの時間要素Ｔｆ２ａ，Ｔｆ２ｂおよびＴｆ２ｃの和を算出し、この値をデータコネクション確立時間Ｔｆ２とする。
次に、ステップ３１１において、図１９に符号(５)および符号(６)、(７)で示したシーケンスによって、サーバＷがＡＣＫパケットを返してから、データコネクションによるデータ伝送を実行し、このデータ伝送が完了してデータコネクションが解放されるまでの手順を実行するとともに、このシーケンスに要する時間、すなわち、データ伝送時間Ｔｆ３を評価する。
【００９８】
ところで、図１９において符号(５)で示したＡＣＫパケットをサーバＷから受信した後に、データコネクションにおいてデータパケットと応答とをやり取りする手順およびこのデータコネクションを解放する手順は、図１３に示したＨＴＴＰ通信によるデータ通信に含まれるデータ伝送手順およびコネクション解放手順と同一である。
【００９９】
したがって、計測制御部２２０は、上述したＡＣＫパケットを受信したときに、現在時刻を受信開始時刻Ｔ０として記録した後に、図１５に示したＨＴＴＰによるファイルのダウンロード時間を評価する処理および図１８に示したコネクション解放時間を評価する処理と同様にして通信実行部２１０および探査実行部２３０の動作を制御することにより、ダウンロード時間Ｔｄおよびコネクション解放時間Ｔｒを計測すればよい。ここで、図１５に示したステップ３４０の説明から明らかなように、ダウンロード時間Ｔｄは、上述した受信開始時刻Ｔ０からデータ伝送の完了を示すＦＩＮパケットを受信した時刻Ｔ１までの経過時間、即ち、時刻Ｔ１と受信開始時刻Ｔ０との差分（Ｔ１−Ｔ０）として得られる。したがって、性能評価部２４０は、上述した差分（Ｔ１−Ｔ０）を、時刻収集部２４１が通信実行部２１０の動作を監視することによって得るとともに、遅延モデル適用部２２４からコネクション解放時間Ｔｒの推定値を受け取り、これらを加算することにより、データ伝送時間Ｔｆ３を求めればよい。
【０１００】
次に、図９に示したステップ３１２において、図１９に符号(８)〜(１２)で示したシーケンス、すなわち、クライアントＣがデータコネクションが解放されたことを通知するＡＣＫパケットをサーバＷに返してから、転送完了メッセージ(図１９において、符号completeとして示す)やログオフのための ｑｕｉｔコマンド、ｇｏｏｄｂｙｅメッセージなどのやり取りを経て、最終的に制御コネクションが解放されるまでの手順を実行するとともに、このシーケンスに要する時間、即ち、制御コネクション解放時間Ｔｆ４を評価する。
【０１０１】
ところで、インターネットブラウザを介してＦＴＰによってクライアントＣとサーバＷとの間でデータ転送を行なった場合には、図１９に符号(７)で示した段階においてデータコネクションが解放された時点で、データそのものの転送は終了している。したがって、クライアントＣの利用者から見た場合に、ＦＴＰによるデータ転送処理は、データコネクションの解放と同時に終了したように見え、図１９に符号(８)〜(１２)で示したシーケンスにおいてやり取りされるパケットについては、その送受信に要する遅延時間が利用者に意識されることはない。
【０１０２】
故に、制御コネクション解放時間Ｔｆ４は、利用者に意識されない時間として、その値を数値「０」としてしまってよい。もちろん、上述した手法を用いれば、遅延モデルを用いて制御コネクション解放時間Ｔｆ４を表すことができるので、必要に応じて、その値を評価することは可能である。
上述したようにして、制御コネクション確立時間Ｔｆ１、データコネクション確立時間Ｔｆ２、データ伝送時間Ｔｆ３および制御コネクション解放時間Ｔｆ４を評価した後に、図８に示した特性値算出部２４２は、図９に示したステップ３１３において、これらの値の和を求めて、その値をＦＴＰによってファイルを取得するために要する取得時間Ｔftpの推定値として出力する。また、ファイルのサイズＳｆをこの取得時間Ｔftpの推定値で除算し、ＦＴＰによるデータ転送のスループットＴｐftpとして出力してもよい。
【０１０３】
なお、ＨＴＴＰによるデータ通信においてもＦＴＰによるデータ通信においても、通信環境パラメータにより複数のファイルを指定することにより、上述した各手順を実行する時間を評価する処理において、指定された複数のファイルを並行して取得する処理が実行され、そのような条件において、個々のファイルを取得するために要する取得時間や指定された全てのファイルを取得するために要した時間を評価することができる。また、もちろん、ＵＲＬで指定されるコンテンツに含まれる単一のファイルをそれぞれ通信環境パラメータによって指定することにより、Ｗｅｂページを構成するテキストや画像などの部品ごとに、それぞれの取得に要する時間を評価することも可能である。
【０１０４】
更に、クライアントＣに備えられたキューのサイズが有限であることを考慮して、クライアントＣに到達したデータパケットが廃棄される場合をも想定して、サーバＷとクライアントＣとの間のデータ転送をシミュレートすることも可能である。
図２０に、ダウンロード時間を評価する動作を表す別の流れ図を示す。
【０１０５】
図２０に示した流れ図は、図１５に示した流れ図のステップ３３７の後に、遅延時間の差分Ｘｊを推定する過程で算出したキューイング遅延ｑbottle(ｊ)(式１８参照)と所定の閾値Ｑｍａｘとの比較結果に基づいて、ｊ番目のデータパケットを廃棄するか否かを判定する処理(ステップ３５１)を含んでいる。
ここで、データパケットの廃棄は、ｊ番目のデータパケットがクライアントＣのキューに到達した際に、キューイング遅延ｑbottle(ｊ)が、クライアントＣのキューサイズＮｂとクライアントＣのＭＴＵ(Maximum Transmission Unit)およびアクセスポイントＡからクライアントＣへの経路についてのルータモデルの伝送速度ｂ(Ｌ(AC))を用いて式３０を用いて表される閾値Ｑｍａｘを超えた場合において発生する。
【０１０６】
Ｑｍａｘ＝Ｎｂ＊ＭＴＵ／ｂ(Ｌ(AC))                 ・・・（３０）
したがって、遅延モデル適用部２２４は、ステップ３３７の処理において得られたキューイング遅延ｑbottle(ｊ)と上述した閾値Ｑｍａｘとを比較し、キューイング遅延ｑbottle(ｊ)が閾値Ｑｍａｘを超えた場合には、ステップ３５１の肯定判定として、応答制御部２２６にＡＣＫパケットを送出しない旨を指示してステップ３３３に戻る。一方、ステップ３５１の否定判定の場合は、そのままステップ３３８に進み、待機時間Ｘｊの終了を待てばよい。
【０１０７】
このようにして、クライアントＣに到達したデータパケットが廃棄される場合をも想定して、サーバＷとクライアントＣとの間のデータ転送をシミュレートすることができる。
【０１０８】
【発明の効果】
以上に説明したように、請求項１の発明によれば、通信性能測定装置がネットワークにおいて占める位置にかかわらず、サーバと通信性能測定装置との間の通信によって、サーバとクライアントとの間のデータ転送を、その経路に存在するルータの遅延モデルに基づいてシミュレートし、サーバとクライアントとの間の経路の通信性能を正当に評価することができる。
また、請求項２の発明によれば、サーバからパケットを受信するごとに、サーバと通信性能測定装置との間でパケットを送受信するために要する時間と、同一のパケットをサーバとクライアントとの間で送受信するために要する時間との差分を求め、この差分だけ通信性能測定装置からサーバに返す応答パケットを遅延させることにより、各パケットが送受信されるタイミングにおけるネットワークの通信環境を反映しつつ、サーバとクライアントとの間のデータ転送を精密にシミュレートすることができる。
【０１０９】
一方、請求項３および請求項４の発明によれば、入力すべきパラメータの一部を推定することにより、通信性能測定装置の操作者の作業負担を軽減することができる。
また、請求項５の発明は、バースト的に送信されるデータパケット自身の蓄積によって発生する成分を含めて、遅延時間を正確に推定することができるので、ＨＴＴＰなどの高度なプロトコルによるデータ通信も精密にシミュレートすることができる。
【０１１０】
更に、請求項６の発明は、クライアントに備えられた有限のキューからパケットがあふれた場合に発生するパケット廃棄を考慮して、クライアントとサーバとの間のデータ伝送をシミュレートすることができる。
また、請求項７および請求項８の発明によれば、ＨＴＴＰまたはＦＴＰに従って行なわれる様々な手順の連鎖に応じて、個々の手順に対応する所要時間を積算していくことにより、利用者が通信性能を意識する様々な場面に対応して柔軟に通信性能を測定することができる。
【図面の簡単な説明】
【図１】本発明の通信性能測定装置の原理ブロック図である。
【図２】本発明の通信性能測定装置の原理ブロック図である。
【図３】本発明の通信性能測定装置に備えられる入力手段の第１の構成を示す図である。
【図４】本発明の通信性能測定装置に備えられる入力手段の第２の構成を示す図である。
【図５】本発明の通信性能測定装置に備えられる遅延推定手段の構成を示す図である。
【図６】本発明の通信性能測定装置に備えられる性能推定手段の構成を示す図である。
【図７】ネットワークの遅延モデルを説明する図である。
【図８】本発明の通信性能測定装置の実施形態を示す図である。
【図９】通信性能測定装置の動作の概略を示す流れ図を示す図である。
【図１０】係数推定部および分岐検出部の詳細構成を示す図である。
【図１１】３ｗａｙハンドシェイクによるコネクション確立手順を説明する図である。
【図１２】コネクション確立時間を計測する動作を表す流れ図である。
【図１３】ＨＴＴＰ手順によるデータ通信を説明するシーケンスを示す図である。
【図１４】ダウンロード時間の測定原理を説明する図である。
【図１５】ダウンロード時間を評価する動作を表す流れ図である。
【図１６】キューイング遅延を説明する図である。
【図１７】コネクション解放時間を説明する図である。
【図１８】コネクション解放時間を評価する動作を表す流れ図である。
【図１９】ＦＴＰによるデータ通信を説明するシーケンス図である。
【図２０】ダウンロード時間を評価する動作を表す別の流れを示す図である。
【図２１】従来の通信性能計測システムの構成例を示す図である。
【符号の説明】
１０１  クライアント
１０２  サーバ
１０３  分岐点ノード
１１０  通信性能測定装置
１１１  通信手段
１１２  入力手段
１１３  通信制御手段
１１４  パケット送受信手段
１１５  状況収集手段
１１６  第１送出指示手段
１１７  遅延推定手段
１１８  応答制御手段
１１９  性能推定手段
１２１  送信検出手段
１２２  受信検出手段
１２３  時刻通知手段
１２４  往復時間算出手段
１２５  差分推定手段
１３１  経路情報収集手段
１３２  分岐検出手段
１３３  第２送出指示手段
１３４  往復時間計測手段
１３５  要素推定手段
１４１  補正値算出手段
１４２  差分値出力手段
１４３  停止判定手段
１４４  第１記録手段
１４６  第２記録手段
１４５  時間算出手段
２１０  通信実行部
２１１  コネクション制御部
２１２  データパケット受信部
２１３  応答パケット送信部
２２０  計測制御部
２２１  入力受付部
２２２  手順制御部
２２３  コネクション管理部
２２４  遅延モデル適用部
２２５  探査制御部
２２６  応答制御部
２３０  計測実行部
２３１  探査パケット送受信部
２３２  時間計測部
２４０  性能評価部
２４１  時刻収集部
２４２  特性値算出部
２５０  係数推定部
２５１  送出指示部
２５２  時刻データ収集部
２５３  往復時間算出部
２５４  係数算出部
２６０  分岐検出部
２６１  コマンド発行部
２６２  応答収集部
２６３  アドレス照合部
４１０、４２０  性能計測装置
４０４  サーバ
４０３  アクセスポイント
４０２  ルータ
４０１  クライアント
【図１】
0003696806.tif 000020
【図２】
0003696806.tif 000021
【図３】
0003696806.tif 000022
【図４】
0003696806.tif 000023
【図５】
0003696806.tif 000024
【図６】
0003696806.tif 000025
【図７】
0003696806.tif 000026
【図８】
0003696806.tif 000027
【図９】
0003696806.tif 000028
【図１０】
0003696806.tif 000029
【図１１】
0003696806.tif 000030
【図１２】
0003696806.tif 000031
【図１３】
0003696806.tif 000032
【図１４】
0003696806.tif 000033
【図１５】
0003696806.tif 000034
【図１６】
0003696806.tif 000035
【図１７】
0003696806.tif 000036
【図１８】
0003696806.tif 000037
【図１９】
0003696806.tif 000038
【図２０】
0003696806.tif 000039
【図２１】
0003696806.tif 000040