(57)【要約】【課題】パブリックコンピュータネットワークを経てポイント・ツー・ポイント通信する装置の電話番号とＩＰアドレスのペアリングを決定する方法を提供する。【解決手段】第１装置がパブリックコンピュータネットワークを経て第２装置と通信する方法は、ユーザが第２装置の電話番号をダイヤルするのを検出し、第２装置の電話番号及びＩＰアドレスを含むペアリングについてペアリングリストをサーチすることを含む。ペアリングリストにペアリングが見つかった場合、ペアリングのＩＰアドレスを使用し、パブリックコンピュータネットワークを経て第２装置とコンピュータネットワーク接続を確立し、第２装置とデータパケットを交換する。ペアリングが見つからない場合、ピア・ツー・ピアルックアッププロトコルを使用してペアリングを見出す。それでもペアリングが見つからない場合、電話ネットワークを経て第２装置と電話接続を確立し、ＩＰアドレスを受け取る。【選択図】図３
2008167443.tif 000002
【特許請求の範囲】
【請求項１】
第１装置がパブリックコンピュータネットワークを介して第２装置と通信するための方法であって、
前記第２装置の電話番号をユーザがダイヤルすることを検出する段階と、
前記第２装置の前記電話番号及びＩＰアドレスを含むペアリングについて前記第１装置にキャッシュ記憶されたペアリングリストをサーチする段階と、
該ペアリングリストに前記ペアリングが見つかった場合に、
前記ペアリングにおける前記ＩＰアドレスを使用して、前記パブリックコンピュータネットワークを介して前記第２装置とコンピュータネットワーク接続を確立する段階と、
前記コンピュータネットワーク接続を通して前記第２装置とデータパケットを交換する段階と、
を含むことを特徴とする方法。
【請求項２】
前記ペアリングリストに前記ペアリングが見つからなかった場合に、
ピア・ツー・ピアルックアッププロトコルを使用して、ピア・ツー・ピアルックアップネットワークのノードを通して前記ペアリングを見出す段階と、
前記ペアリングを前記ペアリングリストにセーブする段階と、
前記ペアリングにおける前記ＩＰアドレスを使用して、前記パブリックコンピュータネットワークを介して前記第２装置とコンピュータネットワーク接続を確立する段階と、
前記コンピュータネットワーク接続を通して前記第２装置とデータパケットを交換する段階と、
をさらに含む、請求項１に記載の方法。
【請求項３】
前記ピア・ツー・ピアルックアッププロトコルがChordを含み、前記電話番号が、前記ペアリングでChordリングにおける後任ノードを決定するためのキーとして使用される、請求項２に記載の方法。
【請求項４】
前記ピア・ツー・ピアルックアッププロトコルを使用して前記ペアリングが見つからない場合に、
前記電話番号を使用して、電話ネットワークを介して前記第２装置と電話接続を確立する段階と、
前記電話接続を通して前記第２装置から前記ＩＰアドレスを受け取る段階と、
前記ペアリングを前記ペアリングリストにセーブする段階と、
前記ＩＰアドレスを使用して、前記パブリックコンピュータネットワークを介して前記第２装置とコンピュータネットワーク接続を確立する段階と、
前記コンピュータネットワーク接続を通して前記第２装置とデータパケットを交換する段階と、
をさらに含む、請求項２に記載の方法。
【請求項５】
前記ＩＰアドレスから電話番号の国コード及びエリアコードの少なくとも一方を決定する段階をさらに含む、請求項４に記載の方法。
【請求項６】
前記データパケットを交換する段階が、前記第２装置に前記ペアリングを送信することを含む、請求項４に記載の方法。
【請求項７】
前記データパケットを交換する段階が、前記第１装置の別の電話番号及び別のＩＰアドレスの別のペアリングを前記第２装置から受け取ることを含む、請求項５に記載の方法。
【請求項８】
第１装置がパブリックコンピュータネットワークを介して第２装置と通信するための方法であって、
前記第２装置の電話番号をユーザが初めてダイヤルするのを検出する段階と、
前記電話番号を使用して電話ネットワークを介して前記第２装置と電話接続を確立する段階と、
前記電話接続を通して前記第２装置のＩＰアドレスを受け取る段階と、
前記第２装置の前記電話番号及びＩＰアドレスのペアリングを前記第１装置のペアリングリストにセーブする段階と、
前記ＩＰアドレスを使用して、前記パブリックコンピュータネットワークを介して前記第２装置とコンピュータネットワーク接続を確立する段階と、
前記コンピュータネットワーク接続を通して前記第２装置に前記ペアリングを送信する段階と、
を含むことを特徴とする方法。
【請求項９】
前記第２装置から前記コンピュータネットワーク接続を通して前記第１装置の別の電話番号及び別のＩＰアドレスの別のペアリング受け取る段階をさらに含む、請求項８に記載の方法。
【請求項１０】
前記第２装置は、前記電話接続からの発呼者ＩＤを使用して前記別の電話番号を決定する、請求項９に記載の方法。
【請求項１１】
２回目に前記電話番号をユーザがダイヤルすることを検出する段階と、
前記ペアリングを検索するために前記電話番号について前記ペアリングリストをサーチする段階と、
前記ペアリングにおける前記ＩＰアドレスを使用して、前記パブリックコンピュータネットワークを介して前記第２装置とコンピュータネットワーク接続を確立する段階と、
前記コンピュータネットワーク接続を通して前記第２装置とデータパケットを交換する段階と、
をさらに含む、請求項９に記載の方法。
【請求項１２】
前記２回目に前記電話番号をユーザがダイヤルすることを検出する段階の前に、前記ＩＰアドレスから前記電話番号の国コード及びエリアコードのうちの少なくとも一方を決定する段階をさらに含む、請求項１１に記載の方法。
【請求項１３】
第１装置がパブリックコンピュータネットワークを介して第２装置と通信するための方法であって、
ピア・ツー・ピアルックアップネットワークであって、該ピア・ツー・ピアルックアップネットワークにおける各ノードが電話番号及びＩＰアドレスのペアリングを含むペアリングリストを記憶している、ピア・ツー・ピアルックアップネットワークに加入する段階と、
前記第２装置の電話番号をユーザがダイヤルすることを検出する段階と、
前記第２装置の前記電話番号及びＩＰアドレスを含むペアリングについて前記第１装置におけるローカルペアリングリストをサーチする段階と、
前記ローカルペアリングリストに前記ペアリングが見つからなかった場合に、
ピア・ツー・ピアルックアッププロトコルを使用して、前記ピア・ツー・ピアルックアップネットワークのノードを通して前記ペアリングを見出す段階と、
前記ペアリングを前記ペアリングリストにセーブする段階と、
前記ペアリングにおける前記ＩＰアドレスを使用して、前記パブリックコンピュータネットワークを介して前記第２装置とコンピュータネットワーク接続を確立する段階と、
前記コンピュータネットワーク接続を通して前記第２装置とデータパケットを交換する段階と、
を含むことを特徴とする方法。
【請求項１４】
前記ピア・ツー・ピアルックアッププロトコルがChordを含み、前記電話番号が前記ペアリングでChordリングにおける後任ノードを決定するためのキーとして使用される、請求項１３に記載の方法。
【請求項１５】
前記ピア・ツー・ピアルックアップネットワークのサブグループに加入する段階であって、このサブグループが、他の装置との過去の直接的通信、地理的位置及びビジネス関係のうちの少なくとも１つについての基準に基づいている段階、をさらに含む、請求項１３に記載の方法。
【請求項１６】
前記ピア・ツー・ピアルックアッププロトコルが縮小型Chordを含み、前記基準が、該基準に一致する情報を用いてChordリングにおける後任ノードを決定するためのキーとして使用される、請求項１５に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パブリックコンピュータネットワークを経てポイント・ツー・ポイント通信する装置の電話番号とＩＰアドレスのペアリングを決定する方法に係る。
【０００２】
関連出願へのクロスリファレンス：本出願は、共通に譲渡されて参考としてここに援用する“Using PSTN to Communicate IP Address for Point-to-Point Text, Voice, Video, or Data Communication”と題する米国特許出願第１１／２８０，６８８号（代理人ドケットＮｏ．ＡＲＣ−Ｐ１５２）に係る。
【０００３】
また、本出願は、（１）“Point-to-Point Communication Using UPnP Protocol”と題する米国特許出願（代理人ドケットＮｏ．ＡＲＣ−Ｐ１６１）、（２）“Network Communication Equipment With PPPoE Bridging Function”と題する米国特許出願（代理人ドケットＮｏ．ＡＲＣ−Ｐ１６２）、（３）“Regional Service by Phone”と題する米国特許出願（代理人ドケットＮｏ．ＡＲＣ−Ｐ１６４）、及び（４）“Using Second Channel to Communicate IP Address for Point-to-Point Text, Voice, Video, or Data Communication”と題する米国特許出願（代理人ドケットＮｏ．ＡＲＣ−Ｐ１６５）にも係り、これらは、同時に出願され、共通に譲渡され、参考としてここに援用するものである。
【背景技術】
【０００４】
２００５年１１月１５日に出願された“Using PSTN to Communicate IP Address for Point-to-Point Text, Voice, Video, or Data Communication”と題する米国特許出願第１１／２８０，６８８号は、公衆交換電話ネットワーク（ＰＳＴＮ）を使用して、パブリックコンピュータネットワーク（例えば、インターネット）を経て２つの装置間でポイント・ツー・ポイント通信のためにインターネットプロトコル（ＩＰ）アドレスを交換する方法を開示している。一例において、第１装置は、パブリックコンピュータネットワークを経てネットワーク接続を設定するために、ＰＳＴＮを使用してそのＩＰアドレスを第２装置に送信する。次いで、第２装置は、そのＩＰアドレスを使用して、パブリックコンピュータネットワークを経て第１装置へネットワーク接続要求を送信する。ネットワーク接続が確立されると、第１及び第２装置は、テキスト、ボイス、ビデオ、又はデータ通信を搬送するデータパケットをそれらのユーザ間で交換する。
【発明の開示】
【課題を解決するための手段】
【０００５】
本発明の一実施形態において、第１装置がパブリックコンピュータネットワークを経て第２装置と通信するための方法は、ユーザが第２装置の電話番号をダイヤルするのを検出し、第２装置の電話番号及びＩＰアドレスを含むペアリングについてペアリングリストをサーチすることを含む。ペアリングリストにペアリングが見つかった場合には、この方法は、次いで、そのペアリングにおけるＩＰアドレスを使用して、パブリックコンピュータネットワークを経て第２装置とのコンピュータネットワーク接続を確立し、第２装置とでデータパケットを交換することを含む。ペアリングリストにペアリングが見つからなかった場合には、この方法は、次いで、ピア・ツー・ピアルックアッププロトコルを使用して、ペアリングを見出すことを含む。ピア・ツー・ピアルックアッププロトコルを使用してもペアリングが見つからない場合には、この方法は、次いで、公衆交換電話ネットワークを経て第２装置との電話接続を確立して、ＩＰアドレスを受け取ることを含む。
【０００６】
一実施形態において、この方法は、更に、ペアリングを第２装置に送信し、第２装置からコンピュータネットワーク接続を経て第１装置の電話番号及びＩＰアドレスのペアリングを受け取ることを含む。
【０００７】
一実施形態において、第１装置がパブリックコンピュータネットワークを経て第２装置と通信するための方法は、電話番号及びＩＰアドレスのペアリングでノードを有するピア・ツー・ピアルックアップネットワークに加入し、他の装置との過去の直接的通信、地理的位置及びビジネス関係の少なくとも１つに基づいて、ピア・ツー・ピアルックアップネットワークのサブグループに加入することを含む。この方法は、更に、ユーザが第２装置の電話番号をダイヤルするのを検出し、第２装置の電話番号及びＩＰアドレスを含むペアリングについて第１装置のペアリングリストをサーチすることを含む。ペアリングリストにペアリングが見つからなかった場合には、この方法は、次いで、ピア・ツー・ピアルックアッププロトコルを使用して、ピア・ツー・ピアルックアップネットワークのノードを経てペアリングを見出し、そのペアリングをペアリングリストにセーブし、ペアリングにおけるＩＰアドレスを使用して、コンピュータネットワーク接続を確立し、パブリックコンピュータネットワークを経て第２装置とでデータパケットを交換することを含む。
【発明を実施するための最良の形態】
【０００８】
米国特許出願第１１／２８０，６８８号は、公衆交換電話ネットワーク（ＰＳＴＮ）を使用して、パブリックコンピュータネットワークを経て２つの装置間でポイント・ツー・ポイント通信のためにＩＰアドレスを交換する方法を開示している。
【０００９】
多数のユーザがスタティックＩＰアドレスを有しているので、本発明の実施形態では、スタティックＩＰアドレスを覚えておく方法が提案される。この方法は、第１のボイスオーバーインターネットプロトコル（ＶｏＩＰ）ゲートウェイ又は電話アダプタが、ダイヤルされた電話番号がメモリ内の電話番号及びＩＰアドレスのペアリングに一致するかどうか決定することを必要とし、したがって、第１のＶｏＩＰゲートウェイは、ＰＳＴＮを経て第２のＶｏＩＰゲートウェイとＩＰアドレスを交換せずに、第２のＶｏＩＰゲートウェイに直結されてデータを転送する。この方法は、長距離電話コールをダイヤルするときには、接続料金と、ＩＰアドレスの交換に要する時間とを著しく節約する。
【００１０】
更に、ダイナミックＩＰアドレスが時間によって変化するために、ＶｏＩＰゲートウェイがダイヤルされた電話番号をＩＰアドレスに常に一致させることができないことを考慮し、本発明の実施形態では、ＩＰアドレスをキャッシングするための方法が提案される。この方法は、動的ＩＰアドレスが、変化と変化との間の時間中は同じままであるという利点がある。
【００１１】
分散型ハッシュテーブル（ＤＨＴ）を使用するChordリングのようなピア・ツー・ピアネットワーク構成は、データの分散型記憶及び共有を許す。ピア・ツー・ピアネットワーク構成を使用し、パブリックコンピュータネットワークを経てＶｏＩＰゲートウェイ間で通信するために電話番号及びＩＰアドレスのペアリングを記憶し共有するための方法が提案される。ペアリングの分散型記憶及び共有では、ＶｏＩＰゲートウェイは、ＩＰアドレスを交換するためにＰＳＴＮを使用せずに接続を達成することができる。
【００１２】
種々の図面を通じて同じ参照番号で同様の又は同じ要素を示した添付図面を参照して詳細に説明する。図１は、本発明の一実施形態においてＶｏＩＰゲートウェイ１０２と１０４との間に通信を確立するためのシステム１００を示す。ＶｏＩＰゲートウェイ１０２及び１０４は、ネットワーク接続を経てデータパケットを交換するためにパブリックコンピュータネットワーク１０６（例えば、インターネット）により接続される。また、ＶｏＩＰゲートウェイ１０２及び１０４は、ＰＳＴＮ１０８によっても接続され、パブリックコンピュータネットワーク１０６を経てネットワーク接続を確立するためにＩＰアドレスを交換する。
【００１３】
図２は、本発明の一実施形態におけるＶｏＩＰゲートウェイ１０２及び１０４を更に詳細に示す。ＶｏＩＰゲートウェイ１０２は、平易旧式電話サービス（ＰＯＴＳ）電話２０４からＰＳＴＮ１０８へのＰＳＴＮラインに結合されたデュアルトーン多周波数（ＤＴＭＦ）又は周波数シフトキーイング（ＦＳＫ）受信器２０２を備えている。このＤＴＭＦ受信器２０２は、ユーザによりダイヤルされた電話番号を検出する。ユーザによりダイヤルされた電話番号を受信するために、プロセッサ２０６がＤＴＭＦ受信器２０２に結合される。また、プロセッサ２０６は、ユーザがコールする種々の装置の電話番号及びＩＰアドレスのペアリングを伴うペアリングリスト１０３（図１）を記憶するためのメモリ２０８にも結合される。メモリ２０８は、ＶｏＩＰソフトウェアも記憶する。メモリ２０８は、フラッシュメモリ又はハードディスクである。別の実施形態では、ＶｏＩＰゲートウェイ１０２は、従来の電話のフォームファクタを有するようにＰＯＴＳ電話２０４と一体化される。
【００１４】
同様に、ＶｏＩＰゲートウェイ１０４も、ＰＯＴＳ電話２１４からＰＳＴＮ１０８へのＰＳＴＮラインに結合されたＤＴＭＦ受信器２１２を備えている。ダイヤルされた電話番号を受信するためにプロセッサ２１６がＤＴＭＦ／ＦＳＫ受信器２１２に結合される。プロセッサ２１６は、ユーザがコールする種々の装置の電話番号及びＩＰアドレスのペアリングを伴うペアリングリスト１０５（図１）を記憶するためのメモリ２１８にも結合される。メモリ２０８は、ＶｏＩＰソフトウェアも記憶する。別の実施形態では、ＶｏＩＰゲートウェイ１０２は、従来の電話のフォームファクタを有するようにＰＯＴＳ電話２０４と一体化される。
【００１５】
図３は、本発明の一実施形態において、システム１００がＩＰアドレスをキャッシュ記憶し、次いで、ＩＰアドレスを使用して、パブリックコンピュータネットワーク１０６を経てネットワーク接続を確立する方法３００を示している。ＶｏＩＰゲートウェイ１０２のアクションは、左側に示され、一方、ＶｏＩＰゲートウェイ１０４のアクションは、右側に示されている。装置１０２と１０４との間の関連アクションは、同じ参照番号に異なる参照文字で示されている。
【００１６】
先ず、ＶｏＩＰゲートウェイ１０２のアクションを参照すれば、ステップ３０２において、ＶｏＩＰゲートウェイ１０２は、電話２０４の発呼者によりダイヤルされた電話番号を傍受する。より詳細には、ＤＴＭＦ／ＳＦＫ受信器２０２が、発呼者によりダイヤルされた電話番号を検出する。
【００１７】
ステップ３０４Ａにおいて、ＶｏＩＰゲートウェイ１０２は、その検出された電話番号を使用して、ＰＳＴＮ１０８を経てＶｏＩＰゲートウェイ１０４との電話接続を確立し、したがって、ＶｏＩＰゲートウェイ１０２及び１０４は、それらのＩＰアドレスを交換することができる。ＶｏＩＰゲートウェイ１０２及び１０４は、冗長度チェック（例えば、チェック和）を伴うか又は伴わない一連の標準タッチトーンを使用してそれらのＩＰアドレスを交換することができる。また、ＶｏＩＰゲートウェイ１０２及び１０４は、各々が他方の装置をダイヤルし、ＰＳＴＮ１０８へダイヤル出力するのに使用されるタッチトーンにＩＰアドレスを含ませることにより、それらのＩＰアドレスを交換することもできる。この場合には、ＰＳＴＮ１０８は、電話番号を使用して、他方の装置をリンギングし、次いで、電話のリンギングとリンギングとの間にＤＴＭＦ又はＦＳＫシグナリングを使用してＩＰアドレスと共にモデムメッセージを送信する。更なる詳細については、米国特許出願第１１／２８０，６８８号を参照されたい。
【００１８】
ステップ３０８において、ＶｏＩＰゲートウェイ１０２は、ＶｏＩＰゲートウェイ１０４の電話番号及びＩＰアドレスのペアリングをそのペアリングリスト１０３（図１）にキャッシュ記憶する。ＶｏＩＰゲートウェイ１０２は、このキャッシュ記憶を使用して、おそらく再びダイヤルされる電話番号に対するペアリングを記憶すると共に、おそらくダイヤルされない電話番号に対するペアリングを破棄する。より詳細には、プロセッサ２０６は、メモリ２０８に位置するペアリングリスト１０３にペアリングをキャッシュ記憶する。
【００１９】
同じ国に位置するがエリアコードが異なるか、又は同じ国に位置しエリアコードも同じであるＶｏＩＰゲートウェイ１０４への電話コールの場合には、検出される電話番号は、Ｅ．１６４フォーマットの完全な電話番号の一部分しか有していない。例えば、同じエリアコードにおける装置１０４へのコールの場合、検出される電話番号は、国及びエリアコードのないＸＸＸ−ＹＹＹＹしか有していない。この場合、ＶｏＩＰゲートウェイ１０２は、ＷＨＯＩＳ問合せを使用して、ＶｏＩＰゲートウェイ１０４の地理的位置をそのＩＰアドレスから決定する。地理的位置から、ＶｏＩＰゲートウェイ１０２は、電話番号における欠落コードを決定する。
【００２０】
ステップ３１０Ａにおいて、ＶｏＩＰゲートウェイ１０２は、データパケットを交換するためにパブリックコンピュータネットワーク１０６を経て装置１０４とのコンピュータネットワーク接続を確立する。データパケットは、テキスト、ボイス、ビデオ又はデータ通信を搬送することができる。
【００２１】
ステップ３１４Ａにおいて、ＶｏＩＰゲートウェイ１０２は、ＶｏＩＰゲートウェイ１０４の電話番号及びＩＰアドレスのペアリングをパケットにおいてＶｏＩＰゲートウェイ１０４に送信し、したがって、それ自身のペアリングをそのペアリングリスト１０５（図１）に含ませることができる。
【００２２】
ステップ３１６Ａにおいて、ＶｏＩＰゲートウェイ１０２は、それ自身の電話番号及びＩＰアドレスのペアリングをＶｏＩＰゲートウェイ１０４からパケットにおいて受け取り、したがって、ＶｏＩＰゲートウェイ１０２は、それ自身のペアリングをそのペアリングリスト１０３に含ませることができる。
【００２３】
ＶｏＩＰゲートウェイ１０４のアクションを参照すれば、ステップ３０４Ｂにおいて、ＶｏＩＰゲートウェイ１０４は、ＰＳＴＮ１０８を経てＶｏＩＰゲートウェイ１０２との電話接続を確立し、したがって、ＶｏＩＰゲートウェイ１０２及び１０４は、それらのＩＰアドレスを交換することができる。ＶｏＩＰゲートウェイ１０４は、そのＩＰアドレスをＶｏＩＰゲートウェイ１０２に送信し、ＶｏＩＰゲートウェイ１０２からＶｏＩＰゲートウェイ１０２のＩＰアドレスを受け取る。これは、上述したアクション３０４Ａに対応する。
【００２４】
ステップ３０６において、ＶｏＩＰゲートウェイ１０４は、発呼者ＩＤを使用して、装置１０２の電話番号をその電話接続から検出する。より詳細には、ＤＴＭＦ／ＳＦＫ受信器２１２は、ＰＳＴＮラインから発呼者ＩＤを検出する。
【００２５】
ステップ３１０Ｂにおいて、ＶｏＩＰゲートウェイ１０４は、データパケットを交換するためにパブリックコンピュータネットワーク１０６を経てＶｏＩＰゲートウェイ１０２とのコンピュータネットワーク接続を確立する。これは、上述したアクション３１０Ａに対応する。
【００２６】
ステップ３１２において、ＶｏＩＰゲートウェイ１０４は、ＶｏＩＰゲートウェイ１０２の電話番号及びＩＰアドレスのペアリングをそのペアリングリスト１０５（図１）にキャッシュ記憶する。より詳細には、プロセッサ２１６は、メモリ２１８に位置するペアリングリスト１０５にペアリングを記憶する。
【００２７】
ステップ３１４Ｂにおいて、ＶｏＩＰゲートウェイ１０４は、ＶｏＩＰゲートウェイ１０２の電話番号及びＩＰアドレスのペアリングをパケットにおいてＶｏＩＰゲートウェイ１０２に送信し、したがって、これは、それ自身のペアリングをそのペアリングリスト１０３（図１）に含ませることができる。これは、上述したアクション３１４Ａに対応する。
【００２８】
ステップ３１６Ｂにおいて、ＶｏＩＰゲートウェイ１０４は、それ自身の電話番号及びＩＰアドレスのペアリングをパケットにおいてＶｏＩＰゲートウェイ１０２から受け取り、したがって、ＶｏＩＰゲートウェイ１０４は、それ自身のペアリングをペアリングリスト１０５に含ませることができる。これは、上述したアクション３１６Ａに対応する。
【００２９】
方法３００は、２つのＶｏＩＰゲートウェイをもつシステム１００について述べるが、同じ方法を、図４に示すように付加的な装置をもつシステム４００にも適用することができる。例えば、方法３００は、ＶｏＩＰゲートウェイ１０２、１０４、４０６及び４０８と共に使用して、各ペアリングリスト１０３、１０５、４０７及び４０９を発生してもよい。しかしながら、ペアリングリストは、システム内のＶｏＩＰゲートウェイの数が増加するにつれて大きくなる。したがって、必要とされるのは、非常に多数のＶｏＩＰゲートウェイのペアリングを取り扱う方法である。
【００３０】
図５は、本発明の一実施形態において、ＶｏＩＰゲートウェイ（例えば、ＶｏＩＰゲートウェイ１０２）が多数の仕方を使用して別のＶｏＩＰゲートウェイ（例えば、ＶｏＩＰゲートウェイ１０４）のＩＰアドレスを決定し、したがって、パブリックコンピュータネットワーク１０６を経てネットワーク接続を確立できるようにする方法５００を示す。
【００３１】
ステップ５０２において、ＶｏＩＰゲートウェイ１０２は、電話２０４の発呼者によりダイヤルされた電話番号を傍受する。より詳細には、ＤＴＭＦ／ＦＳＫ受信器２０２は、発呼者によりダイヤルされた電話番号を決定する。ステップ５０２の後に、ステップ５０４が続く。
【００３２】
ステップ５０４において、ＶｏＩＰゲートウェイ１０２は、ユーザによりダイヤルされた電話番号を有するペアリングについてペアリングリスト１０３をサーチする。ステップ５０４の後に、ステップ５０６が続く。
【００３３】
ステップ５０６において、ＶｏＩＰゲートウェイ１０２は、ペアリングが見つかったかどうか決定する。ペアリングが見つからない場合には、ステップ５０６の後に、ステップ５０８又はステップ５１２が続く。ＶｏＩＰゲートウェイ１０２が、ペアリングリストの分散記憶及び共有のためのピア・ツー・ピアルックアップネットワークに加入する場合には、システム（例えば、図４のシステム４００）が多数のＶｏＩＰゲートウェイを有するので、ステップ５０６の後に、ステップ５０８が続く。ＶｏＩＰゲートウェイ１０２が、このようなピア・ツー・ピアルックアップネットワークに加入しない場合には、システム４００が幾つかのＶｏＩＰゲートウェイしかもたないので、ステップ５０６の後に、ステップ５１２が続く。ペアリングが見つかった場合には、ステップ５０６の後に、ステップ５１６が続く。
【００３４】
ステップ５０８において、ＶｏＩＰゲートウェイ１０２は、ピア・ツー・ピアルックアップを遂行して、ペアリングを有するピア・ツー・ピアネットワークにおいてノードを見つける。一実施形態では、ＶｏＩＰゲートウェイは、Chordリングにおいてノードを形成する。ノードのＩＰアドレスは、ChordプロトコルのＳＨＡ−１（セキュアハッシュアルゴリズム）関数によりハッシュされて、ノード識別子を形成し、ノードの電話番号は、ＳＨＡ−１関数によりハッシュされて、キー識別子を形成する。Chordリングにおいて、電話番号（即ち、キー）及びＩＰアドレスの各ペアリングは、ノード識別子がキー識別子に等しいか又はそれに従う後任ノードに指定される。
【００３５】
あるノードは、Chordリングに加入するときに、そのペアリングリストから適当な後任ノードへそれ自身の電話番号及びＩＰアドレスのペアリングを与える。このノードは、次いで、Chordプロトコルのインサート（キー）関数を使用して、ペアリングリスト内の他のペアリングを適当な後任ノードに送信する。したがって、Chordリングの各ノードは、（１）それ自身のペアリング、（２）キャッシュされたペアリングリスト、及び（３）Chordリングオペレーション（例えば、インサート（キー）及びルックアップ（キー））のためのペアリングリストを有する。
【００３６】
ＶｏＩＰゲートウェイ１０２は、Chordプロトコルのルックアップ（キー）関数を使用して、ダイヤルされた電話番号に対するキー識別子及びそのフィンガーテーブルを決定し、そのペアリングを記憶する後任ノードを直接的又は間接的（他のノードを経て）に探索する。ＶｏＩＰゲートウェイ１０２は、次いで、ダイヤルされた電話番号に対応するＩＰアドレスについて後任ノードに問合せする。
【００３７】
電話番号及びＩＰアドレスのペアリングを記憶するのに加えて、Chordリングにおけるノードは、シリアル番号、ＭＡＣアドレス、及び他の関連情報を、検証、認証及び他のセキュリティ目的で記憶することもできる。或いはまた、中央登録ノードは、この情報を検証、認証及び他のセキュリティ目的で記憶する。ステップ５０８の後に、ステップ５１０が続く。
【００３８】
ステップ５１０において、ＶｏＩＰゲートウェイ１０２は、ピア・ツー・ピアルックアップを通してペアリングが見つかるかどうか決定する。もし見つからない場合には、ステップ５１０の後に、ステップ５１２が続く。ペアリングが見つかった場合には、ステップ５１０の後に、ステップ５１４が続く。
【００３９】
ステップ５１２において、ＶｏＩＰゲートウェイ１０２は、方法３００（図３）のステップで上述したように、ＰＳＴＮ１０８を使用して、ＶｏＩＰゲートウェイ１０４とＩＰアドレスを交換する。ステップ５１２の後に、ステップ５１４が続く。
【００４０】
ステップ５１４において、ＶｏＩＰゲートウェイ１０２は、ＶｏＩＰゲートウェイ１０４の電話番号及びＩＰアドレスのペアリングをそのペアリングリスト１０３（図１）にキャッシュ記憶する。ステップ５１４の後に、ステップ５１６が続く。
【００４１】
ステップ５１６において、ＶｏＩＰゲートウェイ１０２は、データパケットを交換するためにパブリックコンピュータネットワーク１０６を経てＶｏＩＰゲートウェイ１０４とのコンピュータネットワーク接続を確立する。データパケットは、テキスト、ボイス、ビデオ、又はデータ通信を搬送することができる。また、ＶｏＩＰゲートウェイ１０２及び１０４は、方法３００（図３）のステップについて上述したようにそれらの各ペアリングを交換する。
【００４２】
図６は、本発明の一実施形態においてＶｏＩＰゲートウェイ（例えば、ＶｏＩＰゲートウェイ１０２）がピア・ツー・ピアルックアップシステムに加入する方法を示す。
【００４３】
ステップ６０２において、ＶｏＩＰゲートウェイ１０２は、分散型記憶及び共有ペアリングリストに対するピア・ツー・ピアネットワークに加入する。一実施形態において、ピア・ツー・ピアネットワークは、ノードのＩＰアドレスがＳＨＡ−１（セキュアハッシュアルゴリズム）関数によりハッシュされてノード識別子を形成し、且つノードの電話番号がＳＨＡ−１関数によりハッシュされてキー識別子を形成するようなChordリングで実施される。１つ又は多数の方法をＶｏＩＰゲートウェイ１０２で使用して、ピア・ツー・ピアネットワークを見つけ加入することができる。
【００４４】
ＶｏＩＰゲートウェイ１０２は、Chordリングの中央登録ノードに１つ以上のウェブＵＲＬ又はＩＰアドレスで連絡し、次いで、Chordリングに加入する。
【００４５】
ＶｏＩＰゲートウェイ１０２は、中央登録電話番号、又はChordリングにあると知られているノードの電話番号をコールし、次いで、Chordリングに加入することができる。
【００４６】
ＶｏＩＰゲートウェイ１０２は、Chordリング内のノードについてＩＰアドレスの範囲を能動的にスキャンし、次いで、Chordリングに加入することができる。
【００４７】
或いはまた、ＶｏＩＰゲートウェイ１０２は、ChordリングのあるノードがChordリングに加入するために他のノードに対するＩＰアドレスの範囲を能動的にスキャンしたときに、ピア・ツー・ピアネットワークに加入することができる。このようなノードは、より小さなChordリングを集めて、より大きなChordリングにするように働いてもよい。
【００４８】
最初の２つの登録方法を除くと、他の登録方法は、ＶｏＩＰゲートウェイ１０２がピア・ツー・ピアネットワークをサーチしなければならないか、或いはピア・ツー・ピアネットワークがＶｏＩＰゲートウェイ１０２をサーチしなければならないので、付加的な遅延を招くことがある。ＶｏＩＰゲートウェイ１０２は、このＶｏＩＰゲートウェイ１０２がターンオンされるか或いはパブリックコンピュータネットワーク１０６へのネットワーク接続がダウンするたびに、ピア・ツー・ピアネットワークに登録され、したがって、最初の２つの方法は、他の登録方法よりも、ＶｏＩＰゲートウェイ１０２が迅速に準備できるようにすることに注意されたい。
【００４９】
ステップ６０４において、ＶｏＩＰゲートウェイ１０２は、ユーザの関心に基づいて、ピア・ツー・ピアネットワークの１つ以上のサブグループに加入する。一実施形態では、ＶｏＩＰゲートウェイ１０２は、サブグループが識別子Ｘに関連付けられる縮小型Chordプロトコルを使用してサブグループに加入する。この縮小型Chordプロトコルでは、サブグループにおけるノードが、インサート（Ｘ、ノード）及びルックアップ（Ｘ、ノード）に対して根をもつツリーを形成する付加的な情報をセーブする。多数の形式のサブグループを形成することができ、その幾つかを以下に述べる。
【００５０】
ＶｏＩＰゲートウェイ１０２は、過去の直接的通信に基づいてサブグループに加入してもよい。例えば、装置Ｄと直接通信を行なった装置Ａ、Ｂ及びＣは、装置Ｄと直接通信した装置のサブグループに加入してもよい。企業及び政府機関は、これらサブグループを使用して、関係のある形式のサービスを開発し、例えば、友人の友人を見つけて商業的目的の情報を収集することができる。例えば、企業は、家族を調査して、それらの友人を決定してもよい。個人Ａ、Ｂ及びＣが家族の一員Ｄと直接通信したと企業が決定するものと仮定する。これに基づいて、企業は、個人Ａ、Ｂ及びＣが家族の一員Ｄの友人であると仮定することができる。
【００５１】
また、過去の直接的通信のサブグループから、過去の間接的通信を決定することもできる。これは、関係のある形式のサービスを開発し、例えば、共通の関心をもつ人々を見つけたり、又は共通の関心に関する情報の収集を調査したりするのに有用である。
【００５２】
個人Ａ０の家族及び友人が、個人Ａ１、Ａ２、Ａ３、・・・Ａｎ（さもなければ、Ａ［１、・・・ｎ］と示される）を含むものと仮定する。というのは、これら個人Ａ１、Ａ２、Ａ３、・・・Ａｎ全員が個人Ａ０と直接通信したからである。サブグループＢ［１、・・・ｎ］、Ｃ［１、・・・ｎ］、及びＤ［１、・・・ｎ］をもつ個人Ｂ０、Ｃ０、Ｄ０についても同じことが言えると仮定する。同時に、個人Ｂ０がサブグループＡ［１、・・・ｎ］の個人の１人であり（例えば、Ｂ０がＡ３）、個人Ｃ０がサブグループＢ［１、・・・ｎ］の個人の１人であり（例えば、Ｃ０がＢ３）、個人Ｄ０がサブグループＣ［１、・・・ｎ］の個人の１人である（例えば、Ｄ０がＣ３）と仮定する。
【００５３】
一例において、警察の調査で両個人Ａ０及びＤ０が判明した場合には、警察は、サブグループＡ［１、・・・ｎ］、Ｂ［１、・・・ｎ］、Ｃ［１、・・・ｎ］及びＤ［１、・・・ｎ］からサーチを行い、Ｂ０がＡ３であり、Ｃ０がＢ３であると決定できる。このような発見は、個人Ｂ０及びＣ０が個人Ａ０とＤ０との関係を橋渡しすることを示し、警察は、それらの注意を個人Ｂ０及びＣ０にある程度集中させることができる。
【００５４】
別の例では、個人Ａ０及びＤ０がニューヨークのバスケットボールリーグのメンバーであると仮定する。バスケットボールの製造者は、バスケットボールに関心のある他の人々にバスケットボールを売り込みたい。会社は、サブグループＡ［１、・・・ｎ］、Ｂ［１、・・・ｎ］、Ｃ［１、・・・ｎ］及びＤ［１、・・・ｎ］からサーチを行い、Ｂ０がＡ３であり、Ｃ０がＢ３であると決定することができる。Ｂ０及びＣ０は、個人Ａ０及びＤ０の橋渡しをするので、彼らもバスケットボールに関心があり、したがって、会社は、彼らを製品のターゲットとすることができる。
【００５５】
ＶｏＩＰゲートウェイ１０２は、地理的位置に基づいてサブグループに加入することもできる。例えば、同じ国及びエリアコードを有する装置Ａ及びＢは、同じ国及びエリアコードを有する装置のサブグループに加入する。
【００５６】
ＶｏＩＰゲートウェイ１０２は、ビジネス関係に基づいてサブグループに加入してもよい。一例において、装置Ａ及びＢは、同じサービスを提供し、したがって、そのサービスを提供する装置のサブグループに加入する。別の例では、装置Ａ及びＢは、そのサービスを受けたい装置のサブグループに加入することにより同じサービスを受けることを希望する。
【００５７】
図７は、本発明の一実施形態においてＰＳＴＮを使用せずにパブリックコンピュータネットワーク１０６を経てネットワーク接続を確立するためにＶｏＩＰゲートウェイ（例えば、ＶｏＩＰゲートウェイ１０２）が別のＶｏＩＰゲートウェイ（例えば、ＶｏＩＰゲートウェイ１０４）のＩＰを決定する方法７００を示す。
【００５８】
ステップ７０２において、ＶｏＩＰゲートウェイ１０２は、電話会社により指定された電話番号に接続される。ＶｏＩＰゲートウェイ１０２は、ＷＨＯＩＳ問合せを使用して、電話番号の欠落コードを決定する。
【００５９】
ステップ７０４において、ＶｏＩＰゲートウェイ１０２は、ペアリングリストの分散型記憶及び共有のためにピア・ツー・ピアネットワークにおける装置のプリセット電話番号及びＩＰアドレス／ＵＲＬをもつ初期ペアリングリストをメモリ２０８から検索する。この初期リストは、ＶｏＩＰゲートウェイ１０２の製造者によりメモリ２０８にプログラムされる。
【００６０】
ステップ７０６において、ＶｏＩＰゲートウェイ１０２は、ペアリングリストにおける電話番号又はＩＰアドレスの一方を使用して、ピア・ツー・ピアネットワークに登録する。
【００６１】
ステップ７０８において、ＶｏＩＰゲートウェイ１０２は、ピア・ツー・ピアネットワークにおける装置とのネットワーク接続に携わり、テキスト、ボイス、ビデオ、又はデータ通信のためのデータパケットを交換する。
【００６２】
ここに開示した実施形態の特徴の種々の他の適応及び組み合せが本発明の範囲内で考えられる。多数の実施形態が特許請求の範囲に包含される。
【図面の簡単な説明】
【００６３】
【図１】本発明の一実施形態において装置間でポイント・ツー・ポイント通信を行なうシステムを示す図である。
【図２】本発明の一実施形態において装置間でポイント・ツー・ポイント通信を行なうシステムを示す図である。
【図３】本発明の一実施形態において装置がＩＰアドレスを交換しそれらをペアリングリストにセーブする方法を示すフローチャートである。
【図４】本発明の一実施形態において装置間でポイント・ツー・ポイント通信を行なう別のシステムを示す図である。
【図５】本発明の一実施形態において複数の仕方で装置がＩＰアドレスを交換する方法を示すフローチャートである。
【図６】本発明の一実施形態においてペアリングリストを分散記憶し共有するためにピア・ツー・ピアネットワークに装置が加入する方法を示すフローチャートである。
【図７】本発明の一実施形態において公衆交換電話ネットワークなしに装置がＩＰアドレスを交換するための方法を示すフローチャートである。
【符号の説明】
【００６４】
１００：システム
１０２、１０４：ＶｏＩＰゲートウェイ
１０３：ペアリングリスト
１０６：パブリックコンピュータネットワーク
１０８：ＰＳＴＮ
２０２、２１２：ＤＴＭＦ受信器
２０４、２１４：ＰＯＴＳ電話
２０６、２１６：プロセッサ
２０８、２１８：メモリ
【図１】
2008167443.tif 000003
【図２】
2008167443.tif 000004
【図３】
2008167443.tif 000005
【図４】
2008167443.tif 000006
【図５】
2008167443.tif 000007
【図６】
2008167443.tif 000008
【図７】
2008167443.tif 000009