(57)【特許請求の範囲】
【請求項１】
ボイス・オーバー・インターネット・プロトコル呼びを通信するときにテキストベースのメッセージを２進メッセージへ変換する方法であって、
少なくとも１つのコンピューティング装置において、テキストベースのプロトコルのメッセージ内の呼び識別子を識別する段階であって、前記呼び識別子が、大域的に一意であって、２つ以上の装置間のボイス・オーバー・インターネット・プロトコル呼びを一意的に識別するものであり、前記呼び識別子が少なくともインターネット・プロトコル・アドレスとタイムスタンプとの連結を含み、前記インターネット・プロトコル・アドレスがＩＰｖ６アドレスであり、前記タイムスタンプが前記ボイス・オーバー・インターネット・プロトコル呼びが開始される時間を表してなる段階と、
ハッシング・アルゴリズムを用いて、インターネット・プロトコル・アドレスとタイムスタンプとの連結を含む前記呼び識別子を大域的に一意の２進表現へ圧縮する段階と、
前記の圧縮された呼び識別子の前記２進表現を受信側へ送出する段階と、
を備える方法。
【請求項２】
前記テキストベースのプロトコルがセッション・イニシエーション・プロトコルである、請求項１に記載の方法。
【請求項３】
前記ハッシング・アルゴリズムがメッセージ−ダイジェスト・アルゴリズム５である、請求項１に記載の方法。
【請求項４】
前記受信側が、ボイス・オーバー・インターネット・プロトコル電話とネットワーク・マネージャーとのうちの少なくとも一方である、請求項１に記載の方法。
【請求項５】
ボイス・オーバー・インターネット・プロトコル電話内で実行される、請求項１に記載の方法。
【請求項６】
ボイス・オーバー・インターネット・プロトコル呼びを通信するときにテキストベースのメッセージを２進メッセージへ変換する方法を実施するために具体化されたコンピューター利用可能命令を有する１つ又は複数の有形のコンピューター読み取り可能媒体であって、
前記方法が、
少なくとも１つのコンピューティング装置において、テキストベースのプロトコルのメッセージ内の呼び識別子を識別する段階であって、前記呼び識別子が、大域的に一意であって、２つ以上の装置間のボイス・オーバー・インターネット・プロトコル呼びを一意的に識別するものであり、前記呼び識別子が少なくともインターネット・プロトコル・アドレスとタイムスタンプとの連結を含み、前記インターネット・プロトコル・アドレスがＩＰｖ６アドレスであり、前記タイムスタンプが前記ボイス・オーバー・インターネット・プロトコル呼びが開始される時間を表してなる段階と、
ハッシング・アルゴリズムを用いて、インターネット・プロトコル・アドレスとタイムスタンプとの連結を含む前記呼び識別子を大域的に一意の２進表現へ圧縮する段階と、
前記の圧縮された呼び識別子の前記２進表現を受信側へ送出する段階と、
を備えるコンピューター読み取り可能媒体。
【請求項７】
前記テキストベースのプロトコルがセッション・イニシエーション・プロトコルである、請求項６に記載の媒体。
【請求項８】
前記ハッシング・アルゴリズムがメッセージ−ダイジェスト・アルゴリズム５である、請求項６に記載の媒体。
【請求項９】
前記方法がボイス・オーバー・インターネット・プロトコル電話内で実行される、請求項６に記載の媒体。
【請求項１０】
前記受信側が、ボイス・オーバー・インターネット・プロトコル電話とネットワーク・マネージャーとのうちの少なくとも一方である、請求項６に記載の媒体。
【請求項１１】
ボイス・オーバー・インターネット・プロトコル呼びを通信するときにテキストベースのメッセージを２進メッセージへ変換するためのシステムであって、
少なくとも１つのコンピューティング装置において、テキストベースのプロトコルのメッセージ内の呼び識別子を識別するためのメッセージ生成部であって、前記呼び識別子が、大域的に一意であって、２つ以上の装置間のボイス・オーバー・インターネット・プロトコル呼びを一意的に識別するものであり、前記呼び識別子が少なくともインターネット・プロトコル・アドレスとタイムスタンプとの連結を含み、前記インターネット・プロトコル・アドレスがＩＰｖ６アドレスであり、前記タイムスタンプが前記ボイス・オーバー・インターネット・プロトコル呼びが開始される時間を表してなるメッセージ生成部と、
ハッシング・アルゴリズムを用いて、インターネット・プロトコル・アドレスとタイムスタンプとの連結を含む前記呼び識別子を大域的に一意の２進表現へ圧縮するための圧縮コンポーネントと、
前記の圧縮された呼び識別子の前記２進表現を受信側へ送出するための通信インターフェースと、
を備えるシステム。
【請求項１２】
前記テキストベースのプロトコルがセッション・イニシエーション・プロトコルである、請求項１１に記載のシステム。
【請求項１３】
前記ハッシング・アルゴリズムがメッセージ−ダイジェスト・アルゴリズム５である、請求項１１に記載のシステム。
【請求項１４】
ボイス・オーバー・インターネット・プロトコル電話を含む群から選択される、請求項１１に記載のシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
今日、ボイス・オーバー・インターネット・プロトコル（ＶｏＩＰ）呼びを確立する際、ユーザーのＶｏＩＰ通信装置と呼びを促進するネットワークとの間で交換される多数の信号メッセージが存在する。産業は、セッション・イニシエーション・プロトコル（ＳＩＰ）と呼ばれる、テキストベースの信号メッセージ・システムへ向かって動いている。ＳＩＰは１つ又は複数の参加者とのセッションを生成・修正・終了するためのアプリケーション層コントロール・プログラムである。そうしたセッションはインターネット電話の呼び、マルチメディア分配及びマルチメディア会議を含む。ＳＩＰの問題は、テキストベースのメッセージが大型になりがちであるということである。こうした大型のメッセージは処理に時間を要し、そのため、メッセージを送出してＶｏＩＰ呼びを確立するのに要する時間を増大させる傾向にある。この問題を解決するために、テキストベースのメッセージを圧縮して２進形式に有効に変換し、サイズを低減する幾つの方法が試みられている。
【発明の概要】
【発明が解決しようとする課題】
【０００２】
典型的には、テキストベースのメッセージの２進表現への変換はトークンを用いて行われる。共通に用いられるフレーズ、単語又は値が、共通の文字を表すのに用いることができる２進トークンに割り当てられる。しかし、テキスト・メッセージ内のフィールドによっては、一意でなければならないものがあるので、共通に用いられる文字を含まないフィールドが存在する。テキストから２進への変換に伴う問題は、２進フォーマットにおける一意のフィールドを表現する方法が現在は存在しないことである。
【課題を解決するための手段】
【０００３】
この要約は、詳細な説明において更に後述する概念の選択を簡略化して紹介するために設けられている。この要約は、特許請求された主題の主要な特徴又は必須の特徴を識別するためのものでも、特許請求された主題の範囲を決定する際の補助として用いられるためのものでもない。
【０００４】
本発明は下記の特許請求の範囲によって定義される。本発明の実施の形態は、なかんずく、ボイス・オーバー・インターネット・プロトコル呼びを確立する際にテキストベースのメッセージを２進メッセージへ変換するためのシステム、方法及びコンピューター読み取り可能媒体を提供することによって、少なくとも上記の問題を解決する。
【０００５】
したがって、１つの態様によると、本発明の実施の形態は、ボイス・オーバー・インターネット・プロトコル呼びを通信するときにテキストベースのメッセージを２進メッセージへ変換するための方法に関する。この方法は、テキストベースのプロトコルのメッセージ内のテキストベースのフィールドを識別することを含む。多くの場合、テキストベースのフィールドは、大域的に一意でなければならないものとして識別される。更に、方法は、ハッシング・アルゴリズムを用いてテキストベースのフィールドを２進表現へ圧縮する。この２進表現は大域的に一意である。更に、方法は、テキストベースのフィールドの２進表現を受信側へ送出することを含む。
【０００６】
発明の他の態様において、実施の形態は、ボイス・オーバー・インターネット・プロトコル呼びを通信するときにテキストベースのメッセージを２進メッセージへ変換するための方法を実施するためのコンピューター読み取り可能媒体に関する。実行される方法は、呼び識別子を生成することを含む。呼び識別子はインターネット・プロトコル・アドレスとタイムスタンプとを含み得る。更に、実行される方法は、ハッシング・アルゴリズムを用いて呼び識別子を２進表現へ圧縮することを含む。多くの場合、２進表現は大域的に一意である。更に、方法は、２進表現を受信側へ送出することを含む。
【０００７】
発明の更に別の態様において、実施の形態は、ボイス・オーバー・インターネット・プロトコル呼びで通信するときにテキストベースのメッセージを２進メッセージへ変換するためのシステムに関する。システムは、テキストベースのプロトコルのメッセージ内のテキストベースのフィールドを生成するためのメッセージ生成部を備える。更に、システムは、ハッシング・アルゴリズムを用いてテキストベースのフィールドを２進表現へ圧縮するための圧縮コンポーネントを備える。多くの場合、２進表現は大域的に一意である。更に、システムは、テキストベースのフィールドの２進表現を受信側へ送出するための通信インターフェースを備える。
【０００８】
本発明の例示の実施の形態は、参照によってここに組み込まれる添付の図面を参照して以下に詳述される。
【図面の簡単な説明】
【０００９】
【図１】発明を実施するための例示の動作環境を示すブロック図である。
【図２】発明を実施するための例示のシステムのブロック図である。
【図３】ボイス・オーバー・インターネット・プロトコル呼びを確立するときにテキストベースのメッセージを２進メッセージへ変換するための例示の方法を示すフロー図である。
【図４】ボイス・オーバー・インターネット・プロトコル呼びを確立するときにテキストベースのメッセージを２進メッセージへ変換するための例示の方法を示す別のフロー図である。
【発明を実施するための形態】
【００１０】
本発明の実施の形態は、ボイス・オーバー・インターネット・プロトコル（ＶｏＩＰ）呼びを通信するときにテキストベースのメッセージを２進メッセージへ変換するためのシステム、方法及びコンピューター読み取り可能媒体を提供する。２進表現は、元のテキストベースのフィールドの一意性を維持しながら、一意のテキストベースのフィールドの全体的なサイズを圧縮するように生成される。一意のフィールドのサイズを圧縮することにより、フィールドを高速処理することができ、ＶｏＩＰ呼びを確立して通信するのに要する時間を短縮することができる。
【００１１】
また、この説明には種々の技術用語が用いられる。こうした用語の定義はＨ．ニュートンによる「ニュートンズ・テレコム・ディクショナリ（２１版）」（２００５年）に見出すことができる。これらの定義は、本明細書に開示される技術思想の明快な理解を提供するためのものであり、本発明の範囲を限定することを意図していない。定義と用語は、上記文献において提供される語の意味について許容可能な範囲で広く且つ偏見無く解釈されなければならない。
【００１２】
当業者は理解するように、本発明の実施の形態は、なかんずく、方法、システム又はコンピューター読み取り可能媒体として具体化され得る。したがって、実施の形態は、ハードウェアの実施形態、ソフトウェアの実施形態、又はソフトウェアとハードウェアとを組み合わせた実施形態の形を取り得る。１つの実施の形態においては、本発明は。１つ又は複数のコンピューター読み取り可能媒体上に具現化されたコンピューター利用可能命令を含むコンピューター・プログラム製品の形を取る。
【００１３】
コンピューター読み取り可能媒体は揮発性媒体、不揮発性媒体、取り外し可能媒体及び取り外し不能媒体を含んでおり、データベース、スイッチ及び他の種々のネットワーク装置によって読み取り可能な媒体を想定している。ネットワーク・スイッチ、ルーター及び関連のコンポーネントは、通信手段として本質的に従来どおりのものである。例えば、コンピューター読み取り可能媒体はコンピューター記憶媒体及び通信媒体を含むが、これらに限定されない。
【００１４】
コンピューター記憶媒体すなわちマシン読み取り可能媒体は、情報を記憶するための任意の方法又は技術において実施される媒体を含む。記憶される情報の例は、コンピューター利用可能な命令、データ構造、プログラム・モジュール及び他のデータ表現を含む。コンピューター記憶媒体はＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリーその他のメモリー技術、ＣＤ−ＲＯＭ、ディジタル他用途ディスク（ＤＶＤ）、ホログラフィック媒体その他の光ディスク・ストレージ、並びに、磁気カセット、磁気テープ、磁気ディスク・ストレージその他の磁気記憶装置を含むが、これらに限定されない。これらのメモリー・コンポーネントはデータを瞬時に、一時的に又は永久に記憶することができる。
【００１５】
典型的には、通信媒体は、データ構造及びプログラム・モジュールを含むコンピューター利用可能命令を被変調データ信号において記憶する。用語「被変調データ信号」は、情報を符号化するよう設定された又は変えられたその１つ以上の特性を有する伝搬信号を意味する。例示の被変調データ信号は搬送波又は他の伝送メカニズムを含む。通信媒体は任意の情報配信媒体を含む。例示の通信媒体は、有線ネットワークや直接有線接続のような有線媒体や、音響、赤外線、マイクロ波、拡散スペクトル及び他の無線媒体技術等の無線媒体を含むが、これらに限定されるものではない。上記の媒体の組み合わせはコンピューター読み取り可能媒体の範囲内に含まれる。
【００１６】
まず図１を参照すると、特に、発明を実施するための例示の動作環境が図示され、一般にコンピューティング装置１００として指示されている。コンピューティング装置１００は適切なコンピューティング環境の一例にすぎず、発明の使用範囲又は機能性に対する何らの限定を示唆するものではない。コンピューティング装置１００は、図示のコンポーネントの１つ又は複数の組み合わせに関係する依存性や要件を持つものとして解釈されてはならない。
【００１７】
発明の記述は、コンピューターやパーソナル・データ・アシスタント又は他の携帯装置のような他のマシンによって実行されている、プログラム・モジュールのようなコンピューター実行可能命令を含む、コンピューター・コード又はマシン使用可能な命令の一般的な文脈で行われる。一般に、プログラム・モジュールはルーチン、プログラム、オブジェクト、コンポーネント、データ構造等を含んでおり、特定のタスクを実行するコード又は特定の抽象的データ・タイプを実施するコードを意味する。発明は、携帯装置、家庭電気製品、汎用コンピューター、特殊コンピューティング装置等を含む種々のシステム構成において実施される。また、発明は、通信ネットワークを介してリンクされる遠隔処理装置によってタスクが実施される分散コンピューティング環境においても実施される。
【００１８】
図１において、コンピューティング装置１００は、メモリー１１２、１つ又は複数のプロセッサー１１４、１つ又は複数のプレゼンテーション・コンポーネント１１６、入力／出力ポート１１８、入力／出力コンポーネント１２０及び例示の電源１２２を直接又は間接に結合するバス１１０を備える。バス１１０は１つ又は複数のバス（例えば、アドレス・バス、データ・バス又はそれらの組み合わせ）を表す。図１の種々のブロックは簡単化のために線によって示されているが、実際には、図示された種々のコンポーネントはそれほど明確ではなく、比喩的には線は一層正確に曖昧であってファジーである。例えば、人によっては、表示装置のようなプレゼンテーション・コンポーネントを入力／出力コンポーネントであると考える。また、プロセッサーはメモリーを有する。認識するように、これは技術の本質であり、繰り返すように、図１のブロック図は、１つ又は複数の実施の形態と結合して用いられる例示のコンピューティング装置の単なる一例である。ワークステーション、サーバー、ラップトップ、携帯装置等のカテゴリ間に相違はない。これは、全部が図１の範囲内に入るものと想定され、「コンピューティング装置」と参照されるからである。
【００１９】
典型的には、コンピューティング装置１００は種々のコンピューター読み取り可能媒体を備える。例えば、コンピューター読み取り可能媒体はランダム・アクセス・メモリー（ＲＡＭ）、リード・オンリー・メモリー（ＲＯＭ）、電子消去可能プログラマブル・リード・オンリー・メモリー（ＥＥＰＲＯＭ）、フラッシュメモリーその他のメモリー技術、ＣＤＲＯＭ、ディジタル多用途ディスク（ＤＶＤ）その他の光又はホログラフィック媒体、磁気カセット、磁気テープ、磁気ディスク・ストレージその他の磁気記憶装置、搬送波、又は、所望の情報を符号化するのに用いられてコンピューティング装置１００によってアクセスされる他の任意の媒体を含むが、これらに限定されない。
【００２０】
メモリー１１２は、揮発性又は不揮発性のメモリーの形態でのコンピューター記憶媒体を含む。メモリーは取り外し可能であっても、取り外し不能であっても、それらの組み合わせであってもよい。例示のハードウェア装置は固体メモリー、ハード・ドライブ、光ディスク・ドライブ等を含む。コンピューティング装置１００は、メモリー１１２又は入力／出力コンポーネント１２０のような種々のエンティティーからデータを読み取る１つ又は複数のプロセッサーを備える。プレゼンテーション・コンポーネント１１６はユーザー又は他の装置へデータ表示を提示する。例示のプレゼンテーション・コンポーネントは表示装置、スピーカー、印刷コンポーネント、振動コンポーネント等を含む。
【００２１】
入力／出力ポート１１８は、入力／出力コンポーネント１２０を含む他の装置にコンピューティング装置１００が論理的に結合されるようにする。入力／出力コンポーネント１２０の中には、内蔵されるものがある。例示のコンポーネントはマイクロホン、ジョイスティック、ゲーム・パッド、衛星ディッシュ、スキャナー、プリンター、無線装置等を含む。
【００２２】
図２は、発明を実施するための例示のシステムのブロック図である。システムは、複数のクライアント２０２とネットワーク・マネージャー２０６とネットワーク２１２とを含む。実施の形態において、各クライアント２０２及びネットワーク・マネージャー２０６は、図１に示すコンピューティング装置１００を表したものである。また、クライアント２０２は、デスクトップ・コンピューター、ラップトップ・コンピューター、（媒体捕捉／再生機能を持つ又は持たない）ネットワーク動作可能化移動電話、ＶｏＩＰ電話、無線電子メール・クライアント、他のソフトウェア・クライアント、種々のタスクを実行し又はウェブ・ブラウジング、検索及び電子メール（イーメール）を含む種々の機能を提供するマシン又は装置であり得、又はそれらを含み得る。更に、クライアント２０２はディジタル静止カメラ、（静止画像捕捉機能を持つ又は持たない）ディジタル・ビデオ・カメラ、個人音楽プレーヤーや個人ビデオ・プレーヤー等の媒体プレーヤー、及び任意の他の携帯型媒体装置であってよい。
【００２３】
また、クライアント２０２は、マイクロソフトのＷｉｎｄｏｗｓ（登録商標）、ＭａｃＯＳ（商標）、Ｕｎｉｘ、Ｌｉｎｕｘ、Ｘｅｎｉｘ、ＩＢＭのＡＩＸ（商標）、ヒューレットパッカードのＵＸ（商標）、ノベルのＮｅｔｗａｒｅ（商標）、サン・マイクロシステムズのＳｏｌａｒｉｓ（商標）、ＯＳ／２（商標）、ＢｅＯＳ（商標）、Ｍａｃｈ、Ａｐａｃｈｅ、ＯｐｅｎｎＳｔｅｐ（商標）を含む、種々のオペレーティング・システム又はプラットフォームの上で走るワークステーション等のサーバーであってもよいし、そうしたサーバーを備えることもできる。
【００２４】
クライアント２０２は通信インターフェースを備えることができる。通信インターフェースは、クライアントを他のクライアント又は装置と直接に接続することができるようにするインターフェース、又は、クライアント２０２をネットワーク２１２を介してクライアント又は装置と接続できるようにするインターフェースである。ネットワーク２１２は、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）又はインターネットを含むことができる。実施の形態においては、クライアント２０２は、無線ネットワーク２１２を介して無線インターフェースにより別の装置と接続され得る。
【００２５】
実施の形態において、クライアント２０２はＶｏＩＰ通信装置である。こうした実施の形態においては、クライアント２０２は圧縮コンポーネント２０８とメッセージ生成部２１０とを備えることができる。メッセージ生成部２１０は、ＶｏＩＰ呼びを確立して維持するときにクライアント装置間で交換される複数のメッセージを生成するために利用される。生成され得るメッセージの１つは勧誘メッセージである。セッション・イニシエーション・プロトコル（ＳＩＰ）が実装されている実施の形態においては、勧誘メッセージはＳＩＰ勧誘メッセージである。勧誘メッセージは、発信元クライアント装置から宛先クライアント装置へのＶｏＩＰ呼びを確立するために使用される。実施の形態においては、勧誘メッセージは、宛先クライアント装置とＶｏＩＰ呼びを確立することに関心を持つ発信元クライアント装置によって生成される。勧誘メッセージは発信元クライアント装置から送出され、発信元クライアント装置が通信することを希望する宛先クライアント装置によって受信される。実施の形態においては、勧誘メッセージはネットワーク・マナージャー２０６へ送出されてから、宛先クライアント装置へ送出される。
【００２６】
勧誘メッセージは呼び識別子（呼びＩＤ）を含むことができる。呼びＩＤは２つ以上のクライアント装置間の呼びを一意的に識別するのに用いられる。また、呼びＩＤは確立された呼びのシームレスな機動性を強化するのにも使用される。これが特に妥当するのは、呼びセッション期間に呼びが１つのネットワークから別のネットワークへ移動する場合である。この例は、部外の（又は訪問された）ネットワーク（例えば，ＷｉＦｉ  Ｈｏｔｓｐｏｔ）に最初に呼びを確立し、その部外のネットワークのカバー範囲から出て自分のネットワーク（例えばＣＤＭＡ）へ移動する移動ユーザーである。この移行期間に、両方のネットワークにおいて同一のセッションが確立される。呼びＩＤが大域的に一意であることを保証することにより、いずれのネットワークにおいても呼びＩＤの「衝突」の可能性はなく、セッションが容易に識別され、移行をシームレスに行うことが保証される。
【００２７】
実施の形態において、呼びＩＤは、発信元クライアント装置のインターネット・プロトコル（ＩＰ）アドレスを、呼びが開始された時間を表すタイムスタンプで連結することによって生成される。別の実施の形態においては、呼びＩＤは、ＩＰアドレスとタイムスタンプとのうちの一方又は両方に加えて、他のパラメーターを含むことができる。実施の形態において、ＩＰアドレスはＩＰバージョン６（ＩＰｖ６）アドレスである。一般に、ＩＰｖ６アドレスは１２８ビット長である。典型的には、ＩＰｖ６アドレスは２つの論理部、即ち、６４ビットのサブネットワーク・プレフィックスと６４ビットのホスト・コンポーネントから構成される。典型的には、ＩＰｖ６アドレスは４つの１６進数字の８つの群として書き表され、１６進数字はＡＳＣＩＩコロンで分離される４つのＡＳＣＩＩ文字の４つの群として表される。全体で、ＩＰｖ６アドレスは記憶又は送出のための約３８バイト又は２進の３０４ビットを含む。更に、タイムスタンプは、時間を表すのに用いる８つのＡＳＣＩＩ文字のビット・ストリームを含む。８文字のタイムスタンプをＩＰｖ６アドレスと連結すると、少なくとも１００年間にわたって一意である値を生成することができる。合計で、呼びＩＤは約４６個のＡＳＣＩＩ文字又は３６８ビットを含む。別の例においては、呼びＩＤは４６個よりも多いＡＳＣＩＩ文字を含む。このサイズの呼びＩＤを、通信システムは記憶又は送出には大きすぎると判断するかもしれない。場合によっては、そうしたサイズの呼びＩＤは動作に負の影響を与えかねない。
【００２８】
実施の形態において、呼びＩＤは、１つの特定の呼びを識別するために使用されるのだから、空間及び時間にわたって大域的に一意であるように生成されなければならない。その一意性に起因して、一般に、呼びＩＤは非反復的であり、共通に反復される値を持たない。したがって、トークンを用いて呼びＩＤを圧縮することは困難であり且つ非効率的である。その結果、かなり大型の呼びＩＤを圧縮しようとする今日の圧縮技術は不適当であり、多くの場合、呼びＩＤは普通テキストで送出される。再び、呼びＩＤの普通テキスト版は長さにして５０〜６０個のＡＳＣＩＩ文字であり得る。再び、通信システムはこのサイズの呼びＩＤを記憶又は送出には大きすぎると判断し、呼びＩＤは動作に負の影響を与える可能性がある。
【００２９】
圧縮コンポーネント２０８は、呼びＩＤを圧縮するための適切な圧縮技術を提供するために使用される。圧縮コンポーネント２０８は、呼びＩＤのサイズを一層コンパクトにするとともに、呼びＩＤの一意性を全部の他の呼びＩＤに対して維持することができる圧縮技術を提供するために利用される。呼びＩＤを圧縮する際、圧縮コンポーネント２０８は暗号用ハッシング・アルゴリズムを採用する。圧縮コンポーネント２０８によって採用される暗号用ハッシング・アルゴリズムは、入力値を１２８ビットの値へ縮小するのに用いることができるメッセージ−ダイジェスト・アルゴリズム５（ＭＤ５）である。呼びＩＤをＭＤ５アルゴリズムに入力することにより、圧縮コンポーネント２０８は、呼びＩＤのサイズを１２８ビット値へ縮小することができるが、これと比較すると、圧縮しないフォーマットにおいては３５０ビット又はそれ以上の値になる。また、ＭＤ５アルゴリズムの使用により、呼びＩＤの２進出力が一意であることが保証される。これは２進出力が２１２８個の値にわたって一意だからである。また、呼びＩＤの一意性は、呼びＩＤのＩＰｖ６アドレスとタイムスタンプとを任意の長さの暗号用疑似乱数（ＰＮ）と連結することにより、又は、ＭＤ５アルゴリズムをＰＮでシードする（ｓｅｅｄ）ことによって保証される。いずれの場合も、ＭＤ５出力は１２８ビット値である。実施の形態において、圧縮コンポーネント２０８は、入力された呼びＩＤから１２８ビット値を生成することができる、ＭＤ５アルゴリズム以外の暗号用ハッシング・アルゴリズムを採用することができる。別の実施の形態においては、圧縮コンポーネント２０８は、１２８ビットよりも大きなビット値を生成することができる暗号用ハッシング・アルゴリズムを採用することができる。例えば、圧縮コンポーネント２０８は、入力された呼びＩＤから１６０ビット値を生成することができるセキュア・ハッシュ・アルゴリズム１（ＳＨＡ−１）を用いるように構成されてもよい。
【００３０】
メットワーク・マネージャー２０６は、マイクロソフトのＷｉｎｄｏｗｓ（登録商標）、ＭａｃＯＳ（商標）、Ｕｎｉｘ、Ｌｉｎｕｘ、Ｘｅｎｉｘ、ＩＢＭのＡＩＸ（商標）、ヒューレットパッカードのＵＸ（商標）、ノベルのＮｅｔｗａｒｅ（商標）、サン・マイクロシステムズのＳｏｌａｒｉｓ（商標）、ＯＳ／２（商標）、ＢｅＯＳ（商標）、Ｍａｃｈ、Ａｐａｃｈｅ、ＯｐｅｎｎＳｔｅｐ（商標）を含む、種々のオペレーティング・システム又はプラットフォームの上で走るワークステーション等のサーバーであってもよいし、そうしたサーバーを備えることもできる。ネットワーク・マネージャー２０６は、ネットワーク２１２上の１つ又は複数の加入クライアント装置２０２間の通信を管理するために使用される。また、ネットワーク・マネージャー２０６は、クライアント装置２０２に関する情報、例えば、加入ユーザー及びクライアント装置２０２のプロファイル情報、クライアント装置２０２の呼び履歴、加入ユーザーの支払い情報等を記憶するためにも使用される。実施の形態において、ネットワーク・マネージャー２０６は、クライアント装置２０２によって送出されるメッセージを圧縮するために使用することができる圧縮コンポーネント２０８を備えることができる。例えば、実施の形態においては、宛先クライアント装置へテキスト・メッセージを送出する前に、発信元クライアント装置は圧縮されていないテキスト・メッセージをネットワーク・マネージャー２０６へ送出する。そうすると、ネットワーク・マネージャー２０６は発信元クライアント装置のためにテキスト・メッセージを圧縮することができる。ネットワーク・マネージャー２０６がテキスト・メッセージを圧縮すると、ネットワーク・マネージャー２０６は圧縮されたテキスト・メッセージを宛先クライアント装置へ送ることができる。
【００３１】
図３は、ＶｏＩＰ呼びを確立するときにテキストベースのメッセージを２進メッセージへ変換する例示の方法３００を示すフロー図である。図３の方法は、テキストベースのプロコルで送出されるメッセージ内で一意であるように意図されたテキストベースのフィールドを変換するために使用されることができる。実施の形態において、テキストベースのプロコルはセッション・イニシエーション・プロトコル（ＳＩＰ）である。別の実施の形態においては、テキストベースのプロコルはハイパーテキスト・トランスファー・プロトコル（ＨＴＴＰ）である。実施の形態において、図３の方法はクライアント２０２のようなクライアント装置内で実行される。別の実施の形態においては、図３の方法はネットワーク・マネージャー２０６のようなネットワーク・マネージャー内で実行される。
【００３２】
動作３０２において、テキストベースのプロコルのメッセージ内のテキストベースのフィールドが大域的に一意であると識別される。実施の形態において、こうしたテキストベースのフィールドは呼びＩＤである。例えば、テキストベースのフィールドは、大域的に一意であることを要するものとしてテキストベースのフィールドを識別する識別子と関連付けられた認識可能な識別子を有する。動作３０４において、識別されたテキストベースのフィールドは、暗号用ハッシング・アルゴリズムを使用して２進表現へ圧縮される。テキストベースのフィールドは、圧縮コンポーネント２０８のような圧縮コンポーネントを用いて圧縮される。実施の形態において、暗号用ハッシング・アルゴリズムはＭＤ５アルゴリズムである。こうした実施の形態においては、２進表現は、フィールドが大域的に一意であることを保証するのを助ける１２８ビット値である。動作３０６において、テキストベースのフィールドの２進表現が受信側へ送出される。例えば、受信側はネットワーク・マネージャー又はクライアント装置である。
【００３３】
図４は、ＶｏＩＰ呼びを確立するときにテキストベースのメッセージを２進メッセージへ変換する例示の方法４００を示す他のフロー図である。図４の方法は、テキストベースのプロコルで送出されるメッセージ内で一意であるように意図されたテキストベースのフィールドを変換するために使用されることができる。実施の形態において、テキストベースのプロコルはセッション・イニシエーション・プロトコル（ＳＩＰ）である。別の実施の形態においては、テキストベースのプロコルはハイパーテキスト・トランスファー・プロトコル（ＨＴＴＰ）である。実施の形態において、図４の方法はクライアント２０２のようなクライアント装置内で実行される。
【００３４】
動作４０２において、呼びＩＤが生成される。実施の形態においては、呼びＩＤはＳＩＰ勧誘メッセージ内のテキストベースのフィールドである。呼びＩＤはＩＰアドレスとタイムスタンプとを含むことができ、タイムスタンプはＶｏＩＰ呼びが開始されている時間を示す。別の実施の形態においては、呼びＩＤは、ＩＰアドレスとタイムスタンプに加えて、他のパラメーターを含むことができる。実施の形態において、ＩＰアドレスはＩＰｖ６アドレスである。動作４０４において、暗号用ハッシング・アルゴリズムを用いて呼びＩＤは２進表現へ圧縮される。呼びＩＤは圧縮コンポーネント２０８のような圧縮コンポーネントを用いて圧縮される。実施の形態において、暗号用ハッシング・アルゴリズムはＭＤ５アルゴリズムである。こうした実施の形態においては、２進表現は、フィールドが大域的に一意であることを保証するのを助ける１２８ビット値である。動作４０６において、呼びＩＤの２進表現が受信側へ送出される。例えば、受信側はネットワーク・マネージャー又はクライアント装置である。
【００３５】
呼びＩＤに加えて、本発明は、大域的に一意であることを要する他のフィールドを圧縮するのに使用されることができる。１つのこうしたフィールドはＳＩＰ  Ｖｉａヘッダー内のブランチ・フィールドである。Ｖｉａヘッダー・フィールドは、セッション呼びに用いられるトランスポートを示すのに用いられ、呼びが送出されるべき場所を識別することができる。典型的には、Ｖｉａヘッダー・フィールドはブランチ・パラメーターを含む。ブランチ・パラメーターはクライアント装置によって生成された呼びを識別するのに用いられる。ブランチ・パラメーター値は、クライアント装置によって開始される呼びに対して空間及び時間にわたって一意でなければならない。
【００３６】
本発明の精神と範囲を逸脱することなく、図示された種々のコンポーネント及び図示されないコンポーネントの多くの異なる配置が可能である。本発明の実施の形態は例示することを意図して記述されており、限定的であることを意図していない。当業者には、発明の範囲から逸脱しない代替の実施の形態が明らかになるであろう。本発明の範囲から逸脱することなく、当業者は上記の改良を実施する代替の手段を開発することができる。
【００３７】
理解されるように、或る特徴及びサブコンビネーションは有用であって、他の特徴及びサブコンビネーションを参照することなく採用され得、サブコンビネーションは特許請求の範囲内で想定される。種々の図面に掲げられた全部のステップが、その記述された特定の順序で実行される訳ではない。
【図１】
0005421781.tif 000002
【図２】
0005421781.tif 000003
【図３】
0005421781.tif 000004
【図４】
0005421781.tif 000005