パケット解析方法、プログラム及び装置
【課題】音声パケットの伝送品質を正確に計測可能とする。
【解決手段】本パケット解析方法は、音声パケット及び非音声パケットを含むパケットを解析する方法であって、特定のセッションにおけるパケットをキャプチャして記憶部に格納するステップと、記憶部に格納されたパケットの各々について当該パケットが音声パケット又は非音声パケットであるか判定し、音声パケットの受信数を計数する受信パケット判定ステップと、特定のセッションにおいてパケットロスが存在するか判断し、パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが音声パケット又は非音声パケットであるか判定し、音声パケットのロス数を計数するロスパケット判定ステップとを含む。
【解決手段】本パケット解析方法は、音声パケット及び非音声パケットを含むパケットを解析する方法であって、特定のセッションにおけるパケットをキャプチャして記憶部に格納するステップと、記憶部に格納されたパケットの各々について当該パケットが音声パケット又は非音声パケットであるか判定し、音声パケットの受信数を計数する受信パケット判定ステップと、特定のセッションにおいてパケットロスが存在するか判断し、パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが音声パケット又は非音声パケットであるか判定し、音声パケットのロス数を計数するロスパケット判定ステップとを含む。
【発明の詳細な説明】
【技術分野】
【0001】
本技術は、パケット解析技術に関する。
【背景技術】
【0002】
近年、情報通信技術の発展に伴い、パケット通信ネットワークを介した双方向通信が活発に行われている。特に、パケット化した音声データをパケット通信ネットワークを介して送受信するVoIP(Voice over Internet Protocol)を利用してインターネットなどのIP(Internet Protocol)ネットワーク経由での通話を行うIP電話が普及してきている。そのため、IP電話の音声品質の監視・管理が、IP電話サービスを提供するサービス事業者等にとって重要となってきている。
【0003】
なお、IP電話の音声品質を計測するための技術として、RTP(Real-time Transport Protocol)セッション毎に単位時間当たりのパケットロス率を算出する技術が存在している。例えば図33に示すように、一定期間におけるパケットの受信数とロス数とが計数され、パケットロス率が算出される。なお、図33において、黒色かつ実線枠の丸は受信パケットを示し、白色かつ点線枠の丸はロスパケットを示している。また、図33は、100個中、3個のパケット(シーケンス番号4、11及び15のパケット)をロスした場合の一例を示しており、パケットロス率は3.0%となっている。なお、パケットをロスしたか否かは、パケットに含まれる例えばシーケンス番号から判断可能である。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2003−249945号公報
【特許文献2】特開平11−259099号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
一方で、IP電話の通話中には、音声信号のみならず、非音声信号であるDTMF(Dial Tone Multi Frequency)信号などが流れる場合があり、音声パケットとDTMFパケット(すなわち、非音声パケット)とが入り混じって同一のRTPセッションに流れることとなる。
【0006】
しかしながら、上で述べた技術では、音声品質を計測する際、音声パケットと非音声パケットとを分離して解析するようにはなっていない。また、従来技術には、ロスパケットが音声パケット又は非音声パケットであるか判定するような技術は存在しない。すなわち、従来技術では、音声パケットと非音声パケットとが同一のRTPセッションに流れる場合、音声品質の指標となる、音声パケットの伝送品質を正確に計測することができない。
【0007】
従って、本技術の目的は、音声パケットの伝送品質を正確に計測できるようにすることである。
【課題を解決するための手段】
【0008】
本パケット解析方法は、音声パケット及び非音声パケットを含むパケットを解析する方法であって、特定のセッションにおけるパケットをキャプチャして記憶部に格納するステップと、記憶部に格納されたパケットの各々について当該パケットが音声パケット又は非音声パケットであるか判定し、音声パケットの受信数を計数する受信パケット判定ステップと、特定のセッションにおいてパケットロスが存在するか判断し、パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが音声パケット又は非音声パケットであるか判定し、音声パケットのロス数を計数するロスパケット判定ステップとを含む。なお、「ロスしたパケットの近傍のパケット」とは、ロスしたパケット群の前後のシーケンス番号を持つパケットを指す。
【発明の効果】
【0009】
音声パケットの伝送品質を正確に計測できるようになる。
【図面の簡単な説明】
【0010】
【図1】図1は、本技術の実施の形態の概要を説明するための図である。
【図2】図2は、本技術の実施の形態の概要を説明するための図である。
【図3】図3は、本技術の実施の形態に係るシステム構成図である。
【図4】図4は、本技術の実施の形態に係るパケット解析装置の機能ブロック図である。
【図5】図5は、品質データ格納部に格納されるデータの一例を示す図である。
【図6】図6は、パケット解析装置の全体の処理フローを示す図である。
【図7】図7は、RTPパケットのフォーマットの一例を示す図である。
【図8】図8は、伝送品質算出結果画面の画面例を示す図である。
【図9】図9は、伝送品質のログデータの一例を示す図である。
【図10】図10は、DTMFイベントを説明するための図である。
【図11】図11は、図10のDTMFイベントにおけるDTMFパケットの内容を示す図である。
【図12】図12は、第1の実施の形態におけるロスパケット判定処理1の処理フローを示す図である。
【図13】図13は、DTMFイベントの前半又は中盤をロスしたケースの例を示す図である。
【図14】図14は、ロスパケット判定処理1を説明するための具体例を示す図である。
【図15】図15は、第2の実施の形態におけるロスパケット判定処理2の処理フローを示す図である。
【図16】図16は、ロスパケットの直前に再送パケットが存在するケースの例を示す図である。
【図17】図17は、ロスパケット判定処理2を説明するための具体例を示す図である。
【図18】図18は、第3の実施の形態におけるロスパケット判定処理3の処理フローを示す図である。
【図19】図19は、再送パケットをロスしたケースの一例を示す図である。
【図20】図20は、ロスパケット判定処理3を説明するための具体例を示す図である。
【図21】図21は、ロスパケット判定処理3を説明するための具体例を示す図である。
【図22】図22は、第4の実施の形態におけるロスパケット判定処理4の処理フローを示す図である。
【図23】図23は、ロスパケット判定処理4を説明するための具体例を示す図である。
【図24】図24は、ロスパケット判定処理4を説明するための具体例を示す図である。
【図25】図25は、第5の実施の形態におけるロスパケット判定処理5の処理フローを示す図である。
【図26】図26は、ロスパケット判定処理5を説明するための具体例を示す図である。
【図27】図27は、第6の実施の形態におけるロスパケット判定処理6の処理フローを示す図である。
【図28】図28は、ロスパケットの前後のパケットが両方とも音声パケットである場合の一例を示す図である。
【図29】図29は、ロスパケットの前後のパケットが両方ともDTMFパケットである場合の一例を示す図である。
【図30】図30は、ロスパケットの前後のパケットの種別が異なる場合の一例を示す図である。
【図31】図31は、第1の態様に係るパケット解析方法の処理フローを示す図である。
【図32】図32は、第2の態様に係るパケット解析装置の機能ブロック図である。
【図33】図33は、従来技術を説明するための図である。
【図34】図34は、コンピュータの機能ブロック図である。
【発明を実施するための形態】
【0011】
[本技術の実施の形態の概要]
まず、図1及び2を用いて、本技術の実施の形態の概要を説明する。図1に、パケット通信ネットワークを介してIP電話機間を流れる一連のパケットの一例を示す。本技術の実施の形態では、RTPセッションを流れるパケットをキャプチャし、取得したパケットについては、パケットに含まれるペイロードタイプに従ってパケットの種別を判定する。さらに、本技術の実施の形態では、パケットロスが存在するか判断し、パケットロスが存在する場合には、ロスパケットの種別を判定するようにする。なお、RTPセッションを流れるパケットには連続したシーケンス番号が付与されるので、パケットに含まれるシーケンス番号に従ってパケットをロスしたか否かを判断する。これにより、例えば図2に示すように、音声パケットの受信数及びロス数とを計数することができ、音声パケットのロス率を正確に算出できるようになる。なお、図2は、100個中、3個のパケット(シーケンス番号4、11及び15のパケット)をロスしており、ロスした3個のパケットのうち1個が音声パケット、2個がDTMFパケット(非音声パケット)であった場合の例を示す。従って、図2の例では、1÷(90+1)≒1.1%が、音声パケットのロス率として算出される。なお、図1及び図2において、黒色かつ実線枠の丸は受信パケットを示し、白色かつ点線枠の丸はロスパケットを示し、灰色かつ実線枠の丸は音声パケットを示し、斜めの格子模様かつ実線枠の丸はDTMFパケットを示している(以下同じ)。以下、本技術の実施の形態について詳細に説明する。
【0012】
[実施の形態1]
図3に、本技術の実施の形態に係るシステム構成図を示す。図3において、パケット通信ネットワーク1には、ネットワーク3aとネットワーク3bとネットワーク3cとが接続されている。そして、各ネットワーク3には、IP電話機及びPCが接続されている。例えば、ネットワーク3及びパケット通信ネットワーク1を介して、IP電話機間での通話や、PC間でのデータ通信が可能となっている。また、図3では、パケット通信ネットワーク1とネットワーク3aとの間に観測地点が設けられており、パケット通信ネットワーク1とネットワーク3aとは、観測地点に設置されているTAP(タップ)5を介して接続されている。また、観測地点には、さらにパケット解析装置7が設置されており、観測地点を通過するパケットをTAP5を介してキャプチャするようになっている。なお、図3では、観測地点が1箇所の例を示しているが、2箇所以上存在する場合もある。
【0013】
図4に、図3に示したパケット解析装置7の機能ブロック図を示す。パケット解析装置7は、パケットキャプチャ部71と、パケット解析部72と、音声・非音声判定部73と、ロスパケット判定部74と、品質算出部75と、出力部76と、品質データ格納部77とを有する。
【0014】
なお、パケットキャプチャ部71は、観測地点を流れるパケットをTAP5を介してキャプチャし、パケット解析部72に出力する。パケット解析部72は、パケットキャプチャ部71からのパケットを受信すると、パケットのヘッダを解析することにより、RTPパケットであるか否か判別し、RTPパケットである場合には記憶部(図示せず)に格納する。また、パケット解析部72は、キャプチャしたパケットが音声パケット又はDTMFパケットであるか判定するよう音声・非音声判定部73に指示する。音声・非音声判定部73は、パケット解析部72からの指示を受信すると、記憶部に格納されたパケットの各々について、当該パケットのヘッダに含まれるペイロードタイプに従って、当該パケットが音声パケット又はDTMFパケットであるか判定し、音声パケット及びDTMFパケットの受信数を計数する。なお、音声パケット及びDTMFパケットの受信数は、品質データ格納部77に格納される。また、音声・非音声判定部73は、後で説明するロスパケット判定処理を開始するようロスパケット判定部74に指示する。ロスパケット判定部74は、音声・非音声判定部73からの指示を受信すると、記憶部に格納されたパケットに基づき、パケットロスが存在するか判断する。そして、ロスパケット判定部74は、パケットロスが存在する場合には、ロスパケット判定処理を実施し、音声パケット及びDTMFパケットのロス数を計数する。なお、音声パケット及びDTMFパケットのロス数は、品質データ格納部77に格納される。また、ロスパケット判定部74は、ロス率やパケット到達率などの伝送品質を算出するよう品質算出部75に指示する。品質算出部75は、ロスパケット判定部74からの指示を受信すると、品質データ格納部77に格納されている受信数及びロス数を用いて音声パケット及びDTMFパケットの伝送品質を算出し、品質データ格納部77に格納する。また、品質算出部75は、品質データ格納部77に格納されているデータを出力するよう出力部76に指示する。出力部76は、品質算出部75からの指示を受信すると、品質データ格納部77に格納されているデータに基づき出力用のデータを生成し、表示装置に表示したり、ユーザ端末(図示せず)に送信したりする。
【0015】
図5に、品質データ格納部77に格納されるデータの一例を示す。図5の例では、品質データ格納部77には、音声パケット及びDTMFパケットの各々について、受信数とロス数とロス率とが格納される。さらに、品質データ格納部77には、音声パケット及びDTMFパケットの各々についてのパケット到達率が格納されたり、不明パケットのロス数が格納される場合もある。なお、品質データ格納部77には、図5に示したようなデータが、RTPセッション毎に格納される。また、一定間隔で伝送品質を計測する場合には、区間毎に格納するようにしてもよい。なお、本実施例では、音声パケットに関する情報のみならず、全パケットに関する情報やDTMFパケットに関する情報、不明パケットに関する情報等も品質データ格納部77に格納しているが、音声パケットに関する情報のみを格納するようにしてもよいし、音声パケットに関する情報と、全パケットに関する情報、DTMFパケットに関する情報、不明パケットに関する情報のいずれかのみとを格納するようにしてもよい。他の実施の形態においても同様である。
【0016】
次に、図6乃至図14を用いて、第1の実施の形態におけるパケット解析装置7の処理について説明する。図6にパケット解析装置7の全体の処理フローを示す。まず、パケットキャプチャ部71が、ネットワーク上を流れるパケットをTAP5を介してキャプチャし(図6のS1)、パケット解析部72に出力する。そして、パケット解析部72は、パケットキャプチャ部71からパケットを受信すると、RTPパケットであるか否か判別し、RTPパケットである場合には、記憶部に格納する(図6のS3)。また、パケット解析部72は、定期的に又は任意のタイミングで、キャプチャしたパケットが音声パケット又はDTMFパケットであるか判定するよう音声・非音声判定部73に指示する。例えば、一定間隔で伝送品質を計測するように予め設定されている場合には、その間隔で指示を行う。
【0017】
そして、音声・非音声判定部73は、パケット解析部72からの指示を受信すると、記憶部に格納されたRTPパケットの各々について、RTPパケットのヘッダに含まれるペイロードタイプに基づき、当該パケットが音声パケット又はDTMFパケットであるか判定し、音声パケット及びDTMFパケットの受信数を計数する(図6のS5)。なお、音声パケット及びDTMFパケットの受信数は、品質データ格納部77に格納される。また、例えば一定間隔で伝送品質を計測するように設定されている場合には、前回の処理以降にキャプチャしたパケットについて判定を行い、受信数を計数する。
【0018】
図7に、RTPパケットのフォーマットの一例を示す。なお、図7は、RTPパケットがDTMFパケットである場合の例を示す。図7において、RTPパケットには、RTPヘッダとRTPペイロードとが含まれる。そして、RTPヘッダには、M(マーカー)ビットとペイロードタイプとシーケンス番号とタイムスタンプとが含まれ、RTPペイロードには、イベント番号とE(End)ビットと継続期間とが含まれる。なお、図7では、本実施の形態における処理に関連するデータ項目のみ示している。また、RTPパケット自体は従来と変わらないため、詳細な説明は省略する。
【0019】
そして、音声・非音声判定部73は、ロスパケット判定処理を開始するようロスパケット判定部74に指示する。
【0020】
そして、ロスパケット判定部74は、音声・非音声判定部73からの指示を受信すると、記憶部に格納されたパケットのシーケンス番号に基づき、パケットロスが存在するか判断する(図6のS7)。そして、パケットロスを検出した場合(図6のS7:Yes)、ロスパケット判定部74は、記憶部に格納されたパケットに基づき、ロスパケット判定処理を実施する(図6のS9)。なお、ロスパケット判定処理の詳細は後で説明するが、本処理を実施することで、音声パケット及びDTMFパケットのロス数が計数され、品質データ格納部77に格納される。そして、ロスパケット判定部74は、ロスパケット判定処理を実施した後、ロス率やパケット到達率などの伝送品質を算出するよう品質算出部75に指示する。なお、処理は図6のS11に移行する。
【0021】
一方、パケットロスを未検出の場合(図6のS7:No)、図6のS9をスキップし、図6のS11の処理に移行する。なお、ロスパケット判定部74は、ロス率やパケット到達率などの伝送品質を算出するよう品質算出部75に指示する。
【0022】
そして、品質算出部75は、ロスパケット判定部74からの指示を受信すると、品質データ格納部77に格納されている受信数及びロス数を用いて、ロス率やパケット到達率などの伝送品質を算出し、品質データ格納部77に格納する(図6のS11)。例えば品質データ格納部77に格納されている受信数及びロス数が図5のような値であった場合には、音声パケットのロス率は、1÷(90+1)≒1.1%となり、DTMFパケットのロス率は、2÷(7+2)≒22.2%となる。また、品質算出部75は、全体のロス率やパケット到達率が必要であれば、全体のロス率を算出し、品質データ格納部77に格納する。また、一定間隔で伝送品質を計測するように設定されている場合には、ロス率やパケット到達率の平均値を算出する場合もある。その後、品質算出部75は、品質データ格納部77に格納されたデータを出力するよう出力部76に指示する。
【0023】
そして、出力部76は、品質算出部75からの指示を受信すると、品質データ格納部77に格納されているデータを用いて伝送品質算出結果画面データを生成し、表示装置等に表示する(図6のS13)。例えば図8に示すような伝送品質算出結果画面が表示される。図8の伝送品質算出結果画面では、全体(トータル)のロス数及びロス率と、音声パケットのロス数及びロス率と、DTMFパケットのロス数及びロス率とが表示されている。なお、図8では図示していないが、不明パケットのロス数を表示する場合もある。また、本実施例では、音声パケットに関する情報のみならず、全パケットに関する情報やDTMFパケットに関する情報を、伝送品質算出結果画面に表示しているが、音声パケットに関する情報のみを表示するようにしてもよいし、音声パケットに関する情報と、全パケットに関する情報、DTMFパケットに関する情報、不明パケットに関する情報のいずれかのみとを表示するようにしてもよい。他の実施例においても同様である。
【0024】
また、例えば、一定間隔で伝送品質を計測するように設定されている場合には、計測した伝送品質のログデータを生成し、品質データ格納部77に格納するようにしてもよい。図9に伝送品質のログデータの一例を示す。図9では、ログデータには、全体(トータル)のロス情報と、音声パケットのロス情報と、DTMFパケットのロス情報と、不明パケットのロス情報とが含まれる。なお、トータルのロス情報には、ロス数(loss-packet)と、受信数(recv-packet)と、計測されたロス率の中の最大ロス率(loss-rate-max)と、計測されたロス率の中の最小ロス率(loss-rate-min)と、計測されたロス率の平均値(loss-rate-avg)と、・・・とが含まれる。また、音声パケットのロス情報には、受信数(voice-recv-packet)と、ロス数(voice-loss-packet)と、計測されたロス率の中の最大ロス率(voice-loss-rate-max)と、計測されたロス率の中の最小ロス率(voice-loss-rate-min)と、計測されたロス率の平均値(voice-loss-rate-avg)とが含まれる。また、DTMFパケットのロス情報には、受信数(dtmf-recv-packet)と、ロス数(dtmf-loss-packet)と、計測されたロス率の中の最大ロス率(dtmf-loss-rate-max)と、計測されたロス率の中の最小ロス率(dtmf-loss-rate-min)と、計測されたロス率の平均値(dtmf-loss-rate-avg)とが含まれる。また、不明パケットのロス情報には、ロス数(unknown-loss-packet)が含まれる。
【0025】
次に、図10乃至図14を用いて、図6のS9におけるロスパケット判定処理について説明する。なお、具体的な処理フローを説明する前に、DTMFイベント及びDTMFパケットについて説明しておく。DTMFイベントは、1回のプッシュ音に対応して生成され、複数のDTMFパケットからなる。図10及び図11に、ボタン「5」が押された場合のDTMFイベントの一例を示す。なお、図11は、図10に示す6個のDTMFパケットのそれぞれの内容を示している。図10に示すように、DTMFでは、終端パケットが2回再送されるようになっており、この再送されるパケット(以下、再送パケットと呼ぶ)を含む一連のDTMFパケット(図10では、6個のDTMFパケット)で1つのDTMFイベントが構成される。なお、図10において、斜めの格子模様かつ実線枠の丸のうち、「R」の文字が付されているものは、再送パケットを示している(以下同じ)。そして、再送パケットのEビットには必ず1が設定される。また、図10及び図11に示すように、再送パケットの継続期間には、終端パケットの継続期間と同じ値が設定される。なお、継続期間は、プッシュボタンが押されてからの時間であり、タイムスタンプで表される。これらの特徴を前提に、以下、本実施の形態におけるロスパケット判定処理の具体的な処理フロー(図12)を説明する。
【0026】
まず、ロスパケット判定部74は、記憶部に格納されたパケットに従って、ロスパケットの直後に、再送パケット又は再送パケットを包含するDTMFパケット群が存在するか判断する(図12のS21)。すなわち、図12のS21では、DTMFイベントの前半又は中盤をロスした可能性があるか判断する。ここでは、記憶部に格納されたパケットのペイロードタイプ、Eビット及び継続期間などに基づき判断する。
【0027】
図13にDTMFイベントの前半又は中盤をロスしたケースの例を示す。なお、図13の各ケースでは、右から左に向かって、DTMFパケットのシーケンス番号が昇順に付与されているものとする。ケース1は、ロスパケットの直後に、DTMFパケットが3個(そのうちの2個は再送パケット)存在し且つロスパケットの直前に音声パケットが存在するケースを示す。また、ケース2は、ロスパケットの直後に、再送パケットが2個存在し且つロスパケットの直前に音声パケットが存在するケースを示す。さらに、ケース3は、ロスパケットの直後に、再送パケットが1個存在し且つロスパケットの直前に音声パケットが存在するケースを示す。また、ケース4は、ロスパケットの直後に、DTMFパケットが3個(そのうちの2個は再送パケット)存在し且つロスパケットの直前にDTMFパケットが存在するケースを示す。さらに、ケース5は、ロスパケットの直後に、再送パケットが2個存在し且つロスパケットの直前にDTMFパケットが存在するケースを示す。また、ケース6は、ロスパケットの直後に、再送パケットが1個存在し且つロスパケットの直前にDTMFパケットが存在するケースを示す。
【0028】
そして、ロスパケットの直後に、再送パケット及び再送パケットを含むDTMFパケット群のいずれも存在しない場合(図12のS21:No)、本処理を終了し、元の処理に戻る。
【0029】
一方、ロスパケットの直後に、再送パケット又は再送パケットを含むDTMFパケット群が存在する場合(図12のS21:Yes)、ロスパケット判定部74は、その再送パケットのペイロード部から継続期間を取得する(図12のS23)。なお、図12のS23以降の処理については、図14に示す具体例を用いて説明する。図14は、5個のパケットをロスしており、ロスパケットの直後に4個のDTMFパケットが存在し且つロスパケットの直前に音声パケットが存在する例を示す。なお、図14では、右から左に向かって、DTMFパケットのシーケンス番号が昇順に付与されているものとする。図14の例では、図12のS23の処理により、640が再送パケットの継続期間として取得される。なお、上で述べたように継続期間は、タイムスタンプで表される。
【0030】
そして、ロスパケット判定部74は、DTMFパケットの送出間隔を取得する(図12のS25)。具体的には、ロスパケットの直後のDTMFパケットと、当該DTMFパケットの1つ後ろのDTMFパケット(すなわち、図14における終端パケット)との継続期間の差を送出間隔として取得する。すなわち、図14の例では、ロスパケットの直後のDTMFパケットの継続期間は480であり、当該DTMFパケットの1つ後ろのDTMFパケットの継続期間は640であり、図12のS25の処理により、その差である160が送出間隔として取得される。
【0031】
なお、RTPセッションを流れるDTMFパケットは、そのRTPセッションにおいては全て同じ間隔で送出される。例えば、そのRTPセッションにおいて正常に流れたDTMFイベントを検出し、そのDTMFイベントにおいて隣接する2個のDTMFパケットの継続期間の差を送出間隔として取得するようにしてもよい。
【0032】
そして、ロスパケット判定部74は、図12のS23において取得した継続期間と図12のS25において取得した送出間隔とを用いて、先頭パケットから終端パケットまでのパケット数を算出する(図12のS27)。具体的には、継続期間を送出間隔で除した値を、先頭パケットから終端パケットまでのパケット数として算出する。図14の例では、640÷160=4個が算出される。
【0033】
そして、ロスパケット判定部74は、図12のS27において算出したパケット数と、ロスパケットの直後に存在するDTMFパケットの数と、終端パケットの再送回数とに従って、ロスパケットの種別を判定し、音声パケット及びDTMFパケットのロス数を計数する(図12のS29)。具体的には、まず、ロスパケットの直後に存在するDTMFパケットの数と、終端パケットの再送回数とから終端パケットの位置を特定する。図14の例では、ロスパケットの直後に存在する4個のDTMFパケットのうち前から2個目のDTMFパケットが終端パケットとして特定される。そして、図12のS27において算出したパケット数に従って先頭パケットの位置を特定する。図14の例では、5個のロスパケットのうち前から4個目のパケットが先頭パケットとして特定される。従って、図14では、5個のロスパケットのうち後ろの2個がDTMFパケットであり、前の3個は音声パケットであると判定される。なお、音声パケット及びDTMFパケットのロス数は、品質データ格納部77に格納される。その後、本処理を終了し、元の処理に戻る。
【0034】
なお、複数箇所にパケットロスが存在する場合には、各箇所について上で述べたような処理を実施し、集計したロス数を品質データ格納部77に格納する。
【0035】
以上のような処理を実施することにより、DTMFイベントの前半又は中盤をロスした可能性がある場合に、ロスパケットの種別を判定することができる。
【0036】
[実施の形態2]
次に、図15乃至図17を用いて本技術の第2の実施の形態を説明する。なお、第2の実施の形態は、DTMFイベントの後半をロスしている可能性がある場合に、ロスパケットの種別を判定するものである。
【0037】
本実施の形態に係るシステム構成は、図3に示したシステム構成図と同じである。また、本実施の形態に係るパケット解析装置7の構成は、図4に示した機能ブロック図と同じである。そして、パケット解析装置7の処理は、基本的には第1の実施の形態で説明した処理内容と同じであるが、図6のS9の代わりに図15に示すような処理(ロスパケット判定処理2と呼ぶ)を実施する。以下、ロスパケット判定処理2について説明する。
【0038】
まず、ロスパケット判定部74が、記憶部に格納されたパケットに従って、ロスパケットの直前に再送パケットが存在するか判断する(図15のS31)。すなわち、図15のS31では、DTMFイベントの後半をロスした可能性があるか判断する。
【0039】
図16に、ロスパケットの直前に再送パケットが存在するケースの例を示す。なお、図16の各ケースでは、右から左に向かって、DTMFパケットのシーケンス番号が昇順に付与されているものとする。ケース7は、ロスパケットの直後に音声パケットが存在し且つロスパケットの直前に再送パケットが1個存在するケースを示す。また、ケース8は、ロスパケットの直後に音声パケットが存在し且つロスパケットの直前に再送パケットが2個存在するケースを示す。
【0040】
そして、ロスパケットの直前に再送パケットが存在しない場合(図15のS31:No)、本処理を終了し、元の処理に戻る。
【0041】
一方、ロスパケットの直前に再送パケットが存在する場合(図15のS31:Yes)、ロスパケット判定部74は、その再送パケットから継続期間を取得し、当該継続期間に基づき終端パケットの位置を特定する(図15のS33)。なお、図15のS33以降の処理については、図17に示す具体例を用いて説明する。図17は、5個のパケットをロスしており、ロスパケットの直後に音声パケットが存在し且つロスパケットの直前に再送パケットが1個存在する例を示す。なお、図17では、右から左に向かって、DTMFパケットのシーケンス番号が昇順に付与されているものとする。なお、上でも述べたが、再送パケットの継続期間には、終端パケットと同じ値が設定される。従って、再送パケットの継続期間と同じ値を持つDTMFパケットのうちシーケンス番号が最も小さいパケットを終端パケットとして特定する。図17では、ロスパケットの直前に存在する5個のDTMFパケットのうち前から4個目のパケットが終端パケットとして特定される。
【0042】
そして、ロスパケット判定部74は、終端パケットの位置と終端パケットの再送回数とに従って、ロスパケットの種別を判定し、音声パケット及びDTMFパケットのロス数を計数する(図15のS35)。図17の例では、本来2個存在すべき再送パケットが1個しか存在しないため、再送パケットを1個ロスしたことが分かる。すなわち、図17では、5個のロスパケットのうち先頭のパケットがDTMFパケットであり、残りの4個のパケットが音声パケットであると判定される。なお、音声パケット及びDTMFパケットのロス数は、品質データ格納部77に格納される。その後、本処理を終了し、元の処理に戻る。
【0043】
以上のような処理を実施することにより、DTMFイベントの後半をロスした可能性がある場合に、ロスパケットの種別を判定することができる。
【0044】
[実施の形態3]
次に、図18乃至図21を用いて本技術の第3の実施の形態を説明する。なお、第3の実施の形態は、再送パケットをロスした場合に、ロスパケットの一部の種別を判定するものである。
【0045】
本実施の形態に係るシステム構成は、図3に示したシステム構成図と同じである。また、本実施の形態に係るパケット解析装置7の構成は、図4に示した機能ブロック図と同じである。そして、パケット解析装置7の処理は、基本的には第1の実施の形態で説明した処理内容と同じであるが、図6のS9の代わりに図18に示すような処理(ロスパケット判定処理3と呼ぶ)を実施する。以下、ロスパケット判定処理3について説明する。
【0046】
まず、ロスパケット判定部74が、記憶部に格納されたパケットに従って、再送パケットをロスしたか判断する(図18のS41)。具体的には、ロスパケットの直後に音声パケットが存在し且つロスパケットの直前に再送パケット以外のDTMFパケットが存在するか判断する。
【0047】
図19に、再送パケットをロスしたケースの一例を示す。なお、図19のケース9では、右から左に向かって、DTMFパケットのシーケンス番号が昇順に付与されているものとする。ケース9は、ロスパケットの直後に音声パケットが存在し且つロスパケットの直前に再送パケット以外のDTMFパケットが存在するケースを示す。
【0048】
そして、再送パケットをロスしていないと判断した場合(図18のS41:No)、本処理を終了し、元の処理に戻る。
【0049】
一方、再送パケットをロスしていると判断した場合(図18のS41:Yes)、ロスパケット判定部74は、終端パケットの再送回数をDTMFパケットのロス数として計数し、ロスパケットの数とDTMFパケットとのロス数との差を音声パケット又は不明パケットのロス数として計数する(図18のS43)。なお、再送パケットをロスしているということは、少なくとも再送回数分のDTMFパケットをロスしているということになる。すなわち、図18のS43では、終端パケットの再送回数をDTMFパケットのロス数として計数し、残りのロスパケットの数を音声パケット(又は不明パケット)のロス数として計数する。例えばケース9(図19)のような形でパケットをロスしている場合、図20に示すように、DTMFパケットのロス数を2、音声パケット(又は不明パケット)のロス数を3として計数する。なお、音声パケット、DTMFパケット及び不明パケットのロス数は、品質データ格納部77に格納される。その後、本処理を終了し、元の処理に戻る。
【0050】
なお、例えばケース9(図19)のような形でパケットをロスした場合、ロスパケットの内訳は、図21に示す4つのパターンのいずれかである。ここで、音声パケットのロス数は、最大の場合は3個、最小の場合は0個となる。従って、音声パケットのロス数を、範囲を持たせた形で計数するようにしてもよい。この場合には、最大ロス数の場合の伝送品質と、最小ロス数の場合の伝送品質とを算出して出力するようにする。
【0051】
以上のような処理を実施することにより、再送パケットをロスした場合に、ロスパケットの少なくとも一部について種別を判定できる。音声パケットのロス率の取り得る範囲を把握できるようになる。
【0052】
[実施の形態4]
次に、図22乃至図24を用いて本技術の第4の実施の形態を説明する。なお、第4の実施の形態は、音声パケットの送出間隔とDTMFパケットの送出間隔とが異なる場合に、ロスパケットの種別を判定するものである。本実施の形態では、音声パケットの送出間隔が20msであり、DTMFパケットの送出間隔が40msであるものとする。
【0053】
本実施の形態に係るシステム構成は、図3に示したシステム構成図と同じである。また、本実施の形態に係るパケット解析装置7の構成は、図4に示した機能ブロック図と同じである。そして、パケット解析装置7の処理は、基本的には第1の実施の形態で説明した処理内容と同じであるが、図6のS9の代わりに図22に示すような処理(ロスパケット判定処理4と呼ぶ)を実施する。以下、ロスパケット判定処理4について説明する。
【0054】
まず、ロスパケット判定部74が、音声パケットの送出間隔とDTMFパケットの送出間隔とが異なるか否か判断する(図22のS51)。なお、音声パケットの送出間隔及びDTMFパケットの送出間隔については、例えばキャプチャしたパケットから算出する。音声パケットの送出間隔とDTMFパケットの送出間隔とが同一の場合(図22のS51:No)、本処理を終了し、元の処理に戻る。
【0055】
一方、音声パケットの送出間隔とDTMFパケットの送出間隔とが異なる場合(図22のS51:Yes)、ロスパケット判定部74は、ロスパケットの前後のパケットの時間差及びシーケンス番号の差を算出する(図22のS53)。なお、「ロスパケットの前後のパケット」とは、ロスしたパケット群の直前のシーケンス番号を持つパケット1つと、ロスしたパケット群の直後のシーケンス番号を持つパケット1つを指す。ロスパケットの前後のパケットの時間差については、ロスパケットの直前のパケットのヘッダに含まれるタイムスタンプと、ロスパケットの直後のパケットのヘッダに含まれるタイムスタンプとの差を算出し、算出した差を実際の時間に変換したものを、ロスパケットの前後のパケットの時間差とする。
【0056】
そして、ロスパケット判定部74は、図22のS53において算出した時間差及びシーケンス番号の差を用いて、ロスパケットの送出間隔を算出する(図22のS55)。具体的には、図22のS53において算出した時間差を、シーケンス番号の差で除することにより、ロスパケットの送出間隔を算出する。
【0057】
例えば7個の音声パケットをロスした場合の一例を図23に示す。図23の例では、ロスパケットの前後のパケットの時間差は160msとなっており、シーケンス番号の差は8(=13−5)である。従って、図23の例では、160ms÷8=20msが、ロスパケットの送出間隔として算出される。
【0058】
そして、ロスパケット判定部74は、ロスパケットの送出間隔と音声パケットの送出間隔とが同一であるか判断する(図22のS57)。ロスパケットの送出間隔と音声パケットの送出間隔とが同一である場合(図22のS57:Yes)、ロスパケット判定部74は、ロスパケットが全て音声パケットであると判断する。そして、ロスパケット判定部74は、ロスパケットの数を音声パケットのロス数として計数する(図22のS59)。図23の例では、ロスパケットの送出間隔(20ms)と音声パケットの送出間隔(20ms)とが同一であると判断され、ロスパケットの数(7個)が音声パケットのロス数として計数される。なお、音声パケットのロス数は、品質データ格納部77に格納される。その後、本処理を終了する。
【0059】
一方、ロスパケットの送出間隔と音声パケットの送出間隔とが異なる場合(図22のS57:No)、ロスパケット判定部74は、DTMFパケットをロスしていると判断する(図22のS61)。
【0060】
例えば4個のDTMFパケットをロスした場合の一例を図24に示す。図24の例では、ロスパケットの前後のパケットの時間差は180msとなっており、シーケンス番号の差は5(=10−5)である。この場合、図22のS55の処理を実施すると、180ms÷5=36msが、ロスパケットの送出間隔として算出される。すなわち、図24の例では、図22のS57において、ロスパケットの送出間隔(36ms)と音声パケットの送出間隔(20ms)とが異なると判断され、図22のS61において、DTMFパケットをロスしていると判断される。
【0061】
その後、ロスパケット判定部74は、ロスパケットの送出間隔とDTMFパケットの送出間隔とが同一であるか判断する(図22のS63)。ロスパケットの送出間隔とDTMFパケットの送出間隔とが同一である場合(図22のS63:Yes)、ロスパケット判定部74は、ロスパケットは全てDTMFパケット(すなわち、音声パケットのロスは無し)であると判断する。そして、ロスパケット判定部74は、ロスパケットの数をDTMFパケットのロス数として計数する(図22のS65)。なお、DTMFパケットのロス数から算出される音声パケットのロス数(=0)は、品質データ格納部77に格納されるか、または、音声パケットのロス数が0であるため、何も処理(格納)しない。その後、本処理を終了する。
【0062】
一方、ロスパケットの送出間隔とDTMFパケットの送出間隔とが異なる場合(図22のS61:No)、図22のS65をスキップし、本処理を終了する。
【0063】
以上のような処理を実施することにより、音声パケットの送出間隔とDTMFパケットの送出間隔とが異なる場合に、ロスパケットの種別を判定することができる。
【0064】
[実施の形態5]
次に、図25及び図26を用いて本技術の第5の実施の形態を説明する。なお、第5の実施の形態は、音声パケットの送出間隔とDTMFパケットの送出間隔とが異なる場合に、音声パケットのロス数及びDTMFパケットのロス数を算出するものである。本実施の形態では、音声パケットの送出間隔を20msとし、DTMFパケットの送出間隔を40msであるものとする。
【0065】
本実施の形態に係るシステム構成は、図3に示したシステム構成図と同じである。また、本実施の形態に係るパケット解析装置7の構成は、図4に示した機能ブロック図と同じである。そして、パケット解析装置7の処理は、基本的には第1の実施の形態で説明した処理内容と同じであるが、図6のS9の代わりに図25に示すような処理(ロスパケット判定処理5と呼ぶ)を実施する。以下、ロスパケット判定処理5について説明する。
【0066】
まず、ロスパケット判定部74が、音声パケットの送出間隔とDTMFパケットの送出間隔とが異なるか否か判断する(図25のS71)。音声パケットの送出間隔とDTMFパケットの送出間隔とが同一の場合(図25のS71:No)、本処理を終了し、元の処理に戻る。
【0067】
一方、音声パケットの送出間隔とDTMFパケットの送出間隔とが異なる場合(図25のS71:Yes)、ロスパケット判定部74は、ロスパケットの前後のパケットの時間差及びシーケンス番号の差を算出する(図25のS73)。なお、図25のS73以降の処理については、図26に示す具体例を用いて説明する。図26は、6個のパケット(2個の音声パケット及び4個のDTMFパケット)をロスした場合の一例を示す。図26の例では、ロスパケットの前後のパケットの時間差は220msとなっており、シーケンス番号の差は7(=10−3)である。
【0068】
そして、ロスパケット判定部74は、音声パケットの送出間隔と、DTMFパケットの送出間隔と、図25のS73において算出した時間差及びシーケンス番号の差とに基づき、音声パケットのロス数及びDTMFパケットのロス数を算出する(図25のS75)。具体的には、ロスパケットとロスパケットの直後のパケットとを計算対象パケットとして、当該計算対象パケットのうちの音声パケットの数を変数xとし且つDTMFパケットの数を変数yとする以下の連立方程式を用いて算出する。図26では、シーケンス番号4からシーケンス番号10までの7個のパケットが計算対象パケットである。
20x+40y=220 (1)
x+y=7 (2)
【0069】
なお、(1)式において、「20」は音声パケットの送出間隔であり、「40」はDTMFパケットの送出間隔である。また、(1)式における「220」は、図25のS73において算出した、ロスパケットの前後のパケットの時間差である。さらに、(2)式における「7」は、図25のS73において算出した、ロスパケットの前後のパケットのシーケンス番号の差である。そして、このような連立方程式を解くと、x=3、y=4となる。ここで、ロスパケットの直後の音声パケットを計算対象パケットに含めているため、変数xの値から1を差し引いた値が音声パケットのロス数となる。従って、ロスパケットの内訳としては、音声パケットが2個(=3−1)、DTMFパケットが4個となる。なお、音声パケット及びDTMFパケットのロス数は、品質データ格納部77に格納される。その後、本処理を終了し、元の処理に戻る。
【0070】
以上のような処理を実施することにより、音声パケットの送出間隔とDTMFパケットの送出間隔とが異なる場合に、音声パケットのロス数及びDTMFパケットのロス数を算出することができる。
【0071】
[実施の形態6]
次に、図27乃至図30を用いて本技術の第6の実施の形態を説明する。なお、上で説明した第1乃至第5の実施の形態は、上で述べたようなDTMFパケットの特徴を用いてロスパケットの種別を判定するものであった。これに対し、第6の実施の形態では、ロスパケットの前後のパケットの種別に従ってロスパケットの種別を判定する。
【0072】
本実施の形態に係るシステム構成は、図3に示したシステム構成図と同じである。また、本実施の形態に係るパケット解析装置7の構成は、図4に示した機能ブロック図と同じである。そして、パケット解析装置7の処理は、基本的には第1の実施の形態で説明した処理内容と同じであるが、図6のS9の代わりに図27に示すような処理(ロスパケット判定処理6と呼ぶ)を実施する。以下、ロスパケット判定処理6について説明する。
【0073】
まず、ロスパケット判定部74が、記憶部に格納されたパケットに従って、ロスパケットの前後のパケットの種別を特定する(図27のS81)。そして、ロスパケット判定部74は、ロスパケットの前後のパケットが両方とも音声パケットであるか判断する(図27のS83)。ロスパケットの前後のパケットが両方とも音声パケットの場合(図27のS83:Yes)、ロスパケット判定部74は、ロスパケットは全て音声パケットであると判断する。図28に、ロスパケットの前後のパケットが両方とも音声パケットである場合の一例を示す。本実施の形態では、図28における3個のロスパケットは全て音声パケットであると判断される。
【0074】
そして、ロスパケット判定部74は、ロスパケットの数を音声パケットのロス数として計数する(図27のS85)。なお、音声パケットのロス数は、品質データ格納部77に格納される。その後、本処理を終了し、元の処理に戻る。
【0075】
一方、ロスパケットの前後のパケットのうち少なくとも一方がDTMFパケットの場合(図27のS83:No)、ロスパケット判定部74は、ロスパケットの前後のパケットが両方ともDTMFパケットであるか判断する(図27のS87)。ロスパケットの前後のパケットが両方ともDTMFパケットの場合(図27のS87:Yes)、ロスパケット判定部74は、ロスパケットは全てDTMFパケットであると判断する。図29に、ロスパケットの前後のパケットが両方ともDTMFパケットである場合の一例を示す。本実施の形態では、図29における3個のロスパケットは全てDTMFパケットであると判断される。
【0076】
そして、ロスパケット判定部74は、ロスパケットの数をDTMFパケットのロス数として計数する(図27のS89)。なお、DTMFパケットのロス数から算出される音声パケットのロス数(=0)は、品質データ格納部77に格納されるか、または、音声パケットのロス数が0であるため、何も処理(格納)しない。その後、本処理を終了し、元の処理に戻る。
【0077】
一方、ロスパケットの前後のパケットの種別が異なる場合(図27のS87:No)、ロスパケット判定部74は、ロスパケットの数を不明パケットのロス数として計数する(図27のS91)。図30に、ロスパケットの前後のパケットの一方が音声パケットである場合の一例を示す。本実施の形態では、図30における3個のロスパケットは全て不明パケットであると判断される。なお、不明パケットのロス数から算出される音声パケットのロス数(=0)は、品質データ格納部77に格納されるか、または、音声パケットのロス数が0であるため、何も処理(格納)しない。その後、本処理を終了し、元の処理に戻る。
【0078】
以上のような処理を実施することにより、ロスパケットの前後のパケットの種別からロスパケットの種別を判定することができる。
【0079】
なお、ロスパケットの前後のパケットの種別が異なる場合において、図27のS91の処理の代わりに、第1乃至第5の実施の形態で説明したような処理を実施するような構成を採用することも可能である。
【0080】
以上本技術の実施の形態を説明したが、本技術はこれに限定されるものではない。例えば、上で説明した実施の形態を任意に組み合わせることが可能である。
【0081】
また、上で説明したパケット解析装置7の機能ブロック図は必ずしも実際のプログラムモジュール構成に対応するものではない。
【0082】
また、図5に示した品質データ格納部77に格納されるデータは一例であって、必ずしも上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしてもよい。
【0083】
なお、上で述べたパケット解析装置7は、コンピュータ装置であって、図34に示すように、メモリ2501とCPU2503とハードディスク・ドライブ(HDD)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施例における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。必要に応じてCPU2503は、表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ2501に格納され、必要があればHDD2505に格納される。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及び必要なアプリケーション・プログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【0084】
以上述べた本技術の実施の形態をまとめると以下のとおりになる。
【0085】
第1の態様に係る本パケット解析方法は、音声パケット及び非音声パケットを含むパケットを解析する方法であって、特定のセッションにおけるパケットをキャプチャして記憶部に格納するステップ(図31のS101に相当)と、記憶部に格納されたパケットの各々について当該パケットが音声パケット又は非音声パケットであるか判定し、音声パケットの受信数を計数する受信パケット判定ステップ(図31のS103に相当)と、特定のセッションにおいてパケットロスが存在するか判断し(図31のS105に相当)、パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが音声パケット又は非音声パケットであるか判定し、音声パケットのロス数を計数するロスパケット判定ステップ(図31のS107に相当)とを含む。
【0086】
このようにすれば、音声パケットの受信数及びロス数が計数できるので、音声パケットの伝送品質(例えば、パケットロス率、パケット到達率など)を計測できるようになる。 また、上で述べたロスパケット判定ステップにおいて、非音声パケットの所定の特徴を用いて、ロスしたパケットが音声パケット又は非音声パケットであるか判定するようにしてもよい。非音声パケットは、判別に使用するのに適した特徴があるためである。
【0087】
さらに、非音声パケットが、DTMFイベントを表すためのDTMFパケットである場合もある。そして、非音声パケットの所定の特徴が、DTMFイベントの終了時に送信されるDTMFパケットである終端パケットの再送回数と、当該DTMFイベントが発生した時点からのタイムスタンプで表される継続期間と、DTMFパケットの送出間隔との少なくともいずれかに関する特徴である場合もある。
【0088】
また、上で述べたロスパケット判定ステップが、ロスしたパケットの直後に終端パケットに対する再送パケット又は当該再送パケットを包含するDTMFパケット群が存在するか判断するステップと、ロスしたパケットの直後に再送パケット又はDTMFパケット群が存在する場合、再送パケットに含まれる継続期間をDTMFパケットの送出間隔で除することにより、当該再送パケットを包含するDTMFイベントにおける先頭パケットから終端パケットまでのパケット数を算出するステップと、ロスしたパケットの直後に存在するDTMFパケットの数と、終端パケットの再送回数と、DTMFイベントにおける先頭パケットから終端パケットまでのパケット数とに従って、ロスしたパケットが音声パケット又はDTMFパケットであるか判定するステップとを含むようにしてもよい。このようにすれば、DTMFイベントの前半又は中盤をロスした可能性がある場合に、ロスしたパケットの種別を判定できるようになる。
【0089】
さらに、上で述べたロスパケット判定ステップが、ロスしたパケットの直前に終端パケットに対する再送パケットが存在するか判断するステップと、ロスしたパケットの直前に再送パケットが存在する場合、当該再送パケットに含まれる継続期間に基づき特定される終端パケットの位置と終端パケットの再送回数とに従って、ロスしたパケットが音声パケット又はDTMFパケットであるか判定するステップとを含むようにしてもよい。このようにすれば、DTMFイベントの後半をロスした可能性がある場合に、ロスしたパケットの種別を判定できるようになる。
【0090】
また、上で述べたロスパケット判定ステップが、ロスしたパケットの直前に終端パケットに対する再送パケット以外のDTMFパケットが存在し、且つロスしたパケットの直後に音声パケットが存在するか判断するステップと、ロスしたパケットの直前に再送パケット以外のDTMFパケットが存在し、且つロスしたパケットの直後に音声パケットが存在する場合、少なくとも終端パケットの再送回数分のDTMFパケットをロスしたと判定するステップとを含むようにしてもよい。このようにすれば、終端パケットに対する再送パケットをロスした場合に、ロスしたパケットの少なくとも一部について種別を判定できるようになる。
【0091】
さらに、上で述べたロスパケット判定ステップが、ロスしたパケットの前後のパケットの時間差及びシーケンス番号の差を用いて、ロスしたパケットの送出間隔を算出するステップと、ロスしたパケットの送出間隔が音声パケットの送出間隔と同一であり且つDTMFパケットの送出間隔と異なるという第1条件を満たすか判断し、当該第1条件を満たす場合、当該ロスしたパケットは音声パケットであると判定するステップと、ロスしたパケットの送出間隔が音声パケットの送出間隔と異なり且つDTMFパケットの送出間隔と同一であるという第2条件を満たすか判断し、当該第2条件を満たす場合、当該ロスしたパケットはDTMFパケットであると判定するステップとを含むようにしてもよい。このようにすれば、パケットの送出間隔に従って、ロスしたパケットの種別を判定できるようになる。
【0092】
また、上で述べたロスパケット判定ステップが、音声パケットの送出間隔とDTMFパケットの送出間隔が異なる場合、ロスしたパケットと当該ロスしたパケットの直後のパケットとを含む計算対象パケットのうちの音声パケットの数及び非音声パケットの数を変数とする連立方程式の解を得るための処理を実施し、連立方程式の解から音声パケットのロス数及びDTMFパケットのロス数を算出するステップを含むようにしてもよい。
【0093】
さらに、上で述べたロスパケット判定ステップが、ロスしたパケットの前後のパケットのいずれもが音声パケットであるか判断し、当該前後のパケットのいずれもが音声パケットである場合、ロスしたパケットは音声パケットであると判定するステップと、ロスしたパケットの前後のパケットのいずれもが非音声パケットであるか判断し、当該前後のパケットのいずれもが非音声パケットである場合、ロスしたパケットは非音声パケットであると判定するステップとを含むようにしてもよい。例えばロスしたパケットの数が少なく、ロスしたパケットの前後のパケットの種別が同じ場合には、ロスしたパケットの種別は、前後のパケットと同じである可能性が高いので、より簡単な処理で判定可能となる。なお、前後のパケットの種別が一致しない場合には、上で述べたような非音声パケットの特徴を用いた処理を実施することにより、ロスしたパケットの種別を判定することができる。 また、上で述べた受信パケット判定ステップが、非音声パケットの受信数を計数するステップを含むようにしてもよい。そして、上で述べたロスパケット判定ステップが、非音声パケットのロス数を計数するステップを含むようにしてもよい。このようにすれば、非音声パケットの伝送品質についても計測できるようになる。
【0094】
第2の態様に係るパケット解析装置は、音声パケット及び非音声パケットを含むパケットを解析する装置であって、特定のセッションにおけるパケットをキャプチャして記憶部(図32の「記憶部」)に格納するキャプチャ手段(図32の「キャプチャ部」に相当)と、記憶部に格納されたパケットの各々について当該パケットが音声パケット又は非音声パケットであるか判定し、音声パケットの受信数を計数する受信パケット判定手段(図32の「受信パケット判定部」に相当)と、特定のセッションにおいてパケットロスが存在するか判断し、パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが音声パケット又は非音声パケットであるか判定し、音声パケットのロス数を計数するロスパケット判定手段(図32の「ロスパケット判定部」に相当)とを有する。
【0095】
なお、上で述べたような処理をコンピュータに実施させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブル・ディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶部に格納される。また、処理途中のデータについては、コンピュータのメモリ等の記憶部に一時保管される。
【0096】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【0097】
(付記1)
音声パケット及び非音声パケットを含むパケットを解析する方法であって、
特定のセッションにおける前記パケットをキャプチャして記憶部に格納するステップと、
前記記憶部に格納された前記パケットの各々について当該パケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットの受信数を計数する受信パケット判定ステップと、
前記特定のセッションにおいてパケットロスが存在するか判断し、前記パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットのロス数を計数するロスパケット判定ステップと、
を含み、コンピュータにより実行されるパケット解析方法。
【0098】
(付記2)
前記ロスパケット判定ステップにおいて、前記非音声パケットの所定の特徴を用いて、前記ロスしたパケットが前記音声パケット又は前記非音声パケットであるか判定する
付記1記載のパケット解析方法。
【0099】
(付記3)
前記非音声パケットが、DTMFイベントを表すためのDTMFパケットであり、
前記非音声パケットの所定の特徴が、前記DTMFイベントの終了時に送信される前記DTMFパケットである終端パケットの再送回数と、当該DTMFイベントが発生した時点からのタイムスタンプで表される継続期間と、前記DTMFパケットの送出間隔との少なくともいずれかに関する特徴である
付記2記載のパケット解析方法。
【0100】
(付記4)
前記ロスパケット判定ステップが、
前記ロスしたパケットの直後に前記終端パケットに対する再送パケット又は当該再送パケットを包含するDTMFパケット群が存在するか判断するステップと、
前記ロスしたパケットの直後に前記再送パケット又は前記DTMFパケット群が存在する場合、前記再送パケットに含まれる前記継続期間を前記DTMFパケットの送出間隔で除することにより、当該再送パケットを包含する前記DTMFイベントにおける先頭パケットから終端パケットまでのパケット数を算出するステップと、
前記ロスしたパケットの直後に存在する前記DTMFパケットの数と、前記終端パケットの再送回数と、前記DTMFイベントにおける先頭パケットから終端パケットまでのパケット数とに従って、前記ロスしたパケットが前記音声パケット又は前記DTMFパケットであるか判定するステップと、
を含む、付記3記載のパケット解析方法。
【0101】
(付記5)
前記ロスパケット判定ステップが、
前記ロスしたパケットの直前に前記終端パケットに対する再送パケットが存在するか判断するステップと、
前記ロスしたパケットの直前に前記再送パケットが存在する場合、当該再送パケットに含まれる前記継続期間に基づき特定される前記終端パケットの位置と前記終端パケットの再送回数とに従って、前記ロスしたパケットが前記音声パケット又は前記DTMFパケットであるか判定するステップと、
を含む、付記3又は4記載のパケット解析方法。
【0102】
(付記6)
前記ロスパケット判定ステップが、
前記ロスしたパケットの直前に前記終端パケットに対する再送パケット以外の前記DTMFパケットが存在し、且つ前記ロスしたパケットの直後に前記音声パケットが存在するか判断するステップと、
前記ロスしたパケットの直前に前記再送パケット以外の前記DTMFパケットが存在し、且つ前記ロスしたパケットの直後に前記音声パケットが存在する場合、少なくとも前記終端パケットの再送回数分の前記DTMFパケットをロスしたと判定するステップと、
を含む、付記3乃至5のいずれか1つ記載のパケット解析方法。
【0103】
(付記7)
前記ロスパケット判定ステップが、
前記ロスしたパケットの前後のパケットの時間差及びシーケンス番号の差を用いて、前記ロスしたパケットの送出間隔を算出するステップと、
前記ロスしたパケットの送出間隔が前記音声パケットの送出間隔と同一であり且つ前記DTMFパケットの送出間隔と異なるという第1条件を満たすか判断し、当該第1条件を満たす場合、当該ロスしたパケットは前記音声パケットであると判定するステップと、
前記ロスしたパケットの送出間隔が前記音声パケットの送出間隔と異なり且つ前記DTMFパケットの送出間隔と同一であるという第2条件を満たすか判断し、当該第2条件を満たす場合、当該ロスしたパケットは前記DTMFパケットであると判定するステップと、
を含む、付記3乃至6のいずれか1つ記載のパケット解析方法。
【0104】
(付記8)
前記ロスパケット判定ステップが、
前記音声パケットの送出間隔と前記DTMFパケットの送出間隔が異なる場合、前記ロスしたパケットと当該ロスしたパケットの直後のパケットとを含む計算対象パケットのうちの前記音声パケットの数及び前記非音声パケットの数を変数とする連立方程式の解を得るための処理を実施し、前記連立方程式の解から前記音声パケットのロス数及び前記DTMFパケットのロス数を算出するステップ
を含む、付記3乃至6のいずれか1つ記載のパケット解析方法。
【0105】
(付記9)
前記ロスパケット判定ステップが、
前記ロスしたパケットの前後のパケットのいずれもが前記音声パケットであるか判断し、当該前後のパケットのいずれもが前記音声パケットである場合、前記ロスしたパケットは前記音声パケットであると判定するステップと、
前記ロスしたパケットの前後のパケットのいずれもが前記非音声パケットであるか判断し、当該前後のパケットのいずれもが前記非音声パケットである場合、前記ロスしたパケットは前記非音声パケットであると判定するステップと、
を含む、付記1記載のパケット解析方法。
【0106】
(付記10)
前記受信パケット判定ステップが、
前記非音声パケットの受信数を計数するステップ
を含み、
前記ロスパケット判定ステップが、前記非音声パケットのロス数を計数するステップ
を含む、付記1乃至9のいずれか1つ記載のパケット解析方法。
【0107】
(付記11)
音声パケット及び非音声パケットを含むパケットを解析するためのプログラムであって、
特定のセッションにおける前記パケットをキャプチャして記憶部に格納するステップと、
前記記憶部に格納された前記パケットの各々について当該パケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットの受信数を計数する受信パケット判定ステップと、
前記特定のセッションにおいてパケットロスが存在するか判断し、前記パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットのロス数を計数するロスパケット判定ステップと、
をコンピュータに実行させるためのパケット解析プログラム。
【0108】
(付記12)
音声パケット及び非音声パケットを含むパケットを解析する装置であって、
特定のセッションにおける前記パケットをキャプチャして記憶部に格納するキャプチャ手段と、
前記記憶部に格納された前記パケットの各々について当該パケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットの受信数を計数する受信パケット判定手段と、
前記特定のセッションにおいてパケットロスが存在するか判断し、前記パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットのロス数を計数するロスパケット判定手段と、
を有するパケット解析装置。
【符号の説明】
【0109】
1 パケット通信ネットワーク 3a,3b,3c ネットワーク
5 TAP 7 パケット解析装置
71 パケットキャプチャ部 72 パケット解析部
73 音声・非音声判定部 74 ロスパケット判定部
75 品質算出部 76 出力部
77 品質データ格納部
【技術分野】
【0001】
本技術は、パケット解析技術に関する。
【背景技術】
【0002】
近年、情報通信技術の発展に伴い、パケット通信ネットワークを介した双方向通信が活発に行われている。特に、パケット化した音声データをパケット通信ネットワークを介して送受信するVoIP(Voice over Internet Protocol)を利用してインターネットなどのIP(Internet Protocol)ネットワーク経由での通話を行うIP電話が普及してきている。そのため、IP電話の音声品質の監視・管理が、IP電話サービスを提供するサービス事業者等にとって重要となってきている。
【0003】
なお、IP電話の音声品質を計測するための技術として、RTP(Real-time Transport Protocol)セッション毎に単位時間当たりのパケットロス率を算出する技術が存在している。例えば図33に示すように、一定期間におけるパケットの受信数とロス数とが計数され、パケットロス率が算出される。なお、図33において、黒色かつ実線枠の丸は受信パケットを示し、白色かつ点線枠の丸はロスパケットを示している。また、図33は、100個中、3個のパケット(シーケンス番号4、11及び15のパケット)をロスした場合の一例を示しており、パケットロス率は3.0%となっている。なお、パケットをロスしたか否かは、パケットに含まれる例えばシーケンス番号から判断可能である。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2003−249945号公報
【特許文献2】特開平11−259099号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
一方で、IP電話の通話中には、音声信号のみならず、非音声信号であるDTMF(Dial Tone Multi Frequency)信号などが流れる場合があり、音声パケットとDTMFパケット(すなわち、非音声パケット)とが入り混じって同一のRTPセッションに流れることとなる。
【0006】
しかしながら、上で述べた技術では、音声品質を計測する際、音声パケットと非音声パケットとを分離して解析するようにはなっていない。また、従来技術には、ロスパケットが音声パケット又は非音声パケットであるか判定するような技術は存在しない。すなわち、従来技術では、音声パケットと非音声パケットとが同一のRTPセッションに流れる場合、音声品質の指標となる、音声パケットの伝送品質を正確に計測することができない。
【0007】
従って、本技術の目的は、音声パケットの伝送品質を正確に計測できるようにすることである。
【課題を解決するための手段】
【0008】
本パケット解析方法は、音声パケット及び非音声パケットを含むパケットを解析する方法であって、特定のセッションにおけるパケットをキャプチャして記憶部に格納するステップと、記憶部に格納されたパケットの各々について当該パケットが音声パケット又は非音声パケットであるか判定し、音声パケットの受信数を計数する受信パケット判定ステップと、特定のセッションにおいてパケットロスが存在するか判断し、パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが音声パケット又は非音声パケットであるか判定し、音声パケットのロス数を計数するロスパケット判定ステップとを含む。なお、「ロスしたパケットの近傍のパケット」とは、ロスしたパケット群の前後のシーケンス番号を持つパケットを指す。
【発明の効果】
【0009】
音声パケットの伝送品質を正確に計測できるようになる。
【図面の簡単な説明】
【0010】
【図1】図1は、本技術の実施の形態の概要を説明するための図である。
【図2】図2は、本技術の実施の形態の概要を説明するための図である。
【図3】図3は、本技術の実施の形態に係るシステム構成図である。
【図4】図4は、本技術の実施の形態に係るパケット解析装置の機能ブロック図である。
【図5】図5は、品質データ格納部に格納されるデータの一例を示す図である。
【図6】図6は、パケット解析装置の全体の処理フローを示す図である。
【図7】図7は、RTPパケットのフォーマットの一例を示す図である。
【図8】図8は、伝送品質算出結果画面の画面例を示す図である。
【図9】図9は、伝送品質のログデータの一例を示す図である。
【図10】図10は、DTMFイベントを説明するための図である。
【図11】図11は、図10のDTMFイベントにおけるDTMFパケットの内容を示す図である。
【図12】図12は、第1の実施の形態におけるロスパケット判定処理1の処理フローを示す図である。
【図13】図13は、DTMFイベントの前半又は中盤をロスしたケースの例を示す図である。
【図14】図14は、ロスパケット判定処理1を説明するための具体例を示す図である。
【図15】図15は、第2の実施の形態におけるロスパケット判定処理2の処理フローを示す図である。
【図16】図16は、ロスパケットの直前に再送パケットが存在するケースの例を示す図である。
【図17】図17は、ロスパケット判定処理2を説明するための具体例を示す図である。
【図18】図18は、第3の実施の形態におけるロスパケット判定処理3の処理フローを示す図である。
【図19】図19は、再送パケットをロスしたケースの一例を示す図である。
【図20】図20は、ロスパケット判定処理3を説明するための具体例を示す図である。
【図21】図21は、ロスパケット判定処理3を説明するための具体例を示す図である。
【図22】図22は、第4の実施の形態におけるロスパケット判定処理4の処理フローを示す図である。
【図23】図23は、ロスパケット判定処理4を説明するための具体例を示す図である。
【図24】図24は、ロスパケット判定処理4を説明するための具体例を示す図である。
【図25】図25は、第5の実施の形態におけるロスパケット判定処理5の処理フローを示す図である。
【図26】図26は、ロスパケット判定処理5を説明するための具体例を示す図である。
【図27】図27は、第6の実施の形態におけるロスパケット判定処理6の処理フローを示す図である。
【図28】図28は、ロスパケットの前後のパケットが両方とも音声パケットである場合の一例を示す図である。
【図29】図29は、ロスパケットの前後のパケットが両方ともDTMFパケットである場合の一例を示す図である。
【図30】図30は、ロスパケットの前後のパケットの種別が異なる場合の一例を示す図である。
【図31】図31は、第1の態様に係るパケット解析方法の処理フローを示す図である。
【図32】図32は、第2の態様に係るパケット解析装置の機能ブロック図である。
【図33】図33は、従来技術を説明するための図である。
【図34】図34は、コンピュータの機能ブロック図である。
【発明を実施するための形態】
【0011】
[本技術の実施の形態の概要]
まず、図1及び2を用いて、本技術の実施の形態の概要を説明する。図1に、パケット通信ネットワークを介してIP電話機間を流れる一連のパケットの一例を示す。本技術の実施の形態では、RTPセッションを流れるパケットをキャプチャし、取得したパケットについては、パケットに含まれるペイロードタイプに従ってパケットの種別を判定する。さらに、本技術の実施の形態では、パケットロスが存在するか判断し、パケットロスが存在する場合には、ロスパケットの種別を判定するようにする。なお、RTPセッションを流れるパケットには連続したシーケンス番号が付与されるので、パケットに含まれるシーケンス番号に従ってパケットをロスしたか否かを判断する。これにより、例えば図2に示すように、音声パケットの受信数及びロス数とを計数することができ、音声パケットのロス率を正確に算出できるようになる。なお、図2は、100個中、3個のパケット(シーケンス番号4、11及び15のパケット)をロスしており、ロスした3個のパケットのうち1個が音声パケット、2個がDTMFパケット(非音声パケット)であった場合の例を示す。従って、図2の例では、1÷(90+1)≒1.1%が、音声パケットのロス率として算出される。なお、図1及び図2において、黒色かつ実線枠の丸は受信パケットを示し、白色かつ点線枠の丸はロスパケットを示し、灰色かつ実線枠の丸は音声パケットを示し、斜めの格子模様かつ実線枠の丸はDTMFパケットを示している(以下同じ)。以下、本技術の実施の形態について詳細に説明する。
【0012】
[実施の形態1]
図3に、本技術の実施の形態に係るシステム構成図を示す。図3において、パケット通信ネットワーク1には、ネットワーク3aとネットワーク3bとネットワーク3cとが接続されている。そして、各ネットワーク3には、IP電話機及びPCが接続されている。例えば、ネットワーク3及びパケット通信ネットワーク1を介して、IP電話機間での通話や、PC間でのデータ通信が可能となっている。また、図3では、パケット通信ネットワーク1とネットワーク3aとの間に観測地点が設けられており、パケット通信ネットワーク1とネットワーク3aとは、観測地点に設置されているTAP(タップ)5を介して接続されている。また、観測地点には、さらにパケット解析装置7が設置されており、観測地点を通過するパケットをTAP5を介してキャプチャするようになっている。なお、図3では、観測地点が1箇所の例を示しているが、2箇所以上存在する場合もある。
【0013】
図4に、図3に示したパケット解析装置7の機能ブロック図を示す。パケット解析装置7は、パケットキャプチャ部71と、パケット解析部72と、音声・非音声判定部73と、ロスパケット判定部74と、品質算出部75と、出力部76と、品質データ格納部77とを有する。
【0014】
なお、パケットキャプチャ部71は、観測地点を流れるパケットをTAP5を介してキャプチャし、パケット解析部72に出力する。パケット解析部72は、パケットキャプチャ部71からのパケットを受信すると、パケットのヘッダを解析することにより、RTPパケットであるか否か判別し、RTPパケットである場合には記憶部(図示せず)に格納する。また、パケット解析部72は、キャプチャしたパケットが音声パケット又はDTMFパケットであるか判定するよう音声・非音声判定部73に指示する。音声・非音声判定部73は、パケット解析部72からの指示を受信すると、記憶部に格納されたパケットの各々について、当該パケットのヘッダに含まれるペイロードタイプに従って、当該パケットが音声パケット又はDTMFパケットであるか判定し、音声パケット及びDTMFパケットの受信数を計数する。なお、音声パケット及びDTMFパケットの受信数は、品質データ格納部77に格納される。また、音声・非音声判定部73は、後で説明するロスパケット判定処理を開始するようロスパケット判定部74に指示する。ロスパケット判定部74は、音声・非音声判定部73からの指示を受信すると、記憶部に格納されたパケットに基づき、パケットロスが存在するか判断する。そして、ロスパケット判定部74は、パケットロスが存在する場合には、ロスパケット判定処理を実施し、音声パケット及びDTMFパケットのロス数を計数する。なお、音声パケット及びDTMFパケットのロス数は、品質データ格納部77に格納される。また、ロスパケット判定部74は、ロス率やパケット到達率などの伝送品質を算出するよう品質算出部75に指示する。品質算出部75は、ロスパケット判定部74からの指示を受信すると、品質データ格納部77に格納されている受信数及びロス数を用いて音声パケット及びDTMFパケットの伝送品質を算出し、品質データ格納部77に格納する。また、品質算出部75は、品質データ格納部77に格納されているデータを出力するよう出力部76に指示する。出力部76は、品質算出部75からの指示を受信すると、品質データ格納部77に格納されているデータに基づき出力用のデータを生成し、表示装置に表示したり、ユーザ端末(図示せず)に送信したりする。
【0015】
図5に、品質データ格納部77に格納されるデータの一例を示す。図5の例では、品質データ格納部77には、音声パケット及びDTMFパケットの各々について、受信数とロス数とロス率とが格納される。さらに、品質データ格納部77には、音声パケット及びDTMFパケットの各々についてのパケット到達率が格納されたり、不明パケットのロス数が格納される場合もある。なお、品質データ格納部77には、図5に示したようなデータが、RTPセッション毎に格納される。また、一定間隔で伝送品質を計測する場合には、区間毎に格納するようにしてもよい。なお、本実施例では、音声パケットに関する情報のみならず、全パケットに関する情報やDTMFパケットに関する情報、不明パケットに関する情報等も品質データ格納部77に格納しているが、音声パケットに関する情報のみを格納するようにしてもよいし、音声パケットに関する情報と、全パケットに関する情報、DTMFパケットに関する情報、不明パケットに関する情報のいずれかのみとを格納するようにしてもよい。他の実施の形態においても同様である。
【0016】
次に、図6乃至図14を用いて、第1の実施の形態におけるパケット解析装置7の処理について説明する。図6にパケット解析装置7の全体の処理フローを示す。まず、パケットキャプチャ部71が、ネットワーク上を流れるパケットをTAP5を介してキャプチャし(図6のS1)、パケット解析部72に出力する。そして、パケット解析部72は、パケットキャプチャ部71からパケットを受信すると、RTPパケットであるか否か判別し、RTPパケットである場合には、記憶部に格納する(図6のS3)。また、パケット解析部72は、定期的に又は任意のタイミングで、キャプチャしたパケットが音声パケット又はDTMFパケットであるか判定するよう音声・非音声判定部73に指示する。例えば、一定間隔で伝送品質を計測するように予め設定されている場合には、その間隔で指示を行う。
【0017】
そして、音声・非音声判定部73は、パケット解析部72からの指示を受信すると、記憶部に格納されたRTPパケットの各々について、RTPパケットのヘッダに含まれるペイロードタイプに基づき、当該パケットが音声パケット又はDTMFパケットであるか判定し、音声パケット及びDTMFパケットの受信数を計数する(図6のS5)。なお、音声パケット及びDTMFパケットの受信数は、品質データ格納部77に格納される。また、例えば一定間隔で伝送品質を計測するように設定されている場合には、前回の処理以降にキャプチャしたパケットについて判定を行い、受信数を計数する。
【0018】
図7に、RTPパケットのフォーマットの一例を示す。なお、図7は、RTPパケットがDTMFパケットである場合の例を示す。図7において、RTPパケットには、RTPヘッダとRTPペイロードとが含まれる。そして、RTPヘッダには、M(マーカー)ビットとペイロードタイプとシーケンス番号とタイムスタンプとが含まれ、RTPペイロードには、イベント番号とE(End)ビットと継続期間とが含まれる。なお、図7では、本実施の形態における処理に関連するデータ項目のみ示している。また、RTPパケット自体は従来と変わらないため、詳細な説明は省略する。
【0019】
そして、音声・非音声判定部73は、ロスパケット判定処理を開始するようロスパケット判定部74に指示する。
【0020】
そして、ロスパケット判定部74は、音声・非音声判定部73からの指示を受信すると、記憶部に格納されたパケットのシーケンス番号に基づき、パケットロスが存在するか判断する(図6のS7)。そして、パケットロスを検出した場合(図6のS7:Yes)、ロスパケット判定部74は、記憶部に格納されたパケットに基づき、ロスパケット判定処理を実施する(図6のS9)。なお、ロスパケット判定処理の詳細は後で説明するが、本処理を実施することで、音声パケット及びDTMFパケットのロス数が計数され、品質データ格納部77に格納される。そして、ロスパケット判定部74は、ロスパケット判定処理を実施した後、ロス率やパケット到達率などの伝送品質を算出するよう品質算出部75に指示する。なお、処理は図6のS11に移行する。
【0021】
一方、パケットロスを未検出の場合(図6のS7:No)、図6のS9をスキップし、図6のS11の処理に移行する。なお、ロスパケット判定部74は、ロス率やパケット到達率などの伝送品質を算出するよう品質算出部75に指示する。
【0022】
そして、品質算出部75は、ロスパケット判定部74からの指示を受信すると、品質データ格納部77に格納されている受信数及びロス数を用いて、ロス率やパケット到達率などの伝送品質を算出し、品質データ格納部77に格納する(図6のS11)。例えば品質データ格納部77に格納されている受信数及びロス数が図5のような値であった場合には、音声パケットのロス率は、1÷(90+1)≒1.1%となり、DTMFパケットのロス率は、2÷(7+2)≒22.2%となる。また、品質算出部75は、全体のロス率やパケット到達率が必要であれば、全体のロス率を算出し、品質データ格納部77に格納する。また、一定間隔で伝送品質を計測するように設定されている場合には、ロス率やパケット到達率の平均値を算出する場合もある。その後、品質算出部75は、品質データ格納部77に格納されたデータを出力するよう出力部76に指示する。
【0023】
そして、出力部76は、品質算出部75からの指示を受信すると、品質データ格納部77に格納されているデータを用いて伝送品質算出結果画面データを生成し、表示装置等に表示する(図6のS13)。例えば図8に示すような伝送品質算出結果画面が表示される。図8の伝送品質算出結果画面では、全体(トータル)のロス数及びロス率と、音声パケットのロス数及びロス率と、DTMFパケットのロス数及びロス率とが表示されている。なお、図8では図示していないが、不明パケットのロス数を表示する場合もある。また、本実施例では、音声パケットに関する情報のみならず、全パケットに関する情報やDTMFパケットに関する情報を、伝送品質算出結果画面に表示しているが、音声パケットに関する情報のみを表示するようにしてもよいし、音声パケットに関する情報と、全パケットに関する情報、DTMFパケットに関する情報、不明パケットに関する情報のいずれかのみとを表示するようにしてもよい。他の実施例においても同様である。
【0024】
また、例えば、一定間隔で伝送品質を計測するように設定されている場合には、計測した伝送品質のログデータを生成し、品質データ格納部77に格納するようにしてもよい。図9に伝送品質のログデータの一例を示す。図9では、ログデータには、全体(トータル)のロス情報と、音声パケットのロス情報と、DTMFパケットのロス情報と、不明パケットのロス情報とが含まれる。なお、トータルのロス情報には、ロス数(loss-packet)と、受信数(recv-packet)と、計測されたロス率の中の最大ロス率(loss-rate-max)と、計測されたロス率の中の最小ロス率(loss-rate-min)と、計測されたロス率の平均値(loss-rate-avg)と、・・・とが含まれる。また、音声パケットのロス情報には、受信数(voice-recv-packet)と、ロス数(voice-loss-packet)と、計測されたロス率の中の最大ロス率(voice-loss-rate-max)と、計測されたロス率の中の最小ロス率(voice-loss-rate-min)と、計測されたロス率の平均値(voice-loss-rate-avg)とが含まれる。また、DTMFパケットのロス情報には、受信数(dtmf-recv-packet)と、ロス数(dtmf-loss-packet)と、計測されたロス率の中の最大ロス率(dtmf-loss-rate-max)と、計測されたロス率の中の最小ロス率(dtmf-loss-rate-min)と、計測されたロス率の平均値(dtmf-loss-rate-avg)とが含まれる。また、不明パケットのロス情報には、ロス数(unknown-loss-packet)が含まれる。
【0025】
次に、図10乃至図14を用いて、図6のS9におけるロスパケット判定処理について説明する。なお、具体的な処理フローを説明する前に、DTMFイベント及びDTMFパケットについて説明しておく。DTMFイベントは、1回のプッシュ音に対応して生成され、複数のDTMFパケットからなる。図10及び図11に、ボタン「5」が押された場合のDTMFイベントの一例を示す。なお、図11は、図10に示す6個のDTMFパケットのそれぞれの内容を示している。図10に示すように、DTMFでは、終端パケットが2回再送されるようになっており、この再送されるパケット(以下、再送パケットと呼ぶ)を含む一連のDTMFパケット(図10では、6個のDTMFパケット)で1つのDTMFイベントが構成される。なお、図10において、斜めの格子模様かつ実線枠の丸のうち、「R」の文字が付されているものは、再送パケットを示している(以下同じ)。そして、再送パケットのEビットには必ず1が設定される。また、図10及び図11に示すように、再送パケットの継続期間には、終端パケットの継続期間と同じ値が設定される。なお、継続期間は、プッシュボタンが押されてからの時間であり、タイムスタンプで表される。これらの特徴を前提に、以下、本実施の形態におけるロスパケット判定処理の具体的な処理フロー(図12)を説明する。
【0026】
まず、ロスパケット判定部74は、記憶部に格納されたパケットに従って、ロスパケットの直後に、再送パケット又は再送パケットを包含するDTMFパケット群が存在するか判断する(図12のS21)。すなわち、図12のS21では、DTMFイベントの前半又は中盤をロスした可能性があるか判断する。ここでは、記憶部に格納されたパケットのペイロードタイプ、Eビット及び継続期間などに基づき判断する。
【0027】
図13にDTMFイベントの前半又は中盤をロスしたケースの例を示す。なお、図13の各ケースでは、右から左に向かって、DTMFパケットのシーケンス番号が昇順に付与されているものとする。ケース1は、ロスパケットの直後に、DTMFパケットが3個(そのうちの2個は再送パケット)存在し且つロスパケットの直前に音声パケットが存在するケースを示す。また、ケース2は、ロスパケットの直後に、再送パケットが2個存在し且つロスパケットの直前に音声パケットが存在するケースを示す。さらに、ケース3は、ロスパケットの直後に、再送パケットが1個存在し且つロスパケットの直前に音声パケットが存在するケースを示す。また、ケース4は、ロスパケットの直後に、DTMFパケットが3個(そのうちの2個は再送パケット)存在し且つロスパケットの直前にDTMFパケットが存在するケースを示す。さらに、ケース5は、ロスパケットの直後に、再送パケットが2個存在し且つロスパケットの直前にDTMFパケットが存在するケースを示す。また、ケース6は、ロスパケットの直後に、再送パケットが1個存在し且つロスパケットの直前にDTMFパケットが存在するケースを示す。
【0028】
そして、ロスパケットの直後に、再送パケット及び再送パケットを含むDTMFパケット群のいずれも存在しない場合(図12のS21:No)、本処理を終了し、元の処理に戻る。
【0029】
一方、ロスパケットの直後に、再送パケット又は再送パケットを含むDTMFパケット群が存在する場合(図12のS21:Yes)、ロスパケット判定部74は、その再送パケットのペイロード部から継続期間を取得する(図12のS23)。なお、図12のS23以降の処理については、図14に示す具体例を用いて説明する。図14は、5個のパケットをロスしており、ロスパケットの直後に4個のDTMFパケットが存在し且つロスパケットの直前に音声パケットが存在する例を示す。なお、図14では、右から左に向かって、DTMFパケットのシーケンス番号が昇順に付与されているものとする。図14の例では、図12のS23の処理により、640が再送パケットの継続期間として取得される。なお、上で述べたように継続期間は、タイムスタンプで表される。
【0030】
そして、ロスパケット判定部74は、DTMFパケットの送出間隔を取得する(図12のS25)。具体的には、ロスパケットの直後のDTMFパケットと、当該DTMFパケットの1つ後ろのDTMFパケット(すなわち、図14における終端パケット)との継続期間の差を送出間隔として取得する。すなわち、図14の例では、ロスパケットの直後のDTMFパケットの継続期間は480であり、当該DTMFパケットの1つ後ろのDTMFパケットの継続期間は640であり、図12のS25の処理により、その差である160が送出間隔として取得される。
【0031】
なお、RTPセッションを流れるDTMFパケットは、そのRTPセッションにおいては全て同じ間隔で送出される。例えば、そのRTPセッションにおいて正常に流れたDTMFイベントを検出し、そのDTMFイベントにおいて隣接する2個のDTMFパケットの継続期間の差を送出間隔として取得するようにしてもよい。
【0032】
そして、ロスパケット判定部74は、図12のS23において取得した継続期間と図12のS25において取得した送出間隔とを用いて、先頭パケットから終端パケットまでのパケット数を算出する(図12のS27)。具体的には、継続期間を送出間隔で除した値を、先頭パケットから終端パケットまでのパケット数として算出する。図14の例では、640÷160=4個が算出される。
【0033】
そして、ロスパケット判定部74は、図12のS27において算出したパケット数と、ロスパケットの直後に存在するDTMFパケットの数と、終端パケットの再送回数とに従って、ロスパケットの種別を判定し、音声パケット及びDTMFパケットのロス数を計数する(図12のS29)。具体的には、まず、ロスパケットの直後に存在するDTMFパケットの数と、終端パケットの再送回数とから終端パケットの位置を特定する。図14の例では、ロスパケットの直後に存在する4個のDTMFパケットのうち前から2個目のDTMFパケットが終端パケットとして特定される。そして、図12のS27において算出したパケット数に従って先頭パケットの位置を特定する。図14の例では、5個のロスパケットのうち前から4個目のパケットが先頭パケットとして特定される。従って、図14では、5個のロスパケットのうち後ろの2個がDTMFパケットであり、前の3個は音声パケットであると判定される。なお、音声パケット及びDTMFパケットのロス数は、品質データ格納部77に格納される。その後、本処理を終了し、元の処理に戻る。
【0034】
なお、複数箇所にパケットロスが存在する場合には、各箇所について上で述べたような処理を実施し、集計したロス数を品質データ格納部77に格納する。
【0035】
以上のような処理を実施することにより、DTMFイベントの前半又は中盤をロスした可能性がある場合に、ロスパケットの種別を判定することができる。
【0036】
[実施の形態2]
次に、図15乃至図17を用いて本技術の第2の実施の形態を説明する。なお、第2の実施の形態は、DTMFイベントの後半をロスしている可能性がある場合に、ロスパケットの種別を判定するものである。
【0037】
本実施の形態に係るシステム構成は、図3に示したシステム構成図と同じである。また、本実施の形態に係るパケット解析装置7の構成は、図4に示した機能ブロック図と同じである。そして、パケット解析装置7の処理は、基本的には第1の実施の形態で説明した処理内容と同じであるが、図6のS9の代わりに図15に示すような処理(ロスパケット判定処理2と呼ぶ)を実施する。以下、ロスパケット判定処理2について説明する。
【0038】
まず、ロスパケット判定部74が、記憶部に格納されたパケットに従って、ロスパケットの直前に再送パケットが存在するか判断する(図15のS31)。すなわち、図15のS31では、DTMFイベントの後半をロスした可能性があるか判断する。
【0039】
図16に、ロスパケットの直前に再送パケットが存在するケースの例を示す。なお、図16の各ケースでは、右から左に向かって、DTMFパケットのシーケンス番号が昇順に付与されているものとする。ケース7は、ロスパケットの直後に音声パケットが存在し且つロスパケットの直前に再送パケットが1個存在するケースを示す。また、ケース8は、ロスパケットの直後に音声パケットが存在し且つロスパケットの直前に再送パケットが2個存在するケースを示す。
【0040】
そして、ロスパケットの直前に再送パケットが存在しない場合(図15のS31:No)、本処理を終了し、元の処理に戻る。
【0041】
一方、ロスパケットの直前に再送パケットが存在する場合(図15のS31:Yes)、ロスパケット判定部74は、その再送パケットから継続期間を取得し、当該継続期間に基づき終端パケットの位置を特定する(図15のS33)。なお、図15のS33以降の処理については、図17に示す具体例を用いて説明する。図17は、5個のパケットをロスしており、ロスパケットの直後に音声パケットが存在し且つロスパケットの直前に再送パケットが1個存在する例を示す。なお、図17では、右から左に向かって、DTMFパケットのシーケンス番号が昇順に付与されているものとする。なお、上でも述べたが、再送パケットの継続期間には、終端パケットと同じ値が設定される。従って、再送パケットの継続期間と同じ値を持つDTMFパケットのうちシーケンス番号が最も小さいパケットを終端パケットとして特定する。図17では、ロスパケットの直前に存在する5個のDTMFパケットのうち前から4個目のパケットが終端パケットとして特定される。
【0042】
そして、ロスパケット判定部74は、終端パケットの位置と終端パケットの再送回数とに従って、ロスパケットの種別を判定し、音声パケット及びDTMFパケットのロス数を計数する(図15のS35)。図17の例では、本来2個存在すべき再送パケットが1個しか存在しないため、再送パケットを1個ロスしたことが分かる。すなわち、図17では、5個のロスパケットのうち先頭のパケットがDTMFパケットであり、残りの4個のパケットが音声パケットであると判定される。なお、音声パケット及びDTMFパケットのロス数は、品質データ格納部77に格納される。その後、本処理を終了し、元の処理に戻る。
【0043】
以上のような処理を実施することにより、DTMFイベントの後半をロスした可能性がある場合に、ロスパケットの種別を判定することができる。
【0044】
[実施の形態3]
次に、図18乃至図21を用いて本技術の第3の実施の形態を説明する。なお、第3の実施の形態は、再送パケットをロスした場合に、ロスパケットの一部の種別を判定するものである。
【0045】
本実施の形態に係るシステム構成は、図3に示したシステム構成図と同じである。また、本実施の形態に係るパケット解析装置7の構成は、図4に示した機能ブロック図と同じである。そして、パケット解析装置7の処理は、基本的には第1の実施の形態で説明した処理内容と同じであるが、図6のS9の代わりに図18に示すような処理(ロスパケット判定処理3と呼ぶ)を実施する。以下、ロスパケット判定処理3について説明する。
【0046】
まず、ロスパケット判定部74が、記憶部に格納されたパケットに従って、再送パケットをロスしたか判断する(図18のS41)。具体的には、ロスパケットの直後に音声パケットが存在し且つロスパケットの直前に再送パケット以外のDTMFパケットが存在するか判断する。
【0047】
図19に、再送パケットをロスしたケースの一例を示す。なお、図19のケース9では、右から左に向かって、DTMFパケットのシーケンス番号が昇順に付与されているものとする。ケース9は、ロスパケットの直後に音声パケットが存在し且つロスパケットの直前に再送パケット以外のDTMFパケットが存在するケースを示す。
【0048】
そして、再送パケットをロスしていないと判断した場合(図18のS41:No)、本処理を終了し、元の処理に戻る。
【0049】
一方、再送パケットをロスしていると判断した場合(図18のS41:Yes)、ロスパケット判定部74は、終端パケットの再送回数をDTMFパケットのロス数として計数し、ロスパケットの数とDTMFパケットとのロス数との差を音声パケット又は不明パケットのロス数として計数する(図18のS43)。なお、再送パケットをロスしているということは、少なくとも再送回数分のDTMFパケットをロスしているということになる。すなわち、図18のS43では、終端パケットの再送回数をDTMFパケットのロス数として計数し、残りのロスパケットの数を音声パケット(又は不明パケット)のロス数として計数する。例えばケース9(図19)のような形でパケットをロスしている場合、図20に示すように、DTMFパケットのロス数を2、音声パケット(又は不明パケット)のロス数を3として計数する。なお、音声パケット、DTMFパケット及び不明パケットのロス数は、品質データ格納部77に格納される。その後、本処理を終了し、元の処理に戻る。
【0050】
なお、例えばケース9(図19)のような形でパケットをロスした場合、ロスパケットの内訳は、図21に示す4つのパターンのいずれかである。ここで、音声パケットのロス数は、最大の場合は3個、最小の場合は0個となる。従って、音声パケットのロス数を、範囲を持たせた形で計数するようにしてもよい。この場合には、最大ロス数の場合の伝送品質と、最小ロス数の場合の伝送品質とを算出して出力するようにする。
【0051】
以上のような処理を実施することにより、再送パケットをロスした場合に、ロスパケットの少なくとも一部について種別を判定できる。音声パケットのロス率の取り得る範囲を把握できるようになる。
【0052】
[実施の形態4]
次に、図22乃至図24を用いて本技術の第4の実施の形態を説明する。なお、第4の実施の形態は、音声パケットの送出間隔とDTMFパケットの送出間隔とが異なる場合に、ロスパケットの種別を判定するものである。本実施の形態では、音声パケットの送出間隔が20msであり、DTMFパケットの送出間隔が40msであるものとする。
【0053】
本実施の形態に係るシステム構成は、図3に示したシステム構成図と同じである。また、本実施の形態に係るパケット解析装置7の構成は、図4に示した機能ブロック図と同じである。そして、パケット解析装置7の処理は、基本的には第1の実施の形態で説明した処理内容と同じであるが、図6のS9の代わりに図22に示すような処理(ロスパケット判定処理4と呼ぶ)を実施する。以下、ロスパケット判定処理4について説明する。
【0054】
まず、ロスパケット判定部74が、音声パケットの送出間隔とDTMFパケットの送出間隔とが異なるか否か判断する(図22のS51)。なお、音声パケットの送出間隔及びDTMFパケットの送出間隔については、例えばキャプチャしたパケットから算出する。音声パケットの送出間隔とDTMFパケットの送出間隔とが同一の場合(図22のS51:No)、本処理を終了し、元の処理に戻る。
【0055】
一方、音声パケットの送出間隔とDTMFパケットの送出間隔とが異なる場合(図22のS51:Yes)、ロスパケット判定部74は、ロスパケットの前後のパケットの時間差及びシーケンス番号の差を算出する(図22のS53)。なお、「ロスパケットの前後のパケット」とは、ロスしたパケット群の直前のシーケンス番号を持つパケット1つと、ロスしたパケット群の直後のシーケンス番号を持つパケット1つを指す。ロスパケットの前後のパケットの時間差については、ロスパケットの直前のパケットのヘッダに含まれるタイムスタンプと、ロスパケットの直後のパケットのヘッダに含まれるタイムスタンプとの差を算出し、算出した差を実際の時間に変換したものを、ロスパケットの前後のパケットの時間差とする。
【0056】
そして、ロスパケット判定部74は、図22のS53において算出した時間差及びシーケンス番号の差を用いて、ロスパケットの送出間隔を算出する(図22のS55)。具体的には、図22のS53において算出した時間差を、シーケンス番号の差で除することにより、ロスパケットの送出間隔を算出する。
【0057】
例えば7個の音声パケットをロスした場合の一例を図23に示す。図23の例では、ロスパケットの前後のパケットの時間差は160msとなっており、シーケンス番号の差は8(=13−5)である。従って、図23の例では、160ms÷8=20msが、ロスパケットの送出間隔として算出される。
【0058】
そして、ロスパケット判定部74は、ロスパケットの送出間隔と音声パケットの送出間隔とが同一であるか判断する(図22のS57)。ロスパケットの送出間隔と音声パケットの送出間隔とが同一である場合(図22のS57:Yes)、ロスパケット判定部74は、ロスパケットが全て音声パケットであると判断する。そして、ロスパケット判定部74は、ロスパケットの数を音声パケットのロス数として計数する(図22のS59)。図23の例では、ロスパケットの送出間隔(20ms)と音声パケットの送出間隔(20ms)とが同一であると判断され、ロスパケットの数(7個)が音声パケットのロス数として計数される。なお、音声パケットのロス数は、品質データ格納部77に格納される。その後、本処理を終了する。
【0059】
一方、ロスパケットの送出間隔と音声パケットの送出間隔とが異なる場合(図22のS57:No)、ロスパケット判定部74は、DTMFパケットをロスしていると判断する(図22のS61)。
【0060】
例えば4個のDTMFパケットをロスした場合の一例を図24に示す。図24の例では、ロスパケットの前後のパケットの時間差は180msとなっており、シーケンス番号の差は5(=10−5)である。この場合、図22のS55の処理を実施すると、180ms÷5=36msが、ロスパケットの送出間隔として算出される。すなわち、図24の例では、図22のS57において、ロスパケットの送出間隔(36ms)と音声パケットの送出間隔(20ms)とが異なると判断され、図22のS61において、DTMFパケットをロスしていると判断される。
【0061】
その後、ロスパケット判定部74は、ロスパケットの送出間隔とDTMFパケットの送出間隔とが同一であるか判断する(図22のS63)。ロスパケットの送出間隔とDTMFパケットの送出間隔とが同一である場合(図22のS63:Yes)、ロスパケット判定部74は、ロスパケットは全てDTMFパケット(すなわち、音声パケットのロスは無し)であると判断する。そして、ロスパケット判定部74は、ロスパケットの数をDTMFパケットのロス数として計数する(図22のS65)。なお、DTMFパケットのロス数から算出される音声パケットのロス数(=0)は、品質データ格納部77に格納されるか、または、音声パケットのロス数が0であるため、何も処理(格納)しない。その後、本処理を終了する。
【0062】
一方、ロスパケットの送出間隔とDTMFパケットの送出間隔とが異なる場合(図22のS61:No)、図22のS65をスキップし、本処理を終了する。
【0063】
以上のような処理を実施することにより、音声パケットの送出間隔とDTMFパケットの送出間隔とが異なる場合に、ロスパケットの種別を判定することができる。
【0064】
[実施の形態5]
次に、図25及び図26を用いて本技術の第5の実施の形態を説明する。なお、第5の実施の形態は、音声パケットの送出間隔とDTMFパケットの送出間隔とが異なる場合に、音声パケットのロス数及びDTMFパケットのロス数を算出するものである。本実施の形態では、音声パケットの送出間隔を20msとし、DTMFパケットの送出間隔を40msであるものとする。
【0065】
本実施の形態に係るシステム構成は、図3に示したシステム構成図と同じである。また、本実施の形態に係るパケット解析装置7の構成は、図4に示した機能ブロック図と同じである。そして、パケット解析装置7の処理は、基本的には第1の実施の形態で説明した処理内容と同じであるが、図6のS9の代わりに図25に示すような処理(ロスパケット判定処理5と呼ぶ)を実施する。以下、ロスパケット判定処理5について説明する。
【0066】
まず、ロスパケット判定部74が、音声パケットの送出間隔とDTMFパケットの送出間隔とが異なるか否か判断する(図25のS71)。音声パケットの送出間隔とDTMFパケットの送出間隔とが同一の場合(図25のS71:No)、本処理を終了し、元の処理に戻る。
【0067】
一方、音声パケットの送出間隔とDTMFパケットの送出間隔とが異なる場合(図25のS71:Yes)、ロスパケット判定部74は、ロスパケットの前後のパケットの時間差及びシーケンス番号の差を算出する(図25のS73)。なお、図25のS73以降の処理については、図26に示す具体例を用いて説明する。図26は、6個のパケット(2個の音声パケット及び4個のDTMFパケット)をロスした場合の一例を示す。図26の例では、ロスパケットの前後のパケットの時間差は220msとなっており、シーケンス番号の差は7(=10−3)である。
【0068】
そして、ロスパケット判定部74は、音声パケットの送出間隔と、DTMFパケットの送出間隔と、図25のS73において算出した時間差及びシーケンス番号の差とに基づき、音声パケットのロス数及びDTMFパケットのロス数を算出する(図25のS75)。具体的には、ロスパケットとロスパケットの直後のパケットとを計算対象パケットとして、当該計算対象パケットのうちの音声パケットの数を変数xとし且つDTMFパケットの数を変数yとする以下の連立方程式を用いて算出する。図26では、シーケンス番号4からシーケンス番号10までの7個のパケットが計算対象パケットである。
20x+40y=220 (1)
x+y=7 (2)
【0069】
なお、(1)式において、「20」は音声パケットの送出間隔であり、「40」はDTMFパケットの送出間隔である。また、(1)式における「220」は、図25のS73において算出した、ロスパケットの前後のパケットの時間差である。さらに、(2)式における「7」は、図25のS73において算出した、ロスパケットの前後のパケットのシーケンス番号の差である。そして、このような連立方程式を解くと、x=3、y=4となる。ここで、ロスパケットの直後の音声パケットを計算対象パケットに含めているため、変数xの値から1を差し引いた値が音声パケットのロス数となる。従って、ロスパケットの内訳としては、音声パケットが2個(=3−1)、DTMFパケットが4個となる。なお、音声パケット及びDTMFパケットのロス数は、品質データ格納部77に格納される。その後、本処理を終了し、元の処理に戻る。
【0070】
以上のような処理を実施することにより、音声パケットの送出間隔とDTMFパケットの送出間隔とが異なる場合に、音声パケットのロス数及びDTMFパケットのロス数を算出することができる。
【0071】
[実施の形態6]
次に、図27乃至図30を用いて本技術の第6の実施の形態を説明する。なお、上で説明した第1乃至第5の実施の形態は、上で述べたようなDTMFパケットの特徴を用いてロスパケットの種別を判定するものであった。これに対し、第6の実施の形態では、ロスパケットの前後のパケットの種別に従ってロスパケットの種別を判定する。
【0072】
本実施の形態に係るシステム構成は、図3に示したシステム構成図と同じである。また、本実施の形態に係るパケット解析装置7の構成は、図4に示した機能ブロック図と同じである。そして、パケット解析装置7の処理は、基本的には第1の実施の形態で説明した処理内容と同じであるが、図6のS9の代わりに図27に示すような処理(ロスパケット判定処理6と呼ぶ)を実施する。以下、ロスパケット判定処理6について説明する。
【0073】
まず、ロスパケット判定部74が、記憶部に格納されたパケットに従って、ロスパケットの前後のパケットの種別を特定する(図27のS81)。そして、ロスパケット判定部74は、ロスパケットの前後のパケットが両方とも音声パケットであるか判断する(図27のS83)。ロスパケットの前後のパケットが両方とも音声パケットの場合(図27のS83:Yes)、ロスパケット判定部74は、ロスパケットは全て音声パケットであると判断する。図28に、ロスパケットの前後のパケットが両方とも音声パケットである場合の一例を示す。本実施の形態では、図28における3個のロスパケットは全て音声パケットであると判断される。
【0074】
そして、ロスパケット判定部74は、ロスパケットの数を音声パケットのロス数として計数する(図27のS85)。なお、音声パケットのロス数は、品質データ格納部77に格納される。その後、本処理を終了し、元の処理に戻る。
【0075】
一方、ロスパケットの前後のパケットのうち少なくとも一方がDTMFパケットの場合(図27のS83:No)、ロスパケット判定部74は、ロスパケットの前後のパケットが両方ともDTMFパケットであるか判断する(図27のS87)。ロスパケットの前後のパケットが両方ともDTMFパケットの場合(図27のS87:Yes)、ロスパケット判定部74は、ロスパケットは全てDTMFパケットであると判断する。図29に、ロスパケットの前後のパケットが両方ともDTMFパケットである場合の一例を示す。本実施の形態では、図29における3個のロスパケットは全てDTMFパケットであると判断される。
【0076】
そして、ロスパケット判定部74は、ロスパケットの数をDTMFパケットのロス数として計数する(図27のS89)。なお、DTMFパケットのロス数から算出される音声パケットのロス数(=0)は、品質データ格納部77に格納されるか、または、音声パケットのロス数が0であるため、何も処理(格納)しない。その後、本処理を終了し、元の処理に戻る。
【0077】
一方、ロスパケットの前後のパケットの種別が異なる場合(図27のS87:No)、ロスパケット判定部74は、ロスパケットの数を不明パケットのロス数として計数する(図27のS91)。図30に、ロスパケットの前後のパケットの一方が音声パケットである場合の一例を示す。本実施の形態では、図30における3個のロスパケットは全て不明パケットであると判断される。なお、不明パケットのロス数から算出される音声パケットのロス数(=0)は、品質データ格納部77に格納されるか、または、音声パケットのロス数が0であるため、何も処理(格納)しない。その後、本処理を終了し、元の処理に戻る。
【0078】
以上のような処理を実施することにより、ロスパケットの前後のパケットの種別からロスパケットの種別を判定することができる。
【0079】
なお、ロスパケットの前後のパケットの種別が異なる場合において、図27のS91の処理の代わりに、第1乃至第5の実施の形態で説明したような処理を実施するような構成を採用することも可能である。
【0080】
以上本技術の実施の形態を説明したが、本技術はこれに限定されるものではない。例えば、上で説明した実施の形態を任意に組み合わせることが可能である。
【0081】
また、上で説明したパケット解析装置7の機能ブロック図は必ずしも実際のプログラムモジュール構成に対応するものではない。
【0082】
また、図5に示した品質データ格納部77に格納されるデータは一例であって、必ずしも上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしてもよい。
【0083】
なお、上で述べたパケット解析装置7は、コンピュータ装置であって、図34に示すように、メモリ2501とCPU2503とハードディスク・ドライブ(HDD)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施例における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。必要に応じてCPU2503は、表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ2501に格納され、必要があればHDD2505に格納される。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及び必要なアプリケーション・プログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【0084】
以上述べた本技術の実施の形態をまとめると以下のとおりになる。
【0085】
第1の態様に係る本パケット解析方法は、音声パケット及び非音声パケットを含むパケットを解析する方法であって、特定のセッションにおけるパケットをキャプチャして記憶部に格納するステップ(図31のS101に相当)と、記憶部に格納されたパケットの各々について当該パケットが音声パケット又は非音声パケットであるか判定し、音声パケットの受信数を計数する受信パケット判定ステップ(図31のS103に相当)と、特定のセッションにおいてパケットロスが存在するか判断し(図31のS105に相当)、パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが音声パケット又は非音声パケットであるか判定し、音声パケットのロス数を計数するロスパケット判定ステップ(図31のS107に相当)とを含む。
【0086】
このようにすれば、音声パケットの受信数及びロス数が計数できるので、音声パケットの伝送品質(例えば、パケットロス率、パケット到達率など)を計測できるようになる。 また、上で述べたロスパケット判定ステップにおいて、非音声パケットの所定の特徴を用いて、ロスしたパケットが音声パケット又は非音声パケットであるか判定するようにしてもよい。非音声パケットは、判別に使用するのに適した特徴があるためである。
【0087】
さらに、非音声パケットが、DTMFイベントを表すためのDTMFパケットである場合もある。そして、非音声パケットの所定の特徴が、DTMFイベントの終了時に送信されるDTMFパケットである終端パケットの再送回数と、当該DTMFイベントが発生した時点からのタイムスタンプで表される継続期間と、DTMFパケットの送出間隔との少なくともいずれかに関する特徴である場合もある。
【0088】
また、上で述べたロスパケット判定ステップが、ロスしたパケットの直後に終端パケットに対する再送パケット又は当該再送パケットを包含するDTMFパケット群が存在するか判断するステップと、ロスしたパケットの直後に再送パケット又はDTMFパケット群が存在する場合、再送パケットに含まれる継続期間をDTMFパケットの送出間隔で除することにより、当該再送パケットを包含するDTMFイベントにおける先頭パケットから終端パケットまでのパケット数を算出するステップと、ロスしたパケットの直後に存在するDTMFパケットの数と、終端パケットの再送回数と、DTMFイベントにおける先頭パケットから終端パケットまでのパケット数とに従って、ロスしたパケットが音声パケット又はDTMFパケットであるか判定するステップとを含むようにしてもよい。このようにすれば、DTMFイベントの前半又は中盤をロスした可能性がある場合に、ロスしたパケットの種別を判定できるようになる。
【0089】
さらに、上で述べたロスパケット判定ステップが、ロスしたパケットの直前に終端パケットに対する再送パケットが存在するか判断するステップと、ロスしたパケットの直前に再送パケットが存在する場合、当該再送パケットに含まれる継続期間に基づき特定される終端パケットの位置と終端パケットの再送回数とに従って、ロスしたパケットが音声パケット又はDTMFパケットであるか判定するステップとを含むようにしてもよい。このようにすれば、DTMFイベントの後半をロスした可能性がある場合に、ロスしたパケットの種別を判定できるようになる。
【0090】
また、上で述べたロスパケット判定ステップが、ロスしたパケットの直前に終端パケットに対する再送パケット以外のDTMFパケットが存在し、且つロスしたパケットの直後に音声パケットが存在するか判断するステップと、ロスしたパケットの直前に再送パケット以外のDTMFパケットが存在し、且つロスしたパケットの直後に音声パケットが存在する場合、少なくとも終端パケットの再送回数分のDTMFパケットをロスしたと判定するステップとを含むようにしてもよい。このようにすれば、終端パケットに対する再送パケットをロスした場合に、ロスしたパケットの少なくとも一部について種別を判定できるようになる。
【0091】
さらに、上で述べたロスパケット判定ステップが、ロスしたパケットの前後のパケットの時間差及びシーケンス番号の差を用いて、ロスしたパケットの送出間隔を算出するステップと、ロスしたパケットの送出間隔が音声パケットの送出間隔と同一であり且つDTMFパケットの送出間隔と異なるという第1条件を満たすか判断し、当該第1条件を満たす場合、当該ロスしたパケットは音声パケットであると判定するステップと、ロスしたパケットの送出間隔が音声パケットの送出間隔と異なり且つDTMFパケットの送出間隔と同一であるという第2条件を満たすか判断し、当該第2条件を満たす場合、当該ロスしたパケットはDTMFパケットであると判定するステップとを含むようにしてもよい。このようにすれば、パケットの送出間隔に従って、ロスしたパケットの種別を判定できるようになる。
【0092】
また、上で述べたロスパケット判定ステップが、音声パケットの送出間隔とDTMFパケットの送出間隔が異なる場合、ロスしたパケットと当該ロスしたパケットの直後のパケットとを含む計算対象パケットのうちの音声パケットの数及び非音声パケットの数を変数とする連立方程式の解を得るための処理を実施し、連立方程式の解から音声パケットのロス数及びDTMFパケットのロス数を算出するステップを含むようにしてもよい。
【0093】
さらに、上で述べたロスパケット判定ステップが、ロスしたパケットの前後のパケットのいずれもが音声パケットであるか判断し、当該前後のパケットのいずれもが音声パケットである場合、ロスしたパケットは音声パケットであると判定するステップと、ロスしたパケットの前後のパケットのいずれもが非音声パケットであるか判断し、当該前後のパケットのいずれもが非音声パケットである場合、ロスしたパケットは非音声パケットであると判定するステップとを含むようにしてもよい。例えばロスしたパケットの数が少なく、ロスしたパケットの前後のパケットの種別が同じ場合には、ロスしたパケットの種別は、前後のパケットと同じである可能性が高いので、より簡単な処理で判定可能となる。なお、前後のパケットの種別が一致しない場合には、上で述べたような非音声パケットの特徴を用いた処理を実施することにより、ロスしたパケットの種別を判定することができる。 また、上で述べた受信パケット判定ステップが、非音声パケットの受信数を計数するステップを含むようにしてもよい。そして、上で述べたロスパケット判定ステップが、非音声パケットのロス数を計数するステップを含むようにしてもよい。このようにすれば、非音声パケットの伝送品質についても計測できるようになる。
【0094】
第2の態様に係るパケット解析装置は、音声パケット及び非音声パケットを含むパケットを解析する装置であって、特定のセッションにおけるパケットをキャプチャして記憶部(図32の「記憶部」)に格納するキャプチャ手段(図32の「キャプチャ部」に相当)と、記憶部に格納されたパケットの各々について当該パケットが音声パケット又は非音声パケットであるか判定し、音声パケットの受信数を計数する受信パケット判定手段(図32の「受信パケット判定部」に相当)と、特定のセッションにおいてパケットロスが存在するか判断し、パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが音声パケット又は非音声パケットであるか判定し、音声パケットのロス数を計数するロスパケット判定手段(図32の「ロスパケット判定部」に相当)とを有する。
【0095】
なお、上で述べたような処理をコンピュータに実施させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブル・ディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶部に格納される。また、処理途中のデータについては、コンピュータのメモリ等の記憶部に一時保管される。
【0096】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【0097】
(付記1)
音声パケット及び非音声パケットを含むパケットを解析する方法であって、
特定のセッションにおける前記パケットをキャプチャして記憶部に格納するステップと、
前記記憶部に格納された前記パケットの各々について当該パケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットの受信数を計数する受信パケット判定ステップと、
前記特定のセッションにおいてパケットロスが存在するか判断し、前記パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットのロス数を計数するロスパケット判定ステップと、
を含み、コンピュータにより実行されるパケット解析方法。
【0098】
(付記2)
前記ロスパケット判定ステップにおいて、前記非音声パケットの所定の特徴を用いて、前記ロスしたパケットが前記音声パケット又は前記非音声パケットであるか判定する
付記1記載のパケット解析方法。
【0099】
(付記3)
前記非音声パケットが、DTMFイベントを表すためのDTMFパケットであり、
前記非音声パケットの所定の特徴が、前記DTMFイベントの終了時に送信される前記DTMFパケットである終端パケットの再送回数と、当該DTMFイベントが発生した時点からのタイムスタンプで表される継続期間と、前記DTMFパケットの送出間隔との少なくともいずれかに関する特徴である
付記2記載のパケット解析方法。
【0100】
(付記4)
前記ロスパケット判定ステップが、
前記ロスしたパケットの直後に前記終端パケットに対する再送パケット又は当該再送パケットを包含するDTMFパケット群が存在するか判断するステップと、
前記ロスしたパケットの直後に前記再送パケット又は前記DTMFパケット群が存在する場合、前記再送パケットに含まれる前記継続期間を前記DTMFパケットの送出間隔で除することにより、当該再送パケットを包含する前記DTMFイベントにおける先頭パケットから終端パケットまでのパケット数を算出するステップと、
前記ロスしたパケットの直後に存在する前記DTMFパケットの数と、前記終端パケットの再送回数と、前記DTMFイベントにおける先頭パケットから終端パケットまでのパケット数とに従って、前記ロスしたパケットが前記音声パケット又は前記DTMFパケットであるか判定するステップと、
を含む、付記3記載のパケット解析方法。
【0101】
(付記5)
前記ロスパケット判定ステップが、
前記ロスしたパケットの直前に前記終端パケットに対する再送パケットが存在するか判断するステップと、
前記ロスしたパケットの直前に前記再送パケットが存在する場合、当該再送パケットに含まれる前記継続期間に基づき特定される前記終端パケットの位置と前記終端パケットの再送回数とに従って、前記ロスしたパケットが前記音声パケット又は前記DTMFパケットであるか判定するステップと、
を含む、付記3又は4記載のパケット解析方法。
【0102】
(付記6)
前記ロスパケット判定ステップが、
前記ロスしたパケットの直前に前記終端パケットに対する再送パケット以外の前記DTMFパケットが存在し、且つ前記ロスしたパケットの直後に前記音声パケットが存在するか判断するステップと、
前記ロスしたパケットの直前に前記再送パケット以外の前記DTMFパケットが存在し、且つ前記ロスしたパケットの直後に前記音声パケットが存在する場合、少なくとも前記終端パケットの再送回数分の前記DTMFパケットをロスしたと判定するステップと、
を含む、付記3乃至5のいずれか1つ記載のパケット解析方法。
【0103】
(付記7)
前記ロスパケット判定ステップが、
前記ロスしたパケットの前後のパケットの時間差及びシーケンス番号の差を用いて、前記ロスしたパケットの送出間隔を算出するステップと、
前記ロスしたパケットの送出間隔が前記音声パケットの送出間隔と同一であり且つ前記DTMFパケットの送出間隔と異なるという第1条件を満たすか判断し、当該第1条件を満たす場合、当該ロスしたパケットは前記音声パケットであると判定するステップと、
前記ロスしたパケットの送出間隔が前記音声パケットの送出間隔と異なり且つ前記DTMFパケットの送出間隔と同一であるという第2条件を満たすか判断し、当該第2条件を満たす場合、当該ロスしたパケットは前記DTMFパケットであると判定するステップと、
を含む、付記3乃至6のいずれか1つ記載のパケット解析方法。
【0104】
(付記8)
前記ロスパケット判定ステップが、
前記音声パケットの送出間隔と前記DTMFパケットの送出間隔が異なる場合、前記ロスしたパケットと当該ロスしたパケットの直後のパケットとを含む計算対象パケットのうちの前記音声パケットの数及び前記非音声パケットの数を変数とする連立方程式の解を得るための処理を実施し、前記連立方程式の解から前記音声パケットのロス数及び前記DTMFパケットのロス数を算出するステップ
を含む、付記3乃至6のいずれか1つ記載のパケット解析方法。
【0105】
(付記9)
前記ロスパケット判定ステップが、
前記ロスしたパケットの前後のパケットのいずれもが前記音声パケットであるか判断し、当該前後のパケットのいずれもが前記音声パケットである場合、前記ロスしたパケットは前記音声パケットであると判定するステップと、
前記ロスしたパケットの前後のパケットのいずれもが前記非音声パケットであるか判断し、当該前後のパケットのいずれもが前記非音声パケットである場合、前記ロスしたパケットは前記非音声パケットであると判定するステップと、
を含む、付記1記載のパケット解析方法。
【0106】
(付記10)
前記受信パケット判定ステップが、
前記非音声パケットの受信数を計数するステップ
を含み、
前記ロスパケット判定ステップが、前記非音声パケットのロス数を計数するステップ
を含む、付記1乃至9のいずれか1つ記載のパケット解析方法。
【0107】
(付記11)
音声パケット及び非音声パケットを含むパケットを解析するためのプログラムであって、
特定のセッションにおける前記パケットをキャプチャして記憶部に格納するステップと、
前記記憶部に格納された前記パケットの各々について当該パケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットの受信数を計数する受信パケット判定ステップと、
前記特定のセッションにおいてパケットロスが存在するか判断し、前記パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットのロス数を計数するロスパケット判定ステップと、
をコンピュータに実行させるためのパケット解析プログラム。
【0108】
(付記12)
音声パケット及び非音声パケットを含むパケットを解析する装置であって、
特定のセッションにおける前記パケットをキャプチャして記憶部に格納するキャプチャ手段と、
前記記憶部に格納された前記パケットの各々について当該パケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットの受信数を計数する受信パケット判定手段と、
前記特定のセッションにおいてパケットロスが存在するか判断し、前記パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットのロス数を計数するロスパケット判定手段と、
を有するパケット解析装置。
【符号の説明】
【0109】
1 パケット通信ネットワーク 3a,3b,3c ネットワーク
5 TAP 7 パケット解析装置
71 パケットキャプチャ部 72 パケット解析部
73 音声・非音声判定部 74 ロスパケット判定部
75 品質算出部 76 出力部
77 品質データ格納部
【特許請求の範囲】
【請求項1】
音声パケット及び非音声パケットを含むパケットを解析する方法であって、
特定のセッションにおける前記パケットをキャプチャして記憶部に格納するステップと、
前記記憶部に格納された前記パケットの各々について当該パケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットの受信数を計数する受信パケット判定ステップと、
前記特定のセッションにおいてパケットロスが存在するか判断し、前記パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットのロス数を計数するロスパケット判定ステップと、
を含み、コンピュータにより実行されるパケット解析方法。
【請求項2】
前記ロスパケット判定ステップにおいて、前記非音声パケットの所定の特徴を用いて、前記ロスしたパケットが前記音声パケット又は前記非音声パケットであるか判定する
請求項1記載のパケット解析方法。
【請求項3】
前記非音声パケットが、DTMFイベントを表すためのDTMFパケットであり、
前記非音声パケットの所定の特徴が、前記DTMFイベントの終了時に送信される前記DTMFパケットである終端パケットの再送回数と、当該DTMFイベントが発生した時点からのタイムスタンプで表される継続期間と、前記DTMFパケットの送出間隔との少なくともいずれかに関する特徴である
請求項2記載のパケット解析方法。
【請求項4】
前記ロスパケット判定ステップが、
前記ロスしたパケットの直後に前記終端パケットに対する再送パケット又は当該再送パケットを包含するDTMFパケット群が存在するか判断するステップと、
前記ロスしたパケットの直後に前記再送パケット又は前記DTMFパケット群が存在する場合、前記再送パケットに含まれる前記継続期間を前記DTMFパケットの送出間隔で除することにより、当該再送パケットを包含する前記DTMFイベントにおける先頭パケットから終端パケットまでのパケット数を算出するステップと、
前記ロスしたパケットの直後に存在する前記DTMFパケットの数と、前記終端パケットの再送回数と、前記DTMFイベントにおける先頭パケットから終端パケットまでのパケット数とに従って、前記ロスしたパケットが前記音声パケット又は前記DTMFパケットであるか判定するステップと、
を含む、請求項3記載のパケット解析方法。
【請求項5】
前記ロスパケット判定ステップが、
前記ロスしたパケットの直前に前記終端パケットに対する再送パケットが存在するか判断するステップと、
前記ロスしたパケットの直前に前記再送パケットが存在する場合、当該再送パケットに含まれる前記継続期間に基づき特定される前記終端パケットの位置と前記終端パケットの再送回数とに従って、前記ロスしたパケットが前記音声パケット又は前記DTMFパケットであるか判定するステップと、
を含む、請求項3又は4記載のパケット解析方法。
【請求項6】
前記ロスパケット判定ステップが、
前記ロスしたパケットの直前に前記終端パケットに対する再送パケット以外の前記DTMFパケットが存在し、且つ前記ロスしたパケットの直後に前記音声パケットが存在するか判断するステップと、
前記ロスしたパケットの直前に前記再送パケット以外の前記DTMFパケットが存在し、且つ前記ロスしたパケットの直後に前記音声パケットが存在する場合、少なくとも前記終端パケットの再送回数分の前記DTMFパケットをロスしたと判定するステップと、
を含む、請求項3乃至5のいずれか1つ記載のパケット解析方法。
【請求項7】
音声パケット及び非音声パケットを含むパケットを解析するためのプログラムであって、
特定のセッションにおける前記パケットをキャプチャして記憶部に格納するステップと、
前記記憶部に格納された前記パケットの各々について当該パケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットの受信数を計数する受信パケット判定ステップと、
前記特定のセッションにおいてパケットロスが存在するか判断し、前記パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットのロス数を計数するロスパケット判定ステップと、
をコンピュータに実行させるためのパケット解析プログラム。
【請求項8】
音声パケット及び非音声パケットを含むパケットを解析する装置であって、
特定のセッションにおける前記パケットをキャプチャして記憶部に格納するキャプチャ手段と、
前記記憶部に格納された前記パケットの各々について当該パケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットの受信数を計数する受信パケット判定手段と、
前記特定のセッションにおいてパケットロスが存在するか判断し、前記パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットのロス数を計数するロスパケット判定手段と、
を有するパケット解析装置。
【請求項1】
音声パケット及び非音声パケットを含むパケットを解析する方法であって、
特定のセッションにおける前記パケットをキャプチャして記憶部に格納するステップと、
前記記憶部に格納された前記パケットの各々について当該パケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットの受信数を計数する受信パケット判定ステップと、
前記特定のセッションにおいてパケットロスが存在するか判断し、前記パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットのロス数を計数するロスパケット判定ステップと、
を含み、コンピュータにより実行されるパケット解析方法。
【請求項2】
前記ロスパケット判定ステップにおいて、前記非音声パケットの所定の特徴を用いて、前記ロスしたパケットが前記音声パケット又は前記非音声パケットであるか判定する
請求項1記載のパケット解析方法。
【請求項3】
前記非音声パケットが、DTMFイベントを表すためのDTMFパケットであり、
前記非音声パケットの所定の特徴が、前記DTMFイベントの終了時に送信される前記DTMFパケットである終端パケットの再送回数と、当該DTMFイベントが発生した時点からのタイムスタンプで表される継続期間と、前記DTMFパケットの送出間隔との少なくともいずれかに関する特徴である
請求項2記載のパケット解析方法。
【請求項4】
前記ロスパケット判定ステップが、
前記ロスしたパケットの直後に前記終端パケットに対する再送パケット又は当該再送パケットを包含するDTMFパケット群が存在するか判断するステップと、
前記ロスしたパケットの直後に前記再送パケット又は前記DTMFパケット群が存在する場合、前記再送パケットに含まれる前記継続期間を前記DTMFパケットの送出間隔で除することにより、当該再送パケットを包含する前記DTMFイベントにおける先頭パケットから終端パケットまでのパケット数を算出するステップと、
前記ロスしたパケットの直後に存在する前記DTMFパケットの数と、前記終端パケットの再送回数と、前記DTMFイベントにおける先頭パケットから終端パケットまでのパケット数とに従って、前記ロスしたパケットが前記音声パケット又は前記DTMFパケットであるか判定するステップと、
を含む、請求項3記載のパケット解析方法。
【請求項5】
前記ロスパケット判定ステップが、
前記ロスしたパケットの直前に前記終端パケットに対する再送パケットが存在するか判断するステップと、
前記ロスしたパケットの直前に前記再送パケットが存在する場合、当該再送パケットに含まれる前記継続期間に基づき特定される前記終端パケットの位置と前記終端パケットの再送回数とに従って、前記ロスしたパケットが前記音声パケット又は前記DTMFパケットであるか判定するステップと、
を含む、請求項3又は4記載のパケット解析方法。
【請求項6】
前記ロスパケット判定ステップが、
前記ロスしたパケットの直前に前記終端パケットに対する再送パケット以外の前記DTMFパケットが存在し、且つ前記ロスしたパケットの直後に前記音声パケットが存在するか判断するステップと、
前記ロスしたパケットの直前に前記再送パケット以外の前記DTMFパケットが存在し、且つ前記ロスしたパケットの直後に前記音声パケットが存在する場合、少なくとも前記終端パケットの再送回数分の前記DTMFパケットをロスしたと判定するステップと、
を含む、請求項3乃至5のいずれか1つ記載のパケット解析方法。
【請求項7】
音声パケット及び非音声パケットを含むパケットを解析するためのプログラムであって、
特定のセッションにおける前記パケットをキャプチャして記憶部に格納するステップと、
前記記憶部に格納された前記パケットの各々について当該パケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットの受信数を計数する受信パケット判定ステップと、
前記特定のセッションにおいてパケットロスが存在するか判断し、前記パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットのロス数を計数するロスパケット判定ステップと、
をコンピュータに実行させるためのパケット解析プログラム。
【請求項8】
音声パケット及び非音声パケットを含むパケットを解析する装置であって、
特定のセッションにおける前記パケットをキャプチャして記憶部に格納するキャプチャ手段と、
前記記憶部に格納された前記パケットの各々について当該パケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットの受信数を計数する受信パケット判定手段と、
前記特定のセッションにおいてパケットロスが存在するか判断し、前記パケットロスが存在する場合、ロスしたパケットの近傍のパケットに従って、当該ロスしたパケットが前記音声パケット又は前記非音声パケットであるか判定し、前記音声パケットのロス数を計数するロスパケット判定手段と、
を有するパケット解析装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【公開番号】特開2011−4200(P2011−4200A)
【公開日】平成23年1月6日(2011.1.6)
【国際特許分類】
【出願番号】特願2009−145938(P2009−145938)
【出願日】平成21年6月19日(2009.6.19)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
【公開日】平成23年1月6日(2011.1.6)
【国際特許分類】
【出願日】平成21年6月19日(2009.6.19)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
[ Back to top ]