JP5288204B2 - ゲートウェイシステム及び制御方法 - Google Patents

ゲートウェイシステム及び制御方法 Download PDF

Info

Publication number
JP5288204B2
JP5288204B2 JP2009185624A JP2009185624A JP5288204B2 JP 5288204 B2 JP5288204 B2 JP 5288204B2 JP 2009185624 A JP2009185624 A JP 2009185624A JP 2009185624 A JP2009185624 A JP 2009185624A JP 5288204 B2 JP5288204 B2 JP 5288204B2
Authority
JP
Japan
Prior art keywords
address
url
request
hash value
server device
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
JP2009185624A
Other languages
English (en)
Other versions
JP2011039725A (ja
Inventor
邦彦 東村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2009185624A priority Critical patent/JP5288204B2/ja
Priority to EP10170078.9A priority patent/EP2285071B8/en
Priority to US12/850,351 priority patent/US8510372B2/en
Priority to CN201010247379.8A priority patent/CN101997785B/zh
Publication of JP2011039725A publication Critical patent/JP2011039725A/ja
Application granted granted Critical
Publication of JP5288204B2 publication Critical patent/JP5288204B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5076Update or notification mechanisms, e.g. DynDNS

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、クライアント−サーバ型のネットワークサービスにおけるゲートウェイシステムの負荷分散のための技術に関する。
端末の性能が向上し、また、アクセス網が高速化することによって、キャリアのゲートウェイが処理するトラフィックは増大している。このため、キャリアは、インターネットとのトランジット回線を増強し、また、情報処理技術を用いてゲートウェイにおけるトラフィックを削減することを目指している。
例えば、トラフィックを削減するための情報処理技術には、コンテンツキャッシュがある。ここで、コンテンツキャッシュとは、ある端末がインターネット上のサーバ装置(例えば、Webサーバ)のコンテンツを要求した場合、ゲートウェイのサーバ装置(例えば、Webプロキシ)が、Webサーバから取得したコンテンツを一時的に格納し、他の端末が該コンテンツを要求した場合、Webプロキシが、Webサーバの代理として、格納されたコンテンツを返答する技術である。
これによって、ゲートウェイは、Webサーバとの間のトラフィックを削減することができる。また、ゲートウェイは、コンテンツ取得の処理を速くすることができる。
また、ゲートウェイは、大量の端末を収容し、また、大量のコンテンツを格納するために複数のサーバ装置を備え、これらのサーバ装置にコンテンツを分散する。ゲートウェイが備えるサーバ装置の性能に限界がある場合、複数のサーバ装置に処理を分散する方法は非常に有効である。
従来では、複数のサーバ装置に処理を分散するため、例えば、端末とゲートウェイのサーバ装置との間に負荷分散装置が設置されている。負荷分散装置は、端末からの要求(例えば、コンテンツ取得要求)を各サーバ装置に転送する。なお、負荷分散の処理は、端末からの要求をどこまで深く解析するかによって異なる。
例えば、送信元IPアドレスなどの低いレイヤの情報に基づいて負荷分散を実行する場合、解析の処理が少ないので、負荷分散装置は、大容量のトラフィックを処理することができる。しかしながら、端末からの要求の転送先を計算するための情報が少ないので、負荷分散装置は、適切に負荷分散を実行できない可能性がある。
また、HTTPリクエストなどのレイヤ7の情報の情報に基づいて負荷分散を実行する場合、負荷分散装置は、アプリケーション毎の特性に応じて適切に負荷分散を実行することができる。しかし、負荷分散装置自体の負荷が高くなるので、負荷分散装置は、多数のサーバを管理できない可能性がある。
そこで、前述した問題を解決するために、以下に示す負荷分散のための技術が提案されている。
例えば、各端末が、送信先を判定するためのテーブルに基づいて、各サーバ装置に要求を分散する技術が提案されている(例えば、特許文献1参照)。特許文献1に記載された技術によると、どのサーバに要求を送信すべきかを判定するためのテーブルが端末に配布されるので、端末は各サーバ装置に要求を分散することができる。さらに、端末からの要求に対する返答にテーブルの更新情報が含められるので、テーブルの配布に要する負荷も軽減される。
また、各端末の要求から生成されたハッシュ値に基づいて、各端末が要求を各ゲートウェイに分散する技術が提案されている(例えば、特許文献2参照)。特許文献2に記載された技術によると、要求から生成されたハッシュ値がゲートウェイのインデックスとして利用されるので、各端末から送信された同じ内容の要求(例えば、同じホストに対するコンテンツ取得要求)は、同じゲートウェイに送信される。
また、負荷分散装置が端末からの要求内容に基づいてハッシュ値を計算し、計算されたハッシュ値に基づいて要求の転送先となる適切なサーバ装置を選択する技術が提案されている(例えば、特許文献3)。特許文献3に記載された技術によると、負荷分散装置が、端末の要求内容に基づいて計算されたハッシュ値を用いて要求を転送するので、負荷分散装置は処理を各サーバ装置に分散することができる。
特開平11−004261号公報 特表2002−523838号公報 特開2004−030690号公報
特許文献3に記載された技術では、負荷分散装置がハッシュ値を計算しているので、負荷分散装置の処理量が増え、負荷分散装置がボトルネックとなる可能性がある。つまり、負荷分散装置を用いる方法では、負荷分散装置自体に負荷が集中し、負荷分散装置が単一障害点になる可能性がある。一方、特許文献1及び2に記載された技術は、負荷分散装置を必要としない。
しかしながら、特許文献1に記載された技術では、各端末が、要求の転送先情報(テーブル)を管理している。このため、担当するサーバ装置(Webサーバ)が変更された場合、テーブルの更新に要する負荷が大きい問題がある。また、端末に新たにテーブルの検索機能及び更新機能を追加しなければならない。したがって、既存のシステムへこの技術を導入するには高いコストを要する問題がある。
そして、特許文献2に記載された技術も、特許文献1に記載された技術と同様に、端末にテーブルの検索機能及び更新機能を追加しなければならない問題がある。なお、端末がハッシュ値を計算する場合も、端末側にハッシュ値を計算するための機能を追加しなければならない。
本発明は、前述した問題に鑑みてなされたものであり、ゲートウェイの前段に複雑な負荷分散装置を設置することなく、さらに、端末に複雑な機能を追加しないで、複数のゲートウェイに負荷を分散することができるゲートウェイシステムを提供することを目的とする。具体的には、本発明のゲートウェイシステムは、要求内容を識別する値、例えば、宛先ホスト名又はURLから生成されたハッシュ値に基づいて、IPアドレスを生成し、コンテンツへのアクセスを各ゲートウェイに適切に分散する。
本発明の代表的な一例を示せば以下のとおりである。すなわち、複数の端末から複数の第1サーバ装置への要求を分散するゲートウェイシステムであって、前記ゲートウェイシステムは、複数の第2サーバ装置と、名前解決装置と、を備え、前記名前解決装置には、文字列からIPアドレスを生成するアドレス生成関数が配布され、前記各第2サーバ装置には、所定の複数のIPアドレスが登録され、前記名前解決装置は、前記端末から送信された、アクセス先のURLの名前解決のための第1要求を受信すると、前記受信した第1要求からアクセス先のURLを抽出し、前記アドレス生成関数を用いて、前記抽出されたURLのホスト名の文字列からIPアドレスを生成し、前記生成されたIPアドレスを、前記第1要求の回答として、前記端末に送信し、前記端末が、前記第1サーバ装置のURLをアクセス先とする第2要求を、前記第1要求の回答として送信されたIPアドレスが登録されている前記第2サーバ装置に送信すると、前記第2サーバ装置は、アクセス先のURLに基づいて、前記送信された第2要求を前記第1サーバ装置に転送することを特徴とする。
本発明の一実施形態によれば、ゲートウェイシステムは、名前解決装置が、ハッシュ値に基づいてサーバ装置のIPアドレスを生成するので、負荷分散装置を用いずに、均等に負荷を分散することができる。
本発明の第1の実施形態のゲートウェイシステムの構成を示す説明図である。 本発明の第1の実施形態の管理サーバが備えるアドレス割当テーブルの構成を示す説明図である。 本発明の第1の実施形態の管理サーバが備えるアドレス生成関数を示す説明図である。 本発明の第1の実施形態の管理サーバが備える対象ドメインネームテーブルの構成を示す説明図である。 本発明の第1の実施形態のDNSプロキシの構成を示すブロック図である。 本発明の第1の実施形態のDNSプロキシが実行する名前解決の処理を示すフローチャートである。 本発明の第1の実施形態のWebプロキシの構成を示すブロック図である。 本発明の第1の実施形態のWebプロキシが備える担当IPアドレステーブルの構成を示す説明図である。 本発明の第1の実施形態のWebプロキシが備えるコンテンツテーブルの構成を示す説明図である。 本発明の第1の実施形態のWebプロキシが実行するコンテンツ取得の処理を示すフローチャートである。 本発明の第1の実施形態のゲートウェイシステムのコンテンツ取得の処理を示すシーケンスである。 本発明の第1の実施形態の割当変更要求のフォーマットを示す説明図である。 本発明の第1の実施形態のWebプロキシが実行する割当変更の処理を示すフローチャートである。 本発明の第1の実施形態のゲートウェイシステムの割当変更の処理を示すシーケンスである。 本発明の第2の実施形態のURL変換ルールを示す説明図である。 本発明の第2の実施形態のWebプロキシが実行するコンテンツ取得の処理を示すフローチャートである。 本発明の第2の実施形態のゲートウェイシステムのコンテンツ取得の処理を示すシーケンスである。
本発明の概要は、以下のとおりである。
本発明のゲートウェイシステムは、複数のサーバ装置(Webプロキシ)、名前解決装置(DNSプロキシ)及び管理装置(管理サーバ)を備え、例えば、コンテンツのキャッシュシステムなどに適用される。なお、コンテンツをキャッシュするシステムに限らず、例えば、各サーバ装置の間の負荷を分散するシステムに適用されてもよい。
複数のWebプロキシには、担当するIPアドレスの範囲が割り当てられる。DNSプロキシは、アドレス生成関数を用いて、名前解決を実行する。具体的には、端末からの要求を受けると、要求の識別子(例えば、コンテンツ取得先のホスト名)からハッシュ値を計算し、計算されたハッシュ値に基づいて、IPアドレスを生成し、生成されたIPアドレスを端末に返答する。
端末は、返答されたIPアドレスに基づいて、そのIPアドレスを担当するWebプロキシに要求を送信するので、ゲートウェイシステムは、負荷分散装置を必要とせずに、負荷を分散することができる。このように、端末は、DNSプロキシの処理を利用することによって、要求の送信先を取得することができる。このため、端末にはこのゲートウェイシステムを利用するための特別な機能を新たに追加する必要がない。また、管理サーバは、DNSプロキシが生成するすべてのIPアドレスを複数のIPアドレスの範囲に分割し、分割されたIPアドレスの範囲を各Webプロキシに割り当てる。このため、DNSプロキシは、各Webプロキシが担当するIPアドレスの範囲を示す情報(担当IPアドレステーブル)を備える必要がない。
そして、端末は、コンテンツ取得先のホスト(Webサーバ)にアクセスする場合、ホスト名に対応するIPアドレスをDNSプロキシに問い合わせる。DNSプロキシは、アドレス生成関数に基づいて生成されたIPアドレスを端末に返答する。端末は、そのIPアドレスを送信先として、コンテンツ取得要求などを送信する。この要求は、一般的なIPルーティングに従って、ゲートウェイのいずれかのWebプロキシに到達する。ゲートウェイの各Webプロキシは、担当するIPアドレスに対応するホストのコンテンツをキャッシュしている。
さらに、Webプロキシは、Webプロキシの機能を持ち、コンテンツ取得先のURLのホスト名以外の情報(パス名)を適切な負荷分散のための情報源として利用してもよい。
具体的には、Webプロキシは、端末からのコンテンツ取得要求を受けると、コンテンツ取得要求によって示されるコンテンツ取得先のURL全体からハッシュ値を計算し、計算されたハッシュ値をホスト部のSufixとしてURLに追加する。そして、Webプロキシは、ハッシュ値が追加されたURLを端末に返答する。
また、Webプロキシは、コンテンツ取得要求に基づいて、Webサーバからコンテンツを取得する。この場合、取得されたコンテンツにリンク先としてURLが含まれる場合、該URL全体からハッシュ値を計算し、計算されたハッシュ値を該URLに追加する。そして、ハッシュ値が追加されたURLを、コンテンツ取得要求に対する回答として、端末に返答する。このように、要求に含まれる情報(コンテンツ取得先のURL全体)からハッシュ値が生成されるので、例えば、同じWebサーバに対する要求(ホスト部が同じコンテンツ取得要求)を、ユーザ毎、コンテンツタイプ毎に異なるWebプロキシに分散することができる。
[実施形態1]
以下、本発明の第1の実施形態について図面を参照して説明する。
図1は、本発明の第1の実施形態のゲートウェイシステムの構成を示す説明図である。
本実施形態のゲートウェイシステムは、DNSプロキシ104、複数のWebプロキシ(Webプロキシ1_105−1、Webプロキシ2_105−2、・・・)及び管理サーバ108を備える。各装置は、ローカルネットワーク106を介して相互に接続される。
また、DNSプロキシ104及び複数のWebプロキシ(Webプロキシ1_105−1ほか)は、広域ネットワーク103を介して、DNSサーバ101、複数のWebサーバ(Webサーバ1_102−1、Webサーバ2_102−2、・・・)に接続し、ローカルネットワーク106に接続された複数の端末(端末107_1、端末2_107−2、・・・)にサービスを提供する。例えば、端末107_1からWebサーバ1_102−1への要求メッセージ、及びWebサーバ1_102−1から端末107_1への返答メッセージは、いずれかのWebプロキシを経由して送受信される。
なお、複数のWebプロキシのいずれにも共通する説明をする場合、その説明において、複数のWebプロキシを総称して、Webプロキシ105と記載する。また、複数のWebサーバのいずれにも共通する説明をする場合、その説明において、複数のWebサーバを総称して、Webサーバ102と記載する。また、複数の端末のいずれにも共通する説明をする場合、その説明において、複数の端末を総称して、端末107と記載する。
なお、図1では、例として、1台のDNSサーバ101、2台のWebサーバ102、4台のWebプロキシ105、及び2台の端末107が図示されているが、図示された台数以上の各装置が広域ネットワーク103又はローカルネットワーク106に接続されてもよい。
DNSサーバ101は、DNSプロトコルを用いて、通常の名前解決を実行する。Webサーバ102は、広域ネットワークに接続され、端末107の要求に応じて、コンテンツを提供する。ここで、コンテンツとは、例えば、動画、静止画、テキスト、音声などの情報である。
DNSプロキシ104は、端末107から送信された名前解決要求を受信すると、名前解決の処理を実行する。具体的には、名前解決要求によって示されるホスト名が管理サーバ108によって指定されたホスト名に該当する場合、DNSプロキシ104は、IPアドレスを生成し、生成されたIPアドレスを、名前解決要求に対する回答として端末107に送信する。
なお、ここで、ホスト名とは、サーバ装置の名前を示す文字列であり、例えば、URL「http://www.example.org/ex/1」のうち、「www.example.org」の部分である。また、ここで、DNSプロキシ104が生成するIPアドレスとは、本実施形態のゲートウェイシステムにおいてのみ用いられるIPアドレスである。
具体的には、DNSプロキシ104は、あらかじめ配布されたアドレス生成関数を用いて、ホスト名からハッシュ値を計算し、計算されたハッシュ値に基づいてIPアドレスを生成する。アドレス生成関数の詳細については、図2Bを用いて後述する。また、DNSプロキシ104の構成については、図3を用いて後述する。
端末107は、送信されたIPアドレスに基づいて、コンテンツ取得要求を、該IPアドレスを担当するWebプロキシ105に転送する。
なお、ホスト名が管理サーバ108によって指定されたホスト名に該当しない場合、DNSプロキシ104は、名前解決要求を、DNSサーバ101に転送する。DNSサーバは、ホスト名に対応するWebサーバ102の実際のIPアドレスを名前解決要求に対する回答として端末107に送信する。
Webプロキシ105は、端末107から送信されたコンテンツ取得要求に基づき、要求されたコンテンツをWebサーバ102から取得し、取得したコンテンツをキャッシュする。さらに、取得したコンテンツを端末107に送信する。Webプロキシ105には、管理サーバ108によって、あらかじめ担当するIPアドレスの範囲が割り当てられるので、コンテンツ取得要求は、IPアドレスに従って担当のWebプロキシ105に送信される。なお、Webプロキシ105の構成については、図5を用いて後述する。
管理サーバ108は、各Webプロキシ105に割り当てられるIPアドレスを管理する。また、管理サーバ108は、DNSプロキシによってIPアドレスに変換されるホスト名を指定する。これによって、Webプロキシ105は、指定されたホスト名に対応するWebサーバ102のコンテンツのみをキャッシュする。
なお、管理サーバ108は、アドレス割当テーブル200(図2A参照)、アドレス生成関数210(図2B参照)及び対象ドメインネームテーブル220(図2C参照)を備える。
図2Aは、本発明の第1の実施形態の管理サーバ108が備えるアドレス割当テーブル200の構成を示す説明図である。
アドレス割当テーブル200は、各Webプロキシ105に割り当てられるIPアドレスの範囲を示したテーブルであり、例えば、サーバID201、開始アドレス202及び終了アドレス203を含む。
サーバID201は、サーバ装置(Webプロキシ105)を識別するための識別子である。開始アドレス202は、サーバID201によって特定されるWebプロキシ105に割り当てられるアドレス範囲の開始アドレスである。終了アドレス203は、アドレス範囲の終了アドレスである。ここで、あるWebプロキシ105が担当するIPアドレス範囲は、他のWebプロキシ105が担当するIPアドレス範囲と重複しないのであれば、一の連続した範囲でなくてもよく、いくつかの範囲に分かれていてもよい。
なお、管理サーバ108は、自動設定によって、あらかじめ定められたアドレス範囲を等しく分割し、等しく分割された各アドレス範囲を各Webプロキシ105に割り当ててもよい。また、ゲートウェイシステムの負荷の状態に応じて、管理者が各Webプロキシ105に割り当てられるアドレス範囲を設定してもよい。
図2Bは、本発明の第1の実施形態の管理サーバ108が備えるアドレス生成関数210を示す説明図である。
アドレス生成関数210は、文字列などの可変長データXからIPアドレスを生成するための関数であり、ハッシュ関数215を含む。アドレス生成関数210は、可変長データXが入力されると、ハッシュ関数215によって、入力された可変長データXを、例えば、64ビットのハッシュ値に変換する。そして、所定の64bitのIPv6プレフィックスと変換された64ビットのハッシュ値とを合わせることによって、IPv6のIPアドレスを生成し、生成されたIPアドレスを出力する。
なお、ハッシュ関数には、例えば、SHA1(Secure Hash Algorithm 1)が用いられてもよい。また、SHA1の他に、MD5(Message Digest Algorithm 5)などが用いられてもよい。
また、本実施形態では、アドレス生成関数210に入力される可変長データXには、Webサーバ102のホスト名(例えば、「www.example.org」など)が用いられる。
図2Cは、本発明の第1の実施形態の管理サーバ108が備える対象ドメインネームテーブル220の構成を示す説明図である。
対象ドメインネームテーブル220は、名前解決の処理において、名前解決要求によって示されるホスト名をIPアドレスに変換するか否かを判定するために用いられる。対象ドメインネームテーブル220は、例えば、ドメイン名(ホスト名)221及び変換対象222を含む。
ドメイン名(ホスト名)221は、端末107にコンテンツを提供するWebサーバ102のホスト名である。変換対象222には、ドメイン名221に示されたドメイン名(ホスト名)をIPアドレスに変換するか否かを示す情報が格納される。
DNSプロキシ104は、アドレス生成関数210及び対象ドメインネームテーブル220を用いて、名前解決の処理を実行する。なお、なお、DNSプロキシ104が実行する名前解決の処理については、図4を用いて後述する。
なお、管理サーバ108は、アドレス生成関数210及び対象ドメインネームテーブル220をDNSプロキシ104に配布する。また、管理サーバ108は、アドレス生成関数210を各Webプロキシ105に配布する。また、管理サーバ108は、アドレス割当テーブル200に基づいて、各Webプロキシ105が担当するIPアドレスの範囲を示す担当IPアドレステーブル600(図6A参照)を作成し、作成された担当IPアドレステーブル600を各Webプロキシ105に配布する。
図3は、本発明の第1の実施形態のDNSプロキシ104の構成を示すブロック図である。
DNSプロキシ104は、アドレス変換処理機能部301、メモリ302、及びネットワークインタフェース303を備え、広域ネットワーク103及びローカルネットワーク106に接続する。
メモリ302には、管理サーバ108から配布されたアドレス生成関数210及び対象ドメインネームテーブル220が格納される。
アドレス変換処理機能部301は、メモリ302に格納された対象ドメインネームテーブル220及びアドレス生成関数210を用いて、アドレス変換の処理などを実行する。アドレス変換処理機能部301が実行する処理の詳細については、図4を用いて後述する。なお、図示しないプロセッサは、メモリ302に格納された各種プログラムを実行することによって、アドレス変換処理機能部301の処理を実現する。
ネットワークインタフェース303は、DNSプロキシ104が広域ネットワーク103及びローカルネットワーク106に接続するためのインターフェースである。
図4は、本発明の第1の実施形態のDNSプロキシ104が実行する名前解決の処理を示すフローチャートである。
まず、DNSプロキシ104のアドレス変換処理機能部301は、端末107から送信された名前解決要求(例えば、「AAAA? www.example.org」)を受信する(S401)。次に、アドレス変換処理機能部301は、名前解決要求を受信すると、対象ドメインネームテーブル220を検索し、名前解決要求によって示されるホスト名(例えば、「www.example.org」)がIPアドレスに変換される対象であるか否かを判定する(S402)。
S402において、ホスト名が変換対象でないと判定された場合、DNSプロキシ104は、広域ネットワーク103を介して、端末107から送信された名前解決要求をDNSサーバ101に転送する。
ドメインネームサービスを提供するDNSサーバ101は、通常の名前解決を実行し、ホスト名に対応する実際のIPアドレスを、名前解決要求に対する回答として、要求者であるDNSプロキシ104に送信する。そして、DNSプロキシ104は、DNSサーバ101から送信された名前解決要求に対する回答を受信して、ホスト名に対応する実際のIPアドレスを取得する(S403)。
一方、S402において、ホスト名が変換対象であると判定された場合、DNSプロキシ104のアドレス変換処理機能部301は、アドレス生成関数210を用い、名前解決要求によって示されるホスト名(例えば、「www.example.org」)からハッシュ値(例えば、「41de:3297:ec18:5fae」」)を計算し、所定のIPv6プレフィックス(例えば、「2001:db8::」)と計算されたハッシュ値とを合わせて、IPアドレス(例えば、「2001:db8::41de:3297:ec18:5fae」)を生成する(S404)。ここで、生成されたIPアドレスは、本実施形態のゲートウェイシステムにおいて用いられるIPアドレスであり、Webサーバ102のコンテンツをキャッシュするWebプロキシ105に対応付けられる。
次に、アドレス変換処理機能部301は、DNSサーバ101から取得した実際のIPアドレス、又はアドレス生成関数210によって生成されたIPアドレスを、名前解決要求に対する回答(例えば、「AAAA 2001:db8::41de:3297:ec18:5fae」)として、端末107に送信する(S405)。
図5は、本発明の第1の実施形態のWebプロキシ105の構成を示すブロック図である。
Webプロキシ105は、Webキャッシュ処理機能部501、メモリ502、及びネットワークインタフェース503を備え、広域ネットワーク103及びローカルネットワーク106に接続する。
メモリ502には、担当IPアドレステーブル600、及びコンテンツテーブル610が格納される。また、必要に応じて、アドレス生成関数210が格納されてもよい。
担当IPアドレステーブル600については、図6Aを用いて後述する。コンテンツテーブル610については、図6Bを用いて後述する。アドレス生成関数210は、図2Bに示した関数と同じであり、管理サーバ108によって必要に応じて配布される。
Webキャッシュ処理機能部501は、メモリ502に格納されたアドレス生成関数210、担当IPアドレステーブル600、及びコンテンツテーブル610を用いて、端末107から送信されたコンテンツ取得要求に基づき、要求されたコンテンツをWebサーバ102から取得し、取得したコンテンツをキャッシュする。Webキャッシュ処理機能部501が実行する処理の詳細については、図7を用いて後述する。なお、図示しないプロセッサは、メモリ502に格納された各種プログラムを実行することによって、Webキャッシュ処理機能部501の処理を実現する。
ネットワークインタフェース503は、Webプロキシ105が広域ネットワーク103及びローカルネットワーク106に接続するためのインターフェースである。Webプロキシ105は、担当IPアドレステーブル600に設定されたIPアドレスを、自装置のIPアドレスとして、ネットワークインタフェース503に登録する。これによって、Webプロキシ105は、端末107から送信されたコンテンツ取得要求を受信することができる。
なお、本実施形態では、Webプロキシ105は、Webキャッシュ処理機能を備えるが、Webキャッシュ処理機能の代わりに、例えば、フィルタ機能、コンテンツ変換機能などを備えてもよい。これによって、本発明のゲートウェイシステムを、キャッシュシステムだけでなく、他のサービスを提供するシステムにも適用することもできる。
図6Aは、本発明の第1の実施形態のWebプロキシ105が備える担当IPアドレステーブル600の構成を示す説明図である。
担当IPアドレステーブル600は、一つのWebプロキシ105が担当するIPアドレスの範囲を示すテーブルであり、開始アドレス601及び終了アドレス602を含む。
なお、担当IPアドレステーブル600は、管理サーバ108によって配布されてもよいし、管理サーバ108によって通知されたIPアドレスの範囲に基づいて、Webプロキシ105によって作成されてもよい。
Webプロキシ105は、当該Webプロキシが担当するすべてのIPアドレスをネットワークインタフェース503に登録し、登録されたIPアドレスを宛先とするコンテンツ取得要求を受信する。Webプロキシ105が実行するコンテンツ取得の処理については、図7を用いて後述する。
なお、Webプロキシ105は、担当するIPアドレスのアドレス解決要求を受信すると、自装置に設定されたMACアドレスを、端末107、近隣のルータなどに通知する。ここで、アドレス解決要求とは、例えば、IPv4の場合はARP(Address Resolution Protocol)であり、IPv6の場合は近隣探索(ND:Neighbor Discovery)である。
図6Bは、本発明の第1の実施形態のWebプロキシが備えるコンテンツテーブル610の構成を示す説明図である。
コンテンツテーブル610は、Webプロキシ105がキャッシュしたコンテンツを格納するテーブルであり、例えば、URL611、宛先IPアドレス612、コンテンツ613及びメタ情報614を含む。
URL611は、コンテンツ取得先のURLである。宛先IPアドレス612は、コンテンツ取得要求によって示される宛先IPアドレスであり、DNSプロキシ104によって、コンテンツ取得先であるWebサーバ102のホスト名から生成されたIPアドレスである。
コンテンツ613には、Webプロキシ105がWebサーバ102から取得したコンテンツが格納される。メタ情報614は、例えば、取得したコンテンツのサイズ、日時、保存期間などである。
図7は、本発明の第1の実施形態のWebプロキシが実行するコンテンツ取得の処理を示すフローチャートである。
まず、Webプロキシ105は、端末107から送信されたコンテンツ取得要求を受信する(S701)。次に、Webプロキシ105のWebキャッシュ処理機能部501は、コンテンツ取得先であるWebサーバ102のURLを検索キーとして、コンテンツテーブルを検索し(S702)、検索キーと一致するエントリがあるか否かを判定する(S703)。
S703において、検索キーと一致するエントリがあると判定された場合、要求されたコンテンツはキャッシュされているので、Webキャッシュ処理機能部501は、検索キーと一致するエントリのコンテンツ613に格納されたコンテンツを取得し、取得したコンテンツを含むコンテンツ取得要求に対する回答を作成する(S704)。
一方、S703において、検索キーと一致するエントリがないと判定された場合、要求されたコンテンツはキャッシュされていないので、Webキャッシュ処理機能部501は、当該コンテンツを格納するWebサーバ102(オリジンサーバ)に、端末107から送信されたコンテンツ取得要求を転送する(S705)。
なお、この場合、Webプロキシ105は、コンテンツ取得先のWebサーバ102のIPアドレスを取得するため、通常の名前解決を実行する。具体的には、Webプロキシ105は、名前解決要求をDNSサーバ101に送信し、DNSサーバ101から、名前解決要求に対する回答として、コンテンツ取得先であるWebサーバ102のホスト名に対応する実際のIPアドレスを受信する。これによって、Webプロキシ105は、コンテンツ取得要求をWebサーバ102に転送することができる。
また、Webプロキシ105は、コンテンツテーブル610に新しいエントリを追加し、追加されたエントリのURL611及び宛先IPアドレス612に、それぞれ、端末107から送信されたコンテンツ取得要求によって示されるコンテンツ取得先のURL及び宛先IPアドレスを格納する。
次に、Webキャッシュ処理機能部501は、Webサーバ102から送信された、コンテンツ取得要求に対する回答を受信する(S706)。次に、Webキャッシュ処理機能部501は、コンテンツ取得要求に対する回答を受信すると、受信した回答からコンテンツを取得し、取得したコンテンツ及びコンテンツの情報を、それぞれ、コンテンツテーブル610に追加された新しいエントリのコンテンツ613及びメタ情報614に格納する。また、Webキャッシュ処理機能部501は、取得したコンテンツを含むコンテンツ取得要求に対する回答を作成する(S707)。
最後に、Webキャッシュ処理機能部501は、ステップS704又はS707において作成されたコンテンツ取得要求に対する回答を端末107に送信し(S708)、処理を終了する(S709)。
なお、本実施形態の別の例として、ゲートウェイシステムは、Webプロキシ105の前段に、アドレス変換装置を備えてもよい。この場合、管理サーバ108は、例えば、図2Aに示したアドレス割当テーブル200をアドレス変換装置に配布する。また、Webプロキシ105に設定された代表IPアドレスをアドレス変換装置に通知する。
アドレス変換装置は、アドレス割当テーブル200に記載されたサーバID(WebプロキシのID)と、通知されたWebプロキシ105の代表IPアドレスとが対応付けられたアドレス変換テーブルを備える。これによって、アドレス変換装置は、端末107から送信されたコンテンツ取得要求の宛先IPアドレスを、ハッシュ値に基づいて生成されたIPアドレスから代表IPアドレスに書き換え、代表IPアドレスに対応するWebプロキシ105にコンテンツ取得要求を転送する。
なお、本実施形態の別の例では、Webプロキシ105は、ステップS707において、Webサーバ102からコンテンツを取得すると、管理サーバから108から配布されたアドレス生成関数210を用いて、Webサーバ102のホスト名からIPアドレスを生成し、生成されたIPアドレスをコンテンツテーブル610に追加された新しいエントリの宛先IPアドレス612に格納する。
アドレス変換装置を備えるゲートウェイシステムは、大量のIPアドレスをWebプロキシ105に割り当てることがコスト的に困難な場合に利用されてもよい。このゲートウェイシステムは、レイヤ4の情報に基づいて負荷分散を実行するため、レイヤ7の情報に基づいて負荷分散を実行するゲートウェイシステムよりも、高速かつ安価に実現される。
以上の処理によってコンテンツテーブル610が作成されるので、各Webプロキシ105がキャッシュしているコンテンツが容易に特定される。作成されたコンテンツテーブル610は、後述する図10及び図11に示す割当変更処理でも使用される。移動元のWebプロキシ105は、コンテンツテーブル610のうち、移動したいコンテンツを含むエントリを移動先のWebプロキシ105に移動する。
図8は、本発明の第1の実施形態のゲートウェイシステムのコンテンツ取得の処理を示すシーケンスである。
図8に示す例では、Webサーバ102は、例えば、「www.example.org」のホスト名が付与されたサーバ装置である。
最初に、管理サーバ108は、DNSプロキシ104に、アドレス生成関数210及び対象ドメインネームテーブル220を配布する(S801)。また、Webプロキシ105−1及び105−2Webプロキシに、アドレス生成関数210及びアドレス割当テーブル200(又は担当IPアドレステーブル600)を配布する(S802、S803)。
次に、各Webプロキシ105は、担当IPアドレステーブル600を受け取ると、担当IPアドレステーブル600に含まれるすべてのIPアドレスを自装置に割り当てられたIPアドレスとして、ネットワークインタフェース503に登録する(S804、S805)。
次に、端末107は、例えば、ユーザによって入力されたURL(例えば、「http://www.example.org/ex/1」)を受ける(S806)と、このURLにアクセスしてコンテンツを取得するためのコンテンツ取得要求を送信する。この場合、端末107は、まず、ホスト名(例えば、「www.example.org」)に対応するIPアドレスを取得するために、DNSプロキシ104に名前解決要求(例えば、「AAAA? www.example.org」)を送信する(S807)。
DNSプロキシ104は、端末107から送信された名前解決要求を受信すると、対象ドメインネームテーブル220を参照して、受信した名前解決要求によって示されるホスト名(例えば、「www.example.org」)が変換対象である否かを判定する。そして、当該ホスト名が変換対象であると判定された場合、DNSプロキシ104は、配布されたアドレス生成関数210を用いて、当該ホスト名からIPアドレスを生成する(S808)。
次に、DNSプロキシ104は、例えば、生成されたIPアドレス(例えば、「2001:db8::41de:3297:ec18:5fae」)を、名前解決要求に対する回答として、端末107に送信する(S809)。
次に、端末107は、名前解決要求に対する回答を受信すると、受信した回答から当該ホスト名に対応するIPアドレスを取得し、取得したIPアドレスをコンテンツ取得要求の宛先アドレスに設定した後、コンテンツ取得要求を送信する(S812)。なお、ここで、TCPコネクションが確立される。
具体的には、コンテンツ取得要求は、IPパケットとして、経路上のIPルータなどでルーティングされ、宛先IPアドレスに従い、当該IPアドレスを担当するいずれかのWebプロキシ105に送信される。この場合、経路上のIPルータ、端末107などは、当該IPアドレスが登録された装置を探索するため、通常のアドレス解決(ARP、NDなど)を実行する(S810)。そして、自宛のアドレス解決要求を受信した装置(例えば、Webプロキシ1_105−1)は、要求者(経路上のIPルータ、端末107など)に自装置のMACアドレスを通知する(S811)。これによって、例えば、端末107とWebプロキシ1_105−1との間にTCPコネクションが確立され、Webプロキシ1_105−1は、当該IPアドレスを宛先とするコンテンツ取得要求を受信することができる。
次に、Webプロキシ1_105−1は、端末107からコンテンツ取得要求を受信すると、コンテンツ取得要求(例えば、「GET /ex/1 HTTP/1.0 Host: www.example.org・・・」)から、コンテンツ取得先のURL(例えば、「http://www.example.org/ex/1」)を取得する(S812)。
そして、Webプロキシ1_105−1は、取得したURLを検索キーとして、コンテンツテーブル610を検索し、要求されたコンテンツがキャッシュされているか否かを判定する。ここで、例えば、要求されたコンテンツがキャッシュされていないと判定される(S813)と、Webプロキシ1_105−1は、コンテンツを格納しているWebサーバ102に、端末107から送信されたコンテンツ取得要求を転送する(S814)。
Webサーバ102は、コンテンツ取得要求を受信すると、要求されたコンテンツを含むコンテンツ取得要求に対する回答をWebプロキシ1_105−1に送信する(S815)。
Webプロキシ1_105−1は、コンテンツ取得要求に対する回答を受信すると、受信した回答からコンテンツを取得し、取得したコンテンツをキャッシュし(S816)、当該コンテンツを、コンテンツ取得要求に対する回答として、端末107に送信する(S817)。
以上の処理によって、各Webプロキシ105は、担当するIPアドレスに対応付けられたホスト名を持つWebサーバ102のコンテンツをキャッシュすることができる。つまり、本実施形態のゲートウェイシステムでは、同じホスト名に属するコンテンツは、同じWebプロキシにキャッシュされることが保証される。これは、ハッシュ関数に基づいてホスト名から生成されたIPアドレスが、Webプロキシ105のいずれか一つに対応付けられているためである。
以下に、本実施形態のWebプロキシ105の担当IPアドレスの範囲を変更する処理について説明する。管理サーバ108は、例えば、Webプロキシ105のうちの何台かを計画的に停止する場合、及び負荷に偏りが生じた場合、各Webプロキシ105の担当IPアドレスの範囲を変更することができる。
図9は、本発明の第1の実施形態の割当変更要求のフォーマットを示す説明図である。
割当変更要求900は、移動元WebプロキシのIPアドレス901、移動先WebプロキシのIPアドレス902、移動対象となるIPアドレスの範囲903を含む。
管理サーバ108は、各Webプロキシ105が担当するIPアドレスの範囲を変更する場合、割当変更要求900をすべてのWebプロキシ105、又は移動元及び移動先のWebプロキシ105に送信する。
図10は、本発明の第1の実施形態のWebプロキシ105が実行する割当変更の処理を示すフローチャートである。
あるWebプロキシ105は、管理サーバ108から送信された割当変更要求900を受信する(S1001)と、受信した割当変更要求900に含まれる移動元WebプロキシのIPアドレス901及び移動先WebプロキシのIPアドレス902のいずれかと、自装置に付与されたIPアドレスとが一致するか否かを判定する(S1002)。
ステップS1002において、移動元のWebプロキシのIPアドレス901と自装置のIPアドレスとが一致すると判定された場合、割当変更要求900を受信したWebプロキシ105は移動元のWebプロキシであるので、移動元のWebプロキシは、コンテンツテーブル610から、移動対象となるIPアドレスの範囲903によって指定されたIPアドレスに対応するエントリを抽出する(S1003)。
そして、移動元のWebプロキシは、抽出されたエントリを、移動先WebプロキシのIPアドレス902によって指定された移動先のWebプロキシのコンテンツテーブルに移動する(S1004)。
なお、この場合、移動元のWebプロキシは、必要に応じて、例えば、抽出されたエントリのコンテンツ613及びメタ情報614のデータを消去し、URL611及び宛先IPアドレス612のデータのみのエントリを移動先のWebプロキシに送信してもよい。これによって、割当項要求の処理における各Webプロキシ105の間のトラフィックを削減することができる。
次に、移動元のWebプロキシは、移動対象となるIPアドレスの範囲903によって指定されたIPアドレスに対応するエントリをコンテンツテーブル610から削除する(S1005)。さらに、移動対象となるIPアドレスの範囲903によって指定されたIPアドレスの範囲を担当IPアドレステーブル600から削除し、ネットワークインタフェース503に登録された当該IPアドレスを削除する(S1006)。
一方、ステップS1002において、移動先のWebプロキシのIPアドレス902と自装置のIPアドレスとが一致すると判定された場合、割当変更要求900を受信したWebプロキシ105は移動先のWebプロキシであるので、移動先のWebプロキシは、移動元のWebプロキシから送信された移動対象のエントリの受信を待ち受ける(S1007)。
移動先のWebプロキシは、移動対象のエントリを受信すると、受信したエントリをコンテンツテーブル610に追加する(S1008)。また、移動先のWebプロキシは、移動対象となるIPアドレスの範囲903によって指定されたIPアドレスを、担当IPアドレステーブル600に追加する(S1009)。また、新たに追加されたIPアドレスをネットワークインタフェース503に登録する。
さらに、移動先のWebプロキシは、近隣広告パケット又はGratuitous ARPを送信する(S1010)。これによって、移動先のWebプロキシは、新しいアドレスが割り当てられたことを、近隣のIPルータ、端末107、Webプロキシ105、管理サーバ108などに通知することができる。なお、近隣のIPルータ、端末107などは、近隣広告パケット又はGratuitous ARPを受信すると、再度、アドレス解決要求を送信して、新しくIPアドレスが登録されたネットワークインタフェースのMACアドレスを取得する。
一方、ステップS1002において、移動元WebプロキシのIPアドレス901及び移動先WebプロキシのIPアドレス902のいずれとも、自装置のIPアドレスに一致しないと判定された場合、その割当変更要求は自装置に送信されたメッセージではないので、Webプロキシ105は、そのメッセージを廃棄する(S1011)。これによって、例えば、割当変更要求をマルチキャストによって、すべてのWebプロキシ105に送信した場合であっても、移動元及び移動先のWebプロキシは、送信された割当変更要求を正しく受信することができる。
図11は、本発明の第1の実施形態のゲートウェイシステムの割当変更の処理を示すシーケンスである。
Webプロキシ1_105−1は、初期設定では、例えば、IPアドレス「2001:db8::4000:0000:0000:0000」から「2001:db8::4fff:ffff:ffff:ffff」の範囲が割り当てられ、割り当てられたIPアドレスに対応するコンテンツをキャッシュする(S1101)。
また、Webプロキシ2_105−2は、例えば、IPアドレス「2001:db8::2000:0000:0000:0000」から「2001:db8::3fff:ffff:ffff:ffff」の範囲が割り当てられ、割り当てられたIPアドレスに対応するコンテンツをキャッシュする(S1102)。
次に、管理サーバ108は、例えば、Webプロキシ1_105−1が担当している「2001:db8::4000:0000:0000:0000」から「2001:db8::4fff:ffff:ffff:ffff」の範囲に対応するコンテンツをWebプロキシ2_105−2に移動する指示をそれぞれのWebプロキシに送信する(S1103)。
Webプロキシ1_105−1は、管理サーバ108からコンテンツを移動する指示を受信すると、コンテンツテーブル610から、指示されたIPアドレスの範囲に対応するエントリを抽出し、抽出されたエントリを移動先のWebプロキシ2_105−2に転送する(S1104)。また、当該エントリをコンテンツテーブル610から削除する。そして、担当IPアドレステーブル600から、指示されたIPアドレスを削除し、また、ネットワークインタフェース503から、指示されたIPアドレスを削除する(S1105)。
一方、Webプロキシ2_105−2は、移動元のWebプロキシ1_105−1から移動されたエントリをコンテンツテーブル610に追加する。そして、指示されたIPアドレスの範囲を担当IPアドレステーブル600に追加し、また、追加されたIPアドレスの範囲をネットワークインタフェース503に登録する(S1106)。
次に、Webプロキシ2_105−2は、近隣広告パケット近又はGratuitous ARPを送信することによって、担当するIPアドレスの範囲が変更されたことを、近隣の端末107、IPルータ、Webプロキシ105などに通知する(S1107)。これは、近隣の端末107、IPルータなどが、近隣広告パケット近又はGratuitous ARPによって示されるIPアドレス宛てに、再度、アドレス解決要求を送信し、当該IPアドレスに対応するMACアドレスを取得するためである。
以降、ステップS1108からS1116の処理は、図8に示したS806からS817の処理と同じである。
以上説明したように、第1の実施形態によれば、ゲートウェイシステムは、ハッシュによって生成されたIPアドレスに従って、端末からWebサーバへのコンテンツ取得要求を適切なWebプロキシに転送するので、均等な負荷分散を実現することができる。また、スケーラブルな収容能力の拡張が可能となる。さらに、負荷分散装置が不要になるので、ゲートウェイシステムの管理コストを削減し、耐障害性を強化することができる。
また、各Webプロキシの負荷に偏りが生じ、各Webプロキシが担当するIPアドレスの範囲を変更する場合(言い換えると、キャッシュされたコンテンツを移動する場合)、ゲートウェイシステムは、各Webプロキシの間のみで情報を交換し、Webプロキシと、DNSプロキシ及び端末などの他装置との間では情報を交換しない。このため、IPアドレスの割当変更に要する処理を軽減することができる。
また、名前解決を実行するDNSプロキシは、Webプロキシの状態を管理しない。このため、DNSプロキシを容易に冗長化することができ、ゲートウェイシステムの高速化及び高信頼化を実現できる。
また、端末はDNSプロキシが提供する名前解決を利用して、Webプロキシにアクセルするので、端末には、Webプロキシにアクセスするための機能を追加する必要がない。このため、大量の既存端末が存在する環境においても、本実施形態のゲートウェイシステムを容易に導入することができる。
[実施形態2]
第2の実施形態のゲートウェイシステムの構成は、図1に示した第1の実施形態のゲートウェイシステムの構成と同じである。第2の実施形態のDNSプロキシの構成は、図3に示した第1の実施形態のDNSプロキシの構成と同じである。また、第2の実施形態のWebプロキシの構成は、図5に示した第1の実施形態のWebプロキシの構成と同じである。
ただし、第2の実施形態のDNSプロキシのアドレス変換処理機能部の処理は、第1の実施形態のアドレス変換処理機能部の処理と一部異なる(図14のS1404、S1412)。また、第2の実施形態のWebプロキシのWebキャッシュ処理機能部の処理は、第1の実施形態のWebキャッシュ処理機能部の処理と一部異なる(図14のS1402)。
第1の実施形態のゲートウェイシステムでは、DNSプロキシ104が、コンテンツ取得先のホスト名からハッシュ値を計算し、計算されたハッシュ値を用いてIPアドレスを生成した。このため、端末107から送信されたコンテンツ取得要求は、ホスト名の単位で分散される。
したがって、第1の実施形態のゲートウェイシステムでは、ある一つのWebサーバ102(ホスト)へのアクセス要求は、ある一つのWebプロキシ105が受けるので、そのWebサーバ102へのアクセスが集中した場合、担当するWebプロキシ105の負荷が大きくなり、各Webプロキシ105の間の負荷の偏りが生じる可能性がある。
そこで、第2の実施形態のゲートウェイシステムでは、Webプロキシ105が、コンテンツ取得先のURL全体からハッシュ値を計算し、計算されたハッシュ値をホスト名のSuffixtとして埋め込んだURLを、コンテンツ取得先のURLとして、端末107に返答する。
DNSプロキシ104は、端末107から名前解決要求を受けると、ハッシュ値を含むホスト名から、担当するWebプロキシ105のIPアドレスを生成する。したがって、第2の実施形態では、URL全体から生成されたハッシュ値に基づいて、各Webプロキシ105にコンテンツ取得要求が分散される。
つまり、第2の実施形態では、同じホスト名に属するコンテンツであっても、複数のWebプロキシ105にキャッシュされるので、一のWebプロキシ105に負荷が集中することを避けることができる。
なお、第2実施形態は、第1の実施形態と合わせて、キャッシュシステムなどに適用されてもよい。
以下に、第2の実施形態におけるURL変換ルールについて説明する。
図12は、本発明の第2の実施形態のURL変換ルールを示す説明図である。
本実施形態では、Webプロキシ105が、メモリ502に格納されたアドレス生成関数210(ハッシュ関数215)を用いて、例えば、端末107から送信されたコンテンツ取得要求によって示される、ホスト名及びパス名を含むURL1201(例えば、「http://www.example.org/ex/2.html」)から、ハッシュ値1204(例えば、「820d92dcb08edcdd」)を生成する。
そして、Webプロキシ105は、URLのホスト名までの部分1202(例えば、「http://www.example.org」)と、ピリオド(.)1205と、ハッシュ値1204(例えば、「820d92dcb08edcdd」)と、ホスト名のSuffix1206(例えば、「.hash.value」)と、URLのホスト名以降の部分1203(例えば、「/ex/4.html」)とを合わせる。これによって、ハッシュ値が埋め込まれたURL1207(例えば、「http://www.example.org.820d92dcb08edcdd.hash.value/ex/2.html」)が生成される。
図13は、本発明の第2の実施形態のWebプロキシ105が実行するコンテンツ取得の処理を示すフローチャートである。
あるWebプロキシ105は、端末107から送信されたコンテンツ取得要求を受信すると(S1301)、受信したコンテンツ取得要求のパケットのヘッダからコンテンツ取得先のホスト名を取得する(S1302)。次に、Webプロキシ105は、取得されたホスト名に、図12に示したURL変換ルールに基づいて変換されたURLであることを示すホスト名のSuffix1206(例えば、「.hash.value」)(又は、ハッシュ値1204)が含まれているか否かを判定する(S1303)。
ステップS1303において、取得されたホスト名に、「.hash.value」が含まれていないと判定された場合、受信したコンテンツ取得要求に含まれるURLは、図12に示したURL変換ルールに基づいて変換されたURLではないので、Webプロキシ105は、受信したコンテンツ取得要求のパケットのヘッダからURLを取得し、URL変換ルールに基づいて、ハッシュ関数215を用いて、取得されたURLをハッシュ値を含むURLに変換する(S1304)。
次に、Webプロキシ105は、コード302のHTTP応答を端末107に返答する(S1305)。ここで、コード302のHTTP応答とは、Webプロキシ105が、端末107に、URL変換ルールに基づいて変換されたURLにコンテンツ取得要求を再送させるための指示である。端末107は、コード302のHTTP応答を受信すると、受信したHTTP応答によって示される、ハッシュ値を含むURLに、コンテンツ取得要求を再送する。
一方、ステップS1303において、取得されたホスト名に、「.hash.value」が含まれていると判定された場合、受信したコンテンツ取得要求に含まれるURLは既にURL変換されているので、Webプロキシ105は、受信したコンテンツ取得要求のパケットのヘッダから取得されたURLのホスト部から、ハッシュ値1204及びホスト名のSuffix1206(「.hash.value」)の文字列を削除し、URL変換前のURLを復元する(S1306)。
次に、Webプロキシ105は、復元されたURLを検索キーとして、コンテンツテーブル610のエントリを検索し(S1307)、検索キーと一致するエントリがあるか否かを(S1308)。
ステップS1308において、検索キーと一致するエントリがあると判定された場合、端末107から要求されたコンテンツがキャッシュされているので、Webプロキシ105は、そのエントリに格納されているコンテンツを用いて、コンテンツ取得要求に対する回答を作成する(S1309)。
一方、ステップS1308において、検索キーと一致するエントリがないと判定された場合、端末107から要求されたコンテンツがキャッシュされていないので、Webプロキシ105は、コンテンツ取得要求をWebサーバ102(オリジンサーバ)に転送する(S1310)。この場合、Webプロキシ105は、コンテンツテーブル610に新しいエントリを追加し、追加されたエントリのURL611及び宛先IPアドレス612に、各々、復元されたURL及びIPアドレスを格納する。
次に、Webプロキシ105は、Webサーバ102からコンテンツ取得要求に対する回答を受信し、受信した回答に含まれるコンテンツを取得する(S1311)。次に、取得されたコンテンツにリンク先のURLが含まれている場合、Webプロキシ105は、図12に示したURL変換ルールに基づいて、リンク先のURLを、ハッシュ値を含むURLに変換する(S1312)。また、変換されたURLを含むコンテンツを用いて、コンテンツ取得要求に対する回答を作成する。
次に、Webプロキシ105は、取得したコンテンツ、及びリンク先のハッシュ値を含むURLを、コンテンツテーブル610の対応するエントリのコンテンツ613に格納する(S1313)。
そして、最後に、Webプロキシ105は、コンテンツ取得要求に対する回答を端末107に送信し(S1314)、処理を終了する(S1315)。
図14は、本発明の第2の実施形態のゲートウェイシステムのコンテンツ取得の処理を示すシーケンスである。
まず、端末107は、コンテンツ取得要求(例えば、「GET/ex/2 HTTP/1.0 Host: www.example.org・・・」)を、例えば、Webプロキシ1_105−1に送信する(S1401)。
なお、端末107は、ステップS1401の前に、図8に示したステップS807によって、名前解決要求(例えば、「AAAA? www.example.org」)をDNSプロキシ104に送信してもよい。DNSプロキシ104は、図8に示したステップS808及び809によって、名前解決要求を実行してもよい。これによって、第1の実施形態と同様に、コンテンツ取得要求は、「www.example.org」に対応するIPアドレス(例えば、「2001:db8::41de:3297:ec18:5fae」)を担当するWebプロキシ1_105−1に到達する。
次に、Webプロキシ1_105−1は、端末107から送信されたコンテンツ取得要求を受信すると、受信したコンテンツ取得要求のヘッダからコンテンツ取得先のURLを取得し、図12に示したURL変換ルールに基づいて、取得されたURLを、ハッシュ値を含むURL、例えば、「http://www.example.org.820d92dcb08edcdd.hash.value/ex/2」に変換する(S1402)。そして、Webプロキシ1_105−1は、コード302のHTTP返答を端末107に送信する(S1403)。
次に、名前解決及びアドレス解決の処理が実行される(S1404)。
具体的には、端末107は、コード302のHTTP返答を受信すると、ハッシュ値を含むホスト名(例えば、「www.example.org.820d92dcb08edcdd.hash.value」)に対応するIPアドレスを取得するために、再度、DNSプロキシ104に名前解決要求を送信する(S1404)。
ここで、DNSプロキシ104は、第1の実施形態の処理とは異なり、ハッシュ値を含むホスト名(例えば、「www.example.org.820d92dcb08edcdd.hash.value」)から、ハッシュ値(例えば、「820d92dcb08edcdd」)のみを抽出してもよい。そして、アドレス生成関数210で用いられるIPv6プレフィックスと、抽出されたハッシュ値とを合わせて、IPアドレスを生成してもよい。
なお、DNSプロキシ104は、第1の実施形態と同様に、アドレス生成関数210を用いて、ハッシュ値を含むホスト名(「www.example.org.820d92dcb08edcdd.hash.value」)から、新しいハッシュ値を計算し、計算されたハッシュ値に基づいてIPアドレスを生成してもよい。
さらに、端末107又は近隣のルータは、生成されたIPアドレスが登録された装置を特定するため、アドレス解決要求を送信し、生成されたIPアドレスを担当するWebプロキシ105のMACアドレスを取得する。
次に、端末107は、生成されたIPアドレスを担当する、例えば、Webプロキシ2_105−2に、コンテンツ取得要求(例えば、「GET/ex/2 HTTP/1.0
Host:www.example.org.820d92dcb08edcdd.hash.value・・・」)を送信する(S1405)。
次に、Webプロキシ2_105−2は、受信したコンテンツ取得要求のヘッダからハッシュ値を含むURLを取得し、取得されたハッシュ値を含むURL(例えば、「http://www.example.org.820d92dcb08edcdd.hash.value/ex/2」)から、ハッシュ値(例えば、「820d92dcb08edcdd」)及びホスト名のSuffix(例えば、「.hash.value」)を削除する。これによって、変換前のURL(S1401で要求されたコンテンツ取得先のURL「http://www.example.org/ex/2」)が取得される。次に、Webプロキシ2_105−2は、取得した変換前のURLを検索キーとして、コンテンツテーブル610を検索し、検索キーのURLに対応するコンテンツがキャッシュされているか否かを判定する(S1406)。ここで、対応するコンテンツがキャッシュされていないとすると、Webプロキシ2_105−2は、Webサーバ102にコンテンツ取得要求を転送する(S1407)。
そして、Webプロキシ2_105−2は、Webサーバ102からコンテンツ取得要求に対する回答を受信する(S1408)。次に、Webプロキシ2_105−2は、受信した回答に含まれるコンテンツを取得し、取得したコンテンツをコンテンツテーブル610のエントリに格納する(S1409)。ここで、取得したコンテンツにリンク先のURLが含まれている場合、Webプロキシ2_105−2は、図12に示したURL変換ルールに基づいて、コンテンツに含まれるURLを変換し、変換されたURLもコンテンツテーブル610のエントリに格納する(S1409)。
つまり、Webプロキシは、URL変換ルールに基づいて、端末107に送信されるコンテンツに含まれるURLをあらかじめハッシュ値を含むURLに変換する。これは、端末107があるコンテンツにアクセスする場合、「.hash.value」を含まないコンテンツ取得要求と「.hash.value」を含むコンテンツ取得要求との2つの要求が発生するのを回避するためである。
次に、Webプロキシ2_105−2は、取得したコンテンツ及びコンテンツのリンク先のハッシュ値を含むURLを、コンテンツ取得要求に対する回答として、端末107に送信する(S1410)。
なお、送信されたコンテンツのリンク先のURLがユーザによってクリックされた場合、そのリンク先のURLには、既にハッシュ値が埋め込まれているので、ステップS1401からS1404の処理は省略される。
以上説明したように、第2の実施形態によれば、ホスト単位よりも下位のパス単位で、キャッシュされるコンテンツが各Webプロキシに分散されるので、ゲートウェイシステムは、さらに効率的な負荷分散を実現することができる。
101 DNSサーバ
102 Webサーバ
103 広域ネットワーク
104 DNSプロキシ
105 Webプロキシ
106 ローカルネットワーク
107 端末
108 管理サーバ
200 アドレス割当テーブル
210 アドレス生成関数
215 ハッシュ関数
220 対象ドメインネームテーブル
600 担当IPアドレステーブル
610 コンテンツテーブル
900 割当変更要求
1201 URL
1207 ハッシュ値が埋め込まれたURL

Claims (10)

  1. 複数の端末から複数の第1サーバ装置への要求を分散するゲートウェイシステムであって、
    前記ゲートウェイシステムは、管理装置と、複数の第2サーバ装置と、名前解決装置と、を備え、
    前記管理装置は、
    文字列からIPアドレスを生成するアドレス生成関数を、前記名前解決装置に配布し、
    前記名前解決装置において前記アドレス生成関数によって生成されるすべての前記IPアドレスを複数のIPアドレスに分割し、
    前記分割された複数のIPアドレスを、各々前記第2サーバ装置に配布し、
    前記第2サーバ装置は、
    前記管理装置から配布された複数のIPアドレスを登録し、
    前記名前解決装置は、
    前記端末から送信された、アクセス先のURLの名前解決のための第1要求を受信すると、前記受信した第1要求からアクセス先のURLを抽出し、
    前記アドレス生成関数を用いて、前記抽出されたURLのホスト名の文字列からIPアドレスを生成し、
    前記生成されたIPアドレスを、前記第1要求の回答として、前記端末に送信し、
    前記端末が、前記第1サーバ装置のURLをアクセス先とする第2要求を、前記第1要求の回答として送信されたIPアドレスが登録されている前記第2サーバ装置に送信すると、前記第2サーバ装置は、アクセス先のURLに基づいて、前記送信された第2要求を前記第1サーバ装置に転送することを特徴とするゲートウェイシステム。
  2. 前記第2サーバ装置は、
    前記第1サーバ装置からコンテンツを取得するための前記第2要求に基づいて、前記第1サーバ装置からコンテンツを取得すると、前記取得したコンテンツを、前記コンテンツが格納されていたURLに対応付けて格納し、
    前記端末から送信された第2要求を受信すると、前記受信した第2要求から抽出されたURLに基づいて、前記端末から要求されたコンテンツが格納されているか否かを判定し、
    前記端末から要求されたコンテンツが格納されていない場合、前記受信した第2要求を前記第1サーバ装置に転送し、
    前記第1サーバ装置から前記要求されたコンテンツを取得し、
    前記端末から要求されたコンテンツが格納されている場合、前記格納されたコンテンツを前記端末に送信することを特徴とする請求項1に記載のゲートウェイシステム。
  3. 前記名前解決装置は、DNSプロキシであることを特徴とする請求項1に記載のゲートウェイシステム。
  4. 前記ゲートウェイシステムは、さらに、アドレス変換装置を備え、
    前記アドレス変換装置には、前記複数のIPアドレスが登録され、
    前記第2サーバ装置には、所定の代表IPアドレスが登録され、
    前記端末によって、前記送信されたIPアドレスが登録されている前記アドレス変換装置に前記第2要求が送信されると、前記アドレス変換装置は、前記送信された第2要求を、前記登録された複数のIPアドレスと前記第2サーバ装置の代表IPアドレスとの対応関係に基づいて、前記第2サーバ装置に転送することを特徴とする請求項1に記載のゲートウェイシステム。
  5. 複数の端末から複数の第1サーバ装置への要求を分散するゲートウェイシステムであって、
    前記ゲートウェイシステムは、複数の第2サーバ装置と、名前解決装置と、を備え、
    前記各第2サーバ装置には、
    所定の複数のIPアドレスが登録され、
    文字列からハッシュ値を生成するハッシュ関数が配布され、
    前記第2サーバ装置は、
    前記第1サーバ装置からコンテンツを取得するための第2要求を前記端末から受信すると、前記受信した第2要求からアクセス先のURLを抽出し、
    前記抽出されたURLにハッシュ値が含まれているか否かを判定し、
    前記ハッシュ値が含まれている場合、前記抽出されたURLから、前記ハッシュ値を削除し、
    前記ハッシュ値が削除されたURLをアクセス先とする前記第2要求を前記第1サーバ装置に転送し、
    前記ハッシュ値が含まれていない場合、前記配布されたハッシュ関数を用いて、前記抽出されたURLの文字列からハッシュ値を生成し、
    前記生成されたハッシュ値を前記抽出されたURLのホスト名に追加し、
    前記ハッシュ値を含むURLをアクセス先とする前記第2要求を再送するように前記端末に指示し、
    前記端末によって、前記ハッシュ値を含むURLの名前解決のための第1要求が前記名前解決装置に送信されると、前記名前解決装置は、前記第1要求からアクセス先のURLを抽出し、
    さらに、前記抽出されたURLからハッシュ値を抽出し、
    所定のプレフィックスと前記抽出されたハッシュ値とを合わせて、IPアドレスを生成し、
    前記生成されたIPアドレスを、前記第1要求の回答として、前記端末に送信し、
    前記端末によって、前記ハッシュ値を含むURLをアクセス先とする前記第2要求が、前記第1要求の回答として送信されたIPアドレスが登録されている前記第2サーバ装置に送信されることを特徴とするゲートウェイシステム。
  6. 前記第2サーバ装置は、
    前記第2要求に基づいて、前記第1サーバ装置からコンテンツを取得し、
    前記取得したコンテンツにリンク先のURLが含まれている場合、前記ハッシュ関数を用いて、前記リンク先のURLの文字列からハッシュ値を生成し、
    前記生成されたハッシュ値を前記リンク先のURLのホスト名に追加し、
    前記取得したコンテンツ及び前記ハッシュ値を含むリンク先のURLを格納し、
    前記取得したコンテンツ及び前記ハッシュ値を含むリンク先のURLを、前記第2要求の回答として、前記端末に送信することを特徴とする請求項5に記載のゲートウェイシステム。
  7. 複数の端末から複数の第1サーバ装置への要求を分散するゲートウェイシステムにおいて実行される制御方法であって、
    前記ゲートウェイシステムは、管理装置と、複数の第2サーバ装置と、名前解決装置と、を備え、
    記制御方法は、
    前記管理装置が、文字列からIPアドレスを生成するアドレス生成関数を、前記名前解決装置に配布するステップと、
    前記管理装置が、前記名前解決装置において前記アドレス生成関数よって生成されるすべての前記IPアドレスを複数のIPアドレスに分割するステップと、
    前記管理装置が、前記分割された複数のIPアドレスを、各々前記第2サーバ装置に配布するステップと、
    前記第2サーバ装置が、前記配布された複数のIPアドレスを登録するステップと、
    前記名前解決装置が、アクセス先のURLの名前解決のための第1要求を前記端末から受信すると、前記受信した第1要求からアクセス先のURLを抽出するステップと、
    前記名前解決装置が、前記アドレス生成関数を用いて、前記抽出されたURLのホスト名の文字列からIPアドレスを生成するステップと、
    前記名前解決装置が、前記生成されたIPアドレスを、前記1要求の回答として、前記端末に送信するステップと、
    前記端末が、前記第1サーバ装置のURLをアクセス先とする第2要求を、前記送信されたIPアドレスが登録されている前記第2サーバ装置に送信すると、前記第2サーバ装置が、アクセス先のURLに基づいて、前記送信された第2要求を前記第1サーバ装置に転送するステップと、を含むことを特徴とする制御方法。
  8. 複数の端末から複数の第1サーバ装置への要求を分散するゲートウェイシステムにおい
    て実行される制御方法であって、
    前記ゲートウェイシステムは、管理装置と、複数の第2サーバ装置と、名前解決装置と、を備え、
    前記名前解決装置には、文字列からIPアドレスを生成するアドレス生成関数が配布され、
    前記各第2サーバ装置には、所定の複数のIPアドレスが登録され、
    前記制御方法は、
    前記管理装置が、文字列からハッシュ値を生成するハッシュ関数を、前記第2サーバ装置に配布するステップと、
    前記名前解決装置が、アクセス先のURLの名前解決のための第1要求を前記端末から受信すると、前記受信した第1要求からアクセス先のURLを抽出するステップと、
    前記名前解決装置が、前記アドレス生成関数を用いて、前記抽出されたURLのホスト名の文字列からIPアドレスを生成するステップと、
    前記名前解決装置が、前記生成されたIPアドレスを、前記1要求の回答として、前記端末に送信するステップと、
    前記端末が、前記第1サーバ装置のURLをアクセス先とする第2要求を、前記送信されたIPアドレスが登録されている前記第2サーバ装置に送信すると、前記第2サーバ装置が、前記端末から送信された第2要求を受信して、前記受信した第2要求からアクセス先のURLを抽出するステップと、
    前記第2サーバ装置が、前記抽出されたURLにハッシュ値が含まれているか否かを判定するステップと、
    前記ハッシュ値が含まれている場合、前記第2サーバ装置が、前記抽出されたURLから、前記ハッシュ値を削除するステップと、
    前記ハッシュ値が含まれていない場合、前記第2サーバ装置が、前記配布されたハッシュ関数を用いて、前記抽出されたURLの文字列からハッシュ値を生成するステップと、
    前記第2サーバ装置が、前記生成されたハッシュ値を前記抽出されたURLのホスト名に追加するステップと、
    前記第2サーバ装置が、前記ハッシュ値を含むURLをアクセス先とする前記第2要求を再送するように前記端末に指示するステップと、
    前記名前解決装置が、前記ハッシュ値を含むURLの名前解決のための第1要求を前記再送指示された前記端末から再受信すると、前記再受信した第1要求から前記ハッシュ値を含むURLを再抽出するステップと、
    前記名前解決装置が、前記アドレス生成関数を用いて、前記再抽出された前記ハッシュ値を含むURLからIPアドレスを再生成するステップと、
    前記名前解決装置が、前記再生成されたIPアドレスを、前記再受信された前記第1要求の回答として、前記端末に送信するステップと、
    前記再送を指示された前記端末が、前記ハッシュ値を含むURLをアクセス先とする第2要求を、前記再生成されたIPアドレスが登録されている前記第2サーバ装置に再送信すると、前記第2サーバ装置が、前記ハッシュ値を含むURLに基づいて、前記送信された第2要求を前記第1サーバ装置に転送するステップと、を含むことを特徴とする制御方法。
  9. 前記第2サーバ装置が、前記第1サーバ装置からコンテンツを取得するための前記第2要求に基づいて、前記第1サーバ装置からコンテンツを取得すると、前記取得したコンテンツにリンク先のURLが含まれているか否かを判定するステップと、
    前記取得したコンテンツにリンク先のURLが含まれている場合、前記第2サーバ装置が、前記ハッシュ関数を用いて、前記リンク先のURLの文字列からハッシュ値を生成するステップと、
    前記第2サーバ装置が、前記生成されたハッシュ値を前記リンク先のURLのホスト名に追加するステップと、
    前記第2サーバ装置が、前記取得したコンテンツ及び前記ハッシュ値を含むリンク先のURLを、前記ハッシュ値が削除されたURLに対応付けて格納するステップと、を含むことを特徴とする請求項に記載の制御方法。
  10. 前記ハッシュ値を削除するステップの後、前記第2サーバ装置が、前記ハッシュ値が削除されたURLに基づいて、前記端末から要求されたコンテンツが格納されているか否かを判定するステップと、
    前記要求されたコンテンツが格納されていない場合、前記第2サーバ装置が、前記ハッシュ値が削除されたURLをアクセス先とする前記第2要求を前記第1サーバ装置に転送するステップと、
    前記要求されたコンテンツが格納されている場合、前記第2サーバ装置が、前記格納されたコンテンツ及び前記ハッシュ値を含むリンク先のURLを、前記端末に送信するステップと、を含むことを特徴とする請求項に記載の制御方法。
JP2009185624A 2009-08-10 2009-08-10 ゲートウェイシステム及び制御方法 Expired - Fee Related JP5288204B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2009185624A JP5288204B2 (ja) 2009-08-10 2009-08-10 ゲートウェイシステム及び制御方法
EP10170078.9A EP2285071B8 (en) 2009-08-10 2010-07-20 Gateway system and control method for proxy servers load balancing
US12/850,351 US8510372B2 (en) 2009-08-10 2010-08-04 Gateway system and control method
CN201010247379.8A CN101997785B (zh) 2009-08-10 2010-08-05 网关***及控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009185624A JP5288204B2 (ja) 2009-08-10 2009-08-10 ゲートウェイシステム及び制御方法

Publications (2)

Publication Number Publication Date
JP2011039725A JP2011039725A (ja) 2011-02-24
JP5288204B2 true JP5288204B2 (ja) 2013-09-11

Family

ID=43034671

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009185624A Expired - Fee Related JP5288204B2 (ja) 2009-08-10 2009-08-10 ゲートウェイシステム及び制御方法

Country Status (4)

Country Link
US (1) US8510372B2 (ja)
EP (1) EP2285071B8 (ja)
JP (1) JP5288204B2 (ja)
CN (1) CN101997785B (ja)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7761497B1 (en) * 2001-07-13 2010-07-20 Vignette Software, LLC Storage medium having a manageable file directory structure
JP2012185638A (ja) * 2011-03-04 2012-09-27 Kddi Corp 負荷分散装置、負荷分散システム、負荷分散方法及び負荷分散プログラム
WO2013094837A1 (ko) * 2011-12-19 2013-06-27 주식회사 솔박스 해시 함수 결과를 이용한 서버 부하 분산 처리 방법 및 그 장치
KR101383905B1 (ko) 2011-12-19 2014-04-17 주식회사 솔박스 해시 함수 결과를 이용한 서버 부하 분산 처리 방법 및 그 장치
US8738448B2 (en) * 2012-02-08 2014-05-27 Google Inc. Web page ad slot identification
FI124297B (en) * 2012-03-30 2014-06-13 Tellabs Oy A method and network element for content-based assignment in a communication network
US9052955B2 (en) * 2012-07-25 2015-06-09 Cisco Technology, Inc. System and method for seamless application hosting and migration in a network environment
US9513970B2 (en) * 2013-03-01 2016-12-06 Cisco Technology, Inc. Optimizing handling of virtual machine mobility in data center environments
CN104055504A (zh) 2013-03-18 2014-09-24 精工爱普生株式会社 生物体信息检测装置
JP6171445B2 (ja) * 2013-03-21 2017-08-02 富士通株式会社 割当装置及び割当プログラム
KR20150037020A (ko) * 2013-09-30 2015-04-08 삼성전자주식회사 이동통신시스템에서 웹 서버 접속 방법 및 장치
US20150113068A1 (en) * 2013-10-18 2015-04-23 Wesley John Boudville Barcode, sound and collision for a unified user interaction
US9231915B2 (en) 2013-10-29 2016-01-05 A 10 Networks, Incorporated Method and apparatus for optimizing hypertext transfer protocol (HTTP) uniform resource locator (URL) filtering
CN104636091B (zh) 2013-11-07 2018-06-15 精工爱普生株式会社 打印控制***
US9769217B2 (en) * 2013-11-21 2017-09-19 Cisco Technology, Inc. Providing cellular-specific transport layer service by way of cell-site proxying in a network environment
US9300453B2 (en) 2013-11-21 2016-03-29 Cisco Technology, Inc. Providing in-line services through radio access network resources under control of a mobile packet core in a network environment
US9444681B2 (en) * 2014-01-31 2016-09-13 Dell Products L.P. Systems and methods for resolution of uniform resource locators in a local network
EP3108368A4 (en) * 2014-02-19 2017-09-06 Level 3 Communications, LLC Proxy server failover and load clustering
CN105373533B (zh) * 2014-07-31 2019-04-09 阿里巴巴集团控股有限公司 一种页面链接地址的检测方法、客户端及装置
JP6187425B2 (ja) 2014-10-01 2017-08-30 コニカミノルタ株式会社 管理対象の情報処理装置を割り振る割振装置、その割り振りの方法、その割り振りのためのプログラム、および管理システム
US9501647B2 (en) 2014-12-13 2016-11-22 Security Scorecard, Inc. Calculating and benchmarking an entity's cybersecurity risk score
CN107251526B (zh) 2015-02-27 2021-03-02 第三雷沃通讯有限责任公司 网络地址解析
DE112016006813T5 (de) * 2016-07-01 2019-01-10 Intel IP Corporation Kommunikation in internet-of-things-vorrichtungen
US10142230B2 (en) * 2016-08-15 2018-11-27 Vonage Business Inc. Method and apparatus for transmitting messages associated with internet protocol version 4 (IPv4) addresses on an internet protocol version 6 (IPv6) network
US10505894B2 (en) * 2016-10-13 2019-12-10 Microsoft Technology Licensing, Llc Active and passive method to perform IP to name resolution in organizational environments
CN110225144B (zh) * 2018-03-02 2021-03-23 华为技术有限公司 获取及提供服务的方法、用户设备和管理服务器
CN109194621B (zh) * 2018-08-08 2021-06-29 北京奇虎科技有限公司 流量劫持的检测方法、装置及***
JP7249820B2 (ja) * 2018-09-28 2023-03-31 エヌ・ティ・ティ・コミュニケーションズ株式会社 ゲートウェイ装置、ネットワークシステム、制御方法、及びプログラム
US10999202B2 (en) * 2018-11-30 2021-05-04 Oracle International Corporation Methods, systems, and computer readable media for distributing Sigtran connections among signal transfer point (STP) message processors
GB2584993A (en) * 2019-06-07 2020-12-30 Num Tech Ltd Processing data
US11283648B2 (en) * 2019-08-15 2022-03-22 Forcepoint Llc Resilient tunnels
US11615254B2 (en) * 2019-11-19 2023-03-28 International Business Machines Corporation Content sharing using address generation
CN111800390A (zh) * 2020-06-12 2020-10-20 深信服科技股份有限公司 异常访问检测方法、装置、网关设备及存储介质
US11576072B2 (en) 2020-09-21 2023-02-07 Oracle International Corporation Methods, systems, and computer-readable media for distributing S1 connections to mobility management entities (MMEs) and N2 connections to access and mobility management functions (AMFs)
JP7412377B2 (ja) * 2021-03-03 2024-01-12 Kddi株式会社 認証システム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3058258B2 (ja) * 1997-01-31 2000-07-04 日本電気株式会社 データサーバアクセス方法及びlan
US6351775B1 (en) * 1997-05-30 2002-02-26 International Business Machines Corporation Loading balancing across servers in a computer network
US6108703A (en) * 1998-07-14 2000-08-22 Massachusetts Institute Of Technology Global hosting system
US6212565B1 (en) 1998-08-26 2001-04-03 Sun Microsystems, Inc. Apparatus and method for improving performance of proxy server arrays that use persistent connections
JP2000207270A (ja) * 1999-01-13 2000-07-28 Hitachi Ltd Wwwプロキシ装置
US6823377B1 (en) * 2000-01-28 2004-11-23 International Business Machines Corporation Arrangements and methods for latency-sensitive hashing for collaborative web caching
EP1277327B1 (en) * 2000-04-28 2015-08-19 Adara Networks, Inc. System and method for using network layer uniform resource locator routing to locate the closest server carrying specific content
US6816890B2 (en) * 2001-05-28 2004-11-09 Hitachi, Ltd. Gateway apparatus with LAC function
US20030079027A1 (en) * 2001-10-18 2003-04-24 Michael Slocombe Content request routing and load balancing for content distribution networks
JP2004348494A (ja) * 2003-05-23 2004-12-09 Hitachi Ltd コンテンツ配信ネットワーク
JP3485915B1 (ja) 2003-08-13 2004-01-13 シャープ株式会社 ゲートウェイ装置、クライアント計算機およびプロキシサーバ計算機
JP4515319B2 (ja) * 2005-04-27 2010-07-28 株式会社日立製作所 コンピュータシステム
US7962597B2 (en) * 2008-03-31 2011-06-14 Amazon Technologies, Inc. Request routing based on class

Also Published As

Publication number Publication date
US8510372B2 (en) 2013-08-13
EP2285071A1 (en) 2011-02-16
CN101997785A (zh) 2011-03-30
EP2285071B1 (en) 2013-05-15
US20110035437A1 (en) 2011-02-10
JP2011039725A (ja) 2011-02-24
EP2285071B8 (en) 2013-08-21
CN101997785B (zh) 2014-01-22

Similar Documents

Publication Publication Date Title
JP5288204B2 (ja) ゲートウェイシステム及び制御方法
EP2266064B1 (en) Request routing
US9608957B2 (en) Request routing using network computing components
JP4234482B2 (ja) 動的dns登録方法、ドメイン名解決方法、代理サーバ、及びアドレス変換装置
EP2853077B1 (en) Method of seamless integration and independent evolution of information-centric networking via software defined networking
US7653747B2 (en) Resolving virtual network names
US7293077B1 (en) Reconfigurable computer networks
EP2263164B1 (en) Request routing based on class
JP5640092B2 (ja) Ipv4ネットワークと新しいネットワークとの相互通信の実現方法及びシステム
EP3320668B1 (en) Discovery of resources in a local network
CN103618801A (zh) 一种p2p资源共享的方法、设备及***
CN111614792B (zh) 透传方法、***、服务器、电子设备及存储介质
JP5241665B2 (ja) 通信装置、通信システムおよび通信方法
Mahyoub et al. An optimized discovery mechanism for smart objects in IoT
US20030225910A1 (en) Host resolution for IP networks with NAT
Mungur et al. Performance Evaluation of Sending Location Update Packet to a Locator Identity Split Mapping Infrastructure
JP6487870B2 (ja) 名前解決装置、名前解決方法及び名前解決プログラム
KR20050104103A (ko) 사설 네트워크를 기반으로 하는 단말간의 일대일 통신시스템 및 그 방법
CN116319392A (zh) 一种服务访问方法及设备
Pokluda Components of a Scalable Web Hosting Platform using a Cloud and Peer-to-Peer Hybrid Architecture

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120301

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120309

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130307

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130319

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130415

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130507

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130522

LAPS Cancellation because of no payment of annual fees