(57)【要約】【課題】一のプロトコルによって通信を行うクライアント装置と、他のプロトコルによって通信を行うサーバ装置との間でリアルタイムデータ通信を行う。【解決手段】ゲートウェイ装置１００は、自装置の追加番号に関連付けてサーバ装置３００−１のＩＰアドレスを記憶する。そして、クライアント装置２００から受信したＳＩＰメッセージに含まれる追加番号に基づいて、当該ＳＩＰメッセージの送信先のサーバ装置３００−１を決定する。これにより、クライアント装置２００は、目的のサーバ装置３００−１に関連付けられた追加番号を送信先とするＳＩＰメッセージを送信することで、当該ＳＩＰメッセージに含まれる情報を、ゲートウェイ装置１００を介して目的のサーバ装置３００−１に伝送することができる。【選択図】図３
2011176774.tif 000002
【特許請求の範囲】
【請求項１】
一のプロトコルによって通信を行うクライアント装置と、他のプロトコルによって通信を行うサーバ装置とを接続するゲートウェイシステムであって、
前記一のプロトコルを用いて自装置にアクセスするための複数の異なる識別情報であるゲートウェイアクセス情報のそれぞれに関連付けて、前記他のプロトコルを用いて前記サーバ装置にアクセスするための識別情報であるサーバアクセス情報を記憶する識別情報記憶部と、
前記クライアント装置から前記一のプロトコルで規定されたヘッダを有するデータを受信するクライアント受信部と、
前記識別情報記憶部から、前記クライアント受信部が受信したデータに含まれる前記ゲートウェイアクセス情報に関連付けられたサーバアクセス情報を読み出すサーバアクセス情報読出部と、
前記サーバアクセス情報読出部が読み出したサーバアクセス情報を送信先とする前記他のプロトコルで規定されたヘッダを有し、前記クライアント受信部が受信したデータが示す情報をボディに含むデータを生成するサーバデータ生成部と、
前記サーバデータ生成部が生成したデータを前記サーバ装置に送信するサーバ送信部と
を備えるゲートウェイ装置
を有することを特徴とするゲートウェイシステム。
【請求項２】
前記ゲートウェイ装置は、
前記他のプロトコルのヘッダを有し、前記一のプロトコルを用いてクライアント装置にアクセスするための識別情報であるクライアントアクセス情報をボディに含むデータをサーバから受信するサーバ受信部と、
前記識別情報記憶部から、前記サーバ受信部が受信したデータに含まれる前記サーバ装置のサーバアクセス情報に関連付けられたゲートウェイアクセス情報を読み出すゲートウェイアクセス情報読出部と、
前記サーバ受信部が受信したデータに含まれるクライアントアクセス情報を送信先とし、前記ゲートウェイアクセス情報読出部が読み出したゲートウェイアクセス情報を送信元とするヘッダを有し、前記サーバ受信部が受信したデータが示す情報をボディに含むデータを生成するクライアントデータ生成部と、
前記クライアントデータ生成部が生成したデータを前記クライアント装置に送信するクライアント送信部と、
を備えることを特徴とする請求項１に記載のゲートウェイシステム。
【請求項３】
異なるネットワークに接続された複数の前記ゲートウェイ装置を備え、
前記クライアントアクセス情報のパターンと、当該パターンに合致するクライアントアクセス情報によって特定されるクライアント装置と同じネットワークに接続している前記ゲートウェイ装置とを関連付けて記憶する対応ゲートウェイ記憶部と、
前記サーバ装置から前記クライアントアクセス情報をボディに含むデータを前記サーバ装置から受信するサーバ受信部と、
前記対応ゲートウェイ記憶部から、前記サーバ受信部が受信したデータに含まれるクライアントアクセス情報に関連付けられたゲートウェイ装置を読み出すゲートウェイ読み出し部と、
前記ゲートウェイ読み出し部が読み出したゲートウェイ装置に、前記サーバ受信部が受信したデータを転送する転送部と、
を備える収容管理サーバ装置をさらに有し、
前記ゲートウェイ装置のサーバ受信部は、前記収容管理サーバ装置を介して前記サーバ装置からデータを受信する
ことを特徴とする請求項２に記載のゲートウェイシステム。
【請求項４】
前記一のプロトコルはＳＩＰであり、
前記ゲートウェイアクセス情報は、ゲートウェイ装置の追加番号、サブアドレス、またはサブドメインの何れかである
ことを特徴とする請求項１から請求項３の何れか１項に記載のゲートウェイシステム。
【請求項５】
一のプロトコルによって通信を行うクライアント装置と、他のプロトコルによって通信を行うサーバ装置とを接続し、前記一のプロトコルを用いて自装置にアクセスするための複数の異なる識別情報であるゲートウェイアクセス情報のそれぞれに関連付けて、前記他のプロトコルを用いて前記サーバ装置にアクセスするための識別情報であるサーバアクセス情報を記憶する識別情報記憶部を備えるゲートウェイ装置を用いた通信方法であって、
クライアント受信部は、前記クライアント装置から前記一のプロトコルで規定されたヘッダを有するデータを受信し、
サーバアクセス情報読出部は、前記識別情報記憶部から、前記クライアント受信部が受信したデータに含まれる前記ゲートウェイアクセス情報に関連付けられたサーバアクセス情報を読み出し、
サーバデータ生成部は、前記サーバアクセス情報読出部が読み出したサーバアクセス情報を送信先とする前記他のプロトコルで規定されたヘッダを有し、前記クライアント受信部が受信したデータが示す情報をボディに含むデータを生成し、
サーバ送信部は、前記サーバデータ生成部が生成したデータを前記サーバ装置に送信する
ことを特徴とする通信方法。
【請求項６】
一のプロトコルによって通信を行うクライアント装置と、他のプロトコルによって通信を行うサーバ装置とを接続し、前記一のプロトコルを用いて自装置にアクセスするための複数の異なる識別情報であるゲートウェイアクセス情報のそれぞれに関連付けて、前記他のプロトコルを用いて前記サーバ装置にアクセスするための識別情報であるサーバアクセス情報を記憶する識別情報記憶部を備えるゲートウェイ装置を、
前記クライアント装置から前記一のプロトコルで規定されたヘッダを有するデータを受信するクライアント受信部、
前記識別情報記憶部から、前記クライアント受信部が受信したデータに含まれる前記ゲートウェイアクセス情報に関連付けられたサーバアクセス情報を読み出すサーバアクセス情報読出部、
前記サーバアクセス情報読出部が読み出したサーバアクセス情報を送信先とする前記他のプロトコルで規定されたヘッダを有し、前記クライアント受信部が受信したデータが示す情報をボディに含むデータを生成するサーバデータ生成部、
前記サーバデータ生成部が生成したデータを前記サーバ装置に送信するサーバ送信部
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一のプロトコルによって通信を行うクライアント装置と、他のプロトコルによって通信を行うサーバ装置とを接続するゲートウェイシステム、通信方法及びプログラムに関する。
【背景技術】
【０００２】
近年、ＩＰネットワークの普及に伴い、高い信頼性を有し、かつＩＰネットワークの自由度を有するネットワークであるＮＧＮ（Ｎｅｘｔ  Ｇｅｎｅｒａｔｉｏｎ  Ｎｅｔｗｏｒｋ：次世代ネットワーク）による通信が提案されている。ＮＧＮに接続された機器同士は、ＳＩＰ（Ｓｅｓｓｉｏｎ  Ｉｎｉｔｉａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ：セッション確立プロトコル）に従って通信を行うことが規定されている。
【０００３】
また、従来用いられているＷｅｂアプリケーションサーバ（以下、サーバ装置と呼ぶ）は、主にＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ：ハイパーテキスト転送プロトコル）に従って通信を行う。このような従来のサーバ装置が提供するサービスを、上述したＮＧＮに接続された機器に提供することで、ユーザに便利な情報を提供することができると考えられる。
また、ＮＧＮでは、サードパーティ・ＩＳＰ等の連携に関し、ＮＧＮとサーバ装置との接続インターフェースであるＳＮＩ（Ｓｅｒｖｅｒ  Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ：アプリケーションサーバ・網インターフェース）を公開している。そして、このＳＮＩを介することで、サーバ装置は、クライアント装置にサービスを提供することができる。
【０００４】
なお、特許文献１に、プロトコルの異なる環境上に構築されるアプリケーションを相互連携する技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−１１５７３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、ＮＧＮが公開しているＳＮＩは、ＶＯＤ（Ｖｉｄｅｏ  Ｏｎ  Ｄｅｍａｎｄ：ビデオオンデマンド）等のマルチキャスト用に公開されたＳＩＰインターフェースであり、ＨＴＴＰによる通信を行う既存のサーバ装置との連携は想定されていない。つまり、既存のサーバ装置とＮＧＮに接続された機器とは、互いに用いるプロトコルが異なるため、通信を行うことができないという問題がある。そのため、既存のサーバ装置がＮＧＮに接続された機器とリアルタイムデータ通信を行う場合、管理者は、サーバ装置とＮＧＮが公開しているＳＮＩとをＳＩＰ連携させる必要がある。
【０００７】
サーバ装置をＳＩＰ連携させるには、管理者がサーバ装置にＳＩＰプロトコルスタックを実装する必要がある。したがって、管理者は、電話通信に対するスキル及びノウハウを有し、電話の接続方法やＮＧＮインターフェース規定を理解する必要がある。
このように、２つの異なるプロトコルで通信を行う機器同士をリアルタイムデータ通信させることは、困難であるという問題があった。
【０００８】
本発明は、上記の問題に鑑みてなされたものであり、一のプロトコルによって通信を行うクライアント装置と、他のプロトコルによって通信を行うサーバ装置との間でリアルタイムデータ通信を行うゲートウェイシステム、通信方法及びプログラムを提供することを課題とする。
【課題を解決するための手段】
【０００９】
本発明は上記の課題を解決するためになされたものであり、一のプロトコルによって通信を行うクライアント装置と、他のプロトコルによって通信を行うサーバ装置とを接続するゲートウェイシステムであって、前記一のプロトコルを用いて自装置にアクセスするための複数の異なる識別情報であるゲートウェイアクセス情報のそれぞれに関連付けて、前記他のプロトコルを用いて前記サーバ装置にアクセスするための識別情報であるサーバアクセス情報を記憶する識別情報記憶部と、前記クライアント装置から前記一のプロトコルで規定されたヘッダを有するデータを受信するクライアント受信部と、前記識別情報記憶部から、前記クライアント受信部が受信したデータに含まれる前記ゲートウェイアクセス情報に関連付けられたサーバアクセス情報を読み出すサーバアクセス情報読出部と、前記サーバアクセス情報読出部が読み出したサーバアクセス情報を送信先とする前記他のプロトコルで規定されたヘッダを有し、前記クライアント受信部が受信したデータが示す情報をボディに含むデータを生成するサーバデータ生成部と、前記サーバデータ生成部が生成したデータを前記サーバ装置に送信するサーバ送信部とを備えるゲートウェイ装置を有することを特徴とする。
【００１０】
また、本発明において、前記ゲートウェイ装置は、前記他のプロトコルのヘッダを有し、前記一のプロトコルを用いてクライアント装置にアクセスするための識別情報であるクライアントアクセス情報をボディに含むデータをサーバから受信するサーバ受信部と、前記識別情報記憶部から、前記サーバ受信部が受信したデータに含まれる前記サーバ装置のサーバアクセス情報に関連付けられたゲートウェイアクセス情報を読み出すゲートウェイアクセス情報読出部と、前記サーバ受信部が受信したデータに含まれるクライアントアクセス情報を送信先とし、前記ゲートウェイアクセス情報読出部が読み出したゲートウェイアクセス情報を送信元とするヘッダを有し、前記サーバ受信部が受信したデータが示す情報をボディに含むデータを生成するクライアントデータ生成部と、前記クライアントデータ生成部が生成したデータを前記クライアント装置に送信するクライアント送信部と、を備えることを特徴とする。
【００１１】
また、本発明は、異なるネットワークに接続された複数の前記ゲートウェイ装置を備え、前記クライアントアクセス情報のパターンと、当該パターンに合致するクライアントアクセス情報によって特定されるクライアント装置と同じネットワークに接続している前記ゲートウェイ装置とを関連付けて記憶する対応ゲートウェイ記憶部と、前記サーバ装置から前記クライアントアクセス情報をボディに含むデータを前記サーバ装置から受信するサーバ受信部と、前記対応ゲートウェイ記憶部から、前記サーバ受信部が受信したデータに含まれるクライアントアクセス情報に関連付けられたゲートウェイ装置を読み出すゲートウェイ読み出し部と、前記ゲートウェイ読み出し部が読み出したゲートウェイ装置に、前記サーバ受信部が受信したデータを転送する転送部と、を備える収容管理サーバ装置をさらに有し、前記ゲートウェイ装置のサーバ受信部は、前記収容管理サーバ装置を介して前記サーバ装置からデータを受信することを特徴とする。
【００１２】
また、本発明において、前記一のプロトコルはＳＩＰであり、前記ゲートウェイアクセス情報は、ゲートウェイ装置の追加番号、サブアドレス、またはサブドメインの何れかであることを特徴とする。
【００１３】
また、本発明は、一のプロトコルによって通信を行うクライアント装置と、他のプロトコルによって通信を行うサーバ装置とを接続し、前記一のプロトコルを用いて自装置にアクセスするための複数の異なる識別情報であるゲートウェイアクセス情報のそれぞれに関連付けて、前記他のプロトコルを用いて前記サーバ装置にアクセスするための識別情報であるサーバアクセス情報を記憶する識別情報記憶部を備えるゲートウェイ装置を用いた通信方法であって、クライアント受信部は、前記クライアント装置から前記一のプロトコルで規定されたヘッダを有するデータを受信し、サーバアクセス情報読出部は、前記識別情報記憶部から、前記クライアント受信部が受信したデータに含まれる前記ゲートウェイアクセス情報に関連付けられたサーバアクセス情報を読み出し、サーバデータ生成部は、前記サーバアクセス情報読出部が読み出したサーバアクセス情報を送信先とする前記他のプロトコルで規定されたヘッダを有し、前記クライアント受信部が受信したデータが示す情報をボディに含むデータを生成し、サーバ送信部は、前記サーバデータ生成部が生成したデータを前記サーバ装置に送信することを特徴とする。
【００１４】
また、本発明は、一のプロトコルによって通信を行うクライアント装置と、他のプロトコルによって通信を行うサーバ装置とを接続し、前記一のプロトコルを用いて自装置にアクセスするための複数の異なる識別情報であるゲートウェイアクセス情報のそれぞれに関連付けて、前記他のプロトコルを用いて前記サーバ装置にアクセスするための識別情報であるサーバアクセス情報を記憶する識別情報記憶部を備えるゲートウェイ装置を、前記クライアント装置から前記一のプロトコルで規定されたヘッダを有するデータを受信するクライアント受信部、前記識別情報記憶部から、前記クライアント受信部が受信したデータに含まれる前記ゲートウェイアクセス情報に関連付けられたサーバアクセス情報を読み出すサーバアクセス情報読出部、前記サーバアクセス情報読出部が読み出したサーバアクセス情報を送信先とする前記他のプロトコルで規定されたヘッダを有し、前記クライアント受信部が受信したデータが示す情報をボディに含むデータを生成するサーバデータ生成部、前記サーバデータ生成部が生成したデータを前記サーバ装置に送信するサーバ送信部として機能させるためのプログラムである。
【発明の効果】
【００１５】
本発明によれば、ゲートウェイ装置は、ゲートウェイアクセス情報に関連付けてサーバアクセス情報を記憶する。そして、受信したデータに含まれるゲートウェイアクセス情報に基づいて、当該データの送信先のサーバ装置を決定する。
そのため、クライアント装置は、目的のサーバ装置に関連付けられたゲートウェイアクセス情報を送信先とするデータを送信することで、当該データに含まれる情報を、ゲートウェイ装置を介して目的のサーバ装置に伝送することができる。
これにより、クライアント装置はサーバ装置とリアルタイムデータ通信を行うことができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の第１の実施形態によるゲートウェイ装置を介して、クライアント装置からサーバ装置へメッセージを伝送する処理の概略を示す図である。
【図２】ＳＩＰ及びＨＴＴＰのレイヤ構造を示す図である。
【図３】第１の実施形態によるゲートウェイ装置を用いたサーバ装置の特定方法を示す図である。
【図４】第１の実施形態によるゲートウェイ装置の構成を示す概略ブロック図である。
【図５】サーバ情報記憶部が記憶する情報を示す図である。
【図６】送受信履歴記憶部が記憶するテーブルの構成を示す図である。
【図７】第１の実施形態によるゲートウェイ装置のＳＩＰパケット受信時の動作を示すフローチャートである。
【図８】ＳＩＰメッセージからＨＴＴＰメッセージを生成する例を示す図である。
【図９】本発明の第１の実施形態によるゲートウェイ装置を介して、サーバ装置からクライアント装置へメッセージを伝送する処理の概略を示す図である。
【図１０】第１の実施形態によるクライアント装置の特定方法を示す図である。
【図１１】第１の実施形態によるゲートウェイ装置のＨＴＴＰパケット受信時の動作を示す第１のフローチャートである。
【図１２】第１の実施形態によるゲートウェイ装置のＨＴＴＰパケット受信時の動作を示す第２のフローチャートである。
【図１３】ＨＴＴＰメッセージからＳＩＰメッセージを生成する例を示す図である。
【図１４】本発明の第２の実施形態によるゲートウェイシステムの構成を示す概略ブロック図である。
【図１５】収容管理装置の構成を示す概略ブロック図である。
【図１６】方路情報記憶部が記憶する情報を示す図である。
【図１７】サーバ情報記憶部が記憶する情報を示す図である。
【図１８】収容管理装置の動作を示すフローチャートである。
【図１９】他の実施形態によるゲートウェイ装置を用いたサーバ装置の特定方法を示す第１の図である。
【図２０】他の実施形態によるゲートウェイ装置を用いたサーバ装置の特定方法を示す第２の図である。
【図２１】他の実施形態によるクライアント装置の特定方法を示す図である。
【発明を実施するための形態】
【００１７】
（第１の実施形態）
以下、図面を参照しながら本発明の第１の実施形態について詳しく説明する。
図１は、本発明の第１の実施形態によるゲートウェイ装置を介して、クライアント装置からサーバ装置へメッセージを伝送する処理の概略を示す図である。
ゲートウェイ装置１００は、ＳＩＰ（一のプロトコル）によって通信を行うクライアント装置２００と、ＨＴＴＰ（他のプロトコル）によって通信を行うサーバ装置３００とを接続する。なお、図１には図示しないが、クライアント装置２００は、ＵＮＩ（Ｕｓｅｒ  Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ：ユーザ・網インターフェース）及びＰ／Ｉ／Ｓ−ＣＳＣＦ（Ｐｒｏｘｙ／Ｉｎｔｅｒｒｏｇａｔｉｎｇ／Ｓｅｒｖｉｎｇ−Ｃａｌｌ  Ｓｅｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｆｕｎｃｔｉｏｎ：呼セッション制御機能）を介してゲートウェイ装置１００に接続している。
ＵＮＩは、ＮＧＮとクライアント装置２００などのユーザ端末との間のインターフェースである。
Ｐ／Ｉ／Ｓ−ＣＳＣＦは、ＳＩＰに基づいて、ユーザの登録やセッション設定の制御を行うＳＩＰサーバである。
【００１８】
ゲートウェイ装置１００は、クライアント装置２００から送信されたＳＩＰメッセージを受信し、応答として処理の成功を示す「２００  ＯＫ」を送信する。次に、ゲートウェイ装置１００は、ＳＩＰメッセージに含まれる宛先情報を格納したＳＩＰヘッダであるＴｏやＲ−ＵＲＩ（Ｒｅｑｕｅｓｔ−Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒ：リクエスト統一資源ＩＤ）等から送信先のサーバ装置３００を特定する。そして、ゲートウェイ装置１００は、当該サーバ装置３００に受信したＳＩＰメッセージの内容をＨＴＴＰによって送信する。
このように、本実施形態では、ゲートウェイ装置１００を介して通信を行うことで、クライアント装置２００とサーバ装置３００とのリアルタイムデータ通信を行う。
【００１９】
図２は、ＳＩＰ及びＨＴＴＰのレイヤ構造を示す図である。
ここで、ＳＩＰ及びＨＴＴＰのレイヤ構造を説明する。
ＳＩＰによる通信は、下位のプロトコルとして、トランスポート層にＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ：ユーザデータグラムプロトコル）を用い、ネットワーク層にＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ：インターネットプロトコル）を用いる。したがって、ゲートウェイ装置１００は、クライアント装置２００からＩＰパケットを受信する。このとき、ＩＰパケットのボディには、ＵＤＰセグメントが格納され、さらに当該ＵＤＰセグメントのボディには、ＳＩＰメッセージが格納される。以下、ＳＩＰメッセージが格納されたＩＰパケットを「ＳＩＰパケット」と呼ぶ。
【００２０】
他方、ＨＴＴＰによる通信は、下位のプロトコルとして、トランスポート層にＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ：伝送制御プロトコル）を用い、ネットワーク層にＩＰを用いる。したがって、ゲートウェイ装置１００は、サーバ装置３００からＩＰパケットを受信する。このとき、ＩＰパケットのボディには、ＴＣＰセグメントが格納され、さらに当該ＴＣＰセグメントのボディには、ＨＴＴＰメッセージが格納される。以下、ＨＴＴＰメッセージが格納されたＩＰパケットを「ＨＴＴＰパケット」と呼ぶ。
さらに、サーバ装置３００がＭＭＳ（Ｍｕｌｔｉｍｅｄｉａ  Ｍｅｓｓａｇｉｎｇ  Ｓｅｒｖｉｃｅ：マルチメディアメッセージングサービス）による通信を行う場合、ＨＴＴＰメッセージのボディには、ＭＭＳメッセージが格納される。
【００２１】
なお、ＩＰパケットは、送信先ＩＰアドレス等を格納するＩＰヘッダとボディとで構成されている。また、ＵＤＰセグメントは、送信先ポート番号等を格納するＵＤＰヘッダとボディとで構成されている。また、ＴＣＰセグメントは、送信先ポート番号等を格納するＴＣＰヘッダとボディとで構成されている。
また、ＳＩＰメッセージは、実行するコマンドや送信元電話番号（ＵＮＩ番号、ＳＮＩ番号）、送信先電話番号（ＵＮＩ番号、ＳＮＩ番号）等を格納するＳＩＰヘッダとボディとで構成されている。また、ＨＴＴＰメッセージは、メッセージの送信先となるアプリケーションのＵＲＬ等を格納するＨＴＴＰヘッダとボディとで構成されている。
また、ＭＭＳメッセージは、送信先アドレスや送信元アドレス等を格納するＭＭＳヘッダとボディとで構成されている。
【００２２】
図３は、第１の実施形態によるゲートウェイ装置を用いたサーバ装置の特定方法を示す図である。
ゲートウェイ装置１００は、自装置にアクセスするための識別情報であるＳＮＩ番号に割り当てられた追加番号（ゲートウェイアクセス情報）の各々に、サーバ装置３００のＩＰアドレス（サーバアクセス情報）を関連付けて記憶している。図３によれば、ゲートウェイ装置１００は、自装置の追加番号「０４３ｂｂｂｘｘｘｘ」に関連付けて、サーバ装置３００−１のＩＰアドレス「ｘｘｘ．ｘｘｘ．ｘｘｘ．ｘｘｘ」を記憶し、自装置の追加番号「０４３ｂｂｂｙｙｙｙ」に関連付けて、サーバ装置３００−２のＩＰアドレス「ｙｙｙ．ｙｙｙ．ｙｙｙ．ｙｙｙ」を記憶している。
【００２３】
ここで、本実施形態による通信方法を用いて、クライアント装置２００がサーバ装置３００−１にＳＭＳ（Ｓｈｏｒｔ  Ｍｅｓｓａｇｅ  Ｓｅｒｖｉｃｅ：ショートメッセージサービス）メッセージを送信する例を説明する。
まず、クライアント装置２００が属するＵＮＩは、宛先番号を示すＳＩＰヘッダに、サーバ装置３００−１のＩＰアドレスに関連付けられた追加番号を指定したＳＭＳメッセージを生成する。次に、ＵＮＩは、自装置のＵＮＩ番号を収容するＰ／Ｉ／Ｓ−ＣＳＣＦを介してＳＭＳメッセージを送信する。ここで、ＳＭＳメッセージの宛先番号を示すＳＩＰヘッダには、ゲートウェイ装置１００に割り当てられた追加番号が格納されているため、ＳＭＳメッセージはゲートウェイ装置１００に送信される。
【００２４】
ゲートウェイ装置１００は、Ｐ／Ｉ／Ｓ−ＣＳＣＦからＳＭＳメッセージを受信すると、受信したＳＭＳメッセージに基づいて、ＨＴＴＰメッセージを生成する。次に、受信したＳＭＳメッセージのＴｏやＲ−ＵＲＩ等を読み取り、当該宛先番号を示すＳＩＰヘッダに格納された追加番号に関連付けられたＩＰアドレスを読み出す。そして、ゲートウェイ装置１００は、読み出したＩＰアドレスを送信先とし、生成したＨＴＴＰメッセージを格納したパケットを生成し、当該パケットをＳＭＳ受信通知として送信する。
ここで、ＳＭＳメッセージの宛先番号を示すＳＩＰヘッダは、サーバ装置３００−１のＩＰアドレスに関連付けられているため、ゲートウェイ装置１００は、サーバ装置３００−１にＳＭＳ受信通知を送信する。
このような手順で、ゲートウェイ装置１００は、ＳＩＰメッセージの送信先となるサーバ装置３００を特定することができる。
【００２５】
次に、本実施形態によるゲートウェイ装置１００の構成を説明する。
図４は、第１の実施形態によるゲートウェイ装置の構成を示す概略ブロック図である。
ゲートウェイ装置１００は、クライアント受信部１１０、サーバ送信部１２０、サーバ受信部１３０、クライアント送信部１４０、ルーティング部１５０、履歴管理部１６０を備える。
クライアント受信部１１０は、クライアント装置２００からＳＩＰメッセージを格納したパケットを受信し、当該パケットから復元したＳＩＰメッセージをルーティング部１５０に出力する。
サーバ送信部１２０は、ルーティング部１５０からＨＴＴＰパケットを読み出し、当該ＨＴＴＰパケットをサーバ装置３００に送信する。
サーバ受信部１３０は、サーバ装置３００からＨＴＴＰパケットを受信し、当該ＨＴＴＰパケットから復元したＨＴＴＰメッセージをルーティング部１５０に出力する。
クライアント送信部１４０は、ルーティング部１５０からＳＩＰパケットを読み出し、当該ＳＩＰパケットをクライアント装置２００に送信する。
ルーティング部１５０は、クライアント受信部１１０から入力したＳＩＰメッセージに基づいてＨＴＴＰパケットを生成し、当該ＨＴＴＰパケットをサーバ送信部１２０に送信する。また、ルーティング部１５０は、サーバ受信部１３０から入力したＨＴＴＰメッセージに基づいてＳＩＰパケットを生成し、当該ＳＩＰパケットをクライアント送信部１４０に送信する。
履歴管理部１６０は、自装置が送受信したメッセージの状態を管理する。
【００２６】
クライアント受信部１１０は、ＳＩＰ受信部１１１、ＳＩＰ形式チェック部１１２、ＳＩＰレスポンス生成部１１３を備える。
ＳＩＰ受信部１１１は、クライアント装置２００からＳＩＰパケットを受信し、当該ＳＩＰパケットをＳＩＰ形式チェック部１１２に出力する。
ＳＩＰ形式チェック部１１２は、ＳＩＰ受信部１１１が受信したＳＩＰパケットからＳＩＰメッセージを復元し、当該ＳＩＰメッセージがＳＩＰフォーマットを満たすか否かを判定する。
ＳＩＰレスポンス生成部１１３は、ＳＩＰ受信部１１１が受信したＳＩＰメッセージに関するＳＩＰレスポンスを生成し、クライアント装置２００に送信する。ＳＩＰレスポンスとは、ＳＩＰ受信部１１１が受信したＳＩＰメッセージに対する処理結果として返送するＳＩＰメッセージである。
【００２７】
サーバ送信部１２０は、ＨＴＴＰ読出部１２１、ＨＴＴＰ送信部１２２を備える。
ＨＴＴＰ読出部１２１は、ルーティング部１５０からＨＴＴＰパケットを読み出す。
ＨＴＴＰ送信部１２２は、ＨＴＴＰ読出部１２１が読み出したＨＴＴＰパケットをサーバ装置３００に送信する。
【００２８】
サーバ受信部１３０は、ＨＴＴＰ受信部１３１、ＨＴＴＰ形式チェック部１３２、ＨＴＴＰレスポンス生成部１３３を備える。
ＨＴＴＰ受信部１３１は、サーバ装置３００からＨＴＴＰパケットを受信し、当該ＨＴＴＰパケットをＨＴＴＰ形式チェック部１３２に出力する。
ＨＴＴＰ形式チェック部１３２は、ＨＴＴＰ受信部１３１が受信したＨＴＴＰパケットからＨＴＴＰメッセージを復元し、当該ＨＴＴＰメッセージがＨＴＴＰフォーマットを満たすか否かを判定する。
ＨＴＴＰレスポンス生成部１３３は、受信したＨＴＴＰメッセージに関するＨＴＴＰレスポンスを生成し、サーバ装置３００に送信する。ＨＴＴＰレスポンスとは、ＨＴＴＰ受信部１３１が受信したＨＴＴＰメッセージに対する処理結果として返送するＨＴＴＰメッセージである。
【００２９】
クライアント送信部１４０は、ＳＩＰ読出部１４１、ＳＩＰ送信部１４２を備える。
ＳＩＰ読出部１４１は、ルーティング部１５０からＳＩＰパケットを読み出す。
ＳＩＰ送信部１４２は、ＳＩＰ読出部１４１が読み出したＳＩＰパケットをクライアント装置２００に送信する。
【００３０】
ルーティング部１５０は、サーバ情報記憶部１５１（識別情報記憶部）、入力キュー１５２、メッセージ生成部１５３（ゲートウェイアクセス情報読出部、クライアントデータ生成部）、パケット生成部１５４（サーバアクセス情報読出部、サーバデータ生成部）、サーバ利用判定部１５５、出力キュー１５６を備える。
図５は、サーバ情報記憶部が記憶する情報を示す図である。
サーバ情報記憶部１５１は、サーバ装置３００を特定するサーバＩＤ、当該サーバ装置３００に割り当てる追加番号、当該サーバ装置３００が所属する企業の企業名、通信料の請求先となる企業住所、サーバ装置３００のＩＰアドレス、接続するポート番号、メッセージに対する処理を行うアプリケーションのＵＲＬを示す通知先ＵＲＬ、料金の支払の有無、及びサーバ装置３００の利用可能時間帯を関連付けて記憶する。
【００３１】
入力キュー１５２は、クライアント受信部１１０またはサーバ受信部１３０からメッセージを入力し、当該メッセージを入力順に蓄積する。
メッセージ生成部１５３は、入力キュー１５２からメッセージを取り出し、当該メッセージに基づいて他のプロトコルのメッセージを生成する。すなわち、メッセージ生成部１５３は、入力キュー１５２から取り出したメッセージがＳＩＰメッセージであった場合、当該ＳＩＰメッセージに基づいてＨＴＴＰメッセージを生成する。他方、メッセージ生成部１５３は、入力キュー１５２から取り出したメッセージがＨＴＴＰメッセージであった場合、当該ＨＴＴＰメッセージに基づいてＳＩＰメッセージを生成する。なお、本明細書中で、「取り出す」とは、キューが最初に入力した情報を読み出し、当該キューから読み出した情報を削除する動作のことをいう。
【００３２】
パケット生成部１５４は、サーバ情報記憶部１５１が記憶する追加番号、ＩＰアドレス及びポート番号に基づいて、メッセージ生成部１５３が生成したメッセージを格納したパケットを生成する。
サーバ利用判定部１５５は、パケット生成部１５４からパケットを入力し、サーバ情報記憶部１５１が記憶する料金の支払の有無及び利用可能時間帯に基づいて、入力したパケットの送信先または送信元となるサーバ装置３００が現在利用可能であるか否かを判定する。また、サーバ利用判定部１５５は、サーバ装置３００が利用可能であると判定した場合に、入力したパケットを出力キュー１５６に出力する。
出力キュー１５６は、サーバ利用判定部１５５からパケットを入力し、当該パケットを入力順に蓄積する。
【００３３】
履歴管理部１６０は、送受信履歴記憶部１６１、ＩＤ生成部１６２、履歴登録部１６３を備える。
送受信履歴記憶部１６１は、パケットの受信履歴を示す受信履歴テーブル、受信したパケットが示すコンテンツの情報を示すコンテンツ情報テーブル、送信したパケットの情報を示す送信情報テーブルを記憶する。
ＩＤ生成部１６２は、クライアント受信部１１０またはサーバ受信部１３０がパケットを受信すると、当該パケットに格納されたメッセージを特定するメッセージＩＤを生成する。
履歴登録部１６３は、クライアント受信部１１０、サーバ送信部１２０、サーバ受信部１３０、クライアント送信部１４０によってメッセージが処理される毎に、送受信履歴記憶部１６１の受信履歴テーブルまたは送信情報テーブルに新たに当該メッセージの情報を登録する。
【００３４】
図６は、送受信履歴記憶部が記憶するテーブルの構成を示す図である。
送受信履歴記憶部１６１のコンテンツ情報テーブルは、図６（ａ）に示すように、受信したメッセージに含まれるコンテンツを特定するコンテンツＩＤ、受信したメッセージに含まれるコンテンツの種別を示すコンテンツタイプ、及びメッセージサイズを関連付けて格納する。
送受信履歴記憶部１６１の受信履歴テーブルは、図６（ｂ）に示すように、受信したメッセージを特定するメッセージＩＤ、受信したメッセージに含まれるコンテンツを特定するコンテンツＩＤ、送受信の種別、メッセージの受信日時、当該メッセージに対する送達確認要求の有無、当該メッセージに対する処理状態を示すステータスを関連付けて格納する。
なお、受信履歴テーブルの「送受信の種別」には、クライアント装置２００からメッセージを受信する処理を示す「振り分け要求」、クライアント装置２００から受信したメッセージをサーバ装置３００に送信する処理を示す「振り分け通知」、サーバ装置３００からメッセージを受信する処理を示す「ＳＭＳ送信」、サーバ装置３００から受信したメッセージをクライアント装置２００に送信する処理を示す「ＳＭＳ通知」、サーバ装置３００に送達確認を送信する処理を示す「ＳＭＳ送達確認」の何れかが格納される。
また、「送達要求の有無」は、ＭＭＳメッセージのＭＭＳヘッダに含まれる情報である。なお、当該ＭＭＳメッセージは、サーバ装置３００が送信するＨＴＴＰメッセージのボディに格納されるものである。
【００３５】
送受信履歴記憶部１６１の送信情報テーブルは、図６（ｃ）に示すように、送信するメッセージを特定するメッセージＩＤ、メッセージＩＤに関連付けられた送信情報のシーケンス番号を示す送信ＩＤ、メッセージの送信元、メッセージの送信先、送受信の種別、当該メッセージに対する処理状態を示すステータス、メッセージの送信日時を関連付けて格納する。
【００３６】
そして、このような構成を備えるゲートウェイ装置１００において、ＳＩＰ受信部１１１は、クライアント装置２００からＳＩＰパケットを受信する。次に、メッセージ生成部１５３は、クライアント受信部１１０が受信したＳＩＰパケットに含まれる追加番号からサーバ装置３００のＩＰアドレスを読み出す。次に、ＨＴＴＰ読出部１２１は、メッセージ生成部１５３が読み出したＩＰアドレスを送信先とするＨＴＴＰヘッダを有し、ＳＩＰ受信部１１１が受信したＳＩＰパケットが示す情報をボディに含むＨＴＴＰパケットを生成する。そして、ＨＴＴＰ送信部１２２は、ＨＴＴＰ読出部１２１が生成したＨＴＴＰパケットをサーバ装置３００に送信する。
これにより、クライアント装置２００はサーバ装置３００とリアルタイムデータ通信を行うことができる。
【００３７】
次に、本実施形態によるゲートウェイ装置１００の動作を説明する。
図７は、第１の実施形態によるゲートウェイ装置のＳＩＰパケット受信時の動作を示すフローチャートである。
まず、クライアント装置２００がゲートウェイ装置１００の追加番号を送信先としてＳＩＰパケットを送信すると、クライアント受信部１１０のＳＩＰ受信部１１１は、クライアント装置２００から当該ＳＩＰパケットの受信を開始する（ステップＳ１０１）。
ＳＩＰ受信部１１１がＳＩＰパケットを受信すると、履歴管理部１６０のＩＤ生成部１６２は、当該ＳＩＰパケットに含まれるメッセージを特定するメッセージＩＤを生成する（ステップＳ１０２）。次に、履歴登録部１６３は、送受信履歴記憶部１６１のコンテンツ情報テーブル及び受信履歴テーブルに、ＳＩＰ受信部１１１が受信したＳＩＰパケットに含まれるＳＩＰメッセージの情報を登録する（ステップＳ１０３）。具体的には、履歴登録部１６３は、以下に示す処理を行うことで送受信履歴記憶部１６１にＳＩＰメッセージの情報を登録する。
【００３８】
まず、履歴登録部１６３は、ＳＩＰ受信部１１１が受信したＳＩＰパケットのペイロード部分からＳＩＰヘッダを読み出す。次に、履歴登録部１６３は、読み出したＳＩＰヘッダからコンテンツタイプ情報とメッセージサイズ情報を読み出す。そして、履歴登録部１６３は、コンテンツ情報テーブルのコンテンツＩＤに、一意な値を割当て、コンテンツ情報テーブルのコンテンツタイプ及びメッセージサイズに、ＳＩＰヘッダから読み出したコンテンツタイプ情報及びメッセージサイズ情報を格納する。
次に、履歴登録部１６３は、受信履歴テーブルのメッセージＩＤにＩＤ生成部１６２が生成したメッセージＩＤを格納し、コンテンツＩＤに、コンテンツ情報テーブルに登録したコンテンツＩＤを格納し、送受信種別に、「振り分け要求」を格納し、受信日時にサーバに有する時刻を格納し、ステータスに「処理中」を格納する。
【００３９】
ステップＳ１０３で履歴登録部１６３が送受信履歴記憶部１６１にＳＩＰメッセージの情報を登録し、ＳＩＰ受信部１１１が一のＳＩＰメッセージを示す一連のＳＩＰパケットを全て受信すると、ＳＩＰ形式チェック部１１２は、ＳＩＰ受信部１１１が受信したＳＩＰパケットからＳＩＰメッセージを復元する（ステップＳ１０４）。次に、ＳＩＰ形式チェック部１１２は、復元したＳＩＰメッセージがＳＩＰフォーマットを満たすか否かを判定する（ステップＳ１０５）。
【００４０】
ＳＩＰ形式チェック部１１２が、ＳＩＰフォーマットを満たしていないと判定した場合（ステップＳ１０５：ＮＯ）、ＳＩＰレスポンス生成部１１３は、要求にエラーがあることを示すＳＩＰレスポンスを生成する（ステップＳ１０６）。そして、クライアント送信部１４０のＳＩＰ送信部１４２は、ＳＩＰレスポンス生成部１１３が生成したＳＩＰレスポンスをクライアント装置２００に送信する（ステップＳ１０７）。
【００４１】
次に、履歴登録部１６３は、送受信履歴記憶部１６１の受信履歴テーブルにＳＩＰメッセージの情報を登録する（ステップＳ１０８）。このとき、履歴登録部１６３は、受信履歴テーブルのメッセージＩＤに、ステップＳ１０２でＩＤ生成部１６２が生成したメッセージＩＤを格納し、送受信種別に「振り分け要求」を格納し、受信日時に現在時刻を格納し、ステータスに、エラーを示す情報を格納する。
そして、履歴登録部１６３がＳＩＰメッセージの情報を登録すると、ゲートウェイ装置１００は、処理を終了する。
【００４２】
他方、ＳＩＰ形式チェック部１１２が、ＳＩＰフォーマットを満たしていると判定した場合（ステップＳ１０５：ＹＥＳ）、ＳＩＰレスポンス生成部１１３は、要求が正常に行われたことを示すＳＩＰレスポンスを生成する（ステップＳ１０９）。そして、クライアント送信部１４０のＳＩＰ送信部１４２は、ＳＩＰレスポンス生成部１１３が生成したＳＩＰレスポンスをクライアント装置２００に送信する（ステップＳ１１０）。
【００４３】
次に、履歴登録部１６３は、送受信履歴記憶部１６１の受信履歴テーブルにＳＩＰメッセージの情報を登録する（ステップＳ１１１）。このとき、履歴登録部１６３は、受信履歴テーブルのメッセージＩＤに、ステップＳ１０２でＩＤ生成部１６２が生成したメッセージＩＤを格納し、送受信種別に「振り分け要求」を格納し、受信日時に現在時刻を格納し、ステータスに「処理済」を格納する。
【００４４】
ステップＳ１１１で履歴登録部１６３がＳＩＰメッセージの情報を登録すると、ＳＩＰ形式チェック部１１２は、ステップＳ１０４で復元したＳＩＰメッセージをルーティング部１５０の入力キュー１５２に登録する（ステップＳ１１２）。
次に、ルーティング部１５０のメッセージ生成部１５３は、入力キュー１５２からＳＩＰメッセージを取り出し、当該ＳＩＰメッセージから送信先を示す追加番号を抽出する（ステップＳ１１３）。次に、メッセージ生成部１５３は、抽出した追加番号と、入力キュー１５２から取り出したＳＩＰメッセージとに基づいて、サーバ装置３００に送信するＨＴＴＰメッセージを生成する（ステップＳ１１４）。例えば、メッセージ生成部１５３が取り出したＳＩＰメッセージがＳＭＳメッセージであった場合、メッセージ生成部１５３は、ＳＭＳメッセージをＭＭＳメッセージに変換し、当該ＭＭＳメッセージを格納したＨＴＴＰメッセージを生成する。
【００４５】
図８は、ＳＩＰメッセージからＨＴＴＰメッセージを生成する例を示す図である。
ここで、ＳＩＰヘッダは、実行するコマンドを示すＭＥＳＳＡＧＥ（本実施形態では、送信先のＳＩＰアドレスが格納される）、送信元を示すＦｒｏｍやＣｏｎｔａｃｔ、送信先を示すＴｏやＲ−ＵＲＩ等、リクエストのシーケンス番号を示すＣｓｅｑ、ボディに格納されるコンテンツの種別を示すＣｏｎｔｅｎｔ−Ｔｙｐｅを格納する。
また、ＨＴＴＰヘッダは、メッセージの送信先となるアプリケーションのＵＲＬを示すＰＯＳＴ、及びボディに格納されるコンテンツの種別を示すＣｏｎｔｅｎｔ−Ｔｙｐｅを格納する。
【００４６】
また、サーバ装置３００へＭＭＳメッセージを送信する場合、ＭＭＳメッセージは、ＨＴＴＰメッセージのボディに格納される。このとき、ＭＭＳメッセージのＭＭＳヘッダは、当該ＭＭＳメッセージの役割を示すＸ−Ｍｍｓ−Ｍｅｓｓａｇｅ−Ｔｙｐｅ、当該ＭＭＳメッセージの属する処理を特定するＸ−Ｍｍｓ−Ｔｒａｎｓａｃｔｉｏｎ−ＩＤ、ＭＭＳのバージョンを示すＸ−Ｍｍｓ−Ｖｅｒｓｉｏｎ、送信元を示すＦｒｏｍ、送信先を示すＴｏ、及びＭＭＳボディに格納されるコンテンツの種別を示すＣｏｎｔｅｎｔ−Ｔｙｐｅを格納する。
【００４７】
ここで、ＭＭＳメッセージを格納したＨＴＴＰメッセージを生成する例を説明する。まず、メッセージ生成部１５３は、図８に示すように、ＳＩＰメッセージのＳＩＰヘッダからＦｒｏｍを抽出し、当該送信元情報をＭＭＳメッセージのＭＭＳヘッダのＦｒｏｍに格納する。また、メッセージ生成部１５３は、ＳＩＰメッセージのＳＩＰヘッダのＭＥＳＳＡＧＥから追加番号を抽出し、当該追加番号をＭＭＳメッセージのＭＭＳヘッダのＴｏに格納する。
次に、メッセージ生成部１５３は、ＳＩＰメッセージのボディに格納された情報を抽出し、当該情報をＭＭＳメッセージのＭＭＳボディに格納する。そして、メッセージ生成部１５３は、生成したＭＭＳメッセージをＨＴＴＰメッセージのボディに格納する。次に、メッセージ生成部１５３は、ステップＳ１１３で抽出した追加番号に関連付けられた通知先ＵＲＬをサーバ情報記憶部１５１から読み出し、ＨＴＴＰメッセージのＨＴＴＰヘッダのＰＯＳＴに、当該通知先ＵＲＬを格納する。
これにより、メッセージ生成部１５３は、ＨＴＴＰメッセージを生成する
【００４８】
ステップＳ１１４でメッセージ生成部１５３がＨＴＴＰメッセージを生成すると、パケット生成部１５４は、ステップＳ１１３でメッセージ生成部１５３が抽出した追加番号に関連付けられたＩＰアドレス及びポート番号をサーバ情報記憶部１５１から読み出す（ステップＳ１１５）。そして、パケット生成部１５４は、読み出したＩＰアドレス及びポート番号に基づいて、メッセージ生成部１５３が生成したＨＴＴＰメッセージからＨＴＴＰパケットを生成する（ステップＳ１１６）。具体的には、パケット生成部１５４は、当該ＨＴＴＰパケットのＴＣＰヘッダの送信先ポート番号に、読み出したポート番号を格納し、ＨＴＴＰパケットのＩＰヘッダの送信先ＩＰアドレスに、読み出したＩＰアドレスを格納する。
【００４９】
次に、サーバ利用判定部１５５は、サーバ情報記憶部１５１が記憶する料金の支払の有無及び利用可能時間帯に基づいて、パケット生成部１５４が生成したＨＴＴＰパケットの送信先のサーバ装置３００が利用可能であるか否かを判定する（ステップＳ１１７）。具体的には、サーバ利用判定部１５５は、パケット生成部１５４が読み出した追加番号に関連付けられた料金の支払の有無及び利用可能時間帯、着信者が通信を拒否している発信者番号情報をサーバ情報記憶部１５１から読み出す。そして、サーバ利用判定部１５５は、読み取った支払の有無が料金を支払っていないことを示す場合、当該サーバ装置３００が利用不可能であると判定する。また、サーバ利用判定部１５５は、現在の時刻が読み取った利用可能時間帯の範囲外を示す場合、当該サーバ装置３００が利用不可能であると判定する。また、受信したＳＩＰメッセージの発信者番号が着信者より通信拒否されている場合や非通知で発信された場合、当該サーバ装置３００が利用不可能であると判定する。つまり、サーバ利用判定部１５５は、読み取った支払の有無が料金を支払っていることを示し、かつ現在の時刻が読み取った利用可能時間帯の範囲内を示し、かつ着信者によって発信者アドレスとの通信を拒否されてない場合に、当該サーバ装置３００が利用可能であると判定する。
【００５０】
サーバ利用判定部１５５が、サーバ装置３００が利用不可能であると判定した場合（ステップＳ１１７：ＮＯ）、ゲートウェイ装置１００は、処理を終了する。
他方、サーバ利用判定部１５５は、サーバ装置３００が利用可能であると判定した場合（ステップＳ１１７：ＹＥＳ）、パケット生成部１５４が生成したＨＴＴＰパケットを出力キュー１５６に登録する（ステップＳ１１８）。
サーバ送信部１２０のＨＴＴＰ読出部１２１は、ルーティング部１５０の出力キュー１５６からＨＴＴＰパケットを取り出す（ステップＳ１１９）。そして、サーバ送信部１２０のＨＴＴＰ送信部１２２は、ＨＴＴＰ読出部１２１が取り出したＨＴＴＰパケットをサーバ装置３００に送信する（ステップＳ１２０）。
【００５１】
次に、履歴登録部１６３は、送受信履歴記憶部１６１の送信情報テーブルにＨＴＴＰメッセージの情報を登録する（ステップＳ１２１）。具体的には、履歴登録部１６３は、送信情報テーブルのメッセージＩＤに、ステップＳ１０２でＩＤ生成部１６２が生成したメッセージＩＤを格納し、送受信種別に「振り分け通知」を格納し、受信日時に現在時刻を格納し、ステータスに「処理中」を格納する。
【００５２】
履歴登録部１６３が、送受信履歴記憶部１６１の送信情報テーブルにＨＴＴＰメッセージの情報を登録すると、サーバ受信部１３０のＨＴＴＰ受信部１３１は、ＨＴＴＰ送信部１２２が送信したＨＴＴＰパケットに対するＨＴＴＰレスポンスの受信を待機する。そして、ＨＴＴＰ受信部１３１は、所定のタイムアウト時間の間にサーバ装置３００からＨＴＴＰレスポンスを受信したか否かを判定する（ステップＳ１２２）。なお、タイムアウト時間とは、ＨＴＴＰ受信部１３１がレスポンスの受信の待機を終了して通信を切断するまでの時間のことである。
【００５３】
ＨＴＴＰ受信部１３１がタイムアウト時間内にサーバ装置３００からＨＴＴＰレスポンスを受信しなかった場合（ステップＳ１２２：ＮＯ）、履歴登録部１６３は、送受信履歴記憶部１６１の送信情報テーブルにＨＴＴＰメッセージの情報を登録する（ステップＳ１２３）。具体的には、履歴登録部１６３は、送信情報テーブルのメッセージＩＤに、ステップＳ１０２でＩＤ生成部１６２が生成したメッセージＩＤを格納し、送受信種別に「振り分け通知」を格納し、受信日時に現在時刻を格納し、ステータスにタイムアウトを示す情報を格納する。そして、ゲートウェイ装置１００は、処理を終了する。
【００５４】
他方、ＨＴＴＰ受信部１３１がサーバ装置３００からＨＴＴＰレスポンスを受信した場合（ステップＳ１２２：ＹＥＳ）、履歴管理部１６０の履歴登録部１６３は、送受信履歴記憶部１６１の送信情報テーブルにＨＴＴＰメッセージの情報を登録する（ステップＳ１２４）。具体的には、履歴登録部１６３は、送信情報テーブルのメッセージＩＤに、ステップＳ１０２でＩＤ生成部１６２が生成したメッセージＩＤを格納し、送受信種別に「振り分け通知」を格納し、受信日時に現在時刻を格納し、ステータスに「処理済」を格納する。
そして、履歴登録部１６３がＨＴＴＰメッセージの情報を登録すると、ゲートウェイ装置１００は、処理を終了する。
上述した処理により、クライアント装置２００は、ゲートウェイ装置１００を介してサーバ装置３００にデータを送信することができる。
【００５５】
次に、サーバ装置３００がクライアント装置２００にデータを送信する場合を説明する。
図９は、本発明の第１の実施形態によるゲートウェイ装置を介して、サーバ装置からクライアント装置へメッセージを伝送する処理の概略を示す図である。
ゲートウェイ装置１００は、サーバ装置３００から送信されたＨＴＴＰメッセージを受信し、応答として処理の成功を示す「２００  ＯＫ」を送信する。次に、ゲートウェイ装置１００は、受信したＨＴＴＰメッセージの内容をＳＩＰによってクライアント装置２００に送信する。
【００５６】
このとき、サーバ装置３００とゲートウェイ装置１００との間で送受信されるＨＴＴＰメッセージには、ＭＭＳメッセージが格納されている。そして、サーバ装置３００からゲートウェイ装置１００に送信されるＭＭＳメッセージのタイプは、ＳＭＳ送信要求を示す「Ｍ−Ｓｅｎｄ．ｒｅｑ」である。また、当該メッセージへの応答としてゲートウェイ装置１００がサーバ装置３００に送信するＭＭＳメッセージのタイプは、送信要求レスポンスを示す「Ｍ−Ｓｅｎｄ．ｃｏｎｆ」である。また、「Ｍ−Ｓｅｎｄ．ｒｅｑ」が送達確認を指定した場合、ゲートウェイ装置１００は、クライアント装置２００から応答を受信したときに、サーバ装置３００に送達確認を示すＭＭＳメッセージである「Ｍ−Ｄｅｒｉｖｅｒｙ．ｉｎｄ」を送信する。
このような処理により、サーバ装置３００はクライアント装置２００にＳＭＳメッセージを送信する。
【００５７】
図１０は、第１の実施形態によるクライアント装置の特定方法を示す図である。
ところで、ＮＧＮとクライアント装置２００などのユーザ端末との間のインターフェースであるＵＮＩは、複数のクライアント装置２００に接続されるケースがある。このとき、サーバ装置は、同一のＵＮＩに接続された複数のクライアント装置２００の中から、メッセージの送信先となるクライアント装置２００を特定する必要がある。
そこで、サーバ装置３００は、クライアント装置２００−１にアクセスする場合、クライアント装置２００−１に割り当てられた追加番号を送信先とするパケットを生成し、ゲートウェイ装置１００に送信する。
【００５８】
ここで、本実施形態による通信方法を用いて、サーバ装置３００がクライアント装置２００−１にＳＭＳメッセージを送信する例を説明する。
まず、サーバ装置３００は、ＭＭＳメッセージの送信先を示すＴｏに、クライアント装置２００−１に割り当てられた追加番号を指定する。次に、サーバ装置は、ゲートウェイ装置１００に当該ＭＭＳメッセージを送信する。
【００５９】
ゲートウェイ装置１００は、サーバ装置３００からＭＭＳメッセージを受信すると、受信したＭＭＳメッセージを読み取り、ＳＩＰメッセージを生成する。次に、受信したＭＭＳのＴｏを読み取り、読み出したＴｏをＲ−ＵＲＩとしたＳＩＰパケットを生成し、当該ＳＩＰパケットをＵＮＩに送信する。
このとき、ＳＩＰパケットのＲ−ＵＲＩは、クライアント装置２００−１に割り当てられた追加番号を示すため、ＵＮＩは、クライアント装置２００−１にＳＩＰパケットを転送する。
このような手順で、サーバ装置３００は、ＭＭＳメッセージの送信先となるクライアント装置２００を特定することができる。
【００６０】
次に、ゲートウェイ装置１００の動作を説明する。
図１１は、第１の実施形態によるゲートウェイ装置のＨＴＴＰパケット受信時の動作を示す第１のフローチャートである。
図１２は、第１の実施形態によるゲートウェイ装置のＨＴＴＰパケット受信時の動作を示す第２のフローチャートである。
サーバ装置３００は、クライアント装置２００に送信するＭＭＳメッセージを格納したＨＴＴＰパケットを、ゲートウェイ装置１００に送信する。なお、ＭＭＳメッセージのＭＭＳヘッダには、送信元としてサーバ装置３００のＩＰアドレスが格納され、送信先としてクライアント装置２００のＵＮＩ番号または追加番号（クライアントアクセス情報）が格納されているものとする。
【００６１】
サーバ装置３００がＨＴＴＰパケットを送信すると、サーバ受信部１３０のＨＴＴＰ受信部１３１は、サーバ装置３００から当該ＨＴＴＰパケットの受信を開始する（ステップＳ２０１）。
ＨＴＴＰ受信部１３１がＨＴＴＰパケットを受信すると、履歴管理部１６０のＩＤ生成部１６２は、当該ＨＴＴＰパケットに含まれるメッセージを特定するメッセージＩＤを生成する（ステップＳ２０２）。次に、履歴登録部１６３は、送受信履歴記憶部１６１のコンテンツ情報テーブル及び受信履歴テーブルに、ＨＴＴＰ受信部１３１が受信したＨＴＴＰパケットに含まれるＨＴＴＰメッセージの情報を登録する（ステップＳ２０３）。具体的には、履歴登録部１６３は、以下に示す処理を行うことで送受信履歴記憶部１６１にＨＴＴＰメッセージの情報を登録する。
【００６２】
まず、履歴登録部１６３は、ＨＴＴＰ受信部１３１が受信したＨＴＴＰパケットのペイロード部分からＨＴＴＰヘッダを読み出す。次に、履歴登録部１６３は、読み出したＨＴＴＰヘッダからコンテンツタイプ情報とメッセージサイズ情報を読み出す。そして、履歴登録部１６３は、コンテンツ情報テーブルのコンテンツＩＤに、一意な値を割当て、コンテンツ情報テーブルのコンテンツタイプ及びメッセージサイズに、ＨＴＴＰヘッダから読み出したコンテンツタイプ情報及びメッセージサイズ情報を格納する。
次に、履歴登録部１６３は、受信履歴テーブルのメッセージＩＤにＩＤ生成部１６２が生成したメッセージＩＤを格納し、コンテンツＩＤに、コンテンツ情報テーブルに登録したコンテンツＩＤを格納し、送受信種別に「ＳＭＳ送信」を格納し、受信日時に現在時刻を格納し、送達確認に、ＨＴＴＰパケットに含まれる送達確認の有無を示す情報を格納し、ステータスに「処理中」を格納する。
【００６３】
ステップＳ２０３で履歴登録部１６３が送受信履歴記憶部１６１にＨＴＴＰメッセージの情報を登録し、ＨＴＴＰ受信部１３１が一のＨＴＴＰメッセージを示す一連のＨＴＴＰパケットを全て受信すると、ＨＴＴＰ形式チェック部１３２は、ＨＴＴＰ受信部１３１が受信したＨＴＴＰパケットからＨＴＴＰメッセージを復元する（ステップＳ２０４）。次に、ＨＴＴＰ形式チェック部１３２は、復元したＨＴＴＰメッセージがＨＴＴＰフォーマットを満たすか否かを判定する（ステップＳ２０５）。
【００６４】
ＨＴＴＰ形式チェック部１３２が、ＨＴＴＰフォーマットを満たしていないと判定した場合（ステップＳ２０５：ＮＯ）、ＨＴＴＰレスポンス生成部１３３は、要求にエラーがあることを示すＨＴＴＰレスポンスを生成する（ステップＳ２０６）。そして、サーバ送信部１２０のＨＴＴＰ送信部１２２は、ＨＴＴＰレスポンス生成部１３３が生成したＨＴＴＰレスポンスをサーバ装置３００に送信する（ステップＳ２０７）。
【００６５】
次に、履歴登録部１６３は、送受信履歴記憶部１６１の受信履歴テーブルにＨＴＴＰメッセージの情報を登録する（ステップＳ２０８）。このとき、履歴登録部１６３は、受信履歴テーブルのメッセージＩＤに、ステップＳ２０２でＩＤ生成部１６２が生成したメッセージＩＤを格納し、送受信種別に「ＳＭＳ送信」を格納し、受信日時に現在時刻を格納し、ステータスに、エラーを示す情報を格納する。
そして、履歴登録部１６３がＨＴＴＰメッセージの情報を登録すると、ゲートウェイ装置１００は、処理を終了する。
【００６６】
他方、ＨＴＴＰ形式チェック部１３２が、ＨＴＴＰフォーマットを満たしていると判定した場合（ステップＳ２０５：ＹＥＳ）、ＨＴＴＰレスポンス生成部１３３は、要求が正常に行われたことを示すＨＴＴＰレスポンスを生成する（ステップＳ２０９）。そして、サーバ送信部１２０のＨＴＴＰ送信部１２２は、ＨＴＴＰレスポンス生成部１３３が生成したＨＴＴＰレスポンスをサーバ装置３００に送信する（ステップＳ２１０）。
【００６７】
次に、履歴登録部１６３は、送受信履歴記憶部１６１の受信履歴テーブルにＨＴＴＰメッセージの情報を登録する（ステップＳ２１１）。このとき、履歴登録部１６３は、受信履歴テーブルのメッセージＩＤに、ステップＳ２０２でＩＤ生成部１６２が生成したメッセージＩＤを格納し、送受信種別に「ＳＭＳ送信」を格納し、送達確認の有無に、ＨＴＴＰメッセージに格納されたＭＭＳメッセージに含まれる送達確認要求の有無を示す情報を格納し、受信日時に現在時刻を格納し、ステータスに「処理済」を格納する。
【００６８】
ステップＳ２１１で履歴登録部１６３がＨＴＴＰメッセージの情報を登録すると、ＨＴＴＰ形式チェック部１３２は、ステップＳ２０５で復元したＨＴＴＰメッセージに格納されたＭＭＳメッセージに含まれる、送達確認要求の有無を判定する（ステップＳ２１２）。
ＨＴＴＰ形式チェック部１３２が、ＭＭＳメッセージに含まれる送達確認要求が「有」を示すと判定した場合（ステップＳ２１２：ＹＥＳ）、履歴登録部１６３は、送受信履歴記憶部１６１の受信履歴テーブルにＨＴＴＰメッセージの情報を登録する（ステップＳ２１３）。このとき、履歴登録部１６３は、受信履歴テーブルのメッセージＩＤに、ステップＳ２０２でＩＤ生成部１６２が生成したメッセージＩＤを格納し、送受信種別に「ＳＭＳ送達確認」を格納し、送達確認の有無に「有」を格納し、受信日時に現在時刻を格納し、ステータスに「処理中」を格納する。
【００６９】
ＨＴＴＰ形式チェック部１３２が、ＭＭＳメッセージに含まれる送達確認要求が「無」を示すと判定した場合（ステップＳ２１２：ＮＯ）、または、ステップＳ２１３で履歴登録部１６３がＨＴＴＰメッセージの情報を登録した場合、ＨＴＴＰ形式チェック部１３２は、ステップＳ２０４で復元したＨＴＴＰメッセージをルーティング部１５０の入力キュー１５２に登録する（ステップＳ２１４）。次に、ルーティング部１５０のメッセージ生成部１５３は、入力キュー１５２からＨＴＴＰメッセージを取り出し、当該ＨＴＴＰメッセージが格納するＭＭＳヘッダから送信元を示すＩＰアドレスを抽出する（ステップＳ２１５）。
【００７０】
次に、メッセージ生成部１５３は、抽出したＩＰアドレスに関連付けられた追加番号をサーバ情報記憶部１５１から読み出す（ステップＳ２１６）。そして、メッセージ生成部１５３は、読み出した追加番号と、入力キュー１５２から取り出したＨＴＴＰメッセージとに基づいて、クライアント装置２００に送信するＳＩＰメッセージを生成する（ステップＳ２１７）。
【００７１】
図１３は、ＨＴＴＰメッセージからＳＩＰメッセージを生成する例を示す図である。
ここで、ＨＴＴＰメッセージからＳＩＰメッセージを生成する例を説明する。まず、メッセージ生成部１５３は、図１３に示すように、ステップＳ２１５で読み出したＩＰアドレスから変換された追加番号をＳＩＰメッセージのＦｒｏｍに格納する。また、メッセージ生成部１５３は、ＭＭＳメッセージのＭＭＳヘッダのＴｏから宛先番号を抽出し、当該宛先番号をＳＩＰメッセージのＲ−ＵＲＩ、及びＴｏに格納する。
次に、メッセージ生成部１５３は、ＭＭＳメッセージのボディに格納された情報を抽出し、当該情報をＳＩＰメッセージのボディに格納する。
これにより、メッセージ生成部１５３は、ＳＩＰメッセージを生成する。
【００７２】
ステップＳ２１４でメッセージ生成部１５３がＳＩＰメッセージを生成すると、パケット生成部１５４は、当該ＳＩＰメッセージからＳＩＰパケットを生成する（ステップＳ２１８）。具体的には、パケット生成部１５４は、当該ＳＩＰパケットのＵＤＰヘッダの送信先ポート番号に、Ｐ／Ｉ／Ｓ−ＣＳＣＦのポート番号を格納し、ＳＩＰパケットのＩＰヘッダの送信先ＩＰアドレスに、Ｐ／Ｉ／Ｓ−ＣＳＣＦのＩＰアドレスを格納する。
次に、サーバ利用判定部１５５は、サーバ情報記憶部１５１が記憶する料金の支払の有無及び利用可能時間帯に基づいて、ＨＴＴＰ受信部１３１が受信したＨＴＴＰパケットの送信元のサーバ装置３００が利用可能であるか否かを判定する（ステップＳ２１９）。
【００７３】
サーバ利用判定部１５５は、サーバ装置３００が利用可能であると判定した場合（ステップＳ２１９：ＹＥＳ）、パケット生成部１５４が生成したＨＴＴＰパケットを出力キュー１５６に登録する（ステップＳ２２０）。
クライアント送信部１４０のＳＩＰ読出部１４１は、ルーティング部１５０の出力キュー１５６からＳＩＰパケットを取り出す（ステップＳ２２１）。そして、ＳＩＰ送信部１４２は、ＳＩＰ読出部１４１が取り出したＳＩＰパケットをクライアント装置２００に送信する（ステップＳ２２２）。
【００７４】
次に、履歴登録部１６３は、送受信履歴記憶部１６１の送信情報テーブルにＳＩＰメッセージの情報を登録する（ステップＳ２２３）。具体的には、履歴登録部１６３は、送信情報テーブルのメッセージＩＤに、ステップＳ２０２でＩＤ生成部１６２が生成したメッセージＩＤを格納し、送受信種別に「ＳＭＳ通知」を格納し、受信日時に現在時刻を格納し、ステータスに「処理中」を格納する。
【００７５】
履歴登録部１６３が、送受信履歴記憶部１６１の送信情報テーブルにＳＩＰメッセージの情報を登録すると、クライアント受信部１１０のＳＩＰ受信部１１１は、ＳＩＰ送信部１４２が送信したＳＩＰパケットに対するＳＩＰレスポンスの受信を待機する。そして、ＳＩＰ受信部１１１は、所定のタイムアウト時間の間にクライアント装置２００からＳＩＰレスポンスを受信したか否かを判定する（ステップＳ２２４）。なお、タイムアウト時間とは、ＳＩＰ受信部１１１がレスポンスの受信の待機を終了して通信を切断するまでの時間のことである。
【００７６】
ＳＩＰ受信部１１１がタイムアウト時間内にクライアント装置２００からＳＩＰレスポンスを受信しなかった場合（ステップＳ２２４：ＮＯ）、履歴登録部１６３は、送受信履歴記憶部１６１の送信情報テーブルにＳＩＰメッセージの情報を登録する（ステップＳ２２５）。具体的には、履歴登録部１６３は、送信情報テーブルのメッセージＩＤに、ステップＳ２０２でＩＤ生成部１６２が生成したメッセージＩＤを格納し、送受信種別に「ＳＭＳ通知」を格納し、受信日時に現在時刻を格納し、ステータスにタイムアウトを示す情報を格納する。
【００７７】
他方、ＳＩＰ受信部１１１がクライアント装置２００からＳＩＰレスポンスを受信した場合（ステップＳ２２４：ＹＥＳ）、履歴管理部１６０の履歴登録部１６３は、送受信履歴記憶部１６１の送信情報テーブルにＳＩＰメッセージの情報を登録する（ステップＳ１２６）。具体的には、履歴登録部１６３は、送信情報テーブルのメッセージＩＤに、ステップＳ２０２でＩＤ生成部１６２が生成したメッセージＩＤを格納し、送受信種別に「ＳＭＳ通知」を格納し、受信日時に現在時刻を格納し、ステータスに「処理済」を格納する。
【００７８】
ステップＳ２１９で、サーバ利用判定部１５５が、サーバ装置３００が利用不可能であると判定した場合（ステップＳ２１９：ＮＯ）、またはステップＳ２２５もしくはステップＳ２２６で履歴登録部１６３が送受信履歴記憶部１６１の送信情報テーブルにＳＩＰメッセージの情報を登録した場合、ＨＴＴＰ形式チェック部１３２は、ステップＳ２１２で送達確認要求が「有」を示すと判定したか否かを判定する（ステップＳ２２７）。
【００７９】
ＨＴＴＰ形式チェック部１３２が、ステップＳ２１２で送達確認要求が「有」を示すと判定していた場合（ステップＳ２２７：ＹＥＳ）、ＨＴＴＰレスポンス生成部１３３は、送達確認メッセージを生成する（ステップＳ２２８）。そして、ＨＴＴＰ送信部１２２は、ＨＴＴＰレスポンス生成部１３３が生成した送達確認メッセージをサーバ装置３００に送信する（ステップＳ２２９）。
【００８０】
次に、履歴登録部１６３は、送受信履歴記憶部１６１の受信履歴テーブルにＨＴＴＰメッセージの情報を登録する（ステップＳ２３０）。このとき、履歴登録部１６３は、受信履歴テーブルのメッセージＩＤに、ステップＳ２０２でＩＤ生成部１６２が生成したメッセージＩＤを格納し、送受信種別に「ＳＭＳ送達確認」を格納し、送達確認の有無に「有」を格納し、受信日時に現在時刻を格納し、ステータスに「処理済」を格納する。
そして、履歴登録部１６３がＨＴＴＰメッセージの情報を登録すると、ゲートウェイ装置１００は、処理を終了する。
上述した処理により、サーバ装置３００は、ゲートウェイ装置１００を介してクライアント装置２００にデータを送信することができる。
【００８１】
以上、説明したように、本実施形態によれば、ゲートウェイ装置１００は、自装置の追加番号に関連付けてサーバ装置３００のＩＰアドレスを記憶する。そして、クライアント装置２００から受信したＳＩＰメッセージに含まれる追加番号に基づいて、当該ＳＩＰメッセージの送信先のサーバ装置３００を決定する。
そのため、クライアント装置２００は、目的のサーバ装置３００に関連付けられた追加番号を送信先とするＳＩＰメッセージを送信することで、当該ＳＩＰメッセージに含まれる情報を、ゲートウェイ装置１００を介して目的のサーバ装置３００に伝送することができる。
【００８２】
（第２の実施形態）
次に、本発明の第２の実施形態について詳しく説明する。
第１の実施形態によるゲートウェイ装置１００は、１つのＮＧＮのＳＮＩに接続される。そのため、サーバ装置３００は、複数の異なるＮＧＮのそれぞれに対してサービスを提供する場合、それぞれのＮＧＮに接続するゲートウェイ装置１００との通信を行う必要がある。ここでサーバ装置３００は、メッセージの送信先であるクライアント装置２００が、何れのＮＧＮに属しているかを判定できない場合、デフォルトで指定された一のゲートウェイ装置１００を介してメッセージを送信することとなる。このとき、サーバ装置３００が送信したメッセージは、複数のＮＧＮを跨いで伝送されることとなり、不必要にＮＧＮのリソースを消費することとなる。
【００８３】
図１４は、本発明の第２の実施形態によるゲートウェイシステムの構成を示す概略ブロック図である。
そこで、第２の実施形態によるゲートウェイシステム１０は、複数のゲートウェイ装置１００と、メッセージに格納された送信先に基づいて何れのゲートウェイ装置１００にメッセージを転送するかを判定する収容管理装置４００とを備える。これにより、サーバ装置３００が送信したメッセージは、ゲートウェイシステム１０を介して適切なＮＧＮに伝送されることとなり、不必要なリソースの消費を抑制することができる。
【００８４】
図１５は、収容管理装置の構成を示す概略ブロック図である。
収容管理装置４００は、メッセージ受信部４０１（サーバ受信部）、形式チェック部４０２、レスポンス生成部４０３、レスポンス送信部４０４、方路情報記憶部４０５（対応ゲートウェイ記憶部）、方路決定部４０６（ゲートウェイ読み出し部）、サーバ情報記憶部４０７、サーバ利用判定部４０８、メッセージ送信部４０９（転送部）、レスポンス受信部４１０を備える。
メッセージ受信部４０１は、サーバ装置３００からＨＴＴＰパケットを受信する。
形式チェック部４０２は、メッセージ受信部４０１が受信したＨＴＴＰパケットからＨＴＴＰメッセージを復元し、当該ＨＴＴＰメッセージがＨＴＴＰフォーマットを満たすか否かを判定する。
レスポンス生成部４０３は、形式チェック部４０２による判定結果またはレスポンス受信部４１０が受信したＨＴＴＰレスポンスに基づいて、サーバ装置３００に対するＨＴＴＰレスポンスを生成する。
レスポンス送信部４０４は、レスポンス生成部４０３が生成したＨＴＴＰレスポンスをサーバ装置３００に送信する。
【００８５】
図１６は、方路情報記憶部が記憶する情報を示す図である。
方路情報記憶部４０５は、クライアント装置２００のＵＮＩ番号のパターンを示すアドレス情報と、ＨＴＴＰパケットを転送するゲートウェイ装置１００において、メッセージに対する処理を行うアプリケーションのＵＲＬを示す方路ＵＲＬ、ＨＴＴＰパケットを転送するゲートウェイ装置１００のＩＰアドレス、及びＨＴＴＰパケットを転送するゲートウェイ装置１００のポート番号を関連付けて記憶する。
なお、図１６に示す「Ｄｅｆａｕｌｔ」は、クライアント装置２００のＵＮＩ番号が、アドレス情報が示すパターンに合致しなかった場合に参照する値である。
方路決定部４０６は、メッセージ受信部４０１が受信したＨＴＴＰパケットと方路情報記憶部４０５が記憶する情報とに基づいて、ＨＴＴＰパケットを送信するゲートウェイ装置１００を決定する。
【００８６】
図１７は、サーバ情報記憶部が記憶する情報を示す図である。
サーバ情報記憶部４０７は、サーバ装置３００を特定するサーバＩＤ、当該サーバ装置３００が所属する企業の企業名、通信料の請求先となる企業住所、料金の支払の有無、及びサーバ装置３００の利用可能時間帯を関連付けて記憶する。
サーバ利用判定部４０８は、サーバ情報記憶部４０７が記憶する料金の支払の有無及び利用可能時間帯に基づいて、ＨＴＴＰパケットの送信元であるサーバ装置３００が現在利用可能であるか否かを判定する。
メッセージ送信部４０９は、方路決定部４０６が決定したゲートウェイ装置１００にＨＴＴＰパケットを送信する。
レスポンス受信部４１０は、ゲートウェイ装置１００からＨＴＴＰレスポンスを受信する。
【００８７】
次に、収容管理装置４００の動作を説明する。
図１８は、収容管理装置の動作を示すフローチャートである。
サーバ装置３００は、クライアント装置２００に送信するＭＭＳメッセージを格納したＨＴＴＰパケットを、収容管理装置４００に送信する。なお、ＭＭＳメッセージのＭＭＳヘッダには、送信元としてサーバ装置３００のＩＰアドレスが格納され、送信先としてクライアント装置２００の宛先番号または追加番号が格納されているものとする。
【００８８】
サーバ装置３００がＨＴＴＰパケットを送信すると、収容管理装置４００のメッセージ受信部４０１は、サーバ装置３００から当該ＨＴＴＰパケットの受信を開始する（ステップＳ３０１）。
メッセージ受信部４０１が一のＨＴＴＰメッセージを示す一連のＨＴＴＰパケットを全て受信すると、形式チェック部４０２は、メッセージ受信部４０１が受信したＨＴＴＰパケットからＨＴＴＰメッセージを復元する（ステップＳ３０２）。次に、形式チェック部４０２は、復元したＨＴＴＰメッセージがＨＴＴＰフォーマットを満たすか否かを判定する（ステップＳ３０３）。
【００８９】
ＨＴＴＰ形式チェック部１３２は、ＨＴＴＰフォーマットを満たしていると判定した場合（ステップＳ３０３：ＹＥＳ）、復元したＨＴＴＰメッセージに格納されたＭＭＳメッセージのＭＭＳヘッダから送信先を示すＵＮＩ番号を抽出する（ステップＳ３０４）。
次に、方路決定部４０６は、方路情報記憶部４０５が記憶するアドレス情報のうち、抽出したＵＮＩ番号の先頭の数列に一致するものを抽出し、当該アドレス情報に関連付けられたＩＰアドレス及びポート番号を読み出す（ステップＳ３０５）。なお、方路情報記憶部４０５が記憶するアドレス情報のうち、抽出したＵＮＩ番号の先頭の数列に一致するものが存在しない場合、方路決定部４０６は、アドレス情報「Ｄｅｆａｕｌｔ」に関連付けられたＩＰアドレス及びポート番号を読み出す。
【００９０】
次に、方路決定部４０６は、ステップＳ３０２で形式チェック部４０２が復元したＨＴＴＰメッセージからＨＴＴＰパケットを生成する（ステップＳ３０６）。このとき、方路決定部４０６は、ＨＴＴＰパケットのＴＣＰヘッダの送信先ポート番号に、読み出したポート番号を格納し、ＨＴＴＰパケットのＩＰヘッダの送信先ＩＰアドレスに、読み出したＩＰアドレスを格納する。
これにより、ＨＴＴＰメッセージの送信先となるクライアント装置２００が属するＮＧＮに接続しているゲートウェイ装置に、当該ＨＴＴＰメッセージを格納したＨＴＴＰパケットを転送することができる。
【００９１】
次に、サーバ利用判定部４０８は、サーバ情報記憶部４０７が記憶する料金の支払の有無及び利用可能時間帯に基づいて、メッセージ受信部４０１が受信したＨＴＴＰパケットの送信元のサーバ装置３００が利用可能であるか否かを判定する（ステップＳ３０７）。
サーバ利用判定部４０８が、サーバ装置３００が利用可能であると判定した場合（ステップＳ３０７：ＹＥＳ）、メッセージ送信部４０９は、方路決定部４０６が生成したＨＴＴＰパケットをゲートウェイ装置１００に送信する（ステップＳ３０８）。
【００９２】
次に、レスポンス受信部４１０は、メッセージ送信部４０９が送信したＨＴＴＰパケットに対するＨＴＴＰレスポンスの受信を待機する。そして、レスポンス受信部４１０は、所定のタイムアウト時間の間にゲートウェイ装置１００からＨＴＴＰレスポンスを受信したか否かを判定する（ステップＳ３０９）。なお、タイムアウト時間とは、ＳＩＰ受信部１１１がレスポンスの受信の待機を終了して通信を切断するまでの時間のことである。
【００９３】
レスポンス受信部４１０がゲートウェイ装置１００からＨＴＴＰレスポンスを受信した場合（ステップＳ３０９：ＹＥＳ）、レスポンス送信部４０４は、受信したＨＴＴＰレスポンスをサーバ装置３００へ送信する。
ステップＳ３０３で、ＳＩＰ形式チェック部１１２が、ＳＩＰフォーマットを満たしていないと判定した場合（ステップＳ３０３：ＮＯ）、ステップＳ３０７で、サーバ利用判定部１５５が、サーバ装置３００が利用不可能であると判定した場合（ステップＳ３０７：ＮＯ）、またはステップＳ３０９でレスポンス受信部４１０がタイムアウト時間の間にゲートウェイ装置１００からＨＴＴＰレスポンスを受信していない場合（ステップＳ３０９：ＮＯ）、レスポンス生成部４０３は、発生したエラーを示すＨＴＴＰレスポンスを生成する（ステップＳ３１１）。そして、レスポンス送信部４０４は、レスポンス生成部４０３が生成したＨＴＴＰレスポンスをサーバ装置３００に送信する（ステップＳ３１２）。
【００９４】
このように、本実施形態によれば、収容管理装置４００は、一のＮＧＮに属するＵＮＩ番号のパターンと当該ＮＧＮに接続するゲートウェイ装置１００とを関連付けて記憶し、ＭＭＳヘッダの送信先を示すＵＮＩ番号に合致するパターンに関連付けられたゲートウェイ装置１００にＨＴＴＰメッセージを送信する。
そして、ゲートウェイ装置１００は、収容管理装置４００からＨＴＴＰメッセージを受信すると、第１の実施形態に記載した処理により、自装置が属するＮＧＮを介して、クライアント装置２００にＳＩＰメッセージを送信する。
これにより、サーバ装置３００が送信したメッセージは、ゲートウェイシステム１０を介して適切なＮＧＮに伝送されることとなり、不必要なリソースの消費を抑制することができる。
【００９５】
以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
例えば、第１の実施形態では、ゲートウェイ装置１００にアクセスするための複数の異なる識別情報として追加番号を用いる場合を説明したが、これに限られず、他の情報を用いても良い。以下に、他の情報を用いる例を示す。
【００９６】
図１９は、他の実施形態によるゲートウェイ装置を用いたサーバ装置の特定方法を示す第１の図である。
例えば、図１９に示すように、ゲートウェイ装置１００のサーバ情報記憶部１５１が、追加番号に代えて自装置に割り当てられたサブアドレス（ゲートウェイアクセス情報）を記憶する構成を有していても良い。ここで、サブアドレスとは、ＳＮＩ番号に付与する番号であって、当該ＳＮＩ番号が示す回線上に接続されている一の装置を特定する情報のことである。
図１９によれば、ゲートウェイ装置１００は、自装置のサブアドレス「１２３４」に関連付けて、サーバ装置３００−１のＩＰアドレス「ｘｘｘ．ｘｘｘ．ｘｘｘ．ｘｘｘ」を記憶し、自装置のサブアドレス「９８７６」に関連付けて、サーバ装置３００−２のＩＰアドレス「ｙｙｙ．ｙｙｙ．ｙｙｙ．ｙｙｙ」を記憶している。
【００９７】
ここで、クライアント装置２００がサーバ装置３００−１にＳＭＳメッセージを送信する例を説明する。
まず、クライアント装置２００が属するＵＮＩは、Ｒ−ＵＲＩに、ゲートウェイ装置１００のＳＮＩ番号と、サーバ装置３００−１のＩＰアドレスに関連付けられたサブアドレスとを指定したＳＭＳメッセージを生成する。次に、ＵＮＩは、自装置のＵＮＩ番号を収容するＰ／Ｉ／Ｓ−ＣＳＣＦを介してＳＭＳメッセージを送信する。ここで、ＳＭＳメッセージのＴｏやＲ−ＵＲＩ等には、ゲートウェイ装置１００に割り当てられたＳＮＩ番号が含まれるため、ＳＭＳメッセージはゲートウェイ装置１００に送信される。
【００９８】
ゲートウェイ装置１００は、Ｐ／Ｉ／Ｓ−ＣＳＣＦからＳＭＳメッセージを受信すると、受信したＳＭＳメッセージに基づいて、ＨＴＴＰメッセージを生成する。次に、受信したＳＭＳメッセージの宛先情報を格納したＴｏやＲ−ＵＲＩ等を読み取り、当該ＳＩＰヘッダに含まれるサブアドレスに関連付けられたＩＰアドレスを読み出す。そして、ゲートウェイ装置１００は、読み出したＩＰアドレスを送信先としたＨＴＴＰパケットを生成し、当該ＨＴＴＰパケットをＳＭＳ受信通知として送信する。
ここで、ＳＭＳメッセージの宛先情報を格納したＴｏやＲ−ＵＲＩ等に含まれるサブアドレスは、サーバ装置３００−１のＩＰアドレスに関連付けられているため、ゲートウェイ装置１００は、サーバ装置３００−１にＳＭＳ受信通知を送信する。
これにより、ゲートウェイ装置１００は、ＳＩＰメッセージの送信先となるサーバ装置３００を特定することができる。
【００９９】
図２０は、他の実施形態によるゲートウェイ装置を用いたサーバ装置の特定方法を示す第２の図である。
例えば、図２０に示すように、ゲートウェイ装置１００のサーバ情報記憶部１５１が、追加番号に代えて自装置に割り当てられたＳＮＩドメインのサブドメイン（ゲートウェイアクセス情報）を記憶する構成を有していても良い。ここでは、予め、サーバ装置３００毎に異なるサービス属性を示すサブドメインを割り当てておき、当該サブドメインによってサーバ装置３００を識別するものとする。
図２０によれば、ゲートウェイ装置１００は、サブドメイン「ａｂｃｄ」に関連付けて、サーバ装置３００−１のＩＰアドレス「ｘｘｘ．ｘｘｘ．ｘｘｘ．ｘｘｘ」を記憶し、サブドメイン「ｘｙｚ」に関連付けて、サーバ装置３００−２のＩＰアドレス「ｙｙｙ．ｙｙｙ．ｙｙｙ．ｙｙｙ」を記憶している。
【０１００】
ここで、クライアント装置２００がサーバ装置３００−１にＳＭＳメッセージを送信する例を説明する。
まず、クライアント装置２００が属するＵＮＩは、ＴｏやＲ−ＵＲＩ等に、サーバ装置３００−１に割り当てられたホスト名（ＳＮＩドメイン＋サブドメイン）を指定したＳＭＳメッセージを生成する。次に、ＵＮＩは、自装置のＵＮＩ番号を収容するＰ／Ｉ／Ｓ−ＣＳＣＦを介してＳＭＳメッセージを送信する。ここで、ＳＭＳメッセージの宛先情報を格納したＴｏやＲ−ＵＲＩ等は、ゲートウェイ装置１００を示すため、ＳＭＳメッセージはゲートウェイ装置１００に送信される。
【０１０１】
ゲートウェイ装置１００は、Ｐ／Ｉ／Ｓ−ＣＳＣＦからＳＭＳメッセージを受信すると、受信したＳＭＳメッセージに基づいて、ＨＴＴＰメッセージを生成する。次に、受信したＳＭＳメッセージの宛先情報を格納したＴｏやＲ−ＵＲＩ等を読み取り、当該ＳＩＰヘッダに含まれるサブドメインに関連付けられたＩＰアドレスを読み出す。そして、ゲートウェイ装置１００は、読み出したＩＰアドレスを送信先としたＨＴＴＰパケットを生成し、当該ＨＴＴＰパケットをＳＭＳ受信通知として送信する。
ここで、ＳＭＳメッセージの宛先情報を格納したＴｏやＲ−ＵＲＩ等に含まれるサブドメインは、サーバ装置３００−１のＩＰアドレスに関連付けられているため、ゲートウェイ装置１００は、サーバ装置３００−１にＳＭＳ受信通知を送信する。
これにより、ゲートウェイ装置１００は、ＳＩＰメッセージの送信先となるサーバ装置３００を特定することができる。
【０１０２】
図２１は、他の実施形態によるクライアント装置の特定方法を示す図である。
なお、第１の実施形態では、ＵＮＩにクライアント装置２００が複数接続される場合、クライアント装置２００に割り当てられた追加番号によりクライアント装置２００を特定する例を説明したが、これに限られない。例えば、サーバ装置３００は、クライアント装置２００−１にアクセスする際に、クライアント装置２００−１に割り当てられたサブアドレスを送信先に含めるパケットを生成し、ゲートウェイ装置１００に送信しても良い。
【０１０３】
ここで、サーバ装置３００がクライアント装置２００−１にＳＭＳメッセージを送信する例を説明する。
まず、サーバ装置３００は、ＭＭＳメッセージの送信先を示すＴｏに、ゲートウェイ装置のＳＮＩ番号とクライアント装置２００−１に割り当てられたサブアドレスとを指定する。次に、サーバ装置は、ゲートウェイ装置１００に当該ＭＭＳメッセージを送信する。
【０１０４】
ゲートウェイ装置１００は、サーバ装置３００からＭＭＳメッセージを受信すると、受信したＭＭＳメッセージを読み取り、ＳＩＰメッセージを生成する。次に、受信したＭＭＳのＴｏを読み取り、読み出したＴｏをＲ−ＵＲＩとしたＳＩＰパケットを生成し、当該ＳＩＰパケットをＵＮＩに送信する。
このとき、ＳＩＰパケットのＲ−ＵＲＩには、クライアント装置２００−１に割り当てられたサブアドレスが含まれるため、ＵＮＩは、クライアント装置２００−１にＳＩＰパケットを転送する。
このような手順で、サーバ装置３００は、ＭＭＳメッセージの送信先となるクライアント装置２００を特定することができる。
【０１０５】
上述のゲートウェイ装置１００、収容管理装置４００は内部に、コンピュータシステムを有している。そして、上述した各処理部の動作は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
【０１０６】
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【符号の説明】
【０１０７】
１０…ゲートウェイシステム  １００、１００−１、１００−２…ゲートウェイ装置  １１０…クライアント受信部  １１１…ＳＩＰ受信部  １１２…ＳＩＰ形式チェック部  １１３…ＳＩＰレスポンス生成部  １２０…サーバ送信部  １２１…ＨＴＴＰ読出部  １２２…ＨＴＴＰ送信部  １３０…サーバ受信部  １３１…ＨＴＴＰ受信部  １３２…ＨＴＴＰ形式チェック部  １３３…ＨＴＴＰレスポンス生成部  １４０…クライアント送信部  １４１…ＳＩＰ読出部  １４２…ＳＩＰ送信部  １５０…ルーティング部  １５１…サーバ情報記憶部  １５２…入力キュー  １５３…メッセージ生成部  １５４…パケット生成部  １５５…サーバ利用判定部  １５６…出力キュー  １６０…履歴管理部  １６１…送受信履歴記憶部  １６２…ＩＤ生成部  １６３…履歴登録部  ２００、２００−１、２００−２…クライアント装置  ３００、３００−１、３００−２…サーバ装置  ４００…収容管理装置  ４０１…メッセージ受信部  ４０２…形式チェック部  ４０３…レスポンス生成部  ４０４…レスポンス送信部  ４０５…方路情報記憶部  ４０６…方路決定部  ４０７…サーバ情報記憶部  ４０８…サーバ利用判定部  ４０９…メッセージ送信部  ４１０…レスポンス受信部
【図１】
2011176774.tif 000003
【図２】
2011176774.tif 000004
【図３】
2011176774.tif 000005
【図４】
2011176774.tif 000006
【図５】
2011176774.tif 000007
【図６】
2011176774.tif 000008
【図７】
2011176774.tif 000009
【図８】
2011176774.tif 000010
【図９】
2011176774.tif 000011
【図１０】
2011176774.tif 000012
【図１１】
2011176774.tif 000013
【図１２】
2011176774.tif 000014
【図１３】
2011176774.tif 000015
【図１４】
2011176774.tif 000016
【図１５】
2011176774.tif 000017
【図１６】
2011176774.tif 000018
【図１７】
2011176774.tif 000019
【図１８】
2011176774.tif 000020
【図１９】
2011176774.tif 000021
【図２０】
2011176774.tif 000022
【図２１】
2011176774.tif 000023