JP5726720B2 - Web情報取得方法および先読み代理サーバ - Google Patents

Web情報取得方法および先読み代理サーバ Download PDF

Info

Publication number
JP5726720B2
JP5726720B2 JP2011277254A JP2011277254A JP5726720B2 JP 5726720 B2 JP5726720 B2 JP 5726720B2 JP 2011277254 A JP2011277254 A JP 2011277254A JP 2011277254 A JP2011277254 A JP 2011277254A JP 5726720 B2 JP5726720 B2 JP 5726720B2
Authority
JP
Japan
Prior art keywords
web
request data
server
prefetch
information storage
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.)
Active
Application number
JP2011277254A
Other languages
English (en)
Other versions
JP2013127719A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2011277254A priority Critical patent/JP5726720B2/ja
Publication of JP2013127719A publication Critical patent/JP2013127719A/ja
Application granted granted Critical
Publication of JP5726720B2 publication Critical patent/JP5726720B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、ネットワーク上でWEB閲覧装置(例えばパーソナルコンピュータや携帯端末など、以下「PC」という)がWEB提供装置(以下「WEBサーバ」という) からWEBコンテンツ情報(以下「WEB情報」という)を取得する際に、PCとWEBサーバとの間に先読み代理サーバを設置し、先読み代理サーバにてPCがWEBサーバに要求したWEB情報を先読みし、先読みしたWEB情報に基づきPCが要求する予定のWEB情報を予め取得しておき、PCの要求に対して当該WEB情報をPCへ転送することにより、WEB情報取得時間を短縮化するWEB情報取得方法および先読み代理サーバに関する。
インターネット等のネットワーク上でPCがWEBサーバからWEB情報を閲覧する場合、WEBサーバではHTTP(Hypertext Transfer Protocol )通信プロトコルに則って、HTML(HyperText Mark up Language)などを用いてPCに対してWEB情報を伝送する。例えば、byte.tokkyo.co.jp というWEBサーバが提供するファイルindex.htmlをHTTPで取得する場合、http://byte.tokkyo.co.jp/index.html というアドレスでWEB情報を読み出すことができる。WEB情報を読み出してくる場合、一般にはPCにWEB情報を閲覧するプログラム(以下「ブラウザ」という)を用いて利用者がアドレスを指定して読み出している。PCでは、利用者がアドレスを入力することにより、ブラウザがWEBサーバに対してページ要求を発する。WEBサーバはネットワークを介して送信されてきたこのページ要求を受信し、要求されたページのWEB情報をネットワークを介してPCに伝送する。このように、利用者からのページ要求があった毎に、PCのブラウザは該当ページをネットワークを介して取得する。
近年、PCの利用者がWEB情報の取得を要求した時点からPCにWEB情報が与えられる時点までの時間の短縮が求められている。また、たとえば、衛星回線等の高遅延ネットワークにおいては所定の遅延時間が生じるため、このようなネットワークを想定した伝送方法が求められている。これらの要求に応えるものとして、特許文献1では、WEB情報の先読み技術が開示されている。
図4は、従来のWEB情報取得装置を含む通信ネットワークの構成例を示す(特許文献1)。
図4において、WEBサーバ11はインターネット12に接続される。WEB閲覧装置の一例であるPC13は、LAN14、高遅延ネットワーク15を介してインターネット12に接続される。各ネットワークの接続点にはゲートウェイGWが配置される。ここで、高遅延ネットワーク15とは、例えば広帯域無線システムや衛星回線などを利用して遠隔地のコンピュータを相互接続するいわゆるWAN(Wide Area Network)であり、その規模等に応じた所定の遅延時間が発生する。
本発明で用いる先読み代理サーバ20は、高遅延ネットワーク15からWEBサーバ11側の所定の位置、例えばインターネット12またはインターネット12と高遅延ネットワーク15との間に接続される。一方、情報蓄積サーバ30は、PC13が接続されるLAN14に接続される。すなわち、PC13が各サーバにアクセスする時間は、WEBサーバ11、先読み代理サーバ20、情報蓄積サーバ30の順に短くなる。
図5は、従来のWEB情報取得処理シーケンスを示す。ここでは、PC13がWEBサーバ11のWEB情報data1を閲覧するための要求データをget1とする。WEBサーバ11は、get1に応じてWEB情報data1を出力する。data1はHTMLファイルであり、これにはPCが次の要求データget2を生成するために必要なURL等が含まれているものとし、先読み代理サーバ20はdata1からこのget2を生成し、先読みget2としてWEBサーバ11に送信する。WEBサーバ11がget2または先読みget2に応じて出力するWEB情報をdata2とする。
図5において、PC13は、get1をWEBサーバ11に向けて送信する。情報蓄積サーバ30および先読み代理サーバ20は、get1を蓄積するとともに、get1をWEBサーバ11に向けて転送する。WEBサーバ11は、get1に応じたdata1をPC13に向けて送信する。先読み代理サーバ20および情報蓄積サーバ30は、data1に対応するget1を蓄積しているので、そのままdata1をPC13へ転送する。また、先読み代理サーバ20は、このdata1から先読みget2を生成してWEBサーバ11に送信するとともに、情報蓄積サーバ30に対して先読みget2を通知する先読み要求通知信号を送信する。情報蓄積サーバ30は、先読み代理サーバ20から送信された先読み要求通信信号を受信し、それに対応するdata2の受信を待つ。
WEBサーバ11は、先読みget2に応じたdata2をPC13に向けて送信する。先読み代理サーバ20は、先読みされたdata2をPC11に向けて転送する。情報蓄積サーバ30は、先読みget2を蓄積しているものの、PC13からget2を入力していないので、先読みされたdata2を一旦蓄積する。
WEBサーバ11は、先読みget2に応じたdata2をPC13に向けて送信する。先読み代理サーバ20は、先読みされたdata2をPC11に向けて転送する。情報蓄積サーバ30は、先読みget2を蓄積しているものの、PC13からget2を入力していないので、先読みされたdata2を一旦蓄積する。
一方、PC13は、data1を受信し、data1からget2を生成してWEBサーバ11に向けて送信する。情報蓄積サーバ30は、このget2を受信すると、蓄積している要求データおよび先読み要求データと比較する。ここでは、先読みget2を蓄積しているので、情報蓄積サーバ30はget2=先読みget2と判断し、対応するdata2をPC13に向けて送信する。なお、get2≠先読みget2の場合、あるいはget2と同じWEB情報を要求する要求データが蓄積されていない場合には、情報蓄積サーバ30はget1と同様にget2をWEBサーバ11に向けて転送する。
図6は、従来の先読み代理サーバ20の構成例を示す。
図6において、ネットワークインタフェース部21は、受信信号の送信元および宛先に応じて、受信信号を要求データ受信部22またはWEB情報解析部26に振り分ける。要求データ受信部22は、PC13からWEBサーバ11に転送される信号を受信し、当該受信信号から要求データを抽出して要求データ比較部23に出力する。
要求データ比較部23は、要求データ受信部22で抽出された要求データと要求データ蓄積部24に蓄積されている要求データとを比較し、要求データ受信部22で抽出された要求データが要求データ蓄積部24に蓄積されていない場合(get1の場合)には、当該要求データを要求データ送出部25に出力するとともに要求データ蓄積部24に蓄積する。また、要求データ受信部22で抽出された要求データが要求データ蓄積部24に記憶されている場合には、当該要求データを廃棄するとともに要求データ蓄積部24に蓄積されている当該要求データも削除する。
要求データ送出部25は、要求データ比較部23から入力する要求データをネットワークインタフェース部21を介してWEBサーバ11に転送する。
WEB情報解析部26は、要求データに応じてWEBサーバ11が送出したWEB情報を受信し、そのWEB情報を受信するPC13が要求すると予測される要求データ(先読みget2)を生成し、先読み要求データ比較部27に出力する。一方、WEB情報は、先読み代理サーバ20から情報蓄積サーバ30へ転送され、さらにPC13に転送される。
先読み要求データ比較部27は、WEB情報解析部26で生成された先読み要求データ(先読みget2)と要求データ蓄積部24に蓄積されている要求データとを比較し、WEB情報解析部26で抽出された先読み要求データが要求データ蓄積部24に蓄積されていない場合には、当該先読み要求データを要求データ送出部25に出力するとともに要求データ蓄積部24に蓄積する。また、WEB情報解析部26で抽出された先読み要求データが要求データ蓄積部24に蓄積されている場合には、当該先読み要求データを廃棄するとともに要求データ蓄積部24に蓄積されている当該要求データも削除する。
要求データ送出部25は、先読み要求データ比較部27から入力する先読み要求データ(先読みget2)をネットワークインタフェース部21を介してWEBサーバ11および情報蓄積サーバ30に送出する。
図7は、従来の情報蓄積サーバ30の構成例を示す。
図7において、ネットワークインタフェース部31は、受信信号の送信元および宛先に応じて、受信信号を要求データ受信部32またはWEB情報蓄積部36または先読み要求データ受信部37に振り分ける。要求データ受信部32は、PC13からWEBサーバ11に転送される信号を受信し、要求データを抽出して要求データ比較部33に出力する。
要求データ比較部33は、要求データ受信部32で抽出された要求データと要求データ蓄積部34に蓄積されている要求データおよび先読み要求データとを比較し、同じWEB情報を要求する要求データまたは先読み要求データが要求データ蓄積部34に蓄積されていない場合(get1の場合)には、当該要求データを要求データ送出部35に出力するとともに要求データ蓄積部34に蓄積する。また、要求データ受信部32で抽出された要求データと同じWEB情報を要求する要求データまたは先読み要求データが要求データ蓄積部34に蓄積されている場合(get2の場合)には、当該要求データを廃棄するとともに要求データ蓄積部34に蓄積されている当該要求データまたは先読み要求データも削除し、さらにWEB情報蓄積部36に対して当該WEB情報(data2)をPC13へ向けて出力するように命令する。
要求データ送出部35は、要求データ比較部33から入力する要求データをネットワークインタフェース部31を介してWEBサーバ11に転送する。
先読み要求データ受信部37は、先読み代理サーバ20がWEBサーバ11とともに情報蓄積サーバ30に送信した先読み要求データ(先読みget2)を受信し、要求データ蓄積部34に蓄積する。
WEB情報蓄積部36は、PC13からの要求データ(get1)に応じて、または先読み代理サーバ20からの先読み要求データ(先読みget2)に応じて、WEBサーバ11からPC13へ送信されたWEB情報(data1,data2)を受信して蓄積する。さらに、当該WEB情報に対応する要求データが要求データ蓄積部34に蓄積されているか否かを問い合わせ、要求データが蓄積されているWEB情報(data1)をWEB情報送出部38に出力する。また、WEB情報蓄積部36は、要求データ比較部33の命令により先読み要求データ(先読みget2)に対応のWEB情報(data2)をWEB情報送出部38に出力する。
WEB情報送出部38は、WEB情報蓄積部36から入力するWEB情報をネットワークインタフェース部31を介してPC13に送信する。
特開2011−039899号公報
先読み代理サーバから情報蓄積サーバへの転送においては、一般的にTCPプロトコルが使用されて、スロースタート輻輳制御機構や再送制御機構により、パケットロスが発生することなく、信頼性の高い伝送が行われる。しかし、先読み代理サーバと情報蓄積サーバとの間の伝送路の伝送遅延時間が大きい場合に、TCPプロトコルによる転送を行う場合、スロースタート輻輳制御により伝送効率が低くなり、伝送に時間がかかる問題がある。
ここでは、WWWサービスの特徴である10kByte程度の小さなサイズの画像などのWEBコンテンツが長遅延ネットワークを介して転送される場合について説明する。すなわち、転送するデータサイズに対するスループットを数値定量化する。HTTPは、WEBコンテンツのそれぞれに対応するTCPセッションにより転送されるアプリケーションである。ある1つのTCPセッションにおいて、WEBサーバからPCへデータを送信する様子を図8に示す。このように、TCPでは1回のRTT(往復遅延時間) の時間でバースト的にデータを送信できると考えてよい。
k回目のデータ送信時において、WEBサーバから一度に送信できるデータサイズDs(k)[Byte]は、
Ds(k)=Min{cwnd(k),Rwin } …(1)
である。ここで、cwnd(k) は送信側の輻輳ウィンドウで単位はByte、Rwin は受信側のウィンドウサイズで単位はByteである。cwnd(k) は以下のように表すことができる。
・スロースタートのフェーズ
cwnd(k) =2(k-1)×cwnd(1) (cwnd(k)<ssthresh) …(2)
cwnd(1) =Min{MSS×int(Rwin/MSS),Rwin }
・輻輳回避のフェーズ
cwnd(k) =cwnd(k-1)×MSS (cwnd(k)≧ssthresh) …(3)
ここで、Ds(k)の最大値はRwin である。MSS(maximum segment size)は、TCPにおける1セグメントで転送可能なデータの最大長であり、イーサネット(登録商標)では、1460Byteである。ここでは、転送するデータはMSS毎にセグメント化されるとする。ssthreshは、スロースタートから輻輳回避フェーズへの移行の閾値であり、パケットロス発生時のcwndの1/2の値、すなわちパケットロスがない場合はMSS×int(Rwin/MSS) と考えてよい。例えば、RTT=0.25秒としたとき、Rwin =64kByte ,32kByte,17kByteにおけるそれぞれのDs(k)の時間変化を図9に示す。
Ds(k)の値は、通信開始から指数関数的に増加して、Rwin の半分に達する。その後、1RTT毎に1MSSずつ増加していき、Rwin の値に達したところで頭打ちになる。したがって、k回目の1RTT時間でDs(k)のサイズのデータを送ることから、転送開始からRTT×n [秒] の時間で転送できるデータサイズSd の最大値Max[Sd] は
Figure 0005726720
また、Sd の最小値Min [Sd]は、n−1回で送り切れなかったデータ(1MSS)をn回目で送信するため
Figure 0005726720
となる。したがって、転送するデータサイズに対するスループットSは
Figure 0005726720
と表すことができる。これをグラフ化したものを図10に示す。
10kByte程度のWEBコンテンツのようにデータサイズが小さい場合、スロースタートのフェーズで転送終了し、スループットは低速であり、Rwin の値を大きくしてもそれほどスループットの向上は見込めないことがわかる。WEBサービスではWEBコンテンツのデータサイズが小さいという特徴を考慮すると、HTTPスループットはRwin が64kByteと大きい場合でも、Rwin が17kByteと小さい場合でもさほど変わりなく、低速であることがわかる。このように、遅延の大きなネットワークを介してWEBコンテンツをTCPプロトコルで転送するには、信頼性を高めるための輻輳制御機構であるスルースタートにより、スループットが低速であるという課題があった。
本発明は、先読み代理サーバと情報蓄積サーバとの間でTCPコネクションとUDPコネクションを一組で確立し、先読みしたWEB情報を転送する際にTCPプロトコルとUDPプロトコルを適宜選択して伝送効率を高めることができるWEB情報取得方法および先読み代理サーバを提供することを目的とする。
第1の発明は、WEBサーバと先読み代理サーバと情報蓄積サーバとWEB閲覧装置が複数のネットワークシステムを介して設置され、WEB閲覧装置は、第1の要求データをWEBサーバ宛に送信し、WEBサーバは第1の要求データに対応するWEB情報をWEB閲覧装置へ向けて送信し、先読み代理サーバは、第1の要求データに対応するWEB情報を情報蓄積サーバへ転送するとともに、当該WEB情報に含まれる要求データを抽出して先読み要求データとしてWEBサーバへ向けて送信し、さらに当該先読み要求データを情報蓄積サーバへ通知し、WEBサーバは、先読み要求データに対応するWEB情報を先読み代理サーバへ送信し、先読み代理サーバは、受信した先読み要求データに対応するWEB情報を情報蓄積サーバへ送信し、情報蓄積サーバにて当該WEB情報を蓄積し、WEB閲覧装置は、第1の要求データに対応するWEB情報に含まれる第2の要求データを生成し、当該第2の要求データを情報蓄積サーバへ送信し、情報蓄積サーバは、先読み要求データと第2の要求データが同一である場合に、蓄積した先読み要求データに対応するWEB情報をWEB閲覧装置へ送信するWEB情報取得方法において、先読み代理サーバは、情報蓄積サーバへ向けて定期的にあるいは先読み要求データに対応するWEB情報の受信を転送開始のトリガとして、遅延時間測定パケットを情報蓄積サーバへ向けて送出し、当該パケットのラウンドトリップ時間から情報蓄積サーバとの間の伝送遅延時間を測定し、先読み代理サーバは、情報蓄積サーバとの間の伝送遅延時間が一定時間以下の場合に、先読み要求データに対応するWEB情報をTCPプロトコルを用いて情報蓄積サーバへ送信し、先読み代理サーバは、情報蓄積サーバとの間の伝送遅延時間が一定時間を超える場合に、先読み要求データに対応するWEB情報をUDPプロトコルを用いて情報蓄積サーバへ送信し、先読み代理サーバは、先読み要求データに対応するWEB情報をUDPプロトコルを用いて情報蓄積サーバへ送信するときに、送信するパケットにシーケンス番号を付加し、情報蓄積サーバは、受信したパケットに付加されたシーケンス番号から欠落したシーケンス番号を通知する再送要求を先読み代理サーバへ送信し、先読み代理サーバは、情報蓄積サーバから再送要求されたシーケンス番号のパケットをTCPプロトコルを用いて再送する
第2の発明は、WEBサーバと先読み代理サーバと情報蓄積サーバとWEB閲覧装置が複数のネットワークシステムを介して設置され、WEB閲覧装置は、第1の要求データをWEBサーバ宛に送信し、WEBサーバは第1の要求データに対応するWEB情報をWEB閲覧装置へ向けて送信し、先読み代理サーバは、第1の要求データに対応するWEB情報を情報蓄積サーバへ転送するとともに、当該WEB情報に含まれる要求データを抽出して先読み要求データとしてWEBサーバへ向けて送信し、さらに当該先読み要求データを情報蓄積サーバへ通知し、WEBサーバは、先読み要求データに対応するWEB情報を先読み代理サーバへ送信し、先読み代理サーバは、受信した先読み要求データに対応するWEB情報を情報蓄積サーバへ送信し、情報蓄積サーバにて当該WEB情報を蓄積し、WEB閲覧装置は、第1の要求データに対応するWEB情報に含まれる第2の要求データを生成し、当該第2の要求データを情報蓄積サーバへ送信し、情報蓄積サーバは、先読み要求データと第2の要求データが同一である場合に、蓄積した先読み要求データに対応するWEB情報をWEB閲覧装置へ送信するWEB情報取得装置の先読み代理サーバにおいて、定期的にあるいは先読み要求データに対応するWEB情報の受信を転送開始のトリガとして、遅延時間測定パケットを情報蓄積サーバへ向けて送出し、当該パケットのラウンドトリップ時間から情報蓄積サーバとの間の伝送遅延時間を測定する測定手段と、伝送遅延時間が一定時間以下の場合に、先読み要求データに対応するWEB情報をTCPプロトコルを用いて情報蓄積サーバへ送信し、伝送遅延時間が一定時間を超える場合に、先読み要求データに対応するWEB情報をUDPプロトコルを用いて情報蓄積サーバへ送信する送信手段とを備え、送信手段は、先読み要求データに対応するWEB情報をUDPプロトコルを用いて情報蓄積サーバへ送信するときに、送信するパケットにシーケンス番号を付加し、情報蓄積サーバが受信したパケットに付加されたシーケンス番号から欠落したシーケンス番号を通知する再送要求を受信し、さらに当該再送要求されたシーケンス番号のパケットをTCPプロトコルを用いて再送する再送制御手段を含む。
本発明の先読み代理サーバは、定期的に情報蓄積サーバとの間で伝送遅延時間を測定し、測定された伝送遅延時間が一定時間以下の場合に、TCPプロトコルを用いて先読みされたWEB情報を情報蓄積サーバへ送信する。また、測定された伝送遅延時間が一定時間を超えている場合に、再送制御と受信順序制御機能を取り込んだUDPプロトコルを用いて先読みされたWEB情報を情報蓄積サーバへ送信する。したがって、伝送遅延が小さいときはTCPによる信頼性の高い伝送を行い、伝送遅延が大きいときはUDPによる高効率の伝送により伝送時間を低減することができる。
情報蓄積サーバは、UDPプロトコルにより先読みされたWEB情報を受信した場合に、パケットに含まれるシーケンス番号から欠落したシーケンス番号を通知する再送要求を先読み代理サーバへ送信する。先読み代理サーバは、当該再送要求されたシーケンス番号のパケットをTCPプロトコルを用いて再送する。これにより、UDPにより高効率の伝送中に生じたパケットロスを回復することができる。また、再送パケットのみをTCPで伝送することによりスロースタートの影響も受けにくくなり、かつ再送パケットを高信頼で転送することができる。また、受信したUDPパケットのシーケンス番号の順序が逆転している場合には、順序の逆転がないようにパケットの順序を並び替える。
このように、TCPプロトコル/UDPプロトコルの切り替えと、再送制御・パケット順序制御とを組み合わせることにより、ネットワーク全体として伝送効率を高め、信頼性の高い情報転送を行うことができる。
本発明の先読み代理サーバの実施例1の構成を示す図である。 本発明の先読み代理サーバの実施例2の構成を示す図である。 実施例1および実施例2に対応するWEB情報転送処理シーケンスの例を示す図である。 従来のWEB情報取得装置を含む通信ネットワークの構成例を示す図である。 従来のWEB情報取得処理シーケンスを示す図である。 従来の先読み代理サーバ20の構成例を示す図である。 従来の情報蓄積サーバ30の構成例を示す図である。 TCPでのデータ転送シーケンスを示す図である。 先読み代理サーバの送信データサイズの時間変化を示す図である。 データサイズに対する転送スループットを示す図である。
本発明は、先読み代理サーバにおいて、先読み要求データに対応するWEB情報(以下、「先読みWEB情報」という)について、情報蓄積サーバとの間の伝送遅延時間に応じてTCPプロトコルとUDPプロトコルを適宜選択し、情報蓄積サーバへ転送することを特徴とする。
ここで、UDPプロトコルはコネクションレス通信であり、スロースタート輻輳制御機構がないため、TCPプロトコルを使用する場合と比較して高速に転送することが可能となる。その結果、先読み代理サーバから先読みWEB情報を情報蓄積サーバへ転送する時間を短縮することができる。さらに、情報蓄積サーバからPCへの当該WEB情報の転送時間が短縮化され、先読みの効果を高めることができる。ただし、UDPプロトコルはコネクションレス通信であるために信頼性が低く、途中のネットワークでパケット欠落が発生したり、情報蓄積サーバにおいてパケット受信の順序が逆転し、当該WEB情報を正しく受信できない場合がある。情報蓄積サーバでの受信パケットの欠落に対しては再送処理が必要になり、受信の順序の逆転に対しては受信順序制御処理が必要になる。そのため、本発明では、以下の実施例1および実施例2に示すように、UDPプロトコルとTCPプロトコルを使い分けるようにする。
本発明の実施例1は、先読み代理サーバにおいて、先読みWEB情報を情報蓄積サーバへ転送する際に、先読み代理サーバと情報蓄積サーバとの間の伝送遅延時間の測定値に基づくプロトコル切替を行う。
先読み代理サーバと情報蓄積サーバは、WEB情報の転送に先駆けて、UDPコネクションおよびTCPコネクションを一組として確立する。先読み代理サーバは、定期的に遅延時間測定パケットを情報蓄積サーバに宛てて送信し、当該パケットのラウンドトリップ時間から伝送遅延時間を測定し、先読みWEB情報を情報蓄積サーバへ転送する際に、情報蓄積サーバとの伝送遅延時間が閾値を超えている場合にUDPプロトコルを用い、閾値以下の場合にTCPプロトコルを用いる。
図1は、本発明の先読み代理サーバの実施例1の構成を示す。
図1に示す実施例1の先読み代理サーバと、図6に示す従来の先読み代理サーバの対応関係は次の通りである。ネットワークインタフェース部21はそのまま対応する。図1に示す受信信号種別判定・転送処理部1、転送信号プロトコル判定部2および遅延時間測定部3は、図6のWEB情報解析部26に新たに備えられる機能部である。図1に示す先読み機能部4は、図6の先読み要求データ比較部27および要求データ送出部25に対応する。図6に示すその他の機能部は、図1の実施例1では省略している。
実施例1の先読み代理サーバは、PCがWEBサーバへ送信した要求データ(get)や、当該要求データに対してWEBサーバがPCへ送信したWEB情報(data)を受信すると、新たにコネクションが生じたと判定し、当該コネクションに対応するTCPコネクションおよびUDPコネクションを情報蓄積サーバとの間で確立する。そして、先読み代理サーバの遅延時間特性部3は、定期的に、あるいは先読みWEB情報の受信を転送開始のトリガとして、遅延時間測定パケットを情報蓄積サーバに宛てて送信し、当該パケットのラウンドトリップ時間から伝送遅延時間を測定し、保持しておく。
ネットワークインタフェース部21は、受信信号の送信元および宛先に応じて、受信信号を図6に示す要求データ受信部22またはWEB情報解析部26に振り分け、WEB情報解析部26は、要求データに応じてWEBサーバ11が送出したWEB情報を受信する。ここで、WEB情報解析部26の受信信号種別判定・転送処理部1は、受信したWEB情報がHTML信号であれば、当該WEB情報を先読み機能部4へ出力して先読み処理を行う。先読み処理については、図6で説明した構成に基づいて先読み要求データが生成され、WEBサーバへ送出することになるが、ここでは詳細な説明は省略する。
さらに、受信信号種別判定・転送処理部1は、受信したWEB情報が、PCからの要求データ(図5におけるget1)に対応するWEB情報(同data1、本例ではHTML信号)か、先読み代理サーバの先読み要求データ(同先読みget2)に対応する先読みWEB情報(同data2)かを判定する。そして、前者のHTML信号であるWEB情報(同data1)は、そのまま情報蓄積サーバへ転送し、後者の先読みWEB情報(同data2)の場合は、転送信号プロトコル判定部2に対して転送信号プロトコルの問い合わせを行い、転送信号プロトコル判定部2で判定した転送信号プロトコルを取得し、それに従って情報蓄積サーバへ転送する処理を行う。
ここで、転送信号プロトコル判定部2は、受信信号種別判定・転送処理部1からの転送信号プロトコルの問い合わせを受けて、遅延時間測定部3に対して情報蓄積サーバとの遅延時間を問い合わせる。遅延時間測定部3は、当該問い合わせに対して、情報蓄積サーバとの伝送遅延時間の測定結果を転送信号プロトコル判定部2へ通知する。転送信号プロトコル判定部2は、情報蓄積サーバとの伝送遅延時間を取得し、当該伝送遅延時間が予め決めた閾値を超えていればUDPプロトコル、閾値以下であればTCPプロトコルを用いることを判定し、受信信号種別判定・転送処理部1に判定した転送信号プロトコルを通知する。
実施例1の先読み代理サーバに対応する情報蓄積サーバは、先読み代理サーバの遅延時間測定部3との間で、先読み代理サーバと情報蓄積サーバとの間の伝送遅延時間の測定に用いる機能部が備えられる他は、図7に示す情報蓄積サーバの構成と同様である。
すなわち、情報蓄積サーバに入力するWEB情報について、PCからの要求データ(図5におけるget1)に対応するWEB情報(同data1)か、先読み代理サーバの先読み要求データ(同先読みget2)に対応する先読みWEB情報(同data2)かを判定する。前者のWEB情報(同data1)はそのままPCへ転送し、後者の先読みWEB情報(同data2)の場合は、PCから先読み要求データ(同先読みget2)と同じ要求データが入力されるまで蓄積し、当該要求データが入力されたときに当該先読みWEB情報(同data2)をPCへ転送する。
本発明の実施例2は、UDPプロトコルで転送されたパケットの再送処理をTCPプロトコルを用いて行うことを特徴とする。
再送パケットの数が増えるに従って伝送遅延が大きくなる。すなわち、遅延が大きいネットワークでは、再送パケットを待つ時間が大きいため、複数回の再送が生じると伝送遅延が顕著になる。そこで、実施例2では、UDPプロトコルで転送されたパケットの再送パケットは、TCPプロトコルを用いて再送する。すなわち、先読み代理サーバは、UDPコネクション上で生じたパケット欠落に対して、TCPコネクションを用いて再送処理を行う。TCPプロトコルを使用するのが再送処理のみであれば、そのトラヒック量が少なく、よって部分的にTCPプロトコルを用いても上述したスロースタートの影響を受けにくい。また、UDPプロトコル上で新たな再送機能を備える必要がなく、従来のTCPプロトコルの設計を利用できる。
図2は、本発明の先読み代理サーバの実施例2の構成を示す。
図2の先読み代理サーバは、図1の先読み代理サーバの受信信号種別判定・転送処理部1に再送制御部5を接続した構成である。
受信信号種別判定・転送処理部1は、先読みWEB情報(図5におけるdata2)を情報蓄積サーバへ転送する際に、情報蓄積サーバとの間の伝送遅延時間が閾値を超えていればUDPプロトコル、閾値以下であればTCPプロトコルを用いる。ここで、先読みWEB情報をUDPプロトコルで転送するときに、UDPパケットにUDPシーケンス番号を付加する。
情報蓄積サーバは、受信したUDPパケットの中で、欠落しているUDPシーケンス番号を抽出して先読み代理サーバへ再送通知を行う再送制御部を備える。このとき、情報蓄積サーバは、UDPコネクションではなく、TCPコネクション(SACKオプション)を用いて、再送に必要な欠落しているUDPシーケンス番号を含む再送制御信号を送信する。
先読み代理サーバの受信信号種別判定・転送処理部1は、情報蓄積サーバから再送制御信号を受信すると、転送信号プロトコル判定部2に対して転送信号プロトコルの問い合わせを行わず、再送制御部5へ通知する。再送制御部5は、再送制御信号に含まれる再送に必要な欠落しているUDPシーケンス番号を判別し、当該パケットをTCPプロトコルを用いて再送するように受信信号種別判定・転送処理部1に通知し、受信信号種別判定・転送処理部1が当該パケットをTCPプロトコルを用いて再送する。
実施例2の先読み代理サーバに対応する情報蓄積サーバは、先読み代理サーバの遅延時間測定部3との間で、先読み代理サーバと情報蓄積サーバとの間の伝送遅延時間の測定に用いる機能部が備えられ、さらに情報の再送制御部を備える他は、図7に示す情報蓄積サーバの構成と同様である。
図3は、実施例1および実施例2に対応するWEB情報転送処理シーケンスの例を示す。
図3において、先読み代理サーバは、情報蓄積サーバへ向けて遅延時間測定パケットを送出し、情報蓄積サーバとの間の伝送遅延時間を測定する。ここでは、伝送遅延時間が閾値以下であることからTCPプロトコルでの転送を選択する。
PCは、要求データ(get1)をWEBサーバへ向けて送信し、WEBサーバはそれに対応するWEB情報(data1、本例ではHTML信号)を返信する。
先読み代理サーバは、WEB情報(data1)を情報蓄積サーバに転送するとともに、このWEB情報(data1)を解析して先読み要求データ(先読みget2,先読みget3)を生成し、まず先読み要求データ(先読みget2)をWEBサーバに送信するとともに、情報蓄積サーバに対して先読み要求データを含む先読み通知を送信する。情報蓄積サーバは、先読み代理サーバから送信された先読み通知を受信し、それに対応する先読みWEB情報(data2,data3)の受信を待つ。
WEBサーバは、先読み要求データ(先読みget2)に対応する先読みWEB情報(data2)をPCへ向けて送信する。先読み代理サーバは、当該先読みWEB情報(data2)を受信すると、転送信号プロトコル判定部においてすでに選択しているTCPプロトコルを用いて当該先読みWEB情報(data2)を情報蓄積サーバへ送信する。情報蓄積サーバは、当該先読みWEB情報(data2)を受信すると、それに対応する要求データ(get2)をPCから入力していないので一旦蓄積する。
一方、PCは、WEB情報(data1)を受信し、要求データ(get2)をWEBサーバへ向けて送信する。情報蓄積サーバは、この要求データ(get2)を受信すると、先読み通知の先読み要求データ(先読みget2)と照合し、両者の一致により蓄積している先読みWEB情報(data2)をPCへ送信する。
ここで、先読み代理サーバは、情報蓄積サーバへ向けて遅延時間測定パケットを送出し、情報蓄積サーバとの間の伝送遅延時間を測定する。ここでは、伝送遅延時間が閾値を超えていることからUDPプロトコルでの転送を選択する。
先読み代理サーバは、引き続きWEB情報(data1)に含まれる先読み要求データ(先読みget3)をWEBサーバに送信する。WEBサーバは、先読み要求データ(先読みget3)に対応する先読みWEB情報(data3)をPCへ向けて送信する。先読み代理サーバは、当該先読みWEB情報(data3)を受信すると、転送信号プロトコル判定部においてすでに選択しているUDPプロトコルを用いて当該先読みWEB情報(data3)を情報蓄積サーバへ送信する。情報蓄積サーバは、当該先読みWEB情報(data3)を受信すると、当該先読みWEB情報(data3)を一旦蓄積して再送処理および順序整合処理を行う。
ここで、情報蓄積サーバは、UDPプロトコルを用いて転送された先読みWEB情報(data3)の中の欠落したパケットを検出し、先読み代理サーバへ欠落パケットの再送を要求する。この再送要求を受信した先読み代理サーバは、再送するパケットをTCPプロトコルを用いて情報蓄積サーバへ転送する。情報蓄積サーバは、再送されたパケットを含めて先読み要求データ(先読みget3)に対応する先読みWEB情報(data3)の順序整合処理を行う。
一方、PCは、WEB情報(data1)に応じて次の要求データ(get3)をWEBサーバへ向けて送信する。情報蓄積サーバは、この要求データ(get3)を受信すると、先読み通知の先読み要求データ(先読みget3)と照合し、両者の一致により蓄積している先読みWEB情報(data3)をPCへ送信する。
1 受信信号種別判定・転送処理部
2 転送信号プロトコル判定部
3 遅延時間測定部
4 先読み機能部
5 再送制御部
11 WEBサーバ
12 インターネット
13 PC
14 LAN
15 高遅延ネットワークシステム
20 先読み代理サーバ
21 ネットワークインタフェース部
22 要求データ受信部
23 要求データ比較部
24 要求データ蓄積部
25 要求データ送出部
26 WEB情報解析部
27 先読み要求データ比較部
30 情報蓄積サーバ
31 ネットワークインタフェース部
32 要求データ受信部
33 要求データ比較部
34 要求データ蓄積部
35 要求データ送出部
36 WEB情報蓄積部
37 先読み要求データ受信部
38 WEB情報送出部

Claims (2)

  1. WEBサーバと先読み代理サーバと情報蓄積サーバとWEB閲覧装置が複数のネットワークシステムを介して設置され、
    前記WEB閲覧装置は、第1の要求データを前記WEBサーバ宛に送信し、前記WEBサーバは第1の要求データに対応するWEB情報を前記WEB閲覧装置へ向けて送信し、 前記先読み代理サーバは、前記第1の要求データに対応するWEB情報を前記情報蓄積サーバへ転送するとともに、当該WEB情報に含まれる要求データを抽出して先読み要求データとして前記WEBサーバへ向けて送信し、さらに当該先読み要求データを前記情報蓄積サーバへ通知し、
    前記WEBサーバは、前記先読み要求データに対応するWEB情報を前記先読み代理サーバへ送信し、
    前記先読み代理サーバは、受信した前記先読み要求データに対応するWEB情報を前記情報蓄積サーバへ送信し、前記情報蓄積サーバにて当該WEB情報を蓄積し、
    前記WEB閲覧装置は、前記第1の要求データに対応するWEB情報に含まれる第2の要求データを生成し、当該第2の要求データを前記情報蓄積サーバへ送信し、
    前記情報蓄積サーバは、前記先読み要求データと前記第2の要求データが同一である場合に、蓄積した前記先読み要求データに対応するWEB情報を前記WEB閲覧装置へ送信するWEB情報取得方法において、
    前記先読み代理サーバは、前記情報蓄積サーバへ向けて定期的にあるいは前記先読み要求データに対応するWEB情報の受信を転送開始のトリガとして、遅延時間測定パケットを前記情報蓄積サーバへ向けて送出し、当該パケットのラウンドトリップ時間から前記情報蓄積サーバとの間の伝送遅延時間を測定し、
    前記先読み代理サーバは、前記情報蓄積サーバとの間の伝送遅延時間が一定時間以下の場合に、前記先読み要求データに対応するWEB情報をTCPプロトコルを用いて前記情報蓄積サーバへ送信し、
    前記先読み代理サーバは、前記情報蓄積サーバとの間の伝送遅延時間が前記一定時間を超える場合に、前記先読み要求データに対応するWEB情報をUDPプロトコルを用いて前記情報蓄積サーバへ送信し、
    前記先読み代理サーバは、前記先読み要求データに対応するWEB情報をUDPプロトコルを用いて前記情報蓄積サーバへ送信するときに、送信するパケットにシーケンス番号を付加し、
    前記情報蓄積サーバは、受信したパケットに付加されたシーケンス番号から欠落したシーケンス番号を通知する再送要求を前記先読み代理サーバへ送信し、
    前記先読み代理サーバは、前記情報蓄積サーバから再送要求されたシーケンス番号のパケットをTCPプロトコルを用いて再送する
    ことを特徴とするWEB情報取得方法。
  2. WEBサーバと先読み代理サーバと情報蓄積サーバとWEB閲覧装置が複数のネットワークシステムを介して設置され、
    前記WEB閲覧装置は、第1の要求データを前記WEBサーバ宛に送信し、前記WEBサーバは第1の要求データに対応するWEB情報を前記WEB閲覧装置へ向けて送信し、 前記先読み代理サーバは、前記第1の要求データに対応するWEB情報を前記情報蓄積サーバへ転送するとともに、当該WEB情報に含まれる要求データを抽出して先読み要求データとして前記WEBサーバへ向けて送信し、さらに当該先読み要求データを前記情報蓄積サーバへ通知し、
    前記WEBサーバは、前記先読み要求データに対応するWEB情報を前記先読み代理サーバへ送信し、
    前記先読み代理サーバは、受信した前記先読み要求データに対応するWEB情報を前記情報蓄積サーバへ送信し、前記情報蓄積サーバにて当該WEB情報を蓄積し、
    前記WEB閲覧装置は、前記第1の要求データに対応するWEB情報に含まれる第2の要求データを生成し、当該第2の要求データを前記情報蓄積サーバへ送信し、
    前記情報蓄積サーバは、前記先読み要求データと前記第2の要求データが同一である場合に、蓄積した前記先読み要求データに対応するWEB情報を前記WEB閲覧装置へ送信するWEB情報取得装置の先読み代理サーバにおいて、
    定期的にあるいは前記先読み要求データに対応するWEB情報の受信を転送開始のトリガとして、遅延時間測定パケットを前記情報蓄積サーバへ向けて送出し、当該パケットのラウンドトリップ時間から前記情報蓄積サーバとの間の伝送遅延時間を測定する測定手段と、
    前記伝送遅延時間が一定時間以下の場合に、前記先読み要求データに対応するWEB情報をTCPプロトコルを用いて前記情報蓄積サーバへ送信し、前記伝送遅延時間が前記一定時間を超える場合に、前記先読み要求データに対応するWEB情報をUDPプロトコルを用いて前記情報蓄積サーバへ送信する送信手段と
    を備え
    前記送信手段は、前記先読み要求データに対応するWEB情報をUDPプロトコルを用いて前記情報蓄積サーバへ送信するときに、送信するパケットにシーケンス番号を付加し、前記情報蓄積サーバが受信したパケットに付加されたシーケンス番号から欠落したシーケンス番号を通知する再送要求を受信し、さらに当該再送要求されたシーケンス番号のパケットをTCPプロトコルを用いて再送する再送制御手段を含む
    ことを特徴とする先読み代理サーバ。
JP2011277254A 2011-12-19 2011-12-19 Web情報取得方法および先読み代理サーバ Active JP5726720B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011277254A JP5726720B2 (ja) 2011-12-19 2011-12-19 Web情報取得方法および先読み代理サーバ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011277254A JP5726720B2 (ja) 2011-12-19 2011-12-19 Web情報取得方法および先読み代理サーバ

Publications (2)

Publication Number Publication Date
JP2013127719A JP2013127719A (ja) 2013-06-27
JP5726720B2 true JP5726720B2 (ja) 2015-06-03

Family

ID=48778217

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011277254A Active JP5726720B2 (ja) 2011-12-19 2011-12-19 Web情報取得方法および先読み代理サーバ

Country Status (1)

Country Link
JP (1) JP5726720B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6504608B2 (ja) * 2016-02-08 2019-04-24 日本電信電話株式会社 通信装置及びその制御方法並びにプログラム、並びに通信システム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3734774B2 (ja) * 2002-06-21 2006-01-11 株式会社リコー ネットワークファクシミリ装置、及び、ファクシミリ通信方法
JP2004153776A (ja) * 2002-09-03 2004-05-27 Ntt Docomo Inc 情報配信システム、アクセス中継装置、配信中継装置、通信端末装置、情報配信方法およびプログラム
JP4222561B2 (ja) * 2004-06-04 2009-02-12 株式会社リコー データ通信方式、電子会議システム、データ通信方法、データ通信プログラム及び記憶媒体
JP5208884B2 (ja) * 2009-08-17 2013-06-12 日本電信電話株式会社 Web情報取得方法および装置

Also Published As

Publication number Publication date
JP2013127719A (ja) 2013-06-27

Similar Documents

Publication Publication Date Title
US11550870B2 (en) Method and system for detecting slow page load
US9350663B2 (en) Enhanced large data transmissions and catastrophic congestion avoidance over TCP/IP networks
US9992093B2 (en) Method and system for detecting slow page load
US8131823B2 (en) System and method for reading ahead of content
US9282135B2 (en) Enhanced computer networking via multi-connection object retrieval
US8990429B2 (en) HTTP-based synchronization method and apparatus
US20060168240A1 (en) Method and apparatus for determining client-perceived server response time
JP2014509483A (ja) ワイヤレスネットワークにおけるトランスミッション・コントロール・プロトコルの性能を改善する機構
US9485186B2 (en) Network congestion control with awareness of random packet losses
JP2004530388A (ja) アプリケーション配信時のリアルタイムパケット化および再送信
JP6745821B2 (ja) ハイパーテキスト・トランスファ・プロトコル要求の再送方法及びデバイス並びにクライアント端末
JP5208884B2 (ja) Web情報取得方法および装置
CN110072254B (zh) 一种数据的传输方法及其相关设备
EP2355416A1 (en) Communication apparatus and communication method
KR20060112287A (ko) 유무선 통신시스템에서 비트화 데이터 청크 수신응답 방법및 장치
JP2005520374A (ja) Tcp/ipに対する変更
US9231873B1 (en) System and method for reducing latency via client side dynamic acknowledgements
CN108432287A (zh) 一种数据传输方法及网络侧设备
JP5442541B2 (ja) Web情報取得方法および装置
JP5726720B2 (ja) Web情報取得方法および先読み代理サーバ
US20090106445A1 (en) Method and apparatus for model-based pageview latency management
JP5602678B2 (ja) Web情報先読み方法および先読み代理サーバ装置
JP4627290B2 (ja) Tcpを用いたレート制御方法、サーバ及びプログラム
JP4646931B2 (ja) サーバ装置およびリクエスト整理方法
JP6200870B2 (ja) データ転送制御装置、方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140203

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140917

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141007

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141202

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: 20150331

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150401

R150 Certificate of patent or registration of utility model

Ref document number: 5726720

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150