JP4370018B2 - Software transfer system - Google Patents

Software transfer system Download PDF

Info

Publication number
JP4370018B2
JP4370018B2 JP06619299A JP6619299A JP4370018B2 JP 4370018 B2 JP4370018 B2 JP 4370018B2 JP 06619299 A JP06619299 A JP 06619299A JP 6619299 A JP6619299 A JP 6619299A JP 4370018 B2 JP4370018 B2 JP 4370018B2
Authority
JP
Japan
Prior art keywords
software
transfer
list
resource
client
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
JP06619299A
Other languages
Japanese (ja)
Other versions
JP2000259421A (en
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP06619299A priority Critical patent/JP4370018B2/en
Publication of JP2000259421A publication Critical patent/JP2000259421A/en
Application granted granted Critical
Publication of JP4370018B2 publication Critical patent/JP4370018B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
この発明はネットワークを介してコンピュータ間でソフトウェアの転送を行う際に必要ソフトを選別するシステムとその転送方法に関するものである。
【0002】
【従来の技術】
2つ以上の装置間でデータ転送を行うコンピュータシステムにおいて、ユーザが欲しいソフトウェアを、ネットワークを介して転送する、例えばオンライン・ロードシステムがある。
【0003】
図14は、従来のネットワークを介してソフトウェアをオンライン・ロードするシステムの構成図である。図において、少なくとも1台以上のサーバーコンピュータ1と少なくとも1台以上のクライアントコンピュータ2がネットワーク3を介して接続されている。
サーバーコンピュータ1は、他のコンピュータとネットワーク3を介して通信を行う通信手段6と、ソフトウェアの転送を制御するソフトウェア転送サーバー処理手段4と、ソフトウェアが保存されている記憶手段5などによって構成されている。
クライアントコンピュータ2は、他のコンピュータとネットワーク3を介して通信を行う通信手段6と、ソフトウェアの転送を制御するソフトウェア転送クライアント処理手段7と、ソフトウェアを保存する記憶手段5と、ユーザーへ情報を表示する表示手段8と、ユーザーがソフトウェア転送クライアント処理手段7を操作するための操作手段9などから構成されている。
【0004】
次に、図に示したシステムにおいて、ソフトウェアを転送する場合の動作について相互間の通信シーケンスを示す図15も参照しながら説明する。
最初に、ユーザーがクライアントコンピュータ2の操作手段9によって接続するサーバーコンピュータ1を指定すると、指定されたサーバーコンピュータ1へ接続を要求し、コネクションを確立する。次に、クライアントコンピュータ2はサーバーコンピュータ1へソフトウェアのリストを要求、受信して、表示手段8によってユーザーに提示する。次に、ユーザーはクライアントコンピュータ2の操作手段9によって転送するソフトウェアを選択すると、選択されたソフトウェアをサーバーコンピュータ1に要求、受信して、記憶手段5に格納する。転送するすべてのソフトウェアについてこの処理を繰り返す。
すべてのソフトウェアの転送が終了すると、ユーザーの操作によりクライアントコンピュータ2とサーバーコンピュータ1間のコネクションが切断される。
【0005】
【発明が解決しようとする課題】
従来のソフトウェア転送方法は上記のように動作し、転送元のサーバまたはそのサーバが持つソフトウェアの信頼性をチェックせずに転送するので、クライアント側では受け入れたソフトウェアが自クライアントの既存ソフトウェアや、データに悪影響を及ぼさないかという懸念が残るという課題があった。
また更に、転送に際してソフトウェア名のみで転送するので、既にインストール済みのソフトウェアを再度転送して時間を浪費するという課題もあった。
【0006】
この発明は上記の課題を解消するためになされたもので、既にインストール済みのソフトウェアや、そのデータに影響が及ばず安全であり、無駄な転送を防いだソフトウェア転送システムを得ることを目的とする。
【0007】
【課題を解決するための手段】
この発明に係るソフトウェア転送システムは、
ネットワークを介してソフトウェアの転送を行うサーバコンピュータと、
ソフトウェアが使用する資源を有するクライアントコンピュータと
を備えたソフトウェア転送システムにおいて、
上記サーバコンピュータは、
実行時に所定の資源を必要資源として使用するソフトウェアを記憶する記憶手段と、
上記記憶手段に記憶されたソフトウェアのソフトウェア名とそのソフトウェアが使用する必要資源とを記載した提供可能ソフトウェアリストと、
ソフトウェアの転送を制御するソフトウェア転送サーバ処理手段と、
ネットワークを介してクライアントコンピュータと通信するサーバ通信手段と
を備え、
上記クライアントコンピュータは
上記クライアントが有する資源のうちサーバコンピュータに対応して割り当てられた割当資源を示す資源情報を記憶する資源情報テーブルと、
ソフトウェアの転送を制御するソフトウェア転送クライアント処理手段と、
ネットワークを介してサーバコンピュータと通信するクライアント通信手段と
を備え、
上記クライアントコンピュータは、
クライアント通信手段により、上記サーバコンピュータから上記提供可能ソフトウェアリストを受信し、
ソフトウェア転送クライアント処理手段により、提供可能ソフトウェアリストに記載されたソフトウェアの必要資源と資源情報テーブルに記憶された資源情報が示す割当資源とを比較して、上記提供可能ソフトウェアリストを送信したサーバコンピュータに対応して割り当てられた割当資源が上記提供可能ソフトウェアリストに記載されたソフトウェアの必要資源を満足するか否かを判断し、
クライアント通信手段により、上記割当資源が上記必要資源を満足するソフトウェアを転送要求ソフトウェアとして上記サーバコンピュータに要求し、
上記サーバコンピュータは、
ソフトウェア転送サーバ処理手段により、記憶手段に記憶されたソフトウェアの中から、上記転送要求ソフトウェアとして要求されたソフトウェアを転送ソフトウェアとして選択して、
サーバ通信手段により、上記転送ソフトウェアを上記クライアントコンピュータに送信する
ことを特徴とする。
【0008】
上記提供可能ソフトウェアリストは、
ソフトウェアのソフトウェア名と必要資源とともにソフトウェアのハッシュ値を記載し、
上記クライアントコンピュータは、さらに、
インストール済みのソフトウェアのソフトウェア名とインストール済みのソフトウェアのハッシュ値とを記載した受信済みソフトウェアリストを備え、
上記クライアントコンピュータは、
上記提供可能ソフトウェアリストに記載されたソフトウェアのソフトウェア名とハッシュ値とが、受信済みソフトウェアリストに記載されたインストール済みのソフトウェアのソフトウェア名とインストール済みのソフトウェアのハッシュ値とにそれぞれ一致するソフトウェアを上記転送要求ソフトウェアから除外することを特徴とする。
【0009】
【発明の実施の形態】
実施の形態1.
特定の契約したサーバからの信頼できるソフトウェアを利用できる場合は問題ないが、クライアントが移動先から未だインストールしていないソフトウェアを手近なサーバから転送して使用する場合には、安全性に懸念がある。こうした必要に迫られた転送にも安全な転送方法を説明する。
図9はこの発明の実施の形態1におけるクライアントコンピュータの基本動作を示すフローチャートである。また図1は、図9のステップST006の詳細を示すフローチャートであり、更に図2は、図1のステップST105の詳細を示すフローチャートであり、図3は図1のステップST101−1の詳細を示すフローチャートである。
【0010】
図4は、この発明の実施の形態1におけるシステム構成をあらわしたものである。図4において、少なくとも1台以上のサーバーコンピュータ1と少なくとも1台以上のクライアントコンピュータ2がネットワーク3を介して接続されている。またサーバーコンピュータ1は、他のコンピュータとネットワーク3を介して通信を行う通信手段6と、ソフトウェアの転送を制御するソフトウェア転送サーバー処理手段4と、クライアントコンピュータ2に提供可能なソフトウェアが格納されている記憶手段5と、各ソフトウェアの属性情報のリストである提供可能ソフトウェアリスト10などによって構成されている。
【0011】
図5は、サーバコンピュータ1内の提供可能ソフトウェアリスト10の例を示す図であり、各ソフトウェアの属性情報としてソフトウェア名、サイズ、最終更新日時、ハッシュ値、対応するソフトウェアを利用するのに不可欠の資産(リソース)である必要資源などが含まれている。
図の必要資源10−1は、メモリとして25KBが必要で、かつ表示装置が480×200ドットのものが必要であったり、またはファイルが書き込みと読み出し動作が必要とされたり、またはソフトウェアがアプリケーションBというプログラムを使用する必要があることを示している。
また10−2のハッシュ値とは、任意長のデータをそれよりも小さなデータ長(例えば128ビット)に圧縮するハッシュ関数によって圧縮されたソフトウェアデータの圧縮値である。このメッセージダイジェストと呼ばれるハッシュ関数は、暗号などで用いられ、同じハッシュ値を持つ元データを見つけることが困難な性質を持っている。そのため2つのデータのハッシュ値を比較すればそのデータの中身が同じ物かどうかをほとんど間違いなく判断することができる。
【0012】
また、クライアントコンピュータ2は、通信手段6と、ソフトウェアの転送を制御するソフトウェア転送クライアント処理手段7と、サーバーコンピュータ1から転送されたソフトウェアを格納する記憶手段5と、記憶手段5に格納されている各ソフトウェアの属性情報のリストである受信済ソフトウェアリスト11と、転送したソフトウェアが利用可能な資源(リソース)情報である利用制限資源情報テーブル12と、ユーザーへ情報を表示する表示手段8と、ユーザーがソフトウェア転送クライアント処理手段を操作するための操作手段9などがバスを介して接続、構成されている。
【0013】
図6は、クライアントコンピュータ2内の受信済ソフトウェアリスト11の例を示す図であり、各ソフトウェアの属性情報としてソフトウェア名、サイズ、最終更新日時、ハッシュ値11−2、転送元サーバーコンピュータなどが含まれている。
図7は、利用制限資源情報テーブル12の例を示した図であり、サーバコンピュータ毎にソフトウェアの転送元が利用できる資源(リソース)を示している。例えば、サーバーAから転送されたソフトウェアはファイルの読み込み・書込みとネットワーク接続と50KBまでのメモリを使用することができ、サーバーBから転送されたソフトウェアはファイルの読込と10KBまでのメモリを使用することができ、サーバーCから転送されたソフトウェアはファイルの読み込み・書込みと80KBまでのメモリを使用することができることを示している。また、全てのサーバーコンピュータ(全サーバー)から転送されたソフトウェアは640×400ドットの表示装置を利用可能であることを示している。
【0014】
次に、図4に示したシステムが行う動作について、サーバとクライアント間の通信シーケンスを示す図8およびクライアントコンピュータの基本動作フローを示す図9も参照しながら説明する。
ここでは、サーバーコンピュータ1からクライアントコンピュータ2へソフトウェアを転送する。
まず、クライアントコンピュータ2からサーバーコンピュータ1に対して提供可能ソフトウェアリストを要求する(ST001)。このとき、サーバーコンピュータ1が不明の場合は、ブロードキャスト送信(ネットワーク3に接続された全てのコンピュータへ送信)により要求してもよい。サーバーコンピュータ1は、この問合せに対して提供可能ソフトウェアリストを応答する(ST002)。
【0015】
この要求に応じてサーバコンピュータ1から、まず提供可能ソフトウェアリストが送信される。これを受けたクライアントコンピュータ2は、送信したサーバーコンピュータ1が、自身の利用制限資源情報テーブル12に含まれているサーバかどうかをチェックする(ST003)。もし、応答したサーバーコンピュータ1が利用制限資源情報テーブル12に含まれていない場合、表示手段8によって転送したソフトウェアに与える利用可能資源をユーザーに問い合わせる(ST004)。ユーザーは、操作手段9によって応答したサーバーコンピュータに対する利用制限資源を入力し、利用制限資源情報テーブル12を更新する(ST005)。
もちろん、ここでユーザーへの問合せを行わずに利用制限資源情報テーブル12に記憶されていないサーバーコンピュータへ利用可能資源を割り当てないようにしてもよい。
【0016】
次に、クライアントコンピュータ2は、受信した提供可能ソフトウェアリスト10から、ステップST006で、転送するソフトウェアを図1に詳細フローを示す処理によって選択する。クライアントコンピュータ2は、利用可能資源リスト作成の処理ST101−1をする。
図3は図1中の利用可能資源リストと作成の処理ステップST101−1の更に詳細を示すフローチャートである。ここで、送信元サーバから送信されたソフトウェアが利用可能なすべての資源のリスト(利用可能資源リスト)を作成する。
まず、利用可能資源リストを初期化する(ST601)。
次に、利用制限資源情報テーブル12に送信元サーバの欄があるかどうかチェックし(ST602)、ある場合にはその利用可能資源を利用可能資源リストに追加する(ST603)。
次に利用制限資源情報テーブル12に全サーバの欄があるかどうかチェックし(ST604)、ある場合にはその利用可能資源を利用可能資源リストに追加する(ST605)。
図16の利用可能資源リストは、以上のようにして作成された利用可能資源リストの例であり、図7の転送元サーバ毎に異なる利用可能資源と全サーバに共通の利用可能資源を併せたものとなっている。図16、図7の利用制限情報テーブルの例におけるサーバAからソフトウェアを転送する場合に作成される利用可能資源リストであり、サーバAに対する利用可能資源と全サーバに対する利用可能資源を併せたものとなっている。
次にクライアントコンピュータ2は、サーバコンピュータ1に転送を要求するソフトウェアのリストである転送要求ソフトウェアリストを初期化した後(図、ST101−2)、提供可能ソフトウェアリストに含まれる各ソフトウェアについて以下のような処理(ST102〜ST107)を繰り返す。
【0017】
まず、クライアントコンピュータ2は提供可能ソフトウェアと同名のソフトウェアが受信済ソフトウェアリスト11に含まれているかどうかチェックする(ST103)。同名のソフトウェアがある場合は、さらにそのハッシュ値を比較する(ST104)。ハッシュ値が同じ場合は、そのソフトウェアは受信済のソフトウェアと同一のものであるとみなし、転送要求はせず、次の提供可能ソフトウェアの処理に移る。
同名のソフトウェアがない場合、またはハッシュ値が異なりソフトウェアが更新されたとみなされる場合は、その提供可能ソフトウェアの必要資源(リソース)と利用制限資源情報テーブル12を比較し、そのソフトウェアが必要とする資源を全て利用可能かどうかチェックする(ST105)。
【0018】
この必要資源は利用可能か判定ステップST105は、更に図2の詳細動作フローで構成されており、ST701ないしST707からなる資源利用可否判断処理ST700となっている。即ちソフトウェアの必要資源が全て利用可能か否かをチェックする。
まず、例えば“MEMORY.USE”のような必要資源10−1の名が利用可能資源リストに含まれているかどうかチェックする(ST702)。必要資源名が利用可能資源リストに含まれていない場合は、必要資源は利用不可であると判断され処理を終了する(ST707)。
必要資源名が利用可能資源リストに含まれていた場合には、資源毎に異なるオプション条件についてもチェックする(ST703)。このオプション条件は、メモリの“25KB”や表示装置の“480×200ドット”というように、資源毎に異なるサイズなどの条件を示したものであり、その判断処理は資源毎に異なる。もちろん、オプション条件は必ずしも設定しなくともよく、この場合はオプション条件を満たしていると判断される。
【0019】
オプション条件を満たしていない場合には、必要資源名が利用可能資源リストに他に含まれているかどうかチェックする(ST704)。含まれている場合には、再びオプション条件のチェックを行う(ST703)。必要資源名が利用可能資源リストに含まれていない場合には、必要資源は利用不可であると判断され処理を終了する(ST707)。
オプション条件を満たしている場合、処理中の必要資源は利用可能であると判断され、次の処理に移る(ST705)。
以上のように、送信するソフトウェアの各必要資源について、資源が利用可能か否か繰返しチェックする。すべての必要資源が利用可能であると判断されるとソフトウェアの必要資源がすべて利用可能であると判断され、処理を終了する(ST707)。
【0020】
図5の提供可能ソフトウェアリスト10の例において、ApplicationAは、480×200ドット以上の表示装置と、25KB以上のメモリが必要である。これをサーバーAから図7の利用制限資源情報テーブル12を持つクライアントコンピュータ2に転送する場合、サーバーAから転送したソフトウェアが利用可能な資源は、図16の利用可能資源リストにより示されるファイルの読込・書込みとネットワークの接続と、50KB以内のメモリと640×400ドットの表示装置である。
この例の場合、ApplicationAが必要な資源が、クライアントコンピュータ2により作成された利用可能資源リスト(図16)に含まれているので、サーバーAから転送されたApplicationAは利用可能と判断される。このようにソフトウェアの必要資源を全て利用可能な場合は、このソフトウェアを転送要求ソフトウェアリストに追加する(ST106)。
【0021】
以上のような処理(ST102〜ST107)をサーバーコンピュータから受信した提供可能ソフトウェアリストに含まれる全てのソフトウェアについて繰り返し、転送要求ソフトウェアリストが作成される(ST108)。転送要求ソフトウェアリストに要素がなく、転送すべきソフトウェアがない場合は、以上でクライアントコンピュータ2の処理を終了する(図9ST007)。
【0022】
転送すべきソフトウェアがある場合、クライアントコンピュータ2はサーバーコンピュータ1へ転送要求ソフトウェアリストを送る(ST008)。サーバーコンピュータ1は受信した転送要求ソフトウェアリストに含まれるそれぞれのソフトウェアデータをクライアントコンピュータ2に送信する。クライアントコンピュータ2は、各ソフトウェアを受信し、記憶手段5に格納する(ST009)。また、同時に受信済ソフトウェアリストも更新する。
【0023】
最後に、ソフトウェアのアイコンを登録する、インストーラを起動するなどのソフトウェアのインストール処理を行うことによって転送したソフトウェアが使用可能となる(ST010)。
【0024】
以上のようにこの実施の形態においては、クライアントコンピュータはサーバーコンピュータから提供可能なソフトウェアのリストを受信し、これに含まれるソフトウェアと受信済のソフトウェアとをハッシュ値によって比較し、同一性判定を行う。ハッシュ値として暗号分野でメッセージダイジェストと呼ばれるハッシュ関数などを用いれば、データの中身が同じ物かどうかをほとんど間違いなく判断することができる。
データ本体を転送せずに短いハッシュ値のみで比較するため、データ本体の2重転送を防止し、トラフィック、転送時間、通信料金などを削減することができる。また、データ本体の転送前に同一性判定を行うことができるため、同一名称のソフトウェアを上書きをするかどうかユーザーが判断に迷うことがない。更にハッシュ値を取扱うことでサーバもしくはそのソフトウェアの信頼度が高いことを確認できる。
【0025】
また、ソフトウェアが必要とする資源(リソース)情報と転送元サーバーコンピュータ毎に設定された利用制限資源情報テーブルを比較し、クライアントコンピュータ上で利用できないソフトウェアはダウンロードを阻止して、安全性を高め、かつ、トラフィック、転送時間を削減できる。サーバーコンピュータ毎に利用可能資源リストを設定することによって、信頼できるサーバーコンピュータからのソフトウェアの入手・最新バージョンへの更新を、ほとんど自動的に、簡単に行える。
また、信頼性が低いサーバーコンピュータに対しては利用可能資源リストでリソースの使用方法を制限するので、利用可能資源リストを超えるソフトウェアは転送を阻止して、安全性が高い。
【0026】
実施の形態2.
実施の形態1では、クライアントコンピュータ2が主体的にソフトウェアの転送の可否を判断していた。これに対して本実施の形態2においては、サーバコンピュータ側で転送の可否を判断する。なお、システム構成は実施の形態1の図4と同一である。
【0027】
次に、図4に示したシステムが本実施の形態で行う動作について、通信シーケンスを示す図10、サーバコンピュータ動作フローを示す図11およびクライアントコンピュータ動作フローを示す図12も参照しながら説明する。
ここでは、先の実施の形態と同様、サーバーコンピュータ1からクライアントコンピュータ2へソフトウェアを転送する。
【0028】
まず、ソフトウェアの転送元であるサーバーコンピュータ1がソフトウェアの転送先であるクライアントコンピュータ2に対してソフトウェア転送要求を送信する(ST201)。クライアントコンピュータ2は、ソフトウェア転送要求を受信すると(ST301)、ソフトウェア転送要求を送信したサーバーコンピュータ1が利用制限資源情報テーブル12に含まれているかどうかチェックする(ST302)。もし、サーバーコンピュータ1が利用制限資源情報テーブル12に含まれていない場合、表示手段8によって転送したソフトウェアに与える利用可能資源をユーザーに問い合わせる(ST303)。ユーザーは、操作手段9によってそのサーバーコンピュータ1に対する利用可能資源12−1を入力し、利用制限資源情報テーブル12を更新する(ST304)。もちろん、この処理を省いて、その新規サーバーコンピュータ1へは利用可能資源を割り当てないようにしてもよい。
【0029】
次に、クライアントコンピュータ2は、サーバコンピュータ1に対する利用可能資源リストを作成する(ST305−1)。図3はこの利用可能資源リストの作成処理の詳細を示すフローチャートであるが、この処理は先の実施の形態と同様であるのでここでは説明を省略する。そして作成されたサーバコンピュータ1に対する利用可能資源リストと受信済みソフトウェアリスト11を送信する(ST305−2)。
【0030】
次に、サーバーコンピュータ1が利用可能資源リストと受信済みソフトウェアリストを受信する(ST202)と、転送するソフトウェアを選択する(ST203)。
図13は、図11におけるソフトウェア選択処理ステップST203の詳細を示した動作フローチャートである。即ち、サーバーコンピュータ1は、クライアントコンピュータ2に転送するソフトウェアのリストである転送ソフトウェアリストを初期化(ST401)した後、提供可能ソフトウェアリスト10に含まれる各ソフトウェアについて以下のような処理を繰り返す(ST402〜ST407)。
【0031】
まず、サーバーコンピュータ1は提供可能ソフトウェアと同名のソフトウェアがクライアントコンピュータ1から受信した受信済ソフトウェアリストに含まれているかどうかチェックする(ST403)。同名のソフトウェアがある場合は、さらにそのハッシュ値を比較する(ST404)。ハッシュ値が同じ場合は、そのソフトウェアは受信済のソフトウェアと同一のものであるとみなし、転送する準備をやめて、次の提供可能ソフトウェアの処理に移る。
【0032】
同名のソフトウェアがない場合、またはハッシュ値が異なりバージョンの更新がある場合は、その提供可能ソフトウェアの必要資源(リソース)と送られてきたクライアントコンピュータの利用可能資源リストを比較し、転送が可能かをチェックする(ST405)。利用可能な場合、このソフトウェアを転送ソフトウェアリストに追加する(ST406)。
以上のような処理(ST402〜ST407)を提供可能ソフトウェアリスト10に含まれる全てのソフトウェアについて繰り返し、転送ソフトウェアリストが作成される。転送ソフトウェアリストに要素がなく、転送すべきソフトウェアがない場合は、以上でサーバコンピュータ1の処理を終了する(ST204)。転送すべきソフトウェアがある場合、サーバーコンピュータ1はクライアントコンピュータ2へ転送ソフトウェアリストに含まれるソフトウェアを送信する(ST205)。
【0033】
クライアントコンピュータ2は、各ソフトウェアを受信し、記憶手段5に格納する(ST306)。また、同時に受信済ソフトウェアリストも更新する。
最後に、クライアントコンピュータ2は、ソフトウェアのアイコンを登録する、インストーラを起動するなどのソフトウェアのインストール処理を行うことによって転送したソフトウェアが使用可能となる(ST307)。
【0034】
以上のようにこの実施の形態においては、サーバーコンピュータが主体的に、クライアントコンピュータから受信済みソフトウェアのリストを受信し、これに含まれるソフトウェアと提供可能なソフトウェアとをハッシュ値によって比較し、同一性判定を行う。データ本体を転送せずに短いハッシュ値のみで比較するため、データ本体の2重転送を防止し、無駄な転送を防止できる。
また、サーバーコンピュータはクライアントコンピュータからサーバー毎に用意された利用可能資源リストを受信し、これと転送するソフトウェアが必要とする資源(リソース)情報とを比較して事前に転送の可否を決めることができる。
【0035】
【発明の効果】
以上のようにこの発明の実施の形態によれば、転送元コンピュータ毎に利用可能資源リストを記載した利用制限資源テーブルを設け、この条件に合致するか調べる資源利用可否判断処理ステップを備えたので、信頼性の低い転送元コンピュータからのソフトウェアを阻止し、無駄な転送を防いで安全性を高められる効果がある。
【0036】
また更に、転送するソフトウェアの同一性判定を圧縮値であるハッシュ値で行うようにしたので、同一バージョンのソフトウェアの転送を防いで、トラフィック、通信時間を削減できる効果もある。
【図面の簡単な説明】
【図1】 本発明の実施の形態1における受信ソフトウェア選択処理ステップの詳細を示すフローチャート図である。
【図2】 図1中の必要資源は利用可能か判定ステップの更に詳細を示すフローチャート図である。
【図3】 図1中の利用可能資源リスト作成ステップの更に詳細を示すフローチャート図である。
【図4】 本発明のネットワークを介したサーバコンピュータとクライアントコンピュータで構成されたソフトウェア転送システムの構成図である。
【図5】 実施の形態1と実施の形態2におけるサーバコンピュータ内の提供可能ソフトウェアリスト10の例を示す図である。
【図6】 実施の形態1と実施の形態2におけるクライアントコンピュータ内の受信済ソフトウェアリスト11の例を示す図である。
【図7】 実施の形態1と実施の形態2におけるクライアントコンピュータ内の利用制限資源情報テーブル12の例を示す図である。
【図8】 本発明の実施の形態1におけるソフトウェア転送時のサーバとクライアント間の通信シーケンス図である。
【図9】 本発明の実施の形態1におけるクライアントコンピュータ2が行う全体の基本処理を示す動作フローチャート図である。
【図10】 本発明の実施の形態2におけるソフトウェア転送時のサーバとクライアント間の通信シーケンス図である。
【図11】 本発明の実施の形態2におけるサーバーコンピュータ1が行う全体の基本処理を示す動作フローチャート図である。
【図12】 実施の形態2におけるクライアントコンピュータ2が行う全体の基本処理を示す動作フローチャート図である。
【図13】 図11中の転送ソフトウェア選択処理ステップの詳細を示すフローチャート図である。
【図14】 従来のオンラインローディングによるソフトウェア転送方式を示す図である。
【図15】 従来のオンライン・ローディングにおける通信シーケンス図である。
【図16】 実施の形態1と実施の形態2における利用可能資源リストの例を示す図である。
【符号の説明】
1 サーバーコンピュータ、2 クライアントコンピュータ、3 ネットワーク、4 ソフトウェア転送サーバー処理手段、5 記憶手段、6 通信手段、7ソフトウェア転送クライアント処理手段、8 表示手段、9 操作手段、10提供可能ソフトウェアリスト、10−2 ハッシュ値、11 受信済みソフトウェアリスト、11−2 ハッシュ値、12 利用制限資源情報テーブル、12−1 利用可能資源、ST101−1利用可能資源リスト作成ステップ、ST105 必要資源は利用可能か判定(資源利用可否判断処理)ステップ。
[0001]
BACKGROUND OF THE INVENTION
  The present invention selects necessary software when transferring software between computers via a network.System and its transferIt is about the method.
[0002]
[Prior art]
In a computer system that transfers data between two or more devices, for example, there is an online load system in which software desired by a user is transferred via a network.
[0003]
FIG. 14 is a configuration diagram of a system for online loading software via a conventional network. In the figure, at least one server computer 1 and at least one client computer 2 are connected via a network 3.
The server computer 1 is composed of communication means 6 for communicating with other computers via the network 3, software transfer server processing means 4 for controlling software transfer, storage means 5 for storing software, and the like. Yes.
The client computer 2 includes communication means 6 for communicating with other computers via the network 3, software transfer client processing means 7 for controlling software transfer, storage means 5 for storing software, and displaying information to the user. Display means 8 to be operated, and operation means 9 for the user to operate the software transfer client processing means 7.
[0004]
Next, in the system shown in the figure, the operation when transferring software will be described with reference to FIG. 15 showing a communication sequence between them.
First, when the user designates the server computer 1 to be connected by the operation means 9 of the client computer 2, the connection is requested to the designated server computer 1 and the connection is established. Next, the client computer 2 requests and receives a list of software from the server computer 1 and presents it to the user by the display means 8. Next, when the user selects software to be transferred by the operation means 9 of the client computer 2, the selected software is requested from the server computer 1, received, and stored in the storage means 5. Repeat this process for all software to be transferred.
When all the software has been transferred, the connection between the client computer 2 and the server computer 1 is disconnected by the user's operation.
[0005]
[Problems to be solved by the invention]
The conventional software transfer method operates as described above and transfers without checking the reliability of the transfer source server or the software of the server, so that the received software is the client's existing software or data. There has been a problem that concerns remain about whether or not it will adversely affect the environment.
Furthermore, since only the software name is transferred at the time of transfer, there is a problem that the already installed software is transferred again to waste time.
[0006]
  The present invention has been made to solve the above-mentioned problems, and software transfer that has already been installed and is safe without affecting the data and prevents unnecessary transfer.systemThe purpose is to obtain.
[0007]
[Means for Solving the Problems]
  According to this inventionSoftware transfer system
  A server computer for transferring software over a network;
  A client computer having resources used by the software;
In a software transfer system with
  The server computer
  Storage means for storing software that uses a predetermined resource as a required resource at the time of execution;
  A list of software that can be provided that describes the software names of the software stored in the storage means and the necessary resources used by the software;
  Software transfer server processing means for controlling the transfer of software;
  Server communication means for communicating with a client computer via a network;
With
  The above client computer,
  A resource information table for storing resource information indicating allocated resources allocated to the server computer among the resources of the client;
  Software transfer client processing means for controlling the transfer of software;
  Client communication means for communicating with a server computer via a network;
With
  The client computer
  The client communication means receives the software list that can be provided from the server computer,
  The software transfer client processing means compares the necessary resource of the software described in the available software list with the allocated resource indicated by the resource information stored in the resource information table, and sends it to the server computer that has transmitted the available software list. Determining whether the corresponding allocated resource satisfies the necessary resource of the software described in the list of available software,
  The client communication means requests the server computer as transfer request software for software in which the allocated resource satisfies the required resource,
  The server computer
  The software transfer server processing means selects the requested software as the transfer request software from the software stored in the storage means as the transfer software,
  The transfer software is transmitted to the client computer by server communication means.
It is characterized by that.
[0008]
  The above list of available software is
  Enter the software hash value along with the software name and required resources of the software,
  The client computer further includes:
  It has a received software list that contains the software name of the installed software and the hash value of the installed software,
  The client computer
  Software whose software name and hash value described in the list of available software are the same as the software name of installed software and the hash value of installed software described in the received software list. transferrequestIt is excluded from the software.
[0009]
DETAILED DESCRIPTION OF THE INVENTION
Embodiment 1 FIG.
If reliable software from a specific contracted server can be used, there is no problem, but if the client uses software that has not yet been installed from the destination to transfer from a nearby server, there is a safety concern. . A transfer method that is secure even for such a transfer in need is described.
FIG. 9 is a flowchart showing the basic operation of the client computer according to Embodiment 1 of the present invention. 1 is a flowchart showing details of step ST006 in FIG. 9, FIG. 2 is a flowchart showing details of step ST105 in FIG. 1, and FIG. 3 shows details of step ST101-1 in FIG. It is a flowchart.
[0010]
FIG. 4 shows a system configuration according to Embodiment 1 of the present invention. In FIG. 4, at least one server computer 1 and at least one client computer 2 are connected via a network 3. The server computer 1 stores communication means 6 for communicating with other computers via the network 3, software transfer server processing means 4 for controlling software transfer, and software that can be provided to the client computer 2. The storage unit 5 and the software provision list 10 that is a list of attribute information of each software are configured.
[0011]
FIG. 5 is a diagram showing an example of the software list 10 that can be provided in the server computer 1, and is indispensable for using the software name, size, date of last update, hash value, and corresponding software as attribute information of each software. The necessary resources that are assets (resources) are included.
The necessary resource 10-1 shown in the figure requires 25 KB as a memory and a display device having a size of 480 × 200 dots, or a file requires writing and reading operations, or software is application B. It is necessary to use the program.
The hash value 10-2 is a compressed value of software data compressed by a hash function that compresses arbitrary length data to a smaller data length (for example, 128 bits). This hash function called a message digest is used in cryptography and has a property that it is difficult to find original data having the same hash value. Therefore, if the hash values of the two data are compared, it can be almost certainly determined whether the contents of the data are the same.
[0012]
The client computer 2 is stored in the communication means 6, software transfer client processing means 7 for controlling the transfer of software, storage means 5 for storing software transferred from the server computer 1, and storage means 5. Received software list 11 that is a list of attribute information of each software, use restricted resource information table 12 that is resource information that can be used by the transferred software, display means 8 that displays information to the user, user The operation means 9 for operating the software transfer client processing means is connected and configured via a bus.
[0013]
FIG. 6 is a diagram illustrating an example of the received software list 11 in the client computer 2, and includes software name, size, last update date / time, hash value 11-2, transfer source server computer, and the like as attribute information of each software. It is.
FIG. 7 is a diagram showing an example of the use restricted resource information table 12 and shows resources (resources) that can be used by the software transfer source for each server computer. For example, software transferred from server A can use file reading / writing, network connection and memory up to 50 KB, and software transferred from server B can use file reading and memory up to 10 KB. This shows that the software transferred from the server C can read and write files and use up to 80 KB of memory. The software transferred from all server computers (all servers) indicates that a 640 × 400 dot display device can be used.
[0014]
Next, operations performed by the system shown in FIG. 4 will be described with reference to FIG. 8 showing the communication sequence between the server and the client and FIG. 9 showing the basic operation flow of the client computer.
Here, the software is transferred from the server computer 1 to the client computer 2.
First, the client computer 2 requests a software list that can be provided to the server computer 1 (ST001). At this time, if the server computer 1 is unknown, the request may be made by broadcast transmission (transmission to all computers connected to the network 3). The server computer 1 responds to this inquiry with a software list that can be provided (ST002).
[0015]
In response to this request, the server computer 1 first transmits a software list that can be provided. Receiving this, the client computer 2 checks whether or not the transmitted server computer 1 is a server included in its use restriction resource information table 12 (ST003). If the responding server computer 1 is not included in the use restricted resource information table 12, the display unit 8 inquires of the user about available resources to be given to the transferred software (ST004). The user inputs the use restriction resource for the server computer responded by the operation means 9, and updates the use restriction resource information table 12 (ST005).
Of course, it is also possible not to allocate available resources to server computers that are not stored in the restricted use resource information table 12 without making an inquiry to the user.
[0016]
  Next, in step ST006, the client computer 2 selects the software to be transferred from the received available software list 10 by the process shown in the detailed flow in FIG. The client computer 2 performs processing ST101-1 for creating an available resource list.
  FIG. 3 is a flowchart showing further details of the available resource list and creation processing step ST101-1 in FIG. Here, a list of all resources that can be used by the software transmitted from the transmission source server (available resource list) is created.
  First, the available resource list is initialized (ST601).
  Next, it is checked whether or not there is a transmission source server column in the use restricted resource information table 12 (ST602), and if there is, the available resource is added to the available resource list (ST603).
  Next, it is checked whether or not there is a column for all servers in the use restricted resource information table 12 (ST604). If there is, the available resource is added to the available resource list (ST605).
  The available resource list in FIG. 16 is an example of the available resource list created as described above. The available resource list that is different for each transfer source server in FIG. 7 and the available resources common to all servers are combined. It has become a thing. FIG.IsFIG. 7 is an available resource list created when software is transferred from the server A in the example of the usage restriction information table of FIG. 7, and combines the available resources for the server A and the available resources for all servers. Yes.
  Next, the client computer 2 initializes a transfer request software list, which is a list of software requesting the server computer 1 to transfer (FIG.1, ST101-2), the following processing (ST102 to ST107) is repeated for each software included in the available software list.
[0017]
First, the client computer 2 checks whether software having the same name as the software that can be provided is included in the received software list 11 (ST103). If there is software with the same name, the hash values are further compared (ST104). If the hash values are the same, it is assumed that the software is the same as the received software, no transfer request is made, and the process proceeds to the next available software.
When there is no software with the same name, or when it is considered that the software has been updated with a different hash value, the necessary resources (resources) of the software that can be provided are compared with the use restricted resource information table 12, and the resources that the software requires Are checked (ST105).
[0018]
This necessary resource determination step ST105 further comprises the detailed operation flow of FIG. 2, and is a resource availability determination process ST700 comprising ST701 to ST707. That is, it is checked whether all necessary resources of the software are available.
First, it is checked whether the name of the necessary resource 10-1 such as “MEMORY.USE” is included in the available resource list (ST702). If the required resource name is not included in the available resource list, it is determined that the required resource is not available, and the process ends (ST707).
If the necessary resource name is included in the available resource list, the option conditions that differ for each resource are also checked (ST703). This optional condition indicates a condition such as a different size for each resource, such as “25 KB” for a memory or “480 × 200 dots” for a display device, and the determination process differs for each resource. Of course, it is not always necessary to set the option condition. In this case, it is determined that the option condition is satisfied.
[0019]
If the optional condition is not satisfied, it is checked whether the necessary resource name is included in the available resource list (ST704). If it is included, the option condition is checked again (ST703). If the required resource name is not included in the available resource list, it is determined that the required resource is not available, and the process is terminated (ST707).
If the optional condition is satisfied, it is determined that the necessary resources being processed are available, and the process proceeds to the next process (ST705).
As described above, for each necessary resource of the software to be transmitted, it is repeatedly checked whether the resource is available. If it is determined that all necessary resources are available, it is determined that all necessary software resources are available, and the process is terminated (ST707).
[0020]
In the example of the software list 10 that can be provided in FIG. 5, ApplicationA requires a display device of 480 × 200 dots or more and a memory of 25 KB or more. When this is transferred from the server A to the client computer 2 having the use restricted resource information table 12 of FIG. 7, the resources that can be used by the software transferred from the server A are read from the file indicated by the available resource list of FIG. A writing and network connection, a memory within 50 KB, and a display device of 640 × 400 dots.
In the case of this example, since the resource that requires Application A is included in the available resource list (FIG. 16) created by the client computer 2, it is determined that Application A transferred from the server A is available. When all necessary software resources are available in this way, this software is added to the transfer request software list (ST106).
[0021]
The above processing (ST102 to ST107) is repeated for all the software included in the available software list received from the server computer, and a transfer request software list is created (ST108). If there is no element in the transfer request software list and there is no software to be transferred, the processing of the client computer 2 is completed (ST007 in FIG. 9).
[0022]
If there is software to be transferred, the client computer 2 sends a transfer request software list to the server computer 1 (ST008). The server computer 1 transmits each software data included in the received transfer request software list to the client computer 2. The client computer 2 receives each software and stores it in the storage means 5 (ST009). At the same time, the received software list is updated.
[0023]
Finally, the transferred software can be used by performing software installation processing such as registering software icons and activating an installer (ST010).
[0024]
As described above, in this embodiment, the client computer receives the list of software that can be provided from the server computer, compares the software included in the list with the received software, and determines the identity. . If a hash function called a message digest in the encryption field is used as the hash value, it can be almost certainly determined whether the data contents are the same.
Since the comparison is made only with a short hash value without transferring the data main body, double transfer of the data main body can be prevented, and traffic, transfer time, communication fee, etc. can be reduced. In addition, since the identity determination can be performed before the data body is transferred, the user does not hesitate to determine whether to overwrite the software with the same name. Furthermore, it is possible to confirm that the reliability of the server or its software is high by handling the hash value.
[0025]
In addition, the resource information required by the software is compared with the usage-restricted resource information table set for each transfer source server computer, and software that cannot be used on the client computer is prevented from being downloaded, improving safety, In addition, traffic and transfer time can be reduced. By setting an available resource list for each server computer, it is possible to obtain software from a reliable server computer and update to the latest version almost automatically and easily.
Further, since the use method of the resource is restricted by the available resource list for the server computer having low reliability, the software exceeding the available resource list is prevented from being transferred and is highly secure.
[0026]
Embodiment 2. FIG.
In the first embodiment, the client computer 2 has determined whether or not software transfer is possible. On the other hand, in the second embodiment, the server computer side determines whether transfer is possible. The system configuration is the same as FIG. 4 of the first embodiment.
[0027]
Next, operations performed by the system shown in FIG. 4 according to the present embodiment will be described with reference to FIG. 10 showing a communication sequence, FIG. 11 showing a server computer operation flow, and FIG. 12 showing a client computer operation flow.
Here, as in the previous embodiment, the software is transferred from the server computer 1 to the client computer 2.
[0028]
First, the server computer 1 that is the software transfer source transmits a software transfer request to the client computer 2 that is the software transfer destination (ST201). Upon receiving the software transfer request (ST301), the client computer 2 checks whether the server computer 1 that transmitted the software transfer request is included in the use restricted resource information table 12 (ST302). If the server computer 1 is not included in the use restricted resource information table 12, the user is inquired about available resources to be given to the software transferred by the display means 8 (ST303). The user inputs the usable resource 12-1 for the server computer 1 through the operating means 9, and updates the use restricted resource information table 12 (ST304). Of course, this process may be omitted and no available resources may be allocated to the new server computer 1.
[0029]
Next, the client computer 2 creates an available resource list for the server computer 1 (ST305-1). FIG. 3 is a flowchart showing details of the processing for creating the available resource list, but since this processing is the same as that of the previous embodiment, the description thereof is omitted here. Then, the available resource list and the received software list 11 for the created server computer 1 are transmitted (ST305-2).
[0030]
Next, when the server computer 1 receives the available resource list and the received software list (ST202), the software to be transferred is selected (ST203).
FIG. 13 is an operation flowchart showing details of the software selection processing step ST203 in FIG. That is, the server computer 1 initializes a transfer software list that is a list of software to be transferred to the client computer 2 (ST401), and then repeats the following processing for each software included in the software list 10 that can be provided (ST402). ~ ST407).
[0031]
First, the server computer 1 checks whether software having the same name as the software that can be provided is included in the received software list received from the client computer 1 (ST403). If there is software with the same name, the hash values are further compared (ST404). If the hash values are the same, the software is considered to be the same as the received software, the preparation for transfer is stopped, and the processing of the next available software is started.
[0032]
If there is no software with the same name, or if the hash value is different and there is a version update, the required resources (resources) of the software that can be provided are compared with the available resource list of the client computer sent, and transfer is possible Is checked (ST405). If available, this software is added to the transfer software list (ST406).
The above processing (ST402 to ST407) is repeated for all software included in the software list 10 that can be provided, and a transfer software list is created. If there is no element in the transfer software list and there is no software to be transferred, the processing of the server computer 1 is ended (ST204). If there is software to be transferred, server computer 1 transmits the software included in the transfer software list to client computer 2 (ST205).
[0033]
The client computer 2 receives each software and stores it in the storage means 5 (ST306). At the same time, the received software list is updated.
Finally, the client computer 2 can use the transferred software by performing software installation processing such as registering software icons and starting an installer (ST307).
[0034]
As described above, in this embodiment, the server computer mainly receives the list of received software from the client computer, compares the software included in this list with the software that can be provided by the hash value, and the identity. Make a decision. Since comparison is performed using only a short hash value without transferring the data body, double transfer of the data body can be prevented, and useless transfer can be prevented.
Further, the server computer receives the available resource list prepared for each server from the client computer, and compares this with the resource information required by the software to be transferred, and determines whether transfer is possible in advance. it can.
[0035]
【The invention's effect】
  As described above, the present inventionEmbodimentAccording to the present invention, the use restricted resource table describing the available resource list is provided for each transfer source computer, and the resource use availability determination processing step for checking whether this condition is met is provided. It has the effect of blocking software, preventing unnecessary transfers and improving security.
[0036]
Furthermore, since the identity determination of the software to be transferred is performed with the hash value that is a compressed value, it is possible to prevent the transfer of the same version of the software and reduce the traffic and communication time.
[Brief description of the drawings]
FIG. 1 is a flowchart showing details of a received software selection processing step in Embodiment 1 of the present invention.
FIG. 2 is a flowchart showing further details of a step of determining whether the necessary resources in FIG. 1 are available.
FIG. 3 is a flowchart showing further details of an available resource list creation step in FIG. 1;
FIG. 4 is a configuration diagram of a software transfer system including a server computer and a client computer via a network according to the present invention.
FIG. 5 is a diagram showing an example of a software list 10 that can be provided in a server computer according to the first and second embodiments.
6 is a diagram showing an example of a received software list 11 in a client computer according to Embodiment 1 and Embodiment 2. FIG.
FIG. 7 is a diagram showing an example of a use restricted resource information table 12 in the client computer in the first embodiment and the second embodiment.
FIG. 8 is a communication sequence diagram between a server and a client during software transfer according to Embodiment 1 of the present invention.
FIG. 9 is an operation flowchart showing overall basic processing performed by the client computer 2 according to Embodiment 1 of the present invention;
FIG. 10 is a communication sequence diagram between a server and a client during software transfer according to Embodiment 2 of the present invention.
FIG. 11 is an operation flowchart showing overall basic processing performed by the server computer 1 according to Embodiment 2 of the present invention.
FIG. 12 is an operation flowchart illustrating overall basic processing performed by the client computer 2 according to the second embodiment.
13 is a flowchart showing details of a transfer software selection processing step in FIG. 11. FIG.
FIG. 14 is a diagram illustrating a conventional software transfer method using online loading.
FIG. 15 is a communication sequence diagram in conventional online loading.
FIG. 16 is a diagram showing an example of an available resource list in the first embodiment and the second embodiment.
[Explanation of symbols]
1 server computer, 2 client computer, 3 network, 4 software transfer server processing means, 5 storage means, 6 communication means, 7 software transfer client processing means, 8 display means, 9 operation means, 10 list of available software, 10-2 Hash Value, 11 Received Software List, 11-2 Hash Value, 12 Usage Restricted Resource Information Table, 12-1 Available Resource, ST101-1 Available Resource List Creation Step, ST105 Judge Whether Necessary Resource is Available (Resource Usage Acceptability determination process) step.

Claims (2)

ネットワークを介してソフトウェアの転送を行うサーバコンピュータと、
ソフトウェアが使用する資源を有するクライアントコンピュータと
を備えたソフトウェア転送システムにおいて、
上記サーバコンピュータは、
実行時に所定の資源を必要資源として使用するソフトウェアを記憶する記憶手段と、
上記記憶手段に記憶されたソフトウェアのソフトウェア名とそのソフトウェアが使用する必要資源とを記載した提供可能ソフトウェアリストと、
ソフトウェアの転送を制御するソフトウェア転送サーバ処理手段と、
ネットワークを介してクライアントコンピュータと通信するサーバ通信手段と
を備え、
上記クライアントコンピュータは、
上記クライアントが有する資源のうちサーバコンピュータに対応して割り当てられた割当資源を示す資源情報を記憶する資源情報テーブルと、
ソフトウェアの転送を制御するソフトウェア転送クライアント処理手段と、
ネットワークを介してサーバコンピュータと通信するクライアント通信手段と
を備え、
上記クライアントコンピュータは、
クライアント通信手段により、上記サーバコンピュータから上記提供可能ソフトウェアリストを受信し、
ソフトウェア転送クライアント処理手段により、提供可能ソフトウェアリストに記載されたソフトウェアの必要資源と資源情報テーブルに記憶された資源情報が示す割当資源とを比較して、上記提供可能ソフトウェアリストを送信したサーバコンピュータに対応して割り当てられた割当資源が上記提供可能ソフトウェアリストに記載されたソフトウェアの必要資源を満足するか否かを判断し、
クライアント通信手段により、上記割当資源が上記必要資源を満足するソフトウェアを転送要求ソフトウェアとして上記サーバコンピュータに要求し、
上記サーバコンピュータは、
ソフトウェア転送サーバ処理手段により、記憶手段に記憶されたソフトウェアの中から、上記転送要求ソフトウェアとして要求されたソフトウェアを転送ソフトウェアとして選択して、
サーバ通信手段により、上記転送ソフトウェアを上記クライアントコンピュータに送信する
ことを特徴とするソフトウェア転送システム。
A server computer for transferring software over a network;
In a software transfer system comprising a client computer having resources used by software,
The server computer
Storage means for storing software that uses a predetermined resource as a required resource at the time of execution;
A list of software that can be provided that describes the software names of the software stored in the storage means and the necessary resources used by the software;
Software transfer server processing means for controlling the transfer of software;
Server communication means for communicating with a client computer via a network,
The client computer
A resource information table for storing resource information indicating allocated resources allocated to the server computer among the resources of the client;
Software transfer client processing means for controlling the transfer of software;
Client communication means for communicating with a server computer via a network,
The client computer
The client communication means receives the software list that can be provided from the server computer,
The software transfer client processing means compares the necessary resource of the software described in the available software list with the allocated resource indicated by the resource information stored in the resource information table, and sends it to the server computer that has transmitted the available software list. Determining whether the corresponding allocated resource satisfies the necessary resource of the software described in the list of available software,
The client communication means requests the server computer as transfer request software for software in which the allocated resource satisfies the required resource,
The server computer
The software transfer server processing means selects the requested software as the transfer request software from the software stored in the storage means as the transfer software,
A software transfer system, wherein the transfer software is transmitted to the client computer by server communication means.
上記提供可能ソフトウェアリストは、
ソフトウェアのソフトウェア名と必要資源とともにソフトウェアのハッシュ値を記載し、
上記クライアントコンピュータは、さらに、
インストール済みのソフトウェアのソフトウェア名とインストール済みのソフトウェアのハッシュ値とを記載した受信済みソフトウェアリストを備え、
上記クライアントコンピュータは、
上記提供可能ソフトウェアリストに記載されたソフトウェアのソフトウェア名とハッシュ値とが、受信済みソフトウェアリストに記載されたインストール済みのソフトウェアのソフトウェア名とインストール済みのソフトウェアのハッシュ値とにそれぞれ一致するソフトウェアを、上記転送要求ソフトウェアから除外することを特徴とする請求項1記載のソフトウェア転送システム。
The above list of available software is
Enter the software hash value along with the software name and required resources of the software,
The client computer further includes:
It has a received software list that includes the software name of the installed software and the hash value of the installed software,
The client computer
Software whose software name and hash value listed in the list of available software are the same as the software name of installed software and the hash value of installed software listed in the received software list. 2. The software transfer system according to claim 1, wherein the software transfer system is excluded from the transfer request software.
JP06619299A 1999-03-12 1999-03-12 Software transfer system Expired - Fee Related JP4370018B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP06619299A JP4370018B2 (en) 1999-03-12 1999-03-12 Software transfer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP06619299A JP4370018B2 (en) 1999-03-12 1999-03-12 Software transfer system

Publications (2)

Publication Number Publication Date
JP2000259421A JP2000259421A (en) 2000-09-22
JP4370018B2 true JP4370018B2 (en) 2009-11-25

Family

ID=13308747

Family Applications (1)

Application Number Title Priority Date Filing Date
JP06619299A Expired - Fee Related JP4370018B2 (en) 1999-03-12 1999-03-12 Software transfer system

Country Status (1)

Country Link
JP (1) JP4370018B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002202913A (en) 2000-11-02 2002-07-19 Sony Computer Entertainment Inc Terminal device, entertainment system, handling method of content, storage medium having information processing program stored therein, and information processing program
JP2002312707A (en) * 2001-04-13 2002-10-25 Dainippon Printing Co Ltd Account settlement processing method using credit card
JP4862346B2 (en) * 2005-10-17 2012-01-25 富士ゼロックス株式会社 Download system and program
JP4969480B2 (en) * 2008-02-21 2012-07-04 株式会社リコー Image forming apparatus, information processing method, and information processing program
US20110238980A1 (en) 2010-03-23 2011-09-29 Fujitsu Limited System and methods for remote maintenance in an electronic network with multiple clients
JP5395967B1 (en) 2013-02-19 2014-01-22 株式会社 ディー・エヌ・エー Data processing system, information terminal, data processing method, and data processing program

Also Published As

Publication number Publication date
JP2000259421A (en) 2000-09-22

Similar Documents

Publication Publication Date Title
EP2122476B1 (en) Bidirectional dynamic offloading of tasks between a host and a mobile device
KR101046472B1 (en) Automated remote site download on geographic drives
US7552265B2 (en) System and method for providing context information
US6996599B1 (en) System and method providing multi-tier applications architecture
US6195677B1 (en) Distributed network computing system for data exchange/conversion between terminals
JP4938011B2 (en) File management system and method, and portable terminal device
EP3203709B1 (en) Cloud service server and method for managing cloud service server
US6775700B2 (en) System and method for common information model object manager proxy interface and management
US20050216473A1 (en) P2P network system
CN102597947B (en) The content under mathematic for business rights management is browsed without the need to client-access assembly
JP2004086895A (en) System and method for enabling components on arbitrary networks to communicate
EP1349062A2 (en) Download management system
JP2004533039A (en) Method and system for file sharing in a network
US7873707B1 (en) Client-side URL rewriter
JP2010273045A (en) Server apparatus
JP4370018B2 (en) Software transfer system
JP4921072B2 (en) Image forming apparatus, resource holding apparatus, image forming system, resource request method, resource holding method, resource management method, program
JP4989935B2 (en) Session management method, server used therefor, session management program, and recording medium recording the program
WO2004019208A2 (en) Method and apparatus for just-in-time provisioning application-related information at a communication device
JP2005293492A (en) Server, terminal, and information system
KR101065939B1 (en) Resource common security for devide to device system and resource common method for devide to device
CN110191203A (en) Realize the method and electronic equipment of server dynamic access
JP5949552B2 (en) Access control information generation system
JP5091003B2 (en) Information processing system, information processing method, program, and recording medium
JP4632450B2 (en) COMMUNICATION DEVICE AND ITS CONTROL METHOD

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20060111

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060117

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081028

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090120

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090714

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090731

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

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

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130904

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees