JP3935823B2 - HTTP session tunneling system, method thereof, and program thereof - Google Patents

HTTP session tunneling system, method thereof, and program thereof Download PDF

Info

Publication number
JP3935823B2
JP3935823B2 JP2002320230A JP2002320230A JP3935823B2 JP 3935823 B2 JP3935823 B2 JP 3935823B2 JP 2002320230 A JP2002320230 A JP 2002320230A JP 2002320230 A JP2002320230 A JP 2002320230A JP 3935823 B2 JP3935823 B2 JP 3935823B2
Authority
JP
Japan
Prior art keywords
http
address
http request
session
encapsulated
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.)
Expired - Fee Related
Application number
JP2002320230A
Other languages
Japanese (ja)
Other versions
JP2004158923A (en
Inventor
将一 福坂
昌宏 山田
朋子 柴田
Original Assignee
株式会社インデックス
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 株式会社インデックス filed Critical 株式会社インデックス
Priority to JP2002320230A priority Critical patent/JP3935823B2/en
Publication of JP2004158923A publication Critical patent/JP2004158923A/en
Application granted granted Critical
Publication of JP3935823B2 publication Critical patent/JP3935823B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、セッション・トンネリング・システムに関し、より詳しくは、固定グローバルIPアドレスを有するホスト・サーバと、固定グローバルIPアドレスを有しないがユニークな擬似固定グローバルアドレス名が割り当てられた複数のローカル・サーバとの間で、相互に安全かつ一意的なHTTP通信を実現するHTTPセッション・トンネリング・システムに関する。
【0002】
【従来の技術】
インターネット上で固定されたグローバルなアドレスを有していると、当該アドレスに容易にアクセスすることができるし、当該グローバルなアドレスとの間で相互に一意的なプライベート・ネットワークのような通信環境を構築することもできる。ここでグローバルなアドレスとは、インターネット上で通用する、固定IPアドレス、あるいは固定ドメイン名のことをいう。ドメイン名は、DNS(ドメイン・ネーム・システム)によってIPアドレスと一意的に対応付けられている。一般的なインターネット・サービス・プロバイダ(以下、ISP)へのダイヤルアップ接続では、接続のたびに異なる動的IPアドレスがISPのサーバから通信端末(クライアント又はサーバ)に付与されることが通常であり、固定IPアドレスはもちろんのこと、固定ドメイン名を取得することも通常の方法では難しい。なお、固定グローバルIPアドレスを有しないが、Webサーバとして機能するサーバのことを本明細書では「ローカル・サーバ」と呼ぶことにする。グローバルなアドレスを取得して自己の有するローカル・サーバに割り当てるためには基本的には常時接続の環境、ある程度の費用、および手間が必要であり、それは一般的なことではない。従って、固定のグローバルなアドレスをダイヤルアップ接続のTCP/IPセッションに動的に割り当てることなどによって、固定のグローバルなアドレスを実現することができると非常に便利である。本明細書では、そのようにしてDNSなどの通常の方法によらずに実現されるグローバルなアドレスのことを「擬似固定グローバルアドレス名」と呼ぶことにする。このような擬似固定グローバルアドレス名の一類型としての固定ドメイン名を実現するための1つの方法として、ダイナミックDNS(Dynamic Domain Name System)による方法がある。これは、動的IPアドレスの変更に応じてDNSデータベースを動的に更新し、それを他のDNSサーバに通知したり、または変更箇所だけを転送する技術である。これと、動的IPアドレスをアクセス端末に付与するDHCP(Dynamic Host Configuration Protocol)サーバとを連携させることで、ローカル・サーバへの動的IPアドレスの割り当ててとともに固定ドメイン名を当該動的IPアドレスに対して対応付けることができる。なおダイナミックDNSは、RFC2136で規定された「DNS Update」の一般的な呼称である。
【0003】
また、近年、動的IPアドレスをリースしているADSLルータが一般家庭に設置されることが増えてきている。しかし、IPアドレスを使用したアクセスという観点からADSLルータについて考察すると、ADSLルータのLAN側には固定グローバルIPアドレスを割り当てられた通信端末が接続されることは極めて稀である。そのような状況で、仮にADSLルータに通信を試みてパケットが到達したとしても、IPアドレスはADSLルータまでの道のりしか示していないため、そこからLAN側に送信するための指針がないばかりか、ADSLルータはLAN側機器とインターネット側との間のTCPセッションの確立を認識していないため、ADSLルータに到達したパケットは、通常、そこで破棄される。破棄を回避するためには、ADSLルータの設定を変更する必要があるが、これは高度に技術的なことであり、一般的ではない。
【0004】
また、一意的な通信という観点から、VPN(Virtual Private Network)について考察すると、これは、ある会社の社員が、社外からインターネット網を介して社内のネットワークに接続することを目的とした構成をしており、その際のセキュリティを、接続の認証、暗号化、トンネル化(カプセル化)等の技術によって確保している。しかし、VPNで接続された社外の通信端末は、社内のネットワーク内に接続されたのと同じ地位を獲得してしまうため、悪意のVPN利用者は、社内ネットワーク内の他の通信端末に容易に不正アクセスできてしまうという問題点がある。
【0005】
関連先行技術としては、メッセージ又はフレームを捕獲し、カプセル化し、そして暗号化するための擬似ネットワークアダプタがあり、ここではDHCPサーバエミュレータ及びARPサーバエミュレータを備えた擬似ネットワークアダプタが開示されている(例えば、特許文献1参照)。また、他の関連先行技術として、Web対応携帯電話などの端末によるイントラネットへのリモートアクセスを、端末単体でありながら高いセキュリティを確保した上で行うことの可能なイントラネットリモートアクセス方法があり、ここでは、イントラネット上の機器に対応して割り当てられたWeb対応携帯電話からの端末IDの入力に伴い、インターネット上のVPNセッション管理サーバからのコマンド制御に応じてVPNゲートウェイとゲートウェイ機器との間にVPNトンネルを設定し、Web対応携帯電話から端末ID及び機器名が入力されて、該当する機器に対して所要のアクセスが発生するのに伴い、そのWeb対応携帯電話に代わり、VPNセッション管理サーバに、VPNトンネルを経由した代理アクセスを行わせることが開示されている(例えば、特許文献2参照)。
【0006】
【特許文献1】
特開平10−178450号公報
【特許文献2】
特開2002−232460号公報
【0007】
【発明が解決しようとする課題】
しかし、上述のダイナミックDNSでは、ローカル・サーバのインターネット接続の開始又は終了による動的IPアドレス使用の開始又は終了の時点から、DNSデータベースが更新されるまでの間に、適切にローカル・サーバへのルーティングを行うことができないという問題がある。従って、ある固定ドメイン名を有するローカル・サーバがインターネットへの接続を終了して、割り当てられた動的IPアドレスの使用を終了した後に、それと同じ動的IPアドレスがISPのサーバによって他のローカル・サーバに割り当てられたときに、DNSデータベースにその動的IPアドレスの割り当て変更の通知が届いていないと、同じ固定ドメイン名を指定してそのローカル・サーバと通信をしようとしても、同じ動的IPアドレスを引き継いだ他のローカル・サーバに対して意図せずして通信を試みることになってしまうという不都合があった。また、動的IPアドレスをリースしているADSLルータや、VPNには、そもそも上述のような問題があった。
【0008】
本発明は、上記の問題に鑑みてなされたものであり、擬似固定グローバルアドレス名を、現在接続しているローカル・サーバに対して割り当てられた動的IPアドレスに対応付け、擬似固定グローバルアドレス名に宛てたHTTPセッションをカプセル化して当該動的IPアドレスとの間で送受信することによって、相互に安全かつ一意的なHTTP通信を実現するものである。このようにカプセル化して送受信する技術を一般的にトンネリングと称するため、本発明に係るシステムのことを、HTTPセッション・トンネリング・システムと称する。
【0009】
【課題を解決するための手段】
上記の課題は以下の特徴を有する本発明によって解決される。請求項1に記載の発明は、固定グローバルIPアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のローカル・サーバと、固定グローバルIPアドレスを有し、当該インターネットに接続されたホスト・サーバと、を具備し、当該ローカル・サーバは、トンネリング・セッションを当該ホスト・サーバとの間に確立するトンネリング・セッション確立手段と、当該インターネットからのHTTPリクエストがカプセル化されたものであるカプセル化HTTPリクエストを当該ホスト・サーバから当該トンネリング・セッションを通じて受信するカプセル化HTTPリクエスト受信手段と、受信した当該カプセル化HTTPリクエストから当該HTTPリクエストを回復するHTTPリクエスト回復手段と、回復した当該HTTPリクエストに対する応答であるHTTPレスポンスを取得するHTTPレスポンス取得手段と、当該HTTPレスポンスをカプセル化することによってカプセル化HTTPレスポンスを生成するHTTPレスポンスカプセル化手段と、当該カプセル化HTTPレスポンスを当該トンネリング・セッションを通じて当該ホスト・サーバに向けて送信するカプセル化HTTPレスポンス送信手段と、を有し、及び当該ホスト・サーバは、当該擬似固定グローバルアドレス名の当該ローカル・サーバに関してユニークな部分を、当該擬似固定グローバルアドレス名が割り当てられたローカル・サーバとの間のトンネリング・セッションで当該ローカル・サーバに対して使用されている当該動的IPアドレスと関連付けて記憶するローカル・アドレス記憶手段と、当該インターネットから当該擬似固定グローバルアドレス名を宛先とするHTTPリクエストを受信するHTTPリクエスト受信手段と、受信した当該HTTPリクエストの宛先である擬似固定グローバルアドレス名から、当該ローカル・アドレス記憶手段に記憶された情報に基づいて、当該擬似固定グローバルアドレス名が割り当てられた当該ローカル・サーバとの間の当該トンネリング・セッションで当該ローカル・サーバに対して使用されている当該動的IPアドレスを特定する動的IPアドレス特定手段と、受信した当該HTTPリクエストをカプセル化することによってカプセル化HTTPリクエストを生成するHTTPリクエストカプセル化手段と、当該カプセル化HTTPリクエストを、特定された当該動的IPアドレスを使用している当該トンネリング・セッションを通じて当該ローカル・サーバに送信するカプセル化HTTPリクエスト送信手段と、当該カプセル化HTTPレスポンスを当該ローカル・サーバから当該トンネリング・セッションを通じて受信するカプセル化HTTPレスポンス受信手段と、受信した当該カプセル化HTTPレスポンスから当該HTTPレスポンスを回復するHTTPレスポンス回復手段と、回復した当該HTTPレスポンスを当該インターネットに送信するHTTPレスポンス送信手段と、を有することを特徴とする。
【0010】
請求項2に記載の発明は、固定グローバルIPアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のルータと、当該ルータのLAN側に接続され、当該LAN内で通用するプライベートIPアドレスが当該ルータから割り当てられたローカル・サーバと、固定グローバルIPアドレスを有し、当該インターネットに接続されたホスト・サーバと、を具備し、当該ローカル・サーバは、トンネリング・セッションを、当該ルータを介して当該ホスト・サーバとの間に確立するトンネリング・セッション確立手段と、当該インターネットからのHTTPリクエストがカプセル化されたものであるカプセル化HTTPリクエストを当該ホスト・サーバから当該トンネリング・セッションを通じて受信するカプセル化HTTPリクエスト受信手段と、受信した当該カプセル化HTTPリクエストから当該HTTPリクエストを回復するHTTPリクエスト回復手段と、回復した当該HTTPリクエストに対する応答であるHTTPレスポンスを取得するHTTPレスポンス取得手段と、当該HTTPレスポンスをカプセル化することによってカプセル化HTTPレスポンスを生成するHTTPレスポンスカプセル化手段と、当該カプセル化HTTPレスポンスを当該トンネリング・セッションを通じて当該ホスト・サーバに向けて送信するカプセル化HTTPレスポンス送信手段と、を有し、当該ホスト・サーバは、当該擬似固定グローバルアドレス名の当該ルータに関してユニークな部分を、当該擬似固定グローバルアドレス名が割り当てられた当該ルータを介してインターネットに接続される当該ローカル・サーバとの間のトンネリング・セッションで当該ルータに対して使用されている当該動的IPアドレスと関連付けて記憶するローカル・アドレス記憶手段と、当該インターネットから当該擬似固定グローバルアドレス名を宛先とするHTTPリクエストを受信するHTTPリクエスト受信手段と、受信した当該HTTPリクエストの宛先である擬似固定グローバルアドレス名から、当該ローカル・アドレス記憶手段に記憶された情報に基づいて、当該擬似固定グローバルアドレス名が割り当てられた当該ローカル・サーバとの間の当該トンネリング・セッションで当該ルータに対して使用されている当該動的IPアドレスを特定する動的IPアドレス特定手段と、受信した当該HTTPリクエストをカプセル化することによってカプセル化HTTPリクエストを生成するHTTPリクエストカプセル化手段と、当該カプセル化HTTPリクエストを、当該トンネリング・セッションを通じて当該動的IPアドレスを使用している当該ルータに送信するカプセル化HTTPリクエスト送信手段と、当該カプセル化HTTPレスポンスを当該ローカル・サーバから当該トンネリング・セッションを通じて受信するカプセル化HTTPレスポンス受信手段と、受信した当該カプセル化HTTPレスポンスから当該HTTPレスポンスを回復するHTTPレスポンス回復手段と、回復した当該HTTPレスポンスを当該インターネットに送信するHTTPレスポンス送信手段と、を有し、及び当該ルータは、当該ルータを通過する当該カプセル化リクエスト及び当該カプセル化レスポンスを含むパケットの宛先アドレス及び送信元アドレスに関して、当該ローカル・サーバに割り当てられている当該プライベートIPアドレスと、当該ルータに割り当てられている当該動的IPアドレスとを、対応関係を維持した上で相互に変換するアドレス変換手段、を有することを特徴とする。
【0011】
請求項3に記載の発明は、請求項1又は2に記載の発明の特徴に加えて、当該擬似固定グローバルアドレス名の少なくとも一部は、ドメイン名によって表現されるものであり、かつ、当該擬似固定グローバルアドレス名の内で当該ホスト・サーバを識別する領域以外の部分は、当該インターネット上のDNSサーバによっては名前解決がされないことを特徴とする。
【0012】
請求項4に記載の発明は、請求項1から3のいずれか1項に記載の発明の特徴に加えて、当該トンネリング・セッションは、当該HTTPリクエストに依存されないTCPセッションであることを特徴とする。
【0013】
請求項5に記載の発明は、請求項1から4のいずれか1項に記載の発明の特徴に加えて、当該トンネリング・セッションは、暗号化通信を使用して実施されることを特徴とする。
【0014】
請求項6に記載の発明は、請求項1から5のいずれか1項に記載の発明の特徴に加えて、当該ローカル・サーバは、当該カプセル化HTTPリクエストに含まれる特定のリクエストに応答して、外部機器の制御信号を出力することを特徴とする。
【0015】
請求項7に記載の発明は、請求項1から6のいずれか1項に記載の発明の特徴に加えて、当該ローカル・サーバは、外部機器から入力された信号を表わす情報を当該カプセル化HTTPレスポンスに含ませることを特徴とする。
【0016】
請求項8に記載の発明は、請求項1から7のいずれか1項に記載の発明の特徴に加えて、当該ホスト・サーバは、当該インターネットからの当該擬似固定グローバルアドレス名を宛先とする当該ローカル・サーバに宛てたHTTPリクエストを認証するHTTPリクエスト認証手段を更に有することを特徴とする。
【0017】
請求項9に記載の発明は、請求項1から8のいずれか1項に記載の発明の特徴に加えて、当該HTTPリクエスト認証手段は、当該HTTPリクエストに含まれる発信元の識別情報を使用して当該HTTPリクエストを認証することを特徴とする。
【0018】
請求項10に記載の発明は、請求項1から9のいずれか1項に記載の発明の特徴に加えて、当該HTTPリクエストの発信元はWWWブラウジング機能を有する携帯電話機であり、及び当該HTTPリクエスト認証手段が使用する当該発信元の識別情報は、当該携帯電話機のID情報に基づくものであることを特徴とする。
【0019】
請求項11に記載の発明は、固定グローバルIPアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のローカル・サーバと、固定グローバルIPアドレスを有し、当該インターネットに接続されたホスト・サーバとの間で、トンネリング・セッションを確立するステップと、当該擬似固定グローバルアドレス名の当該ローカル・サーバに関してユニークな部分を、当該擬似固定グローバルアドレス名が割り当てられたローカル・サーバとの間のトンネリング・セッションで当該ローカル・サーバに対して使用されている当該動的IPアドレスと関連付けて記憶するステップと、当該インターネットから当該擬似固定グローバルアドレス名を宛先とするHTTPリクエストを受信するステップと、受信した当該HTTPリクエストの宛先である擬似固定グローバルアドレス名から、記憶された当該擬似固定グローバルアドレス名と当該動的IPアドレスとの関係に関する情報に基づいて、当該擬似固定グローバルアドレス名が割り当てられた当該ローカル・サーバとの間の当該トンネリング・セッションで当該ローカル・サーバに対して使用されている当該動的IPアドレスを特定するステップと、受信した当該HTTPリクエストをカプセル化することによってカプセル化HTTPリクエストを生成するステップと、当該カプセル化HTTPリクエストを、特定された当該動的IPアドレスを使用している当該トンネリング・セッションを通じて当該ホスト・サーバから当該ローカル・サーバに送信するステップと、当該カプセル化HTTPリクエストを当該ホスト・サーバから当該トンネリング・セッションを通じて当該ローカル・サーバが受信するステップと、受信した当該カプセル化HTTPリクエストから当該HTTPリクエストを回復するステップと、回復した当該HTTPリクエストに対する応答であるHTTPレスポンスを取得するステップと、当該HTTPレスポンスをカプセル化することによってカプセル化HTTPレスポンスを生成するステップと、当該カプセル化HTTPレスポンスを当該トンネリング・セッションを通じて当該ホスト・サーバに送信するステップと、当該カプセル化HTTPレスポンスを当該ローカル・サーバから当該トンネリング・セッションを通じて当該ホスト・サーバが受信するステップと、受信した当該カプセル化HTTPレスポンスから当該HTTPレスポンスを回復するステップと、回復した当該HTTPレスポンスを当該インターネットに送信するステップと、を有することを特徴とする。
【0020】
請求項12に記載の発明は、固定グローバルIPアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のローカル・サーバと、固定グローバルIPアドレスを有し、当該インターネットに接続されたホスト・サーバとの間で、トンネリング・セッションを確立するステップと、当該インターネットからのHTTPリクエストがカプセル化されたものであるカプセル化HTTPリクエストを当該ホスト・サーバから当該トンネリング・セッションを通じて受信するステップと、受信した当該カプセル化HTTPリクエストから当該HTTPリクエストを回復するステップと、回復した当該HTTPリクエストに対する応答であるHTTPレスポンスを取得するステップと、当該HTTPレスポンスをカプセル化することによってカプセル化HTTPレスポンスを生成するステップと、当該カプセル化HTTPレスポンスを当該トンネリング・セッションを通じて当該ホスト・サーバに送信するステップと、を当該ローカル・サーバに実行させることを特徴とする。
【0021】
請求項13に記載の発明は、固定グローバルIPアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のローカル・サーバと、固定グローバルIPアドレスを有し、当該インターネットに接続されたホスト・サーバとの間で、トンネリング・セッションを確立するステップと、当該擬似固定グローバルアドレス名の当該ローカル・サーバに関してユニークな部分を、当該擬似固定グローバルアドレス名が割り当てられたローカル・サーバとの間のトンネリング・セッションで当該ローカル・サーバに対して使用されている当該動的IPアドレスと関連付けて記憶するステップと、当該インターネットから当該擬似固定グローバルアドレス名を宛先とするHTTPリクエストを受信するステップと、受信した当該HTTPリクエストの宛先である擬似固定グローバルアドレス名から、当該ローカル・アドレス記憶手段に記憶された情報に基づいて、当該擬似固定グローバルアドレス名が割り当てられた当該ローカル・サーバとの間の当該トンネリング・セッションで当該ローカル・サーバに対して使用されている当該動的IPアドレスを特定するステップと、受信した当該HTTPリクエストをカプセル化することによってカプセル化HTTPリクエストを生成するステップと、当該カプセル化HTTPリクエストを、特定された当該動的IPアドレスを使用している当該トンネリング・セッションを通じて当該ローカル・サーバに送信するステップと、当該HTTPリクエストに対する応答であるHTTPレスポンスをカプセル化したカプセル化HTTPレスポンスを当該ローカル・サーバから当該トンネリング・セッションを通じて受信するステップと、受信した当該カプセル化HTTPレスポンスから当該HTTPレスポンスを回復するステップと、回復した当該HTTPレスポンスを当該インターネットに送信するステップと、を当該ホスト・サーバに実行させることを特徴とする。
【0022】
【発明の実施の形態】
これから図面を参照して、本発明の一実施形態に係るHTTPセッション・トンネリング・システム1について説明する。まず、HTTPセッション・トンネリング・システム1の構成について説明する。図1は、HTTPセッション・トンネリング・システム1の構成及び動作を表わすシステム構成・動作図である。HTTPセッション・トンネリング・システム1は、ホスト・サーバ2、ローカル・アドレス記憶手段3、トンネリング・セッション4、およびローカル・サーバ5から構成される。他には、外部機器6をローカル・サーバ5に接続することもできる。また、インターネット8を介してアクセス端末7をホスト・サーバ2に接続することができる。図示していないが、ローカル・サーバ5とトンネリング・セッション4との間にルータが介設されていてもよい。
【0023】
ホスト・サーバ2は、インターネット8に接続されたWebサーバとしての機能を有し、さらに、ローカル・アドレス記憶手段3と連携して、HTTPセッションをトンネリングする各種の手段(請求項に記載のホスト・サーバが有する手段)を実行する構成要素である。ホスト・サーバ2は、個別には図示していないが、記憶手段(HDDなど)、プログラム実行手段(CPU、OS、RAMなど)、入出力インターフェース、及びWANネットワーク接続手段(ゲートウェイなど)を有している。本発明に係る各種の手段又はステップによる機能を実行するためのアプリケーション及びWebサーバ・アプリケーションが、それを記憶しているHDDからRAMにロードされ、CPUによってOSを仲立ちとして実行される。Webサーバの機能は、ホスト・サーバ2から独立させてもよい。ホスト・サーバ2は、ゲートウェイを通じて、インターネット8を介してアクセス端末7に、及びトンネリング・セッション4を介してローカル・サーバ5に接続される。
【0024】
ローカル・アドレス記憶手段3は、ローカル・サーバ5のローカル・アドレスを、それに対して使用中の動的IPアドレスに対応付けて記憶する構成要素である。なお、ローカル・サーバ5のWAN側にルータ(ADSLルータなどの、インターネット接続手段を有するルータ)が介設されている場合は、そのルータに動的IPアドレスが割り当てられるため、ローカル・アドレスもその動的IPアドレスに対応付けられて記憶されることとなる(以下、このような場合を「ルータ介設時」と称することとする。)。ルータ介設時においては、ローカル・サーバ5には当該ルータのLAN側で通用するプライベートIPアドレスが割り当てられる。そのようなルータは、当該ルータを通過するパケットの宛先アドレス及び送信元アドレスに関して、ローカル・サーバに割り当てられているプライベートIPアドレスと、当該ルータに割り当てられている動的IPアドレスとを、対応関係を維持した上で(IPアドレスに加えてポート番号もその対応関係の識別に使用する場合もある。)相互に変換する機能を有する。このようにすることによって、ホスト・サーバ2は、ローカル・サーバ5と通信する場合であっても、当該ルータまでの経路を認識しているだけで、そのような通信を行うことができるようになる。そのようアドレス変換機能は、NAT(Network Address Translation)又はIPマスカレードなどの技術を使用して実施することができる。ローカル・アドレス記憶手段3は、個別には図示していないが、記憶媒体(HDDなど)、プログラム実行手段(CPU、ファームウェア、RAMなど)、入出力インターフェースを有している。データの記憶媒体への書き込み及び読み出しの管理を実行するためのファームウェアが、CPUによって実行される。ローカル・アドレス記憶手段3は、典型的には外部記憶装置の形態である。ローカル・アドレス記憶手段3は、入出力インターフェースを通じてホスト・サーバ2に接続される。
【0025】
ここで、ローカル・アドレスとは、ローカル・サーバ5(ルータ介設時は、「ローカル・サーバ5」に代えてその「ルータ」。本明細書において、Webサーバの機能を実行する場合のローカル・サーバ5以外については、以下同様。)に割り当てられた擬似固定グローバルアドレス名の内で特定のローカル・サーバ5に対してユニークなアドレスの部分のことをいう。ローカル・サーバ5はホスト・サーバ2を介してインターネット8に接続される構成であるため、ローカル・サーバ5の擬似固定グローバルアドレス名は、ホスト・サーバ2を識別するためのホスト・アドレスと、(ホスト・サーバ2又はISPのサーバに)動的IPアドレスが付与されるローカル・サーバ5のそれぞれを識別するためのローカル・アドレスとを組み合わせたものとなる。例えば、ホスト・アドレスを「host_address」と表わし、ローカル・アドレスを「local_address」と表わすと、擬似固定グローバルアドレス名は、「http://host_address/local_address」とすることができる。この例は、ローカル・アドレスをディレクトリ名又はファイル名とした場合であるが、他には「http://local_address.host_address」のようにサブドメインとすることや、「http://host_address:local_address」のようにポート番号とすることや、それらの任意の組合せなどとすることもできる。
【0026】
トンネリング・セッション4は、TCP/IPによるWANネットワークの一種であるインターネット8の一部のルートを使用して行われる、動的IPアドレスによる継続的なTCPセッションが伝送されているインターネット8の一部のルートである。このTCPセッションでは、これを継続的に維持するため、一定期間ごとにローカル・サーバ5からホスト・サーバ2に働きかけが行われる。このように、インターネット8の通信網を使用しつつも、プライベートなセッションを張ることができるため、世界中の広範囲な場所にローカル・サーバ5を置くことができ、広範囲な場所からそれにアクセスできるという利便性と、秘匿性とを両立させることができる。トンネリング・セッション4では、通信されるHTTPのリクエスト又はレスポンスを必要に応じて適宜分割の上、独自のトンネリング・プロトコルに従ったヘッダーをそれらに付すことにより、HTTPのリクエスト又はレスポンスのカプセル化を行われる。特にトンネリング・セッション4の前後に暗号化手段及び暗号解読手段を設置することによって、トンネリング・セッション4を暗号化通信を使用して安全に実施することができる。
【0027】
なお、このトンネリング・セッション4は、TCPセッションであるため、任意のそれの上位レイヤーのプロトコルによるデータ通信をその上で行うことができる。さらに、トンネリング・セッション4で通信するデータを、その特徴に応じて、例えば「コマンド・フェーズ」及び「メッセージ通信フェーズ」の2つのフェーズに分けることができる。「コマンド・フェーズ」は、TCPセッションを確立した直後の状態であって、データの書式は行指向であり、コマンドのやり取りは順序よく行われる。このフェーズは、ローカル・サーバ5の識別番号(クライアント番号)及び接続認証キーで認証を行い、未認証、認証中、又は認証済みのいずれかのステータスを有する。「メッセージ通信フェーズ」では、データの書式はヘッダーに長さ情報を持ちレコード指向(payload)である。また、複数のリクエストのバッチ処理を実現するため、他のリクエストとの順序は原則的に保存されない。Payloadは、メッセージ送信、エラー通知、又は切断の3種類である。トンネリング・セッション4上での通信は、これらの2つのフェーズを適宜使い分けることによって実施される。HTTPリクエスト又はHTTPレスポンスをトンネリング・セッション4を通じて通信するときは、「メッセージ通信フェーズ」で通信が実施される。
【0028】
TCPセッションの維持は、例えば、以下のような経路断検出を目的とするキープ・アライブ(Keep Alive)処理によって実施される。まず、キープ・アライブ処理の実行条件として、「前回の処理実行から所定のキープ・アライブ時間が経過」、あるいは「トランザクションの内容に応じて、メッセージ送信のpayloadの受信待ちでタイム・アウトが発生」を設定する。そしてその実行条件が満たされたとき、実際のキープ・アライブ処理を以下のようにして実行する。まず、ローカル・サーバ5がキープ・アライブ通信トランザクションを開始し、ホスト・サーバ2に対してキープ・アライブ・メッセージを送信する。それを受信したホスト・サーバ2は、キープ・アライブ・メッセージを返信し、このキープ・アライブ通信トランザクションを終了する。ローカル・サーバ5側では、ホスト・サーバ2から返信のキープ・アライブ・メッセージが所定のタイム・アウト時間までに来なければ、トランザクションを破棄する。一方、正常にトランザクションが閉じた場合、通信経路が正常であると判断する。そうでない場合は、通信経路が断絶していると判断する。
【0029】
ローカル・サーバ5は、ホスト・サーバ2とトンネリング・セッション4によって接続されたWebサーバとしての機能を有する構成要素である。ローカル・サーバ5は、トンネリング・セッション4を包含するインターネット8にも接続されている。ローカル・サーバ5は、ホスト・サーバ2と同様の内部構成を有しているが、ローカル・サーバ5の通常の形態は家庭用パーソナル・コンピュータ、インターネット家電などである。ローカル・サーバ5は、上述の擬似固定グローバルアドレス名を有しているが、この擬似固定グローバルアドレス名を使用したローカル・サーバ5へのアクセスは、ホスト・サーバ2を経由して行われることになる。特に、擬似固定グローバルアドレス名の内のローカル・アドレスの部分は、DNSによって名前解決されることはない。ローカル・サーバ5は、ホスト・サーバ2との間で動的IPアドレスによるTCP/IPセッションが確立された後に、その上でトンネリング・セッション4を行うための一連の動作を実行し、その動作と協働したホスト・サーバ2との間でトンネリング・セッション4が確立される。なお前述のように、ローカル・サーバ5とトンネリング・セッション4との間には、ルータを介設させることが可能である。そのようなルータ介設時には、ローカル・サーバ5の機能の内でWebサーバ機能を除く部分を当該ルータが実行することによって、ローカル・サーバ5はWebサーバ機能を除き代替されることとなる。
【0030】
外部機器6は、ローカル・サーバとLANなどによって接続された情報の入力を行う構成要素である。外部機器6は、例えばカメラ、ビデオ・カメラ、マイクロフォン、振動センサ、温度センサ、セキュリティ・システムなどのような形態を取ることができ、入力した画像、映像、音声などの情報をデータ化してローカル・サーバ5に送信する。それを受信したローカル・サーバ5は、Webサーバとしての機能によりそのデータをHTTPにより送信することができる。また、外部機器6は、ローカル・サーバ5からの制御信号を受信することができ、その制御信号によって、例えば、ビデオ・カメラの方向の制御、セキュリティ・システムへの指令などを行うことができる。
【0031】
アクセス端末7は、Webブラウジング機能を有するインターネットのアクセス端末である。アクセス端末7の内部構成は、一般的なモバイル・コンピュータの構成である。アクセス端末7は、通常、Webブラウジング機能を有する携帯電話器、PDA、モバイル・コンピュータなどのあらゆる形態をとることができる。アクセス端末7から、インターネット上の擬似固定グローバルアドレス名を指定することによって、ホスト・サーバ2を介してローカル・サーバ5にアクセスすることができる。この際に、ホスト・サーバ2とローカル・サーバ5との間でトンネリング・セッション4が張られる。
【0032】
インターネット8は、TCP/IPによる全世界的なWANネットワークである。インターネット上では、グローバルなアドレスとしてIPアドレスを指定することによって、通信の相手方を特定して通信セッションを確立することができる。また、DNSによる名前解決システムが提供されており、それによりドメイン名をグローバルなアドレスとして指定することによって、通信の相手方を特定して通信セッションを確立することができる。インターネット上では、TCP/IPの上位レイヤーのプロトコルであるHTTPによる通信や、本発明に係るトンネリング・プロトコルによる通信を行うことができる。
【0033】
次にHTTPセッション・トンネリング・システム1の動作について説明する。図1は、HTTPセッション・トンネリング・システム1の構成及び動作を表わすシステム構成・動作図である。まず、ステップS1で、ローカル・サーバ5はホスト・サーバ2との間にトンネリング・セッション4を確立する。具体的な動作は以下の通りである。まず、ローカル・サーバ5は、ホスト・サーバ2に対して(ISP及びインターネット8を経由して)TCPセッションを張る。このタイプのTCPセッションは、ローカル・サーバ5のISPのサーバへの接続形態(ダイヤルアップ、ISDN、ADSL、FTTH、ケーブルTVインターネットなどに強く依存しない。ホスト・サーバ2は、TCPセッションが張られた直後に、ローカル・サーバ5の認証を行い、認証に成功すると、そのTCPセッションを維持する。ここでローカル・サーバ5は、一定期間ごとに、TCPセッションをホスト・サーバ2との間で確立すべく働きかける。このようにすることによって、ローカル・サーバ5とホスト・サーバ2との間のTCPセッションは継続的なものとなり、動的IPアドレスをISPのサーバから振られただけのローカル・サーバ5であっても、常にホスト・サーバ2からその動的IPアドレスによってインターネット上の位置が的確に認識され続けることになる。このようにして継続的なTCPセッションが張られることによって、その上を通じて確実に通信することができるようになる。このTCPセッションでローカル・サーバ5に対して使用されている動的IPアドレスは、当該ローカル・サーバ5のローカル・アドレスに対応するものとして、ホスト・サーバ2によって直ちにローカル・アドレス記憶手段3に反映される。通信されるデータは、特定の規約、ここではトンネリング・プロトコルに従ったヘッダーを付されることによってカプセル化されたデータであるが、そのカプセル化の動作の詳細については後述する。
【0034】
これから、アクセス端末7がトンネリング・セッション4を通じてローカル・サーバ5と通信をする動作について説明する。ステップS2において、アクセス端末7は、擬似固定グローバルアドレス名に宛ててHTTPリクエストを送信する。具体的には、その擬似固定グローバルアドレス名をブラウザでアドレスとして指定して、表示(ブラウジング)のためのデータのファイルをリクエストする。なお、このHTTPリクエストには、それを受信したローカル・サーバ5が外部機器6の制御信号を出力するような特定のリクエスト(コマンド)を含めることができる。
【0035】
インターネット8は、擬似固定グローバルアドレス名の中のホスト・アドレスを参照し、そのHTTPリクエストをルータ間で転送してホスト・サーバ2にルーティング(送信)する(ステップS3)。この際、ホスト・アドレスがIPアドレスではなく、ドメイン名で表わされるものであった場合は、まず、DNSの名前解決によって当該ホスト・アドレスに対応するホスト・サーバ2のIPアドレスが提供され、それが使用されてホスト・サーバ2にルーティングされる。
【0036】
ホスト・サーバ2は、インターネット8からHTTPリクエストを受信する。ホスト・サーバ2は、受信したHTTPリクエストの宛先である擬似固定グローバルアドレス名から、ローカル・アドレスを抽出する。そして、そのローカル・アドレスをキーとしてローカル・アドレス記憶手段3を検索し、当該ローカル・アドレスが割り当てられているローカル・サーバ5との間のトンネリング・セッション4において、ローカル・サーバ5に対して使用されている動的IPアドレスを特定する(ステップS4)。なお好適には、ホスト・サーバ2は、HTTPリクエストを受信した際に、その発信元であるアクセス端末7の認証を実行する。ローカル・サーバ5への第三者のアクセスを制限したい場合もあるためである。例えば、ホスト・サーバ2は、登録されたユーザに対してあらかじめユーザIDとパスワードのような識別情報を発行しておき、それの入力を求めるHTTPレスポンスをアクセス端末7に返し、正規のユーザID及びパスワードが入力されることを確認することによって、アクセス端末7の認証を行うことができる。また、アクセス端末7が携帯電話器などである場合は、HTTPリクエスト(のヘッダー)に携帯電話器のID情報が含まれる場合もあるため、それを発信元の識別情報として用いることによってアクセス端末7の認証を行ってもよい。
【0037】
次に、ホスト・サーバ2は、受信したHTTPリクエストをカプセル化することによって、カプセル化HTTPリクエストを生成する(ステップS5)。ここで、カプセル化とは、必要に応じて、HTTPリクエストを所定の長さ以下のものに分割し、それらに特定の規約、ここではトンネリング・プロトコルに従ったヘッダを付すことである。このようにすることによって、元のデータであるHTTPリクエストを、トンネリング・プロトコルに従ったヘッダを有するデータのパケットに変換して取り扱うことができるようになる。ここで、カプセル化のための書式の一例を表1に示す。この表1に示す書式のパケットになるように、トンネリング・プロトコルに従ってヘッダが付される。
【0038】
【表1】

Figure 0003935823
【0039】
なお、このカプセル化の前処理として、HTTPリクエストを暗号化してもよい。このようにすると、万一、このカプセル化HTTPリクエストが、ターゲットのローカル・サーバ5以外の機器に送信されてしまった場合でも、その内容を秘匿することができ、通信の安全性を大幅に高めることができる。これは、ローカル・サーバ5がステップS1で張ったTCPセッションが、何らかの原因で一旦中断され、別のIPアドレスがISPのサーバからローカル・サーバ5に振りなおされたものの、その通知がホスト・サーバ2に届いていないというような異常が発生した場合に特に有効である。暗号化には、SSL(Secure Sockets Layer)などの既存の暗号化技術を用いることができる。
【0040】
次に、ホスト・サーバ2は、カプセル化HTTPリクエストを、ステップS4で特定された、ローカル・サーバ5の動的IPアドレスに宛てて送信する(ステップS6)。送信は、トンネリング・セッション4に向けて行われる。
【0041】
トンネリング・セッション4は、動的IPアドレスを参照し、送信あれたカプセル化HTTPリクエストをルータ間で転送してローカル・サーバ5にルーティング(送信)する(ステップS7)。
【0042】
ローカル・サーバ5は、トンネリング・セッション4からカプセル化HTTPリクエストを受信する。ローカル・サーバ5は、受信したカプセル化HTTPリクエストから、カプセル化を解除して、その内容であるHTTPリクエストを回復する(ステップS8)。HTTPリクエストの回復は、表1に示したトンネリング・プロトコルに定められた書式に従って、HTTPリクエストとしての内容(payload)を抽出し、それが分割されたものである場合は適宜連結することによって実施される。この際、HTTPリクエストが暗号化されていた場合は、その暗号を解読して、本来のHTTPリクエストを復元する。
【0043】
ローカル・サーバ5は、回復したHTTPリクエストを、Webサーバ機能を提供するアプリケーションに対して発行し、HTTPリクエストに対する応答であるHTTPレスポンスを取得する。このHTTPレスポンスは、アクセス端末7に出力すべきデータを含む。ここで、この出力すべきデータには、外部機器6から受信した画像、映像、音声などの情報を含めることができる。このようにすることによって、アクセス端末7の使用者は、外部機器6が検知している情報をリアルタイムに取得することができ、極めて強力かつ便利なホーム・セキュリティ・システムを構築することができる。さらには、HTTPリクエストには、外部機器6の制御信号を出力する特定のリクエストがアクセス端末7によって含められることもある。ローカル・サーバ5は、その特定のリクエストから外部機器の制御信号を取り出し、それを外部機器6に送信することによって、外部機器6の制御を行う。
【0044】
ローカル・サーバ5は、HTTPレスポンスをカプセル化することによってカプセル化HTTPレスポンスを生成し、そのカプセル化HTTPレスポンスをアクセス端末7に宛ててトンネリング・セッション4を経由して逆経路に送信する(ステップS10)。このカプセル化の動作は、前述のステップS5におけるHTTPリクエストの場合と同様であり、カプセル化の前にHTTPレスポンスを暗号化してもよいことも同様である。以下、上述のステップS2からS7で説明したHTTPリクエストの送信と同様の動作で、HTTPレスポンスがカプセル化の上、ローカル・サーバ5から、トンネリング・セッション4、ホスト・サーバ2、及びインターネット8を逆順に経由して、アクセス端末7に送信される。アクセス端末7は、そのカプセル化HTTPレスポンスを受信してカプセル化解除の上、ブラウザの画面に表示する。
【0045】
【発明の効果】
本発明によれば、固定グローバルIPアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のローカル・サーバと、固定グローバルIPアドレスを有し、当該インターネットに接続されたホスト・サーバとの間でトンネリング・セッションを確立し、当該トンネリング・セッションで使用されている動的IPアドレスが対応付けられた擬似固定グローバルアドレス名に宛ててHTTPリクエストを送信し、当該HTTPリクエストをカプセル化した上でトンネリング・セッションを通じて対応する動的IPアドレスを使用してローカル・サーバに送信し、ローカル・サーバはカプセル化を解除して回復したHTTPリクエストに対するHTTPレスポンスを取得して逆経路に送信することによって、擬似的な固定グローバルアドレス名を使用して相互に一意的なHTTP通信を行うことができるという効果が得られる。また、本発明によれば、当該擬似固定グローバルアドレス名の少なくとも一部は、ドメイン名によって表現されるものであり、かつ、当該擬似固定グローバルアドレス名の内で当該ホスト・サーバを識別する領域以外の部分は、当該インターネット上のDNSサーバによっては名前解決がされないことによって、DNSに依存せずにリアルタイムの名前解決を行うことができるという効果が得られる。またさらに本発明によれば、当該トンネリング・セッションは、当該HTTPリクエストに依存されないTCPセッションであることによって、TCPセッションを継続的に確立することによって、上位レイヤーのプロトコルによる通信を確実に行うことができるという効果が得られる。またさらに本発明によれば、当該トンネリング・セッションを、暗号化通信を使用して実施することによって、安全な通信を行うことができるという効果が得られる。またさらに本発明によれば、当該ローカル・サーバが、当該カプセル化HTTPリクエストに含まれる特定のリクエストに応答して、外部機器の制御信号を出力することによって、外部機器を遠隔操作することができるという効果が得られる。またさらに本発明によれば、当該ローカル・サーバが、外部機器から入力された信号を表わす情報を当該カプセル化HTTPレスポンスに含ませることによって、外部機器からの情報を遠隔取得できるという効果が得られる。またさらに本発明によれば、当該ホスト・サーバが、当該インターネットからの当該擬似固定グローバルアドレス名を宛先とする当該ローカル・サーバに宛てたHTTPリクエストを認証することによって、適切なユーザに対してのみサービスを提供するようにすることができるという効果が得られる。またさらに本発明によれば、当該HTTPリクエスト認証手段が、当該HTTPリクエストに含まれる発信元の識別情報を使用して当該HTTPリクエストを認証することによって、ユーザの適切な認証を行うことができるという効果が得られる。またさらに本発明によれば、当該HTTPリクエストの発信元はWWWブラウジング機能を有する携帯電話機であり、及び当該HTTPリクエスト認証手段が使用する当該発信元の識別情報は、当該携帯電話機のID情報に基づくものであることによって、特定の携帯電話機からのアクセスについては自動的に認証を行うようにすることができるという効果が得られる。
【図面の簡単な説明】
【図1】HTTPセッション・トンネリング・システム1の構成及び動作を表わすシステム構成・動作図である。
【符号の説明】
1 HTTPセッション・トンネリング・システム
2 ホスト・サーバ
3 ローカル・アドレス記憶手段
4 トンネリング・セッション
5 ローカル・サーバ
6 外部機器
7 アクセス端末
8 インターネット[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a session tunneling system, and more particularly, a host server having a fixed global IP address and a plurality of local servers having no fixed global IP address but assigned unique pseudo fixed global address names. The present invention relates to an HTTP session tunneling system that realizes secure and unique HTTP communication with each other.
[0002]
[Prior art]
If you have a fixed global address on the Internet, you can easily access the address, and you can create a communication environment such as a private network that is unique to the global address. It can also be constructed. Here, the global address means a fixed IP address or a fixed domain name that is valid on the Internet. The domain name is uniquely associated with the IP address by DNS (Domain Name System). In a dial-up connection to a general Internet service provider (hereinafter referred to as ISP), a different dynamic IP address is usually given from the ISP server to the communication terminal (client or server) at each connection. It is difficult to obtain a fixed domain name as well as a fixed IP address by a normal method. A server that does not have a fixed global IP address but functions as a Web server is referred to as a “local server” in this specification. Obtaining a global address and assigning it to a local server owned by the user basically requires an always-on environment, a certain amount of money, and labor, which is not common. Therefore, it is very convenient if a fixed global address can be realized by dynamically allocating a fixed global address to a TCP / IP session of dial-up connection. In this specification, a global address that is realized without using a normal method such as DNS is referred to as a “pseudo fixed global address name”. One method for realizing such a fixed domain name as a type of pseudo fixed global address name is a method using dynamic DNS (Dynamic Domain Name System). This is a technique for dynamically updating the DNS database in response to a change in the dynamic IP address and notifying other DNS servers of this, or transferring only the changed part. By linking this with a DHCP (Dynamic Host Configuration Protocol) server that assigns a dynamic IP address to an access terminal, a dynamic IP address is assigned to a local server and a fixed domain name is assigned to the dynamic IP address. Can be associated with each other. Dynamic DNS is a general term for “DNS Update” defined in RFC2136.
[0003]
In recent years, ADSL routers that lease leased dynamic IP addresses have been increasingly installed in ordinary households. However, considering the ADSL router from the viewpoint of access using an IP address, it is extremely rare that a communication terminal assigned a fixed global IP address is connected to the LAN side of the ADSL router. In such a situation, even if a packet arrives when trying to communicate with the ADSL router, the IP address only shows the way to the ADSL router, so there is no guideline for transmission from there to the LAN side, Since the ADSL router does not recognize the establishment of a TCP session between the LAN side device and the Internet side, the packet that reaches the ADSL router is usually discarded there. In order to avoid the discarding, it is necessary to change the setting of the ADSL router, but this is highly technical and uncommon.
[0004]
Also, considering VPN (Virtual Private Network) from the viewpoint of unique communication, this is a configuration in which employees of a company connect to an internal network from outside the company via the Internet. Security at this time is ensured by technologies such as connection authentication, encryption, and tunneling (encapsulation). However, since an external communication terminal connected by VPN acquires the same position as that connected in the in-house network, a malicious VPN user can easily access other communication terminals in the in-house network. There is a problem of unauthorized access.
[0005]
Related prior art includes pseudo network adapters for capturing, encapsulating, and encrypting messages or frames, where pseudo network adapters with a DHCP server emulator and an ARP server emulator are disclosed (eg, , See Patent Document 1). As another related prior art, there is an intranet remote access method capable of performing remote access to an intranet by a terminal such as a web-compatible mobile phone while ensuring high security while being a single terminal. Here, The VPN tunnel between the VPN gateway and the gateway device according to the command control from the VPN session management server on the Internet in accordance with the input of the terminal ID from the Web-compatible mobile phone assigned corresponding to the device on the intranet When the terminal ID and the device name are input from the web compatible mobile phone and the required access to the corresponding device occurs, the VPN session management server replaces the web compatible mobile phone with the VPN. Make proxy access via the tunnel Bets are disclosed (e.g., see Patent Document 2).
[0006]
[Patent Document 1]
JP-A-10-178450
[Patent Document 2]
JP 2002-232460 A
[0007]
[Problems to be solved by the invention]
However, in the above-described dynamic DNS, the local server is appropriately connected to the local server after the start or end of the use of the dynamic IP address due to the start or end of the Internet connection of the local server until the DNS database is updated. There is a problem that routing cannot be performed. Thus, after a local server with a fixed domain name has terminated its connection to the Internet and has finished using its assigned dynamic IP address, the same dynamic IP address is If the DNS database does not receive a notification of the change in the dynamic IP address assignment when it is assigned to the server, the same dynamic IP will be used even if it is attempted to communicate with the local server by specifying the same fixed domain name. There was a disadvantage that communication was unintentionally attempted to another local server that took over the address. In addition, ADSL routers and VPNs that lease dynamic IP addresses originally have the problems described above.
[0008]
The present invention has been made in view of the above problem, and associates a pseudo-fixed global address name with a dynamic IP address assigned to a currently connected local server, thereby providing a pseudo-fixed global address name. By encapsulating the HTTP session addressed to the server and transmitting / receiving it to / from the dynamic IP address, mutually secure and unique HTTP communication is realized. Since the technique of encapsulating and transmitting / receiving in this way is generally referred to as tunneling, the system according to the present invention is referred to as an HTTP session tunneling system.
[0009]
[Means for Solving the Problems]
The above problem is solved by the present invention having the following features. The invention described in claim 1 does not have a fixed global IP address, but is assigned a unique pseudo fixed global address name to each, and has a plurality of local servers connected to the Internet, and a fixed global IP address. A host server connected to the Internet, the local server including a tunneling session establishing means for establishing a tunneling session with the host server, and an HTTP request from the Internet. Encapsulated HTTP request receiving means for receiving an encapsulated HTTP request that is encapsulated from the host server through the tunneling session, and the HTTP request from the received encapsulated HTTP request. HTTP request recovery means for recovering, HTTP response acquisition means for acquiring an HTTP response that is a response to the recovered HTTP request, and HTTP response encapsulation means for generating an encapsulated HTTP response by encapsulating the HTTP response Encapsulated HTTP response transmitting means for transmitting the encapsulated HTTP response to the host server through the tunneling session, and the host server includes the local address of the pseudo fixed global address name. A unique part of the server is used for the local server in a tunneling session with the local server assigned the pseudo-fixed global address name. Local address storage means for storing in association with the dynamic IP address; HTTP request receiving means for receiving an HTTP request destined for the pseudo fixed global address name from the Internet; and the destination of the received HTTP request Based on the information stored in the local address storage means from the pseudo-fixed global address name, it is transmitted to the local server in the tunneling session with the local server to which the pseudo-fixed global address name is assigned. A dynamic IP address specifying means for specifying the dynamic IP address used for the communication; an HTTP request encapsulating means for generating an encapsulated HTTP request by encapsulating the received HTTP request; Encapsulated HTTP request transmission means for transmitting the encapsulated HTTP request to the local server through the tunneling session using the identified dynamic IP address, and the encapsulated HTTP response to the local server Encapsulated HTTP response receiving means for receiving from the encapsulated HTTP response, HTTP response recovering means for recovering the HTTP response from the received encapsulated HTTP response, and HTTP response transmission for transmitting the recovered HTTP response to the Internet And means.
[0010]
The invention according to claim 2 does not have a fixed global IP address, but each is assigned a unique pseudo fixed global address name, and is connected to a plurality of routers connected to the Internet and the LAN side of the routers. A local server having a private IP address assigned in the LAN assigned from the router, and a host server having a fixed global IP address and connected to the Internet. A tunneling session establishment means for establishing a tunneling session with the host server via the router, and an encapsulated HTTP request in which an HTTP request from the Internet is encapsulated. From the tunnelel concerned Encapsulated HTTP request receiving means received through the session, HTTP request recovery means for recovering the HTTP request from the received encapsulated HTTP request, and HTTP response acquisition for acquiring an HTTP response as a response to the recovered HTTP request Means, an HTTP response encapsulating means for generating an encapsulated HTTP response by encapsulating the HTTP response, and an encapsulated HTTP response for transmitting the encapsulated HTTP response to the host server through the tunneling session. Transmitting means, and the host server assigns the pseudo-fixed global address name unique to the router to the pseudo-fixed global address name. A local address to be stored in association with the dynamic IP address used for the router in a tunneling session with the local server connected to the Internet via the router to which the global address name is assigned. From the address storage means, the HTTP request receiving means for receiving the HTTP request destined for the pseudo fixed global address name from the Internet, and the pseudo fixed global address name that is the destination of the received HTTP request, the local address storage Based on the information stored in the means, the dynamic IP address used for the router in the tunneling session with the local server to which the pseudo fixed global address name is assigned is specified. Dynamic IP address An address request specifying means, an HTTP request encapsulating means for generating an encapsulated HTTP request by encapsulating the received HTTP request, and the encapsulated HTTP request using the dynamic IP address through the tunneling session. An encapsulated HTTP request transmitting means for transmitting to the router, an encapsulated HTTP response receiving means for receiving the encapsulated HTTP response from the local server through the tunneling session, and the received HTTP response from the encapsulated HTTP response. An HTTP response recovery means for recovering an HTTP response; an HTTP response transmission means for transmitting the recovered HTTP response to the Internet; and The router assigns the private IP address assigned to the local server and the router with respect to the destination address and the source address of the packet including the encapsulation request and the encapsulation response passing through the router. It is characterized by having address conversion means for converting the dynamic IP addresses to each other while maintaining the correspondence relationship.
[0011]
In addition to the features of the invention described in claim 1 or 2, the invention described in claim 3 is such that at least a part of the pseudo-fixed global address name is expressed by a domain name, and A part of the fixed global address name other than the area for identifying the host server is not resolved by the DNS server on the Internet.
[0012]
The invention according to claim 4 is characterized in that, in addition to the features of the invention according to any one of claims 1 to 3, the tunneling session is a TCP session independent of the HTTP request. .
[0013]
The invention according to claim 5 is characterized in that, in addition to the characteristics of the invention according to any one of claims 1 to 4, the tunneling session is implemented using encrypted communication. .
[0014]
According to a sixth aspect of the present invention, in addition to the feature of the first aspect of the present invention, the local server is responsive to a specific request included in the encapsulated HTTP request. The control signal of the external device is output.
[0015]
According to a seventh aspect of the invention, in addition to the features of the invention according to any one of the first to sixth aspects, the local server transmits information representing a signal input from an external device to the encapsulated HTTP. It is included in the response.
[0016]
In addition to the features of the invention described in any one of claims 1 to 7, the host server provides the host server with the pseudo fixed global address name from the Internet as a destination. It further has HTTP request authentication means for authenticating an HTTP request addressed to the local server.
[0017]
The invention according to claim 9 is characterized in that, in addition to the features of the invention according to any one of claims 1 to 8, the HTTP request authentication means uses identification information of a sender included in the HTTP request. And authenticating the HTTP request.
[0018]
The invention according to claim 10 is the mobile phone having a WWW browsing function in addition to the feature of the invention according to any one of claims 1 to 9, and the HTTP request The sender identification information used by the authentication means is based on ID information of the mobile phone.
[0019]
The invention described in claim 11 does not have a fixed global IP address, but is assigned a unique pseudo fixed global address name to each, and has a plurality of local servers connected to the Internet, and a fixed global IP address. A step of establishing a tunneling session with the host server connected to the Internet, and the pseudo-fixed global address name is assigned to a unique part of the pseudo-fixed global address name with respect to the local server. Storing in association with the dynamic IP address used for the local server in a tunneling session with the local server, and HTTP destined for the pseudo-fixed global address name from the Internet Riku The pseudo-fixed global address name that is the destination of the received HTTP request, based on the stored information about the relationship between the pseudo-fixed global address name and the dynamic IP address. Identifying the dynamic IP address used for the local server in the tunneling session with the local server to which the global address name is assigned, and encapsulating the received HTTP request Generating an encapsulated HTTP request and transmitting the encapsulated HTTP request from the host server to the local server through the tunneling session using the identified dynamic IP address. A step in which the local server receives the encapsulated HTTP request from the host server through the tunneling session, a step of recovering the HTTP request from the received encapsulated HTTP request, and the recovered HTTP Obtaining an HTTP response that is a response to the request; generating an encapsulated HTTP response by encapsulating the HTTP response; and transmitting the encapsulated HTTP response to the host server through the tunneling session. Receiving the encapsulated HTTP response from the local server through the tunneling session. The method includes a step of recovering the HTTP response from the received encapsulated HTTP response and a step of transmitting the recovered HTTP response to the Internet.
[0020]
The invention described in claim 12 does not have a fixed global IP address, but is assigned a unique pseudo fixed global address name to each of them, and has a plurality of local servers connected to the Internet, and a fixed global IP address. Establishing a tunneling session with a host server connected to the Internet, and tunneling an encapsulated HTTP request in which an HTTP request from the Internet is encapsulated from the host server A step of receiving through the session, a step of recovering the HTTP request from the received encapsulated HTTP request, and a step of acquiring an HTTP response which is a response to the recovered HTTP request Causing the local server to execute a step of generating an encapsulated HTTP response by encapsulating the HTTP response and a step of transmitting the encapsulated HTTP response to the host server through the tunneling session. It is characterized by.
[0021]
The invention described in claim 13 does not have a fixed global IP address, but is assigned a unique pseudo fixed global address name to each of them, and has a plurality of local servers connected to the Internet, and a fixed global IP address. A step of establishing a tunneling session with the host server connected to the Internet, and the pseudo-fixed global address name is assigned to a unique part of the pseudo-fixed global address name with respect to the local server. Storing in association with the dynamic IP address used for the local server in a tunneling session with the local server, and HTTP destined for the pseudo-fixed global address name from the Internet Riku The local address to which the pseudo fixed global address name is assigned based on the information stored in the local address storage means from the pseudo fixed global address name that is the destination of the received HTTP request. Identifying the dynamic IP address used for the local server in the tunneling session with the server, and generating the encapsulated HTTP request by encapsulating the received HTTP request Transmitting the encapsulated HTTP request to the local server through the tunneling session using the identified dynamic IP address, and HTTP as a response to the HTTP request Receiving an encapsulated HTTP response encapsulating the response from the local server through the tunneling session, recovering the HTTP response from the received encapsulated HTTP response, and sending the recovered HTTP response to the Internet And transmitting to the host server.
[0022]
DETAILED DESCRIPTION OF THE INVENTION
With reference to the drawings, an HTTP session tunneling system 1 according to an embodiment of the present invention will be described. First, the configuration of the HTTP session tunneling system 1 will be described. FIG. 1 is a system configuration / operation diagram showing the configuration and operation of an HTTP session tunneling system 1. The HTTP session tunneling system 1 includes a host server 2, a local address storage unit 3, a tunneling session 4, and a local server 5. Alternatively, the external device 6 can be connected to the local server 5. Further, the access terminal 7 can be connected to the host server 2 via the Internet 8. Although not shown, a router may be interposed between the local server 5 and the tunneling session 4.
[0023]
The host server 2 has a function as a Web server connected to the Internet 8, and further, various means for tunneling an HTTP session in cooperation with the local address storage means 3 (the host / host described in the claims). It is a component that executes the means included in the server. Although not shown individually, the host server 2 has storage means (HDD, etc.), program execution means (CPU, OS, RAM, etc.), input / output interface, and WAN network connection means (gateway, etc.). ing. An application for executing functions according to various means or steps according to the present invention and a Web server application are loaded from the HDD storing the application into the RAM, and executed by the CPU with the OS as an intermediary. The function of the Web server may be independent from the host server 2. The host server 2 is connected to the access terminal 7 via the Internet 8 and to the local server 5 via the tunneling session 4 through the gateway.
[0024]
The local address storage means 3 is a component that stores the local address of the local server 5 in association with the dynamic IP address being used. When a router (a router having an Internet connection means such as an ADSL router) is provided on the WAN side of the local server 5, a dynamic IP address is assigned to the router, so the local address is also It is stored in association with the dynamic IP address (hereinafter, such a case is referred to as “when a router is provided”). When a router is installed, the local server 5 is assigned a private IP address that can be used on the LAN side of the router. Such a router has a correspondence relationship between a private IP address assigned to a local server and a dynamic IP address assigned to the router with respect to a destination address and a source address of a packet passing through the router. (In addition to IP addresses, port numbers may also be used to identify the corresponding relationship). In this way, even when the host server 2 communicates with the local server 5, it can perform such communication only by recognizing the route to the router. Become. Such an address translation function can be implemented using techniques such as NAT (Network Address Translation) or IP masquerading. The local address storage unit 3 includes a storage medium (such as an HDD), a program execution unit (such as a CPU, firmware, and RAM), and an input / output interface (not shown). Firmware for executing management of writing and reading data to and from the storage medium is executed by the CPU. The local address storage means 3 is typically in the form of an external storage device. The local address storage means 3 is connected to the host server 2 through an input / output interface.
[0025]
Here, the local address is the local server 5 (when the router is installed, the “router” instead of the “local server 5”. In this specification, the local address for executing the function of the Web server is used. Other than the server 5, the same applies to the following.) Among the pseudo-fixed global address names assigned to the server 5, it means a portion of an address unique to a specific local server 5. Since the local server 5 is connected to the Internet 8 via the host server 2, the pseudo-fixed global address name of the local server 5 is a host address for identifying the host server 2, ( This is a combination of a local address for identifying each of the local servers 5 to which the dynamic IP address is given (to the host server 2 or ISP server). For example, if the host address is expressed as “host_address” and the local address is expressed as “local_address”, the pseudo fixed global address name can be “http: // host_address / local_address”. This example is a case where the local address is a directory name or file name, but other than that, a subdomain such as “http: //local_address.host_address” or “http: // host_address: local_address” As a port number or any combination thereof.
[0026]
The tunneling session 4 is a part of the Internet 8 where a continuous TCP session with a dynamic IP address is transmitted using a route of a part of the Internet 8 which is a kind of WAN network based on TCP / IP. The root of In this TCP session, in order to maintain this continuously, the local server 5 works on the host server 2 at regular intervals. In this manner, since a private session can be established while using the communication network of the Internet 8, the local server 5 can be placed in a wide range of places around the world and can be accessed from a wide range of places. Convenience and confidentiality can be achieved at the same time. In the tunneling session 4, the HTTP request or response to be communicated is divided as necessary, and a header according to a unique tunneling protocol is attached to them, thereby encapsulating the HTTP request or response. Is called. In particular, by installing encryption means and decryption means before and after the tunneling session 4, the tunneling session 4 can be safely performed using encrypted communication.
[0027]
Since the tunneling session 4 is a TCP session, data communication can be performed on the upper layer protocol of the tunneling session 4. Furthermore, data communicated in the tunneling session 4 can be divided into two phases, for example, a “command phase” and a “message communication phase” according to the characteristics. The “command phase” is a state immediately after the TCP session is established, and the data format is line-oriented, and commands are exchanged in order. In this phase, authentication is performed using the identification number (client number) of the local server 5 and the connection authentication key, and the status is one of unauthenticated, being authenticated, or authenticated. In the “message communication phase”, the data format is record-oriented (payload) with length information in the header. Also, in order to realize batch processing of a plurality of requests, the order with other requests is not stored in principle. There are three types of payloads: message transmission, error notification, or disconnection. Communication on the tunneling session 4 is performed by appropriately using these two phases. When an HTTP request or an HTTP response is communicated through the tunneling session 4, communication is performed in the “message communication phase”.
[0028]
The TCP session is maintained, for example, by a keep alive process for the purpose of detecting a path break as described below. First, as an execution condition of keep alive processing, “predetermined keep alive time has elapsed since the previous processing execution” or “time out occurs waiting for message transmission payload depending on transaction contents” Set. When the execution condition is satisfied, the actual keep-alive process is executed as follows. First, the local server 5 starts a keep alive communication transaction and transmits a keep alive message to the host server 2. The host server 2 that has received it returns a keep-alive message, and ends this keep-alive communication transaction. On the local server 5 side, if the keep-alive message returned from the host server 2 does not arrive by the predetermined time-out time, the transaction is discarded. On the other hand, when the transaction is normally closed, it is determined that the communication path is normal. Otherwise, it is determined that the communication path is broken.
[0029]
The local server 5 is a component having a function as a Web server connected to the host server 2 by the tunneling session 4. The local server 5 is also connected to the Internet 8 that includes the tunneling session 4. The local server 5 has the same internal configuration as that of the host server 2, but a normal form of the local server 5 is a home personal computer, an Internet home appliance, or the like. The local server 5 has the above-described pseudo fixed global address name. Access to the local server 5 using the pseudo fixed global address name is performed via the host server 2. Become. In particular, the local address portion of the pseudo-fixed global address name is not resolved by DNS. After the TCP / IP session with the dynamic IP address is established with the host server 2, the local server 5 performs a series of operations for performing the tunneling session 4 thereon, A tunneling session 4 is established with the cooperating host server 2. As described above, a router can be interposed between the local server 5 and the tunneling session 4. When such a router is provided, the local server 5 is replaced except for the Web server function by the router executing the portion of the function of the local server 5 excluding the Web server function.
[0030]
The external device 6 is a component that inputs information connected to a local server via a LAN or the like. The external device 6 can take the form of, for example, a camera, a video camera, a microphone, a vibration sensor, a temperature sensor, a security system, and the like. Send to server 5. The local server 5 that has received it can transmit the data by HTTP by the function as the Web server. Further, the external device 6 can receive a control signal from the local server 5, and can control the direction of the video camera, give an instruction to the security system, and the like by the control signal.
[0031]
The access terminal 7 is an Internet access terminal having a Web browsing function. The internal configuration of the access terminal 7 is that of a general mobile computer. The access terminal 7 can normally take any form such as a mobile phone having a Web browsing function, a PDA, a mobile computer, and the like. The local server 5 can be accessed via the host server 2 by designating a pseudo fixed global address name on the Internet from the access terminal 7. At this time, a tunneling session 4 is established between the host server 2 and the local server 5.
[0032]
The Internet 8 is a worldwide WAN network based on TCP / IP. On the Internet, by specifying an IP address as a global address, it is possible to specify a communication partner and establish a communication session. In addition, a name resolution system using DNS is provided, and by specifying a domain name as a global address, a communication partner can be specified and a communication session can be established. On the Internet, it is possible to perform communication using HTTP, which is a higher layer protocol of TCP / IP, and communication using the tunneling protocol according to the present invention.
[0033]
Next, the operation of the HTTP session tunneling system 1 will be described. FIG. 1 is a system configuration / operation diagram showing the configuration and operation of an HTTP session tunneling system 1. First, in step S <b> 1, the local server 5 establishes a tunneling session 4 with the host server 2. The specific operation is as follows. First, the local server 5 establishes a TCP session (via the ISP and the Internet 8) to the host server 2. This type of TCP session does not strongly depend on the connection form of the local server 5 to the ISP server (dial-up, ISDN, ADSL, FTTH, cable TV Internet, etc. The host server 2 has a TCP session established. Immediately thereafter, the local server 5 is authenticated, and if the authentication is successful, the TCP session is maintained.The local server 5 establishes a TCP session with the host server 2 at regular intervals. By doing so, the TCP session between the local server 5 and the host server 2 becomes continuous, and the local server 5 in which the dynamic IP address is simply assigned from the ISP server. However, the host server 2 always uses the dynamic IP address The location on the net will continue to be accurately recognized, and a continuous TCP session is established in this way, so that it is possible to communicate reliably over the local server. The dynamic IP address used for 5 is immediately reflected in the local address storage means 3 by the host server 2 as corresponding to the local address of the local server 5. Data to be communicated Is data encapsulated by attaching a header according to a specific protocol, here a tunneling protocol, and details of the encapsulation operation will be described later.
[0034]
The operation in which the access terminal 7 communicates with the local server 5 through the tunneling session 4 will now be described. In step S2, the access terminal 7 transmits an HTTP request addressed to the pseudo fixed global address name. Specifically, the pseudo fixed global address name is designated as an address by a browser, and a data file for display (browsing) is requested. The HTTP request can include a specific request (command) such that the local server 5 that receives the HTTP request outputs a control signal for the external device 6.
[0035]
The Internet 8 refers to the host address in the pseudo fixed global address name, transfers the HTTP request between the routers, and routes (transmits) it to the host server 2 (step S3). At this time, if the host address is represented not by an IP address but by a domain name, the IP address of the host server 2 corresponding to the host address is first provided by DNS name resolution. Is routed to the host server 2.
[0036]
The host server 2 receives an HTTP request from the Internet 8. The host server 2 extracts a local address from the pseudo fixed global address name that is the destination of the received HTTP request. Then, the local address storage means 3 is searched using the local address as a key, and used for the local server 5 in the tunneling session 4 with the local server 5 to which the local address is assigned. The specified dynamic IP address is specified (step S4). Preferably, when the host server 2 receives the HTTP request, the host server 2 performs authentication of the access terminal 7 that is the transmission source. This is because there is a case where it is desired to restrict access by a third party to the local server 5. For example, the host server 2 issues identification information such as a user ID and a password to registered users in advance, returns an HTTP response for requesting the input to the access terminal 7, By confirming that the password is input, the access terminal 7 can be authenticated. In addition, when the access terminal 7 is a mobile phone or the like, the HTTP request (header) may include ID information of the mobile phone, so that the access terminal 7 can be used by using it as identification information of the sender. You may authenticate.
[0037]
Next, the host server 2 generates an encapsulated HTTP request by encapsulating the received HTTP request (step S5). Here, the encapsulation is to divide an HTTP request into a predetermined length or less as necessary, and attach a header according to a specific rule, here, a tunneling protocol. By doing so, it becomes possible to handle the HTTP request, which is the original data, by converting it into a packet of data having a header according to the tunneling protocol. Here, an example of a format for encapsulation is shown in Table 1. A header is attached in accordance with the tunneling protocol so that the packet has the format shown in Table 1.
[0038]
[Table 1]
Figure 0003935823
[0039]
Note that an HTTP request may be encrypted as pre-encapsulation processing. In this case, even if this encapsulated HTTP request is transmitted to a device other than the target local server 5, the content can be concealed and communication safety is greatly improved. be able to. This is because the TCP session established by the local server 5 in step S1 is temporarily interrupted for some reason and another IP address is reassigned from the ISP server to the local server 5, but the notification is sent to the host server. This is particularly effective when an abnormality such as having not reached 2 occurs. For encryption, an existing encryption technology such as SSL (Secure Sockets Layer) can be used.
[0040]
Next, the host server 2 transmits the encapsulated HTTP request to the dynamic IP address of the local server 5 specified in step S4 (step S6). Transmission takes place towards the tunneling session 4.
[0041]
The tunneling session 4 refers to the dynamic IP address, forwards the encapsulated HTTP request transmitted between the routers, and routes (transmits) it to the local server 5 (step S7).
[0042]
The local server 5 receives the encapsulated HTTP request from the tunneling session 4. The local server 5 releases the encapsulation from the received encapsulated HTTP request, and recovers the HTTP request that is the content (step S8). Recovery of HTTP requests is performed by extracting the contents (payload) as HTTP requests according to the format defined in the tunneling protocol shown in Table 1, and concatenating them appropriately if they are divided. The At this time, if the HTTP request is encrypted, the encryption is decrypted to restore the original HTTP request.
[0043]
The local server 5 issues the recovered HTTP request to the application that provides the Web server function, and acquires an HTTP response that is a response to the HTTP request. This HTTP response includes data to be output to the access terminal 7. Here, the data to be output can include information such as images, video, and audio received from the external device 6. In this way, the user of the access terminal 7 can acquire information detected by the external device 6 in real time, and can construct an extremely powerful and convenient home security system. Further, the access terminal 7 may include a specific request for outputting a control signal of the external device 6 in the HTTP request. The local server 5 extracts the control signal for the external device from the specific request and transmits it to the external device 6 to control the external device 6.
[0044]
The local server 5 generates an encapsulated HTTP response by encapsulating the HTTP response, and transmits the encapsulated HTTP response to the access terminal 7 via the tunneling session 4 on the reverse path (step S10). ). This encapsulation operation is the same as in the case of the HTTP request in step S5 described above, and the HTTP response may be encrypted before the encapsulation. Thereafter, the HTTP response is encapsulated and the tunneling session 4, the host server 2, and the Internet 8 are reversed from the local server 5 in the same operation as the transmission of the HTTP request described in steps S2 to S7. To the access terminal 7. The access terminal 7 receives the encapsulated HTTP response, decapsulates it, and displays it on the browser screen.
[0045]
【The invention's effect】
According to the present invention, there is no fixed global IP address, each of which is assigned a unique pseudo fixed global address name, and has a plurality of local servers connected to the Internet and a fixed global IP address. A tunneling session is established with the host server connected to the server, and an HTTP request is sent to the pseudo-fixed global address name associated with the dynamic IP address used in the tunneling session, Encapsulate the HTTP request and send it to the local server using the corresponding dynamic IP address through the tunneling session, and the local server obtains an HTTP response to the recovered HTTP request by releasing the encapsulation. The By sending to the path, the effect is obtained that the pseudo-fixed global address name can be performed unique HTTP communication with each other using. Further, according to the present invention, at least a part of the pseudo fixed global address name is expressed by a domain name, and other than an area for identifying the host server in the pseudo fixed global address name Since the name resolution is not performed by the DNS server on the Internet, an effect that the real-time name resolution can be performed without depending on the DNS is obtained. Furthermore, according to the present invention, since the tunneling session is a TCP session that does not depend on the HTTP request, it is possible to reliably establish communication using a higher layer protocol by continuously establishing the TCP session. The effect that it can be obtained. Furthermore, according to the present invention, an effect that secure communication can be performed can be obtained by performing the tunneling session using encrypted communication. Still further, according to the present invention, the local server can remotely control the external device by outputting a control signal of the external device in response to a specific request included in the encapsulated HTTP request. The effect is obtained. Furthermore, according to the present invention, the local server can obtain information from the external device remotely by including information representing a signal input from the external device in the encapsulated HTTP response. . Furthermore, according to the present invention, the host server authenticates an HTTP request addressed to the local server destined for the pseudo-fixed global address name from the Internet, so that only an appropriate user is authenticated. The effect that the service can be provided is obtained. Furthermore, according to the present invention, the HTTP request authenticating means can authenticate the HTTP request by using the identification information of the sender included in the HTTP request, thereby performing appropriate authentication of the user. An effect is obtained. Further, according to the present invention, the source of the HTTP request is a mobile phone having a WWW browsing function, and the identification information of the source used by the HTTP request authentication means is based on the ID information of the mobile phone. As a result, it is possible to automatically authenticate an access from a specific mobile phone.
[Brief description of the drawings]
FIG. 1 is a system configuration / operation diagram showing the configuration and operation of an HTTP session tunneling system 1. FIG.
[Explanation of symbols]
1 HTTP session tunneling system
2 Host server
3 Local address storage means
4 Tunneling session
5 Local server
6 External equipment
7 Access terminal
8 Internet

Claims (13)

固定グローバルIPアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のローカル・サーバと、
固定グローバルIPアドレスを有し、前記インターネットに接続されたホスト・サーバと、を具備し、
前記ローカル・サーバは、
トンネリング・セッションを前記ホスト・サーバとの間に確立するトンネリング・セッション確立手段と、
前記インターネットからのHTTPリクエストがカプセル化されたものであるカプセル化HTTPリクエストを前記ホスト・サーバから前記トンネリング・セッションを通じて受信するカプセル化HTTPリクエスト受信手段と、
受信した前記カプセル化HTTPリクエストから前記HTTPリクエストを回復するHTTPリクエスト回復手段と、
回復した前記HTTPリクエストに対する応答であるHTTPレスポンスを取得するHTTPレスポンス取得手段と、
前記HTTPレスポンスをカプセル化することによってカプセル化HTTPレスポンスを生成するHTTPレスポンスカプセル化手段と、
前記カプセル化HTTPレスポンスを前記トンネリング・セッションを通じて前記ホスト・サーバに向けて送信するカプセル化HTTPレスポンス送信手段と、を有し、及び
前記ホスト・サーバは、
前記擬似固定グローバルアドレス名の前記ローカル・サーバに関してユニークな部分を、当該擬似固定グローバルアドレス名が割り当てられたローカル・サーバとの間のトンネリング・セッションで当該ローカル・サーバに対して使用されている前記動的IPアドレスと関連付けて記憶するローカル・アドレス記憶手段と、
前記インターネットから前記擬似固定グローバルアドレス名を宛先とするHTTPリクエストを受信するHTTPリクエスト受信手段と、
受信した前記HTTPリクエストの宛先である擬似固定グローバルアドレス名から、前記ローカル・アドレス記憶手段に記憶された情報に基づいて、当該擬似固定グローバルアドレス名が割り当てられた前記ローカル・サーバとの間の前記トンネリング・セッションで当該ローカル・サーバに対して使用されている前記動的IPアドレスを特定する動的IPアドレス特定手段と、
受信した前記HTTPリクエストをカプセル化することによってカプセル化HTTPリクエストを生成するHTTPリクエストカプセル化手段と、
前記カプセル化HTTPリクエストを、特定された前記動的IPアドレスを使用している前記トンネリング・セッションを通じて前記ローカル・サーバに送信するカプセル化HTTPリクエスト送信手段と、
前記カプセル化HTTPレスポンスを前記ローカル・サーバから前記トンネリング・セッションを通じて受信するカプセル化HTTPレスポンス受信手段と、
受信した前記カプセル化HTTPレスポンスから前記HTTPレスポンスを回復するHTTPレスポンス回復手段と、
回復した前記HTTPレスポンスを前記インターネットに送信するHTTPレスポンス送信手段と、を有することを特徴とするHTTPセッション・トンネリング・システム。
A plurality of local servers that do not have a fixed global IP address but are each assigned a unique pseudo fixed global address name and connected to the Internet;
A host server having a fixed global IP address and connected to the Internet,
The local server is
Tunneling session establishing means for establishing a tunneling session with the host server;
Encapsulated HTTP request receiving means for receiving an encapsulated HTTP request encapsulating the HTTP request from the Internet from the host server through the tunneling session;
HTTP request recovery means for recovering the HTTP request from the received encapsulated HTTP request;
HTTP response acquisition means for acquiring an HTTP response that is a response to the recovered HTTP request;
An HTTP response encapsulation means for generating an encapsulated HTTP response by encapsulating the HTTP response;
Encapsulated HTTP response transmitting means for transmitting the encapsulated HTTP response to the host server through the tunneling session, and the host server,
The portion unique to the local server of the pseudo-fixed global address name is used for the local server in a tunneling session with the local server to which the pseudo-fixed global address name is assigned. A local address storage means for storing in association with the dynamic IP address;
HTTP request receiving means for receiving an HTTP request destined for the pseudo fixed global address name from the Internet;
Based on the information stored in the local address storage means, from the pseudo fixed global address name that is the destination of the received HTTP request, the communication with the local server to which the pseudo fixed global address name is assigned. Dynamic IP address specifying means for specifying the dynamic IP address used for the local server in a tunneling session;
HTTP request encapsulation means for generating an encapsulated HTTP request by encapsulating the received HTTP request;
Encapsulated HTTP request transmitting means for transmitting the encapsulated HTTP request to the local server through the tunneling session using the identified dynamic IP address;
Encapsulated HTTP response receiving means for receiving the encapsulated HTTP response from the local server through the tunneling session;
HTTP response recovery means for recovering the HTTP response from the received encapsulated HTTP response;
An HTTP session tunneling system, comprising: HTTP response transmission means for transmitting the recovered HTTP response to the Internet.
固定グローバルIPアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のルータと、
前記ルータのLAN側に接続され、当該LAN内で通用するプライベートIPアドレスが当該ルータから割り当てられたローカル・サーバと、
固定グローバルIPアドレスを有し、前記インターネットに接続されたホスト・サーバと、を具備し、
前記ローカル・サーバは、
トンネリング・セッションを、前記ルータを介して前記ホスト・サーバとの間に確立するトンネリング・セッション確立手段と、
前記インターネットからのHTTPリクエストがカプセル化されたものであるカプセル化HTTPリクエストを前記ホスト・サーバから前記トンネリング・セッションを通じて受信するカプセル化HTTPリクエスト受信手段と、
受信した前記カプセル化HTTPリクエストから前記HTTPリクエストを回復するHTTPリクエスト回復手段と、
回復した前記HTTPリクエストに対する応答であるHTTPレスポンスを取得するHTTPレスポンス取得手段と、
前記HTTPレスポンスをカプセル化することによってカプセル化HTTPレスポンスを生成するHTTPレスポンスカプセル化手段と、
前記カプセル化HTTPレスポンスを前記トンネリング・セッションを通じて前記ホスト・サーバに向けて送信するカプセル化HTTPレスポンス送信手段と、を有し、
前記ホスト・サーバは、
前記擬似固定グローバルアドレス名の前記ルータに関してユニークな部分を、当該擬似固定グローバルアドレス名が割り当てられた前記ルータを介してインターネットに接続される前記ローカル・サーバとの間のトンネリング・セッションで当該ルータに対して使用されている前記動的IPアドレスと関連付けて記憶するローカル・アドレス記憶手段と、
前記インターネットから前記擬似固定グローバルアドレス名を宛先とするHTTPリクエストを受信するHTTPリクエスト受信手段と、
受信した前記HTTPリクエストの宛先である擬似固定グローバルアドレス名から、前記ローカル・アドレス記憶手段に記憶された情報に基づいて、当該擬似固定グローバルアドレス名が割り当てられた前記ローカル・サーバとの間の前記トンネリング・セッションで当該ルータに対して使用されている前記動的IPアドレスを特定する動的IPアドレス特定手段と、
受信した前記HTTPリクエストをカプセル化することによってカプセル化HTTPリクエストを生成するHTTPリクエストカプセル化手段と、
前記カプセル化HTTPリクエストを、前記トンネリング・セッションを通じて前記動的IPアドレスを使用している前記ルータに送信するカプセル化HTTPリクエスト送信手段と、
前記カプセル化HTTPレスポンスを前記ローカル・サーバから前記トンネリング・セッションを通じて受信するカプセル化HTTPレスポンス受信手段と、
受信した前記カプセル化HTTPレスポンスから前記HTTPレスポンスを回復するHTTPレスポンス回復手段と、
回復した前記HTTPレスポンスを前記インターネットに送信するHTTPレスポンス送信手段と、を有し、及び
前記ルータは、
当該ルータを通過する前記カプセル化リクエスト及び前記カプセル化レスポンスを含むパケットの宛先アドレス及び送信元アドレスに関して、前記ローカル・サーバに割り当てられている前記プライベートIPアドレスと、当該ルータに割り当てられている前記動的IPアドレスとを、対応関係を維持した上で相互に変換するアドレス変換手段、を有することを特徴とするHTTPセッション・トンネリング・システム。
A plurality of routers that do not have a fixed global IP address but are each assigned a unique pseudo fixed global address name and are connected to the Internet;
A local server connected to the LAN side of the router and assigned with a private IP address that can be used in the LAN;
A host server having a fixed global IP address and connected to the Internet,
The local server is
Tunneling session establishment means for establishing a tunneling session with the host server via the router;
Encapsulated HTTP request receiving means for receiving an encapsulated HTTP request encapsulating the HTTP request from the Internet from the host server through the tunneling session;
HTTP request recovery means for recovering the HTTP request from the received encapsulated HTTP request;
HTTP response acquisition means for acquiring an HTTP response that is a response to the recovered HTTP request;
An HTTP response encapsulation means for generating an encapsulated HTTP response by encapsulating the HTTP response;
Encapsulated HTTP response transmitting means for transmitting the encapsulated HTTP response to the host server through the tunneling session;
The host server is
A portion unique to the router of the pseudo-fixed global address name is transferred to the router in a tunneling session with the local server connected to the Internet via the router to which the pseudo-fixed global address name is assigned. Local address storage means for storing in association with the dynamic IP address being used for
HTTP request receiving means for receiving an HTTP request destined for the pseudo fixed global address name from the Internet;
Based on the information stored in the local address storage means, from the pseudo fixed global address name that is the destination of the received HTTP request, the communication with the local server to which the pseudo fixed global address name is assigned. Dynamic IP address specifying means for specifying the dynamic IP address used for the router in a tunneling session;
HTTP request encapsulation means for generating an encapsulated HTTP request by encapsulating the received HTTP request;
Encapsulated HTTP request transmitting means for transmitting the encapsulated HTTP request to the router using the dynamic IP address through the tunneling session;
Encapsulated HTTP response receiving means for receiving the encapsulated HTTP response from the local server through the tunneling session;
HTTP response recovery means for recovering the HTTP response from the received encapsulated HTTP response;
An HTTP response transmission means for transmitting the recovered HTTP response to the Internet, and the router,
Regarding the destination address and source address of the packet including the encapsulation request and the encapsulation response that pass through the router, the private IP address assigned to the local server and the operation assigned to the router An HTTP session tunneling system, characterized in that it has an address conversion means for mutually converting a static IP address while maintaining a correspondence relationship.
前記擬似固定グローバルアドレス名の少なくとも一部は、ドメイン名によって表現されるものであり、かつ、当該擬似固定グローバルアドレス名の内で前記ホスト・サーバを識別する領域以外の部分は、前記インターネット上のDNSサーバによっては名前解決がされないことを特徴とする請求項1又は2に記載のHTTPセッション・トンネリング・システム。At least a part of the pseudo fixed global address name is expressed by a domain name, and a part of the pseudo fixed global address name other than the area for identifying the host server is on the Internet. The HTTP session tunneling system according to claim 1 or 2, wherein name resolution is not performed by a DNS server. 前記トンネリング・セッションは、前記HTTPリクエストに依存されないTCPセッションであることを特徴とする請求項1から3のいずれか1項に記載のHTTPセッション・トンネリング・システム。4. The HTTP session tunneling system according to claim 1, wherein the tunneling session is a TCP session that does not depend on the HTTP request. 5. 前記トンネリング・セッションは、暗号化通信を使用して実施されることを特徴とする請求項1から4のいずれか1項に記載のHTTPセッション・トンネリング・システム。The HTTP session tunneling system according to claim 1, wherein the tunneling session is performed using encrypted communication. 前記ローカル・サーバは、前記カプセル化HTTPリクエストに含まれる特定のリクエストに応答して、外部機器の制御信号を出力することを特徴とする請求項1から5のいずれか1項に記載のHTTPセッション・トンネリング・システム。The HTTP session according to claim 1, wherein the local server outputs a control signal of an external device in response to a specific request included in the encapsulated HTTP request.・ Tunneling system. 前記ローカル・サーバは、外部機器から入力された信号を表わす情報を前記カプセル化HTTPレスポンスに含ませることを特徴とする請求項1から6のいずれか1項に記載のHTTPセッション・トンネリング・システム。The HTTP session tunneling system according to claim 1, wherein the local server includes information representing a signal input from an external device in the encapsulated HTTP response. 前記ホスト・サーバは、前記インターネットからの前記擬似固定グローバルアドレス名を宛先とする前記ローカル・サーバに宛てたHTTPリクエストを認証するHTTPリクエスト認証手段を更に有することを特徴とする請求項1から7のいずれか1項に記載のHTTPセッション・トンネリング・システム。8. The host server according to claim 1, further comprising HTTP request authentication means for authenticating an HTTP request addressed to the local server destined for the pseudo fixed global address name from the Internet. The HTTP session tunneling system according to any one of the preceding claims. 前記HTTPリクエスト認証手段は、前記HTTPリクエストに含まれる発信元の識別情報を使用して当該HTTPリクエストを認証することを特徴とする請求項1から8のいずれか1項に記載のHTTPセッション・トンネリング・システム。9. The HTTP session tunneling according to claim 1, wherein the HTTP request authentication unit authenticates the HTTP request using identification information of a sender included in the HTTP request. ·system. 前記HTTPリクエストの発信元はWWWブラウジング機能を有する携帯電話機であり、及び前記HTTPリクエスト認証手段が使用する前記発信元の識別情報は、当該携帯電話機のID情報に基づくものであることを特徴とする請求項1から9のいずれか1項に記載のHTTPセッション・トンネリング・システム。The source of the HTTP request is a mobile phone having a WWW browsing function, and the identification information of the source used by the HTTP request authentication means is based on ID information of the mobile phone. The HTTP session tunneling system according to any one of claims 1 to 9. 固定グローバルIPアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のローカル・サーバと、固定グローバルIPアドレスを有し、前記インターネットに接続されたホスト・サーバとの間で、トンネリング・セッションを確立するステップと、
前記擬似固定グローバルアドレス名の前記ローカル・サーバに関してユニークな部分を、当該擬似固定グローバルアドレス名が割り当てられたローカル・サーバとの間のトンネリング・セッションで当該ローカル・サーバに対して使用されている前記動的IPアドレスと関連付けて記憶するステップと、
前記インターネットから前記擬似固定グローバルアドレス名を宛先とするHTTPリクエストを受信するステップと、
受信した前記HTTPリクエストの宛先である擬似固定グローバルアドレス名から、記憶された前記擬似固定グローバルアドレス名と前記動的IPアドレスとの関係に関する情報に基づいて、当該擬似固定グローバルアドレス名が割り当てられた前記ローカル・サーバとの間の前記トンネリング・セッションで当該ローカル・サーバに対して使用されている前記動的IPアドレスを特定するステップと、
受信した前記HTTPリクエストをカプセル化することによってカプセル化HTTPリクエストを生成するステップと、
前記カプセル化HTTPリクエストを、特定された前記動的IPアドレスを使用している前記トンネリング・セッションを通じて前記ホスト・サーバから前記ローカル・サーバに送信するステップと、
前記カプセル化HTTPリクエストを前記ホスト・サーバから前記トンネリング・セッションを通じて前記ローカル・サーバが受信するステップと、
受信した前記カプセル化HTTPリクエストから前記HTTPリクエストを回復するステップと、
回復した前記HTTPリクエストに対する応答であるHTTPレスポンスを取得するステップと、
前記HTTPレスポンスをカプセル化することによってカプセル化HTTPレスポンスを生成するステップと、
前記カプセル化HTTPレスポンスを前記トンネリング・セッションを通じて前記ホスト・サーバに送信するステップと、
前記カプセル化HTTPレスポンスを前記ローカル・サーバから前記トンネリング・セッションを通じて前記ホスト・サーバが受信するステップと、
受信した前記カプセル化HTTPレスポンスから前記HTTPレスポンスを回復するステップと、
回復した前記HTTPレスポンスを前記インターネットに送信するステップと、を有することを特徴とするHTTPセッション・トンネリング方法。
A plurality of local servers connected to the Internet, each having a fixed pseudo IP address that does not have a fixed global IP address, each assigned a unique pseudo fixed global address name, and a host connected to the Internet that has a fixed global IP address Establishing a tunneling session with the server;
The portion unique to the local server of the pseudo-fixed global address name is used for the local server in a tunneling session with the local server to which the pseudo-fixed global address name is assigned. Storing in association with the dynamic IP address;
Receiving an HTTP request destined for the pseudo-fixed global address name from the Internet;
The pseudo fixed global address name is assigned from the pseudo fixed global address name that is the destination of the received HTTP request, based on the stored information on the relationship between the pseudo fixed global address name and the dynamic IP address. Identifying the dynamic IP address used for the local server in the tunneling session with the local server;
Generating an encapsulated HTTP request by encapsulating the received HTTP request;
Sending the encapsulated HTTP request from the host server to the local server through the tunneling session using the identified dynamic IP address;
Receiving the encapsulated HTTP request from the host server through the tunneling session;
Recovering the HTTP request from the received encapsulated HTTP request;
Obtaining an HTTP response that is a response to the recovered HTTP request;
Generating an encapsulated HTTP response by encapsulating the HTTP response;
Sending the encapsulated HTTP response to the host server through the tunneling session;
Receiving the encapsulated HTTP response from the local server through the tunneling session;
Recovering the HTTP response from the received encapsulated HTTP response;
Transmitting the recovered HTTP response to the Internet; and an HTTP session tunneling method.
固定グローバルIPアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のローカル・サーバと、固定グローバルIPアドレスを有し、前記インターネットに接続されたホスト・サーバとの間で、トンネリング・セッションを確立するステップと、
前記インターネットからのHTTPリクエストがカプセル化されたものであるカプセル化HTTPリクエストを前記ホスト・サーバから前記トンネリング・セッションを通じて受信するステップと、
受信した前記カプセル化HTTPリクエストから前記HTTPリクエストを回復するステップと、
回復した前記HTTPリクエストに対する応答であるHTTPレスポンスを取得するステップと、
前記HTTPレスポンスをカプセル化することによってカプセル化HTTPレスポンスを生成するステップと、
前記カプセル化HTTPレスポンスを前記トンネリング・セッションを通じて前記ホスト・サーバに送信するステップと、を前記ローカル・サーバに実行させることを特徴とするHTTPセッション・トンネリング・プログラム。
A plurality of local servers connected to the Internet, each having a fixed pseudo IP address that does not have a fixed global IP address, each assigned a unique pseudo fixed global address name, and a host connected to the Internet that has a fixed global IP address Establishing a tunneling session with the server;
Receiving an encapsulated HTTP request from the host server through the tunneling session that is an encapsulated HTTP request from the Internet;
Recovering the HTTP request from the received encapsulated HTTP request;
Obtaining an HTTP response that is a response to the recovered HTTP request;
Generating an encapsulated HTTP response by encapsulating the HTTP response;
An HTTP session tunneling program that causes the local server to execute the step of transmitting the encapsulated HTTP response to the host server through the tunneling session.
固定グローバルIPアドレスを有しないが、それぞれにユニークな擬似固定グローバルアドレス名が割り当てられ、インターネットに接続された複数のローカル・サーバと、固定グローバルIPアドレスを有し、前記インターネットに接続されたホスト・サーバとの間で、トンネリング・セッションを確立するステップと、
前記擬似固定グローバルアドレス名の前記ローカル・サーバに関してユニークな部分を、当該擬似固定グローバルアドレス名が割り当てられたローカル・サーバとの間のトンネリング・セッションで当該ローカル・サーバに対して使用されている前記動的IPアドレスと関連付けて記憶するステップと、
前記インターネットから前記擬似固定グローバルアドレス名を宛先とするHTTPリクエストを受信するステップと、
受信した前記HTTPリクエストの宛先である擬似固定グローバルアドレス名から、前記ローカル・アドレス記憶手段に記憶された情報に基づいて、当該擬似固定グローバルアドレス名が割り当てられた前記ローカル・サーバとの間の前記トンネリング・セッションで当該ローカル・サーバに対して使用されている前記動的IPアドレスを特定するステップと、
受信した前記HTTPリクエストをカプセル化することによってカプセル化HTTPリクエストを生成するステップと、
前記カプセル化HTTPリクエストを、特定された前記動的IPアドレスを使用している前記トンネリング・セッションを通じて前記ローカル・サーバに送信するステップと、
前記HTTPリクエストに対する応答であるHTTPレスポンスをカプセル化したカプセル化HTTPレスポンスを前記ローカル・サーバから前記トンネリング・セッションを通じて受信するステップと、
受信した前記カプセル化HTTPレスポンスから前記HTTPレスポンスを回復するステップと、
回復した前記HTTPレスポンスを前記インターネットに送信するステップと、を前記ホスト・サーバに実行させることを特徴とするHTTPセッション・トンネリング・プログラム。
A plurality of local servers connected to the Internet, each having a fixed pseudo IP address that does not have a fixed global IP address, each assigned a unique pseudo fixed global address name, and a host connected to the Internet that has a fixed global IP address Establishing a tunneling session with the server;
The portion unique to the local server of the pseudo-fixed global address name is used for the local server in a tunneling session with the local server to which the pseudo-fixed global address name is assigned. Storing in association with the dynamic IP address;
Receiving an HTTP request destined for the pseudo-fixed global address name from the Internet;
Based on the information stored in the local address storage means, from the pseudo fixed global address name that is the destination of the received HTTP request, the communication with the local server to which the pseudo fixed global address name is assigned. Identifying the dynamic IP address being used for the local server in a tunneling session;
Generating an encapsulated HTTP request by encapsulating the received HTTP request;
Sending the encapsulated HTTP request to the local server through the tunneling session using the identified dynamic IP address;
Receiving an encapsulated HTTP response encapsulating an HTTP response which is a response to the HTTP request from the local server through the tunneling session;
Recovering the HTTP response from the received encapsulated HTTP response;
An HTTP session tunneling program that causes the host server to execute the step of transmitting the recovered HTTP response to the Internet.
JP2002320230A 2002-11-01 2002-11-01 HTTP session tunneling system, method thereof, and program thereof Expired - Fee Related JP3935823B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002320230A JP3935823B2 (en) 2002-11-01 2002-11-01 HTTP session tunneling system, method thereof, and program thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002320230A JP3935823B2 (en) 2002-11-01 2002-11-01 HTTP session tunneling system, method thereof, and program thereof

Publications (2)

Publication Number Publication Date
JP2004158923A JP2004158923A (en) 2004-06-03
JP3935823B2 true JP3935823B2 (en) 2007-06-27

Family

ID=32801208

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002320230A Expired - Fee Related JP3935823B2 (en) 2002-11-01 2002-11-01 HTTP session tunneling system, method thereof, and program thereof

Country Status (1)

Country Link
JP (1) JP3935823B2 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8321573B2 (en) 2004-09-17 2012-11-27 Sanyo Electric Co., Ltd. Communications terminal with optimum send interval
JP4312136B2 (en) 2004-09-17 2009-08-12 三洋電機株式会社 Command processing unit
JP4597706B2 (en) * 2005-02-25 2010-12-15 パナソニック株式会社 Information processing system, information processing apparatus, server apparatus, and information processing method
JP4597705B2 (en) * 2005-02-25 2010-12-15 パナソニック株式会社 Information processing system, information processing apparatus, server apparatus, and information processing method
JP4514623B2 (en) 2005-02-25 2010-07-28 パナソニック株式会社 Information processing system, information processing apparatus, server apparatus, and information processing method
JP4905395B2 (en) * 2008-03-21 2012-03-28 富士通株式会社 Communication monitoring device, communication monitoring program, and communication monitoring method
JP4992780B2 (en) * 2008-03-21 2012-08-08 富士通株式会社 Communication monitoring device, communication monitoring program, and communication monitoring method

Also Published As

Publication number Publication date
JP2004158923A (en) 2004-06-03

Similar Documents

Publication Publication Date Title
JP4708376B2 (en) Method and system for securing access to a private network
JP4105722B2 (en) Communication device
EP0838930A2 (en) Pseudo network adapter for frame capture, encapsulation and encryption
JP4146886B2 (en) Communication module and application program including this communication module
JP4524906B2 (en) Communication relay device, communication relay method, communication terminal device, and program storage medium
WO2009093308A1 (en) Connection control method, connection control server device, connection control client device, and program
JP2005167646A (en) Connection control system, connection controller and connection manager
JP3935823B2 (en) HTTP session tunneling system, method thereof, and program thereof
JP3970857B2 (en) Communication system, gateway device
JP2011188448A (en) Gateway apparatus, communication method and communication program
JP4630296B2 (en) Gateway device and authentication processing method
JP2005197936A (en) Communication system, registering device, and communication device
JP2007166116A (en) Home server apparatus and application server apparatus
JP4355696B2 (en) Router, packet forward method, and packet forward program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050706

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20060914

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20060914

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061213

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070219

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070320

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100330

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110330

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees