JP3679289B2 - ゲートウェイ装置によるデータ中継方法 - Google Patents
ゲートウェイ装置によるデータ中継方法Info
- Publication number
- JP3679289B2 JP3679289B2 JP34572399A JP34572399A JP3679289B2 JP 3679289 B2 JP3679289 B2 JP 3679289B2 JP 34572399 A JP34572399 A JP 34572399A JP 34572399 A JP34572399 A JP 34572399A JP 3679289 B2 JP3679289 B2 JP 3679289B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- network
- cache
- belonging
- terminal 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
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
【発明の属する技術分野】
本発明は、ネットワーク間に介在するゲートウェイ装置によるデータ中継方法に係わり、特にゲートウェイ装置が備えるデータキャッシュを効率的に使用するデータ中継方法に関する。
【0002】
【従来の技術】
企業内ネットワークに属する端末装置からインターネットなどの広域ネットワークに属するサーバ装置にアクセスする場合に、広域ネットワークと企業内ネットワークとの間にゲートウェイ装置を介在させ、端末装置はゲートウェイ装置を介して広域ネットワークにアクセスするようなシステムが構成される。ゲートウェイ装置は、端末装置からのデータ転送要求を広域ネットワークのサーバ装置に中継し、またサーバ装置から受け取ったデータを端末装置に中継する。特開平4−313126号公報によれば、このようなゲートウェイ計算機にディスクキャッシュを設け、このディスクキャッシュにサーバ装置から受け取ったデータを保存して、同一データの転送要求があったときディスクキャッシュ上のデータを利用することによって広域ネットワークとの通信を回避し、データのアクセス時間を短縮させる。このようなゲートウェイ計算機は、プロキシサーバと呼ばれている。
【0003】
【発明が解決しようとする課題】
上記のようなプロキシサーバは、端末装置からのアクセス頻度が増えて高負荷となると、ディスクキャッシュへのアクセス頻度が増加し、ディスクアクセス時間がボトルネックとなるため、レスポンスタイムが極端に悪化するという問題がある。
【0004】
本発明の目的は、上記のようなデータキャッシュを備えるゲートウェイ装置に対するレスポンスタイムを改善することにある。
【0005】
【課題を解決するための手段】
本発明は、第1のネットワークに属する端末装置からのデータ転送要求を第2のネットワークに属する装置に中継し、第2のネットワークに属する装置から送られるデータを第1のネットワークに属する要求元の端末装置へ中継し、かつデータキャッシュ中に要求されるデータがあればデータキャッシュ中のデータを要求元の端末装置へ送信して第2のネットワークとの通信を回避するゲートウェイ装置によるデータ中継方法において、第2のネットワークを介してデータを取得するに要する時間がデータキャッシュからデータを取得するに要する時間より小さいとき、データ転送要求を第2のネットワークに属する装置へ中継するゲートウェイ装置によるデータ中継方法を特徴とする。
【0006】
【発明の実施の形態】
以下、本発明の一実施形態について図面を用いて説明する。
【0007】
図1は、本実施形態のシステムの構成図である。システムはネットワーク20、ネットワーク50及び両ネットワークに介在するプロキシサーバ装置40から構成される。ネットワーク20はインターネットのような広域ネットワークであり、WWWサーバのようなサーバ装置10を多数備えている。またネットワーク50は企業内ネットワークであり、このネットワークに属する端末装置30はサーバ装置10に対してデータ転送要求を発行するクライアント端末である。プロキシサーバ装置40は、ネットワーク20及びネットワーク50に接続され、端末装置30のデータ転送要求をネットワーク20に属する目的のサーバ装置10に中継し、またサーバ装置10から送られるホームページのようなデータを要求元の端末装置30に中継するゲートウェイ装置である。
【0008】
プロキシサーバ装置40は、サーバ計算機であり、メモリ、すなわち主記憶装置(半導体記憶装置)上にメモリキャッシュ41の記憶領域を備え、また接続されるディスク装置上にディスクキャッシュ42の記憶領域を備える。通信制御部47は、ネットワーク50を介して端末装置30との間にコネクションを確立し、端末装置30とプロキシサーバ装置40との間の通信を制御するハードウェア/ソフトウェアである。通信制御部48は、ネットワーク20を介して目的のサーバ装置10との間にコネクションを確立し、サーバ装置10とプロキシサーバ装置40との間の通信を制御するハードウェア/ソフトウェアである。
【0009】
プロキシ中継部44は、プロキシサーバ装置40のメモリに格納され、通信制御部47を介して端末装置30からデータ転送要求を受信し、通信制御部48を介してサーバ装置10へ中継し、またサーバ装置10から送られたデータを端末装置30へ中継するプログラムである。ただし目的のデータがメモリキャッシュ41に存在すればそのデータを端末装置30へ送り、サーバ装置10との間の通信を回避する。またディスクキャッシュ42にアクセスするための待ち時間が少なく、かつ目的のデータがディスクキャッシュ42に存在すれば、そのデータを端末装置30へ送り、サーバ装置10との間のデータ取得のための通信を回避する。またプロキシ中継部44は、サーバ装置10から受信したデータをメモリキャッシュ41に蓄積するよう制御する。プロキシ中継部44は、端末装置30からのデータ転送要求ごとに起動されるプロセスによって動作する。
【0010】
ディスクアクセスキュー43は、メモリ上に設けられ、ディスクキャッシュ42へのアクセス要求をキューイングする制御テーブルである。ディスク検索部45は、プロキシ中継部44のプロセスからのディスク検索要求によって起動され、ディスクアクセスキュー43の検索要求順にディスクキャッシュ42を検索し、目的のデータがあればプロキシ中継部44の要求元プロセスにそのデータを渡すプログラムである。データ移行部46は、メモリキャッシュ41上の古いデータをディスクキャッシュ42に移動し、またサーバ装置10から取得されたデータ及びディスクキャッシュ42中のアクセスされたデータをメモリキャッシュ41に格納する。
【0011】
少なくともプロキシ中継部44のプログラムを記憶媒体に格納し、プロキシサーバ装置40に接続される駆動装置を介してプロキシサーバ装置40のメモリに読み込むか、または他の計算機に接続される駆動装置、他の計算機及びネットワークを介してプロキシサーバ装置40へ伝送し、プロキシサーバ装置40によって実行することが可能である。
【0012】
メモリキャッシュ41は、ディレクトリ格納領域とデータ格納領域とから構成される。ディレクトリ格納領域は、端末装置30から要求されたデータページのサーバ名/ファイル名と対応するデータページを格納する格納場所のメモリアドレスとを各ディレクトリとし、これらディレクトリのリストを格納する。ディレクトリは、アクセス順に配列されており、ディレクトリ格納領域の終端からその先頭にラップアラウンドして格納される。データ格納領域は、要求されたデータページを格納する。データページは、アクセス順に配列されており、データ格納領域の終端からその先頭にラップアラウンドして格納される。メモリキャッシュ41を検索するとき、まずディレクトリが検索され、目的のサーバ名/ファイル名が存在すれば対応するデータ格納領域中のデータページにアクセスされる。
【0013】
ディスクキャッシュ42も同様にディレクトリ格納領域とデータ格納領域とから構成される。ディレクトリ格納領域は、サーバ名/ファイル名と対応するデータページを格納するディスク上の論理ブロックアドレスとを各ディレクトリとし、これらディレクトリのリストを格納する。ディレクトリは、アクセス順に配列されており、ディレクトリ格納領域の終端からその先頭にラップアラウンドして格納される。データ格納領域中のデータページは、アクセス順に配列されており、データ格納領域の終端からその先頭にラップアラウンドして格納される。ディスクキャッシュ42を検索するときもメモリキャッシュ41の場合と同様に、まずディレクトリが検索され、目的のサーバ名/ファイル名が存在すれば対応するデータ格納領域中のデータページにアクセスされる。
【0014】
図2A及び図2Bは、プロキシ中継部44の処理の流れを示すフローチャートである。プロキシ中継部44は、通信制御部47を介してネットワーク50上の端末装置30からデータ転送要求を受信すると(ステップ61)、まずメモリキャッシュ41を検索する(ステップ62)。メモリキャッシュ41上にデータが有れば(ステップ63YES)、そのデータページを端末装置30へデータ転送する(ステップ64)。すなわちメモリキャッシュ41へのアクセスは高速に行われるものとみなし、メモリキャッシュ41にデータが有れば無条件でこれを利用する。
【0015】
メモリキャッシュ41上にデータがなければ(ステップ63NO)、ディスクアクセスキュー43を参照して現在のディスクアクセスのキュー数を取得する(ステップ65)。また現在のネットワーク20上の予想レスポンスタイムを取得する(ステップ66)。ここでレスポンスタイムは、プロキシサーバ装置40がサーバ装置10へデータ転送要求を送信してから要求したデータを受信するまでの時間である。サーバ装置10へのトラフィック、すなわち単位時間当りのアクセス件数は日周期のように周期的に変化すると考えられるので、あらかじめ時刻によるトラフィック変化の統計データを記憶装置上に格納しておけば、現在時刻からおおよその予想トラフィックが求められる。またレスポンスタイムはトラフィックに関する関数となるので、あらかじめ関数形を設定しておけば現在時刻における予想レスポンスタイムを推定できる。
【0016】
次に現在の実効的なディスクアクセス時間と取得した予想レスポンスタイムとを比較する(ステップ67)。ここで実効的なディスクアクセス時間は、
(ディスクアクセスのキュー数+1)×平均ディスクアクセス時間/データであり、
平均ディスクアクセス時間/データ=平均ディレクトリ読み出し時間+データページ読み出し時間+データ移行オーバヘッド
である。データ移行オーバヘッドは、メモリキャッシュ41上の古いデータページをディスクキャッシュ42に移動するときのオーバヘッド時間の平均ディスクアクセス時間/データへの寄与分である。なお上記ディスクアクセス時間は、ディスクキャッシュ42の読み書きの多重度が1としているので、多重度が2以上の場合にはその多重度で割ればよい。
【0017】
このようにして取得したディスクアクセス時間と予想レスポンスタイムを比較し、ディスクアクセス時間>予想レスポンスタイムであれば(ステップ67YES)、通信制御部48を介してネットワーク20上の目的とするサーバ装置10とコネクションを確立し、データ転送要求を送信してデータページを受信する(ステップ68)。次に通信制御部47を介して受信したデータをネットワーク50上の要求元の端末装置30へ転送する(ステップ69)。
【0018】
ディスクアクセス時間≦予想レスポンスタイムであれば(ステップ67NO)、図2Bに移り、ディスクアクセスキュー43にアクセス要求を登録してキュー数を1つ増やし(ステップ70)、サーバ名/ファイル名を指定してディスク検索部45にデータ検索要求を発行する(ステップ71)。ディスク検索部45は、ディスクアクセスキュー43の登録順にディスクキャッシュ42のデータを検索し、その結果をプロキシ中継部44の要求元プロセスに返す。アクセス要求されたデータがある場合には、そのデータと対応するディレクトリをディスクキャッシュ42から削除する。プロキシ中継部44の要求元プロセスは、ディスクアクセスキュー43上に登録したアクセス要求を削除してキュー数を1つ減らす(ステップ72)。ディスクキャッシュ42上に目的のデータページが有れば(ステップ73YES)、そのデータページを要求元の端末装置30へデータ転送する(ステップ74)。その後ステップ77へ行く。
【0019】
ディスクキャッシュ42上に目的のデータページがなければ(ステップ73NO)、通信制御部48を介してネットワーク20上の目的とするサーバ装置10とコネクションを確立し、データ転送要求を送信してデータページを受信する(ステップ75)。次に通信制御部47を介して受信したデータをネットワーク50上の要求元の端末装置30へ転送する(ステップ76)。
【0020】
次にプロキシ中継部44は、データ移行部46へ受信したデータページ又はディスクキャッシュ42から取り出したデータページをそのサーバ名/ファイル名とともに渡してメモリキャッシュ41への格納を要求する。データ移行部46は、メモリキャッシュ41のディレクトリ格納領域及びデータ格納領域の終端まで満杯でラップアラウンドした状態であれば、両格納領域についてポインタの指す最も古いディレクトリ及びデータページをそれぞれディスクキャッシュ42のディレクトリ格納領域及びデータ格納領域についてポインタの指す次の格納場所に移動し(ステップ77)、後者のポインタを更新する。次にメモリキャッシュ41のディレクトリ格納領域及びデータ格納領域について各々のポインタの指す格納場所に受け取ったサーバ名/ファイル名を含むディレクトリ及びデータページをそれぞれ格納し(ステップ78)、ポインタを更新する。メモリキャッシュ41の格納領域が満杯でなければ、受け取ったサーバ名/ファイル名を含むディレクトリ及びデータページをそれぞれポインタの指す格納場所に格納してポインタを更新するだけである。
【0021】
【発明の効果】
以上述べたように本発明によれば、端末装置からのアクセス頻度に応じてデータキャッシュを利用するか否かを制御するので、端末からみたデータ取得のレスポンスタイムを改善することができる。
【図面の簡単な説明】
【図1】実施形態のシステムの構成図である。
【図2A】実施形態のプロキシ中継部44の処理の流れを示すフローチャートである。
【図2B】実施形態のプロキシ中継部44の処理の流れを示すフローチャート(続き)である。
【符号の説明】
10:サーバ装置、20:ネットワーク、30:端末装置、40:プロキシサーバ装置、41:メモリキャッシュ、42:ディスクキャッシュ、43:ディスクアクセスキュー、44:プロキシ中継部、45:ディスク検索部、46:データ移行部、50:ネットワーク
Claims (4)
- 第1のネットワークに属する端末装置からのデータ転送要求を第2のネットワークに属する装置に中継し、第2のネットワークに属する装置から送られるデータを第1のネットワークに属する要求元の端末装置へ中継し、かつデータキャッシュ中に要求されるデータがあれば該データキャッシュ中のデータを要求元の端末装置へ送信して第2のネットワークとの通信を回避するゲートウェイ装置によるデータ中継方法において、第2のネットワークを介してデータ取得するまでに要するレスポンスタイムと該データキャッシュ中のデータを取得するまでに要するデータアクセス時間とを比較し、該レスポンスタイムが該データアクセス時間より小さい場合にはデータ転送要求を第2のネットワークに属する装置へ中継することを特徴とするゲートウェイ装置によるデータ中継方法。
- 前記データアクセス時間は、データアクセス要求のキュー数に依存することを特徴とする請求項1記載のゲートウェイ装置によるデータ中継方法。
- 第1のネットワークに属する端末装置からのデータ転送要求を第2のネットワークに属する装置に中継し、第2のネットワークに属する装置から送られるデータを第1のネットワークに属する要求元の端末装置へ中継し、かつデータキャッシュ中に要求されるデータがあれば該データキャッシュ中のデータを要求元の端末装置へ送信して第2のネットワークとの通信を回避するゲーウェイ装置によるデータ中継方法において、第2のネットワークを介してデータを取得するに要する時間が該データキャッシュからデータを取得するに要する時間より小さいとき、データ転送要求を第2のネットワークに属する装置へ中継することを特徴とするゲートウェイ装置によるデータ中継方法。
- コンピュータ読み取り可能なプログラムを格納する記憶媒体であって、該プログラムは、第1のネットワークに属する端末装置からのデータ転送要求を第2のネットワークに属する装置に中継する機能、第2のネットワークに属する装置から送られるデータを第1のネットワークに属する要求元の端末装置へ中継する機能、およびデータキャッシュ中に要求されるデータがあれば該データキャッシュ中のデータを要求元の端末装置へ送信して第2のネットワークとの通信を回避するよう制御する機能を前記コンピュータに実現させるプログラムであり、下記機能を前記コンピュータに実現させることを特徴とするプログラムを格納する記憶媒体:第2のネットワークを介してデータ取得するまでに要するレスポンスタイムとデータキャッシュ中のデータを取得するまでに要するデータアクセス時間とを比較する機能、および該レスポンスタイムが該データアクセス時間より小さい場合にはデータ転送要求を第2のネットワークに属する装置へ中継する機能。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34572399A JP3679289B2 (ja) | 1999-12-06 | 1999-12-06 | ゲートウェイ装置によるデータ中継方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34572399A JP3679289B2 (ja) | 1999-12-06 | 1999-12-06 | ゲートウェイ装置によるデータ中継方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001168921A JP2001168921A (ja) | 2001-06-22 |
JP3679289B2 true JP3679289B2 (ja) | 2005-08-03 |
Family
ID=18378540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP34572399A Expired - Fee Related JP3679289B2 (ja) | 1999-12-06 | 1999-12-06 | ゲートウェイ装置によるデータ中継方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3679289B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6823374B2 (en) * | 2001-11-16 | 2004-11-23 | Fineground Networks | Adjusting the cacheability of web documents according to the responsiveness of its content server |
JP2005521950A (ja) * | 2002-03-28 | 2005-07-21 | プリキャッシュ インコーポレイテッド | 発行−購読ネットワークにおける、信頼性が高く効率的なコンテンツに基づくルーティング、クエリ及び応答のための方法及び装置 |
JP5116319B2 (ja) * | 2007-03-06 | 2013-01-09 | キヤノン株式会社 | メッセージ中継装置及び方法 |
JP4844437B2 (ja) * | 2007-03-12 | 2011-12-28 | ヤマハ株式会社 | ルータ装置 |
JP6772794B2 (ja) | 2016-11-30 | 2020-10-21 | 富士通株式会社 | 分散データ管理装置、分散データ管理プログラム及び分散データ管理方法 |
-
1999
- 1999-12-06 JP JP34572399A patent/JP3679289B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001168921A (ja) | 2001-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6854018B1 (en) | System and method for intelligent web content fetch and delivery of any whole and partial undelivered objects in ascending order of object size | |
US5944780A (en) | Network with shared caching | |
US8825754B2 (en) | Prioritized preloading of documents to client | |
US7404201B2 (en) | Data distribution server | |
US6457047B1 (en) | Application caching system and method | |
US6925533B2 (en) | Virtual disk image system with local cache disk for iSCSI communications | |
US7587398B1 (en) | System and method of accessing a document efficiently through multi-tier web caching | |
US6868453B1 (en) | Internet home page data acquisition method | |
JP2004535631A (ja) | 通信ネットワークからユーザへ情報を送る時間を減らすシステムと方法 | |
US20120271852A1 (en) | System and Method of Accessing a Document Efficiently Through Multi-Tier Web Caching | |
EP2175383A1 (en) | Method and apparatus for improving file access performance of distributed storage system | |
WO2002015027A1 (en) | A network server card and method for handling requests received via a network interface | |
EP2266043A2 (en) | Cache optimzation | |
JP2000132450A (ja) | データ制御装置及びデータ制御方法 | |
KR20010032419A (ko) | 인터넷 캐싱 시스템 및 상기 시스템에서 인터넷 정보파일에 대한 요구를 서비스하는 장치와 방법 | |
JP3679289B2 (ja) | ゲートウェイ装置によるデータ中継方法 | |
JPH10240604A (ja) | インターネットのホームページ管理システム | |
CN117857637A (zh) | 一种基于sdwan的跨境传输优化方法 | |
JPH07239808A (ja) | 分散データ管理方式 | |
WO2010031297A1 (zh) | 一种wap网关提取业务的实现方法和系统 | |
JPH05143435A (ja) | データベースシステム | |
JP2001306433A (ja) | 費用効率の高いコンテンツ配信サービスのためのシステムおよび方法 | |
CN116866429A (zh) | 一种数据访问方法及相关装置 | |
JP2001125830A (ja) | キャッシュ管理装置及びネットワークシステム並びにプログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP2001256098A (ja) | プロキシサーバにおけるキャッシの制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050202 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050208 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050408 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050510 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050512 |
|
LAPS | Cancellation because of no payment of annual fees |