(57)【要約】【課題】固定グローバルＩＰアドレスを有するホスト・サーバと、固定グローバルＩＰアドレスを有しないがユニークな擬似固定グローバルアドレス名が割り当てられた複数のローカル・サーバとの間で、相互に安全かつ一意的なＨＴＴＰ通信を実現する。【解決手段】ローカル・サーバとホスト・サーバとの間でトンネリング・セッションを確立し、当該トンネリング・セッションで使用されている動的ＩＰアドレスが対応付けられた擬似固定グローバルアドレス名に宛ててカプセル化したＨＴＴＰリクエストをトンネリング・セッションを通じて対応する動的ＩＰアドレスを使用してローカル・サーバに送信し、ローカル・サーバはカプセル化を解除して回復したＨＴＴＰリクエストに対するＨＴＴＰレスポンスを逆経路に送信する。【選択図】          図１
2004158923.tif 000002
【特許請求の範囲】
【請求項１】
固定グローバルＩＰアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のローカル・サーバと、
固定グローバルＩＰアドレスを有し、前記インターネットに接続されたホスト・サーバと、を具備し、
前記ローカル・サーバは、
トンネリング・セッションを前記ホスト・サーバとの間に確立するトンネリング・セッション確立手段と、
前記インターネットからのＨＴＴＰリクエストがカプセル化されたものであるカプセル化ＨＴＴＰリクエストを前記ホスト・サーバから前記トンネリング・セッションを通じて受信するカプセル化ＨＴＴＰリクエスト受信手段と、
受信した前記カプセル化ＨＴＴＰリクエストから前記ＨＴＴＰリクエストを回復するＨＴＴＰリクエスト回復手段と、
回復した前記ＨＴＴＰリクエストに対する応答であるＨＴＴＰレスポンスを取得するＨＴＴＰレスポンス取得手段と、
前記ＨＴＴＰレスポンスをカプセル化することによってカプセル化ＨＴＴＰレスポンスを生成するＨＴＴＰレスポンスカプセル化手段と、
前記カプセル化ＨＴＴＰレスポンスを前記トンネリング・セッションを通じて前記ホスト・サーバに向けて送信するカプセル化ＨＴＴＰレスポンス送信手段と、を有し、及び
前記ホスト・サーバは、
前記擬似固定グローバルアドレス名の前記ローカル・サーバに関してユニークな部分を、当該擬似固定グローバルアドレス名が割り当てられたローカル・サーバとの間のトンネリング・セッションで当該ローカル・サーバに対して使用されている前記動的ＩＰアドレスと関連付けて記憶するローカル・アドレス記憶手段と、
前記インターネットから前記擬似固定グローバルアドレス名を宛先とするＨＴＴＰリクエストを受信するＨＴＴＰリクエスト受信手段と、
受信した前記ＨＴＴＰリクエストの宛先である擬似固定グローバルアドレス名から、前記ローカル・アドレス記憶手段に記憶された情報に基づいて、当該擬似固定グローバルアドレス名が割り当てられた前記ローカル・サーバとの間の前記トンネリング・セッションで当該ローカル・サーバに対して使用されている前記動的ＩＰアドレスを特定する動的ＩＰアドレス特定手段と、
受信した前記ＨＴＴＰリクエストをカプセル化することによってカプセル化ＨＴＴＰリクエストを生成するＨＴＴＰリクエストカプセル化手段と、
前記カプセル化ＨＴＴＰリクエストを、特定された前記動的ＩＰアドレスを使用している前記トンネリング・セッションを通じて前記ローカル・サーバに送信するカプセル化ＨＴＴＰリクエスト送信手段と、
前記カプセル化ＨＴＴＰレスポンスを前記ローカル・サーバから前記トンネリング・セッションを通じて受信するカプセル化ＨＴＴＰレスポンス受信手段と、受信した前記カプセル化ＨＴＴＰレスポンスから前記ＨＴＴＰレスポンスを回復するＨＴＴＰレスポンス回復手段と、
回復した前記ＨＴＴＰレスポンスを前記インターネットに送信するＨＴＴＰレスポンス送信手段と、を有することを特徴とするＨＴＴＰセッション・トンネリング・システム。
【請求項２】
固定グローバルＩＰアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のルータと、
前記ルータのＬＡＮ側に接続され、当該ＬＡＮ内で通用するプライベートＩＰアドレスが当該ルータから割り当てられたローカル・サーバと、
固定グローバルＩＰアドレスを有し、前記インターネットに接続されたホスト・サーバと、を具備し、
前記ローカル・サーバは、
トンネリング・セッションを、前記ルータを介して前記ホスト・サーバとの間に確立するトンネリング・セッション確立手段と、
前記インターネットからのＨＴＴＰリクエストがカプセル化されたものであるカプセル化ＨＴＴＰリクエストを前記ホスト・サーバから前記トンネリング・セッションを通じて受信するカプセル化ＨＴＴＰリクエスト受信手段と、
受信した前記カプセル化ＨＴＴＰリクエストから前記ＨＴＴＰリクエストを回復するＨＴＴＰリクエスト回復手段と、
回復した前記ＨＴＴＰリクエストに対する応答であるＨＴＴＰレスポンスを取得するＨＴＴＰレスポンス取得手段と、
前記ＨＴＴＰレスポンスをカプセル化することによってカプセル化ＨＴＴＰレスポンスを生成するＨＴＴＰレスポンスカプセル化手段と、
前記カプセル化ＨＴＴＰレスポンスを前記トンネリング・セッションを通じて前記ホスト・サーバに向けて送信するカプセル化ＨＴＴＰレスポンス送信手段と、を有し、
前記ホスト・サーバは、
前記擬似固定グローバルアドレス名の前記ルータに関してユニークな部分を、当該擬似固定グローバルアドレス名が割り当てられた前記ルータを介してインターネットに接続される前記ローカル・サーバとの間のトンネリング・セッションで当該ルータに対して使用されている前記動的ＩＰアドレスと関連付けて記憶するローカル・アドレス記憶手段と、
前記インターネットから前記擬似固定グローバルアドレス名を宛先とするＨＴＴＰリクエストを受信するＨＴＴＰリクエスト受信手段と、
受信した前記ＨＴＴＰリクエストの宛先である擬似固定グローバルアドレス名から、前記ローカル・アドレス記憶手段に記憶された情報に基づいて、当該擬似固定グローバルアドレス名が割り当てられた前記ローカル・サーバとの間の前記トンネリング・セッションで当該ルータに対して使用されている前記動的ＩＰアドレスを特定する動的ＩＰアドレス特定手段と、
受信した前記ＨＴＴＰリクエストをカプセル化することによってカプセル化ＨＴＴＰリクエストを生成するＨＴＴＰリクエストカプセル化手段と、
前記カプセル化ＨＴＴＰリクエストを、前記トンネリング・セッションを通じて前記動的ＩＰアドレスを使用している前記ルータに送信するカプセル化ＨＴＴＰリクエスト送信手段と、
前記カプセル化ＨＴＴＰレスポンスを前記ローカル・サーバから前記トンネリング・セッションを通じて受信するカプセル化ＨＴＴＰレスポンス受信手段と、
受信した前記カプセル化ＨＴＴＰレスポンスから前記ＨＴＴＰレスポンスを回復するＨＴＴＰレスポンス回復手段と、
回復した前記ＨＴＴＰレスポンスを前記インターネットに送信するＨＴＴＰレスポンス送信手段と、を有し、及び
前記ルータは、
当該ルータを通過する前記カプセル化リクエスト及び前記カプセル化レスポンスを含むパケットの宛先アドレス及び送信元アドレスに関して、前記ローカル・サーバに割り当てられている前記プライベートＩＰアドレスと、当該ルータに割り当てられている前記動的ＩＰアドレスとを、対応関係を維持した上で相互に変換するアドレス変換手段、を有することを特徴とするＨＴＴＰセッション・トンネリング・システム。
【請求項３】
前記擬似固定グローバルアドレス名の少なくとも一部は、ドメイン名によって表現されるものであり、かつ、当該擬似固定グローバルアドレス名の内で前記ホスト・サーバを識別する領域以外の部分は、前記インターネット上のＤＮＳサーバによっては名前解決がされないことを特徴とする請求項１又は２に記載のＨＴＴＰセッション・トンネリング・システム。
【請求項４】
前記トンネリング・セッションは、前記ＨＴＴＰリクエストに依存されないＴＣＰセッションであることを特徴とする請求項１から３のいずれか１項に記載のＨＴＴＰセッション・トンネリング・システム。
【請求項５】
前記トンネリング・セッションは、暗号化通信を使用して実施されることを特徴とする請求項１から４のいずれか１項に記載のＨＴＴＰセッション・トンネリング・システム。
【請求項６】
前記ローカル・サーバは、前記カプセル化ＨＴＴＰリクエストに含まれる特定のリクエストに応答して、外部機器の制御信号を出力することを特徴とする請求項１から５のいずれか１項に記載のＨＴＴＰセッション・トンネリング・システム。
【請求項７】
前記ローカル・サーバは、外部機器から入力された信号を表わす情報を前記カプセル化ＨＴＴＰレスポンスに含ませることを特徴とする請求項１から６のいずれか１項に記載のＨＴＴＰセッション・トンネリング・システム。
【請求項８】
前記ホスト・サーバは、前記インターネットからの前記擬似固定グローバルアドレス名を宛先とする前記ローカル・サーバに宛てたＨＴＴＰリクエストを認証するＨＴＴＰリクエスト認証手段を更に有することを特徴とする請求項１から７のいずれか１項に記載のＨＴＴＰセッション・トンネリング・システム。
【請求項９】
前記ＨＴＴＰリクエスト認証手段は、前記ＨＴＴＰリクエストに含まれる発信元の識別情報を使用して当該ＨＴＴＰリクエストを認証することを特徴とする請求項１から８のいずれか１項に記載のＨＴＴＰセッション・トンネリング・システム。
【請求項１０】
前記ＨＴＴＰリクエストの発信元はＷＷＷブラウジング機能を有する携帯電話機であり、及び前記ＨＴＴＰリクエスト認証手段が使用する前記発信元の識別情報は、当該携帯電話機のＩＤ情報に基づくものであることを特徴とする請求項１から９のいずれか１項に記載のＨＴＴＰセッション・トンネリング・システム。
【請求項１１】
固定グローバルＩＰアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のローカル・サーバと、固定グローバルＩＰアドレスを有し、前記インターネットに接続されたホスト・サーバとの間で、トンネリング・セッションを確立するステップと、
前記擬似固定グローバルアドレス名の前記ローカル・サーバに関してユニークな部分を、当該擬似固定グローバルアドレス名が割り当てられたローカル・サーバとの間のトンネリング・セッションで当該ローカル・サーバに対して使用されている前記動的ＩＰアドレスと関連付けて記憶するステップと、
前記インターネットから前記擬似固定グローバルアドレス名を宛先とするＨＴＴＰリクエストを受信するステップと、
受信した前記ＨＴＴＰリクエストの宛先である擬似固定グローバルアドレス名から、記憶された前記擬似固定グローバルアドレス名と前記動的ＩＰアドレスとの関係に関する情報に基づいて、当該擬似固定グローバルアドレス名が割り当てられた前記ローカル・サーバとの間の前記トンネリング・セッションで当該ローカル・サーバに対して使用されている前記動的ＩＰアドレスを特定するステップと、
受信した前記ＨＴＴＰリクエストをカプセル化することによってカプセル化ＨＴＴＰリクエストを生成するステップと、
前記カプセル化ＨＴＴＰリクエストを、特定された前記動的ＩＰアドレスを使用している前記トンネリング・セッションを通じて前記ホスト・サーバから前記ローカル・サーバに送信するステップと、
前記カプセル化ＨＴＴＰリクエストを前記ホスト・サーバから前記トンネリング・セッションを通じて前記ローカル・サーバが受信するステップと、
受信した前記カプセル化ＨＴＴＰリクエストから前記ＨＴＴＰリクエストを回復するステップと、
回復した前記ＨＴＴＰリクエストに対する応答であるＨＴＴＰレスポンスを取得するステップと、
前記ＨＴＴＰレスポンスをカプセル化することによってカプセル化ＨＴＴＰレスポンスを生成するステップと、
前記カプセル化ＨＴＴＰレスポンスを前記トンネリング・セッションを通じて前記ホスト・サーバに送信するステップと、
前記カプセル化ＨＴＴＰレスポンスを前記ローカル・サーバから前記トンネリング・セッションを通じて前記ホスト・サーバが受信するステップと、
受信した前記カプセル化ＨＴＴＰレスポンスから前記ＨＴＴＰレスポンスを回復するステップと、
回復した前記ＨＴＴＰレスポンスを前記インターネットに送信するステップと、を有することを特徴とするＨＴＴＰセッション・トンネリング方法。
【請求項１２】
固定グローバルＩＰアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のローカル・サーバと、固定グローバルＩＰアドレスを有し、前記インターネットに接続されたホスト・サーバとの間で、トンネリング・セッションを確立するステップと、
前記インターネットからのＨＴＴＰリクエストがカプセル化されたものであるカプセル化ＨＴＴＰリクエストを前記ホスト・サーバから前記トンネリング・セッションを通じて受信するステップと、
受信した前記カプセル化ＨＴＴＰリクエストから前記ＨＴＴＰリクエストを回復するステップと、
回復した前記ＨＴＴＰリクエストに対する応答であるＨＴＴＰレスポンスを取得するステップと、
前記ＨＴＴＰレスポンスをカプセル化することによってカプセル化ＨＴＴＰレスポンスを生成するステップと、
前記カプセル化ＨＴＴＰレスポンスを前記トンネリング・セッションを通じて前記ホスト・サーバに送信するステップと、を前記ローカル・サーバに実行させることを特徴とするＨＴＴＰセッション・トンネリング・プログラム。
【請求項１３】
固定グローバルＩＰアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のローカル・サーバと、固定グローバルＩＰアドレスを有し、前記インターネットに接続されたホスト・サーバとの間で、トンネリング・セッションを確立するステップと、
前記擬似固定グローバルアドレス名の前記ローカル・サーバに関してユニークな部分を、当該擬似固定グローバルアドレス名が割り当てられたローカル・サーバとの間のトンネリング・セッションで当該ローカル・サーバに対して使用されている前記動的ＩＰアドレスと関連付けて記憶するステップと、
前記インターネットから前記擬似固定グローバルアドレス名を宛先とするＨＴＴＰリクエストを受信するステップと、
受信した前記ＨＴＴＰリクエストの宛先である擬似固定グローバルアドレス名から、前記ローカル・アドレス記憶手段に記憶された情報に基づいて、当該擬似固定グローバルアドレス名が割り当てられた前記ローカル・サーバとの間の前記トンネリング・セッションで当該ローカル・サーバに対して使用されている前記動的ＩＰアドレスを特定するステップと、
受信した前記ＨＴＴＰリクエストをカプセル化することによってカプセル化ＨＴＴＰリクエストを生成するステップと、
前記カプセル化ＨＴＴＰリクエストを、特定された前記動的ＩＰアドレスを使用している前記トンネリング・セッションを通じて前記ローカル・サーバに送信するステップと、
前記ＨＴＴＰリクエストに対する応答であるＨＴＴＰレスポンスをカプセル化したカプセル化ＨＴＴＰレスポンスを前記ローカル・サーバから前記トンネリング・セッションを通じて受信するステップと、
受信した前記カプセル化ＨＴＴＰレスポンスから前記ＨＴＴＰレスポンスを回復するステップと、
回復した前記ＨＴＴＰレスポンスを前記インターネットに送信するステップと、を前記ホスト・サーバに実行させることを特徴とするＨＴＴＰセッション・トンネリング・プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、セッション・トンネリング・システムに関し、より詳しくは、固定グローバルＩＰアドレスを有するホスト・サーバと、固定グローバルＩＰアドレスを有しないがユニークな擬似固定グローバルアドレス名が割り当てられた複数のローカル・サーバとの間で、相互に安全かつ一意的なＨＴＴＰ通信を実現するＨＴＴＰセッション・トンネリング・システムに関する。
【０００２】
【従来の技術】
インターネット上で固定されたグローバルなアドレスを有していると、当該アドレスに容易にアクセスすることができるし、当該グローバルなアドレスとの間で相互に一意的なプライベート・ネットワークのような通信環境を構築することもできる。ここでグローバルなアドレスとは、インターネット上で通用する、固定ＩＰアドレス、あるいは固定ドメイン名のことをいう。ドメイン名は、ＤＮＳ（ドメイン・ネーム・システム）によってＩＰアドレスと一意的に対応付けられている。一般的なインターネット・サービス・プロバイダ（以下、ＩＳＰ）へのダイヤルアップ接続では、接続のたびに異なる動的ＩＰアドレスがＩＳＰのサーバから通信端末（クライアント又はサーバ）に付与されることが通常であり、固定ＩＰアドレスはもちろんのこと、固定ドメイン名を取得することも通常の方法では難しい。なお、固定グローバルＩＰアドレスを有しないが、Ｗｅｂサーバとして機能するサーバのことを本明細書では「ローカル・サーバ」と呼ぶことにする。グローバルなアドレスを取得して自己の有するローカル・サーバに割り当てるためには基本的には常時接続の環境、ある程度の費用、および手間が必要であり、それは一般的なことではない。従って、固定のグローバルなアドレスをダイヤルアップ接続のＴＣＰ／ＩＰセッションに動的に割り当てることなどによって、固定のグローバルなアドレスを実現することができると非常に便利である。本明細書では、そのようにしてＤＮＳなどの通常の方法によらずに実現されるグローバルなアドレスのことを「擬似固定グローバルアドレス名」と呼ぶことにする。このような擬似固定グローバルアドレス名の一類型としての固定ドメイン名を実現するための１つの方法として、ダイナミックＤＮＳ（Ｄｙｎａｍｉｃ  Ｄｏｍａｉｎ  Ｎａｍｅ  Ｓｙｓｔｅｍ）による方法がある。これは、動的ＩＰアドレスの変更に応じてＤＮＳデータベースを動的に更新し、それを他のＤＮＳサーバに通知したり、または変更箇所だけを転送する技術である。これと、動的ＩＰアドレスをアクセス端末に付与するＤＨＣＰ（Ｄｙｎａｍｉｃ  Ｈｏｓｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）サーバとを連携させることで、ローカル・サーバへの動的ＩＰアドレスの割り当ててとともに固定ドメイン名を当該動的ＩＰアドレスに対して対応付けることができる。なおダイナミックＤＮＳは、ＲＦＣ２１３６で規定された「ＤＮＳ  Ｕｐｄａｔｅ」の一般的な呼称である。
【０００３】
また、近年、動的ＩＰアドレスをリースしているＡＤＳＬルータが一般家庭に設置されることが増えてきている。しかし、ＩＰアドレスを使用したアクセスという観点からＡＤＳＬルータについて考察すると、ＡＤＳＬルータのＬＡＮ側には固定グローバルＩＰアドレスを割り当てられた通信端末が接続されることは極めて稀である。そのような状況で、仮にＡＤＳＬルータに通信を試みてパケットが到達したとしても、ＩＰアドレスはＡＤＳＬルータまでの道のりしか示していないため、そこからＬＡＮ側に送信するための指針がないばかりか、ＡＤＳＬルータはＬＡＮ側機器とインターネット側との間のＴＣＰセッションの確立を認識していないため、ＡＤＳＬルータに到達したパケットは、通常、そこで破棄される。破棄を回避するためには、ＡＤＳＬルータの設定を変更する必要があるが、これは高度に技術的なことであり、一般的ではない。
【０００４】
また、一意的な通信という観点から、ＶＰＮ（Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ）について考察すると、これは、ある会社の社員が、社外からインターネット網を介して社内のネットワークに接続することを目的とした構成をしており、その際のセキュリティを、接続の認証、暗号化、トンネル化（カプセル化）等の技術によって確保している。しかし、ＶＰＮで接続された社外の通信端末は、社内のネットワーク内に接続されたのと同じ地位を獲得してしまうため、悪意のＶＰＮ利用者は、社内ネットワーク内の他の通信端末に容易に不正アクセスできてしまうという問題点がある。
【０００５】
関連先行技術としては、メッセージ又はフレームを捕獲し、カプセル化し、そして暗号化するための擬似ネットワークアダプタがあり、ここではＤＨＣＰサーバエミュレータ及びＡＲＰサーバエミュレータを備えた擬似ネットワークアダプタが開示されている（例えば、特許文献１参照）。また、他の関連先行技術として、Ｗｅｂ対応携帯電話などの端末によるイントラネットへのリモートアクセスを、端末単体でありながら高いセキュリティを確保した上で行うことの可能なイントラネットリモートアクセス方法があり、ここでは、イントラネット上の機器に対応して割り当てられたＷｅｂ対応携帯電話からの端末ＩＤの入力に伴い、インターネット上のＶＰＮセッション管理サーバからのコマンド制御に応じてＶＰＮゲートウェイとゲートウェイ機器との間にＶＰＮトンネルを設定し、Ｗｅｂ対応携帯電話から端末ＩＤ及び機器名が入力されて、該当する機器に対して所要のアクセスが発生するのに伴い、そのＷｅｂ対応携帯電話に代わり、ＶＰＮセッション管理サーバに、ＶＰＮトンネルを経由した代理アクセスを行わせることが開示されている（例えば、特許文献２参照）。
【０００６】
【特許文献１】
特開平１０−１７８４５０号公報
【特許文献２】
特開２００２−２３２４６０号公報
【０００７】
【発明が解決しようとする課題】
しかし、上述のダイナミックＤＮＳでは、ローカル・サーバのインターネット接続の開始又は終了による動的ＩＰアドレス使用の開始又は終了の時点から、ＤＮＳデータベースが更新されるまでの間に、適切にローカル・サーバへのルーティングを行うことができないという問題がある。従って、ある固定ドメイン名を有するローカル・サーバがインターネットへの接続を終了して、割り当てられた動的ＩＰアドレスの使用を終了した後に、それと同じ動的ＩＰアドレスがＩＳＰのサーバによって他のローカル・サーバに割り当てられたときに、ＤＮＳデータベースにその動的ＩＰアドレスの割り当て変更の通知が届いていないと、同じ固定ドメイン名を指定してそのローカル・サーバと通信をしようとしても、同じ動的ＩＰアドレスを引き継いだ他のローカル・サーバに対して意図せずして通信を試みることになってしまうという不都合があった。また、動的ＩＰアドレスをリースしているＡＤＳＬルータや、ＶＰＮには、そもそも上述のような問題があった。
【０００８】
本発明は、上記の問題に鑑みてなされたものであり、擬似固定グローバルアドレス名を、現在接続しているローカル・サーバに対して割り当てられた動的ＩＰアドレスに対応付け、擬似固定グローバルアドレス名に宛てたＨＴＴＰセッションをカプセル化して当該動的ＩＰアドレスとの間で送受信することによって、相互に安全かつ一意的なＨＴＴＰ通信を実現するものである。このようにカプセル化して送受信する技術を一般的にトンネリングと称するため、本発明に係るシステムのことを、ＨＴＴＰセッション・トンネリング・システムと称する。
【０００９】
【課題を解決するための手段】
上記の課題は以下の特徴を有する本発明によって解決される。請求項１に記載の発明は、固定グローバルＩＰアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のローカル・サーバと、固定グローバルＩＰアドレスを有し、当該インターネットに接続されたホスト・サーバと、を具備し、当該ローカル・サーバは、トンネリング・セッションを当該ホスト・サーバとの間に確立するトンネリング・セッション確立手段と、当該インターネットからのＨＴＴＰリクエストがカプセル化されたものであるカプセル化ＨＴＴＰリクエストを当該ホスト・サーバから当該トンネリング・セッションを通じて受信するカプセル化ＨＴＴＰリクエスト受信手段と、受信した当該カプセル化ＨＴＴＰリクエストから当該ＨＴＴＰリクエストを回復するＨＴＴＰリクエスト回復手段と、回復した当該ＨＴＴＰリクエストに対する応答であるＨＴＴＰレスポンスを取得するＨＴＴＰレスポンス取得手段と、当該ＨＴＴＰレスポンスをカプセル化することによってカプセル化ＨＴＴＰレスポンスを生成するＨＴＴＰレスポンスカプセル化手段と、当該カプセル化ＨＴＴＰレスポンスを当該トンネリング・セッションを通じて当該ホスト・サーバに向けて送信するカプセル化ＨＴＴＰレスポンス送信手段と、を有し、及び当該ホスト・サーバは、当該擬似固定グローバルアドレス名の当該ローカル・サーバに関してユニークな部分を、当該擬似固定グローバルアドレス名が割り当てられたローカル・サーバとの間のトンネリング・セッションで当該ローカル・サーバに対して使用されている当該動的ＩＰアドレスと関連付けて記憶するローカル・アドレス記憶手段と、当該インターネットから当該擬似固定グローバルアドレス名を宛先とするＨＴＴＰリクエストを受信するＨＴＴＰリクエスト受信手段と、受信した当該ＨＴＴＰリクエストの宛先である擬似固定グローバルアドレス名から、当該ローカル・アドレス記憶手段に記憶された情報に基づいて、当該擬似固定グローバルアドレス名が割り当てられた当該ローカル・サーバとの間の当該トンネリング・セッションで当該ローカル・サーバに対して使用されている当該動的ＩＰアドレスを特定する動的ＩＰアドレス特定手段と、受信した当該ＨＴＴＰリクエストをカプセル化することによってカプセル化ＨＴＴＰリクエストを生成するＨＴＴＰリクエストカプセル化手段と、当該カプセル化ＨＴＴＰリクエストを、特定された当該動的ＩＰアドレスを使用している当該トンネリング・セッションを通じて当該ローカル・サーバに送信するカプセル化ＨＴＴＰリクエスト送信手段と、当該カプセル化ＨＴＴＰレスポンスを当該ローカル・サーバから当該トンネリング・セッションを通じて受信するカプセル化ＨＴＴＰレスポンス受信手段と、受信した当該カプセル化ＨＴＴＰレスポンスから当該ＨＴＴＰレスポンスを回復するＨＴＴＰレスポンス回復手段と、回復した当該ＨＴＴＰレスポンスを当該インターネットに送信するＨＴＴＰレスポンス送信手段と、を有することを特徴とする。
【００１０】
請求項２に記載の発明は、固定グローバルＩＰアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のルータと、当該ルータのＬＡＮ側に接続され、当該ＬＡＮ内で通用するプライベートＩＰアドレスが当該ルータから割り当てられたローカル・サーバと、固定グローバルＩＰアドレスを有し、当該インターネットに接続されたホスト・サーバと、を具備し、当該ローカル・サーバは、トンネリング・セッションを、当該ルータを介して当該ホスト・サーバとの間に確立するトンネリング・セッション確立手段と、当該インターネットからのＨＴＴＰリクエストがカプセル化されたものであるカプセル化ＨＴＴＰリクエストを当該ホスト・サーバから当該トンネリング・セッションを通じて受信するカプセル化ＨＴＴＰリクエスト受信手段と、受信した当該カプセル化ＨＴＴＰリクエストから当該ＨＴＴＰリクエストを回復するＨＴＴＰリクエスト回復手段と、回復した当該ＨＴＴＰリクエストに対する応答であるＨＴＴＰレスポンスを取得するＨＴＴＰレスポンス取得手段と、当該ＨＴＴＰレスポンスをカプセル化することによってカプセル化ＨＴＴＰレスポンスを生成するＨＴＴＰレスポンスカプセル化手段と、当該カプセル化ＨＴＴＰレスポンスを当該トンネリング・セッションを通じて当該ホスト・サーバに向けて送信するカプセル化ＨＴＴＰレスポンス送信手段と、を有し、当該ホスト・サーバは、当該擬似固定グローバルアドレス名の当該ルータに関してユニークな部分を、当該擬似固定グローバルアドレス名が割り当てられた当該ルータを介してインターネットに接続される当該ローカル・サーバとの間のトンネリング・セッションで当該ルータに対して使用されている当該動的ＩＰアドレスと関連付けて記憶するローカル・アドレス記憶手段と、当該インターネットから当該擬似固定グローバルアドレス名を宛先とするＨＴＴＰリクエストを受信するＨＴＴＰリクエスト受信手段と、受信した当該ＨＴＴＰリクエストの宛先である擬似固定グローバルアドレス名から、当該ローカル・アドレス記憶手段に記憶された情報に基づいて、当該擬似固定グローバルアドレス名が割り当てられた当該ローカル・サーバとの間の当該トンネリング・セッションで当該ルータに対して使用されている当該動的ＩＰアドレスを特定する動的ＩＰアドレス特定手段と、受信した当該ＨＴＴＰリクエストをカプセル化することによってカプセル化ＨＴＴＰリクエストを生成するＨＴＴＰリクエストカプセル化手段と、当該カプセル化ＨＴＴＰリクエストを、当該トンネリング・セッションを通じて当該動的ＩＰアドレスを使用している当該ルータに送信するカプセル化ＨＴＴＰリクエスト送信手段と、当該カプセル化ＨＴＴＰレスポンスを当該ローカル・サーバから当該トンネリング・セッションを通じて受信するカプセル化ＨＴＴＰレスポンス受信手段と、受信した当該カプセル化ＨＴＴＰレスポンスから当該ＨＴＴＰレスポンスを回復するＨＴＴＰレスポンス回復手段と、回復した当該ＨＴＴＰレスポンスを当該インターネットに送信するＨＴＴＰレスポンス送信手段と、を有し、及び当該ルータは、当該ルータを通過する当該カプセル化リクエスト及び当該カプセル化レスポンスを含むパケットの宛先アドレス及び送信元アドレスに関して、当該ローカル・サーバに割り当てられている当該プライベートＩＰアドレスと、当該ルータに割り当てられている当該動的ＩＰアドレスとを、対応関係を維持した上で相互に変換するアドレス変換手段、を有することを特徴とする。
【００１１】
請求項３に記載の発明は、請求項１又は２に記載の発明の特徴に加えて、当該擬似固定グローバルアドレス名の少なくとも一部は、ドメイン名によって表現されるものであり、かつ、当該擬似固定グローバルアドレス名の内で当該ホスト・サーバを識別する領域以外の部分は、当該インターネット上のＤＮＳサーバによっては名前解決がされないことを特徴とする。
【００１２】
請求項４に記載の発明は、請求項１から３のいずれか１項に記載の発明の特徴に加えて、当該トンネリング・セッションは、当該ＨＴＴＰリクエストに依存されないＴＣＰセッションであることを特徴とする。
【００１３】
請求項５に記載の発明は、請求項１から４のいずれか１項に記載の発明の特徴に加えて、当該トンネリング・セッションは、暗号化通信を使用して実施されることを特徴とする。
【００１４】
請求項６に記載の発明は、請求項１から５のいずれか１項に記載の発明の特徴に加えて、当該ローカル・サーバは、当該カプセル化ＨＴＴＰリクエストに含まれる特定のリクエストに応答して、外部機器の制御信号を出力することを特徴とする。
【００１５】
請求項７に記載の発明は、請求項１から６のいずれか１項に記載の発明の特徴に加えて、当該ローカル・サーバは、外部機器から入力された信号を表わす情報を当該カプセル化ＨＴＴＰレスポンスに含ませることを特徴とする。
【００１６】
請求項８に記載の発明は、請求項１から７のいずれか１項に記載の発明の特徴に加えて、当該ホスト・サーバは、当該インターネットからの当該擬似固定グローバルアドレス名を宛先とする当該ローカル・サーバに宛てたＨＴＴＰリクエストを認証するＨＴＴＰリクエスト認証手段を更に有することを特徴とする。
【００１７】
請求項９に記載の発明は、請求項１から８のいずれか１項に記載の発明の特徴に加えて、当該ＨＴＴＰリクエスト認証手段は、当該ＨＴＴＰリクエストに含まれる発信元の識別情報を使用して当該ＨＴＴＰリクエストを認証することを特徴とする。
【００１８】
請求項１０に記載の発明は、請求項１から９のいずれか１項に記載の発明の特徴に加えて、当該ＨＴＴＰリクエストの発信元はＷＷＷブラウジング機能を有する携帯電話機であり、及び当該ＨＴＴＰリクエスト認証手段が使用する当該発信元の識別情報は、当該携帯電話機のＩＤ情報に基づくものであることを特徴とする。
【００１９】
請求項１１に記載の発明は、固定グローバルＩＰアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のローカル・サーバと、固定グローバルＩＰアドレスを有し、当該インターネットに接続されたホスト・サーバとの間で、トンネリング・セッションを確立するステップと、当該擬似固定グローバルアドレス名の当該ローカル・サーバに関してユニークな部分を、当該擬似固定グローバルアドレス名が割り当てられたローカル・サーバとの間のトンネリング・セッションで当該ローカル・サーバに対して使用されている当該動的ＩＰアドレスと関連付けて記憶するステップと、当該インターネットから当該擬似固定グローバルアドレス名を宛先とするＨＴＴＰリクエストを受信するステップと、受信した当該ＨＴＴＰリクエストの宛先である擬似固定グローバルアドレス名から、記憶された当該擬似固定グローバルアドレス名と当該動的ＩＰアドレスとの関係に関する情報に基づいて、当該擬似固定グローバルアドレス名が割り当てられた当該ローカル・サーバとの間の当該トンネリング・セッションで当該ローカル・サーバに対して使用されている当該動的ＩＰアドレスを特定するステップと、受信した当該ＨＴＴＰリクエストをカプセル化することによってカプセル化ＨＴＴＰリクエストを生成するステップと、当該カプセル化ＨＴＴＰリクエストを、特定された当該動的ＩＰアドレスを使用している当該トンネリング・セッションを通じて当該ホスト・サーバから当該ローカル・サーバに送信するステップと、当該カプセル化ＨＴＴＰリクエストを当該ホスト・サーバから当該トンネリング・セッションを通じて当該ローカル・サーバが受信するステップと、受信した当該カプセル化ＨＴＴＰリクエストから当該ＨＴＴＰリクエストを回復するステップと、回復した当該ＨＴＴＰリクエストに対する応答であるＨＴＴＰレスポンスを取得するステップと、当該ＨＴＴＰレスポンスをカプセル化することによってカプセル化ＨＴＴＰレスポンスを生成するステップと、当該カプセル化ＨＴＴＰレスポンスを当該トンネリング・セッションを通じて当該ホスト・サーバに送信するステップと、当該カプセル化ＨＴＴＰレスポンスを当該ローカル・サーバから当該トンネリング・セッションを通じて当該ホスト・サーバが受信するステップと、受信した当該カプセル化ＨＴＴＰレスポンスから当該ＨＴＴＰレスポンスを回復するステップと、回復した当該ＨＴＴＰレスポンスを当該インターネットに送信するステップと、を有することを特徴とする。
【００２０】
請求項１２に記載の発明は、固定グローバルＩＰアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のローカル・サーバと、固定グローバルＩＰアドレスを有し、当該インターネットに接続されたホスト・サーバとの間で、トンネリング・セッションを確立するステップと、当該インターネットからのＨＴＴＰリクエストがカプセル化されたものであるカプセル化ＨＴＴＰリクエストを当該ホスト・サーバから当該トンネリング・セッションを通じて受信するステップと、受信した当該カプセル化ＨＴＴＰリクエストから当該ＨＴＴＰリクエストを回復するステップと、回復した当該ＨＴＴＰリクエストに対する応答であるＨＴＴＰレスポンスを取得するステップと、当該ＨＴＴＰレスポンスをカプセル化することによってカプセル化ＨＴＴＰレスポンスを生成するステップと、当該カプセル化ＨＴＴＰレスポンスを当該トンネリング・セッションを通じて当該ホスト・サーバに送信するステップと、を当該ローカル・サーバに実行させることを特徴とする。
【００２１】
請求項１３に記載の発明は、固定グローバルＩＰアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のローカル・サーバと、固定グローバルＩＰアドレスを有し、当該インターネットに接続されたホスト・サーバとの間で、トンネリング・セッションを確立するステップと、当該擬似固定グローバルアドレス名の当該ローカル・サーバに関してユニークな部分を、当該擬似固定グローバルアドレス名が割り当てられたローカル・サーバとの間のトンネリング・セッションで当該ローカル・サーバに対して使用されている当該動的ＩＰアドレスと関連付けて記憶するステップと、当該インターネットから当該擬似固定グローバルアドレス名を宛先とするＨＴＴＰリクエストを受信するステップと、受信した当該ＨＴＴＰリクエストの宛先である擬似固定グローバルアドレス名から、当該ローカル・アドレス記憶手段に記憶された情報に基づいて、当該擬似固定グローバルアドレス名が割り当てられた当該ローカル・サーバとの間の当該トンネリング・セッションで当該ローカル・サーバに対して使用されている当該動的ＩＰアドレスを特定するステップと、受信した当該ＨＴＴＰリクエストをカプセル化することによってカプセル化ＨＴＴＰリクエストを生成するステップと、当該カプセル化ＨＴＴＰリクエストを、特定された当該動的ＩＰアドレスを使用している当該トンネリング・セッションを通じて当該ローカル・サーバに送信するステップと、当該ＨＴＴＰリクエストに対する応答であるＨＴＴＰレスポンスをカプセル化したカプセル化ＨＴＴＰレスポンスを当該ローカル・サーバから当該トンネリング・セッションを通じて受信するステップと、受信した当該カプセル化ＨＴＴＰレスポンスから当該ＨＴＴＰレスポンスを回復するステップと、回復した当該ＨＴＴＰレスポンスを当該インターネットに送信するステップと、を当該ホスト・サーバに実行させることを特徴とする。
【００２２】
【発明の実施の形態】
これから図面を参照して、本発明の一実施形態に係るＨＴＴＰセッション・トンネリング・システム１について説明する。まず、ＨＴＴＰセッション・トンネリング・システム１の構成について説明する。図１は、ＨＴＴＰセッション・トンネリング・システム１の構成及び動作を表わすシステム構成・動作図である。ＨＴＴＰセッション・トンネリング・システム１は、ホスト・サーバ２、ローカル・アドレス記憶手段３、トンネリング・セッション４、およびローカル・サーバ５から構成される。他には、外部機器６をローカル・サーバ５に接続することもできる。また、インターネット８を介してアクセス端末７をホスト・サーバ２に接続することができる。図示していないが、ローカル・サーバ５とトンネリング・セッション４との間にルータが介設されていてもよい。
【００２３】
ホスト・サーバ２は、インターネット８に接続されたＷｅｂサーバとしての機能を有し、さらに、ローカル・アドレス記憶手段３と連携して、ＨＴＴＰセッションをトンネリングする各種の手段（請求項に記載のホスト・サーバが有する手段）を実行する構成要素である。ホスト・サーバ２は、個別には図示していないが、記憶手段（ＨＤＤなど）、プログラム実行手段（ＣＰＵ、ＯＳ、ＲＡＭなど）、入出力インターフェース、及びＷＡＮネットワーク接続手段（ゲートウェイなど）を有している。本発明に係る各種の手段又はステップによる機能を実行するためのアプリケーション及びＷｅｂサーバ・アプリケーションが、それを記憶しているＨＤＤからＲＡＭにロードされ、ＣＰＵによってＯＳを仲立ちとして実行される。Ｗｅｂサーバの機能は、ホスト・サーバ２から独立させてもよい。ホスト・サーバ２は、ゲートウェイを通じて、インターネット８を介してアクセス端末７に、及びトンネリング・セッション４を介してローカル・サーバ５に接続される。
【００２４】
ローカル・アドレス記憶手段３は、ローカル・サーバ５のローカル・アドレスを、それに対して使用中の動的ＩＰアドレスに対応付けて記憶する構成要素である。なお、ローカル・サーバ５のＷＡＮ側にルータ（ＡＤＳＬルータなどの、インターネット接続手段を有するルータ）が介設されている場合は、そのルータに動的ＩＰアドレスが割り当てられるため、ローカル・アドレスもその動的ＩＰアドレスに対応付けられて記憶されることとなる（以下、このような場合を「ルータ介設時」と称することとする。）。ルータ介設時においては、ローカル・サーバ５には当該ルータのＬＡＮ側で通用するプライベートＩＰアドレスが割り当てられる。そのようなルータは、当該ルータを通過するパケットの宛先アドレス及び送信元アドレスに関して、ローカル・サーバに割り当てられているプライベートＩＰアドレスと、当該ルータに割り当てられている動的ＩＰアドレスとを、対応関係を維持した上で（ＩＰアドレスに加えてポート番号もその対応関係の識別に使用する場合もある。）相互に変換する機能を有する。このようにすることによって、ホスト・サーバ２は、ローカル・サーバ５と通信する場合であっても、当該ルータまでの経路を認識しているだけで、そのような通信を行うことができるようになる。そのようアドレス変換機能は、ＮＡＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｔｒａｎｓｌａｔｉｏｎ）又はＩＰマスカレードなどの技術を使用して実施することができる。ローカル・アドレス記憶手段３は、個別には図示していないが、記憶媒体（ＨＤＤなど）、プログラム実行手段（ＣＰＵ、ファームウェア、ＲＡＭなど）、入出力インターフェースを有している。データの記憶媒体への書き込み及び読み出しの管理を実行するためのファームウェアが、ＣＰＵによって実行される。ローカル・アドレス記憶手段３は、典型的には外部記憶装置の形態である。ローカル・アドレス記憶手段３は、入出力インターフェースを通じてホスト・サーバ２に接続される。
【００２５】
ここで、ローカル・アドレスとは、ローカル・サーバ５（ルータ介設時は、「ローカル・サーバ５」に代えてその「ルータ」。本明細書において、Ｗｅｂサーバの機能を実行する場合のローカル・サーバ５以外については、以下同様。）に割り当てられた擬似固定グローバルアドレス名の内で特定のローカル・サーバ５に対してユニークなアドレスの部分のことをいう。ローカル・サーバ５はホスト・サーバ２を介してインターネット８に接続される構成であるため、ローカル・サーバ５の擬似固定グローバルアドレス名は、ホスト・サーバ２を識別するためのホスト・アドレスと、（ホスト・サーバ２又はＩＳＰのサーバに）動的ＩＰアドレスが付与されるローカル・サーバ５のそれぞれを識別するためのローカル・アドレスとを組み合わせたものとなる。例えば、ホスト・アドレスを「ｈｏｓｔ＿ａｄｄｒｅｓｓ」と表わし、ローカル・アドレスを「ｌｏｃａｌ＿ａｄｄｒｅｓｓ」と表わすと、擬似固定グローバルアドレス名は、「ｈｔｔｐ：／／ｈｏｓｔ＿ａｄｄｒｅｓｓ／ｌｏｃａｌ＿ａｄｄｒｅｓｓ」とすることができる。この例は、ローカル・アドレスをディレクトリ名又はファイル名とした場合であるが、他には「ｈｔｔｐ：／／ｌｏｃａｌ＿ａｄｄｒｅｓｓ．ｈｏｓｔ＿ａｄｄｒｅｓｓ」のようにサブドメインとすることや、「ｈｔｔｐ：／／ｈｏｓｔ＿ａｄｄｒｅｓｓ：ｌｏｃａｌ＿ａｄｄｒｅｓｓ」のようにポート番号とすることや、それらの任意の組合せなどとすることもできる。
【００２６】
トンネリング・セッション４は、ＴＣＰ／ＩＰによるＷＡＮネットワークの一種であるインターネット８の一部のルートを使用して行われる、動的ＩＰアドレスによる継続的なＴＣＰセッションが伝送されているインターネット８の一部のルートである。このＴＣＰセッションでは、これを継続的に維持するため、一定期間ごとにローカル・サーバ５からホスト・サーバ２に働きかけが行われる。このように、インターネット８の通信網を使用しつつも、プライベートなセッションを張ることができるため、世界中の広範囲な場所にローカル・サーバ５を置くことができ、広範囲な場所からそれにアクセスできるという利便性と、秘匿性とを両立させることができる。トンネリング・セッション４では、通信されるＨＴＴＰのリクエスト又はレスポンスを必要に応じて適宜分割の上、独自のトンネリング・プロトコルに従ったヘッダーをそれらに付すことにより、ＨＴＴＰのリクエスト又はレスポンスのカプセル化を行われる。特にトンネリング・セッション４の前後に暗号化手段及び暗号解読手段を設置することによって、トンネリング・セッション４を暗号化通信を使用して安全に実施することができる。
【００２７】
なお、このトンネリング・セッション４は、ＴＣＰセッションであるため、任意のそれの上位レイヤーのプロトコルによるデータ通信をその上で行うことができる。さらに、トンネリング・セッション４で通信するデータを、その特徴に応じて、例えば「コマンド・フェーズ」及び「メッセージ通信フェーズ」の２つのフェーズに分けることができる。「コマンド・フェーズ」は、ＴＣＰセッションを確立した直後の状態であって、データの書式は行指向であり、コマンドのやり取りは順序よく行われる。このフェーズは、ローカル・サーバ５の識別番号（クライアント番号）及び接続認証キーで認証を行い、未認証、認証中、又は認証済みのいずれかのステータスを有する。「メッセージ通信フェーズ」では、データの書式はヘッダーに長さ情報を持ちレコード指向（ｐａｙｌｏａｄ）である。また、複数のリクエストのバッチ処理を実現するため、他のリクエストとの順序は原則的に保存されない。Ｐａｙｌｏａｄは、メッセージ送信、エラー通知、又は切断の３種類である。トンネリング・セッション４上での通信は、これらの２つのフェーズを適宜使い分けることによって実施される。ＨＴＴＰリクエスト又はＨＴＴＰレスポンスをトンネリング・セッション４を通じて通信するときは、「メッセージ通信フェーズ」で通信が実施される。
【００２８】
ＴＣＰセッションの維持は、例えば、以下のような経路断検出を目的とするキープ・アライブ（Ｋｅｅｐ  Ａｌｉｖｅ）処理によって実施される。まず、キープ・アライブ処理の実行条件として、「前回の処理実行から所定のキープ・アライブ時間が経過」、あるいは「トランザクションの内容に応じて、メッセージ送信のｐａｙｌｏａｄの受信待ちでタイム・アウトが発生」を設定する。そしてその実行条件が満たされたとき、実際のキープ・アライブ処理を以下のようにして実行する。まず、ローカル・サーバ５がキープ・アライブ通信トランザクションを開始し、ホスト・サーバ２に対してキープ・アライブ・メッセージを送信する。それを受信したホスト・サーバ２は、キープ・アライブ・メッセージを返信し、このキープ・アライブ通信トランザクションを終了する。ローカル・サーバ５側では、ホスト・サーバ２から返信のキープ・アライブ・メッセージが所定のタイム・アウト時間までに来なければ、トランザクションを破棄する。一方、正常にトランザクションが閉じた場合、通信経路が正常であると判断する。そうでない場合は、通信経路が断絶していると判断する。
【００２９】
ローカル・サーバ５は、ホスト・サーバ２とトンネリング・セッション４によって接続されたＷｅｂサーバとしての機能を有する構成要素である。ローカル・サーバ５は、トンネリング・セッション４を包含するインターネット８にも接続されている。ローカル・サーバ５は、ホスト・サーバ２と同様の内部構成を有しているが、ローカル・サーバ５の通常の形態は家庭用パーソナル・コンピュータ、インターネット家電などである。ローカル・サーバ５は、上述の擬似固定グローバルアドレス名を有しているが、この擬似固定グローバルアドレス名を使用したローカル・サーバ５へのアクセスは、ホスト・サーバ２を経由して行われることになる。特に、擬似固定グローバルアドレス名の内のローカル・アドレスの部分は、ＤＮＳによって名前解決されることはない。ローカル・サーバ５は、ホスト・サーバ２との間で動的ＩＰアドレスによるＴＣＰ／ＩＰセッションが確立された後に、その上でトンネリング・セッション４を行うための一連の動作を実行し、その動作と協働したホスト・サーバ２との間でトンネリング・セッション４が確立される。なお前述のように、ローカル・サーバ５とトンネリング・セッション４との間には、ルータを介設させることが可能である。そのようなルータ介設時には、ローカル・サーバ５の機能の内でＷｅｂサーバ機能を除く部分を当該ルータが実行することによって、ローカル・サーバ５はＷｅｂサーバ機能を除き代替されることとなる。
【００３０】
外部機器６は、ローカル・サーバとＬＡＮなどによって接続された情報の入力を行う構成要素である。外部機器６は、例えばカメラ、ビデオ・カメラ、マイクロフォン、振動センサ、温度センサ、セキュリティ・システムなどのような形態を取ることができ、入力した画像、映像、音声などの情報をデータ化してローカル・サーバ５に送信する。それを受信したローカル・サーバ５は、Ｗｅｂサーバとしての機能によりそのデータをＨＴＴＰにより送信することができる。また、外部機器６は、ローカル・サーバ５からの制御信号を受信することができ、その制御信号によって、例えば、ビデオ・カメラの方向の制御、セキュリティ・システムへの指令などを行うことができる。
【００３１】
アクセス端末７は、Ｗｅｂブラウジング機能を有するインターネットのアクセス端末である。アクセス端末７の内部構成は、一般的なモバイル・コンピュータの構成である。アクセス端末７は、通常、Ｗｅｂブラウジング機能を有する携帯電話器、ＰＤＡ、モバイル・コンピュータなどのあらゆる形態をとることができる。アクセス端末７から、インターネット上の擬似固定グローバルアドレス名を指定することによって、ホスト・サーバ２を介してローカル・サーバ５にアクセスすることができる。この際に、ホスト・サーバ２とローカル・サーバ５との間でトンネリング・セッション４が張られる。
【００３２】
インターネット８は、ＴＣＰ／ＩＰによる全世界的なＷＡＮネットワークである。インターネット上では、グローバルなアドレスとしてＩＰアドレスを指定することによって、通信の相手方を特定して通信セッションを確立することができる。また、ＤＮＳによる名前解決システムが提供されており、それによりドメイン名をグローバルなアドレスとして指定することによって、通信の相手方を特定して通信セッションを確立することができる。インターネット上では、ＴＣＰ／ＩＰの上位レイヤーのプロトコルであるＨＴＴＰによる通信や、本発明に係るトンネリング・プロトコルによる通信を行うことができる。
【００３３】
次にＨＴＴＰセッション・トンネリング・システム１の動作について説明する。図１は、ＨＴＴＰセッション・トンネリング・システム１の構成及び動作を表わすシステム構成・動作図である。まず、ステップＳ１で、ローカル・サーバ５はホスト・サーバ２との間にトンネリング・セッション４を確立する。具体的な動作は以下の通りである。まず、ローカル・サーバ５は、ホスト・サーバ２に対して（ＩＳＰ及びインターネット８を経由して）ＴＣＰセッションを張る。このタイプのＴＣＰセッションは、ローカル・サーバ５のＩＳＰのサーバへの接続形態（ダイヤルアップ、ＩＳＤＮ、ＡＤＳＬ、ＦＴＴＨ、ケーブルＴＶインターネットなどに強く依存しない。ホスト・サーバ２は、ＴＣＰセッションが張られた直後に、ローカル・サーバ５の認証を行い、認証に成功すると、そのＴＣＰセッションを維持する。ここでローカル・サーバ５は、一定期間ごとに、ＴＣＰセッションをホスト・サーバ２との間で確立すべく働きかける。このようにすることによって、ローカル・サーバ５とホスト・サーバ２との間のＴＣＰセッションは継続的なものとなり、動的ＩＰアドレスをＩＳＰのサーバから振られただけのローカル・サーバ５であっても、常にホスト・サーバ２からその動的ＩＰアドレスによってインターネット上の位置が的確に認識され続けることになる。このようにして継続的なＴＣＰセッションが張られることによって、その上を通じて確実に通信することができるようになる。このＴＣＰセッションでローカル・サーバ５に対して使用されている動的ＩＰアドレスは、当該ローカル・サーバ５のローカル・アドレスに対応するものとして、ホスト・サーバ２によって直ちにローカル・アドレス記憶手段３に反映される。通信されるデータは、特定の規約、ここではトンネリング・プロトコルに従ったヘッダーを付されることによってカプセル化されたデータであるが、そのカプセル化の動作の詳細については後述する。
【００３４】
これから、アクセス端末７がトンネリング・セッション４を通じてローカル・サーバ５と通信をする動作について説明する。ステップＳ２において、アクセス端末７は、擬似固定グローバルアドレス名に宛ててＨＴＴＰリクエストを送信する。具体的には、その擬似固定グローバルアドレス名をブラウザでアドレスとして指定して、表示（ブラウジング）のためのデータのファイルをリクエストする。なお、このＨＴＴＰリクエストには、それを受信したローカル・サーバ５が外部機器６の制御信号を出力するような特定のリクエスト（コマンド）を含めることができる。
【００３５】
インターネット８は、擬似固定グローバルアドレス名の中のホスト・アドレスを参照し、そのＨＴＴＰリクエストをルータ間で転送してホスト・サーバ２にルーティング（送信）する（ステップＳ３）。この際、ホスト・アドレスがＩＰアドレスではなく、ドメイン名で表わされるものであった場合は、まず、ＤＮＳの名前解決によって当該ホスト・アドレスに対応するホスト・サーバ２のＩＰアドレスが提供され、それが使用されてホスト・サーバ２にルーティングされる。
【００３６】
ホスト・サーバ２は、インターネット８からＨＴＴＰリクエストを受信する。ホスト・サーバ２は、受信したＨＴＴＰリクエストの宛先である擬似固定グローバルアドレス名から、ローカル・アドレスを抽出する。そして、そのローカル・アドレスをキーとしてローカル・アドレス記憶手段３を検索し、当該ローカル・アドレスが割り当てられているローカル・サーバ５との間のトンネリング・セッション４において、ローカル・サーバ５に対して使用されている動的ＩＰアドレスを特定する（ステップＳ４）。なお好適には、ホスト・サーバ２は、ＨＴＴＰリクエストを受信した際に、その発信元であるアクセス端末７の認証を実行する。ローカル・サーバ５への第三者のアクセスを制限したい場合もあるためである。例えば、ホスト・サーバ２は、登録されたユーザに対してあらかじめユーザＩＤとパスワードのような識別情報を発行しておき、それの入力を求めるＨＴＴＰレスポンスをアクセス端末７に返し、正規のユーザＩＤ及びパスワードが入力されることを確認することによって、アクセス端末７の認証を行うことができる。また、アクセス端末７が携帯電話器などである場合は、ＨＴＴＰリクエスト（のヘッダー）に携帯電話器のＩＤ情報が含まれる場合もあるため、それを発信元の識別情報として用いることによってアクセス端末７の認証を行ってもよい。
【００３７】
次に、ホスト・サーバ２は、受信したＨＴＴＰリクエストをカプセル化することによって、カプセル化ＨＴＴＰリクエストを生成する（ステップＳ５）。ここで、カプセル化とは、必要に応じて、ＨＴＴＰリクエストを所定の長さ以下のものに分割し、それらに特定の規約、ここではトンネリング・プロトコルに従ったヘッダを付すことである。このようにすることによって、元のデータであるＨＴＴＰリクエストを、トンネリング・プロトコルに従ったヘッダを有するデータのパケットに変換して取り扱うことができるようになる。ここで、カプセル化のための書式の一例を表１に示す。この表１に示す書式のパケットになるように、トンネリング・プロトコルに従ってヘッダが付される。
【００３８】
【表１】
2004158923.tif 000003
【００３９】
なお、このカプセル化の前処理として、ＨＴＴＰリクエストを暗号化してもよい。このようにすると、万一、このカプセル化ＨＴＴＰリクエストが、ターゲットのローカル・サーバ５以外の機器に送信されてしまった場合でも、その内容を秘匿することができ、通信の安全性を大幅に高めることができる。これは、ローカル・サーバ５がステップＳ１で張ったＴＣＰセッションが、何らかの原因で一旦中断され、別のＩＰアドレスがＩＳＰのサーバからローカル・サーバ５に振りなおされたものの、その通知がホスト・サーバ２に届いていないというような異常が発生した場合に特に有効である。暗号化には、ＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔｓ  Ｌａｙｅｒ）などの既存の暗号化技術を用いることができる。
【００４０】
次に、ホスト・サーバ２は、カプセル化ＨＴＴＰリクエストを、ステップＳ４で特定された、ローカル・サーバ５の動的ＩＰアドレスに宛てて送信する（ステップＳ６）。送信は、トンネリング・セッション４に向けて行われる。
【００４１】
トンネリング・セッション４は、動的ＩＰアドレスを参照し、送信あれたカプセル化ＨＴＴＰリクエストをルータ間で転送してローカル・サーバ５にルーティング（送信）する（ステップＳ７）。
【００４２】
ローカル・サーバ５は、トンネリング・セッション４からカプセル化ＨＴＴＰリクエストを受信する。ローカル・サーバ５は、受信したカプセル化ＨＴＴＰリクエストから、カプセル化を解除して、その内容であるＨＴＴＰリクエストを回復する（ステップＳ８）。ＨＴＴＰリクエストの回復は、表１に示したトンネリング・プロトコルに定められた書式に従って、ＨＴＴＰリクエストとしての内容（ｐａｙｌｏａｄ）を抽出し、それが分割されたものである場合は適宜連結することによって実施される。この際、ＨＴＴＰリクエストが暗号化されていた場合は、その暗号を解読して、本来のＨＴＴＰリクエストを復元する。
【００４３】
ローカル・サーバ５は、回復したＨＴＴＰリクエストを、Ｗｅｂサーバ機能を提供するアプリケーションに対して発行し、ＨＴＴＰリクエストに対する応答であるＨＴＴＰレスポンスを取得する。このＨＴＴＰレスポンスは、アクセス端末７に出力すべきデータを含む。ここで、この出力すべきデータには、外部機器６から受信した画像、映像、音声などの情報を含めることができる。このようにすることによって、アクセス端末７の使用者は、外部機器６が検知している情報をリアルタイムに取得することができ、極めて強力かつ便利なホーム・セキュリティ・システムを構築することができる。さらには、ＨＴＴＰリクエストには、外部機器６の制御信号を出力する特定のリクエストがアクセス端末７によって含められることもある。ローカル・サーバ５は、その特定のリクエストから外部機器の制御信号を取り出し、それを外部機器６に送信することによって、外部機器６の制御を行う。
【００４４】
ローカル・サーバ５は、ＨＴＴＰレスポンスをカプセル化することによってカプセル化ＨＴＴＰレスポンスを生成し、そのカプセル化ＨＴＴＰレスポンスをアクセス端末７に宛ててトンネリング・セッション４を経由して逆経路に送信する（ステップＳ１０）。このカプセル化の動作は、前述のステップＳ５におけるＨＴＴＰリクエストの場合と同様であり、カプセル化の前にＨＴＴＰレスポンスを暗号化してもよいことも同様である。以下、上述のステップＳ２からＳ７で説明したＨＴＴＰリクエストの送信と同様の動作で、ＨＴＴＰレスポンスがカプセル化の上、ローカル・サーバ５から、トンネリング・セッション４、ホスト・サーバ２、及びインターネット８を逆順に経由して、アクセス端末７に送信される。アクセス端末７は、そのカプセル化ＨＴＴＰレスポンスを受信してカプセル化解除の上、ブラウザの画面に表示する。
【００４５】
【発明の効果】
本発明によれば、固定グローバルＩＰアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のローカル・サーバと、固定グローバルＩＰアドレスを有し、当該インターネットに接続されたホスト・サーバとの間でトンネリング・セッションを確立し、当該トンネリング・セッションで使用されている動的ＩＰアドレスが対応付けられた擬似固定グローバルアドレス名に宛ててＨＴＴＰリクエストを送信し、当該ＨＴＴＰリクエストをカプセル化した上でトンネリング・セッションを通じて対応する動的ＩＰアドレスを使用してローカル・サーバに送信し、ローカル・サーバはカプセル化を解除して回復したＨＴＴＰリクエストに対するＨＴＴＰレスポンスを取得して逆経路に送信することによって、擬似的な固定グローバルアドレス名を使用して相互に一意的なＨＴＴＰ通信を行うことができるという効果が得られる。また、本発明によれば、当該擬似固定グローバルアドレス名の少なくとも一部は、ドメイン名によって表現されるものであり、かつ、当該擬似固定グローバルアドレス名の内で当該ホスト・サーバを識別する領域以外の部分は、当該インターネット上のＤＮＳサーバによっては名前解決がされないことによって、ＤＮＳに依存せずにリアルタイムの名前解決を行うことができるという効果が得られる。またさらに本発明によれば、当該トンネリング・セッションは、当該ＨＴＴＰリクエストに依存されないＴＣＰセッションであることによって、ＴＣＰセッションを継続的に確立することによって、上位レイヤーのプロトコルによる通信を確実に行うことができるという効果が得られる。またさらに本発明によれば、当該トンネリング・セッションを、暗号化通信を使用して実施することによって、安全な通信を行うことができるという効果が得られる。またさらに本発明によれば、当該ローカル・サーバが、当該カプセル化ＨＴＴＰリクエストに含まれる特定のリクエストに応答して、外部機器の制御信号を出力することによって、外部機器を遠隔操作することができるという効果が得られる。またさらに本発明によれば、当該ローカル・サーバが、外部機器から入力された信号を表わす情報を当該カプセル化ＨＴＴＰレスポンスに含ませることによって、外部機器からの情報を遠隔取得できるという効果が得られる。またさらに本発明によれば、当該ホスト・サーバが、当該インターネットからの当該擬似固定グローバルアドレス名を宛先とする当該ローカル・サーバに宛てたＨＴＴＰリクエストを認証することによって、適切なユーザに対してのみサービスを提供するようにすることができるという効果が得られる。またさらに本発明によれば、当該ＨＴＴＰリクエスト認証手段が、当該ＨＴＴＰリクエストに含まれる発信元の識別情報を使用して当該ＨＴＴＰリクエストを認証することによって、ユーザの適切な認証を行うことができるという効果が得られる。またさらに本発明によれば、当該ＨＴＴＰリクエストの発信元はＷＷＷブラウジング機能を有する携帯電話機であり、及び当該ＨＴＴＰリクエスト認証手段が使用する当該発信元の識別情報は、当該携帯電話機のＩＤ情報に基づくものであることによって、特定の携帯電話機からのアクセスについては自動的に認証を行うようにすることができるという効果が得られる。
【図面の簡単な説明】
【図１】ＨＴＴＰセッション・トンネリング・システム１の構成及び動作を表わすシステム構成・動作図である。
【符号の説明】
１  ＨＴＴＰセッション・トンネリング・システム
２  ホスト・サーバ
３  ローカル・アドレス記憶手段
４  トンネリング・セッション
５  ローカル・サーバ
６  外部機器
７  アクセス端末
８  インターネット
【図１】
2004158923.tif 000004