JP4176359B2 - データ取得方法、中継装置、プログラムおよび記録媒体 - Google Patents

データ取得方法、中継装置、プログラムおよび記録媒体 Download PDF

Info

Publication number
JP4176359B2
JP4176359B2 JP2002056272A JP2002056272A JP4176359B2 JP 4176359 B2 JP4176359 B2 JP 4176359B2 JP 2002056272 A JP2002056272 A JP 2002056272A JP 2002056272 A JP2002056272 A JP 2002056272A JP 4176359 B2 JP4176359 B2 JP 4176359B2
Authority
JP
Japan
Prior art keywords
data
received
determination information
client device
restart
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
JP2002056272A
Other languages
English (en)
Other versions
JP2003256313A (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.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
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 NTT Docomo Inc filed Critical NTT Docomo Inc
Priority to JP2002056272A priority Critical patent/JP4176359B2/ja
Publication of JP2003256313A publication Critical patent/JP2003256313A/ja
Application granted granted Critical
Publication of JP4176359B2 publication Critical patent/JP4176359B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、クライアント装置が中継装置を介してサーバ装置からデータを取得するデータ取得方法と、これら各方法を実行する中継装置と、これら各方法をコンピュータ装置に実行させるためのプログラムと当該プログラムを記録したコンピュータ装置が読み取り可能な記録媒体とに関する。
【0002】
【従来の技術】
近年、インターネットの急速な普及に伴い、インターネット上で各種サービスの提供を行うインフォメーションプロバイダー(以下、「IP」とする)が多数出現してきている。ユーザーは、これらIPの提供するサービスの利用を所望する場合には、これらIPがインターネット上で提供するコンテンツをダウンロードし、当該コンテンツを実行する必要がある。
【0003】
より詳しく説明すると、IPが提供するコンテンツは、文書の中に画像や音声、動画、他の文書の所在場所等を埋め込むことができる記述言語であるHTML(Hyper Text Markup Language)で記述されたテキストデータと、HTMLに従って当該テキストデータに関連付けられた画像データや音声データ等で構成されている。また、これらコンテンツは、インターネットに接続されたWWW(World Wide Web)サーバに格納されている。
ユーザーは、コンテンツの取得および解釈実行機能を有するソフトウェア(以下、「ブラウザ」とする)をクライアント装置で実行してインターネットに接続されたWWWサーバからコンテンツをダウンロードすることができる。なお、ユーザーのクライアント装置は、インターネットに直接的に接続されるのではなく、インターネットプロトコルの確立を行うゲートウェイサーバ(アクセスサーバ)を介してインターネットに接続される。この種のゲートウェイサーバはクライアント装置と通信するための第一の通信回線(例えば構内ネットワークや公衆網など)と第二の通信回線(インターネット)とに接続されており、クライアント装置とサーバ装置との通信を中継する。また、代理サーバ機能を備えたゲートウェイサーバも広く普及している。また、ユーザーが用いるクライアント装置としては、ブラウザ機能付き携帯電話やPDA(Personal Digital Assistance)やPC(Personal Computer)などが広く普及している。
【0004】
【発明が解決しようとする課題】
上述したように、ユーザーは、クライアント装置でブラウザを実行することによりWWWサーバからコンテンツをダウンロードすることができるが、例えば、通信障害等によりWWWサーバからのコンテンツのダウンロードが中断された場合には、所望するコンテンツを取得できない。
このような場合に、ユーザーが、当該コンテンツの利用を望むならば、再度、当該コンテンツのダウンロードを最初からやり直さなければならないといった問題点があった。
【0005】
上記の問題点を解決する方法として従来のデータ通信技術では、サーバ装置にクライアント装置のデータの受信状況を監視させるとともに、クライアント装置へのデータ送信が中断された場合には、クライアント装置にそれまで受信した部分を記憶させる方法が提案されている。
このような方法を用いると、ユーザーにより同一データのダウンロードが指示された場合には、中断されたデータ送信を中断された時点から再開し、クライアント装置が未受信の部分のみを送信し、クライアント装置で中断されるまでに受信した部分と再開後に受信した部分とを結合してユーザーの所望するデータを取得することが可能となる。
また、サーバ装置の処理負荷を軽減するために、サーバ装置とクライアント装置との通信を中継する中継装置を設け、当該中継装置に上述のクライアント装置へのデータのダウンロード状況を監視させる方法も提案されている。
【0006】
しかし、上述の方法を用いた場合であっても、ダウンロードが中断された時から中断されたダウンロードの再開が要求されるまでの間に、サーバ装置に記憶されているダウンロード対象のデータが更新されてしまった場合には、サーバ装置は、クライアント装置に記憶されているデータとは異なる更新済みのデータからクライアント装置が未受信の部分を切り出してクライアント装置に送信してしまうため、中断されたデータ送信を正しく再開できないといった問題点がある。
また、一般的にデータ通信に係る費用は、通信データ量に応じてユーザーに課金されるものであり、上述したようにダウンロード対象のデータが更新されていた場合には、中断されたデータ送信を正しく再開できないにもかかわらず、ユーザーは、通信コスト(通信時間、料金)の負担を強いられるといった問題点もある。
【0007】
本発明は、上述した問題点を鑑みてなされたものであり、サーバ装置からのデータ送信が中断された場合には、中断されたデータ送信を中断された時点から再開することを可能にするとともに、データ送信が中断された時から、再開されるまでの間に、データが更新された場合であっても、ユーザーに無駄な通信コストの負担を強いることのないデータ取得方法を提供することを目的とする。
【0008】
【課題を解決するための手段】
請求項1に係る発明は、中継装置が、クライアント装置から要求された第一のデータと該第一のデータに関連付けられた第二のデータとをサーバ装置から取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータを該クライアント装置に送信する送信過程と、前記クライアント装置が、前記中継装置からのデータ送信が中断された時点までに受信した前記第三のデータの既受信部分を記憶する記憶過程と、前記クライアント装置が前記既受信部分に基づいて前記第三のデータにおける前記データ送信が中断された位置を示す再開位置情報を算出し、該再開位置情報と前記既受信部分とに基づいて第一の再開判定情報を算出し、該再開位置情報と該第一の再開判定情報とを前記中継装置に送信して前記データ送信の再開を要求する要求過程と、前記中継装置が前記サーバ装置に格納されている前記第一及び第二のデータを取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータと前記再開位置情報とから第二の再開判定情報を算出し、該第二の再開判定情報と前記第一の再開判定情報とを比較し、両者が一致する場合にのみ、前記データ送信を再開可能と判定する判定過程と、前記中継装置が、前記判定過程にて前記データ送信を再開可能と判定された場合にのみ前記第三のデータのうち前記クライアント装置が受信していない未受信部分のみを前記クライアント装置に送信する未受信部分送信過程と、前記クライアント装置が、前記既受信部分と前記未受信部分とを結合して表示する表示過程とを有することを特徴とするデータ取得方法を提供する。
【0009】
請求項3に係る発明は、中継装置が、クライアント装置から要求された第一のデータと該第一のデータに関連付けられた第二のデータとをサーバ装置から取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータを該クライアント装置に送信する送信過程と、前記クライアント装置が、前記中継装置からのデータ送信が中断された時点までに受信した前記第三のデータの既受信部分を記憶する記憶過程と、前記クライアント装置が前記既受信部分を第一の再開判定情報として前記中継装置に送信して前記データ送信の再開を要求する要求過程と、前記中継装置が前記サーバ装置に格納されている前記第一及び第二のデータを取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータの先頭から前記既受信部分の長さで特定される部分を第二の再開判定情報として取得し、該第二の再開判定情報と前記第一の再開判定情報とを比較し、両者が一致する場合にのみ、前記データ送信を再開可能と判定する判定過程と、前記中継装置が、前記判定過程にて前記データ送信を再開可能と判定された場合にのみ前記第三のデータのうち前記クライアント装置が受信していない未受信部分のみを前記クライアント装置に送信する未受信部分送信過程と、前記クライアント装置が、前記既受信部分と前記未受信部分とを結合して表示する表示過程とを有することを特徴とするデータ取得方法を提供する。
【0010】
請求項4に係る発明は、クライアント装置から要求された第一のデータと該第一のデータに関連付けられた第二のデータとをサーバ装置から取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータを該クライアント装置に送信する送信手段と、前記送信手段からのデータ送信が中断された時点までに受信した前記第三のデータの既受信部分を記憶している前記クライアント装置が前記既受信部分に基づいて前記第三のデータにおける前記データ送信が中断された位置を示す再開位置情報を算出し、該再開位置情報と前記既受信部分とに基づいて第一の再開判定情報を算出し、該再開位置情報と該第一の再開判定情報とを送信して前記データ送信の再開を要求した場合に、前記サーバ装置に格納されている前記第一及び第二のデータを取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータと前記再開位置情報とから第二の再開判定情報を算出し、該第二の再開判定情報と前記第一の再開判定情報とを比較し、両者が一致する場合にのみ、前記データ送信を再開可能と判定する判定手段と、前記判定手段にて前記データ送信を再開可能と判定された場合にのみ前記第三のデータのうち前記クライアント装置が受信していない未受信部分のみを前記クライアント装置に送信する未受信部分送信手段とを有することを特徴とする中継装置を提供する。
【0011】
請求項5に係る発明は、クライアント装置から要求された第一のデータと該第一のデータに関連付けられた第二のデータとをサーバ装置から取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータを該クライアント装置に送信する送信手段と、前記送信手段からのデータ送信が中断された時点までに受信した前記第三のデータの既受信部分を記憶している前記クライアント装置が前記既受信部分を第一の再開判定情報として送信して前記データ送信の再開を要求した場合に、前記サーバ装置に格納されている前記第一及び第二のデータを取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータの先頭から前記既受信部分の長さで特定される部分を第二の再開判定情報として取得し、該第二の再開判定情報と前記第一の再開判定情報とを比較し、両者が一致する場合にのみ、前記データ送信を再開可能と判定する判定手段と、前記判定手段にて前記データ送信を再開可能と判定された場合にのみ前記第三のデータのうち前記クライアント装置が受信していない未受信部分のみを前記クライアント装置に送信する未受信部分送信手段とを有することを特徴とする中継装置を提供する。
【0012】
請求項6に係る発明は、コンピュータ装置を、クライアント装置から要求された第一のデータと該第一のデータに関連付けられた第二のデータとをサーバ装置から取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータを該クライアント装置に送信する送信手段と、前記送信手段からのデータ送信が中断された時点までに受信した前記第三のデータの既受信部分を記憶している前記クライアント装置が前記既受信部分に基づいて前記第三のデータにおける前記データ送信が中断された位置を示す再開位置情報を算出し、該再開位置情報と前記既受信部分とに基づいて第一の再開判定情報を算出し、該再開位置情報と該第一の再開判定情報とを送信して前記データ送信の再開を要求した場合に、前記サーバ装置に格納されている前記第一及び第二のデータを取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータと前記再開位置情報とから第二の再開判定情報を算出し、該第二の再開判定情報と前記第一の再開判定情報とを比較し、両者が一致する場合にのみ、前記データ送信を再開可能と判定する判定手段と、前記判定手段にて前記データ送信を再開可能と判定された場合にのみ前記第三のデータのうち前記クライアント装置が受信していない未受信部分のみを前記クライアント装置に送信する未受信部分送信手段として機能させるためのプログラムを提供する。
【0013】
請求項7に係る発明は、コンピュータ装置を、クライアント装置から要求された第一のデータと該第一のデータに関連付けられた第二のデータとをサーバ装置から取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータを該クライアント装置に送信する送信手段と、前記送信手段からのデータ送信が中断された時点までに受信した前記第三のデータの既受信部分を記憶している前記クライアント装置が前記既受信部分を第一の再開判定情報として送信して前記データ送信の再開を要求した場合に、前記サーバ装置に格納されている前記第一及び第二のデータを取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータの先頭から前記既受信部分の長さで特定される部分を第二の再開判定情報として取得し、該第二の再開判定情報と前記第一の再開判定情報とを比較し、両者が一致する場合にのみ、前記データ送信を再開可能と判定する判定手段と、前記判定手段にて前記データ送信を再開可能と判定された場合にのみ前記第三のデータのうち前記クライアント装置が受信していない未受信部分のみを前記クライアント装置に送信する未受信部分送信手段として機能させるためのプログラムを提供する。
【0014】
このようなデータ取得方法、中継装置、プログラムおよび記録媒体を用いると、中継装置は、クライアント装置から再開を要求されたデータ送信が再開可能である場合にのみデータ送信を再開する。
【0015】
【発明の実施の形態】
以下、図面を参照して本発明に係る実施形態について説明する。ただし、本発明の技術的範囲は係る実施形態に限定されるものではなく、係る実施形態に周知技術を適用して得られる、特許請求の範囲に記載された範囲内の任意の態様を含む。
【0016】
(1)全体構成
図1は、本発明に係るデータ取得方法を実施する通信システムの概要を示す図である。この図に示す通信システムでは、データ端末装置(以下、「DTE」とする)11は、HTTP(Hyper Text Transfer Protocol)のGETメソッドまたはPOSTメソッドを用いて軽量代理サーバ(以下、「LWP」とする)15を介してインターネット14に接続されたWWWサーバ16からコンテンツをダウンロードしている。
ここで、DTE11とLWP15との間で、GETメソッドを用いたコンテンツのダウンロードが中断されると、DTE11は当該ダウンロードが中断された時点までに受信した部分(以下、「既受信部分」とする)を記憶し、その後、ユーザーにより中断されたダウンロードの再開が指示されると、LWP15に中断されたダウンロードの再開を要求する。すなわち、DTE11は、中断により受信しなかった部分(以下、「未受信部分」とする)のみの送信をLWP15に要求する。
一方、DTE11からダウンロードの再開を要求されたLWP15は、既受信部分とWWWサーバ16に記憶されているコンテンツの既受信部分に対応する部分とが一致するか否かを判定し、一致した場合にのみ未受信部分をDTE11へ送信する。この未受信部分をDTE11が受信すると、DTE11は自装置に記憶している既受信部分とLWP15から送信された未受信部分とを結合してコンテンツを取得する。
以上に説明したように、図1に示す通信システムは、中断されたコンテンツのダウンロードの再開を可能とすると同時に、既受信部分とコンテンツの既受信部分に対応する部分とが一致しない場合には、未受信部分の送信を行わずに、LWP15からDTE11への無用なデータのダウンロードを抑止している。
【0017】
なお、図1に示す通信システムは、POSTメソッドによるコンテンツのダウンロードが中断された場合には、当該中断されたダウンロードの再開を行わない。これは、POSTメソッドを用いてダウンロードされるコンテンツは、ダウンロードが要求される度毎にWWWサーバでCGI(Common Gateway Interface)等を用いて動的に生成されるものであり、DTE11が、最初のダウンロードを要求した時点と再開を要求した時点とで、必ずしも同一のコンテンツが生成されないからである。
また、この図においては、図面および説明が煩雑になることを防ぐために、1つのWWWサーバと1つのDTEとが例示されているが、実際には多数のWWWサーバとDTEとが存在する。またDTEは携帯電話機能を有し、移動通信網経由で音声通話を行うことが可能であるが、音声通話に係る部分は本発明とは直接関係がないため、本実施形態においては、音声通話に係る説明および図示を省略する。
【0018】
(2)DTE11−LWP15間およびLWP15−WWWサーバ16間の通信シーケンス
図2は、図1に示す通信システムで、DTE11がLWP15を介してWWWサーバ16からテキストデータと画像データとから構成されているコンテンツをダウンロードする場合に、DTE11とLWP15とWWWサーバ16のとの間で送受信される通信シーケンスを示す図である。
【0019】
まず、DTE11は、テキストデータのダウンロードを要求するリクエスト21をLWP15に送信する。このリクエスト21は移動パケット通信網12、ゲートウェイサーバ13、インターネット14を順に介してLWP15へ到達する。
DTE11から送信されたリクエスト21を受信したLWP15は、当該テキストデータのダウンロードを要求するリクエスト22をインターネット14を介してWWWサーバ16に送信する。
LWP15から送信されたリクエスト22を受信したWWWサーバ16は、リクエスト22に指定されているテキストデータを読み出し、当該テキストデータを含んだレスポンス23をインターネット14を介してLWP15に返信する。このレスポンス23をLWP15が受信すると、詳細は後述するコンテンツ代理取得処理で説明するが、LWP15は当該テキストデータに関連付けられている画像データのダウンロードを要求するリクエスト24をWWWサーバ16へ送信する。
LWP15から送信されたリクエスト24を受信したWWWサーバ16は、リクエスト24に指定されている画像データを読み出し、当該画像データを含んだレスポンス25をインターネット14を介してLWP15に返信する。
このレスポンス25をLWP15が受信すると、詳細は後述する関連データ結合処理で説明するが、LWP15は先に取得したテキストデータと画像データとから後述するダウンロードデータを生成する。
次に、LWP15は当該ダウンロードデータを含むレスポンス26をDTE11から送信されたリクエスト21に対応したレスポンスとしてDTE11へ送信する。LWP15から送信されたレスポンス26はインターネット14、ゲートウェイサーバ13、移動パケット通信網12を順に介してDTE11により受信される。
なお、図2では、図面が煩雑になることを防ぐために、各通信メッセージ(各リクエストおよび各レスポンス)は、1つの通信メッセージであるかのように示されているが、実際には、通信対象のデータを所定の大きさ(バイト数)に分割した複数のパケットの送受信が行われている。以下の説明では、本発明の説明に直接関連する場合を除き、各通信メッセージを1つのパケットの送受信であるとして説明する。
【0020】
(3)LWP15で生成されるダウンロードデータの概略
上述したように、LWP15は、DTE11からダウンロードを要求されたコンテンツが、テキストデータと当該テキストデータに対応付けられた画像データとから構成されている場合には、これらテキストデータと画像データとから1つのダウンロードデータを生成し、当該ダウンロードデータをDTE11へ送信している。以下では、DTE11から要求されたコンテンツがテキストデータ(aaaa.html)と画像データ(bbbb.gif)とから構成されている場合に、LWP15が生成するダウンロードデータについて説明する。
図3は、テキストデータ(aaaa.html)の要部を示す図である。当該テキストデータはHTMLで記述されており、図3に示すように、IMGタグを有している。ここで、IMGタグとは、当該テキストデータに関連付けられた画像データに関する情報を記述するタグである。具体的には、IMGタグのSRC属性には当該テキストデータに関連付けられている画像データのURI(Uniform Resource Identifier)が記述されており、WIDTH属性およびHIGHT属性には表示する画像の大きさが記述されている。当該IMGタグには、図4に示される画像イメージを記憶した画像データ(bbbb.gif)のURIが、SRC属性に記述されている。
図5は、上述のテキストデータ(aaaa.html)と画像データ(bbbb.gif)とから生成されるダウンロードデータの概要を示す図である。この図に示されるようにダウンロードデータは、テキスト領域51と画像領域52との二つの領域を有している。テキスト領域51には、テキストデータ(aaaa.html)のIMGタグのSRC属性に指定されているURIを所定の文字列(例えば、IMGDATA01)で置き換えたものが格納されている。一方、画像領域52には、テキストデータのIMGタグのSRC属性に指定されていた画像データ(bbbb.gif)を所定のアルゴリズム(例えば、Base64)でエンコードしてテキスト化したデータ(以下、「画像テキスト」とする)が格納されている。ここで、当該画像テキストには、当該画像テキストの開始位置を示すタグである<IMGDATA01>と、当該画像テキストの終了位置を示すタグ</IMGDATA01>とが付与されている。
なお、コンテンツがテキストデータのみから構成されている場合には、LWP15は、画像領域52を有しないダウンロードデータを生成する。また、テキストデータに複数個の画像データが関連付けれれている場合には、LWP15は、図6に示すように、テキストデータに関連付けられている画像データの個数分だけ、画像領域52に複数個の画像テキストを有するダウンロードデータを生成する。
【0021】
(4)WWWサーバ16の構成および機能
WWWサーバ16は、インターネット14を用いて実現されているWWWを構成する一般的なコンピュータ装置であり、インターネット14を介してHTTPに従ったリクエストを受信すると、これに対応したレスポンスをインターネット14へ送出するHTTPサーバ機能を備えている。例えば、WWWサーバは、HTMLで記述されたテキストデータと画像データ等のデータファイルとを記憶しており、受信したリクエストがGETメソッドで指定されたURIに対応するファイルを読み出し、当該ファイルを含んだレスポンスを返信する。
【0022】
(5)DTE11の構成および機能
(5−1)DTE11の構成
図7は、DTE11のハードウェア構成を示すブロック図であり、この図に示されるようにDTE11は、CPU71と、無線通信部72と、操作部73と、表示部74と、揮発性メモリ75と、不揮発性メモリ76と、各要素間のデータ授受を仲介するバス77とを有している。
【0023】
無線通信部72は、例えばアンテナ等を含む無線通信インターフェースであり、CPU71から供給された情報を移動パケット通信網12へ送出するとともに、移動パケット通信網12を介して受信した情報をCPU71へ渡す。操作部73は、例えばユーザーに操作される操作子(テンキーやカーソル等)を備え、操作子の操作内容を示す情報をCPU71へ渡す。表示部74は、例えば液晶ディスプレイであり、CPU71から供給される画像情報に応じた画像を表示する。
【0024】
揮発性メモリ75は、RAM(Random Access Memory)であり、不揮発性メモリ76は、例えばデータを書き換え不能に記憶するROM(Read Only Memory)761と、データを書き換え可能に記憶するEEPROM(Electrically Erasable Programmable Read Only Memory)762とを有する。ROM761は、オペレーティングシステム(以下「OS」という)やブラウザ等のソフトウェアを記憶している。
【0025】
(5−2)DTE11の機能
次に、CPU71がROM761に記憶されているソフトウェアを実行することによりCPU71に付与される機能について説明する。ただし、ブラウザを搭載している一般的な携帯電話の有する機能と略同一の機能については説明を省略し、ここでは、本実施形態の動作に直接的に関係する機能についてのみ説明する。
【0026】
CPU71は、DTE11の電源(図示略)が投入されると、ROM761からOSを読み出して実行する。OSを実行した状態のCPU71は、揮発性メモリ75をワークエリアとして使用すること、DTE11の各部を制御すること、およびユーザーによる操作部73の操作内容に応じて、ブラウザ等のソフトウェアをROM761から読み出して実行することができる。
なお、DTE11に搭載されているブラウザには、URIを指定してコンテンツ全体のダウンロードを要求するためのユーザーインターフェースが設けられている他に、URIを指定して未受信部分のみのダウンロードを要求するためのユーザーインターフェースも設けられている。
【0027】
(5−2−1)プロファイル情報設定機能
プロファイル情報設定機能は、CPU71が、ユーザーにより入力されたLWPのサーバ名またはIPアドレスや、中断されたダウンロードの再開を許可するか否かを示す情報等のDTE11とLWP15との間の通信に関する情報をプロファイル情報としてEEPROM762に記憶させる機能である。
【0028】
図8は、プロファイル情報設定プログラムを実行中のCPU71により実行されるプロファイル情報設定処理の流れを示すフローチャートである。この図に示されるように、ユーザーがDTE11の操作部73を用いて、プロファイル情報設定処理の開始を指示すると、CPU71は、EEPROM762に記憶されているプロファイル情報を読み出して揮発性メモリ75に一時的に記憶させるとともに、表示部74を制御し、揮発性メモリ75に一時的に記憶させたプロファイル情報にもとづいて図9に示すプロファイル情報設定画面を表示させる(ステップSA1)。
【0029】
図9はプロファイル情報設定画面の一例を示す図であり、入力領域91は、DTE11と通信を行うLWP15のIPアドレスが入力される入力領域であり、リストボックス92は、表示部74に表示する画像の表示階調が入力される入力領域であり、リストボックス93には、中断されたダウンロードの再開を許可するか否かを示す情報が入力される入力領域である。
ユーザーにより何らかの入力操作が行われると、CPU71は操作部73を介してユーザーの操作内容を受け取り(ステップSA2)、ユーザーの操作内容の判定を行う(ステップSA3)。すなわち、ユーザーの操作内容が設定ボタン94の押下(以下「設定操作」という)であるか、キャンセルボタン95の押下(以下「キャンセル操作」という)であるか、設定操作でもなく、キャンセル操作でもない操作(以下「その他操作」という)であるかを判定する。
【0030】
ユーザーの操作内容が、その他操作であった場合には、CPU71は、ユーザーの操作内容で揮発性メモリ75に記憶してあるプロファイル情報を更新して、当該更新後のプロファイル情報にもとづいてプロファイル情報設定画面を表示部74に再表示(ステップSA1)させ、再度ユーザーからの入力操作を待ち受ける。
ユーザーの操作内容が、設定操作であった場合には、CPU71は、揮発性メモリ75に記憶してあるプロファイル情報で、EEPROM762に記憶されているプロファイル情報を上書き更新(ステップSA4)して、プロファイル情報設定処理を終了する。ユーザーの操作内容が、キャンセル操作であった場合には、CPU71は、上記の上書き更新を行わずにプロファイル情報設定処理を終了する。
【0031】
(5−2−2)コンテンツ取得機能および解釈・表示機能
コンテンツ取得機能は、DTE11がLWP15を介してWWWサーバ16からコンテンツをダウンロードする機能であり、ブラウザを実行した状態のCPU71が備えるHTTPクライアント機能を用いて実現される。また、解釈・表示機能はダウンロードされたコンテンツを解釈・表示する機能であり、ブラウザを実行したCPU71が備えるHTML解釈機能とユーザーインターフェース提供機能とを用いて実現される。
【0032】
図10は、ブラウザを実行中のCPU71により実行されるコンテンツ取得処理の流れを示すフローチャートである。この図に示されように、ユーザーがDTE11の操作部73を用いてコンテンツ取得処理の開始を指示すると、CPU71は、まず、ユーザーの操作内容が、コンテンツ全体をダウンロードを要求する操作(以下、「全体要求操作」という)であるか、中断されたダウンロードを再開し、コンテンツの未受信部分のみのダウンロードを要求する操作(以下、「未受信部分要求操作」という)であるかの判定を行う(ステップSB1)。
全体要求操作であった場合には、CPU71は、後述する全体要求処理を行い(ステップSB2)、当該コンテンツ取得処理を終了する。
未受信部分要求操作であった場合には、CPU71は、まず、EEPROM762からプロファイル情報を読み出し、中断されたダウンロードの再開が許可されているか否かの判定を行う(ステップSB3)。
【0033】
許可されている場合には、CPU71は、後述する未受信部分要求処理を行い(ステップSB4)、当該コンテンツ取得処理を終了する。
許可されていない場合には、CPU71は、ユーザーにプロファイル情報の設定を促すテキストデータ(例えば、“プロファイル情報を再設定して下さい”)を表示部74に表示させて(ステップSB5)、当該コンテンツ取得処理を終了する。
【0034】
(5−2−3)全体要求処理
図11は、ブラウザを実行中のCPU71により実行される全体要求処理の流れを示すフローチャートである。まず、CPU71は、無線通信部72を制御してCPU71とLWP15との間にTCPコネクション(以下、「クライアントTCPコネクション」とする)を確立する(ステップSC1)。次に、CPU71はGETメソッドを用いたリクエスト(例えば、“GET //?http://www.****.co.jp/a
aa.html/HTTP/1.0”)を生成し、当該リクエストを上記クライアントTCPコネクションを介してLWP15に送信する(ステップSC2)。
【0035】
以後、CPU71は上記リクエストに対するレスポンスの受信を完了したか否かの判定を行う(ステップSC3)。
完了していない場合にのみ、CPU71は、所定の時間が経過した否かの判定を行い(ステップSC4)、経過していない場合には、ステップSC3以降の処理を繰り返し、経過した場合には、上記リクエストに記述されていたURIとプロファイル情報と既受信部分とを対応付けてEEPROM762に記憶する(ステップSC5)。
【0036】
次に、CPU71は、上記クライアントTCPコネクションを切断し(ステップSC6)、LWP15から送信されたダウンロードデータに対して後述するコンテンツ表示処理を行い(ステップSC7)、当該全体要求処理を終了する。なお、通信障害などにより、クライアントTCPコネクションが既に切断されている場合には、CPU71は、ステップSC6の処理を行わない。
【0037】
(5−2−4)未受信部分要求処理
図12は、ブラウザを実行中のCPU71により実行される未受信部分要求処理の流れを示すフローチャートである。まず、CPU71は、EEPROM762からユーザーにより未受信部分要求操作が行われたURIに対応する既受信部分を取得し、当該既受信部分に対して後述する再開位置情報算出処理を行い、再開位置情報を取得する(ステップSD1)。
【0038】
次に、CPU71は、EEPROM762に記憶されている既受信部分の先頭から再開位置情報で指定される部分に対して所定のハッシュ値生成アルゴリズム(例えば、Adler−32)を用いてハッシュ値を算出し、当該ハッシュ値を再開判定情報として取得する(ステップSD2)。ここで、ハッシュ値生成アルゴリズムとは、入力データから固定長の疑似乱数を生成するアルゴリズムであり、当該アルゴリズムにより生成された固定長の擬似乱数を「ハッシュ値」と呼ぶ。一般に、ハッシュ値生成アルゴリズムには、不可逆な一方向演算を含むため、ハッシュ値から入力データを再現することはできず、また、同じハッシュ値を持つ異なるデータを作成することが極めて困難である。
【0039】
次に、CPU71は、上述した全体要求処理のステップSC1と同一の処理を行い、CPU71とLWP15との間にクライアントTCPコネクションを確立し(ステップSD3)、HTTPのGETメソッドを用いたリクエスト(例えば、“GET /offset-cheksum//?http:www.****.co.jp/aaaa.html/HTTP1.0”)を生成して、当該リクエストを上記クライアントTCPコネクションを介してLWP15に送信する(ステップSD4)。なお、上記のリクエスト例で、offsetはステップSD1で取得した再開位置情報を16進数文字列に変換した文字列データであり、checksumはステップSD2で取得した再開判定情報を16進数文字列に変換した文字列データである。
【0040】
以後、CPU71は上記リクエストに対するレスポンスの受信を完了したか否かの判定を行い(ステップSD5)、完了していない場合にのみ、CPU71は、所定の時間が経過した否かの判定を行い(ステップSD6)、経過していない場合には、ステップSD5以降の処理を繰り返し、経過した場合には、上記リクエストに記述されていたURIとプロファイル情報と既受信部分とを対応付けてEEPROM762に記憶する(ステップSD7)。
【0041】
次に、CPU71は、上記クライアントTCPコネクションを切断し(ステップSD8)、LWP15から未受信部分が送信されたか否かを判定する(ステップSD9)。なお、通信障害などにより、クライアントTCPコネクションが既に切断されている場合には、CPU71は、ステップSD8の処理を行わない。未受信部分が送信された場合には、CPU71はEEPROM762に記憶されている既受信部分とLWP15から受信した未受信部分とを結合してダウンロードデータを取得し(ステップSD10)、当該ダウンロードデータに対して後述するコンテンツ表示処理を行って(ステップSD11)、当該未受信部分要求処理を終了する。
未受信部分が送信されなかった場合には、CPU71は、未受信部分が送信されなかったことを示すテキストデータ(例えば、“コンテンツは更新されています。”)を表示部74に表示させて(ステップSD12)、当該未受信部分要求処理を終了する。
【0042】
(5−2−5)再開位置情報算出処理
図13は、コンテンツ取得処理を実行中のCPU71により実行される再開位置情報算出処理の流れを示すフローチャートである。まず、CPU71は、EEPROM762からユーザーにより入力されたURIに対応する既受信部分を読み出し、当該既受信部分が画像テキストを有するか否かの判定を行う。すなわち、CPU71は、既受信部分が所定のタグ(本実施形態の場合には、上述した<IMGDATA01>タグ)を有する場合には、画像テキストを有すると判定し、当該タグを有しない場合には、画像テキストを有しないと判定する(ステップSE1)。
【0043】
画像テキストを有しない場合には、CPU71は、当該既受信部分の大きさ(バイト数)を再開位置情報として、当該再開位置情報算出処理を終了する(ステップSE2)。
画像テキストを有する場合には、CPU71は、当該既受信部分に対応づけらえたプロファイル情報をEEPROM762から取得し、当該プロファイル情報に設定されている表示階調と、現在のプロファイル情報に設定されている表示階調とが異なるか否かを判定する(ステップSE3)。
【0044】
同一である場合には、CPU71は、当該既受信部分の大きさを再開位置情報とし(ステップSE4)、異なる場合には、当該既受信部分のテキスト部51の大きさ(バイト数)を再開位置情報として(ステップSE5)、当該再開位置算出処理を終了する。
【0045】
(5−2−6)コンテンツ表示処理
CPU71は、ダウンロードデータのテキスト領域51(図5参照)をHTML文法に従って解釈し、その記述に応じたレイアウトの画像データを生成し、表示部74に供給する。なお、完全にコンテンツを取得できなかった場合には、CPU71は、取得した部分までの解釈を行う。当該解釈においては、CPU71は階層的に記述された各種のタグに対応した処理を行う。CPU71が行う処理のうち、本実施形態の動作に直接関連する処理について以下に説明する。
【0046】
▲1▼IMGタグ処理
CPU71は、IMGタグのSRC属性に記述されている文字列(例えば、“IMGDATA01”)と同一の文字列を有するタグ(例えば、<IMGDATA01>)で特定される画像テキストを画像領域52から読み出し、当該画像テキストを所定のアルゴリズム(例えば、Base64等)を用いてデコードして画像データ再生し、表示部74を制御して当該画像データで表される画像をIMGタグに指定されているWIDTH属性およびHIGHT属性で指定されたサイズで表示させる。
【0047】
(6)LWP15の構成および機能
(6−1)LWP15の構成
図14は、LWP15のハードウェア構成を示すブロック図であり、この図に示されるようにLWP15は、CPU141と、通信インターフェース部142と、不揮発性メモリ143と、揮発性メモリ144と、記憶装置145と、補助記憶装置146と、これら各要素間のデータ授受を仲介するバス147とを有している。
【0048】
通信インターフェース部142は、例えばネットワークインターフェースであり、CPU141から供給された情報をインターネット14へ送出するとともに、インターネット14を介して受信した情報をCPU141へ渡す。不揮発性メモリ143は、例えばROM(Read Only Memory)であり、LWP15の電源が投入されたときに、記憶装置145に記憶されているOSを読み出して実行する機能を有するプログラムであるIL(Initial Loader)を記憶している。揮発性メモリ144は、例えばRAM(Random Access Memory)である。補助記憶装置146は、例えばCD−ROM等のコンピュータ装置が読み取り可能な記録媒体に記録されているデータを読み取る機能を有するものである。記憶装置145は、例えばハードディスクドライブであり、OSおよび後述するコンテンツ代理取得プログラム等のソフトウェア等を記憶している。
【0049】
(6−2)LWP15の機能
次に、CPU141が記憶装置145に記憶されたソフトウェアを実行することでLWP15に付与される機能について説明する。なお、DTE11とWWWサーバ16との通信を中継するためのHTTP処理機能については、一般的な代理サーバ装置の有する機能と略同一であるため説明を省略し、本実施形態に直接関係する機能についてのみ説明する。
【0050】
CPU141は、LWP15の電源(図示略)が投入されると、まず、不揮発性メモリ143からILを読み出して実行する。ILを実行した状態のCPU141は、記憶装置145からOSを読み出して実行する。OSを実行した状態のCPU141は、揮発性メモリ144をワークエリアとして使用すること、LWP15の各部を制御することができる。なお、OSを実行中のCPU141は複数のプログラムを並列に実行することができる。また、CPU141は、即座にコンテンツ代理取得を行うためのプログラムを起動し、DTE11からのリクエストを待ちうける。
【0051】
(6−2−1)コンテンツ代理取得機能
コンテンツ代理取得機能は、DTE11からのリクエストに応じてWWWサーバ16からコンテンツを取得して、DTE11からのリクエストに応じた加工を行った後に上記リクエストに対するレスポンスとしてDTE11へ転送する機能である。
【0052】
図15は、コンテンツ代理取得プログラムを実行中のCPU141により実行されるコンテンツ代理取得処理の流れを示すフローチャートである。この図に示されるように、CPU141は、DTE11からのコネクション確立要求に応じてクライアントTCPコネクションを確立する(ステップSF1)。そして当該TCPコネクションを介してDTE11からHTTPのGETメソッドを用いたリクエストを受信すると、CPU141は、当該GETメソッドのリクエストラインを解析し、当該リクエストラインに記述されているURIや再開位置情報や再開判定情報を取得する(ステップSF2)。
【0053】
次に、CPU141は、DTE11から受信したリクエストに記述されていたURIに対応するWWWサーバ16との間でTCPコネクション(以下、「サーバTCPコネクション」とする)を確立する(ステップSF3)。
【0054】
更にCPU141は、当該リクエストを加工(例えば、クライアントTCPコネクションを介してDTE11から受信したリクエストでは、当該リクエストの送信元はDTE11になっているが、当該リクエストの送信元をLWP15に書き換える等)し、加工後のリクエストを当該サーバTCPコネクション経由で送信する(ステップSF4)。
以後、CPU141は上記リクエストに対するレスポンスを待ち(ステップSF5)、当該レスポンスを受信すると、当該サーバTCPコネクションを切断する(ステップSF6)。なお、通信障害などにより、サーバTCPコネクションが既に切断されている場合には、CPU71は、ステップSF6の処理を行わない。
【0055】
次に、CPU141は、上記レスポンスに含まれるテキストデータに、後述する関連データ結合処理を行ってダウンロードデータを生成する(ステップSF7)。
次に、CPU141は、DTE11からコンテンツ全体の送信を要求されたのか、未受信部分のみの送信を要求されたのかを判定する(ステップSF8)。
コンテンツ全体の送信を要求された場合には、CPU141は、ステップSF7で生成したダウンロードデータを上記クライアントTCPコネクションを介して、DTE11からのリクエストに対応するレスポンスとして送信し(ステップSF9)、当該クライアントTCPコネクションを切断し(ステップSF14)、当該コンテンツ代理取得処理を終了する。
未受信部分のみの送信を要求された場合には、CPU141は、ステップSF7で生成したダウンロードデータに対して再開判定情報を算出する(ステップSF10)。具体的には、当該ダウンロードデータの先頭から、ステップSF2で取得した再開位置情報で指定される長さの部分に対して、DTE11で用いたハッシュ値生成アルゴリズムと同一のアルゴリズムを用いて再開判定情報を算出する。
【0056】
次に、CPU141は、ステップSF10で算出した再開判定情報と、ステップSF2で取得した再開判定情報とが一致するか否かの判定を行う(ステップSF11)。
一致する場合には、CPU141は、ステップSF7で生成したダウンロードデータの先頭からステップSF2で取得した再開位置情報で指定される長さの部分を切り捨てて未受信部分を生成し、当該未受信部分を上記クライアントTCPコネクションを介して、DTE11からのリクエストに対応するレスポンスとして送信し(ステップSF12)、当該クライアントTCPコネクションを切断し(ステップSF14)、当該コンテンツ代理取得処理を終了する。
一致しない場合には、CPU141は、再開不能であることを示す情報を含むレスポンスを、対応するクライアントTCPコネクションを介して、DTE11からのリクエストに対応するレスポンスとして送信した後に(ステップSF13)、当該クライアントTCPコネクションを切断し(ステップSF14)、当該コンテンツ代理取得処理を終了する。
【0057】
(6−2−2)関連データ結合処理
図16は、コンテンツ代理取得処理を実行中のCPU141により実行される関連データ結合処理の流れを示すフローチャートである。この図に示されるように、まず、CPU141は、コンテンツ代理取得処理のステップSF5でWWWサーバ16から取得したテキストデータを解析し、当該テキストデータがIMGタグを有するか否かを判定する(ステップSG1)。
【0058】
IMGタグを有しない場合には、CPU141は、当該テキストデータをダウンロードデータとして当該関連データ結合処理を終了し、IMGタグを有する場合には、CPU141は、当該IMGタグのSRC属性に指定されたURIに対応するWWWサーバとの間でサーバTCPコネクションを確立する(ステップSG2)。
【0059】
次に、CPU141は、当該URIで指定される画像データを取得するためのリクエストを生成し、当該サーバTCPコネクションを介して当該URIで指定されるWWWサーバに送信する(ステップSG3)。
以後、CPU141は当該リクエストに対するレスポンスの受信を待ち(ステップSG4)、当該レスポンスを受信すると、当該サーバTCPコネクションを切断する(ステップSG5)。なお、通信障害などにより、当該サーバTCPコネクションが既に切断されている場合には、CPU71は、ステップSG5の処理を行わない。
【0060】
次に、CPU141は、揮発性メモリ144に記憶されているプロファイル情報から表示階調を読み出し、ステップSF4で取得した画像データを当該表示階調になるように圧縮して、圧縮済みの画像データを生成し(ステップSG6)、当該圧縮済みの画像データを、所定のアルゴリズム(例えば、Base64)を用いてエンコードして画像テキストを生成し、当該画像テキストを揮発性メモリ144に一時的に記憶させる(ステップSG7)。
【0061】
次に、CPU141は、テキストデータのIMGタグのSRC属性で指定されているURIを所定の文字列(例えば、“IMGDATA01”)に置き換え、更に、ステップSG7で生成した画像テキストの開始位置と終了位置とを指定するために、所定のタグ(例えば、上述の<IMGDATA01>タグと</IMGDATA01>タグ)を付与して、IMGタグを書き換えたテキストデータの末尾へ追加書き込みする(ステップSG8)。
以降、CPU141は、テキストデータに記述されているIMGタグの個数分だけ、ステップSG2からステップSG8までの処理を行ってダウンロードデータを生成し、当該関連データ結合処理を終了する。
【0062】
(7)動作例
本実施形態の動作はプロファイル情報の内容、コンテンツの内容に応じて異なり、その動作パターンは多数となるが、以下では本発明の特徴を表す動作例について説明する。ただし、以下に説明する動作例の前提として、DTE11がWWWサーバ16から取得するコンテンツは、図3に示されるテキストデータ(aaaa.html)と図4に示される画像データ(bbbb.gif)とから構成されているものとし、当該コンテンツがDTE11へダウンロードされると、DTE11は、図17に示す画像を表示部74に表示する。
【0063】
(7―1)ダウンロードが中断された場合の動作例
DTE11がWWWサーバ16から上記のコンテンツをダウンロード中に、ダウンロードが中断された場合の動作について図18に示すシーケンス図を用いて説明する。ユーザーがDTE11の操作部73を操作してWWWサーバ16からコンテンツ全体を取得することを指示すると、DTE11は、上述したコンテンツ取得機能を用いて全体要求処理(図10:ステップSB2)を行う。まず、DTE11は、LWP15との間でクライアントTCPコネクションを確立し(図11:ステップSC1)、LWP15へテキストデータ(aaaa.html)を要求するリクエスト171を送信する(図11:ステップSC2)。
【0064】
上記リクエストを受信したLWP15は、上述したコンテンツ代理取得機能を用いてコンテンツ代理取得処理を行い、まず、WWWサーバ16からテキストデータ(aaaa.html)を取得する(図15:ステップSF5)。次に、LWP15は、上述した関連データ結合処理を行い(図15:ステップSF6)、当該テキストデータを解析する(図16:ステップSG1)。当該テキストデータはIMGタグを有するので、LWP15は、WWWサーバ16から画像データ(bbbb.gif)を取得し(図16:ステップSG4)、テキストデータ(aaaa.html)と画像データ(bbbb.gif)とから図5に示すダウンロードデータを生成し(図16:ステップSG8)、当該ダウンロードデータを含むレスポンス176をDTE11へ返信する(図15:ステップSF9)。なお、当該レスポンスは当該ダウンロードデータを所定のデータ量(バイト数)に分割した複数のパケットの送受信として行われる。
【0065】
ここで、コンテンツをダウンロード中のユーザーが通信サービスエリア外に移動したことにより、DTE11とLWP15とのクライアントTCPコネクションが切断されたとする。すると、DTE11は、所定の時間が経過するまでレスポンスの受信完了を待ち受けるが(図11:ステップSC3)、もはや、後続のパケットを受信することはない。以降、所定の時間が経過するとDTE11は、これまでに受信したパケットに含まれるデータを既受信部分としてURIやプロファイル情報と対応づけてEEPROM762に記憶し(図11:ステップSC5)、既受信部分を表示する(図11:ステップSC6)。例えば、DTE11が、図19に示すダウンロードデータの先頭から破線191までの部分を受信していた場合には、当該既受信部分には、文字列“IJKLMN”と画像テキストとに関する情報が含まれていないために、DTE11は、図20に示す画像を表示部74に表示させる。
【0066】
(7―2)コンテンツの続きを取得する場合の動作例
次に、上記に説明した中断が発生した後に、ユーザーによりダウンロードの再開が指示された場合の動作例について説明する。
(7―2―1)テキストデータの続きから取得する場合の動作例
DTE11のEEPROM762に、図19に示すダウンロードデータの先頭から破線191までの部分が、URIやダウンロードが中断された時点のプロファイル情報と対応づけられて既受信部分として記憶されているものとする。また、DTE11の表示部74には当該既受信部分に対応する画像として、図20に示される画像が表示されている。
【0067】
ユーザーがDTE11の操作部73を操作してWWWサーバ16から当該コンテンツの続きを取得することを指示すると、DTE11は、上述した未受信部分要求処理を用い、まず、EEPROM762に記憶されている既受信部分から再開位置情報(図12:ステップSD1)と再開判定情報とを算出する(図12:ステップSD2)。なお、EEPROM762に記憶されている既受信部分はIMGタグを有していないので、当該既受信部分の大きさ(バイト数)が再開位置情報に設定される。
以下、DTE11は、DTE11とLWP15との間でクライアントTCPコネクションを確立し、一方、LWP15は、上述したコンテンツ全体のダウンロードの場合と同一の処理を行う。すなわち、LWP15は、WWWサーバ16との間でサーバTCPコネクションの確立から、関連データ結合処理までの処理を行う。
【0068】
次に、LWP15は、関連データ結合処理で生成したデータの先頭から再開位置情報で指定される長さの部分に対して、再開判定情報を算出し、当該再開判定情報とDTE11から送信された再開判定情報とが一致するか否かの判定を行う(図15:ステップSF10)。ここで、これら再開判定情報が一致するか否かは、WWWサーバ16に記憶されているテキストデータ(aaaa.html)が、ダウンロードが中断された時点から、コンテンツの続きを取得が指示されるまでの間に、更新されたか否かに依存する。以下、更新されていた場合と更新されていなかった場合とに分けて動作例を説明する。
【0069】
▲1▼ 更新されていなかった場合
WWWサーバ16に記憶されているテキストデータ(aaaa.html)が更新されていなかった場合には、DTE11から送信された再開判定情報とLWP15で生成した再開判定情報とは一致する。従って、LWP15は図19に示すダウンロードデータの破線191から当該ダウンロードデータの末尾までの部分を未受信部分として、当該未受信部分を含むレスポンスをDTE11に返信する(図15:ステップSF12)。
DTE11は、当該レスポンスを受信すると、上述したコンテンツ表示処理を行い、EEPROM762に記憶されている既受信部分(図19に示すダウンロードデータの先頭から破線191までの部分)と、当該レスポンスに含まれる未受信部分(図19に示すダウンロードデータの破線191から当該データの末尾までの部分)とを結合して(図12:ステップSD10)、図19に示すダウンロードデータを取得し、当該データを解釈して図17に示す画像を表示部74に表示する。
【0070】
▲2▼ 更新されていた場合
WWWサーバ16に記憶されているテキストデータ(aaaa.html)が更新されていた場合には、DTE11から送信された再開判定情報とLWP15で生成した再開判定情報とは一致しない。従って、LWP15は再開不能であることを示す情報を含むレスポンスを、DTE11に返信する(図15:ステップSF13)。 DTE11は、当該レスポンスを受信すると、未受信部分が送信されなかったことを示すテキストデータ(例えば、“コンテンツは更新されています。”)を表示部74に表示させる。
【0071】
(7―2―2)画像データの続きから取得する場合の動作例
次に、DTE11のEEPROM762に、図19に示すダウンロードデータの先頭から破線193までの部分が既受信部分として、プロファイル情報と対応づけられて記憶されているものとする。当該既受信部分には、テキストデータの全部と画像テキストの一部とが含まれているために、DTE11は、図21に示す画像を表示部74に表示させている。
なお、以下に説明する動作例では、WWWサーバ16に記憶されているコンテンツを構成するテキストデータ(aaaa.html)と画像データ(bbbb.gif)とは、いずれもダウンロードが中断後に、更新されていないものとする。
【0072】
ユーザーがDTE11の操作部73を操作してWWWサーバ16からコンテンツの続きを取得することを指示すると、DTE11は、上述したコンテンツ取得処理を行い、まず、EEPROM762に記憶されている既受信部分から再開位置情報(図12:ステップSD1)と再開判定情報(図12:ステップSD2)とを算出する。この時、EEPROM762に記憶されている既受信部分はIMGタグを有するので、DTE11は、ダウンロードが中断された時の表示階調と、現在プロファイル情報に設定されている表示階調とが異なるか否かを判定する(図13:ステップSE3)。
【0073】
▲1▼ 表示階調が同一である場合の動作例
ダウンロードが中断された時の表示階調と現在プロファイル情報に設定されている表示階調とが同一である場合には、EEPROM762に記憶されている既受信部分の大きさ(バイト数)を再開位置情報として、再開判定情報を算出する(図13:ステップSE4)。
以下、DTE11は、DTE11とLWP15との間でクライアントTCPコネクションを確立し、一方、LWP15は、上述したコンテンツ全体のダウンロードの場合と同一の処理を行う。すなわち、LWP15は、WWWサーバ16との間でサーバTCPコネクションの確立から、関連データ結合処理までの処理を行い、LWP15は図19に示すダウンロードデータの破線193から当該データの末尾までの部分を未受信部分として、当該未受信部分を含むレスポンスをDTE11に返信する。
DTE11は、当該レスポンスを受信すると、上述したコンテンツ表示処理を行い、EEPROM762に記憶されている既受信部分(図19に示すダウンロードデータの先頭から破線193までの部分)と、当該レスポンスに含まれる未受信部分(図19に示すダウンロードデータの破線193から当該データの末尾までの部分)とを結合して、図19に示すダウンロードデータを取得し、当該ダウンロードデータを解釈して図17に示す画像を表示部74に表示する。
【0074】
▲2▼ 表示階調が異なる場合の動作例
ダウンロードが中断された時の表示階調と、現在プロファイル情報に設定されている表示階調とが異なる場合には、EEPROM762に記憶されている既受信部分の先頭から破線192で示される部分の大きさを再開位置情報として(図13:ステップSE5)、当該部分に対して再開判定情報を算出する。
【0075】
以下、DTE11は、DTE11とLWP15との間でクライアントTCPコネクションを確立し、一方、LWP15は、上述したコンテンツ全体のダウンロードの場合と同一の処理を行う。すなわち、WWWサーバ16との間でサーバTCPコネクションの確立から、関連データ結合処理までの処理を行い、LWP15は図19に示すダウンロードデータの破線192から当該データの末尾までの部分を未受信部分として、当該未受信部分を含むレスポンスをDTE11に返信する。
【0076】
DTE11は、当該レスポンスを受信すると、上述したコンテンツ表示処理を行い、EEPROM762に記憶されている既受信部分(図19に示すダウンロードデータの先頭から破線193までの部分)と、当該レスポンスに含まれる未受信部分(図19に示すダウンロードデータの破線192から当該データの末尾までの部分)とを結合して図19に示すダウンロードデータを取得する。なお、重複する部分(図19に示すダウンロードデータの破線192から破線193までの部分)は、当該レスポンスに含まれる未受信部分で上書きされる。以下DTE11は、当該データを解釈して図17に示す画像を表示部74に表示する。
【0077】
(8)実施形態効果
本実施形態によれば、WWWサーバ16からDTE11へのコンテンツのダウンロードが中断された場合には、DTE11が既受信部分を記憶するために、中断された時点からダウンロードを再開して、未受信部分のみ取得し、DTE11に記憶されている既受信部分とLWP15から取得した未受信部分とを結合してコンテンツを取得することが可能となり、コンテンツ全体を再度取得する場合に比べて、短時間にコンテンツを取得できるといった効果を奏する。
【0078】
また、本実施形態によれば、LWP15が、DTE11から送信された再開判定情報と、LWP15で算出した再開判定情報とが一致した場合にのみ未受信部分を送信するために、LWP15からDTE11への結合不能なデータの送信が抑止され、ユーザーの負担する通信コストが削減されるといった効果を奏する。
【0079】
また、本実施形態によれば、コンテンツが複数個のデータから構成されている場合であっても、これら複数個のデータをLWP15で1つのダウンロードデータに結合してDTE11にダウンロードするために、LWP15からDTE11へのダウンロードが中断され、その後、DTE11からダウンロードの再開を要求された時に、当該ダウンロードデータが更新されたか否かを再開判定情報を用いて1回だけ比較すれば、中断されたダウンロードの再開が可能であるか否かを判定できるといった効果を奏する。
【0080】
また、本実施形態によれば、再開判定情報としてAdler−32アルゴリズムにより算出された固定長のハッシュ値を用いるために、DTE11に記憶されている既受信部分全体を用いる場合に比較して、通信データ量を削減できるといった効果を奏する。また、ハッシュ値生成アルゴリズムとしてAdler−32を使用するために、他のハッシュ値生成アルゴリズム(例えば、CRC−32等)に比較して、高速にハッシュ値を算出できるといった効果を奏する。
【0081】
(9)変形例
[変形例1]
上述した実施形態では、ブラウザ機能付き携帯電話をDTEとして用いる場合の実施例について説明したが、DTEはブラウザ機能付き携帯電話に限定されるものではなくブラウザ機能付きPDA(Personal Digital Assistance)やブラウザ機能付きPC(Personal Computer)でも良い、要はブラウザ機能を搭載しインターネットに接続可能な端末装置であれば良い。
【0082】
[変形例2]
上述した実施形態では、LWP15がコンテンツ代理取得処理で生成したダウンロードデータを記憶装置145に記憶せず、DTE11からコンテンツのダウンロードを要求される度にダウンロードデータを生成する場合の実施例について説明したが、LWP15にバス147を介してCPU141に現在日時を供給する時計部148を更に設け、CPU141が、ダウンロードデータを生成した場合には、当該ダウンロードデータの作成日時を時計部148から取得し、当該作成日時と当該ダウンロードデータとを対応付けて記憶装置145に記憶させても良い。
【0083】
この様な構成および機能を有するLWP15は、DTE11からコンテンツのダウンロード要求を受信した場合に、図22のフローチャートに示されるコンテンツ代理取得処理を行う。なお、図22に示すフローチャートでは、TCPコネクションの確立・切断と、レスポンス受信待とは省略されており、当該処理の要部のみが示されている。
CPU141は、DTE11からHTTPのGETメソッドを用いたリクエストを受信すると、CPU141は、当該GETメソッドのリクエストラインを解析し、当該リクエストラインに記述されているURIや再開位置情報や再開判定情報を取得する(ステップSH1)。
【0084】
次に、CPU141は、DTE11からダウンロードを要求されたダウンロードデータを記憶装置145に記憶しているか否かの判定を行う(ステップSH2)。
記憶している場合には、CPU141は、記憶装置145に記憶しているダウンロードデータが最新であるか否かの判定を行う(ステップSH11)。具体的には、当該ダウンロードデータの作成日時と、当該ダウンロードデータを構成するテキストデータおよび画像データの作成日時とを比較し、当該ダウンロードデータの作成日時が最新である場合にのみ当該ダウンロードデータは最新であると判定する(ステップSH12)。最新でない場合には、CPU141は、後述するステップSH3以降の処理を行い、最新である場合には、CPU141は、記憶装置145に記憶されているダウンロードデータを用いて後述するステップSH5以降の処理を行う。
記憶していない場合には、CPU141は、WWWサーバ16からテキストデータを取得し(ステップSH3)、WWWサーバ16から受信したテキストデータに対して関連データ結合処理を行ってダウンロードデータを生成する(ステップSH4)。
【0085】
次に、CPU141は、DTE11からコンテンツ全体の送信を要求されたのか、未受信部分のみの送信を要求されたのかを判定する(ステップSH5)。
コンテンツ全体の送信を要求された場合には、CPU141は、ダウンロードデータをDTE11送信して(ステップSH6)、当該当該処理を終了する。
未受信部分のみの送信を要求された場合には、CPU141は、ダウンロードデータに対して再開判定情報を算出し(ステップSH7)、ステップSH7で算出した再開判定情報と、ステップSH1で取得した再開判定情報とが一致するか否かの判定を行う(ステップSH8)。
【0086】
一致する場合には、CPU141は、ダウンロードデータから未受信部分を生成し、当該未受信部分をDTE11へ送信して(ステップSH9)、当該処理を終了する。
一致しない場合には、CPU141は、再開不能であることを示す情報をDTE11へ送信(ステップSH10)して、当該処理を終了する。
【0087】
[変形例3]
上述した実施形態では、LWP15が、DTE11からダウンロードを要求されたデータと当該データに関連付けられたデータとから1つのダウンロードデータを生成して、当該ダウンロードデータをDTE11へダウンロードする場合の実施例について説明したが、テキストデータのダウンロードと、当該テキストデータに関連付けられたデータ(他のテキストデータ、画像、音声、プログラム等)のダウンロードとを個別に行っても良い。
具体的には、DTE11は、まず、LWP15を介してWWWサーバ16からテキストデータをダウンロードし、当該テキストデータを解釈して、当該テキストデータに関連付けられているデータを一つづつLWP15を介してWWWサーバ16からダウンロードして、ユーザーの所望するコンテンツを取得する。
このような場合には、例えば、テキストデータのダウンロードに対して、当該テキストデータに関連付けられた他のデータの更新の有無は、影響を与えない。従って、テキストデータのダウンロードが中断された場合に、当該ダウンロードが再開可能であるか否かを判定するには、ダウンロード対象のテキストデータが更新されたか否かを判定すれば良い。一方、テキストデータに関連付けられたデータのダウンロードが中断された場合に、当該ダウンロードが再開可能であるか否かを判定するには、ダウンロード対象のデータが更新されたか否かを判定すれば良い。
【0088】
[変形例4]
また、上述した実施形態では、ハッシュ値算出アルゴリズムとしてAdler−32アルゴリズムを用いる場合の実施例について説明したが、他のハッシュ値算出アルゴリズム(例えばCRC−32等)を用いても良い。
【0089】
[変形例5]
また、上述した実施形態では、ハッシュ値を用いて、中断されたデータ送信が再開可能であるか否かを判定する実施例について説明したが、ハッシュ値ではなく、DTE11のEEPROM762に記憶されているデータそのものを用いて再開可能か否かを判定しても良い。具体的には、DTE11からLWP15へ未受信部分のみの送信を要求する場合に、DTE11が、リクエストラインにDTE11が記憶している既受信部分を設定してLWP15にリクエストを送信し、LWP15は、関連データ結合処理で生成したダウンロードデータの先頭からDTE11から送信された当該既受信部分の長さで特定される部分と、DTE11から送信された既受信部分とを比較し、両者が一致する場合にのみ中断されたダウンロードの再開を行っても良い。
【0090】
[変形例6]
また、上述した実施形態では、DTE11のEEPROM762に記憶されている既受信部分全体を用いて、中断されたデータ送信が再開可能であるか否かを判定する実施例について説明したが、当該既受信部分の特定の一部分を用いて、中断されたデータ送信が再開可能であるか否かを判定しても良い。例えば、DTE11のEEPROM762に記憶されている既受信部分の奇数バイト目と、LWP15で生成されたダウンロードデータの先頭からDTE11から送信された当該既受信部分の長さで特定される部分の奇数バイト目とが全て一致した場合にのみ中断されたデータ送信の再開を行うとしても良い。
【0091】
[変形例7]
また、上述した実施形態では、DTE11のEEPROM762に記憶されている既受信部分を用いて、中断されたデータ送信が再開可能であるか否かを判定する実施例について説明したが、DTE11に、バス77を介してCPU71に現在日時を供給する時計部78を更に設け、LWP15からのデータのダウンロードが中断されると、CPU71は、それまでに受信したデータと時計部78から取得した日時とを対応付けてEEPROM762に記憶させ、ダウンロードの再開を要求する際に、当該日時をLWP15に送信し、LWP15で当該日時とWWWサーバ16に記憶されているデータの作成日時とをLWP15で比較し、前者が後者より新しい場合にのみ中断されたダウンロードの再開を行うとしても良い。
【0092】
[変形例8]
また、上述した実施形態では、ダウンロード中断前後でWWWサーバ16の有するデータが更新されたために、結合不能と判定された場合にはエラーメッセージを送信し、再度データ全体のダウンロードを促す実施形態について説明したが、更新後のデータから生成されたダウンロードデータ全体をダウンロードしても良い。
【0093】
[変形例9]
また、上述した実施形態では、一台のLWP15で中継を行う実施形態について説明したが、信頼性向上および負荷分散の観点から、例えば複数台のLWPからなるクラスター構成あるいはホットスタンバイ構成等の多重化構成にしても良い。
【0094】
[変形例10]
また、上述した実施形態では、LWP15が予め本発明に係るプログラムを記憶している場合の実施形態について説明したが、当該プログラムを記憶していない一般的な代理サーバ機能を有するコンピュータ装置に、コンピュータ装置が読み取り可能な記録媒体に記録されている当該プログラムを読み込ませて、当該プログラムを当該代理サーバ装置に記憶させ、上述した実施形態におけるLWP15と略同一の機能を追加しても良い。
また、上述した実施形態では、DTE11が予め本発明に係るプログラムを記憶している場合の実施形態について説明したが、ダウンロードしたプログラムを記憶および実行する機能を有する一般的なブラウザ機能付携帯電話に、本件発明に係るプログラムを記憶させてDTE11と略同一の機能を付与しても良い。具体的には、本発明に係るプログラムを記録したコンピュータ装置が読み取り可能な記録媒体から当該プログラムを代理サーバ装置に読み込ませて当該代理サーバ装置の記憶装置に当該プログラムを記憶させ、前記携帯電話に前記代理サーバ装置から当該プログラムをダウンロードして記憶させることにより、DTE11と略同一の機能を追加しても良い。
【0095】
[変形例11]
また、上述した実施形態では、移動パケット通信網12とインターネット14とをゲートウェイサーバ13を介して接続し、インターネット14に接続されたLWP15において本件発明に係る中継方法を実行する場合の実施例について説明したが、ゲートウェイサーバ13にLWP15の機能を実現するプログラムを記憶させ、ゲートウェイサーバ13で本件発明に係る中継方法を実行させても良い。
【0096】
[変形例12]
また、上述した実施形態では、DTE11とLWP15とが、移動パケット通信網12とゲートウェイサーバ13とインターネット14とを介して通信を行う通信態様の場合の実施例について説明したが、DTE11とLWP15との間の通信態様は、このような通信態様に限定されるものではなく、移動パケット通信網12に替えて非パケット通信網を用いた通信態様でも良く、また、インターネット14に替えて構内LAN(いわゆるイントラネット)を用いた通信態様でも良く、また、インターネット14のみを用いた通信態様でも良く、構内LANのみを用いた通信態様であっても良い。
また、上述した実施形態では、LWP15とWWWサーバ16とが、インターネット14を介して通信を行う通信態様の場合の実施例について説明したが、LWP15とWWWサーバ16との間の通信態様は、インターネット14を用いた通信態様に限定されるものではなく、構内LANを用いた通信態様であっても良い。
【0097】
[変形例13]
また、上述した実施形態では、DTE11がLWP15を介してWWWサーバ16から取得するデータが、HTMLで記述されたテキストデータとHTMLに従って当該テキストデータに関連付けられた他のデータ(画像データや音声データ等)とを有するコンテンツである場合の実施例について説明したが、コンテンツを構成するテキストデータは、HTMLで記述されたテキストデータに限られるものではなく、HTMLを機能拡張した記述言語であるXHTML(eXtensible Hyper Text Markup Language)で記述されたテキストデータであっても良い。要は、文書の中に画像や音声、動画、他の文書の所在場所等を埋め込むことができる記述言語で記述されたテキストデータであれば良い。
【0098】
[変形例14]
また、上述した実施形態では、DTE11が再開位置情報を算出する際に、既受信部分が画像テキストを有する場合には、既受信部分を記憶した時点の表示階調と未受信部分の取得が要求された時点の表示階調とが一致するか否かの判定を行い(図13:ステップSE3参照)、一致する場合と一致しない場合とで異なる値を再開位置情報に設定する場合の実施例について説明したが、このような判定を行わずに、再開位置情報の設定を行っても良い。具体的には、DTE11は、既受信部分を記憶した時点の表示階調と未受信部分の取得が要求された時点の表示階調とが一致するか否かにかかわらず、既受信部分の大きさを再開位置情報に設定しても良い。
【0099】
[変形例15]
また、上述した実施形態では、DTE11が再開位置情報を算出する際に、既受信部分が画像テキストを有するか否かの判定を行い(図13:ステップSE1参照)、有する場合と有しない場合とで異なる処理を行って再開位置情報を算出する場合の実施例について説明したが、このような判定を行わずに、再開位置情報の設定を行っても良い。具体的には、DTE11は、既受信部分が画像テキストを有するか否かにかかわらず、既受信部分の大きさを再開位置情報に設定しても良い。
【0100】
【発明の効果】
本発明によれば、WWWサーバ16からDTE11へのコンテンツのダウンロードが中断された場合には、DTE11が既受信部分を記憶するために、中断された時点からダウンロードを再開して、未受信部分のみ取得し、DTE11に記憶されている既受信部分とLWP15から取得した未受信部分とを結合してコンテンツを取得することが可能となり、コンテンツ全体を再度取得する場合に比べて、短時間にコンテンツを取得できるといった効果を奏する。
【0101】
また、本発明によれば、LWP15は、DTE11から送信された既受信部分情報と、WWWサーバ16から取得した更新情報とが一致した場合にのみ未受信部分をDTE11へ送信するために、LWP15からDTE11への結合不能なデータの送信が抑止され、ユーザーの負担する通信コストが削減されるといった効果を奏する。
【図面の簡単な説明】
【図1】 図1は、本発明に係るデータ取得方法を実行する通信システムの全体構成の一例を示す図である。
【図2】 図2は、同システムの動作の概要を示すシーケンス図である。
【図3】 図3は、同システムを構成するWWWサーバ16に記憶されているテキストデータの要部を示す図である。
【図4】 図4は、同システムを構成するWWWサーバ16に記憶されている画像データの画像イメージを示す図である。
【図5】 図5は、同システムを構成するLWP15からDTE11へ送信されるダウンロードデータの一例を示す図ある。
【図6】 図6は、同システムを構成するLWP15からDTE11へ送信されるダウンロードデータの一例を示す図ある。
【図7】 図7は、同システムを構成するDTE11の構成例を示すブロック図である。
【図8】 図8は、同DTE11が実行するプロファイル情報設定処理の流れを示すフローチャートである。
【図9】 図9は、同プロファイル情報設定処理にてDTE11の表示部74に表示されるプロファイル情報設定画面の一例である。
【図10】 図10は、同DTE11が実行するコンテンツ取得処理の流れを示すフローチャートである。
【図11】 図11は、同DTE11が実行する全体要求処理の流れを示すフローチャートである。
【図12】 図12は、同DTE11が実行する未受信部分要求処理の流れを示すフローチャートである。
【図13】 図13は、同DTE11が実行する再開位置算出処理の流れを示すフローチャートである。
【図14】 図14は、同システムを構成するLWP15の構成例を示すブロック図である。
【図15】 図15は、同LWP15が実行するコンテンツ代理取得処理の流れを示すフローチャートである。
【図16】 図16は、同LWP15が実行する関連データ結合処理の流れを示すフローチャートである。
【図17】 図17は、同システムを構成するWWWサーバ16に記憶されているコンテンツをDTE11が解釈表示した場合に、表示部74に表示される画像の一例を示す図である。
【図18】 図18は、同システムの動作の一例を示すシーケンス図である。
【図19】 図19は、同システムを構成するDTE11のEEPROM762に記憶されている既受信部分を示す図である。
【図20】 図20は、同システムを構成するDTE11の表示部74に表示される画像の一例を示す図である。
【図21】 図21は、同システムを構成するDTE11の表示部74に表示される画像の一例を示す図である。
【図22】 図22は、[変形例2]に係るLWP15が実行するコンテンツ代理取得処理の流れを示すフローチャートである。
【符号の説明】
11 DTE
12 移動パケット通信網
13 ゲートウェイサーバ
14 インターネット
15 LWP
16 WWWサーバ

Claims (8)

  1. 中継装置が、クライアント装置から要求された第一のデータと該第一のデータに関連付けられた第二のデータとをサーバ装置から取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータを該クライアント装置に送信する送信過程と、
    前記クライアント装置が、前記中継装置からのデータ送信が中断された時点までに受信した前記第三のデータの既受信部分を記憶する記憶過程と、
    前記クライアント装置が前記既受信部分に基づいて前記第三のデータにおける前記データ送信が中断された位置を示す再開位置情報を算出し、該再開位置情報と前記既受信部分とに基づいて第一の再開判定情報を算出し、該再開位置情報と該第一の再開判定情報とを前記中継装置に送信して前記データ送信の再開を要求する要求過程と、
    前記中継装置が前記サーバ装置に格納されている前記第一及び第二のデータを取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータと前記再開位置情報とから第二の再開判定情報を算出し、該第二の再開判定情報と前記第一の再開判定情報とを比較し、両者が一致する場合にのみ、前記データ送信を再開可能と判定する判定過程と、
    前記中継装置が、前記判定過程にて前記データ送信を再開可能と判定された場合にのみ前記第三のデータのうち前記クライアント装置が受信していない未受信部分のみを前記クライアント装置に送信する未受信部分送信過程と、
    前記クライアント装置が、前記既受信部分と前記未受信部分とを結合して表示する表示過程と
    を有することを特徴とするデータ取得方法。
  2. 前記第一の再開判定情報と前記第二の再開判定情報とは、いずれも同一のハッシュ値生成アルゴリズムで算出されるハッシュ値であることを特徴とする請求項に記載のデータ取得方法。
  3. 中継装置が、クライアント装置から要求された第一のデータと該第一のデータに関連付けられた第二のデータとをサーバ装置から取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータを該クライアント装置に送信する送信過程と、
    前記クライアント装置が、前記中継装置からのデータ送信が中断された時点までに受信した前記第三のデータの既受信部分を記憶する記憶過程と、
    前記クライアント装置が前記既受信部分を第一の再開判定情報として前記中継装置に送信して前記データ送信の再開を要求する要求過程と、
    前記中継装置が前記サーバ装置に格納されている前記第一及び第二のデータを取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータの先頭から前記既受信部分の長さで特定される部分を第二の再開判定情報として取得し、該第二の再開判定情報と前記第一の再開判定情報とを比較し、両者が一致する場合にのみ、前記データ送信を再開可能と判定する判定過程と、
    前記中継装置が、前記判定過程にて前記データ送信を再開可能と判定された場合にのみ前記第三のデータのうち前記クライアント装置が受信していない未受信部分のみを前記クライアント装置に送信する未受信部分送信過程と、
    前記クライアント装置が、前記既受信部分と前記未受信部分とを結合して表示する表示過程と
    を有することを特徴とするデータ取得方法。
  4. クライアント装置から要求された第一のデータと該第一のデータに関連付けられた第二のデータとをサーバ装置から取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータを該クライアント装置に送信する送信手段と、
    前記送信手段からのデータ送信が中断された時点までに受信した前記第三のデータの既受信部分を記憶している前記クライアント装置が前記既受信部分に基づいて前記第三のデータにおける前記データ送信が中断された位置を示す再開位置情報を算出し、該再開位置 情報と前記既受信部分とに基づいて第一の再開判定情報を算出し、該再開位置情報と該第一の再開判定情報とを送信して前記データ送信の再開を要求した場合に、前記サーバ装置に格納されている前記第一及び第二のデータを取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータと前記再開位置情報とから第二の再開判定情報を算出し、該第二の再開判定情報と前記第一の再開判定情報とを比較し、両者が一致する場合にのみ、前記データ送信を再開可能と判定する判定手段と、
    前記判定手段にて前記データ送信を再開可能と判定された場合にのみ前記第三のデータのうち前記クライアント装置が受信していない未受信部分のみを前記クライアント装置に送信する未受信部分送信手段と
    を有することを特徴とする中継装置。
  5. クライアント装置から要求された第一のデータと該第一のデータに関連付けられた第二のデータとをサーバ装置から取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータを該クライアント装置に送信する送信手段と、
    前記送信手段からのデータ送信が中断された時点までに受信した前記第三のデータの既受信部分を記憶している前記クライアント装置が前記既受信部分を第一の再開判定情報として送信して前記データ送信の再開を要求した場合に、前記サーバ装置に格納されている前記第一及び第二のデータを取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータの先頭から前記既受信部分の長さで特定される部分を第二の再開判定情報として取得し、該第二の再開判定情報と前記第一の再開判定情報とを比較し、両者が一致する場合にのみ、前記データ送信を再開可能と判定する判定手段と、
    前記判定手段にて前記データ送信を再開可能と判定された場合にのみ前記第三のデータのうち前記クライアント装置が受信していない未受信部分のみを前記クライアント装置に送信する未受信部分送信手段と
    を有することを特徴とする中継装置。
  6. コンピュータ装置を、
    クライアント装置から要求された第一のデータと該第一のデータに関連付けられた第二のデータとをサーバ装置から取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータを該クライアント装置に送信する送信手段と、
    前記送信手段からのデータ送信が中断された時点までに受信した前記第三のデータの既受信部分を記憶している前記クライアント装置が前記既受信部分に基づいて前記第三のデータにおける前記データ送信が中断された位置を示す再開位置情報を算出し、該再開位置情報と前記既受信部分とに基づいて第一の再開判定情報を算出し、該再開位置情報と該第一の再開判定情報とを送信して前記データ送信の再開を要求した場合に、前記サーバ装置に格納されている前記第一及び第二のデータを取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータと前記再開位置情報とから第二の再開判定情報を算出し、該第二の再開判定情報と前記第一の再開判定情報とを比較し、両者が一致する場合にのみ、前記データ送信を再開可能と判定する判定手段と、
    前記判定手段にて前記データ送信を再開可能と判定された場合にのみ前記第三のデータのうち前記クライアント装置が受信していない未受信部分のみを前記クライアント装置に送信する未受信部分送信手段
    として機能させるためのプログラム。
  7. コンピュータ装置を、
    クライアント装置から要求された第一のデータと該第一のデータに関連付けられた第二のデータとをサーバ装置から取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータを該クライアント装置に送信する送信手段と、
    前記送信手段からのデータ送信が中断された時点までに受信した前記第三のデータの既受信部分を記憶している前記クライアント装置が前記既受信部分を第一の再開判定情報として送信して前記データ送信の再開を要求した場合に、前記サーバ装置に格納されている前記第一及び第二のデータを取得し、該第一及び第二のデータを結合して第三のデータを生成し、該第三のデータの先頭から前記既受信部分の長さで特定される部分を第二の再開 判定情報として取得し、該第二の再開判定情報と前記第一の再開判定情報とを比較し、両者が一致する場合にのみ、前記データ送信を再開可能と判定する判定手段と、
    前記判定手段にて前記データ送信を再開可能と判定された場合にのみ前記第三のデータのうち前記クライアント装置が受信していない未受信部分のみを前記クライアント装置に送信する未受信部分送信手段
    として機能させるためのプログラム。
  8. 求項6または7に記載のプログラムを記録したコンピュータ装置が読み取り可能な記録媒体。
JP2002056272A 2002-03-01 2002-03-01 データ取得方法、中継装置、プログラムおよび記録媒体 Expired - Fee Related JP4176359B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002056272A JP4176359B2 (ja) 2002-03-01 2002-03-01 データ取得方法、中継装置、プログラムおよび記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002056272A JP4176359B2 (ja) 2002-03-01 2002-03-01 データ取得方法、中継装置、プログラムおよび記録媒体

Publications (2)

Publication Number Publication Date
JP2003256313A JP2003256313A (ja) 2003-09-12
JP4176359B2 true JP4176359B2 (ja) 2008-11-05

Family

ID=28666889

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002056272A Expired - Fee Related JP4176359B2 (ja) 2002-03-01 2002-03-01 データ取得方法、中継装置、プログラムおよび記録媒体

Country Status (1)

Country Link
JP (1) JP4176359B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014149813A (ja) * 2013-01-31 2014-08-21 Naver Corp モバイル端末で大容量のファイルが添付されたメールを送信する方法およびシステム
US20210385512A1 (en) * 2015-06-01 2021-12-09 Comcast Cable Communications, Llc Transmission of applications with content

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006110005A1 (en) * 2005-04-15 2006-10-19 Ktfreetel Co., Ltd. Method for providing contents for mobile comunication terminal
JP2010063037A (ja) * 2008-09-05 2010-03-18 Riso Kagaku Corp データ転送システム、データ受信装置および画像形成装置
JP5309085B2 (ja) * 2010-06-11 2013-10-09 株式会社ジェイ・ジー・エス・オー 印刷プログラムおよび印刷方法
JP6102627B2 (ja) * 2013-08-09 2017-03-29 ブラザー工業株式会社 中継装置、画像処理装置、中継方法、プログラム、及びシステム
JP2016541048A (ja) * 2013-10-28 2016-12-28 華為技術有限公司Huawei Technologies Co.,Ltd. サービスプロキシを使用してデータを転送する方法、デバイスおよびシステム
US9665432B2 (en) 2014-08-07 2017-05-30 Microsoft Technology Licensing, Llc Safe data access following storage failure
US9847918B2 (en) 2014-08-12 2017-12-19 Microsoft Technology Licensing, Llc Distributed workload reassignment following communication failure
JP6138178B2 (ja) * 2015-01-23 2017-05-31 三菱電機ビルテクノサービス株式会社 中継装置、データ通信システム及びプログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014149813A (ja) * 2013-01-31 2014-08-21 Naver Corp モバイル端末で大容量のファイルが添付されたメールを送信する方法およびシステム
US20210385512A1 (en) * 2015-06-01 2021-12-09 Comcast Cable Communications, Llc Transmission of applications with content
US11595705B2 (en) * 2015-06-01 2023-02-28 Comcast Cable Communications, Llc Transmission of applications with content

Also Published As

Publication number Publication date
JP2003256313A (ja) 2003-09-12

Similar Documents

Publication Publication Date Title
US6396805B2 (en) System for recovering from disruption of a data transfer
Housel et al. WebExpress: A client/intercept based system for optimizing Web browsing in a wireless environment
JP4079288B2 (ja) ネットワーク経由でソフトウェアを自動的にアップグレードする方法、そのシステム及びその記憶媒体
JP4176359B2 (ja) データ取得方法、中継装置、プログラムおよび記録媒体
JP2000099463A (ja) デ―タネットワ―クの二方向対話通信装置用の中心化されたサ―ビス管理システム
JP2008097201A (ja) ブラウザデータ共有システム、サーバ、方法およびプログラム
US20050278717A1 (en) Mobile communication terminal and application control method
JP4839715B2 (ja) シンクライアントシステム
JPH09214708A (ja) ファクシミリ装置
JP2003529974A (ja) 機器を制御するシステム及び方法
JP2007529051A (ja) 異なるプラットホームにおいてフォントサイズを維持するための方法及びシステム
JP2002372543A (ja) 分析装置の管理システム及び管理方法
JP2010015432A (ja) サーバ装置、サーバベース・コンピューティング・システム、およびサーバ制御プログラム
US20050038864A1 (en) Methodology for performing caching procedures in an electronic network
JP2008067311A (ja) 移動通信端末及びダウンロード再開制御方法
JP2005032151A (ja) 端末属性情報提供システム
JP2002351677A (ja) アプリケーション・プログラム実行順序制御システム
JP2003348152A (ja) 情報送出装置および情報送出方法
JP3984099B2 (ja) 携帯端末
JP2005107662A (ja) Wwwシステム処理方法およびシステム
JP5205789B2 (ja) データ処理システム、デーモンプログラム、およびコンピュータ起動方法
JP2008015658A (ja) アプリケーション提供システム及びアプリケーション提供方法
JP2010055493A (ja) サーバ装置、サーバベース・コンピューティング・システム、およびサーバ制御プログラム
JP2004362266A (ja) 遠隔制御方法、サーバ装置及び仮想マシンプログラム
KR20010097304A (ko) 무선인터넷을 지원하는 모바일폰상에서 정보를다운로드하는 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041005

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070320

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070521

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070612

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070810

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080820

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

Free format text: PAYMENT UNTIL: 20110829

Year of fee payment: 3

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120829

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120829

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130829

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees