説明

パケット解析装置、方法及びプログラム

【課題】複数のパケット情報からSIP(Session Initiation Protocol)のシーケンス情報とSIPメッセージを含むシナリオ情報を自動生成できるパケット解析装置、方法及びプログラムを提供すること
【解決手段】本発明にかかるパケット解析装置1は、送受信された複数のパケット情報であるパケットキャプチャログ300の入力を受け付け、パケット情報からSIPに関する信号情報を抽出し、その信号情報から端末間のリクエスト順序とリクエスト情報を含むSIPシナリオ400を生成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はパケット解析装置、方法及びプログラムに関し、特にSIP(セッション確立プロトコル: Session Initiation Protocol)にかかるパケットの解析装置、方法及びプログラムに関する。
【背景技術】
【0002】
SIPは、IP(Internet Protocol)ネットワークにおいてマルチメディア・セッションを管理するプロトコルの1つである。SIPは、VoIP(Voice over IP)を応用したインターネット電話、社内LAN(Local Area Network)を用いた内線電話等で用いられている。SIPサーバは、SIPを利用して電話番号とIPアドレスの対応付けや、相手を呼び出してつなぐといった呼制御を行うサーバを指す。
【0003】
SIPを利用した通信において、ネットワーク上で問題が生じた場合に、不具合を調査するユーザが送信されたパケットの情報から問題発生時の状況を再現し、問題の原因を把握したいという要求がある。問題発生時の状況の再現には、複数のパケットから生成されたSIP信号とシーケンス情報を含むSIPシナリオ情報が必要となる。試験装置は、このSIPシナリオ情報を入力として問題発生時の状況を再現する。試験装置は、SIPシナリオを基にシーケンス通りにSIP信号の送受信を行い、かつ音声/テレビ電話の信号送受信を行う。ユーザは、試験装置による信号送受信の結果から音声/テレビ電話にかかるネットワークやSIPサーバ等が正常に動作しているかを把握できる。また、ユーザは信号送受信の結果から問題の原因を把握することができる。
【0004】
特許文献1では、正常な信号シーケンスを予め記憶しておき、送受信されたパケットのデータから生成した信号シーケンスと前記の正常な信号シーケンスとを照合することにより正常性を判定する信号モニタ装置が提案されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2009−21808号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1に記載の信号モニタ装置によっては、パケット情報からSIPの信号シーケンスの正常性を判断することはできるが、問題発生時と同様の状況を試験装置で再現することはできない。また、ユーザが問題発生時と同様の状況を試験装置で再現するためにSIPシナリオを作成することは一般的に労力がかかり、SIPに関する知識を有するユーザでなければ作成することが困難である。
【0007】
本発明は、このような問題を解決するためになされたものであり、複数のパケット情報からSIPのシーケンス情報とSIPメッセージを含むSIPシナリオ情報を自動生成できるパケット解析装置、方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明にかかるパケット解析装置は、送受信された複数のパケット情報を入力する手段と、
前記パケット情報からSIPに関する信号情報を抽出し、前記信号情報から端末間のリクエスト順序とリクエスト情報を含むSIPシナリオ情報を生成するSIPシナリオ生成手段とを備える。
【発明の効果】
【0009】
本発明により、パケット情報から容易にSIPシナリオを生成できるパケット解析装置を提供することができる。
【図面の簡単な説明】
【0010】
【図1】実施の形態1にかかるパケット解析装置のシステム構成を示すブロック図である。
【図2】実施の形態1にかかるパケット解析装置のシステム構成を示すブロック図である。
【図3】実施の形態1にかかるパケットキャプチャログ変換部の構成を示すブロック図である。
【図4】実施の形態1にかかるシステム略図である。
【図5】実施の形態1にかかるSIPシナリオの生成処理を表すシーケンス図である。
【図6】実施の形態1にかかるSIPシナリオの例を示す図である。
【図7】実施の形態1にかかるSIPシナリオの生成の基となるSIP信号の例を示す図である。
【図8】実施の形態1にかかるSIPシナリオの変換規則の例を示す図である。
【図9】実施の形態1にかかる生成されたSIPシナリオの例を示す図である。
【図10】実施の形態1にかかるSIPシナリオの変換規則の例を示す図である。
【図11】実施の形態2にかかるSIPシナリオの生成処理を表すシーケンス図である。
【発明を実施するための形態】
【0011】
実施の形態1
以下、図面を参照して本発明の実施の形態について説明する。
まず、図1及び図2を用いて、本発明の実施の形態1にかかる試験装置の構成について説明する。本発明の実施の形態にかかるパケット解析装置は、図1に示すようにパケット解析機能のみを有する構成であってもよく、図2に示すようにパケット送受信試験の機能をも有する構成であってもよい。以後、図2の構成によって発明の実施の形態1の説明を行う。
【0012】
試験装置100は、図2に示されるように、パケットキャプチャログ300を入力し、SIPシナリオ400を出力する。なお、パケットキャプチャログとは、ネットワーク上を流れるパケットを採取した情報である。
【0013】
発明の実施の形態1では、試験装置100の各機能ブロックをハードウェアにより構成した場合につき説明するが、本発明は、これに限定されるものではない。本発明は、任意の処理を、CPU(Central Processing Unit)にコンピュータプログラムを実行させることにより実現することも可能である。この場合、コンピュータプログラムは、記録媒体に記録して提供することも可能であり、また、インターネットその他の通信媒体を介して伝送することにより提供することも可能である。また、記憶媒体には、例えば、フレキシブルディスク、ハードディスク、磁気ディスク、光磁気ディスク、CD−ROM(Compact Disc Read Only Memory)、DVD(Digital Versatile Disc)、ROM(Read Only Memory)カートリッジ、バッテリバックアップ付きRAM(Random Access Memory)メモリカートリッジ、フラッシュメモリカートリッジ、不揮発性RAMカートリッジ等が含まれる。また、通信媒体には、電話回線等の有線通信媒体、マイクロ波回線等の無線通信媒体等が含まれる。
【0014】
試験装置100は、パケットキャプチャログ変換部200、シナリオ変換部101、メディアデータ変換部102、試験実施部103、結果表示部104、試験結果データ生成部105を備える。試験装置100は、必ずしも同一装置内に構成される必要性はない。例えば、試験装置100は、パケットキャプチャログ変換部200を有する装置と、それ以外の構成を有する装置から構成されてもよい。
【0015】
シナリオ変換部101は、事前に用意したSIPシナリオ400を読み込み、所定の変換処理を実行し、試験実施部103にSIPシナリオ400を出力する。メディアデータ変換部102は、試験装置100の試験通話中にWAV(RIFF waveform Audio Format)等の音声ファイルや、RTP(Real-time Transport Protocol)のパケットを生成し、試験実施部103に出力する。
【0016】
試験実施部103は、シナリオ変換部101からのSIPシナリオ400と、メディアデータ変換部102からの音声データ等を入力し、予め指定したIPアドレス(Internet Protocol Address)とポート番号から、予め指定した対向のIPアドレスのポート番号へSIPシナリオに記載の順序でSIP信号パケットを生成し、送信する。試験実施部103はSIP信号パケットを送受信した結果を試験表示部104及び試験結果データ生成部105に出力する。
【0017】
結果表示部104は、試験実施部103から入力された送信試験の結果をユーザに表示する。試験結果データ生成部105は、試験実施部103からの送信試験の結果を入力し、SIP信号のログと試験結果ログを出力する。また、試験結果データ生成部105は、試験実施部103がメディア音声品質測定をした場合、音声品質結果ログも出力する。
【0018】
続いて、図3を用いてパケットキャプチャログ変換部200の構成を説明する。パケットキャプチャログ変換部200は、ログファイル解析部201、SIP信号シーケンス表示部202、SIP信号シーケンス編集部203、シナリオ作成処理部204、設定内容確認部205、変換規則情報部206を備えている。
【0019】
ログファイル解析部201は、複数のパケットキャプチャログ300を入力し、入力されたパケットキャプチャログがSIPのプロトコルによるものかを判定し、SIPのプロトコルによるものでなければエラーを画面に表示する。ログファイル解析部201は、入力されたパケット全てがSIPのプロトコルによるものであれば、パケットの発信元と送信元のIPアドレスとポート番号に基づいて、全ての呼処理のSIP信号データを抽出し、SIP信号シーケンス表示部202に出力する。なお、ログファイル解析部201はSIPプロトコル以外の形式のパケットを除外して上で、全ての呼処理のSIP信号データを抽出してもよい。
【0020】
SIP信号シーケンス表示部202は、ログファイル解析部201から入力されたSIP信号データを発信元と送信元のIPアドレスとポート番号に基づいて、シーケンス表示を行う。SIP信号シーケンス表示部202は、ユーザからシーケンス表示された全体のデータから不要なノード情報や信号情報を選択させる入力手段を有する。また、SIP信号シーケンス表示部202は、試験対象ノードが間違って表示されていた場合に、その試験対象ノードの指定をユーザから受け付ける入力手段を有する。ノードとは、試験装置で疑似するSIPサーバや端末、IVR(音声応答システム: Interactive Voice Response)等を指す。SIP信号シーケンス表示部202は、SIP信号シーケンス編集部203により編集されたSIP信号データをシナリオ作成処理部204に出力する。
【0021】
SIP信号シーケンス編集部203は、SIP信号シーケンス表示部202からSIP信号データと、ユーザから受け付けた不要なノード情報や信号情報を入力し、それらを基にSIP信号データを編集し、編集したSIP信号データをSIP信号シーケンス表示部202に出力する。
【0022】
シナリオ作成処理部204は、SIP信号シーケンス表示部202からSIP信号データを入力し、SIPシナリオ400の作成を行う。
【0023】
設定内容確認部205は、シナリオ作成部204からSIP信号データを入力し、シナリオ作成部204がSIPシナリオを作成する前にシナリオ設定画面上で試験項目名、ノード名、保存ディレクトリ等の必要な情報が設定されているかを判定する。設定内容確認部205は、上記の設定がなされていない場合には、画面上にエラーダイアログを表示する。
【0024】
シナリオ規則情報部206は、シナリオ処理部204がSIPシナリオを作成する場合に用いられるシナリオ変換情報を有する。シナリオ規則情報部206は、ファイル形式やデータベースのテーブル等で情報を保持する。
【0025】
次に図4に実施の形態1にかかるシステム全体の略図を示す。本実施の形態では、SIPサーバ等の各端末装置は、IPネットワークに接続されており、パケットキャプチャ装置を備え、当該パケットキャプチャ装置からパケットキャプチャログを生成する機能を有している。
【0026】
続いて、図5のフローチャート図を用いて本発明の実施の形態1にかかる試験装置の処理について説明する。ユーザは、解析したいパケットキャプチャログファイルを試験装置100に入力する(図5のA2)。
【0027】
ログファイル解析部201は、ユーザからのパケットキャプチャログファイルを入力し、ログファイルの解析を行う(図5のA3)。ログファイル解析部201は、ログファイルの解析ができなかった場合や、SIPプロトコルにより送信されたパケットを抽出できなかった場合にはエラーダイアログを画面上に表示する。ログファイル解析部201は、入力されたパケット全てがSIPのプロトコルによるものであれば、パケットの発信元と送信元のIPアドレスとポート番号に基づいて、全ての呼処理のSIP信号データを抽出する。
【0028】
SIP信号シーケンス表示部202は、ログファイル解析部201により抽出されたSIP信号データを入力として、SIPによる通信情報をシーケンス情報として表示する(図5のA4)。このシーケンス情報は、梯子図等の形式でユーザに表示される。
【0029】
ユーザは、SIP信号シーケンス表示部202により表示されたシーケンス情報から、SIPシナリオ400の作成のためにデータを編集するかを選択する(図5のA5)。ユーザは、シーケンス情報の表示された画面上からシナリオ作成に不要なノードがあれば画面上でダブルクリックする等してノードを特定し、削除依頼をする(図5のA6)。同様に、ユーザは、シーケンス情報の表示された画面上からシナリオに不要なSIP信号があれば画面上でダブルクリックする等してSIP信号を特定し、削除依頼をする(図5のA7)。また、ユーザは試験対象(SIPサーバ)と試験装置が逆にシーケンス表示された場合、試験対象ノード設定を行うことにより設定変更を実施する(図5のA8)。
【0030】
SIP信号シーケンス編集部203は、ユーザがSIP信号シーケンス表示部202で指定した編集情報(図5のA6、A7、A8)を基にSIP信号の編集を行う。SIP信号シーケンス編集部203による編集の後、SIP信号シーケンス表示部202は編集結果をシーケンス情報としてユーザに表示する(図5のA4)。
【0031】
ユーザは、SIP信号の編集後に、SIPシナリオ400の生成のために必要な情報を入力する。まずユーザは、SIPシナリオ設定画面で各インターフェイスのノード名を入力する(図5のA9)。ここでインターフェイスとは、試験装置で疑似するノードでパケット送受信を行う場合のローカルアドレスとローカルポートを指す。続いて、ユーザは保存先フォルダの設定(図5のA10)や後述する変換規則ファイルの選択(図5のA11)を行う。ユーザは、上記入力の後、試験装置100に対してSIPシナリオ400の生成を指示する。
【0032】
シナリオ作成処理部204は、SIP信号シーケンス表示部202から入力されたSIP信号情報を基にSIPシナリオ400の生成を開始する(図5のA12)。シナリオ作成処理部204は、シナリオ生成設定の内容確認をユーザに対して実施し(図5のA13)、SIPシナリオ400の生成を実施する(図5のA14、A15)。ユーザから変換規則が指定された場合、シナリオ作成処理部204は変換規則に従ってSIPシナリオ400を生成する。変換規則を用いたSIPシナリオ400の生成については、後述する。
【0033】
シナリオ作成処理部204は、各パケットから端末間の呼び出し順序やリクエスト内容を抽出して合成することにより、試験装置100が実施可能なSIPシナリオ400を生成する。シナリオ作成処理部204により、作成されたSIPシナリオの例を図6に示す。SIPシナリオ400は、「INVITE」、「ACK」、「BYE」等のリクエスト種別やリクエスト順序情報、SIPヘッダの情報等を含む。
【0034】
続いて、図7、図8、図9を用いてシナリオ作成処理部204による変換規則情報部206が保有する変換規則を用いたSIPシナリオ作成処理について説明する。図7は、SIPシナリオ生成の基となるSIP信号の一部を例示したものである。図8は、シナリオ作成処理部204に与えられる変換規則を例示したものである。
【0035】
変換規則には、シナリオ生成時に元の値から変換を行う部分を特定する情報と変換内容が記載されている。図8の2行目から5行目の記述では、SIPヘッダの「content-length」というパラメータを「<?auto.content-length?>」という試験装置実行時に置き換え可能な変数に変換するという規則が記載されている。本実施の形態では、「tgt.part」という指定(たとえば図8の2行目)により変換個所のパラメータ名を指定している。また、「replace」という指定(たとえば図8の4行目)により変換の方法が指定されている。変換の方法には、値の置換の他に、値の削除やパラメータ自体の削除等が指定できるものとする。
【0036】
試験装置固有の変数とは、試験実施部103が送受信試験を行う場合に、予め試験装置に設定された値に置き換えるための変数である。本実施の形態において、試験実施部103において「content-length」の値が「150」であるという設定がされていた場合、試験実施部103は送受信試験前にSIPシナリオの「content-length」を「150」に書き換える処理を行う。試験装置100において、試験実施者は当該変数の値を適宜変更することによって、様々な設定値でSIPの送受信試験を実施することが可能になる。
【0037】
変換規則には、条件式や関数式を含む表現も記載できるものとする。図8の8行目から12行目の記載では、「caller(呼び出し元)」のリクエストであった場合のみ、「Call-ID」を変換する条件が設定されている。また、変換内容として乱数を自動的に生成するための関数表現「<?func.rand(alphanum,16)?>」を含む変換内容が指定されている。試験実施部103は、送受信試験前にこの関数を評価し、SIPシナリオを書き換える処理を行う。
【0038】
変換規則には、SIPのパラメータ毎ではなく、パラメータの一部について変換する規則も指定できる。図8の15行目から38行目でSIPヘッダの「From」を変換する例を示している。図8の15行目から18行目の変換規則では、SIPヘッダの「From」パラメータのユーザ名のみを変換する規則を規定する。同様に、図8の20行目から23行目の変換規則では、SIPヘッダの「From」パラメータのホスト名の部分のみを変換する規則を規定する。本実施の形態では、「act.tgt」という指定(たとえば図8の16行目)によりSIPヘッダの特定パラメータの一部分を特定する。
【0039】
変換規則には、SIPプロトコルの特定のパラメータを指し示す文字列である定数が予め定まっているものとする。図8の例では、「hdr.content-length」という文字列は、SIPプロトコルの「content-length」を示す定数である。試験実施部103は、これらの定数を解釈することにより、SIPプロトコルのパラメータの一部を書き換えることができる。
【0040】
シナリオ作成処理部204が図8の変換規則を用いて、図7のSIP信号情報を変換した結果を図9に示す。
【0041】
図8で例示した変換規則では、特定のパラメータを試験装置実行時に置き換え可能な変数に変換する例を示したが、変換規則には図10のように特定のパラメータの値を文字列や数値の固定値に変換する規則も記載することができる。この場合、シナリオ作成処理部204は、SIPシナリオ作成時に変換箇所を特定の文字列で置き換える。また、シナリオ作成処理部204は、SIPシナリオ作成時に前述の関数表現を評価したSIPシナリオを作成してもよい。さらに、本実施の形態ではSIPのヘッダ部分の変換例を示したが、SIPのメッセージ部分等の変換も同様に行うことができる。
【0042】
このような一連の処理により、SIPに関する知識が豊富でないユーザであっても試験装置100にパケットキャプチャログ300を入力するのみでSIPシナリオ400を容易に生成できる。また、変換規則を用いてSIPシナリオ400を生成することにより、生成されたSIPシナリオを修正する作業が軽減される。また、ユーザは、SIPシナリオ400の生成前にSIP信号シーケンス表示部202において不要なSIP信号やノードを選択し、除外することができるため、パケットキャプチャログを直接編集する必要がなくなる。
【0043】
実施の形態2
本発明の実施の形態2にかかるパケット解析装置について図11に示すシーケンス図を用いて説明する。なお、この発明の実施の形態2にかかるパケット解析装置の全体構成は図2及び図3に示す構成と同様であり、説明を省略する。この発明の実施の形態では、ユーザによるパケットキャプチャログの変換を行わず、SIPシナリオに一括処理することを特徴とする。
【0044】
この構成における本発明のパケット解析装置の動作について、第一の実施の形態と異なる部分のみ説明する。
【0045】
図11のステップA4においてSIP信号シーケンス表示部202は、ユーザにSIPシーケンス情報を表示する。この場合、SIP信号シーケンス表示部202は、ユーザからの不要なノード、除外信号、試験対象ノード設定に関する設定を受け付けない。また、SIPシーケンス編集部203はノード、信号の除外等の処理は行わない。シナリオ作成処理部204は、SIP信号情報からSIPシナリオ400を生成する。
【0046】
このような一連の処理により、ユーザによるパケットの編集を一切行うことなく、試験装置100で試験送受信が可能なSIPシナリオ400を生成することが可能となる。
【符号の説明】
【0047】
1 パケット解析装置
100 試験装置
110 キャプチャ装置
200 パケットキャプチャログ変換部
201 ログファイル解析部
202 SIP信号シーケンス表示部
203 SIP信号シーケンス編集部
204 シナリオ作成部
205 設定内容確認部
206 変換規則情報部
300 パケットキャプチャログ
400 SIPシナリオ

【特許請求の範囲】
【請求項1】
送受信された複数のパケット情報を入力する手段と、
前記パケット情報からSIP(Session Initiation Protocol)に関する信号情報を抽出し、前記信号情報から端末間のリクエスト順序とリクエスト情報を含むSIPシナリオ情報を生成するSIPシナリオ生成手段とを備えるパケット解析装置。
【請求項2】
前記信号情報をシーケンス表示し、前記SIPシナリオ情報の作成から除外する信号の情報を受け付け、前記SIPシナリオ情報の作成に必要な信号のみを前記SIPシナリオ生成手段に入力するシーケンス表示手段を備える、請求項1に記載のパケット解析装置。
【請求項3】
前記シナリオ生成手段は、所定の変換規則に従ってシナリオを生成する請求項1又は請求項2に記載のパケット解析装置。
【請求項4】
前記変換規則は、条件式や関数式を含む表現で記載できる請求項3記載のパケット解析装置。
【請求項5】
前記変換規則は、SIPの文法の特定個所を指し示すための定数を用いて記載できる請求項3又は4記載のパケット解析装置。
【請求項6】
送受信された複数のパケット情報を入力する入力ステップと、
前記パケット情報からSIPに関する信号情報を抽出し、前記信号情報から端末間のリクエスト順序とリクエスト情報を含むSIPシナリオ情報を生成するシナリオ生成ステップとを備えるパケット解析方法。
【請求項7】
前記信号情報をシーケンス表示し、前記SIPシナリオ情報の作成から除外する信号の情報を受け付け、前記SIPシナリオ情報の作成に必要な信号のみを前記SIPシナリオ生成ステップに入力するシーケンス表示ステップを備える、請求項6に記載のパケット解析方法。
【請求項8】
前記シナリオ生成ステップでは、所定の変換規則に従ってシナリオを生成する請求項6又は請求項7記載のパケット解析方法。
【請求項9】
前記変換規則は、条件式や関数式を含む表現で記載できる請求項8記載のパケット解析方法。
【請求項10】
前記変換規則は、SIPの文法の特定個所を指し示すための定数を用いて記載できることを特徴とする請求項8又は9記載のパケット解析方法。
【請求項11】
送受信された複数のパケット情報を入力するステップと、
前記パケット情報からSIPに関する信号情報を抽出し、前記信号情報から端末間のリクエスト順序とリクエスト情報を含むSIPシナリオ情報を生成するシナリオ生成ステップとをコンピュータに対して実行させるパケット解析プログラム。
【請求項12】
前記信号情報をシーケンス表示し、前記SIPシナリオ情報の作成から除外する信号の情報を受け付け、前記SIPシナリオ情報の作成に必要な信号のみを前記SIPシナリオ生成ステップに入力するシーケンス表示ステップを備える、請求項11に記載のパケット解析プログラム。
【請求項13】
前記シナリオ生成ステップは、所定の変換規則に従ってシナリオを生成する請求項12記載のパケット解析プログラム。
【請求項14】
前記変換規則は、条件式や関数式を含む表現で記載できる請求項13記載のパケット解析プログラム。
【請求項15】
前記変換規則は、SIPの文法の特定個所を指し示すための定数を用いて記載できることを特徴とする請求項13又は14記載のパケット解析プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図4】
image rotate


【公開番号】特開2010−258988(P2010−258988A)
【公開日】平成22年11月11日(2010.11.11)
【国際特許分類】
【出願番号】特願2009−109698(P2009−109698)
【出願日】平成21年4月28日(2009.4.28)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】