(57)【要約】【課題】従来よりも高効率にＳＩＰメッセージを圧縮可能なモジュールを生成すること。【解決手段】本発明にかかるＳＩＰメッセージ圧縮解凍モジュール生成装置は、ＡＳＮ．１抽象構文に対応するＳＩＰメッセージのバイナリ構造とＡＳＮ．１転送構文に対応するＳＩＰメッセージのバイナリ構造を相互に変換するプログラムのソースコードを生成する標準変換プログラムソースコード生成部（１）と、ＳＩＰメッセージとＡＳＮ．１抽象構文に対応するメッセージのバイナリ構造を相互に変換するプログラムのソースコードを生成する独自変換プログラムソースコード生成部（２）と、第１および第２のソースコード生成手段が生成したソースコードに基づいて、ＳＩＰメッセージとＡＳＮ．１転送構文に対応するメッセージのバイナリ構造を相互に変換するＳＩＰメッセージ圧縮モジュールおよび解凍モジュールを生成する圧縮／解凍モジュール生成部（３）と、を備える。【選択図】        図１
2008123122.tif 000002
【特許請求の範囲】
【請求項１】
ＳＩＰ（Session  Initiation  Protocol）シグナリングを行う通信装置が実装するＳＩＰメッセージの圧縮モジュールおよび解凍モジュールを生成するＳＩＰメッセージ圧縮解凍モジュール生成装置であって、
ＳＩＰメッセージをＡＳＮ．１（Abstract  Syntax  Notation  One）抽象構文のテキストとして定義したＳＩＰメッセージ定義情報に基づいて、ＡＳＮ．１抽象構文に対応するＳＩＰメッセージのバイナリ構造とＡＳＮ．１転送構文に対応するＳＩＰメッセージのバイナリ構造とを相互に変換するためのプログラムのソースコードを生成する第１のソースコード生成手段と、
ＳＩＰメッセージ構文とＡＳＮ．１抽象構文との対応を示す対応定義情報に基づいて、テキストで定義されたＳＩＰメッセージとＡＳＮ．１抽象構文に対応するメッセージのバイナリ構造とを相互に変換するためのプログラムのソースコードを生成する第２のソースコード生成手段と、
前記第１のソースコード生成手段および前記第２のソースコード生成手段が生成したソースコードに基づいて、テキストで定義されたＳＩＰメッセージとＡＳＮ．１転送構文に対応するメッセージのバイナリ構造とを相互に変換するためのＳＩＰメッセージ圧縮モジュールおよびＳＩＰメッセージ解凍モジュールを生成するモジュール生成手段と、
を備えることを特徴とするＳＩＰメッセージ圧縮解凍モジュール生成装置。
【請求項２】
前記モジュール生成手段が、
上位アプリケーションとのインタフェースがＩＥＴＦ（The  Internet  Engineering  Task  Force）において規定されたSigComp（Signaling  Compression）標準に従ったＳＩＰメッセージ圧縮モジュールおよびＳＩＰメッセージ解凍モジュールを生成することを特徴とする請求項１に記載のＳＩＰメッセージ圧縮解凍モジュール生成装置。
【請求項３】
前記第２のソースコード生成手段が、
ＳＩＰメッセージ構文を構成する文字列の中で半固定的に使用される文字列と、より情報量の少ないＡＳＮ．１抽象構文で示された情報と、を対応付けた対応定義情報を使用してソースコードを生成することを特徴とする請求項１または２に記載のＳＩＰメッセージ圧縮解凍モジュール生成装置。
【請求項４】
前記第２のソースコード生成手段が、
ＳＩＰメッセージ構文を構成するパラメータと、当該パラメータの範囲を強制的に制限するＡＳＮ．１抽象構文で示された情報と、を対応付けた対応定義情報を使用してソースコードを生成することを特徴とする請求項１、２または３に記載のＳＩＰメッセージ圧縮解凍モジュール生成装置。
【請求項５】
前記第２のソースコード生成手段が、
ＳＩＰメッセージ構文を構成するパラメータと、ＩＥＴＦにおいて規定されるＳＩＰ標準および前記ＳＩＰシグナリングを行う通信装置において一意に規定される文字列と、を対応付けた対応定義情報を使用してソースコードを生成することを特徴とする請求項１〜４のいずれか一つに記載のＳＩＰメッセージ圧縮解凍モジュール生成装置。
【請求項６】
前記第２のソースコード生成手段が、
ＳＩＰメッセージ構文を構成するパラメータと、前記通信装置に固有の情報であって、かつＳＩＰシグナリングを受信する装置にあらかじめ通知されている情報と、を対応付けた対応定義情報を使用してソースコードを生成することを特徴とする請求項１〜５のいずれか一つに記載のＳＩＰメッセージ圧縮解凍モジュール生成装置。
【請求項７】
前記第２のソースコード生成手段が、
ＳＩＰメッセージ構文を構成する文字列の中で複数回使用される文字列と、より情報量の少ないＡＳＮ．１抽象構文で示された情報と、を対応付けた対応定義情報を使用してソースコードを生成することを特徴とする請求項１〜６のいずれか一つに記載のＳＩＰメッセージ圧縮解凍モジュール生成装置。
【請求項８】
前記第２のソースコード生成手段が、
ＳＩＰメッセージ構文を構成するパラメータと、前記通信装置が接続するアクセス網によって付与された情報と、を対応付けた対応定義情報を使用してソースコードを生成することを特徴とする請求項１〜７のいずれか一つに記載のＳＩＰメッセージ圧縮解凍モジュール生成装置。
【請求項９】
ＳＩＰアプリケーションと、ＳＩＰメッセージを送受信するトランスポート機能と、ＳＩＰメッセージの圧縮および解凍を行うモジュールと、を備えた通信装置であって、
前記ＳＩＰメッセージの圧縮および解凍を行うモジュールとして、請求項２〜８のいずれか一つに記載のＳＩＰメッセージ圧縮解凍モジュールが生成したＳＩＰメッセージ圧縮モジュールおよびＳＩＰメッセージ解凍モジュールを使用することを特徴とする通信装置。
【請求項１０】
請求項３〜８のいずれか一つに記載の対応定義情報を使用してＳＩＰメッセージの圧縮および解凍を行うことを特徴とするＳＩＰメッセージ圧縮解凍方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＳＩＰ（Session  Initiation  Protocol）シグナリングの圧縮技術に関するものであり、特に、通信装置へ実装するＳＩＰメッセージを圧縮するためのモジュールおよびＳＩＰメッセージを解凍するためのモジュールを生成する圧縮解凍モジュール生成装置およびＳＩＰメッセージの圧縮および解凍を行う通信装置に関するものである。
【背景技術】
【０００２】
ＳＩＰ（Session  Initiation  Protocol）は音声や映像などマルチメディアのセションを確立するためのプロトコルであり、ＩＥＴＦ（The  Internet  Engineering  Task  Force）ＲＦＣ２５４３で規定されている。ＳＩＰで使用するメッセージはＨＴＴＰと同じくテキストで規定されているため、メッセージは一般的に大きなサイズになり、帯域の小さな通信環境での使用する場合、呼設定時間の増大や帯域の浪費などが問題となる。そのため、SIPシグナリングの圧縮技術である“Signaling  Compression”（以下、SigCompと記載する）が規定されている（下記非特許文献１参照）。
【０００３】
図１２は、SigCompのアーキテクチャを示す図であり、SIPアプリケーション（SIP  Application）９１、ＵＤＰやＴＣＰなどのＳＩＰメッセージのトランスポートレイヤ（Transport  Layer）９２、およびＲＦＣ３３２０で規定されたSigCompモジュール９３により構成される。また、SigCompモジュール９３は、送信メッセージの配送部（Dispatcher）９４ａ、受信メッセージの配送部（Dispatcher）９４、配送部９４によってＳＩＰセッションなどグループ単位で生成起動され、メッセージの圧縮を行なう圧縮部（Compressor）９６、配送部（Dispatcher）９５によってメッセージ毎に生成されＵＤＶＭ（Universal  Decompressor  Virtual  Machine）としてメッセージの解凍を行なう解凍部（Decompressor）９７およびＵＤＶＭのコードや利用する辞書などをStateとして管理する状態管理部（State  Handler）９８を含んでいる。
【０００４】
また、SigCompでは圧縮解凍アルゴリズムは規定されていないが、暗黙的にはＤｅｆｌａｔｅなどの圧縮アルゴリズムが利用される（例えば、下記非特許文献２参照）。SigCompにおいて、解凍はＵＤＶＭ（いわゆる仮想マシン）で行われ、そのＵＤＶＭコードは、圧縮サイドが最初のＳＩＰメッセージに乗せて相手側（解凍を行う側）へ送信する。または、解凍側で初期的にＵＤＶＭコードを状態として静的に持つ。
【０００５】
一方、ＳＩＰとは異なるが、同様のテキストとなるＸＭＬデータの圧縮手法が下記特許文献１に記載されている。下記特許文献１に記載の技術においては、まず、ＸＭＬの構文を解析し、テキストデータ部と構造を示す構文部に分離する。そして、Ｄｅｆｌａｔｅなどを使用してテキストデータ部を圧縮し、また、ＡＳＮ．１（Abstract  Syntax  Notation  One）転送構文を使用して構文部を圧縮した後、両者をマージすることによりＸＭＬデータを圧縮する。
【０００６】
【特許文献１】特開２００２−２４４８９４号公報
【非特許文献１】R.Price、C.Bormannほか著「RFC  3320：Signaling  Compression（SigComp）」IETF，2003年1月、P5〜15
【非特許文献２】A.Surtees、M.West著「RFC  4464：Signaling  Compression（SigComp）  Users'Guide」IETF，2006年5月、P12〜31
【発明の開示】
【発明が解決しようとする課題】
【０００７】
従来のSigCompの標準ではＤｅｆｌａｔｅなどＳＩＰの構造を意識しない圧縮を行なうため、圧縮効率が良くないという問題があった。下記ＵＲＬにおいてOpenSigcomプロジェクトが発行する「osc_characteristics_0-1.pdf」には、Ｄｅｆｌａｔｅ適用時のサイズが平均７７％まで圧縮できると記載されている。しかしながら、圧縮時のメッセージサイズ、とりわけＩＮＶＩＴＥメッセージのサイズは１００〜５００バイトであり圧縮効率は十分ではない。
http://www.opensigcomp.org/osc_characteristics_0-1.pdf
【０００８】
また、テキストベースであるSIPメッセージの大きさの問題は、「http://www.tspt.net.et/documentation/VOIP/H_323versusSIP.htm」でも分析がなされている。ここでは、テキストベースであるSIPメッセージをＤｅｆｌａｔｅで圧縮するのに対して、ＡＳＮ．１転送構文のＰＥＲエンコードのプロトコルを定義すればよりサイズが小さくなることが示唆されている。
【０００９】
このように従来のＳＩＰメッセージの圧縮手法は十分ではなく、とくに衛星通信など帯域の小さい通信システムにＳＩＰを適用する場合に、帯域の効率的利用と呼設定時間の観点から問題になる。
【００１０】
また、上記特許文献１に記載の技術では、ＡＳＮ．１転送構文のPERエンコーディングを圧縮のために使用しているため、XML構文に対して優れた圧縮効率が得られる。なお、ＡＳＮ．１の規定は、「ITU-T  X.680  Information  technology  Abstract  Syntax  Notation  One（ＡＳＮ．１）：Specification  of  basic  notation」で定められたものであり、ＰＥＲについては「ITU-T  X.691  Information  technology-ＡＳＮ．１  encoding  rules：Specification  of  Packed  Encoding  Rules（PER）」によって定められたものである。
【００１１】
しかしながら、この上記特許文献１に記載の技術には二つの問題がある。一つはリアルタイム性の問題である。上記特許文献１に記載の技術はＸＭＬデータをＨＤＤに圧縮保存することを第一ターゲットにしており、「ＸＭＬ（テキスト）」→「ＡＳＮ．１抽象構文（テキスト）」→「ＡＳＮ．１転送構文（バイナリ）」というステップで圧縮する。このような、中間段階としてターゲットを「ＡＳＮ．１抽象構文（テキスト）」に置き換える処理は、通信のようなリアルタイム処理にはマッチしない、という問題がある。
【００１２】
また、ＳＩＰとSigCompとの整合性の問題がある。すなわち、上記特許文献１に記載されたルーチンは、SigCompモジュールの圧縮・解凍アルゴリズムとして動作することができない、という問題がある。
【００１３】
本発明は、上記に鑑みてなされたものであって、従来よりも高効率にＳＩＰメッセージを圧縮することが可能、かつリアルタイム性を損なわずにＳＩＰメッセージを圧縮および解凍することが可能なＳＩＰメッセージ圧縮モジュールおよびＳＩＰメッセージ解凍モジュールを生成するＳＩＰメッセージ圧縮解凍モジュール生成装置を得ることを目的とする。
【００１４】
また、ＳＩＰメッセージの標準圧縮メカニズムであるSigCompに対して適用可能なＳＩＰメッセージ圧縮モジュールおよびＳＩＰメッセージ解凍モジュールを生成するＳＩＰメッセージ圧縮解凍モジュール生成装置を得ることを目的とする。
【課題を解決するための手段】
【００１５】
上述した課題を解決し、目的を達成するために、本発明は、ＳＩＰシグナリングを行う通信装置が実装するＳＩＰメッセージの圧縮モジュールおよび解凍モジュールを生成するＳＩＰメッセージ圧縮解凍モジュール生成装置であって、ＳＩＰメッセージをＡＳＮ．１（Abstract  Syntax  Notation  One）抽象構文のテキストとして定義したＳＩＰメッセージ定義情報に基づいて、ＡＳＮ．１抽象構文に対応するＳＩＰメッセージのバイナリ構造とＡＳＮ．１転送構文に対応するＳＩＰメッセージのバイナリ構造とを相互に変換するためのプログラムのソースコードを生成する第１のソースコード生成手段と、ＳＩＰメッセージ構文とＡＳＮ．１抽象構文との対応を示す対応定義情報に基づいて、テキストで定義されたＳＩＰメッセージとＡＳＮ．１抽象構文に対応するメッセージのバイナリ構造とを相互に変換するためのプログラムのソースコードを生成する第２のソースコード生成手段と、前記第１のソースコード生成手段および前記第２のソースコード生成手段が生成したソースコードに基づいて、テキストで定義されたＳＩＰメッセージとＡＳＮ．１転送構文に対応するメッセージのバイナリ構造とを相互に変換するためのＳＩＰメッセージ圧縮モジュールおよびＳＩＰメッセージ解凍モジュールを生成するモジュール生成手段と、を備えることを特徴とする。
【発明の効果】
【００１６】
この発明によれば、ＳＩＰメッセージをＡＳＮ．１抽象構文のテキストとして定義した情報（ＳＩＰメッセージ定義情報）、およびテキストで表現されるＳＩＰメッセージ構文とＡＳＮ．１抽象構文との対応情報（対応定義情報）に基づいて、ＳＩＰメッセージの圧縮効率を大きく向上させることが可能なＡＳＮ．１転送構文を利用したＳＩＰメッセージ圧縮モジュールおよびＳＩＰメッセージ解凍モジュールを生成するので、リアルタイム性を損なうことなく通信装置におけるＳＩＰメッセージの圧縮効率を向上させることが可能となる、という効果を奏する。
【発明を実施するための最良の形態】
【００１７】
以下に、本発明にかかるＳＩＰメッセージ圧縮解凍モジュール生成装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１８】
実施の形態１．
図１は、本発明にかかるＳＩＰメッセージ圧縮解凍モジュール生成装置の実施の形態１の構成例を示す図である。このＳＩＰメッセージ圧縮解凍モジュール生成装置は、第１のソースコード生成手段である標準変換プログラムソースコード生成部１と、第２のソースコード生成手段である独自変換プログラムソースコード生成部２と、モジュール生成手段である圧縮／解凍モジュール生成部３とを備える。そして、このＳＩＰメッセージ圧縮解凍モジュール生成装置は、ＩＥＴＦにおいて規定されたＳＩＰ標準のテキストメッセージをＡＳＮ．１転送構文のバイナリメッセージに圧縮するために必要なプログラムを生成する。また、逆にＡＳＮ．１転送構文で送信されたＳＩＰのバイナリメッセージを、ＳＩＰ標準のテキストメッセージに解凍するためのプログラムを生成する。そして、これらのＳＩＰメッセージ圧縮モジュールおよびＳＩＰメッセージ解凍モジュール（プログラム）を、呼制御プロトコルとしてＳＩＰを使用する無線通信システムを構成する通信装置へ実装することにより、帯域を効率的に利用することが可能となる。以下に、実施の形態１のＳＩＰメッセージ圧縮解凍モジュール生成装置の動作を説明する。
【００１９】
まず、ＳＩＰメッセージ圧縮モジュールおよびＳＩＰメッセージ解凍モジュールの生成動作を図１に基づいて説明する。図１において、１１はＳＩＰメッセージをＡＳＮ．１抽象構文のテキストとして定義したもの（以下、「ＳＩＰメッセージ定義情報」と呼ぶ）である。ＳＩＰメッセージの定義例の一部を図２に示す。
【００２０】
そして、図１に示したように、標準変換プログラムソースコード生成部１は、ＳＩＰメッセージ定義情報１１を入力とし、この入力された情報に基づいて、ＡＳＮ．１抽象構文に対応するメッセージのバイナリ構造とＡＳＮ．１転送構文に対応するメッセージのバイナリ構造とを変換するプログラムのソースコードを生成出力する。図１に示した１３および１４は上記標準変換プログラムソースコード生成部１によって自動生成された、「ＳＩＰ  ＡＳＮ．１抽象構文-転送構文変換のためのヘッダ」および「ＳＩＰ  ＡＳＮ．１抽象構文-転送構文変換のためのソースコード」である。標準変換プログラムソースコード生成部１は、たとえば、「http://www.oss.com/products/products.html」において提供されるツールを利用して実現できる。このようなツールでは、ＡＳＮ．１抽象構文に対応するメッセージのバイナリ構造がＣやＣ++の構造体の形で独自に規定されている。また、ＡＳＮ．１転送構文に対応するメッセージのバイナリ構造は、例えばＰＥＲエンコーディングであれば「ＴＵ-Ｔ  Ｘ．６９１」で規定されている。
【００２１】
また、図１に示した１２はテキストで表現されるＳＩＰメッセージ構文とＡＳＮ．１抽象構文との対応を示すもの（以下、「対応定義情報」と呼ぶ）である。対応定義例の一部を図３に示す。
【００２２】
この対応定義情報１２は、ＳＩＰメッセージ構文とＡＳＮ．１抽象構文を変換するプログラムを自動生成し易いように、各パラメータのマッピングを各々定義したものである。
【００２３】
そして、独自変換プログラムソースコード生成部２は、対応定義情報１２を入力とし、この入力された情報に基づいて、テキストで定義されたＳＩＰメッセージとＡＳＮ．１抽象構文に対応するメッセージのバイナリ構造とを変換するプログラムのソースコードを生成出力する。また、独自変換プログラムソースコード生成部２は、必要に応じてＳＩＰメッセージ定義情報１１を読み込む。１５および１６は独自変換プログラムソースコード生成部２によって自動生成された、「ＳＩＰテキスト構文とＡＳＮ．１抽象構文変換のためのヘッダ」および「ＳＩＰテキスト構文とＡＳＮ．１抽象構文変換のためのソースコード」である。なお、ＳＩＰテキスト構文とはＲＦＣ２５４３で規定されたものであり、またＡＳＮ．１抽象構文に対応するメッセージのバイナリ構造とは前述のものと同一である。
【００２４】
１８は、圧縮／解凍モジュール生成部３が、標準変換プログラムソースコード生成部１および独自変換プログラムソースコード生成部２が生成したソースコード群（ＳＩＰ  ＡＳＮ．１抽象構文-転送構文変換のためのヘッダ１３，ＳＩＰ  ＡＳＮ．１抽象構文-転送構文変換のためのソースコード１４，ＳＩＰテキスト構文とＡＳＮ．１抽象構文変換のためのヘッダ１５，ＳＩＰテキスト構文とＡＳＮ．１抽象構文変換のためのソースコード１６）と、予め生成され保持しておいた共通部１７とを対象に、コンパイルを実行して生成される圧縮モジュール(Compressor)であり、また１９は、同様の方法で生成される解凍モジュール（Decompressor）である。圧縮モジュール１８は、テキストで定義されたＳＩＰメッセージをＡＳＮ．１転送構文に対応するメッセージのバイナリ構造に変換する機能を持ち、解凍モジュール１９は、ＡＳＮ．１転送構文に対応するメッセージのバイナリ構造をテキストで定義されたＳＩＰメッセージに変換する機能を持つ。なお、共通部１７は上位および下位とのインタフェース、ＳＩＰの構文を理解するパーサなどに関するソースコードを含む。
【００２５】
図４は、圧縮モジュール１８の構成概念図を示し、また図５は、解凍モジュール１９の構成概念図を示す。なお、図４および図５中に記載された、テキストで表現されるＳＩＰメッセージをバイナリで表現されるＡＳＮ．１抽象構文へ変換する変換モジュール２２（ＳＩＰテキストメッセージ→ＡＳＮ．１抽象構文変換モジュール２２）、およびバイナリで表現されるＡＳＮ．１抽象構文をテキストで表現されるＳＩＰメッセージへ変換する変換モジュール２４（ＡＳＮ．１抽象構文→ＳＩＰテキストメッセージ変換モジュール２４）は、図６−１および図６−２に示すように、中間にＳＩＰメッセージ構文とＡＳＮ．１ではない独自のバイナリ表現との変換段（ＳＩＰテキスト-独自バイナリ変換部）２５，２６を設けて実現してもよい。一般にＳＩＰアプリケーションは、パーサ（テキストで表現されるＳＩＰメッセージを独自のバイナリ表現で置き換える機構）を持っている。そのため、このパーサを流用することにより図６−１および図６−２に示す変換段２５，２６を実現できる。
【００２６】
つづいて、通信装置がＳＩＰメッセージを送受信する場合のＳＩＰメッセージ圧縮動作および解凍動作について説明する。図７は、上記生成した圧縮モジュール１８および解凍モジュール１９を使用して行うＳＩＰメッセージの送受信動作例を示す図である。図７において、３１は圧縮モジュール１８および解凍モジュール１９を介してＳＩＰメッセージを送受信するＳＩＰアプリケーション（SIP  Application）、３２はＳＩＰメッセージのトランスポートレイヤ（Transport  Layer）である。ＳＩＰメッセージを送信する場合、ＳＩＰアプリケーション３１は、圧縮モジュール１８を起動して（利用して）メッセージをＡＳＮ．１転送構文に変換し、変換処理の結果得られたＳＩＰメッセージ（圧縮されたＳＩＰメッセージ）を、トランスポートレイヤ３２を使用して送信する。また、ＳＩＰアプリケーション３１は、トランスポートレイヤ３２から圧縮されたＳＩＰメッセージを受信した場合、解凍モジュール１９を利用して受信したＳＩＰメッセージを解凍し、解凍の結果得られたＳＩＰメッセージを使用する。
【００２７】
なお本実施の形態では、ＲＦＣ２５４３において規定されているＳＩＰに関するメッセージの圧縮・解凍の手法について説明を行ったが、同様の手法が、ＲＦＣ２３２７において規定されているＳＤＰ（session  description  protocol）に対しても適用可能である。
【００２８】
このように、本実施の形態においては、ＳＩＰメッセージをＡＳＮ．１抽象構文のテキストとして定義した情報（ＳＩＰメッセージ定義情報）、およびテキストで表現されるＳＩＰメッセージ構文とＡＳＮ．１抽象構文との対応情報（対応定義情報）に基づいて、ＳＩＰメッセージの圧縮効率を大きく向上させることが可能なＡＳＮ．１転送構文を利用したＳＩＰメッセージの圧縮モジュールおよび解凍モジュールを生成することとした。これにより、リアルタイム性を損なうことなく通信装置におけるＳＩＰメッセージの圧縮効率を向上させることが可能となる。
【００２９】
また、圧縮、解凍モジュールは、予め生成しておいた二つの定義ファイルに基づいて生成するため、たとえば、ＳＩＰが拡張された場合、定義ファイルの更新することによりＳＩＰの拡張内容に柔軟に対応でき、ＳＩＰの構造を意識しないＤｅｆｌａｔｅなどと同等のメンテナンス性（メンテナンスのしやすさ）を保証することができる。すなわち、ＳＩＰが拡張された場合であっても。圧縮、解凍モジュールを大きく改造する必要がない。
【００３０】
実施の形態２．
つづいて、実施の形態２について説明する。本実施の形態では、既存のSigComp対応のＳＩＰプリケーションを備えた通信装置が、実施の形態１で示したＳＩＰメッセージ圧縮モジュールおよびＳＩＰメッセージ解凍モジュールを利用してＳＩＰメッセージを送受信する場合について説明する。なお、通信装置自身のハードウエア構成自体は従来から存在する一般的なＳＩＰ対応の通信装置と同様である。図８は、通信装置におけるＳＩＰテキストメッセージの標準圧縮メカニズムであるSigCompの中で、圧縮アルゴリズムとしてＡＳＮ．１転送構文を使用する場合の概念図を示したものである。図８において、１８ａは、実施の形態１で説明したＡＳＮ．１転送構文を圧縮アルゴリズムとしてとらえ、この処理をSigCompの圧縮部(Compressor)として取り込んだものである。１９ａは、同様のコンセプトの解凍部(Decompressor)である。また、４１はＳＩＰアプリケーション（SIP  Application）、４２はトランスポートレイヤ（Transport  Layer）、４３はSigCompモジュールである。また、SigCompモジュール４３は、圧縮部１８ａ，解凍部１９ａの他に、配送部（Dispatcher）４４および４５，状態管理部（State  Handler）４６を含んでいる。なお、配送部４４および４５，状態管理部４６は、上述した図１２の配送部９４および９５，状態管理部９８と同じものである。
【００３１】
既存のSigComp対応のＳＩＰプリケーションである上位のＳＩＰアプリケーション４１にとって、圧縮および解凍メカニズムが標準のメカニズム（SigComp標準）に見えることが、既存のＳＩＰ対応通信装置へＡＳＮ．１転送構文を利用したＳＩＰメッセージの圧縮モジュールおよび解凍解凍モジュールを適用するために重要である。そのため本実施の形態においては、SigCompモジュール４３とＳＩＰアプリケーション４１との間のＡＰＩ（Application  Program  Interface）をSigComp互換とする。これを実現するため、たとえば以下のように送信ＡＰＩを規定する。
SigComp_MessageSend(int  compartment_id,  char  *sip_message,  int  length)
【００３２】
ここで、compartment_idはSigComp上、圧縮部１８ａインスタンスを指定するＩＤであり、仮にＳＩＰメッセージが全て本発明の内容で圧縮されるのであれば固定値でよい。sip_messageはテキストで記述されたＳＩＰ送信メッセージ、lengthはそのメッセージバイト数である。
【００３３】
一方、受信ＡＰＩは一例として以下のコールバックルーチンで定義する。
SigComp_MessageRecv(char  *sip_message,  int  length,  int  *compartment_id)
【００３４】
このルーチンが予めシステムに登録されると、メッセージ受信時このＡＰＩがシステムから起動される。ここで、sip_messageはテキストで記述されたＳＩＰ受信メッセージ、lengthはそのメッセージバイト数、compartment_idはこのコールバックの中で更新されるＩＤである。compartment_idは圧縮サイドと解凍サイドでＵＤＶＭコードなどの状態を共有するためのものであり、ＳＩＰメッセージが全て本発明にかかる方式を用いて解凍されるのであれば送信時に指定した値であればよい。
【００３５】
なお、SigCompでは対向SigComp間でのメッセージを定義しているが、圧縮サイドと解凍サイドが本発明にかかる方式のみに従うならメッセージは独自でも良い。また、SigCompで規定されたメッセージを使用する場合、このメッセージで規定されている「Returned  feed  back  itemパラメータ」はヌルになり、「partial  state  identifierパラメータ」はＡＳＮ．１転送構文を使用した圧縮を示す固定値とすればよい。
【００３６】
以上のような手法を用いてSigCompにＡＳＮ．１転送構文を利用した圧縮モジュールおよび解凍モジュールを適用することにより、上位のＳＩＰプリケーションにとってあたかも、SigComp標準が動作しているようにみせることができる。すなわち、SigCompにＡＳＮ．１転送構文を利用した圧縮モジュールおよび解凍モジュールを既存のSigCompに対応したＳＩＰプリケーションに対して適用することができる。
【００３７】
実施の形態３．
つづいて、実施の形態３について説明する。図９は、本発明にかかるＳＩＰメッセージ圧縮解凍モジュール生成装置の実施の形態３の構成例を示す図である。本実施の形態のＳＩＰメッセージ圧縮解凍モジュール生成装置は、上述した実施の形態１のＳＩＰメッセージ圧縮解凍モジュール生成装置と同様に、標準変換プログラムソースコード生成部１と、独自変換プログラムソースコード生成部２と、圧縮／解凍モジュール生成部３とを備える。本実施の形態のＳＩＰメッセージ圧縮解凍モジュール生成装置は、ＳＩＰ標準のテキストメッセージをＡＳＮ．１転送構文のバイナリメッセージに圧縮するために必要なSigComp対応プログラムを生成する。また、逆にＡＳＮ．１転送構文で送信されたＳＩＰのバイナリメッセージを解凍し、ＳＩＰ標準のテキストメッセージを得るためのSigComp対応プログラムを生成する。
【００３８】
上記ＳＩＰメッセージを圧縮および解凍するSigComp対応プログラムを生成する場合、実施の形態１の場合と同様に、標準変換プログラムソースコード生成部１は、入力情報であるＳＩＰメッセージ定義情報１１に基づいて、「ＳＩＰ  ＡＳＮ．１抽象構文-転送構文変換のためのヘッダ１３」および「ＳＩＰ  ＡＳＮ．１抽象構文-転送構文変換のためのソースコード１４」を生成する。また、独自変換プログラムソースコード生成部２は、入力情報である対応定義情報１２に基づいて、「ＳＩＰテキスト構文とＡＳＮ．１抽象構文変換のためのヘッダ１５」および「ＳＩＰテキスト構文とＡＳＮ．１抽象構文変換のためのソースコード１６」を生成する。
【００３９】
また、共通部１７ａがSigComp特有の機能（例えば「compartment_id」、「Returned  feed  back  item」、「partial  state  identifier」の処理など）を実現する。そして、圧縮／解凍モジュール生成部３は、共通部１７ａおよび上記ソースコード群を使用して、SigCompに対応した圧縮モジュール（Compressor）１８ａ，解凍モジュール（Decompressor）１９ａを生成する。なお、共通部１７ａは生成するＳＩＰメッセージ圧縮モジュールおよび解凍モジュールに対応させて予め生成され、圧縮／解凍モジュール生成部３が保持しているものとする。
【００４０】
このように、本実施の形態においては、生成したい圧縮解凍モジュール（ＳＩＰメッセージ圧縮モジュールおよびＳＩＰメッセージ解凍モジュール）に対応した共通部を予め準備しておき、この共通部を使用して所望の圧縮解凍モジュールを生成するようにした。これにより、たとえばSigComp対応の圧縮解凍モジュールを、共通部を変更するだけで生成できる。また、ＳＩＰの拡張に対して２つの定義ファイルの更新のみで対応でき、実施の形態１の場合と同様に、ＳＩＰの構造を意識しないＤｅｆｌａｔｅなどと同様のメンテ性を保証することができる。
【００４１】
実施の形態４．
つづいて、実施の形態４について説明する。なお、本実施の形態のＳＩＰメッセージ圧縮解凍モジュール生成装置の構成は上述した実施の形態１と同様である。本実施の形態においては、ＳＩＰメッセージ圧縮モジュールおよびＳＩＰメッセージ解凍モジュールの生成動作において使用する対応定義情報１２をＳＩＰメッセージのテキスト構文の性質に着目して生成することにより圧縮効率をさらに向上させる方法について説明する。
【００４２】
ＳＩＰメッセージのテキスト構文中には特定の文字列が多く設定される。例えば、「From:<sip:alice@home1.net>」のURIアドレス表現があった場合、一般的には“sip:"と“@home1.net"は半固定的になる。すなわち、異なる相手とＳＩＰメッセージの送受信を行う場合であってもこれらの文字列は同様に使用される。そのため、ＵＲＩフォーマットをＡＳＮ．１抽象構文で定義する場合、それを構成するパーツ（半固定的な部分であって、特定の意味（情報）を示す文字列）に分解し、それらを図１０に示したように定義する。この場合、対応定義情報１２における定義文をたとえば図１１のように変更する。
【００４３】
このように変数を分解して、パーツのとりうる値を選択的に定義すると（半固定的な文字列を、それを一意に示す数値情報に置き換えると）、ＡＳＮ．１転送構文の特性から圧縮効率を向上させることができる。
【００４４】
また、ＳＩＰメッセージのテキスト構文中に現れるパラメータには整数、文字列などがある。しかしながら、各パラメータの範囲（整数の範囲や文字列の長さ）は冗長に確保されている場合がある。そのため、パラメータの範囲や文字数をたとえば必要最小限の範囲や文字数となるように強制的に制限して、ＡＳＮ．１抽象構文（対応定義情報１２）を定義する。
【００４５】
このような範囲を制限する手法により、ＢＥＲ（Basic  Encoding  Rules）など転送構文の種類によってはＳＩＰメッセージがＡＳＮ．１転送構文に変換されたときのサイズが小さくなり、圧縮効率を向上させることができる。
【００４６】
なお、上記２つの手法（パーツのとりうる値を選択的に定義する手法、範囲を制限する手法）を同時に適用してもよい。また、本実施の形態においては、実施の形態１のＳＩＰメッセージ圧縮解凍モジュール生成装置に対して上記２つの手法を適用する場合について説明を行ったが、これらの手法を実施の形態２および３のＳＩＰメッセージ圧縮解凍モジュール生成装置に対して適用することも可能である。
【００４７】
実施の形態５．
本実施の形態のＳＩＰメッセージ圧縮解凍モジュール生成装置の構成は上述した実施の形態１と同様である。本実施の形態においては、ＳＩＰメッセージ圧縮モジュールおよびＳＩＰメッセージ解凍モジュールの生成動作において使用する対応定義情報１２をＳＩＰメッセージのテキスト構文およびＳＩＰシグナリングを行う通信装置の性質に着目して生成することにより圧縮効率をさらに向上させる方法について説明する。
【００４８】
テキストで定義されたＳＩＰメッセージ中にはＳＩＰ標準およびＳＩＰメッセージ圧縮モジュール、ＳＩＰメッセージ解凍モジュールを使用する通信システムにおいて一意に規定される文字列が多く含まれる。例えば、ＳＩＰメッセージに含まれるヘッダに「Via:SIP/2.0/UDP  scscf1.home1.net;branch=z9hG4bKs1pp0」の表現があった場合、パラメータとして含まれる文字列中の“SIP”および“z9hG4bK”はＳＩＰ標準で一意に決められた文字列である。同様に、“SIP/2.0/UDP”はＳＩＰメッセージ圧縮解凍モジュール生成装置を使用する通信システムにおいて一意に決められた文字列である。すなわち、ＳＩＰ標準や通信システムで一意に規定される文字列は圧縮時に取り除き、解凍時に復元させることができる。そのため、ＳＩＰメッセージを構成するパーツに分解し、かつ分解した結果が上述した一意に規定される文字列であった場合、圧縮モジュール（Compressor）１８または解凍モジュール（Decompressor）１９に含まれる「ＳＩＰテキスト→ＡＳＮ．１抽象構文変換モジュール２２」および、「ＡＳＮ．１抽象構文→ＳＩＰテキスト変換モジュール２４」において削除および復元を行う。
【００４９】
このように変数を分解して、パーツのとりうる値に対してＡＳＮ．１転送構文への必要性を分析し復元可能な情報を対応定義情報から削除することで、圧縮率を向上させることができる。
【００５０】
なお、本実施の形態においては、実施の形態１のＳＩＰメッセージ圧縮解凍モジュール生成装置に対して上記の手法を適用する場合について説明を行ったが、これらの手法を実施の形態２〜４のＳＩＰメッセージ圧縮解凍モジュール生成装置に対して適用することも可能である。
【００５１】
実施の形態６．
本実施の形態のＳＩＰメッセージ圧縮解凍モジュール生成装置の構成は上述した実施の形態１と同様である。本実施の形態においては、ＳＩＰメッセージ圧縮モジュールおよびＳＩＰメッセージ解凍モジュールの生成動作において使用する対応定義情報１２をＳＩＰメッセージのテキスト構文およびＳＩＰメッセージ圧縮解凍モジュールを実装する通信装置の性質に着目して生成することにより圧縮効率をさらに向上させる方法について説明する。
【００５２】
テキストで定義されたＳＩＰメッセージ中にはＳＩＰメッセージ圧縮モジュールおよびＳＩＰメッセージ解凍モジュールを使用する通信システムにおいて、ＳＩＰメッセージ圧縮モジュールを使用する特定の通信装置に固有の情報であって、かつＳＩＰメッセージ解凍モジュールを使用する特定の通信装置にあらかじめ通知されている情報が含まれる。例えば、ＳＩＰメッセージに含まれるヘッダに「Allow:INVITE,ACK,CANCEL,BYE,PRACK,UPDATE,REFER,MESSAGE」の情報があった場合、ここで示されるような端末能力を表す情報は３ＧＰＰ（3rd  Generation  Partnership  Project）で規定される移動体通信システムを仮定した場合には、ＲＲＣ（Radio  Resource  Control）コネクションの設定により、あらかじめシステム側へ登録されていると考えることができる。そのため、ＳＩＰメッセージを構成するパーツに分解し、かつ分解した結果が上述したあらかじめＳＩＰシグナリングを受信する装置へ通知されている文字列であった場合、（圧縮モジュール）Compressor１８または（解凍モジュール）Decompressor１９に含まれる「ＳＩＰテキスト→ＡＳＮ．１抽象構文変換モジュール２２」および「ＡＳＮ．１抽象構文→ＳＩＰテキスト変換モジュール２４」において削除および復元を行う。
【００５３】
このように変数を分解して、パーツのとりうる値に対してＡＳＮ．１転送構文への必要性を分析し復元可能な情報を対応定義情報から削除することで、圧縮率を向上させることができる。
【００５４】
なお、本実施の形態においては、実施の形態１のＳＩＰメッセージ圧縮解凍モジュール生成装置に対して上記の手法を適用する場合について説明を行ったが、これらの手法を実施の形態２〜５のＳＩＰメッセージ圧縮解凍モジュール生成装置に対して適用することも可能である。
【００５５】
実施の形態７．
本実施の形態のＳＩＰメッセージ圧縮解凍モジュール生成装置の構成は上述した実施の形態１と同様である。本実施の形態においては、ＳＩＰメッセージ圧縮モジュールおよびＳＩＰメッセージ解凍モジュールの生成動作において使用する対応定義情報１２をＳＩＰメッセージのテキスト構文の性質に着目して生成することにより圧縮効率をさらに向上させる方法について説明する。
【００５６】
テキストで定義されたＳＩＰメッセージ中には複数回使用される文字列が多く設定される。例えば、ＳＩＰメッセージに含まれるヘッダに「From:<sip:alice@home1.net>」と「Route:<sip:scscf1.home1.net>」の表現があった場合、“home1.net”は複数回使用されている。そのため、ＳＩＰメッセージをＡＳＮ．１抽象構文で定義する場合、ＳＩＰメッセージを構成するパーツに分解し、かつ分解した結果が同一の文字列であった場合、２度目以降に使用される文字列を解凍モジュールにて解凍する段階において復元可能な情報（例えば、それを一意に示す数値情報）に置き換えることで、ＡＳＮ．１転送構文の特性から圧縮率を向上させることができる。
【００５７】
このように変数を分解して、パーツのとりうる値に対してＡＳＮ．１転送構文への必要性を分析し復元可能な情報を対応定義情報から削除することで、圧縮率を向上させることができる。
【００５８】
なお、本実施の形態においては、実施の形態１のＳＩＰメッセージ圧縮解凍モジュール生成装置に対して上記の手法を適用する場合について説明を行ったが、これらの手法を実施の形態２〜６のＳＩＰメッセージ圧縮解凍モジュール生成装置に対して適用することも可能である。
【００５９】
実施の形態８．
本実施の形態のＳＩＰメッセージ圧縮解凍モジュール生成装置の構成は上述した実施の形態１と同様である。本実施の形態においては、ＳＩＰメッセージ圧縮モジュールおよびＳＩＰメッセージ解凍モジュールの生成動作において使用する対応定義情報１２をＳＩＰメッセージのテキスト構文およびＳＩＰメッセージ圧縮解凍モジュールを実装する通信装置が接続するネットワークシステムの性質に着目して生成することにより圧縮効率をさらに向上させる方法について説明する。
【００６０】
テキストで定義されたＳＩＰメッセージ中にはＳＩＰ圧縮解凍モジュールを使用する通信システムにおいて、ネットワークアクセスを行う段階で一意に付与される情報が含まれる。例えば、ＲＦＣ３４５５にて規定されるようにＳＩＰメッセージに含まれるヘッダに「P-Access-Network-Info:3GPP-UTRAN-TDD;utran-cell-id-3gpp=C359A3913B20E」の表現があった場合、パラメータとして含まれる文字列中の“C359A3913B20E”は通信装置が接続するセルを識別するための情報、つまりアクセス網によって付与された情報である。そのため、ＳＩＰメッセージを構成するパーツに分解し、かつ分解した結果が上述したＳＩＰシグナリングを中継する装置から与えられた情報であった場合、圧縮モジュール（Compressor）１８または解凍モジュール（Decompressor）１９に含まれる「ＳＩＰテキスト→ＡＳＮ．１抽象構文変換モジュール２２」および「ＡＳＮ．１抽象構文→ＳＩＰテキスト変換モジュール２４」において削除および復元を行う。
【００６１】
このように変数を分解して、パーツのとりうる値に対してＡＳＮ．１転送構文への必要性を分析し復元可能な情報を対応定義情報から削除することで、圧縮率を向上させることができる。
【００６２】
なお、本実施の形態においては、実施の形態１のＳＩＰメッセージ圧縮解凍モジュール生成装置に対して上記の手法を適用する場合について説明を行ったが、これらの手法を実施の形態２〜７のＳＩＰメッセージ圧縮解凍モジュール生成装置に対して適用することも可能である。
【産業上の利用可能性】
【００６３】
以上のように、本発明にかかるＳＩＰメッセージ圧縮解凍モジュール生成装置は、通信装置において使用される、ＳＩＰなどのテキストベースのメッセージの圧縮および解凍を行うモジュールの生成に有用であり、特に、リアルタイム性を損なわずにＳＩＰメッセージを高効率に圧縮することが可能なＳＩＰメッセージ圧縮モジュールおよびＳＩＰメッセージ解凍モジュールの生成に適している。
【図面の簡単な説明】
【００６４】
【図１】本発明にかかるＳＩＰメッセージ圧縮解凍モジュール生成装置の実施の形態１の構成例を示す図である。
【図２】ＳＩＰメッセージをＡＳＮ．１抽象構文のテキストとして定義する場合の一例を示す図である。
【図３】テキストで表現されるＳＩＰメッセージ構文とＡＳＮ．１抽象構文との対応例を示す図である。
【図４】圧縮モジュールの構成概念を示す図である。
【図５】解凍モジュールの構成概念を示す図である。
【図６−１】テキストで表現されるＳＩＰメッセージをバイナリで表現されるＡＳＮ．１抽象構文へ変換する変換モジュールの構成例を示す図である。
【図６−２】バイナリで表現されるＡＳＮ．１抽象構文をテキストで表現されるＳＩＰメッセージへ変換する変換モジュールの構成例を示す図である。
【図７】圧縮モジュールおよび解凍モジュールを使用して行うＳＩＰメッセージの送受信動作例を示す図である。
【図８】SigCompの中で、圧縮アルゴリズムとしてＡＳＮ．１転送構文を使用する場合の概念を示す図である。
【図９】本発明にかかるＳＩＰメッセージ圧縮解凍モジュール生成装置の実施の形態３の構成例を示す図である。
【図１０】テキストで表現されたＵＲＩアドレスをＡＳＮ．１抽象構文のテキストとして定義する場合の一例を示す図である。
【図１１】テキストで表現されるＳＩＰメッセージ構文とＡＳＮ．１抽象構文との対応例を示す図である。
【図１２】従来技術を説明するための図である。
【符号の説明】
【００６５】
１  標準変換プログラムソースコード生成部
２  独自変換プログラムソースコード生成部
３  圧縮／解凍モジュール生成部
１１  ＳＩＰメッセージ定義情報
１２  対応定義情報
１３  ＳＩＰ  ＡＳＮ．１抽象構文-転送構文変換のためのヘッダ
１４  ＳＩＰ  ＡＳＮ．１抽象構文-転送構文変換のためのソースコード
１５  ＳＩＰテキスト構文とＡＳＮ．１抽象構文変換のためのヘッダ
１６  ＳＩＰテキスト構文とＡＳＮ．１抽象構文変換のためのソースコード
１７  共通部
１８、１８ａ  圧縮モジュール
１９、１９ａ  解凍モジュール
２１  ＡＳＮ．１抽象構文→ＡＳＮ．１転送構文変換モジュール
２２  ＳＩＰテキストメッセージ→ＡＳＮ．１抽象構文変換モジュール
２３  ＡＳＮ．１転送構文→ＡＳＮ．１抽象構文変換モジュール
２４  ＡＳＮ．１抽象構文→ＳＩＰテキストメッセージ変換モジュール
２５、２６  ＳＩＰテキスト-独自バイナリ変換部
３１、４１、９１  ＳＩＰアプリケーション（SIP  Application）
３２、４２、９２  トランスポートレイヤ（Transport  Layer）
４３、９３  SigCompモジュール
４４、４５、９４、９５  配送部（Dispatcher）
９６  圧縮部（Compressor）
９７  解凍部（Decompressor）
４６、９８  状態管理部（State  Handler）
【図１】
2008123122.tif 000003
【図２】
2008123122.tif 000004
【図３】
2008123122.tif 000005
【図４】
2008123122.tif 000006
【図５】
2008123122.tif 000007
【図６−１】
2008123122.tif 000008
【図６−２】
2008123122.tif 000009
【図７】
2008123122.tif 000010
【図８】
2008123122.tif 000011
【図９】
2008123122.tif 000012
【図１０】
2008123122.tif 000013
【図１１】
2008123122.tif 000014
【図１２】
2008123122.tif 000015