JP2004297715A - アドレス解決サーバ、VoIPサーバ、アドレス解決方法、アドレス解決プログラム - Google Patents
アドレス解決サーバ、VoIPサーバ、アドレス解決方法、アドレス解決プログラム Download PDFInfo
- Publication number
- JP2004297715A JP2004297715A JP2003090818A JP2003090818A JP2004297715A JP 2004297715 A JP2004297715 A JP 2004297715A JP 2003090818 A JP2003090818 A JP 2003090818A JP 2003090818 A JP2003090818 A JP 2003090818A JP 2004297715 A JP2004297715 A JP 2004297715A
- Authority
- JP
- Japan
- Prior art keywords
- client
- client terminal
- voip
- address
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
【課題】グローバルアドレスを割り当てることができない端末であっても、VoIP電話を利用することができるためのアドレス解決サーバ、VoIPサーバ、アドレス解決方法、アドレス解決プログラムを提供する。
【解決手段】まずクライアントAからセッション確立要求を受けて、VoIPクライアントAを生成し、クライアントAの識別情報、実アドレスとを関連付けてVoIPサーバに登録する。
同様に、クライアントBについても、VoIPサーバに登録する。
クライアントAからクライアントBへの発呼要求を受けて、VoIPサーバにより、クライアントBの識別情報からクライアントBの実アドレスへのアドレス解決を行い、VoIPクライアントA,B間でコネクションを確立する。
【選択図】 図1
【解決手段】まずクライアントAからセッション確立要求を受けて、VoIPクライアントAを生成し、クライアントAの識別情報、実アドレスとを関連付けてVoIPサーバに登録する。
同様に、クライアントBについても、VoIPサーバに登録する。
クライアントAからクライアントBへの発呼要求を受けて、VoIPサーバにより、クライアントBの識別情報からクライアントBの実アドレスへのアドレス解決を行い、VoIPクライアントA,B間でコネクションを確立する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、プライベートIPアドレスを割り当てられた端末間において、IP電話サービスを実現するためのアドレス解決サーバ、VoIPサーバ、アドレス解決方法、アドレス解決プログラムに関する。
【0002】
【従来の技術】
従来、ローカルネットワークのみで通用するプライベートIPアドレスと、インターネットアクセスに利用できるグローバルIPアドレスを相互に変換する技術として、NAT(Network Address TrAnslAtion)が存在する。NATを用いることで、ローカルIPアドレスしか割り当てられていない端末であっても、透過的にインターネットにアクセスすることができる。
【0003】
【特許文献1】
特開2002−009846号公報 (図2)
【0004】
【発明が解決しようとする課題】
一方、従来のインターネットを用いたIP電話では、同一のネットワーク(グローバルネットワーク、ローカルネットワーク)内に存在する端末同士に限り、通話を行う事が可能であるため、NATを越えたプライベートアドレスが付与された端末間でのIP電話を実現する事は、NAT装置によるグローバルアドレスへのアドレス変換が施される事により不可能である。
以下、この問題について詳細に説明する。従来のIP電話システムでは、クライアントからの要求(「端末Bとの電話をする」や「端末Bとの電話を切る」等)がVoIPプロトコル(H.323、SIP等)に準じたIPパケット(図8を参照)となっている。
VoIPプロトコルに準じたIPパケットには、IPパケットのヘッダ情報部以外にデータ部にIPアドレスを格納する部分が存在し、VoIPサービスではあて先を特定する為に、このデータ部のIPアドレスを利用している。
この場合、プライベートアドレス空間内のクライアントからIP電話を行なう際に、ルータにおいてNAT変換が行われるのだが、このNAT変換はIPパケットのヘッダ部のIPアドレスのみを変換するだけで、データ部のIPアドレスは変換されない。したがって、変換されないデータ部のIPアドレスはプライベートアドレスのままであり、インターネット環境ではあて先を特定できない。
【0005】
本発明は、このような事情を考慮してなされたものであり、その目的は、グローバルアドレスを割り当てることができない端末であっても、VoIP電話を利用することができるためのアドレス解決サーバ、VoIPサーバ、アドレス解決方法、アドレス解決プログラムを提供することにある。
【0006】
【課題を解決するための手段】
この発明は上記の課題を解決すべくなされたもので、請求項1に記載の発明は、発側の第1のクライアント端末と、該発側のクライアント端末に対して着側の第2のクライアント端末と、前記第1、第2のクライアント端末の識別情報に基づいて、アドレス解決を行うVoIPサーバとネットワークを介して接続されたアドレス解決サーバであって、前記第1のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第1のVoIPクライアントを生成する第1のスレッド生成手段と、前記第1のクライアント端末の識別情報と、前記第1のクライアント端末の実アドレスとを関連付けて前記VoIPサーバに登録する第1の登録手段と、前記第2のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第2のVoIPクライアントを生成する第2のスレッド生成手段と、
前記第2のクライアント端末の識別情報と、前記第2のクライアント端末の実アドレスとを関連付けて前記VoIPサーバに登録する第2の登録手段と、前記第1のクライアント端末から前記第2のクライアント端末への発呼要求を受けて、前記VoIPサーバにより、前記第2のクライアント端末の識別情報から前記第2のクライアント端末の実アドレスへのアドレス解決を行い、前記第2のVoIPクライアントへ発呼し、前記第2のクライアント端末から前記第1のクライアント端末への前記発呼要求に対する応答を受けて、前記第1、第2のVoIPクライアント間でコネクションを確立する呼制御手段とを具備することを特徴とする。
【0007】
また、請求項2に記載の発明は、発側の第1のクライアント端末と、該発側のクライアント端末に対して着側の第2のクライアント端末とネットワークを介して接続され、前記第1、第2のクライアント端末の識別情報に基づいてアドレス解決を行うVoIPサーバであって、前記第1のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第1のVoIPクライアントを生成する第1のスレッド生成手段と、前記第1のクライアント端末の識別情報と、前記第1のクライアント端末の実アドレスとを関連付けて所定の記憶手段に登録する第1の登録手段と、前記第2のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第2のVoIPクライアントを生成する第2のスレッド生成手段と、前記第2のクライアント端末の識別情報と、前記第2のクライアント端末の実アドレスとを関連付けて前記記憶手段に登録する第2の登録手段と、前記第1のクライアント端末から前記第2のクライアント端末への発呼要求を受けて、前記第2のクライアント端末の識別情報から前記第2のクライアント端末の実アドレスへのアドレス解決を行い、前記第2のVoIPクライアントへ発呼し、前記第2のクライアント端末から前記第1のクライアント端末への前記発呼要求に対する応答を受けて、前記第1、第2のVoIPクライアント間でコネクションを確立する呼制御手段とを具備することを特徴とする。
【0008】
また、請求項3に記載の発明は、発側の第1のクライアント端末と、該発側のクライアント端末に対して着側の第2のクライアント端末と、前記第1、第2のクライアント端末の識別情報に基づいて、アドレス解決を行うVoIPサーバとネットワークを介して接続されたアドレス解決サーバにおいて、前記第1のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第1のVoIPクライアントを生成し、前記第1のクライアント端末の識別情報と、前記第1のクライアント端末の実アドレスとを関連付けて前記VoIPサーバに登録し、前記第2のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第2のVoIPクライアントを生成し、前記第2のクライアント端末の識別情報と、前記第2のクライアント端末の実アドレスとを関連付けて前記VoIPサーバに登録し、前記第1のクライアント端末から前記第2のクライアント端末への発呼要求を受けて、前記VoIPサーバにより、前記第2のクライアント端末の識別情報から前記第2のクライアント端末の実アドレスへのアドレス解決を行い、前記第2のVoIPクライアントへ発呼し、前記第2のクライアント端末から前記第1のクライアント端末への前記発呼要求に対する応答を受けて、前記第1、第2のVoIPクライアント間でコネクションを確立することを特徴とする。
【0009】
また、請求項4に記載の発明は、発側の第1のクライアント端末と、該発側のクライアント端末に対して着側の第2のクライアント端末と、前記第1、第2のクライアント端末の識別情報に基づいて、アドレス解決を行うVoIPサーバとネットワークを介して接続されたアドレス解決サーバに、前記第1のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第1のVoIPクライアントを生成する処理と、前記第1のクライアント端末の識別情報と、前記第1のクライアント端末の実アドレスとを関連付けて前記VoIPサーバに登録する処理と、前記第2のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第2のVoIPクライアントを生成する処理と、前記第2のクライアント端末の識別情報と、前記第2のクライアント端末の実アドレスとを関連付けて前記VoIPサーバに登録する処理と、前記第1のクライアント端末から前記第2のクライアント端末への発呼要求を受けて、前記VoIPサーバにより、前記第2のクライアント端末の識別情報から前記第2のクライアント端末の実アドレスへのアドレス解決を行い、前記第2のVoIPクライアントへ発呼し、前記第2のクライアント端末から前記第1のクライアント端末への前記発呼要求に対する応答を受けて、前記第1、第2のVoIPクライアント間でコネクションを確立する処理とを実行させるためのアドレス解決プログラムである。
【0010】
【発明の実施の形態】
まず本発明の基本的な考え方について説明する。本発明は、図1に示すように、クライアントA、BからVoIPクライアントA、Bを独立させ、VoIPクライアントA、Bをアドレス解決サーバ1側で持たせる事により、従来から問題となっていたNATを越えた際のIPアドレス変換に対応した。
すなわち、クライアントからの要求で使うIPパケットを、VoIPプロトコルに準じたIPパケットではなく、IPパケットのデータ部にIPアドレスを格納する部分が無い独自のプロトコルで構成したIPパケット(図2を参照)を作成し、本来使用するVoIPプロトコルをサーバ側に集約した。
この方式により、従来問題となっていたデータ部のIPアドレスがプライベートアドレスのままになってしまうことであて先を特定できないという問題を回避している。
【0011】
以下、図面を参照して、本発明のアドレス解決サーバ1の一実施形態について説明する。図1は、本実施形態のアドレス解決サーバ1を適用したIP電話システムのシステム構成を示す構成図である。
本実施形態のIP電話システムは、発側のクライアント端末であるクライアントAと、クライアントAをインターネットに接続するルータAと、着側のクライアント端末であるクライアントBと、クライアントBをインターネットに接続するルータBと、VoIPサーバ2と、アドレス解決サーバ1とをインターネットを介して接続して構成される。なお、後述するように、アドレス解決サーバ1におけるアドレス解決機能を上記VoIPサーバ2に組み込むことも考えられる。
以下、本実施形態には、VoIPサーバ2と、アドレス解決サーバ1とを別装置とした場合の例について説明する。
クライアントA,Bは、アドレス解決サーバ1に対してTCPセッション要求を送り、サーバ間とVoIPクライアントに対する指令(電話を掛ける/切る等)に関するメッセージ送受信を行う。すなわち、クライアントA、Bは、制御部10、入力部11、出力部12、送信部13、受信部14とから構成される。
制御部10は、入力部11、出力部12、送信部13、受信部14におけるデータ入出力制御を行う。
入力部11は、クライアントA、Bにおけるユーザが、当該IP電話システムが提供するIP電話サービスの利用にあたり、所定事項を入力する入力インターフェイスである。
出力部12は、当該IP電話システムが提供するIP電話サービスのプロセスの進行状況等を出力する出力インターフェイスであって、例えば、サービス情報閲覧用の表示部等である。
送信部13は、TCPセッション確立要求、登録用メッセージ、発呼要求、発呼応答、切断要求、切断応答等をアドレス解決サーバ1へ送信するネットワークインターフェイスである。
セッション確立要求とは、具体的には、アドレス解決サーバ1のグローバルIPアドレス及びTCPポート番号を含む通信接続制御用パケットである。
また、登録用メッセージとは、具体的には、クライアントA,Bの電話番号、メールアドレス等の識別情報と、当該セッション確立要求によって確立されたセッションのID、または、実アドレス(クライアントA,BのプライベートIPアドレス、ポート番号)を含む通信接続制御用パケットである。
受信部14は、発呼要求、切断要求等をアドレス解決サーバ1から受信するネットワークインターフェイスである。
【0012】
ルータA,Bは、ルータは、サーバ/クライアント間に位置し、通常プライベートIPアドレスが割り当てられたクライアントからインターネットへ接続する際に必要となるグローバルアドレスへのアドレス変換(NAT変換)、及びフィルタリングを行う。
VoIPサーバ2は、クライアントA、Bの識別情報に基づいて、電話サービスを提供する上で必要となる、電話番号からIPアドレスに変換するアドレス解決処理やVoIPクライアントのIPアドレスを始めとするアドレス登録処理を行い、更に音声路の確立処理も行う。
【0013】
アドレス解決サーバ1は、クライアントからのTCPセッション要求を受けた際に、その要求に対して一意に対応するVoIPクライアント(スレッド等)を立ち上げ、クライアントとVoIPクライアント間との接続を保持する。また、アドレス解決サーバ1は、他のVoIPクライアントとのメッセージ送受信も行う。
すなわち、アドレス解決サーバ1は、制御部20、入力部21、出力部22、スレッド生成処理部23、クライアント登録処理部24、呼制御処理部25、送信部26、受信部27から構成される。
【0014】
制御部20は、入力部21、出力部22、スレッド生成処理部23、クライアント登録処理部24、呼制御処理部25、送信部26、受信部27におけるデータ入出力制御を行う。
入力部21は、アドレス解決サーバ1の管理者が入力を行う入力インターフェイスである。
出力部22は、当該IP電話システムが提供するIP電話サービスのプロセスの進行状況等を出力する出力インターフェイスであって、例えば、サービス処理状況閲覧用の表示部等である。
【0015】
スレッド生成処理部23は、クライアント端末A、Bからセッション確立要求を受けて、セッションと関連付けられたVoIPクライアントA,Bそれぞれを生成する。
クライアント登録処理部24は、クライアントA,Bの識別情報と、クライアントA,Bの実アドレス(プライベートIPアドレス、ポート番号)とを関連付けてVoIPサーバ2に登録する。
呼制御処理部25は、クライアントAからクライアントBへの発呼要求を受けて、VoIPサーバ2により、クライアントBの識別情報からクライアントBの実アドレスへのアドレス解決を行い、VoIPクライアントBへ発呼し、クライアントBからクライアントAへの発呼要求に対する応答を受けて、VoIPクライアントA,B間でコネクションを確立する。
送信部26は、クライアント登録用メッセージ、アドレス解決要求等をVoIPサーバ2へ、発呼要求、切断要求等をクライアントBへ送信するネットワークインターフェイスである。
受信部27は、セッション確立要求、発呼要求、切断要求等をクライアントA,Bから受信するネットワークインターフェイスである。
【0016】
次に、図面を参照して、本実施形態のアドレス解決サーバ1の動作について説明する。図3は、本実施形態のアドレス解決サーバ1を適用したIP電話システムにおけるアドレス解決、呼制御処理の過程を示すフローチャートである。今、プライベートIPアドレスを割り当てられたクライアントAからクライアントBへIP電話を用いて電話をかける場合、クライアントA、Bはそれぞれアドレス解決サーバ1に対してTCPセッションを確立する。
【0017】
(1)TCPセッション確立
図4は、本実施形態のアドレス解決サーバ1とクライアントAの間におけるセッション確立処理の過程を示すフローチャートである。
クライアントAのユーザは、クライアントAの表示部に表示されたクライアントソフトの接続ボタンをクリックし(図4のステップS1)、アドレス解決サーバ1のグローバルIPアドレス及びポート番号を入力部において指定する。クライアントAは、接続ボタンのクリックを受けて、指定されたアドレス解決サーバ1のグローバルIPアドレス及びポート番号に基づいて、TCPセッション確立要求を送信する(ステップS2)。
アドレス解決サーバ1は、このTCPセッション要求を受信すると(ステップS3)、クライアントAに対応したVoIPクライアントA(プロセスまたはスレッド)を起動し(ステップS4)、クライアントAとの間でTCPコネクションを確立する(ステップS5)。
また、同様にして、クライアントBのユーザは、クライアントBの表示部に表示されたクライアントソフトの接続ボタンをクリックし、アドレス解決サーバ1のグローバルIPアドレス及びポート番号を入力部において指定する。クライアントBは、接続ボタンをクリックを受けて、指定されたアドレス解決サーバ1のグローバルIPアドレス及びポート番号に基づいて、TCPセッション確立要求を送信する。
アドレス解決サーバ1は、このTCPセッション要求を受信すると、クライアントBに対応したVoIPクライアントB(プロセスまたはスレッド)を起動し、クライアントBとの間でTCPコネクションを確立する。
【0018】
(2)アドレス登録処理
図5は、本実施形態のアドレス解決サーバ1とクライアントAの間におけるアドレス登録処理の過程を示すフローチャートである。
クライアントAのユーザは、クライアントAの表示部に表示されたクライアントソフトから登録ボタンをクリックし(図5のステップS10)、自分の識別情報(電話番号、メールアドレス)、アドレス情報(=実アドレス:プライベートIPアドレス、ポート番号等)を入力部において入力する。
クライアントAは、クリックをトリガとして、自分の識別情報(電話番号、メールアドレス)、アドレス情報(プライベートIPアドレス、ポート番号等)を載せた登録用メッセージをアドレス解決サーバ1へ送信する(ステップS11)。
【0019】
アドレス解決サーバ1において、登録用メッセージを受信すると(ステップS12)、アドレス解決サーバ1内で立ち上がっているVoIPクライアントAは、クライアントAからの登録要求にするVoIP登録用メッセージを構築する。ここで、VoIP登録用メッセージとは、VoIPクライアントの実アドレス(プライベートIPアドレス、ポート番号等)と、クライアントAの識別情報(電話番号、メールアドレス)を含む通信制御用パケットである。
【0020】
次に、VoIPクライアントAは、VoIPサーバ2へ構築したVoIP登録用メッセージを送信する(ステップS13)。
VoIPサーバ2は、VoIPクライアントAよりVoIP登録用メッセージを受信すると、クライアントAから登録要求された実アドレスをVoIPサーバ2内のデータベース(以下、DBとする)へ格納する(ステップS14)。
そして、VoIPサーバ2は、実アドレス格納後、VoIP確認用メッセージをVoIPクライアントAへ送信する(ステップS15)。
アドレス解決サーバ1において、VoIPクライアントAがVoIP確認用メッセージを受信すると、この確認用メッセージをクライアントAへ送信する(ステップS16)。
【0021】
また、同様にして、クライアントBのユーザは、自分のアドレス情報(IPアドレス、ポート番号、電話番号、メールアドレス等)を入力し、クライアントBは、自分のアドレス情報(IPアドレス、ポート番号、電話番号、メールアドレス等)を載せた登録用メッセージをアドレス解決サーバ1へ送信する。
アドレス解決サーバ1において、登録用メッセージを受信すると、アドレス解決サーバ1内で立ち上がっているVoIPクライアントBは、クライアントBからの登録要求にするVoIP登録用メッセージを構築し、VoIPサーバ2へ送信する。
VoIPサーバ2は、VoIPクライアントBよりVoIP登録用メッセージを受信すると、クライアントBから登録要求された実アドレスをVoIPサーバ2内のDBへ格納する。
そして、VoIPサーバ2は、実アドレス格納後、VoIP確認用メッセージをVoIPクライアントBへ送信する。
アドレス解決サーバ1において、VoIPクライアントBがVoIP確認用メッセージを受信すると、この確認用メッセージをクライアントBへ送信する。
【0022】
(3)発呼処理
図6は、本実施形態のアドレス解決サーバ1とクライアントA、Bの間における発呼処理の過程を示すフローチャートである。
クライアントAのユーザは、クライアントAの表示部に表示されたクライアントソフトの発呼ボタンをクリックし(図6のステップS20)、相手先(クライアントB)のグローバルIPアドレス、または識別情報(電話番号、メールアドレス等)を入力部において入力する。
クライアントAは、クリックをトリガとして、相手先のグローバルIPアドレス、または識別情報を載せた発呼用メッセージをアドレス解決サーバ1へ送信する(ステップS21)。
アドレス解決サーバ1において、発呼用メッセージを受信すると(ステップS22)、VoIPクライアントAは、クライアントAから送信された発呼用メッセージの相手先の実アドレスについて、アドレス解決を行うため、VoIPアドレス解決用メッセージを構築する。
VoIPクライアントAは、構築したVoIPアドレス解決用メッセージをVoIPサーバ2へ送信する(ステップS23)。
ここで、VoIPアドレス解決用メッセージとは、相手先のグローバルIPアドレス、または識別情報を含むパケットである。
VoIPサーバ2は、VoIPクライアントAから送信されたVoIPアドレス解決用メッセージが示すグローバルIPアドレス、または識別情報基づいて、DB内を検索し、相手先の実アドレス(IPアドレス及びポート)を取得する(ステップS24)。
そして、VoIPサーバ2は、アドレス解決サーバ1内のVoIPクライアントAへDBから取得した相手先の実アドレスを送信する(ステップS25)。
【0023】
アドレス解決サーバ1において、VoIPクライアントAは、VoIPサーバ2から相手先の実アドレスを受信すると、これに基づいてVoIPクライアントBを特定し、VoIP発呼要求用メッセージを送信する(ステップS26)。
VoIPクライアントBは、VoIPクライアントAからの送信メッセージを受信する(ステップS27)。そして、VoIPクライアントBは、クライアントAから発呼要求がある旨をクライアントBへ通知する(ステップS28)。
クライアントBのユーザは、VoIPクライアントBより発呼要求がある旨を受信すると、クライアントAからの発呼要求に対して応答する(ステップS29)。クライアントBは、ユーザの応答を受けて、アドレス解決サーバ1へクライアントAからの要求に対する応答メッセージを送信する(ステップS30)。
【0024】
VoIPクライアントBは、クライアントBから応答メッセージを受信すると、VoIPクライアントAへVoIP発呼応答用メッセージを送信する(ステップS31)。
VoIPクライアントAは、VoIPクライアントBからのVoIP発呼用メッセージを受信する(ステップS32)。そして、VoIPクライアントAは、受信したVoIP発呼用メッセージに基づいて、クライアントAに対して、クライアントBが発呼要求に対して応答した旨を通知する(ステップS33)。
そして、アドレス解決サーバ1において、VoIPクライアントA、Bはコネクションを確立し、VoIP接続を完了する(ステップS34)。
【0025】
そして、VoIPクライアントAは、クライアントAへ特定のポートを指定して音声路を確立する(ステップS35)。また、VoIPクライアントBは、クライアントBへ特定のポートを指定して音声路を確立する(ステップS35)。そして、アドレス解決サーバ1において、同時にVoIPクライアントA、B間の音声路を確立する(ステップS35)。
以上の呼接続制御処理により、クライアントA、B間のVoIPコネクションが確立される。
【0026】
(4)切断処理
図7は、本実施形態のアドレス解決サーバ1とクライアントA、Bの間における呼切断処理の過程を示すフローチャートである。
クライアントAのユーザは、クライアントAの表示部に表示されたクライアントソフトの切断ボタンをクリックする(図7のステップS40)。クライアントAは、クリックをトリガとして、相手先の実アドレスを載せた切断用メッセージをアドレス解決サーバ1へ送信する(ステップS41)。
アドレス解決サーバ1において、切断用メッセージを受信すると、VoIPクライアントAは、VoIP切断要求用メッセージを構築する。
ここで、VoIP切断要求用メッセージは、呼切断相手先の実アドレスを含むパケットである。
VoIPクライアントAは、構築したVoIP切断要求用メッセージをVoIPクライアントBへ送信する(ステップS42)。
VoIPクライアントBは、VoIPクライアントAからの送信メッセージを受信する(ステップS43)。そして、VoIPクライアントBは、クライアントAから切断要求がある旨をクライアントBへ通知する(ステップS44)。
クライアントBのユーザは、VoIPクライアントBより切断要求がある旨を受信すると、クライアントAからの切断要求に対して応答する。クライアントBは、ユーザの応答を受けて、アドレス解決サーバ1へクライアントAからの切断要求に対する応答メッセージを送信する。
【0027】
VoIPクライアントBは、クライアントBから応答メッセージを受信すると、、VoIPクライアントAへVoIP切断応答用メッセージを送信する。
VoIPクライアントAは、VoIPクライアントBからのVoIP切断用メッセージを受信する。そして、VoIPクライアントAは、受信したVoIP切断用メッセージに基づいて、クライアントAに対して、クライアントBが切断要求に対して応答した旨を通知する。
そして、アドレス解決サーバ1において、VoIPクライアントA、Bはコネクションを切断し、VoIP接続を終了する(ステップS45)。VoIPクライアントAは、クライアントAに対し、切断完了の旨を通知する(ステップS46)。
そして、VoIPクライアントAは、クライアントAとの間の音声路を切断し(ステップS47)、VoIPクライアントBは、クライアントBとの間の音声路を切断し(ステップS47)、アドレス解決サーバ1において、VoIPクライアントA、B間の音声路を切断する(ステップS47)。
【0028】
したがって、本実施形態にアドレス解決サーバ1によれば、ルータにおいて、NAT変換が行われてもIP電話を行うことが出来る効果が得られる。すなわち、プライベートアドレス空間内のクライアントから、インターネット越しの別クライアントへのIP電話が可能である。したがって、インターネットに接続している一般家庭のからのIP電話サービスの利用が可能となる。
現在のNAT越え技術は、主にuPnPを用いたものになっているおり、この技術を利用する場合、利用者はNAT装置の買い替えを余儀なくされる。しかし、本システムを適用する事により既存のNAT装置を使用することが可能となり、特に一般家庭の利用者に対してはコストや操作性の面で抵抗感がなく、スムーズに導入しやすい。
つまり、従来から存在するものを含めた全てのルータを使用することが可能であり、利用者が従来から使用しているルータを買い換えずにIP電話サービスを利用することができる効果が得られる。
また、本実施形態にアドレス解決サーバ1によれば、サーバ側にVoIPクライアント機能が集約されているため、機能拡充、メンテナンスが容易に行えるという効果が得られる。
【0029】
なお、上述したように、本実施形態においては、VoIPサーバ2と、アドレス解決サーバ1とを別装置とした場合の例について説明したが、アドレス解決サーバ1におけるアドレス解決機能を上記VoIPサーバ2に組み込むことも考えられる。
この場合、VoIPサーバ2は、発側のクライアントAと、着側のクライアントBとネットワークを介して接続され、クライアントA,Bの識別情報に基づいてアドレス解決を行う。
また、VoIPサーバ2は、クライアントAからセッション確立要求を受けて、セッションと関連付けられたVoIPクライアントAを生成し、クライアントAの識別情報と、クライアントAの実アドレスとを関連付けて所定の記憶部に登録する。
また、VoIPサーバ2は、クライアントBからセッション確立要求を受けて、セッションと関連付けられた第2のVoIPクライアントを生成し、クライアントBの識別情報と、クライアントBの実アドレスとを関連付けて記憶部に登録する。
そして、VoIPサーバ2は、クライアントAからクライアントBへの発呼要求を受けて、クライアントBの識別情報からクライアントBの実アドレスへのアドレス解決を行い、VoIPクライアントBへ発呼し、クライアントBからクライアントAへの発呼要求に対する応答を受けて、VoIPクライアント間でコネクションを確立する。
【0030】
したがって、この場合においても、ルータにおいて、NAT変換が行われてもIP電話を行うことが出来る効果が得られる。すなわち、プライベートアドレス空間内のクライアントから、インターネット越しの別クライアントへのIP電話が可能である。したがって、インターネットに接続している一般家庭のからのIP電話サービスの利用が可能となる。
【0031】
上述のクライアントA、B、アドレス解決サーバ1、VoIPサーバ2は、内部に、コンピュータシステムを有している。
そして、上述したアドレス解決処理、呼制御処理に関する一連の処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。
すなわち、クライアントA、B、アドレス解決サーバ1、VoIPサーバ2における、各処理手段、処理部は、CPU等の中央演算処理装置がROMやRAM等の主記憶装置に上記プログラムを読み出して、情報の加工・演算処理を実行することにより、実現されるものである。
ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
【0032】
【発明の効果】
以上説明したように、本発明は、発側の第1のクライアント端末と、発側のクライアント端末に対して着側の第2のクライアント端末と、第1、第2のクライアント端末の識別情報に基づいて、アドレス解決を行うVoIPサーバとネットワークを介して接続されたアドレス解決サーバにおいて、第1のクライアント端末からセッション確立要求を受けて、セッションと関連付けられた第1のVoIPクライアントを生成し、第1のクライアント端末の識別情報と、第1のクライアント端末の実アドレスとを関連付けてVoIPサーバに登録し、第2のクライアント端末からセッション確立要求を受けて、セッションと関連付けられた第2のVoIPクライアントを生成し、第2のクライアント端末の識別情報と、第2のクライアント端末の実アドレスとを関連付けてVoIPサーバに登録し、第1のクライアント端末から第2のクライアント端末への発呼要求を受けて、VoIPサーバにより、第2のクライアント端末の識別情報から第2のクライアント端末の実アドレスへのアドレス解決を行い、第2のVoIPクライアントへ発呼し、第2のクライアント端末から第1のクライアント端末への発呼要求に対する応答を受けて、第1、第2のVoIPクライアント間でコネクションを確立するので、グローバルアドレスを割り当てることができない端末であっても、VoIP電話を利用することができる効果を得ることができる。
【図面の簡単な説明】
【図1】本実施形態のアドレス解決サーバを適用したIP電話システムのシステム構成を示す構成図である。
【図2】本実施形態のアドレス解決サーバが使用するVoIPプロトコルで構成したIPパケットの構成を示す構成図である。
【図3】本実施形態のアドレス解決サーバを適用したIP電話システムにおけるアドレス解決、呼制御処理の過程を示すフローチャートである。
【図4】本実施形態のアドレス解決サーバとクライアントAの間におけるセッション確立処理の過程を示すフローチャートである。
【図5】本実施形態のアドレス解決サーバとクライアントAの間におけるアドレス登録処理の過程を示すフローチャートである。
【図6】本実施形態のアドレス解決サーバとクライアントA、Bの間における発呼処理の過程を示すフローチャートである。
【図7】本実施形態のアドレス解決サーバとクライアントA、Bの間における呼切断処理の過程を示すフローチャートである。
【図8】従来のIP電話システムにおけるVoIPプロトコルで使用されるパケットの構成を示す構成図である。
【符号の説明】
1…アドレス解決サーバ
2…VoIPサーバ
10、20…制御部
11、21…入力部
12、22…出力部
13、26…送信部
14、27…受信部
23…スレッド生成処理部
24…クライアント登録処理部
25…呼制御処理部
【発明の属する技術分野】
本発明は、プライベートIPアドレスを割り当てられた端末間において、IP電話サービスを実現するためのアドレス解決サーバ、VoIPサーバ、アドレス解決方法、アドレス解決プログラムに関する。
【0002】
【従来の技術】
従来、ローカルネットワークのみで通用するプライベートIPアドレスと、インターネットアクセスに利用できるグローバルIPアドレスを相互に変換する技術として、NAT(Network Address TrAnslAtion)が存在する。NATを用いることで、ローカルIPアドレスしか割り当てられていない端末であっても、透過的にインターネットにアクセスすることができる。
【0003】
【特許文献1】
特開2002−009846号公報 (図2)
【0004】
【発明が解決しようとする課題】
一方、従来のインターネットを用いたIP電話では、同一のネットワーク(グローバルネットワーク、ローカルネットワーク)内に存在する端末同士に限り、通話を行う事が可能であるため、NATを越えたプライベートアドレスが付与された端末間でのIP電話を実現する事は、NAT装置によるグローバルアドレスへのアドレス変換が施される事により不可能である。
以下、この問題について詳細に説明する。従来のIP電話システムでは、クライアントからの要求(「端末Bとの電話をする」や「端末Bとの電話を切る」等)がVoIPプロトコル(H.323、SIP等)に準じたIPパケット(図8を参照)となっている。
VoIPプロトコルに準じたIPパケットには、IPパケットのヘッダ情報部以外にデータ部にIPアドレスを格納する部分が存在し、VoIPサービスではあて先を特定する為に、このデータ部のIPアドレスを利用している。
この場合、プライベートアドレス空間内のクライアントからIP電話を行なう際に、ルータにおいてNAT変換が行われるのだが、このNAT変換はIPパケットのヘッダ部のIPアドレスのみを変換するだけで、データ部のIPアドレスは変換されない。したがって、変換されないデータ部のIPアドレスはプライベートアドレスのままであり、インターネット環境ではあて先を特定できない。
【0005】
本発明は、このような事情を考慮してなされたものであり、その目的は、グローバルアドレスを割り当てることができない端末であっても、VoIP電話を利用することができるためのアドレス解決サーバ、VoIPサーバ、アドレス解決方法、アドレス解決プログラムを提供することにある。
【0006】
【課題を解決するための手段】
この発明は上記の課題を解決すべくなされたもので、請求項1に記載の発明は、発側の第1のクライアント端末と、該発側のクライアント端末に対して着側の第2のクライアント端末と、前記第1、第2のクライアント端末の識別情報に基づいて、アドレス解決を行うVoIPサーバとネットワークを介して接続されたアドレス解決サーバであって、前記第1のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第1のVoIPクライアントを生成する第1のスレッド生成手段と、前記第1のクライアント端末の識別情報と、前記第1のクライアント端末の実アドレスとを関連付けて前記VoIPサーバに登録する第1の登録手段と、前記第2のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第2のVoIPクライアントを生成する第2のスレッド生成手段と、
前記第2のクライアント端末の識別情報と、前記第2のクライアント端末の実アドレスとを関連付けて前記VoIPサーバに登録する第2の登録手段と、前記第1のクライアント端末から前記第2のクライアント端末への発呼要求を受けて、前記VoIPサーバにより、前記第2のクライアント端末の識別情報から前記第2のクライアント端末の実アドレスへのアドレス解決を行い、前記第2のVoIPクライアントへ発呼し、前記第2のクライアント端末から前記第1のクライアント端末への前記発呼要求に対する応答を受けて、前記第1、第2のVoIPクライアント間でコネクションを確立する呼制御手段とを具備することを特徴とする。
【0007】
また、請求項2に記載の発明は、発側の第1のクライアント端末と、該発側のクライアント端末に対して着側の第2のクライアント端末とネットワークを介して接続され、前記第1、第2のクライアント端末の識別情報に基づいてアドレス解決を行うVoIPサーバであって、前記第1のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第1のVoIPクライアントを生成する第1のスレッド生成手段と、前記第1のクライアント端末の識別情報と、前記第1のクライアント端末の実アドレスとを関連付けて所定の記憶手段に登録する第1の登録手段と、前記第2のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第2のVoIPクライアントを生成する第2のスレッド生成手段と、前記第2のクライアント端末の識別情報と、前記第2のクライアント端末の実アドレスとを関連付けて前記記憶手段に登録する第2の登録手段と、前記第1のクライアント端末から前記第2のクライアント端末への発呼要求を受けて、前記第2のクライアント端末の識別情報から前記第2のクライアント端末の実アドレスへのアドレス解決を行い、前記第2のVoIPクライアントへ発呼し、前記第2のクライアント端末から前記第1のクライアント端末への前記発呼要求に対する応答を受けて、前記第1、第2のVoIPクライアント間でコネクションを確立する呼制御手段とを具備することを特徴とする。
【0008】
また、請求項3に記載の発明は、発側の第1のクライアント端末と、該発側のクライアント端末に対して着側の第2のクライアント端末と、前記第1、第2のクライアント端末の識別情報に基づいて、アドレス解決を行うVoIPサーバとネットワークを介して接続されたアドレス解決サーバにおいて、前記第1のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第1のVoIPクライアントを生成し、前記第1のクライアント端末の識別情報と、前記第1のクライアント端末の実アドレスとを関連付けて前記VoIPサーバに登録し、前記第2のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第2のVoIPクライアントを生成し、前記第2のクライアント端末の識別情報と、前記第2のクライアント端末の実アドレスとを関連付けて前記VoIPサーバに登録し、前記第1のクライアント端末から前記第2のクライアント端末への発呼要求を受けて、前記VoIPサーバにより、前記第2のクライアント端末の識別情報から前記第2のクライアント端末の実アドレスへのアドレス解決を行い、前記第2のVoIPクライアントへ発呼し、前記第2のクライアント端末から前記第1のクライアント端末への前記発呼要求に対する応答を受けて、前記第1、第2のVoIPクライアント間でコネクションを確立することを特徴とする。
【0009】
また、請求項4に記載の発明は、発側の第1のクライアント端末と、該発側のクライアント端末に対して着側の第2のクライアント端末と、前記第1、第2のクライアント端末の識別情報に基づいて、アドレス解決を行うVoIPサーバとネットワークを介して接続されたアドレス解決サーバに、前記第1のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第1のVoIPクライアントを生成する処理と、前記第1のクライアント端末の識別情報と、前記第1のクライアント端末の実アドレスとを関連付けて前記VoIPサーバに登録する処理と、前記第2のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第2のVoIPクライアントを生成する処理と、前記第2のクライアント端末の識別情報と、前記第2のクライアント端末の実アドレスとを関連付けて前記VoIPサーバに登録する処理と、前記第1のクライアント端末から前記第2のクライアント端末への発呼要求を受けて、前記VoIPサーバにより、前記第2のクライアント端末の識別情報から前記第2のクライアント端末の実アドレスへのアドレス解決を行い、前記第2のVoIPクライアントへ発呼し、前記第2のクライアント端末から前記第1のクライアント端末への前記発呼要求に対する応答を受けて、前記第1、第2のVoIPクライアント間でコネクションを確立する処理とを実行させるためのアドレス解決プログラムである。
【0010】
【発明の実施の形態】
まず本発明の基本的な考え方について説明する。本発明は、図1に示すように、クライアントA、BからVoIPクライアントA、Bを独立させ、VoIPクライアントA、Bをアドレス解決サーバ1側で持たせる事により、従来から問題となっていたNATを越えた際のIPアドレス変換に対応した。
すなわち、クライアントからの要求で使うIPパケットを、VoIPプロトコルに準じたIPパケットではなく、IPパケットのデータ部にIPアドレスを格納する部分が無い独自のプロトコルで構成したIPパケット(図2を参照)を作成し、本来使用するVoIPプロトコルをサーバ側に集約した。
この方式により、従来問題となっていたデータ部のIPアドレスがプライベートアドレスのままになってしまうことであて先を特定できないという問題を回避している。
【0011】
以下、図面を参照して、本発明のアドレス解決サーバ1の一実施形態について説明する。図1は、本実施形態のアドレス解決サーバ1を適用したIP電話システムのシステム構成を示す構成図である。
本実施形態のIP電話システムは、発側のクライアント端末であるクライアントAと、クライアントAをインターネットに接続するルータAと、着側のクライアント端末であるクライアントBと、クライアントBをインターネットに接続するルータBと、VoIPサーバ2と、アドレス解決サーバ1とをインターネットを介して接続して構成される。なお、後述するように、アドレス解決サーバ1におけるアドレス解決機能を上記VoIPサーバ2に組み込むことも考えられる。
以下、本実施形態には、VoIPサーバ2と、アドレス解決サーバ1とを別装置とした場合の例について説明する。
クライアントA,Bは、アドレス解決サーバ1に対してTCPセッション要求を送り、サーバ間とVoIPクライアントに対する指令(電話を掛ける/切る等)に関するメッセージ送受信を行う。すなわち、クライアントA、Bは、制御部10、入力部11、出力部12、送信部13、受信部14とから構成される。
制御部10は、入力部11、出力部12、送信部13、受信部14におけるデータ入出力制御を行う。
入力部11は、クライアントA、Bにおけるユーザが、当該IP電話システムが提供するIP電話サービスの利用にあたり、所定事項を入力する入力インターフェイスである。
出力部12は、当該IP電話システムが提供するIP電話サービスのプロセスの進行状況等を出力する出力インターフェイスであって、例えば、サービス情報閲覧用の表示部等である。
送信部13は、TCPセッション確立要求、登録用メッセージ、発呼要求、発呼応答、切断要求、切断応答等をアドレス解決サーバ1へ送信するネットワークインターフェイスである。
セッション確立要求とは、具体的には、アドレス解決サーバ1のグローバルIPアドレス及びTCPポート番号を含む通信接続制御用パケットである。
また、登録用メッセージとは、具体的には、クライアントA,Bの電話番号、メールアドレス等の識別情報と、当該セッション確立要求によって確立されたセッションのID、または、実アドレス(クライアントA,BのプライベートIPアドレス、ポート番号)を含む通信接続制御用パケットである。
受信部14は、発呼要求、切断要求等をアドレス解決サーバ1から受信するネットワークインターフェイスである。
【0012】
ルータA,Bは、ルータは、サーバ/クライアント間に位置し、通常プライベートIPアドレスが割り当てられたクライアントからインターネットへ接続する際に必要となるグローバルアドレスへのアドレス変換(NAT変換)、及びフィルタリングを行う。
VoIPサーバ2は、クライアントA、Bの識別情報に基づいて、電話サービスを提供する上で必要となる、電話番号からIPアドレスに変換するアドレス解決処理やVoIPクライアントのIPアドレスを始めとするアドレス登録処理を行い、更に音声路の確立処理も行う。
【0013】
アドレス解決サーバ1は、クライアントからのTCPセッション要求を受けた際に、その要求に対して一意に対応するVoIPクライアント(スレッド等)を立ち上げ、クライアントとVoIPクライアント間との接続を保持する。また、アドレス解決サーバ1は、他のVoIPクライアントとのメッセージ送受信も行う。
すなわち、アドレス解決サーバ1は、制御部20、入力部21、出力部22、スレッド生成処理部23、クライアント登録処理部24、呼制御処理部25、送信部26、受信部27から構成される。
【0014】
制御部20は、入力部21、出力部22、スレッド生成処理部23、クライアント登録処理部24、呼制御処理部25、送信部26、受信部27におけるデータ入出力制御を行う。
入力部21は、アドレス解決サーバ1の管理者が入力を行う入力インターフェイスである。
出力部22は、当該IP電話システムが提供するIP電話サービスのプロセスの進行状況等を出力する出力インターフェイスであって、例えば、サービス処理状況閲覧用の表示部等である。
【0015】
スレッド生成処理部23は、クライアント端末A、Bからセッション確立要求を受けて、セッションと関連付けられたVoIPクライアントA,Bそれぞれを生成する。
クライアント登録処理部24は、クライアントA,Bの識別情報と、クライアントA,Bの実アドレス(プライベートIPアドレス、ポート番号)とを関連付けてVoIPサーバ2に登録する。
呼制御処理部25は、クライアントAからクライアントBへの発呼要求を受けて、VoIPサーバ2により、クライアントBの識別情報からクライアントBの実アドレスへのアドレス解決を行い、VoIPクライアントBへ発呼し、クライアントBからクライアントAへの発呼要求に対する応答を受けて、VoIPクライアントA,B間でコネクションを確立する。
送信部26は、クライアント登録用メッセージ、アドレス解決要求等をVoIPサーバ2へ、発呼要求、切断要求等をクライアントBへ送信するネットワークインターフェイスである。
受信部27は、セッション確立要求、発呼要求、切断要求等をクライアントA,Bから受信するネットワークインターフェイスである。
【0016】
次に、図面を参照して、本実施形態のアドレス解決サーバ1の動作について説明する。図3は、本実施形態のアドレス解決サーバ1を適用したIP電話システムにおけるアドレス解決、呼制御処理の過程を示すフローチャートである。今、プライベートIPアドレスを割り当てられたクライアントAからクライアントBへIP電話を用いて電話をかける場合、クライアントA、Bはそれぞれアドレス解決サーバ1に対してTCPセッションを確立する。
【0017】
(1)TCPセッション確立
図4は、本実施形態のアドレス解決サーバ1とクライアントAの間におけるセッション確立処理の過程を示すフローチャートである。
クライアントAのユーザは、クライアントAの表示部に表示されたクライアントソフトの接続ボタンをクリックし(図4のステップS1)、アドレス解決サーバ1のグローバルIPアドレス及びポート番号を入力部において指定する。クライアントAは、接続ボタンのクリックを受けて、指定されたアドレス解決サーバ1のグローバルIPアドレス及びポート番号に基づいて、TCPセッション確立要求を送信する(ステップS2)。
アドレス解決サーバ1は、このTCPセッション要求を受信すると(ステップS3)、クライアントAに対応したVoIPクライアントA(プロセスまたはスレッド)を起動し(ステップS4)、クライアントAとの間でTCPコネクションを確立する(ステップS5)。
また、同様にして、クライアントBのユーザは、クライアントBの表示部に表示されたクライアントソフトの接続ボタンをクリックし、アドレス解決サーバ1のグローバルIPアドレス及びポート番号を入力部において指定する。クライアントBは、接続ボタンをクリックを受けて、指定されたアドレス解決サーバ1のグローバルIPアドレス及びポート番号に基づいて、TCPセッション確立要求を送信する。
アドレス解決サーバ1は、このTCPセッション要求を受信すると、クライアントBに対応したVoIPクライアントB(プロセスまたはスレッド)を起動し、クライアントBとの間でTCPコネクションを確立する。
【0018】
(2)アドレス登録処理
図5は、本実施形態のアドレス解決サーバ1とクライアントAの間におけるアドレス登録処理の過程を示すフローチャートである。
クライアントAのユーザは、クライアントAの表示部に表示されたクライアントソフトから登録ボタンをクリックし(図5のステップS10)、自分の識別情報(電話番号、メールアドレス)、アドレス情報(=実アドレス:プライベートIPアドレス、ポート番号等)を入力部において入力する。
クライアントAは、クリックをトリガとして、自分の識別情報(電話番号、メールアドレス)、アドレス情報(プライベートIPアドレス、ポート番号等)を載せた登録用メッセージをアドレス解決サーバ1へ送信する(ステップS11)。
【0019】
アドレス解決サーバ1において、登録用メッセージを受信すると(ステップS12)、アドレス解決サーバ1内で立ち上がっているVoIPクライアントAは、クライアントAからの登録要求にするVoIP登録用メッセージを構築する。ここで、VoIP登録用メッセージとは、VoIPクライアントの実アドレス(プライベートIPアドレス、ポート番号等)と、クライアントAの識別情報(電話番号、メールアドレス)を含む通信制御用パケットである。
【0020】
次に、VoIPクライアントAは、VoIPサーバ2へ構築したVoIP登録用メッセージを送信する(ステップS13)。
VoIPサーバ2は、VoIPクライアントAよりVoIP登録用メッセージを受信すると、クライアントAから登録要求された実アドレスをVoIPサーバ2内のデータベース(以下、DBとする)へ格納する(ステップS14)。
そして、VoIPサーバ2は、実アドレス格納後、VoIP確認用メッセージをVoIPクライアントAへ送信する(ステップS15)。
アドレス解決サーバ1において、VoIPクライアントAがVoIP確認用メッセージを受信すると、この確認用メッセージをクライアントAへ送信する(ステップS16)。
【0021】
また、同様にして、クライアントBのユーザは、自分のアドレス情報(IPアドレス、ポート番号、電話番号、メールアドレス等)を入力し、クライアントBは、自分のアドレス情報(IPアドレス、ポート番号、電話番号、メールアドレス等)を載せた登録用メッセージをアドレス解決サーバ1へ送信する。
アドレス解決サーバ1において、登録用メッセージを受信すると、アドレス解決サーバ1内で立ち上がっているVoIPクライアントBは、クライアントBからの登録要求にするVoIP登録用メッセージを構築し、VoIPサーバ2へ送信する。
VoIPサーバ2は、VoIPクライアントBよりVoIP登録用メッセージを受信すると、クライアントBから登録要求された実アドレスをVoIPサーバ2内のDBへ格納する。
そして、VoIPサーバ2は、実アドレス格納後、VoIP確認用メッセージをVoIPクライアントBへ送信する。
アドレス解決サーバ1において、VoIPクライアントBがVoIP確認用メッセージを受信すると、この確認用メッセージをクライアントBへ送信する。
【0022】
(3)発呼処理
図6は、本実施形態のアドレス解決サーバ1とクライアントA、Bの間における発呼処理の過程を示すフローチャートである。
クライアントAのユーザは、クライアントAの表示部に表示されたクライアントソフトの発呼ボタンをクリックし(図6のステップS20)、相手先(クライアントB)のグローバルIPアドレス、または識別情報(電話番号、メールアドレス等)を入力部において入力する。
クライアントAは、クリックをトリガとして、相手先のグローバルIPアドレス、または識別情報を載せた発呼用メッセージをアドレス解決サーバ1へ送信する(ステップS21)。
アドレス解決サーバ1において、発呼用メッセージを受信すると(ステップS22)、VoIPクライアントAは、クライアントAから送信された発呼用メッセージの相手先の実アドレスについて、アドレス解決を行うため、VoIPアドレス解決用メッセージを構築する。
VoIPクライアントAは、構築したVoIPアドレス解決用メッセージをVoIPサーバ2へ送信する(ステップS23)。
ここで、VoIPアドレス解決用メッセージとは、相手先のグローバルIPアドレス、または識別情報を含むパケットである。
VoIPサーバ2は、VoIPクライアントAから送信されたVoIPアドレス解決用メッセージが示すグローバルIPアドレス、または識別情報基づいて、DB内を検索し、相手先の実アドレス(IPアドレス及びポート)を取得する(ステップS24)。
そして、VoIPサーバ2は、アドレス解決サーバ1内のVoIPクライアントAへDBから取得した相手先の実アドレスを送信する(ステップS25)。
【0023】
アドレス解決サーバ1において、VoIPクライアントAは、VoIPサーバ2から相手先の実アドレスを受信すると、これに基づいてVoIPクライアントBを特定し、VoIP発呼要求用メッセージを送信する(ステップS26)。
VoIPクライアントBは、VoIPクライアントAからの送信メッセージを受信する(ステップS27)。そして、VoIPクライアントBは、クライアントAから発呼要求がある旨をクライアントBへ通知する(ステップS28)。
クライアントBのユーザは、VoIPクライアントBより発呼要求がある旨を受信すると、クライアントAからの発呼要求に対して応答する(ステップS29)。クライアントBは、ユーザの応答を受けて、アドレス解決サーバ1へクライアントAからの要求に対する応答メッセージを送信する(ステップS30)。
【0024】
VoIPクライアントBは、クライアントBから応答メッセージを受信すると、VoIPクライアントAへVoIP発呼応答用メッセージを送信する(ステップS31)。
VoIPクライアントAは、VoIPクライアントBからのVoIP発呼用メッセージを受信する(ステップS32)。そして、VoIPクライアントAは、受信したVoIP発呼用メッセージに基づいて、クライアントAに対して、クライアントBが発呼要求に対して応答した旨を通知する(ステップS33)。
そして、アドレス解決サーバ1において、VoIPクライアントA、Bはコネクションを確立し、VoIP接続を完了する(ステップS34)。
【0025】
そして、VoIPクライアントAは、クライアントAへ特定のポートを指定して音声路を確立する(ステップS35)。また、VoIPクライアントBは、クライアントBへ特定のポートを指定して音声路を確立する(ステップS35)。そして、アドレス解決サーバ1において、同時にVoIPクライアントA、B間の音声路を確立する(ステップS35)。
以上の呼接続制御処理により、クライアントA、B間のVoIPコネクションが確立される。
【0026】
(4)切断処理
図7は、本実施形態のアドレス解決サーバ1とクライアントA、Bの間における呼切断処理の過程を示すフローチャートである。
クライアントAのユーザは、クライアントAの表示部に表示されたクライアントソフトの切断ボタンをクリックする(図7のステップS40)。クライアントAは、クリックをトリガとして、相手先の実アドレスを載せた切断用メッセージをアドレス解決サーバ1へ送信する(ステップS41)。
アドレス解決サーバ1において、切断用メッセージを受信すると、VoIPクライアントAは、VoIP切断要求用メッセージを構築する。
ここで、VoIP切断要求用メッセージは、呼切断相手先の実アドレスを含むパケットである。
VoIPクライアントAは、構築したVoIP切断要求用メッセージをVoIPクライアントBへ送信する(ステップS42)。
VoIPクライアントBは、VoIPクライアントAからの送信メッセージを受信する(ステップS43)。そして、VoIPクライアントBは、クライアントAから切断要求がある旨をクライアントBへ通知する(ステップS44)。
クライアントBのユーザは、VoIPクライアントBより切断要求がある旨を受信すると、クライアントAからの切断要求に対して応答する。クライアントBは、ユーザの応答を受けて、アドレス解決サーバ1へクライアントAからの切断要求に対する応答メッセージを送信する。
【0027】
VoIPクライアントBは、クライアントBから応答メッセージを受信すると、、VoIPクライアントAへVoIP切断応答用メッセージを送信する。
VoIPクライアントAは、VoIPクライアントBからのVoIP切断用メッセージを受信する。そして、VoIPクライアントAは、受信したVoIP切断用メッセージに基づいて、クライアントAに対して、クライアントBが切断要求に対して応答した旨を通知する。
そして、アドレス解決サーバ1において、VoIPクライアントA、Bはコネクションを切断し、VoIP接続を終了する(ステップS45)。VoIPクライアントAは、クライアントAに対し、切断完了の旨を通知する(ステップS46)。
そして、VoIPクライアントAは、クライアントAとの間の音声路を切断し(ステップS47)、VoIPクライアントBは、クライアントBとの間の音声路を切断し(ステップS47)、アドレス解決サーバ1において、VoIPクライアントA、B間の音声路を切断する(ステップS47)。
【0028】
したがって、本実施形態にアドレス解決サーバ1によれば、ルータにおいて、NAT変換が行われてもIP電話を行うことが出来る効果が得られる。すなわち、プライベートアドレス空間内のクライアントから、インターネット越しの別クライアントへのIP電話が可能である。したがって、インターネットに接続している一般家庭のからのIP電話サービスの利用が可能となる。
現在のNAT越え技術は、主にuPnPを用いたものになっているおり、この技術を利用する場合、利用者はNAT装置の買い替えを余儀なくされる。しかし、本システムを適用する事により既存のNAT装置を使用することが可能となり、特に一般家庭の利用者に対してはコストや操作性の面で抵抗感がなく、スムーズに導入しやすい。
つまり、従来から存在するものを含めた全てのルータを使用することが可能であり、利用者が従来から使用しているルータを買い換えずにIP電話サービスを利用することができる効果が得られる。
また、本実施形態にアドレス解決サーバ1によれば、サーバ側にVoIPクライアント機能が集約されているため、機能拡充、メンテナンスが容易に行えるという効果が得られる。
【0029】
なお、上述したように、本実施形態においては、VoIPサーバ2と、アドレス解決サーバ1とを別装置とした場合の例について説明したが、アドレス解決サーバ1におけるアドレス解決機能を上記VoIPサーバ2に組み込むことも考えられる。
この場合、VoIPサーバ2は、発側のクライアントAと、着側のクライアントBとネットワークを介して接続され、クライアントA,Bの識別情報に基づいてアドレス解決を行う。
また、VoIPサーバ2は、クライアントAからセッション確立要求を受けて、セッションと関連付けられたVoIPクライアントAを生成し、クライアントAの識別情報と、クライアントAの実アドレスとを関連付けて所定の記憶部に登録する。
また、VoIPサーバ2は、クライアントBからセッション確立要求を受けて、セッションと関連付けられた第2のVoIPクライアントを生成し、クライアントBの識別情報と、クライアントBの実アドレスとを関連付けて記憶部に登録する。
そして、VoIPサーバ2は、クライアントAからクライアントBへの発呼要求を受けて、クライアントBの識別情報からクライアントBの実アドレスへのアドレス解決を行い、VoIPクライアントBへ発呼し、クライアントBからクライアントAへの発呼要求に対する応答を受けて、VoIPクライアント間でコネクションを確立する。
【0030】
したがって、この場合においても、ルータにおいて、NAT変換が行われてもIP電話を行うことが出来る効果が得られる。すなわち、プライベートアドレス空間内のクライアントから、インターネット越しの別クライアントへのIP電話が可能である。したがって、インターネットに接続している一般家庭のからのIP電話サービスの利用が可能となる。
【0031】
上述のクライアントA、B、アドレス解決サーバ1、VoIPサーバ2は、内部に、コンピュータシステムを有している。
そして、上述したアドレス解決処理、呼制御処理に関する一連の処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。
すなわち、クライアントA、B、アドレス解決サーバ1、VoIPサーバ2における、各処理手段、処理部は、CPU等の中央演算処理装置がROMやRAM等の主記憶装置に上記プログラムを読み出して、情報の加工・演算処理を実行することにより、実現されるものである。
ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
【0032】
【発明の効果】
以上説明したように、本発明は、発側の第1のクライアント端末と、発側のクライアント端末に対して着側の第2のクライアント端末と、第1、第2のクライアント端末の識別情報に基づいて、アドレス解決を行うVoIPサーバとネットワークを介して接続されたアドレス解決サーバにおいて、第1のクライアント端末からセッション確立要求を受けて、セッションと関連付けられた第1のVoIPクライアントを生成し、第1のクライアント端末の識別情報と、第1のクライアント端末の実アドレスとを関連付けてVoIPサーバに登録し、第2のクライアント端末からセッション確立要求を受けて、セッションと関連付けられた第2のVoIPクライアントを生成し、第2のクライアント端末の識別情報と、第2のクライアント端末の実アドレスとを関連付けてVoIPサーバに登録し、第1のクライアント端末から第2のクライアント端末への発呼要求を受けて、VoIPサーバにより、第2のクライアント端末の識別情報から第2のクライアント端末の実アドレスへのアドレス解決を行い、第2のVoIPクライアントへ発呼し、第2のクライアント端末から第1のクライアント端末への発呼要求に対する応答を受けて、第1、第2のVoIPクライアント間でコネクションを確立するので、グローバルアドレスを割り当てることができない端末であっても、VoIP電話を利用することができる効果を得ることができる。
【図面の簡単な説明】
【図1】本実施形態のアドレス解決サーバを適用したIP電話システムのシステム構成を示す構成図である。
【図2】本実施形態のアドレス解決サーバが使用するVoIPプロトコルで構成したIPパケットの構成を示す構成図である。
【図3】本実施形態のアドレス解決サーバを適用したIP電話システムにおけるアドレス解決、呼制御処理の過程を示すフローチャートである。
【図4】本実施形態のアドレス解決サーバとクライアントAの間におけるセッション確立処理の過程を示すフローチャートである。
【図5】本実施形態のアドレス解決サーバとクライアントAの間におけるアドレス登録処理の過程を示すフローチャートである。
【図6】本実施形態のアドレス解決サーバとクライアントA、Bの間における発呼処理の過程を示すフローチャートである。
【図7】本実施形態のアドレス解決サーバとクライアントA、Bの間における呼切断処理の過程を示すフローチャートである。
【図8】従来のIP電話システムにおけるVoIPプロトコルで使用されるパケットの構成を示す構成図である。
【符号の説明】
1…アドレス解決サーバ
2…VoIPサーバ
10、20…制御部
11、21…入力部
12、22…出力部
13、26…送信部
14、27…受信部
23…スレッド生成処理部
24…クライアント登録処理部
25…呼制御処理部
Claims (4)
- 発側の第1のクライアント端末と、該発側のクライアント端末に対して着側の第2のクライアント端末と、前記第1、第2のクライアント端末の識別情報に基づいて、アドレス解決を行うVoIPサーバとネットワークを介して接続されたアドレス解決サーバであって、
前記第1のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第1のVoIPクライアントを生成する第1のスレッド生成手段と、
前記第1のクライアント端末の識別情報と、前記第1のクライアント端末の実アドレスとを関連付けて前記VoIPサーバに登録する第1の登録手段と、
前記第2のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第2のVoIPクライアントを生成する第2のスレッド生成手段と、
前記第2のクライアント端末の識別情報と、前記第2のクライアント端末の実アドレスとを関連付けて前記VoIPサーバに登録する第2の登録手段と、
前記第1のクライアント端末から前記第2のクライアント端末への発呼要求を受けて、前記VoIPサーバにより、前記第2のクライアント端末の識別情報から前記第2のクライアント端末の実アドレスへのアドレス解決を行い、前記第2のVoIPクライアントへ発呼し、前記第2のクライアント端末から前記第1のクライアント端末への前記発呼要求に対する応答を受けて、前記第1、第2のVoIPクライアント間でコネクションを確立する呼制御手段と
を具備することを特徴とするアドレス解決サーバ。 - 発側の第1のクライアント端末と、該発側のクライアント端末に対して着側の第2のクライアント端末とネットワークを介して接続され、前記第1、第2のクライアント端末の識別情報に基づいてアドレス解決を行うVoIPサーバであって、
前記第1のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第1のVoIPクライアントを生成する第1のスレッド生成手段と、
前記第1のクライアント端末の識別情報と、前記第1のクライアント端末の実アドレスとを関連付けて所定の記憶手段に登録する第1の登録手段と、
前記第2のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第2のVoIPクライアントを生成する第2のスレッド生成手段と、
前記第2のクライアント端末の識別情報と、前記第2のクライアント端末の実アドレスとを関連付けて前記記憶手段に登録する第2の登録手段と、
前記第1のクライアント端末から前記第2のクライアント端末への発呼要求を受けて、前記第2のクライアント端末の識別情報に基づいて前記記憶手段を検索し、前記第2のクライアント端末の実アドレスへのアドレス解決を行って、前記第2のVoIPクライアントへ発呼するとともに、前記第2のクライアント端末から前記第1のクライアント端末への前記発呼要求に対する応答を受けて、前記第1、第2のVoIPクライアント間でコネクションを確立する呼制御手段と
を具備することを特徴とするVoIPサーバ。 - 発側の第1のクライアント端末と、該発側のクライアント端末に対して着側の第2のクライアント端末と、前記第1、第2のクライアント端末の識別情報に基づいて、アドレス解決を行うVoIPサーバとネットワークを介して接続されたアドレス解決サーバにおいて、
前記第1のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第1のVoIPクライアントを生成し、
前記第1のクライアント端末の識別情報と、前記第1のクライアント端末の実アドレスとを関連付けて前記VoIPサーバに登録し、
前記第2のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第2のVoIPクライアントを生成し、
前記第2のクライアント端末の識別情報と、前記第2のクライアント端末の実アドレスとを関連付けて前記VoIPサーバに登録し、
前記第1のクライアント端末から前記第2のクライアント端末への発呼要求を受けて、前記VoIPサーバにより、前記第2のクライアント端末の識別情報から前記第2のクライアント端末の実アドレスへのアドレス解決を行い、前記第2のVoIPクライアントへ発呼し、前記第2のクライアント端末から前記第1のクライアント端末への前記発呼要求に対する応答を受けて、前記第1、第2のVoIPクライアント間でコネクションを確立する
ことを特徴とするアドレス解決方法。 - 発側の第1のクライアント端末と、該発側のクライアント端末に対して着側の第2のクライアント端末と、前記第1、第2のクライアント端末の識別情報に基づいて、アドレス解決を行うVoIPサーバとネットワークを介して接続されたアドレス解決サーバに、
前記第1のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第1のVoIPクライアントを生成する処理と、
前記第1のクライアント端末の識別情報と、前記第1のクライアント端末の実アドレスとを関連付けて前記VoIPサーバに登録する処理と、
前記第2のクライアント端末からセッション確立要求を受けて、該セッションと関連付けられた第2のVoIPクライアントを生成する処理と、
前記第2のクライアント端末の識別情報と、前記第2のクライアント端末の実アドレスとを関連付けて前記VoIPサーバに登録する処理と、
前記第1のクライアント端末から前記第2のクライアント端末への発呼要求を受けて、前記VoIPサーバにより、前記第2のクライアント端末の識別情報から前記第2のクライアント端末の実アドレスへのアドレス解決を行い、前記第2のVoIPクライアントへ発呼し、前記第2のクライアント端末から前記第1のクライアント端末への前記発呼要求に対する応答を受けて、前記第1、第2のVoIPクライアント間でコネクションを確立する処理と
を実行させるためのアドレス解決プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003090818A JP2004297715A (ja) | 2003-03-28 | 2003-03-28 | アドレス解決サーバ、VoIPサーバ、アドレス解決方法、アドレス解決プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003090818A JP2004297715A (ja) | 2003-03-28 | 2003-03-28 | アドレス解決サーバ、VoIPサーバ、アドレス解決方法、アドレス解決プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004297715A true JP2004297715A (ja) | 2004-10-21 |
Family
ID=33404345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003090818A Pending JP2004297715A (ja) | 2003-03-28 | 2003-03-28 | アドレス解決サーバ、VoIPサーバ、アドレス解決方法、アドレス解決プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004297715A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007104691A (ja) * | 2006-10-12 | 2007-04-19 | Hitachi Ltd | データ通信方法およびシステム |
JP2009515485A (ja) * | 2005-11-09 | 2009-04-09 | スターレント ネットワークス コーポレイション | 移動体加入者セッションにおいてワイヤレス・データ・トランザクションを削減するための軽量通信プロトコル |
-
2003
- 2003-03-28 JP JP2003090818A patent/JP2004297715A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009515485A (ja) * | 2005-11-09 | 2009-04-09 | スターレント ネットワークス コーポレイション | 移動体加入者セッションにおいてワイヤレス・データ・トランザクションを削減するための軽量通信プロトコル |
JP2007104691A (ja) * | 2006-10-12 | 2007-04-19 | Hitachi Ltd | データ通信方法およびシステム |
JP4551381B2 (ja) * | 2006-10-12 | 2010-09-29 | 株式会社日立製作所 | データ通信方法およびシステム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5444995B2 (ja) | セッション共有システム、方法及びプログラム、並びに、ユーザ端末 | |
CN1700680B (zh) | 使用服务器池时有效的消息路由 | |
KR100552513B1 (ko) | 브이오아이피 서비스를 제공하는 장치 및 그 방법 | |
JP2005318503A (ja) | プレゼンスサーバ、セッション制御サーバ、パケット中継システム、サーバ、及びシステム | |
US7385621B2 (en) | Private sharing of computer resources over an internetwork | |
US20080165706A1 (en) | Destination service selection for a telephone | |
JP2009089033A (ja) | 通信装置、及び通信システムで用いられる端末登録方法 | |
JP2004247916A (ja) | Web連携対応SIPサービス制御システムおよび制御方法 | |
US7756257B2 (en) | SIP enabled device identification | |
JP4881252B2 (ja) | インタフェース装置、このインタフェース装置を備えた交換装置及びインタフェース装置で使用される制御方法 | |
JP2008258917A (ja) | 同一nat配下通信制御システム、nat装置、同一nat配下通信制御方法、及びプログラム | |
US20070236559A1 (en) | Video Phone Terminal Apparatus and Address Display Method | |
JP2008113381A (ja) | 通信システム | |
JP2004297715A (ja) | アドレス解決サーバ、VoIPサーバ、アドレス解決方法、アドレス解決プログラム | |
CN101352020B (zh) | 用于ip电话业务互通的装置及方法 | |
JP2007208542A (ja) | 呼制御信号転送装置、呼制御信号転送方法および呼制御信号転送プログラム | |
JP4686294B2 (ja) | プレゼンスサーバ及びプレゼンス情報管理システム | |
JP2002183009A (ja) | インターネット網で個人識別子による通信サービスを提供する装置及びその方法 | |
JP4249680B2 (ja) | 構内電話システム及びその内線電話機収容方法 | |
KR100894906B1 (ko) | 세션 설정 프로토콜 기반의 ip 멀티미디어 서비스를제공하는 단말장치, 호 세션 제어 기능 장치 및 이를이용한 서비스 요청 송/수신 방법 | |
JP4728933B2 (ja) | Ip電話通信システム、ip電話通信方法、およびそのプログラム | |
WO2010069205A1 (zh) | 一种ip多媒体子系统动态电话簿业务的实现方法及系统 | |
JP4263915B2 (ja) | データ通信システム | |
JP2008206081A (ja) | マルチホーミング通信システムに用いられるデータ中継装置およびデータ中継方法 | |
JP4555005B2 (ja) | プロトコル変換サーバ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051226 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071115 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071211 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080415 |