(57)【特許請求の範囲】
【請求項１】
コンピュータに、
端末装置について、ホスト名と物理アドレスと資源の配布履歴情報とを関連付けて記憶部に記憶し、
前記端末装置に資源を配布する際に、配布先の端末装置のホスト名、物理アドレス、および、前記配布先の端末装置が接続した過去の接続サーバを特定する情報を取得し、前記配布先の端末装置と一致するホスト名または物理アドレスと関連付けて前記記憶部に記憶された配布履歴情報を前記配布先の端末装置に対応する配布履歴情報と特定し、
前記配布先の端末装置と一致するホスト名または物理アドレスと関連付けられた配布履歴情報が前記記憶部に記憶されておらず、かつ前記過去の接続サーバが前記コンピュータと異なる場合、前記過去の接続サーバに問合せを行い、前記過去の接続サーバの配布実績情報を記憶する他の記憶部に、前記配布先の端末装置と一致するホスト名または物理アドレスと関連付けられた配布履歴情報が記憶されているかを確認する、
処理を実行させることを特徴とする配布履歴管理プログラム。
【請求項２】
前記配布先の端末装置と一致するホスト名または物理アドレスと関連付けられた配布履歴情報が前記他の記憶部に記憶されている場合、当該配布履歴情報を前記配布先の端末装置に対応する配布履歴情報と特定して、前記コンピュータの前記記憶部に移行する、
ことを特徴とする請求項１記載の配布履歴管理プログラム。
【請求項３】
コンピュータに、
端末装置について、ホスト名と物理アドレスと資源の配布履歴情報とを関連付けて記憶部に記憶し、
前記端末装置に資源を配布する際に、配布先の端末装置のホスト名または物理アドレスと関連付けられた配布履歴情報が前記記憶部に記憶されているかの問合せを受信し、前記配布先の端末装置と一致するホスト名または物理アドレスと関連付けられた配布履歴情報が前記記憶部に記憶されている場合、当該配布履歴情報を前記配布先の端末装置に対応する配布履歴情報と特定し、特定した配布履歴情報を問い合わせ元の装置に送信し、
前記問い合わせ元の装置に送信した配布履歴情報を前記記憶部から削除する、
処理を実行させることを特徴とする配布履歴管理プログラム。
【請求項４】
端末装置について、ホスト名と物理アドレスと資源の配布履歴情報とを関連付けて記憶する記憶部と、
前記端末装置に資源を配布する際に、配布先の端末装置のホスト名、物理アドレス、および、前記配布先の端末装置が接続した過去の接続サーバを特定する情報を取得し、前記配布先の端末装置と一致するホスト名または物理アドレスと関連付けて前記記憶部に記憶された配布履歴情報を前記配布先の端末装置に対応する配布履歴情報と特定し、前記配布先の端末装置と一致するホスト名または物理アドレスと関連付けられた配布履歴情報が前記記憶部に記憶されておらず、かつ前記過去の接続サーバが自装置と異なる場合、前記過去の接続サーバに問合せを行い、前記過去の接続サーバの配布実績情報を記憶する他の記憶部に、前記配布先の端末装置と一致するホスト名または物理アドレスと関連付けられた配布履歴情報が記憶されているかを確認する演算部と、
を有することを特徴とする配布履歴管理装置。
【請求項５】
端末装置について、ホスト名と物理アドレスと資源の配布履歴情報とを関連付けて記憶する記憶部と、
前記端末装置に資源を配布する際に、配布先の端末装置のホスト名または物理アドレスと関連付けられた配布履歴情報が前記記憶部に記憶されているかの問合せを受信し、前記配布先の端末装置と一致するホスト名または物理アドレスと関連付けられた配布履歴情報が前記記憶部に記憶されている場合、当該配布履歴情報を前記配布先の端末装置に対応する配布履歴情報と特定し、特定した配布履歴情報を問い合わせ元の装置に送信し、前記問い合わせ元の装置に送信した配布履歴情報を前記記憶部から削除する演算部と、
を有することを特徴とする配布履歴管理装置。
【請求項６】
コンピュータが、
端末装置について、ホスト名と物理アドレスと資源の配布履歴情報とを関連付けて記憶部に記憶し、
前記端末装置に資源を配布する際に、配布先の端末装置のホスト名、物理アドレス、および、前記配布先の端末装置が接続した過去の接続サーバを特定する情報を取得し、前記配布先の端末装置と一致するホスト名または物理アドレスと関連付けて前記記憶部に記憶された配布履歴情報を前記配布先の端末装置に対応する配布履歴情報と特定し、
前記配布先の端末装置と一致するホスト名または物理アドレスと関連付けられた配布履歴情報が前記記憶部に記憶されておらず、かつ前記過去の接続サーバが前記コンピュータと異なる場合、前記過去の接続サーバに問合せを行い、前記過去の接続サーバの配布実績情報を記憶する他の記憶部に、前記配布先の端末装置と一致するホスト名または物理アドレスと関連付けられた配布履歴情報が記憶されているかを確認する、
ことを特徴とする配布履歴管理方法。
【請求項７】
コンピュータが、
端末装置について、ホスト名と物理アドレスと資源の配布履歴情報とを関連付けて記憶部に記憶し、
前記端末装置に資源を配布する際に、配布先の端末装置のホスト名または物理アドレスと関連付けられた配布履歴情報が前記記憶部に記憶されているかの問合せを受信し、前記配布先の端末装置と一致するホスト名または物理アドレスと関連付けられた配布履歴情報が前記記憶部に記憶されている場合、当該配布履歴情報を前記配布先の端末装置に対応する配布履歴情報と特定し、特定した配布履歴情報を問い合わせ元の装置に送信し、
前記問い合わせ元の装置に送信した配布履歴情報を前記記憶部から削除する、
ことを特徴とする配布履歴管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は配布履歴管理プログラム、配布履歴管理装置および配布履歴管理方法に関する。
【背景技術】
【０００２】
サーバコンピュータ（サーバと称する）およびクライアントコンピュータ（クライアントと称する）を含む情報処理システムが利用されている。情報処理システムでは、サーバが、クライアントで用いられるソフトウェアのプログラムや動作設定データなどの情報資源（単に資源と称する）を管理することがある。サーバは、クライアントからの要求に応じて資源を配布することもある。
【０００３】
例えば、インターネットを使用したクライアントサーバシステムにおいて、サーバからクライアントへプログラムのパッチ提供を行う方法が提案されている。この提案では、サーバが、クライアントのパッチバージョン管理を行う。サーバは、クライアントに登録されているパッチのバージョンとサーバに登録されているパッチのバージョンとを比較し、サーバのバージョンが高い場合、パッチファイルをクライアントに提供する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−２５０７４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
管理装置（例えば、サーバ）が、複数の端末装置（例えば、クライアント）それぞれに対して配布済の資源を管理する方法が問題となる。例えば、管理装置が、各端末装置の所定のソフトウェア（例えば、オペレーティングシステム）に設定される識別名により端末装置を識別し、端末装置毎の配布済の資源を管理することが考えられる。しかし、設定された識別名が変更されると、管理装置が、同一の端末装置を、設定変更前後で別個の端末装置として認識してしまい、該当の端末装置に対する配布済の資源を適切に管理できなくなる。すると、該当の端末装置に配布済であるはずの資源が管理装置により未配布であると管理されてしまうなど、端末装置に対する資源配布の不整合が生じ得る。
【０００６】
１つの側面では、本発明は、端末装置に対する資源配布の不整合を抑止する配布履歴管理プログラム、配布履歴管理装置および配布履歴管理方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
１つの態様では、配布履歴管理プログラムが提供される。この配布履歴管理プログラムは、コンピュータに、端末装置について、ホスト名と物理アドレスと資源の配布履歴情報とを関連付けて記憶部に記憶し、端末装置に資源を配布する際に、配布先の端末装置のホスト名、物理アドレス、および、配布先の端末装置が接続した過去の接続サーバを特定する情報を取得し、配布先の端末装置と一致するホスト名または物理アドレスと関連付けて記憶部に記憶された配布履歴情報を配布先の端末装置に対応する配布履歴情報と特定し、配布先の端末装置と一致するホスト名または物理アドレスと関連付けられた配布履歴情報が記憶部に記憶されておらず、かつ過去の接続サーバがコンピュータと異なる場合、過去の接続サーバに問合せを行い、過去の接続サーバの配布実績情報を記憶する他の記憶部に、配布先の端末装置と一致するホスト名または物理アドレスと関連付けられた配布履歴情報が記憶されているかを確認する、処理を実行させる。
また、１つの態様では、配布履歴管理プログラムが提供される。この配布履歴管理プログラムは、コンピュータに、端末装置について、ホスト名と物理アドレスと資源の配布履歴情報とを関連付けて記憶部に記憶し、端末装置に資源を配布する際に、配布先の端末装置のホスト名または物理アドレスと関連付けられた配布履歴情報が記憶部に記憶されているかの問合せを受信し、配布先の端末装置と一致するホスト名または物理アドレスと関連付けられた配布履歴情報が記憶部に記憶されている場合、当該配布履歴情報を配布先の端末装置に対応する配布履歴情報と特定し、特定した配布履歴情報を問い合わせ元の装置に送信し、問い合わせ元の装置に送信した配布履歴情報を記憶部から削除する、処理を実行させる。
【発明の効果】
【０００８】
１つの側面では、端末装置に対する資源配布の不整合を抑止する。
【図面の簡単な説明】
【０００９】
【図１】第１の実施の形態の配布履歴管理装置を示す図である。
【図２】第２の実施の形態の情報処理システムを示す図である。
【図３】資源取得先サーバのハードウェア例を示す図である。
【図４】資源取得先サーバおよびクライアントの機能例を示す図である。
【図５】資源取得先サーバおよびクライアントの通信例を示す図である。
【図６】配布履歴テーブルの例を示す図である。
【図７】資源要求データの例を示す図である。
【図８】履歴問合せデータの例を示す図である。
【図９】履歴通知データの例を示す図である。
【図１０】クライアントによる資源要求の例を示すフローチャートである。
【図１１】資源取得先サーバによる資源配布の例を示すフローチャートである。
【図１２】資源取得先サーバによる履歴通知の例を示すフローチャートである。
【図１３】配布履歴の更新例を示す図である。
【図１４】資源取得先サーバの処理の具体例（その１）を示す図である。
【図１５】資源取得先サーバの処理の具体例（その２）を示す図である。
【図１６】資源取得先サーバの処理の具体例（その３）を示す図である。
【図１７】ＭＡＣアドレスのみで配布履歴を管理する場合の例を示す図である。
【図１８】前回接続先情報を用いない場合の例を示す図である。
【発明を実施するための形態】
【００１０】
以下、本実施の形態を図面を参照して説明する。
［第１の実施の形態］
図１は、第１の実施の形態の配布履歴管理装置を示す図である。配布履歴管理装置１は、端末装置２に対する情報資源（単に資源と称する）の配布の履歴（配布履歴）を管理する。資源は、例えば、ソフトウェアのプログラム（プログラム全体またはパッチプログラムなどの一部プログラム）、ソフトウェアの動作設定情報（パラメータ情報やウィルスパターンファイルなど）を含み得る。
【００１１】
配布履歴管理装置１および端末装置２は、ネットワーク３に接続されている。ネットワーク３には、端末装置２の他にも端末装置（図示を省略している）が接続される。配布履歴管理装置１は、ネットワーク３に接続された複数の端末装置それぞれに対する資源の配布履歴を管理する。また、配布履歴管理装置１は、配布履歴に基づいて、複数の端末装置それぞれに配布する資源の特定および特定した資源の配布を行う。端末装置２は、配布された資源（配布済資源）を記憶する。
【００１２】
記憶部１ａは、ＲＡＭ（Random Access Memory）などの揮発性記憶装置でもよいし、ＨＤＤ（Hard Disk Drive）やフラッシュメモリなどの不揮発性記憶装置でもよい。演算部１ｂは、ＣＰＵ（Central Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field Programmable Gate Array）などを含み得る。演算部１ｂはプログラムを実行するプロセッサであってもよい。ここでいう「プロセッサ」には、複数のプロセッサの集合（マルチプロセッサ）も含まれ得る。端末装置２も配布履歴管理装置１と同様に記憶部と演算部とを有する。配布履歴管理装置１および端末装置２はコンピュータと呼ばれるものでもよい。
【００１３】
記憶部１ａは、端末装置に配布する資源を記憶する。例えば、記憶部１ａには、新たなアプリケーションソフトウェアを配布する際や、ソフトウェアのプログラムや動作設定情報に更新が発生した際に、新たな資源（改版されたプログラムや動作設定情報）が格納される。
【００１４】
記憶部１ａは、端末装置について、ホスト名と物理アドレスと資源の配布履歴情報とを関連付けて記憶する。ホスト名は、例えば、端末装置で実行されるオペレーティングシステム（ＯＳ：Operating System）に設定される端末装置の識別名である。ホスト名は、コンピュータ名と呼ばれてもよい。物理アドレスは、例えば、端末装置が有するＮＩＣ（Network Interface Controller）のＭＡＣ（Media Access Control）アドレスである。ホスト名および物理アドレスの何れも、ネットワーク３に接続された各端末装置を一意に特定する識別情報である。
【００１５】
例えば、記憶部１ａは、管理テーブルＴ１を記憶する。管理テーブルＴ１は、ホスト名、物理アドレスおよび配布履歴情報の項目を含む。ホスト名の項目には、ホスト名が登録される。物理アドレスの項目には、物理アドレスが登録される。配布履歴情報の項目には、配布履歴情報が登録される。例えば、管理テーブルＴ１には、ホスト名“Ｈ１”、物理アドレス“Ａ１”、配布履歴情報“Ｘ１”というレコードが登録されている。ここで、ホスト名“Ｈ１”および物理アドレス“Ａ１”は、あるタイミング（配布履歴情報“Ｘ１”が取得されたタイミング）において端末装置２が保持していたホスト名および物理アドレスである。管理テーブルＴ１には、他の端末装置に関するレコードも同様に登録される。例えば、ホスト名“Ｈ２”、物理アドレス“Ａ２”、配布履歴情報“Ｘ２”は、端末装置２以外の端末装置に対する配布履歴を管理するためのレコードである。
【００１６】
演算部１ｂは、端末装置に資源を配布する際に、配布先の端末装置と一致するホスト名または物理アドレスと関連付けて記憶部１ａに記憶された配布履歴情報を配布先の端末装置に対応する配布履歴情報と特定する。
【００１７】
例えば、演算部１ｂは、端末装置２から資源要求を受信する。資源要求は、現時点の端末装置２のホスト名および物理アドレスの情報を含む。演算部１ｂは、資源要求に基づいて、端末装置２に対する配布履歴を検索する。例えば、資源要求がホスト名“Ｈ１”、物理アドレス“Ａ１”を含む場合、演算部１ｂは、ホスト名“Ｈ１”または物理アドレス“Ａ１”に対応する配布履歴情報“Ｘ１”を特定する。演算部１ｂは、配布履歴情報“Ｘ１”を基に、端末装置２に未配布の資源を特定し、特定した未配布の資源を端末装置２に配布する。演算部１ｂは、今回配布した資源の情報を、配布履歴情報“Ｘ１”に追加する。
【００１８】
ここで、端末装置２のホスト名または物理アドレスが変更されることがある。例えば、ユーザによる利用環境の変化に応じて、ホスト名が変更され得る。また、端末装置２に搭載されたＮＩＣの故障により、ＮＩＣが交換されると、端末装置２の物理アドレスが変更され得る。演算部１ｂは、何れの場合にも、端末装置２に対応する配布履歴情報を適切に特定できる。具体的には次の通りである。
【００１９】
第１に、物理アドレス変更時を考える。変更後の物理アドレスは“Ａｘ”である。この場合、演算部１ｂは、ホスト名“Ｈ１”および物理アドレス“Ａｘ”を含む資源要求を、端末装置２から受信する。演算部１ｂは、管理テーブルＴ１を参照して、ホスト名“Ｈ１”または物理アドレス“Ａｘ”を含むレコードを検索する。管理テーブルＴ１の例では、ホスト名“Ｈ１”を含むレコードが存在する（前述のようにホスト名および物理アドレスそれぞれは、各端末装置で一意であり物理アドレス“Ａｘ”を含むレコードは存在しない）。したがって、演算部１ｂは、端末装置２に対する配布履歴情報として、ホスト名“Ｈ１”に対応する配布履歴情報“Ｘ１”を特定する。
【００２０】
第２に、ホスト名変更時を考える。変更後のホスト名は“Ｈｘ”である。この場合、演算部１ｂは、ホスト名“Ｈｘ”および物理アドレス“Ａ１”を含む資源要求を、端末装置２から受信する。演算部１ｂは、管理テーブルＴ１を参照して、ホスト名“Ｈｘ”または物理アドレス“Ａ１”を含むレコードを検索する。管理テーブルＴ１の例では、物理アドレス“Ａ１”を含むレコードが存在する（前述のようにホスト名および物理アドレスそれぞれは、各端末装置で一意でありホスト名“Ｈｘ”を含むレコードは存在しない）。したがって、演算部１ｂは、端末装置２に対する配布履歴情報として、物理アドレス“Ａ１”に対応する配布履歴情報“Ｘ１”を特定する。
【００２１】
このように、演算部１ｂは、端末装置２のホスト名または物理アドレスが変更されたとしても、未変更である方の情報を基に、端末装置２の配布履歴情報“Ｘ１”を適切に特定することができる。
【００２２】
ここで、端末装置２に設定されたある１つの識別名のみに対応付けて配布履歴情報を管理することも考えられる。しかし、この場合、当該１つの識別名が変更されたことにより、同じ端末装置２を変更前後の各タイミングで別個の端末装置として認識してしまうおそれがある。すると、配布履歴管理装置１が保持する配布履歴と、端末装置２が保持する配布済資源とで不整合が生じ得る。例えば、設定変更後の端末装置２をネットワーク３に新しく接続された端末装置であると判断してしまい、端末装置２に配布済であるはずの資源が未配布であると誤って管理されてしまう。すると、配布済の資源を端末装置２に再度配布するなど、配布履歴管理装置１、端末装置２およびネットワーク３に余計な負荷を与えるおそれもある。また、設定変更前の端末装置２の配布履歴が、端末装置２の配布履歴として利用されないまま、管理テーブルＴ１に残存してしまうおそれもある。
【００２３】
そこで、配布履歴管理装置１は、ホスト名と物理アドレスと資源の配布履歴情報とを関連付けて記憶し、ホスト名または物理アドレスにより配布先の端末装置２に対する配布履歴情報を特定する。ここで、ホスト名はオペレーティングシステムなどのソフトウェアの情報であり、物理アドレスはＮＩＣなどのハードウェアの情報であるといえる。これらソフトウェアの情報とハードウェアの情報とが同時に変更されることは非常に稀であると考えられる。強いてあるとすれば、ホスト名変更の契機（例えば、ユーザの運用規約の変更タイミングなど）と、物理アドレスを保持するハードウェアの交換（故障などによる交換）が同時に発生するという状況が考えられるが、このような状況が発生する可能性は非常に低い。よって、ホスト名と物理アドレスの組に配布履歴情報を対応付けて管理しておけば、ホスト名および物理アドレスの何れか一方のみに配布履歴情報を対応付けて管理するよりも、各端末装置に対する配布履歴情報を適切に特定できる可能性を高められる。こうして、配布履歴管理装置１は、端末装置に対する資源配布の不整合を抑止でき、端末装置に対して適切に資源配布を行える。
【００２４】
［第２の実施の形態］
図２は、第２の実施の形態の情報処理システムを示す図である。第２の実施の形態の情報処理システムは、資源取得先サーバ１００，１００ａ，１００ｂ、クライアント２００，２００ａ，２００ｂ，２００ｃ，２００ｄ，２００ｅおよび一元管理サーバ３００を有する。第２の実施の形態の情報処理システムは、資源取得先サーバ１００，１００ａ，１００ｂを用いて、クライアント２００，２００ａ，２００ｂ，２００ｃ，２００ｄ，２００ｅを含む複数のクライアントに対する資源配布を分散して行う。ここで、資源は、例えば、ソフトウェアのプログラム（プログラム全体またはパッチプログラムなどの一部プログラム）、ソフトウェアの動作設定情報（パラメータ情報やウィルスパターンファイルなど）を含み得る。
【００２５】
資源取得先サーバ１００およびクライアント２００，２００ａは、ネットワーク１０に接続されている。資源取得先サーバ１００ａおよびクライアント２００ｂ，２００ｃは、ネットワーク１０ａに接続されている。資源取得先サーバ１００ｂおよびクライアント２００ｄ，２００ｅはネットワーク１０ｂに接続されている。資源取得先サーバ１００，１００ａ，１００ｂおよび一元管理サーバ３００は、ネットワーク２０に接続されている。
【００２６】
ネットワーク１０，１０ａ，１０ｂ，２０は、例えばＬＡＮ（Local Area Network）である。ネットワーク１０，１０ａ，１０ｂ，２０は、例えばＷＡＮ（Wide Area Network）やインターネットでもよい。
【００２７】
資源取得先サーバ１００，１００ａ，１００ｂは、クライアント２００，２００ａ，２００ｂ，２００ｃ，２００ｄ，２００ｅに対する資源配布を行うサーバコンピュータである。資源取得先サーバ１００，１００ａ，１００ｂは、クライアント２００，２００ａ，２００ｂ，２００ｃ，２００ｄ，２００ｅに対する資源配布を分担する。各クライアントからの資源取得要求は、ほぼ同時に行われる運用（例えば、クライアントの電源投入時など）が多く、配布対象となるクライアントが多数ある場合、資源取得先サーバが１台だと、当該サーバに要求が集中するおそれがあるからである。複数の資源取得先サーバで分担することで、ある資源取得先サーバに要求が集中することを抑え、当該サーバのスローダウンやネットワーク帯域の枯渇が発生するのを防げる。
【００２８】
例えば、資源取得先サーバ１００は、ネットワーク１０に接続されているクライアント（例えば、クライアント２００，２００ａ）に対する資源配布を担当する。資源取得先サーバ１００ａは、ネットワーク１０ａに接続されているクライアント（例えば、クライアント２００ｂ，２００ｃ）に対する資源配布を担当する。資源取得先サーバ１００ｂは、ネットワーク１０ｂに接続されているクライアント（例えば、クライアント２００ｄ，２００ｅ）に対する資源配布を担当する。
【００２９】
資源取得先サーバ１００，１００ａ，１００ｂは、自身が担当するクライアントに対する資源の配布履歴情報を保持する。資源取得先サーバ１００，１００ａ，１００ｂは、自身が担当しないクライアントに対する資源の配布履歴情報を保持しない。複数の資源取得先サーバで同じクライアントに対する配布履歴情報を重複して保持するのは記憶領域を余計に消費し、非効率的だからである。
【００３０】
特に、各資源取得先サーバが保持する配布履歴情報を、一元管理サーバ３００を含めた全てのサーバで保持する場合、配布履歴の更新情報を全てのサーバに通知し、通知されたサーバで配布履歴情報を更新することになる。前述の通り、各クライアントからの資源取得要求はほぼ同時に行われ得る。そのため、配布履歴のミラーリングを行うと、各クライアントへ資源を配布するための通信の他に配布履歴情報を各サーバで同期するための通信が大量に発生するおそれがある。配布処理と履歴の更新処理が多数同時に実行されると各資源取得先サーバの負荷が増大してしまう。資源取得先サーバ間で、こうした配布履歴情報の同期を行わないようにすることで、各サーバの負荷が増大することを抑えられる。
【００３１】
更に、資源取得先サーバ１００，１００ａ，１００ｂは、配布履歴情報を重複してもたないようにすることで、各クライアントへの資源配布の完了を適切に管理することができる。例えば、配布資源については、全てのクライアントのへの配布が完了した時点で運用可能とすることもある（配布が完了していないクライアントが１台でもあると運用を開始してよいのか判断できないため）。あるクライアントについての過去の配布履歴が、当該クライアントを現在担当していない資源取得先サーバに残っている場合、この配布履歴については、新たに配布した資源による更新が行われないため、配布が完了していないクライアントとみなされてしまう。その結果、全てのクライアントに対する配布が完了しているにも関わらず、残存する配布履歴のために、配布が完了していないクライアントが存在していると誤って判断され、運用可能とならない事態が発生し得る。資源取得先サーバ１００，１００ａ，１００ｂは、配布履歴情報を重複してもたないようにすることで、このような事態の発生を防げる。
【００３２】
ここで、資源取得先サーバ１００，１００ａ，１００ｂそれぞれは、第１の実施の形態の配布履歴管理装置１の一例である。
クライアント２００，２００ａ，２００ｂ，２００ｃ，２００ｄ，２００ｅは、資源取得先サーバ１００，１００ａ，１００ｂにより配布された資源を用いて業務処理を実行するクライアントコンピュータである。クライアント２００，２００ａ，２００ｂ，２００ｃ，２００ｄ，２００ｅそれぞれは、現在接続されているネットワークとの接続を切って、別のネットワークに接続することも可能である。例えば、クライアント２００の接続先を、ネットワーク１０に代えて、ネットワーク１０ａとすることもできる。この場合、クライアント２００に対する資源配布を担当する資源取得先サーバは、資源取得先サーバ１００から資源取得先サーバ１００ａに変更される。ここで、クライアント２００，２００ａ，２００ｂ，２００ｃ，２００ｄ，２００ｅそれぞれは、第１の実施の形態の端末装置２の一例である。
【００３３】
一元管理サーバ３００は、資源取得先サーバ１００，１００ａ，１００ｂによる配布の対象とする資源を一元的に管理するサーバコンピュータである。例えば、一元管理サーバ３００は、各クライアントに配布したい新たな資源のユーザによる入力を受け付け保持する。一元管理サーバ３００は、入力された新たな資源を複製して、資源取得先サーバ１００，１００ａ，１００ｂに配布する。
【００３４】
図３は、資源取得先サーバのハードウェア例を示す図である。資源取得先サーバ１００は、プロセッサ１０１、ＲＡＭ１０２、ＨＤＤ１０３、画像信号処理部１０４、入力信号処理部１０５、媒体リーダ１０６およびＮＩＣ１０７を有する。各ユニットは資源取得先サーバ１００のバスに接続されている。
【００３５】
プロセッサ１０１は、資源取得先サーバ１００の情報処理を制御する。プロセッサ１０１は、マルチプロセッサであってもよい。プロセッサ１０１は、例えばＣＰＵ、ＤＳＰ、ＡＳＩＣまたはＦＰＧＡなどである。プロセッサ１０１は、ＣＰＵ、ＤＳＰ、ＡＳＩＣ、ＦＰＧＡなどのうちの２以上の要素の組み合わせであってもよい。
【００３６】
ＲＡＭ１０２は、資源取得先サーバ１００の主記憶装置である。ＲＡＭ１０２は、プロセッサ１０１に実行させるＯＳのプログラムやアプリケーションプログラムの少なくとも一部を一時的に記憶する。また、ＲＡＭ１０２は、プロセッサ１０１による処理に用いる各種データを記憶する。
【００３７】
ＨＤＤ１０３は、資源取得先サーバ１００の補助記憶装置である。ＨＤＤ１０３は、内蔵した磁気ディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。ＨＤＤ１０３は、ＯＳのプログラム、アプリケーションプログラム、および各種データを記憶する。資源取得先サーバ１００は、フラッシュメモリやＳＳＤ（Solid State Drive）などの他の種類の補助記憶装置を備えてもよく、複数の補助記憶装置を備えてもよい。
【００３８】
画像信号処理部１０４は、プロセッサ１０１からの命令に従って、資源取得先サーバ１００に接続されたディスプレイ１１に画像を出力する。ディスプレイ１１としては、ＣＲＴ（Cathode Ray Tube）ディスプレイや液晶ディスプレイなどを用いることができる。
【００３９】
入力信号処理部１０５は、資源取得先サーバ１００に接続された入力デバイス１２から入力信号を取得し、プロセッサ１０１に出力する。入力デバイス１２としては、例えば、マウスやタッチパネルなどのポインティングデバイス、キーボードなどを用いることができる。
【００４０】
媒体リーダ１０６は、記録媒体１３に記録されたプログラムやデータを読み取る装置である。記録媒体１３として、例えば、フレキシブルディスク（ＦＤ：Flexible Disk）やＨＤＤなどの磁気ディスク、ＣＤ（Compact Disc）やＤＶＤ（Digital Versatile Disc）などの光ディスク、光磁気ディスク（ＭＯ：Magneto-Optical disk）を使用できる。また、記録媒体１３として、例えば、フラッシュメモリカードなどの不揮発性の半導体メモリを使用することもできる。媒体リーダ１０６は、例えば、プロセッサ１０１からの命令に従って、記録媒体１３から読み取ったプログラムやデータをＲＡＭ１０２またはＨＤＤ１０３に格納する。
【００４１】
ＮＩＣ１０７は、ネットワーク１０を介して他の装置と通信を行う。ＮＩＣ１０７は、有線通信インタフェースでもよいし、無線通信インタフェースでもよい。
なお、資源取得先サーバ１００，１００ａ，１００ｂ、クライアント２００，２００ａ，２００ｂ，２００ｃ，２００ｄ，２００ｅおよび一元管理サーバ３００も資源取得先サーバ１００と同様のハードウェアにより実現できる。
【００４２】
図４は、資源取得先サーバおよびクライアントの機能例を示す図である。資源取得先サーバ１００は、記憶部１１０、資源要求受信部１２０、履歴問合せ要求部１３０、履歴問合せ処理部１４０および資源送信部１５０を有する。記憶部１１０は、例えばＲＡＭ１０２またはＨＤＤ１０３に確保された記憶領域として実現される。資源要求受信部１２０、履歴問合せ要求部１３０、履歴問合せ処理部１４０および資源送信部１５０は、例えばＲＡＭ１０２に記憶されたプログラムをプロセッサ１０１が実行することで実現される。
【００４３】
記憶部１１０は、各クライアントに対する資源の配布履歴を管理するための配布履歴テーブルを記憶する。配布履歴テーブルは、クライアントのコンピュータ名とＭＡＣアドレスと資源配布の履歴情報とが対応付けられた情報である。コンピュータ名は、ホスト名と呼ばれることもある。クライアントのコンピュータ名は、クライアントのＯＳに設定された情報である。クライアントのＭＡＣアドレスは、クライアントが備えるＮＩＣにより保持される情報である。履歴情報は、配布を行った資源の名称、世代（バージョン）、配布日時および配布成否などの情報を含む。また、記憶部１１０は、配布対象の資源を記憶する。
【００４４】
資源要求受信部１２０は、資源要求データをクライアントから受信する。資源要求データは、クライアントにより発行される。資源要求データは、クライアントのコンピュータ名およびクライアントのＭＡＣアドレスを含む。資源要求データは、該当のクライアントが資源要求データを前回送信した資源取得先サーバを示す前回接続先情報を含む。前回接続先情報は、通信プロトコルで用いられるアドレス情報であり、例えば、何れかの資源取得先サーバのＩＰ（Internet Protocol）アドレスである。以下の説明では、クライアントのコンピュータ名、ＭＡＣアドレスおよび前回接続先情報を総称して、「接続情報」と呼ぶことがある。
【００４５】
資源要求受信部１２０は、記憶部１１０に記憶された配布履歴テーブルを参照し、資源要求データに含まれるコンピュータ名またはＭＡＣアドレスに基づいて、該当のクライアントの履歴情報を検索する。資源要求受信部１２０は、該当のクライアントの履歴情報を検索できた場合、検索した履歴情報に基づく資源配布を資源送信部１５０に指示する。資源要求受信部１２０は、該当のクライアントの履歴情報を検索できなかった場合、履歴問合せ要求部１３０に履歴問合せデータの送信を指示する。
【００４６】
履歴問合せ要求部１３０は、資源要求受信部１２０の指示に応じて履歴問合せデータを生成し、送信する。履歴問合せデータは、他の資源取得先サーバに対して、履歴情報を問合せるためのデータである。履歴問合せデータは、資源要求データに含まれるクライアントのコンピュータ名とＭＡＣアドレスとを含む。また、履歴問合せデータの宛先は、資源要求データに含まれる前回接続先情報で示されるアドレスである。
【００４７】
履歴問合せ要求部１３０は、発行した履歴問合せデータに応じて、該当のクライアントに対する履歴情報を、他の資源取得先サーバから受信すると、受信した履歴情報を、記憶部１１０に記憶された配布履歴テーブルに登録する。また、履歴問合せ要求部１３０は、受信した履歴情報に基づく資源配布を資源送信部１５０に指示する（図４では、履歴問合せ要求部１３０と資源送信部１５０とを結ぶ関連線を省略している）。
【００４８】
履歴問合せ処理部１４０は、他の資源取得先サーバから履歴問合せデータを受信する。履歴問合せ処理部１４０は、記憶部１１０に記憶された配布履歴テーブルを参照し、履歴問合せデータに含まれるクライアントのコンピュータ名またはＭＡＣアドレスに対応する履歴情報を検索する。履歴問合せ処理部１４０は、履歴問合せデータの送信元の資源取得サーバに、検索した履歴情報を送信する。履歴問合せ処理部１４０は、送信した履歴情報を、記憶部１１０に記憶された配布履歴テーブルから削除する。
【００４９】
資源送信部１５０は、資源要求受信部１２０または履歴問合せ要求部１３０の指示に応じて、記憶部１１０に記憶された配布履歴管理テーブルを参照し、該当のクライアントに配布する資源を特定する。資源送信部１５０は、特定した資源を記憶部１１０から取得し、該当のクライアントに送信する。資源送信部１５０は、配布履歴テーブルに登録された該当のクライアントの履歴情報に、今回の配布結果を反映させる。
【００５０】
ここで、資源取得先サーバ１００ａ，１００ｂも、資源取得先サーバ１００と同様の機能を有する。
クライアント２００は、記憶部２１０および資源要求送信部２２０を有する。記憶部２１０は、例えばクライアント２００が備えるＲＡＭまたはＨＤＤに確保された記憶領域として実現される。資源要求送信部２２０は、例えばクライアント２００が備えるＲＡＭに記憶されたプログラムを、クライアント２００が備えるプロセッサが実行することで実現される。
【００５１】
記憶部２１０は、資源取得先サーバ１００から配布された資源を記憶する。また、記憶部２１０は、前回接続先情報を記憶する。
資源要求送信部２２０は、資源要求データを生成し、資源取得先サーバ１００に送信する。資源要求送信部２２０は、例えば、クライアント２００のユーザによる所定の操作入力を受け付けたタイミングで、資源要求データを生成し、送信する。あるいは、資源要求送信部２２０は、予め指定されたタイミング（所定の周期やクライアント２００が起動したタイミングなど）で、資源要求データを生成し、送信してもよい。
【００５２】
資源受信部２３０は、資源要求データに応じて、資源取得先サーバ１００により送信された資源を受信し、記憶部２１０に格納する。資源受信部２３０は、資源の送信元の資源取得先サーバ１００のＩＰアドレスを、前回接続先情報として、記憶部２１０に格納する。クライアント２００は、こうして記憶部２１０に格納された資源を用いて業務処理を行える。
【００５３】
ここで、クライアント２００ａ，２００ｂ，２００ｃ，２００ｄ，２００ｅもクライアント２００と同様の機能を有する。
図５は、資源取得先サーバおよびクライアントの通信例を示す図である。図５では、資源取得先サーバ１００ａが有する記憶部１１０ａ、資源要求受信部１２０ａ、履歴問合せ要求部１３０ａおよび履歴問合せ処理部１４０ａも図示している（資源送信部に関しては図示を省略している）。資源取得先サーバ１００ａの各部の機能は、図４で説明した資源取得先サーバ１００の同名の機能と同様である。
【００５４】
例えば、クライアント２００の資源要求送信部２２０は、ネットワーク１０に接続されている場合、資源要求データを資源取得先サーバ１００に送信する。資源取得先サーバ１００の資源要求受信部１２０は資源要求データを受信する。資源要求データは、前述のように、接続情報（クライアント２００のコンピュータ名、ＭＡＣアドレスおよび前回接続先情報）を含む。資源要求データの接続情報に含まれる前回接続先情報は資源取得先サーバ１００のＩＰアドレスを示す。資源取得先サーバ１００は、クライアント２００の履歴情報を保持している。このため、資源取得先サーバ１００は、クライアント２００の履歴情報に基づいて、クライアント２００に資源を配布し、クライアント２００のコンピュータ名およびＭＡＣアドレスに対応する履歴情報に配布結果を反映させる。
【００５５】
その後、クライアント２００は、ネットワーク１０からネットワーク１０ａへ接続先が変更される。例えば、ユーザがクライアント２００を所持したまま、フロアや施設間を移動することで、クライアント２００の接続先がネットワーク１０からネットワーク１０ａに変更され得る。クライアント２００の資源要求送信部２２０は、ネットワーク１０ａに接続されている場合、資源要求データを資源取得先サーバ１００ａに送信する。
【００５６】
資源取得先サーバ１００ａの資源要求受信部１２０ａは、資源要求データを受信する。資源要求データの接続情報に含まれる前回接続先情報は、資源取得先サーバ１００のＩＰアドレスを示す。クライアント２００の接続先がネットワーク１０ａに変更された直後では、資源取得先サーバ１００ａは、クライアント２００に対する履歴情報を保持していない。このため、資源取得先サーバ１００ａは、資源要求データを受信しても、クライアント２００に対する履歴情報を取得できない。そこで、資源取得先サーバ１００ａの履歴問合せ要求部１３０ａは、履歴問合せデータを生成し、送信する。履歴問合せデータの宛先は、資源要求データの接続情報に含まれる前回接続先情報で示されるＩＰアドレス（ここでは、資源取得先サーバ１００のＩＰアドレス）である。また、履歴問合せデータは、当該資源要求データの接続情報に含まれるコンピュータ名およびＭＡＣアドレスを含む。
【００５７】
資源取得先サーバ１００の履歴問合せ処理部１４０は、履歴問合せデータを受信する。資源取得先サーバ１００は、クライアント２００の履歴情報を保持している。このため、資源取得先サーバ１００の履歴問合せ処理部１４０は、履歴問合せデータに応じて、クライアント２００の履歴情報を含む履歴通知データを生成し、資源取得先サーバ１００ａに送信する。このとき、履歴問合せ処理部１４０は、クライアント２００の履歴情報を記憶部１１０から削除する。
【００５８】
資源取得先サーバ１００ａの履歴問合せ要求部１３０ａは、履歴通知データを受信し、履歴通知データに含まれるクライアント２００の履歴情報を、クライアント２００のコンピュータ名およびＭＡＣアドレスに対応付けて記憶部１１０ａに格納する。資源取得先サーバ１００ａは、クライアント２００の履歴情報に基づいて、クライアント２００に資源を配布し、クライアント２００のコンピュータ名およびＭＡＣアドレスに対応する履歴情報に配布結果を反映させる。
【００５９】
図６は、配布履歴テーブルの例を示す図である。配布履歴テーブル１１１は、記憶部１１０に格納される。配布履歴テーブル１１１は、コンピュータ名、ＭＡＣアドレスおよび履歴情報の項目を含む。
【００６０】
コンピュータ名の項目には、クライアントのコンピュータ名が登録される。ＭＡＣアドレスの項目には、クライアントのＭＡＣアドレスが登録される。履歴情報の項目には、資源配布の履歴情報が登録される。
【００６１】
例えば、配布履歴テーブル１１１には、コンピュータ名が“ＰＣ＃１”、ＭＡＣアドレスが“２０：００：００：００：００：００”、履歴情報が“資源Ａ  世代２  ２０１５／１１／０６  １４：２０  成功  ・・・”という情報（１レコード）が登録される。
【００６２】
これは、コンピュータ名“ＰＣ＃１”またはＭＡＣアドレス“２０：００：００：００：００：００”で識別されるクライアントに対して、履歴情報“資源Ａ  世代２  ２０１５／１１／０６  １４：２０  成功  ・・・”が登録されていることを示す。ここで、図６で示される履歴情報によれば、クライアント２００に対して、“資源Ａ”は“世代２”まで配布済である。また、クライアント２００に対して、“資源Ｂ”は“世代１”まで配布済である。各資源の世代に対し、履歴情報に“失敗”が記録されている場合、該当世代については未配布ということになる。
【００６３】
なお、コンピュータ名“ＰＣ＃１”は、クライアント２００のコンピュータ名であるとする。ＭＡＣアドレス“２０：００：００：００：００：００”は、クライアント２００のＮＩＣのＭＡＣアドレスであるとする。
【００６４】
図７は、資源要求データの例を示す図である。図７（Ａ）は、資源要求データのフォーマットを例示している。図７（Ｂ）は、資源要求データに設定される情報の具体例を示している。例えば、資源要求データは、ＩＰパケットを用いて送信される（以下に示す履歴問合せデータや履歴通知データも同様）。
【００６５】
資源要求データは、ヘッダ部、クライアントのコンピュータ名、クライアントのＭＡＣアドレス、および、前回接続先情報のフィールドを含む。ヘッダ部は、ＩＰパケットの転送に用いられるアドレス情報などが設定されるフィールドである。ヘッダ部より後ろはＩＰパケットのデータ部分である。
【００６６】
例えば、クライアント２００が資源要求データを生成する場合、コンピュータ名として“ＰＣ＃１”、ＭＡＣアドレスとして“２０：００：００：００：００：００”、前回接続先情報としてＩＰアドレス“１０．１０．１０．１０”が設定される。ここで、ＩＰアドレス“１０．１０．１０．１０”は、資源取得先サーバ１００のＩＰアドレスである。
【００６７】
資源要求データは、上記の情報の他、クライアント２００で利用されている資源に関する情報を含んでもよい（例えば、クライアント２００が保持しているソフトウェアの識別情報や各種設定ファイルの識別情報など）。クライアント２００で利用されている資源に関する情報が資源要求データに含まれていれば、資源取得先サーバ側で、当該情報に基づいて、クライアント２００が保持している資源に応じた配布対象資源の特定を行える。
【００６８】
図８は、履歴問合せデータの例を示す図である。図８（Ａ）は、履歴問合せデータのフォーマットを例示している。図８（Ｂ）は、履歴問合せデータに設定される情報の具体例を示している。
【００６９】
資源問合せデータは、ヘッダ部、クライアントのコンピュータ名、および、クライアントのＭＡＣアドレスのフィールドを含む。ヘッダ部は、ＩＰパケットの転送に用いられるアドレス情報などが設定されるフィールドである。ヘッダ部における宛先ＩＰアドレスとして、資源要求データに含まれる前回接続先情報で示されるＩＰアドレスが設定されることになる。
【００７０】
例えば、資源取得先サーバ１００ａが、クライアント２００から受信した図７（Ｂ）の資源要求データを基に履歴問合せデータを送信する場合、ヘッダ部の宛先ＩＰアドレスには、資源取得先サーバ１００のＩＰアドレス“１０．１０．１０．１０”が設定される（図７（Ｂ）では図示を省略している）。また、コンピュータ名として“ＰＣ＃１”、ＭＡＣアドレスとして“２０：００：００：００：００：００”が設定される。
【００７１】
図９は、履歴通知データの例を示す図である。図９（Ａ）は、履歴通知データのフォーマットを例示している。図９（Ｂ）は、問合せ対象のクライアントの履歴情報がある場合に履歴通知データに設定される情報の具体例を示している。図９（Ｃ）は、問合せ対象のクライアントの履歴情報がない場合に履歴通知データに設定される情報の具体例を示している。
【００７２】
履歴通知データは、ヘッダ部、履歴有無、クライアントのコンピュータ名、クライアントのＭＡＣアドレス、および、履歴情報のフィールドを含む。ヘッダ部は、ＩＰパケットの転送に用いられるアドレス情報などが設定されるフィールドである。
【００７３】
例えば、資源取得先サーバ１００が、資源取得先サーバ１００ａから受信した図８（Ｂ）の履歴問合せデータを基に履歴通知データを送信する場合、問合せ対象のクライアントの履歴情報を検索できたか否か（履歴有無）に応じて履歴通知データの内容が異なる。
【００７４】
例えば、問合せ対象のクライアントの履歴情報を取得できた場合、履歴有無のフィールドは“履歴あり”となり、コンピュータ名として“ＰＣ＃１”、ＭＡＣアドレスとして“２０：００：００：００：００：００”、および検索した履歴情報が設定される。
【００７５】
一方、問合せ対象のクライアントの履歴情報を取得できなかった場合、履歴有無のフィールドは“履歴なし”となり、コンピュータ名、ＭＡＣアドレス、および、履歴情報は、履歴通知データに設定されないことになる。
【００７６】
次に、第２の実施の形態の情報処理システムにおける処理手順を説明する。まず、クライアント２００による資源要求の手順を説明する。ただし、クライアント２００ａ，２００ｂ，２００ｃ，２００ｄ，２００ｅもクライアント２００と同様の手順を実行できる。
【００７７】
図１０は、クライアントによる資源要求の例を示すフローチャートである。以下、図１０に示す処理をステップ番号に沿って説明する。
（Ｓ１１）資源要求送信部２２０は、クライアント２００のコンピュータ名を取得する。例えば、資源要求送信部２２０は、クライアント２００のＯＳからコンピュータ名を取得できる。
【００７８】
（Ｓ１２）資源要求送信部２２０は、資源要求データにコンピュータ名を設定する。
（Ｓ１３）資源要求送信部２２０は、クライアント２００のＭＡＣアドレスを取得する。例えば、資源要求送信部２２０は、クライアント２００に設けられたＮＩＣからＯＳを介してＭＡＣアドレスを取得できる。
【００７９】
（Ｓ１４）資源要求送信部２２０は、資源要求データにＭＡＣアドレスを設定する。
（Ｓ１５）資源要求送信部２２０は、記憶部２１０を参照して、前回接続先情報があるか否かを判定する。前回接続先情報がある場合、処理をステップＳ１６に進める。前回接続先情報がない場合、処理をステップＳ１７に進める（この場合、資源要求データの前回接続先情報は“なし”となる）。
【００８０】
（Ｓ１６）資源要求送信部２２０は、記憶部２１０から前回接続先情報を取得し、資源要求データに、前回接続先情報を設定する。
（Ｓ１７）資源要求送信部２２０は、資源要求データを送信する。資源要求データの宛先は、クライアント２００がネットワーク１０，１０ａ，１０ｂの何れに接続されているかに応じて異なる。クライアント２００がネットワーク１０に接続されている場合、資源要求データの宛先は、資源取得先サーバ１００である。クライアント２００がネットワーク１０ａに接続されている場合、資源要求データの宛先は、資源取得先サーバ１００ａである。クライアント２００がネットワーク１０ｂに接続されている場合、資源要求データの宛先は、資源取得先サーバ１００ｂである。
【００８１】
（Ｓ１８）資源受信部２３０は、資源要求データの送信に成功したか否かを判定する。成功した場合、処理をステップＳ１９に進める。成功しなかった場合（失敗した場合）、処理を終了する。例えば、資源受信部２３０は、資源要求データの送信に応じて、何れかの資源取得先サーバから資源または配布対象資源なしの通知を受信したか否かの判定に応じて、資源要求データの送信に成功したか否かを判定することが考えられる。すなわち、資源受信部２３０は、何れかの資源取得先サーバから資源または配布対象資源なしの通知を受信した場合に、資源要求データの送信に成功したと判定する。一方、資源受信部２３０は、資源取得先サーバからの応答がない場合に、資源要求データの送信に成功しなかったと判定する。
【００８２】
（Ｓ１９）資源受信部２３０は、記憶部２１０に記憶された前回接続先情報を更新する。例えば、ステップＳ１７において、資源要求送信部２２０が資源取得先サーバ１００に資源要求データを送信した場合、資源受信部２３０は、資源取得先サーバ１００のＩＰアドレスを前回接続先情報とする。資源要求送信部２２０が資源取得先サーバ１００ａに資源要求データを送信した場合、資源受信部２３０は、資源取得先サーバ１００ａのＩＰアドレスを前回接続先情報とする。資源要求送信部２２０が資源取得先サーバ１００ｂに資源要求データを送信した場合、資源受信部２３０は、資源取得先サーバ１００ｂのＩＰアドレスを前回接続先情報とする。
【００８３】
次に、資源取得先サーバ１００による資源要求受け付け時の資源配布の処理を説明する。ただし、資源取得先サーバ１００ａ，１００ｂも資源取得先サーバ１００と同様の手順を実行できる。
【００８４】
図１１は、資源取得先サーバによる資源配布の例を示すフローチャートである。以下、図１１に示す処理をステップ番号に沿って説明する。
（Ｓ２１）資源要求受信部１２０は、資源要求データを受信する。資源要求受信部１２０は、コンピュータ名およびＭＡＣアドレスを資源要求データから取得する。
【００８５】
（Ｓ２２）資源要求受信部１２０は、記憶部１１０に記憶された配布履歴テーブル１１１のレコードを１つずつ順番に抽出し、ステップＳ２３〜Ｓ２６の処理を繰り返し実行する。以下では、抽出された１つのレコードを、「着目するレコード」と称する。
【００８６】
（Ｓ２３）資源要求受信部１２０は、着目するレコードのコンピュータ名と、ステップＳ２１で取得したコンピュータ名とが一致するか否かを判定する。一致する場合、処理をステップＳ２６に進める。一致しない場合、処理をステップＳ２４に進める。
【００８７】
（Ｓ２４）資源要求受信部１２０は、着目するレコードのＭＡＣアドレスと、ステップＳ２１で取得したＭＡＣアドレスとが一致するか否かを判定する。一致する場合、処理をステップＳ２５に進める。一致しない場合、処理をステップＳ２７に進める。
【００８８】
（Ｓ２５）資源要求受信部１２０は、着目するレコードのコンピュータ名を、ステップＳ２１で取得したコンピュータ名に更新する。これにより、配布履歴テーブル１１１における当該レコードのコンピュータ名が更新される。
【００８９】
（Ｓ２６）資源要求受信部１２０は、受信した資源要求データに応じた履歴情報を検出したこと（履歴検出）を記憶部１１０に記録する。
（Ｓ２７）資源要求受信部１２０は、配布履歴テーブル１１１の全てのレコードについてステップＳ２３〜Ｓ２６の処理を実行するか、または、記憶部１１０に履歴検出が記録されると、繰り返しを終了して、処理をステップＳ２８に進める。
【００９０】
（Ｓ２８）資源要求受信部１２０は、記憶部１１０に履歴検出が記録されているか否かを判定する。履歴検出が記録されている場合、処理をステップＳ３４に進める。履歴検出が記録されていない場合、処理をステップＳ２９に進める。
【００９１】
（Ｓ２９）資源要求受信部１２０は、受信した資源要求データに前回接続先情報の設定値（ＩＰアドレス）があるか否かを判定する。ある場合、処理をステップＳ３０に進める。ない場合、処理をステップＳ３２に進める。
【００９２】
（Ｓ３０）履歴問合せ要求部１３０は、前回接続先情報で示されるＩＰアドレスを宛先とした履歴問合せデータを生成する。履歴問合せ要求部１３０は、ステップＳ２１で取得したコンピュータ名およびＭＡＣアドレスを履歴問合せデータに含める。履歴問合せ要求部１３０は、生成した履歴問合せデータを、前回接続先の資源取得先サーバに送信する。
【００９３】
（Ｓ３１）履歴問合せ要求部１３０は、前回接続先の資源取得先サーバが履歴情報をもたない（履歴なし）か否かを判定する。前回接続先の資源取得先サーバに履歴なしの場合、処理をステップＳ３２に進める。前回接続先の資源取得先サーバに履歴ありの場合、処理をステップＳ３３に進める。履歴問合せ要求部１３０は、ステップＳ３０で送信した履歴問合せデータに対する前回接続先の資源取得先サーバからの応答に基づいて、ステップＳ３１の判定を行える。具体的には、履歴ありが設定された履歴通知データを受信した場合に、履歴問合せ要求部１３０は、前回接続先の資源取得先サーバに履歴ありと判定する。一方、履歴なしが設定された履歴通知データを受信した場合に、履歴問合せ要求部１３０は、前回接続先の資源取得先サーバに履歴なしと判定する。
【００９４】
（Ｓ３２）資源問合せ要求部１３０は、ステップＳ２１で取得したコンピュータ名およびＭＡＣアドレスに対応する配布履歴のレコードを新規作成して、配布履歴テーブル１１１に登録する。そして、処理をステップＳ３４に進める。
【００９５】
（Ｓ３３）履歴問合せ要求部１３０は、前回接続先の資源取得先サーバから受信した履歴通知データに含まれる履歴情報を、ステップＳ２１で取得したコンピュータ名およびＭＡＣアドレスに対応付けて、配布履歴テーブル１１１に登録する。
【００９６】
（Ｓ３４）資源送信部１５０は、配布履歴テーブル１１１を参照して、ステップＳ２１で取得したコンピュータ名またはＭＡＣアドレスに対応するレコードを取得し、当該レコードに含まれる履歴情報に基づいて、配布対象資源を特定する。資源送信部１５０は、特定した配布対象資源を、資源要求元のクライアントに配布する。
【００９７】
（Ｓ３５）資源送信部１５０は、該当のクライアントに対する資源の配布結果を、ステップＳ３４で取得したレコードの履歴情報に反映させる（配布履歴更新）。
なお、ステップＳ２３でＹｅｓの場合、資源要求受信部１２０は、着目するレコードのＭＡＣアドレスと、ステップＳ２１で取得したＭＡＣアドレスとが一致するか否かを判定してもよい。そして、資源要求受信部１２０は、一致しない場合に、着目するレコードのＭＡＣアドレスを、ステップＳ２１で取得したＭＡＣアドレスに更新してもよい（配布履歴テーブル１１１における当該レコードのＭＡＣアドレスが更新される）。一致する場合は、当該ＭＡＣアドレスの更新を行わずに、ステップＳ２６を実行する。あるいは、資源要求受信部１２０は、ステップＳ２３でＹｅｓの場合、このような判定を行わずに、ステップＳ２１で取得したＭＡＣアドレスを、着目するレコードのＭＡＣアドレスに更新して、ステップＳ２６を実行してもよい。
【００９８】
次に、資源取得先サーバ１００による履歴問合せ受け付け時の履歴通知の処理を説明する。ただし、資源取得先サーバ１００ａ，１００ｂも資源取得先サーバ１００と同様の手順を実行できる。
【００９９】
図１２は、資源取得先サーバによる履歴通知の例を示すフローチャートである。以下、図１２に示す処理をステップ番号に沿って説明する。
（Ｓ４１）履歴問合せ処理部１４０は、履歴問合せデータを受信する。履歴問合せ処理部１４０は、コンピュータ名およびＭＡＣアドレスを履歴問合せデータから取得する。
【０１００】
（Ｓ４２）履歴問合せ処理部１４０は、記憶部１１０に記憶された配布履歴テーブル１１１のレコードを１つずつ順番に抽出し、ステップＳ４３〜Ｓ４７の処理を繰り返し実行する。以下では、抽出された１つのレコードを、「着目するレコード」と称する。
【０１０１】
（Ｓ４３）履歴問合せ処理部１４０は、着目するレコードのコンピュータ名と、ステップＳ４１で取得したコンピュータ名とが一致するか否かを判定する。一致する場合、処理をステップＳ４４に進める。一致しない場合、処理をステップＳ４５に進める。
【０１０２】
（Ｓ４４）履歴問合せ処理部１４０は、着目するレコードのＭＡＣアドレスをステップＳ４１で取得したＭＡＣアドレスに更新する（配布履歴テーブル１１１における当該レコードのＭＡＣアドレスが更新される）。なお、更新前後で、ＭＡＣアドレスが変更されないこともある（同じＭＡＣアドレスで更新する場合）。そして、処理をステップＳ４７に進める。
【０１０３】
（Ｓ４５）履歴問合せ処理部１４０は、着目するレコードのＭＡＣアドレスと、ステップＳ４１で取得したＭＡＣアドレスとが一致するか否かを判定する。一致する場合、処理をステップＳ４６に進める。一致しない場合、処理をステップＳ４８に進める。
【０１０４】
（Ｓ４６）履歴問合せ処理部１４０は、着目するレコードのコンピュータ名を、ステップＳ４１で取得したコンピュータ名に更新する。これにより、配布履歴テーブル１１１における当該レコードのコンピュータ名が更新される。
【０１０５】
（Ｓ４７）履歴問合せ処理部１４０は、受信した履歴問合せデータに応じた履歴情報を検出したこと（履歴検出）を記憶部１１０に記録する。
（Ｓ４８）履歴問合せ処理部１４０は、配布履歴テーブル１１１の全てのレコードについてステップＳ４３〜Ｓ４７の処理を実行するか、または、記憶部１１０に履歴検出が記録されると、繰り返しを終了して、処理をステップＳ４９に進める。
【０１０６】
（Ｓ４９）履歴問合せ処理部１４０は、記憶部１１０に履歴検出が記録されているか否かを判定する。履歴検出が記録されている場合、処理をステップＳ５０に進める。履歴検出が記録されていない場合、処理をステップＳ５２に進める。
【０１０７】
（Ｓ５０）履歴問合せ処理部１４０は、検出した履歴情報を通知する履歴通知データを生成し、問合せ元の資源取得先サーバに送信する。この場合、履歴通知データは、履歴ありを示す情報と、ステップＳ４１で取得したコンピュータ名と、ＭＡＣアドレスと、検出した履歴情報とを含む。
【０１０８】
（Ｓ５１）履歴問合せ処理部１４０は、検出した履歴情報のレコード（ステップＳ４１で取得したコンピュータ名またはＭＡＣアドレスに対応するレコード）を、配布履歴テーブル１１１から削除する。そして、処理を終了する。
【０１０９】
（Ｓ５２）履歴問合せ処理部１４０は、履歴情報を検出しなかった旨を通知する履歴通知データを生成し、問合せ元の資源取得先サーバに送信する。この場合、履歴通知データは履歴なしを示す情報を含む。そして、処理を終了する。
【０１１０】
図１３は、配布履歴の更新例を示す図である。図１３（Ａ）は、資源取得先サーバ１００が、配布履歴（配布履歴テーブル１１１の１つのレコード）のコンピュータ名を更新する例である。例えば、ある配布履歴に、コンピュータ名“ＰＣ＃１”、ＭＡＣアドレス“２０：００：００：００：００：００”、履歴情報“Ｘ”が登録されているとする。この場合、資源取得先サーバ１００は、コンピュータ名“ＰＣ＃２”およびＭＡＣアドレス“２０：００：００：００：００：００”を含む資源要求データを受信すると、当該配布履歴のコンピュータ名を“ＰＣ＃１”から“ＰＣ＃２”に更新する。また、資源取得先サーバ１００は、コンピュータ名“ＰＣ＃２”およびＭＡＣアドレス“２０：００：００：００：００：００”を含む履歴問合せデータを受信した場合にも、同様に、当該配布履歴のコンピュータ名を“ＰＣ＃１”から“ＰＣ＃２”に更新する。
【０１１１】
図１３（Ｂ）は、資源取得先サーバ１００が配布履歴のＭＡＣアドレスを更新する例である。例えば、ある配布履歴に、コンピュータ名“ＰＣ＃１”、ＭＡＣアドレス“２０：００：００：００：００：００”、履歴情報“Ｘ”が登録されているとする。この場合、資源取得先サーバ１００は、コンピュータ名“ＰＣ＃１”およびＭＡＣアドレス“９０：００：００：００：００：００”を含む資源要求データを受信すると、当該配布履歴のＭＡＣアドレスを“２０：００：００：００：００：００”から“９０：００：００：００：００：００”に更新する。また、資源取得先サーバ１００は、コンピュータ名“ＰＣ＃１”およびＭＡＣアドレス“９０：００：００：００：００：００”を含む履歴問合せデータを受信した場合にも、同様に、当該配布履歴のＭＡＣアドレスを“２０：００：００：００：００：００”から“９０：００：００：００：００：００”に更新する。
【０１１２】
次に、資源取得先サーバ１００，１００ａおよびクライアント２００を例に挙げて、資源の配布履歴の管理の具体例を説明する。
図１４は、資源取得先サーバの処理の具体例（その１）を示す図である。図１４では、クライアント２００のコンピュータ名およびネットワーク接続先が変更される場合を例示する。
【０１１３】
最初の段階では、クライアント２００は、ネットワーク１０に接続されている。この場合、クライアント２００は、資源取得先サーバ１００に資源要求データを送信する。資源要求データは、クライアント２００のコンピュータ名“ＰＣ＃１”、ＭＡＣアドレス“２０：００：００：００：００：００”、および、前回接続先“１０．１０．１０．１０”（資源取得先サーバ１００のＩＰアドレス）を接続情報として含む。資源取得先サーバ１００は、資源要求データを受信する。資源取得先サーバ１００は、配布履歴テーブル１１１において、コンピュータ名“ＰＣ＃１”およびＭＡＣアドレス“２０：００：００：００：００：００”に対応付けられた履歴情報を保持している。このため、資源取得先サーバ１００は、クライアント２００に対して当該履歴情報に応じた資源配布を行い、履歴情報を更新する（ステップＳＴ１１）。
【０１１４】
その後、クライアント２００のコンピュータ名が“ＰＣ＃１”から“ＰＣ＃２”に変更される。更に、クライアント２００のネットワーク接続先が、ネットワーク１０からネットワーク１０ａに変更される。この場合、クライアント２００は、資源取得先サーバ１００ａに資源要求データを送信する（ステップＳＴ１２）。資源要求データは、クライアント２００のコンピュータ名“ＰＣ＃２”、ＭＡＣアドレス“２０：００：００：００：００：００”、前回接続先“１０．１０．１０．１０”を接続情報として含む。
【０１１５】
資源取得先サーバ１００ａは、資源要求データを受信する。資源取得先サーバ１００ａは、配布履歴テーブルにおいて、コンピュータ名“ＰＣ＃２”またはＭＡＣアドレス“２０：００：００：００：００：００”に対応付けられた履歴情報を保持していない。このため、資源取得先サーバ１００ａは、前回接続先のＩＰアドレス“１０．１０．１０．１０”に対応する資源取得先サーバ１００に対して、履歴問合せデータを送信する（ステップＳＴ１３）。履歴問合せデータは、コンピュータ名“ＰＣ＃２”、ＭＡＣアドレス“２０：００：００：００：００：００”を問合せ情報として含む。
【０１１６】
資源取得先サーバ１００は、履歴問合せデータを受信する。資源取得先サーバ１００は、配布履歴テーブル１１１において、コンピュータ名“ＰＣ＃１”およびＭＡＣアドレス“２０：００：００：００：００：００”に対応付けられた履歴情報を保持している。履歴問合せデータに含まれるコンピュータ名“ＰＣ＃２”に対応するレコードは、配布履歴テーブル１１１に登録されていない。一方、履歴問合せデータに含まれるＭＡＣアドレス“２０：００：００：００：００：００”に対応するレコードは、配布履歴テーブル１１１に登録されている。このため、資源取得先サーバ１００は、配布履歴テーブル１１１における、ＭＡＣアドレス“２０：００：００：００：００：００”に対応するレコードのコンピュータ名を“ＰＣ＃１”から“ＰＣ＃２”に変更する。資源取得先サーバ１００は、履歴ありを設定した履歴通知データを生成し、問合せ元である資源取得先サーバ１００ａに送信する。履歴通知データは、コンピュータ名“ＰＣ＃２”、ＭＡＣアドレス“２０：００：００：００：００：００”、および、配布履歴テーブル１１１から取得した履歴情報を含む。資源取得先サーバ１００は、履歴通知データの送信後、通知した履歴情報のレコードを、配布履歴テーブル１１１から削除する（ステップＳＴ１４）。
【０１１７】
資源取得先サーバ１００ａは、履歴通知データを受信する。資源取得先サーバ１００ａは、履歴通知データに含まれるコンピュータ名“ＰＣ＃２”、ＭＡＣアドレス“２０：００：００：００：００：００”、および、履歴情報のレコードを、資源取得先サーバ１００ａが保持する配布履歴テーブルに、新たに登録する。資源取得先サーバ１００ａは、新たに登録した履歴情報に基づいて、クライアント２００に対して配布する資源を特定する。資源取得先サーバ１００ａは、特定した資源をクライアント２００に配布する。
【０１１８】
こうして、資源取得先サーバ１００ａは、クライアント２００のコンピュータ名およびネットワーク接続先が変更されたとしても、クライアント２００に対する資源の配布履歴を資源取得先サーバ１００から取得できる。資源取得先サーバ１００ａは、クライアント２００に対する資源の配布履歴を基に、クライアント２００に配布済の資源を適切に把握し、配布対象の資源を正しく特定することができる。
【０１１９】
図１５は、資源取得先サーバの処理の具体例（その２）を示す図である。図１５では、クライアント２００のＭＡＣアドレスおよびネットワーク接続先が変更される場合を例示する。
【０１２０】
最初の段階では、クライアント２００は、ネットワーク１０に接続されている。この場合、クライアント２００は、資源取得先サーバ１００に資源要求データを送信する。資源要求データは、クライアント２００のコンピュータ名“ＰＣ＃１”、ＭＡＣアドレス“２０：００：００：００：００：００”、および、前回接続先“１０．１０．１０．１０”（資源取得先サーバ１００のＩＰアドレス）を接続情報として含む。資源取得先サーバ１００は、資源要求データを受信する。資源取得先サーバ１００は、配布履歴テーブル１１１において、コンピュータ名“ＰＣ＃１”およびＭＡＣアドレス“２０：００：００：００：００：００”に対応付けられた履歴情報を保持している。このため、資源取得先サーバ１００は、クライアント２００に対して当該履歴情報に応じた資源配布を行い、履歴情報を更新する（ステップＳＴ２１）。
【０１２１】
その後、クライアント２００のＭＡＣアドレスが“２０：００：００：００：００：００”から“９０：００：００：００：００：００”に変更される。更に、クライアント２００のネットワーク接続先が、ネットワーク１０からネットワーク１０ａに変更される。この場合、クライアント２００は、資源取得先サーバ１００ａに資源要求データを送信する（ステップＳＴ２２）。資源要求データは、クライアント２００のコンピュータ名“ＰＣ＃１”、ＭＡＣアドレス“９０：００：００：００：００：００”、前回接続先“１０．１０．１０．１０”を接続情報として含む。
【０１２２】
資源取得先サーバ１００ａは、資源要求データを受信する。資源取得先サーバ１００ａは、配布履歴テーブルにおいて、コンピュータ名“ＰＣ＃１”またはＭＡＣアドレス“９０：００：００：００：００：００”に対応付けられた履歴情報を保持していない。このため、資源取得先サーバ１００ａは、前回接続先のＩＰアドレス“１０．１０．１０．１０”に対応する資源取得先サーバ１００に対して、履歴問合せデータを送信する（ステップＳＴ２３）。履歴問合せデータは、コンピュータ名“ＰＣ＃１”、ＭＡＣアドレス“９０：００：００：００：００：００”を問合せ情報として含む。
【０１２３】
資源取得先サーバ１００は、履歴問合せデータを受信する。資源取得先サーバ１００は、配布履歴テーブル１１１において、コンピュータ名“ＰＣ＃１”およびＭＡＣアドレス“２０：００：００：００：００：００”に対応付けられた履歴情報を保持している。履歴問合せデータに含まれるＭＡＣアドレス“９０：００：００：００：００：００”に対応するレコードは、配布履歴テーブル１１１に登録されていない。一方、履歴問合せデータに含まれるコンピュータ名“ＰＣ＃１”に対応するレコードは、配布履歴テーブル１１１に登録されている。このため、資源取得先サーバ１００は、配布履歴テーブル１１１における、コンピュータ名“ＰＣ＃１”に対応するレコードのＭＡＣアドレスを“２０：００：００：００：００：００”から“９０：００：００：００：００：００”に変更する。資源取得先サーバ１００は、履歴ありを設定した履歴通知データを生成し、問合せ元である資源取得先サーバ１００ａに送信する。履歴通知データは、コンピュータ名“ＰＣ＃１”、ＭＡＣアドレス“９０：００：００：００：００：００”、および、配布履歴テーブル１１１から取得した履歴情報を含む。資源取得先サーバ１００は、履歴通知データの送信後、通知した履歴情報のレコードを、配布履歴テーブル１１１から削除する（ステップＳＴ２４）。
【０１２４】
資源取得先サーバ１００ａは、履歴通知データを受信する。資源取得先サーバ１００ａは、履歴通知データに含まれるコンピュータ名“ＰＣ＃１”、ＭＡＣアドレス“９０：００：００：００：００：００”、および、履歴情報のレコードを、資源取得先サーバ１００ａが保持する配布履歴テーブルに、新たに登録する。資源取得先サーバ１００ａは、新たに登録した履歴情報に基づいて、クライアント２００に対して配布する資源を特定する。資源取得先サーバ１００ａは、特定した資源をクライアント２００に配布する。
【０１２５】
こうして、資源取得先サーバ１００ａは、クライアント２００のＭＡＣアドレスおよびネットワーク接続先が変更されたとしても、クライアント２００に対する資源の配布履歴を資源取得先サーバ１００から取得できる。資源取得先サーバ１００ａは、クライアント２００に対する資源の配布履歴を基に、クライアント２００に配布済の資源を適切に把握し、配布対象の資源を正しく特定することができる。
【０１２６】
図１６は、資源取得先サーバの処理の具体例（その３）を示す図である。図１６では、クライアント２００のコンピュータ名が変更される場合（ネットワーク接続先は変更されない）、および、第２の実施の形態の情報処理システムに、クライアント２００ａが新規に追加される場合を例示する。
【０１２７】
クライアント２００は、ネットワーク１０に接続されている。この場合、クライアント２００は、資源取得先サーバ１００に資源要求データを送信する。資源要求データは、クライアント２００のコンピュータ名“ＰＣ＃１”、ＭＡＣアドレス“２０：００：００：００：００：００”、および、前回接続先“１０．１０．１０．１０”（資源取得先サーバ１００のＩＰアドレス）を接続情報として含む。資源取得先サーバ１００は、資源要求データを受信する。資源取得先サーバ１００は、配布履歴テーブル１１１において、コンピュータ名“ＰＣ＃１”およびＭＡＣアドレス“２０：００：００：００：００：００”に対応付けられた履歴情報を保持している。このため、資源取得先サーバ１００は、クライアント２００に対して当該履歴情報に応じた資源配布を行い、履歴情報を更新する（ステップＳＴ３１）。
【０１２８】
その後、クライアント２００のコンピュータ名が“ＰＣ＃１”から“ＰＣ＃２”に変更される。そして、クライアント２００は、資源取得先サーバ１００に資源要求データを送信する（ステップＳＴ３２）。資源要求データは、クライアント２００のコンピュータ名“ＰＣ＃２”、ＭＡＣアドレス“２０：００：００：００：００：００”、前回接続先“１０．１０．１０．１０”を接続情報として含む。
【０１２９】
資源取得先サーバ１００は、資源要求データを受信する。資源取得先サーバ１００ａは、配布履歴テーブルにおいて、コンピュータ名“ＰＣ＃１”およびＭＡＣアドレス“２０：００：００：００：００：００”に対応付けられた履歴情報を保持している。資源要求データに含まれるコンピュータ名“ＰＣ＃２”に対応するレコードは、配布履歴テーブル１１１に登録されていない。一方、資源要求データに含まれるＭＡＣアドレス“２０：００：００：００：００：００”に対応するレコードは、配布履歴テーブル１１１に登録されている。このため、資源取得先サーバ１００は、配布履歴テーブル１１１における、ＭＡＣアドレス“２０：００：００：００：００：００”に対応するレコードのコンピュータ名を“ＰＣ＃１”から“ＰＣ＃２”に変更する（ステップＳＴ３３）。資源取得先サーバ１００は、ＭＡＣアドレス“２０：００：００：００：００：００”に対応する履歴情報に基づいて、要求元のクライアント２００に対する配布対象資源を特定する。資源取得先サーバ１００は、特定した配布対象資源をクライアント２００に配布する。資源取得先サーバ１００は、当該クライアント２００の履歴情報に配布結果を登録する。
【０１３０】
こうして、資源取得先サーバ１００は、クライアント２００のコンピュータ名が変更されたとしても、クライアント２００に対する資源の配布履歴をＭＡＣアドレスにより特定できる。資源取得先サーバ１００は、クライアント２００に対する資源の配布履歴を基に、クライアント２００に配布済の資源を適切に把握し、配布対象の資源を正しく特定することができる。ここでは、クライアント２００のコンピュータ名が変更される例を示したが、クライアント２００のＭＡＣアドレスが変更される場合も、資源取得先サーバ１００は、クライアント２００に対する資源の配布履歴をコンピュータ名により適切に特定できる。
【０１３１】
続いて、ネットワーク１０にクライアント２００ａが新たに接続される。この場合、クライアント２００ａは、資源取得先サーバ１００に資源要求データを送信する（ステップＳＴ３４）。資源要求データは、クライアント２００ａのコンピュータ名“ＰＣ＃３”、クライアント２００ａのＭＡＣアドレス“８０：００：００：００：００：００”、および、前回接続先情報“なし”を接続情報として含む。クライアント２００ａは、システムに追加されてから今回が初めての資源要求データの送信であるため、前回接続先情報は“なし”となる。
【０１３２】
資源取得先サーバ１００は、資源要求データを受信する。資源取得先サーバ１００は、配布履歴テーブル１１１において、コンピュータ名“ＰＣ＃３”、ＭＡＣアドレス“８０：００：００：００：００：００”に対応付けられた履歴情報を保持していない。更に、今回受信した資源要求データの前回接続先情報は“なし”である。したがって、資源取得先サーバ１００は、コンピュータ名“ＰＣ＃３”またはＭＡＣアドレス“８０：００：００：００：００：００”で識別されるクライアント２００ａが新規に追加されたクライアントであると判断する。資源取得先サーバ１００は、コンピュータ名“ＰＣ＃３”、ＭＡＣアドレス“８０：００：００：００：００：００”に対応するレコードを、配布履歴テーブル１１１に追加する。資源取得先サーバ１００は、資源要求データに応じた配布対象資源を特定し、クライアント２００ａに配布する。資源取得先サーバ１００は、クライアント２００ａの履歴情報に配布結果を登録する。
【０１３３】
このように、資源取得先サーバ１００は、新たに追加されたクライアント２００ａに対しても適切に配布履歴を管理することができる。
ところで、第２の実施の形態で例示した方法に対し、コンピュータ名およびＭＡＣアドレスの何れか一方のみを履歴情報に対応付けて管理することも考えられる。しかし、この場合、履歴情報を適切に管理できないおそれがある。具体的には次の通りである。
【０１３４】
図１７は、ＭＡＣアドレスのみで配布履歴を管理する場合の例を示す図である。図１７の例を説明するために、資源取得先サーバ１００ｃおよびクライアント２００ｆを含むシステム（第２の実施の形態の情報処理システムとは別個のシステム）を考える。例えば、資源取得先サーバ１００ｃは、クライアント２００ｆに対する資源の履歴情報を、クライアント２００ｆのＭＡＣアドレス“２０：００：００：００：００：００”のみに対応付けて管理している。このとき、クライアント２００ｆは、クライアント２００ｆのＭＡＣアドレス“２０：００：００：００：００：００”を含む資源要求データを資源取得先サーバ１００ｃに送信する（ステップＳＴ１０１）。資源取得先サーバ１００ｃは、ＭＡＣアドレス“２０：００：００：００：００：００”に対応する履歴情報を基に、クライアント２００ｆに対する資源配布を行う。
【０１３５】
その後、クライアント２００ｆのＮＩＣ変更に伴い、クライアント２００ｆのＭＡＣアドレスが“２０：００：００：００：００：００”から“９０：００：００：００：００：００”に変更される。そして、クライアント２００ｆは、変更後のＭＡＣアドレス“９０：００：００：００：００：００”を含む資源要求データを資源取得先サーバ１００ｃに送信する（ステップＳＴ１０２）。資源取得先サーバ１００ｃは、ＭＡＣアドレス“９０：００：００：００：００：００”に対応する履歴情報を保持していない。このため、資源取得先サーバ１００ｃは、ステップＳＴ１０１のときと同一クライアントであるにも関わらず、ＭＡＣアドレス“９０：００：００：００：００：００”に対応する履歴情報を管理するためのレコード（配布履歴）を新規作成する（ステップＳＴ１０３）。
【０１３６】
このように、ＭＡＣアドレスのみで配布履歴を管理すると、クライアント側のＭＡＣアドレスの変更に応じて、同一クライアントに対し複数の配布履歴が作成され得る。この場合、資源取得先サーバ１００ｃは、既存の履歴情報により配布済の資源を把握できないため、配布済であるはずの資源を未配布であると誤認識するおそれがある。また、資源取得先サーバ１００ｃは、未配布であると誤認識した資源を、クライアント２００ｆに対して再配布してしまうおそれもある。資源の再配布は、ネットワーク、資源取得先サーバ１００ｃおよびクライアント２００ｆに対して余計な負荷を与える要因になる。また、ＭＡＣアドレス変更前のクライアント２００ｆの配布履歴が、以後、クライアント２００ｆの配布履歴として利用されないまま、資源取得先サーバ１００ｃの記憶装置上に残存し、記憶リソースを圧迫するおそれもある。また、前述のように、残存する配布履歴によって、各クライアントに対する資源の配布状況を適切に管理できないおそれもある。図１７の例では、ＭＡＣアドレスのみで配布履歴を管理する例を示したが、コンピュータ名のみで配布履歴を管理する場合も同様に、端末装置に対する資源配布の不整合が生じ得る。
【０１３７】
そこで、第２の実施の形態の資源取得先サーバ１００，１００ａ，１００ｂは、コンピュータ名とＭＡＣアドレスとに対応付けて資源配布の履歴情報を記憶し、コンピュータ名または物理アドレスにより該当クライアントに対する履歴情報を特定する。ここで、コンピュータ名はオペレーティングシステムなどのソフトウェアの情報であり、ＭＡＣアドレスはＮＩＣに関するハードウェアの情報であるといえる。これらソフトウェアの情報とハードウェアの情報とが同時に変更されることは非常に稀であると考えられる。強いてあるとすれば、ホスト名変更の契機（例えば、ユーザの運用規約の変更タイミングなど）と、ＮＩＣの交換（故障などによる交換）が同時に発生するという状況が考えられるが、このような状況が発生する可能性は非常に低い。よって、コンピュータ名とＭＡＣアドレスの組に履歴情報を対応付けて管理しておけば、コンピュータ名およびＭＡＣアドレスの何れか一方のみに履歴情報を対応付けて管理するよりも、各クライアントに対する履歴情報を適切に特定できる可能性を高められる。こうして、資源取得先サーバ１００，１００ａ，１００ｂは、クライアントに対する資源配布の不整合を抑止でき、クライアントに対して適切に資源配布を行える。
【０１３８】
ここで、前述のように、クライアントのネットワーク接続先の変更などに応じて、クライアントの接続先の資源取得先サーバが変更されることもある。第２の実施の形態の情報処理システムのように、資源取得先サーバ１００，１００ａ，１００ｂで複数のクライアントに対する資源配布の状況を分散管理する場合、このような接続先の変更にも適切に対応することが求められる。
【０１３９】
図１８は、前回接続先情報を用いない場合の例を示す図である。図１８の例を説明するために、資源取得先サーバ１００ｄ，１００ｆおよびクライアント２００ｇを含むシステム（第２の実施の形態の情報処理システムとは別個のシステム）を考える。例えば、資源取得先サーバ１００ｄは、クライアント２００ｇに対する資源の履歴情報をクライアント２００ｆのコンピュータ名“ＰＣ＃１”およびクライアント２００ｆのＭＡＣアドレス“２０：００：００：００：００：００”に対応付けて管理している。このとき、クライアント２００ｇは、コンピュータ名“ＰＣ＃１”およびＭＡＣアドレス“２０：００：００：００：００：００”をＰＣ（Personal Computer）情報として含む資源要求データを資源取得先サーバ１００ｄに送信する（ステップＳＴ１１１）。ここで、ステップＳＴ１１１で送信される資源要求データには、前回接続先情報は含まれない。資源取得先サーバ１００ｄは、コンピュータ名“ＰＣ＃１”およびＭＡＣアドレス“２０：００：００：００：００：００”に対応する履歴情報を基に、クライアント２００ｇに対する資源配布を行う。
【０１４０】
その後、クライアント２００ｇのネットワーク接続先変更に伴い、クライアント２００ｇによる資源要求データの送信先が、資源取得先サーバ１００ｄから、資源取得先サーバ１００ｆに変更される。
【０１４１】
そして、クライアント２００ｇは、コンピュータ名“ＰＣ＃１”およびＭＡＣアドレス“２０：００：００：００：００：００”を含む資源要求データを、資源取得先サーバ１００ｆに送信する（ステップＳＴ１１２）。ここで、ステップＳＴ１１２で送信される資源要求データには、前回接続先情報は含まれない。資源取得先サーバ１００ｆは、コンピュータ名“ＰＣ＃１”またはＭＡＣアドレス“２０：００：００：００：００：００”に対応する履歴情報を保持していない。このため、資源取得先サーバ１００ｆは、コンピュータ名“ＰＣ＃１”およびＭＡＣアドレス“２０：００：００：００：００：００”に対応する履歴情報を管理するためのレコード（配布履歴）を新規作成する（ステップＳＴ１１３）。
【０１４２】
このように、クライアント側のネットワーク接続先の変更に応じて、同一クライアントに対し、異なる資源取得先サーバで、複数の配布履歴が作成され得る。上記の例の場合、資源取得先サーバ１００ｆは、クライアント２００ｇに対して配布済であるはずの資源を未配布であると誤認識するおそれがある。また、資源取得先サーバ１００ｆは、未配布であると誤認識した資源をクライアント２００ｇに対して再配布してしまうおそれもある。前述のように、資源の再配布は、ネットワーク、資源取得先サーバ１００ｆおよびクライアント２００ｇに対して余計な負荷を与える要因になる。また、ＭＡＣアドレス変更前のクライアント２００ｇの配布履歴（不要な履歴）が、以後、クライアント２００ｇの配布履歴として利用されないまま、資源取得先サーバ１００ｄの記憶装置上に残存し、記憶リソースを圧迫するおそれもある。更に、前述のように、残存する配布履歴によって、各クライアントに対する資源の配布状況を適切に管理できないおそれもある。
【０１４３】
そこで、第２の実施の形態のクライアント２００，２００ａ，２００ｂ，２００ｃ，２００ｄ，２００ｅは、前回接続先情報を資源要求データに含める。資源取得先サーバ１００，１００ａ，１００ｂは、資源要求データに含まれる前回接続先情報により、自サーバでは保持していないクライアントの履歴情報を、前回接続先の資源取得先サーバに問合せることができる。このとき、前回接続先の資源取得先サーバは、問合せに対して自サーバが保持する該当クライアントの履歴情報を提供するとともに、提供した履歴情報を削除することで、資源取得先サーバ間で重複した履歴情報を保持しないよう制御できる。すなわち、資源取得先サーバ１００，１００ａ，１００ｂで不要な履歴情報が残存することを抑えられる。こうして、資源取得先サーバ１００，１００ａ，１００ｂは、互いに連携して、クライアントに対する資源の配布履歴を適切に分散管理することができる。
【０１４４】
なお、第１，第２の実施の形態では、物理アドレスとして、ＭＡＣアドレスを例示したが、システム内で端末装置（あるいはクライアント）を一意に特定できる情報であればＭＡＣアドレス以外でもよい。例えば、配布履歴管理装置１（あるいは、資源取得先サーバ１００）は、端末装置２（あるいは、クライアント２００）が備える所定のハードウェア（プロセッサやＨＤＤなど）が保持するハードウェアの識別情報（製造番号やシリアル番号など）を物理アドレスとして用いることも考えられる。
【０１４５】
また、第１の実施の形態の情報処理は、演算部１ｂにプログラムを実行させることで実現できる。また、第２の実施の形態の情報処理は、プロセッサ１０１にプログラムを実行させることで実現できる。プログラムは、コンピュータ読み取り可能な記録媒体１３に記録できる。
【０１４６】
例えば、プログラムを記録した記録媒体１３を配布することで、プログラムを流通させることができる。また、プログラムを他のコンピュータに格納しておき、ネットワーク経由でプログラムを配布してもよい。コンピュータは、例えば、記録媒体１３に記録されたプログラムまたは他のコンピュータから受信したプログラムを、ＲＡＭ１０２やＨＤＤ１０３などの記憶装置に格納し（インストールし）、当該記憶装置からプログラムを読み込んで実行してもよい。
【符号の説明】
【０１４７】
１  配布履歴管理装置
１ａ  記憶部
１ｂ  演算部
２  端末装置
Ｔ１  管理テーブル
３  ネットワーク
【図１】
0006643706.tif 000002
【図２】
0006643706.tif 000003
【図３】
0006643706.tif 000004
【図４】
0006643706.tif 000005
【図５】
0006643706.tif 000006
【図６】
0006643706.tif 000007
【図７】
0006643706.tif 000008
【図８】
0006643706.tif 000009
【図９】
0006643706.tif 000010
【図１０】
0006643706.tif 000011
【図１１】
0006643706.tif 000012
【図１２】
0006643706.tif 000013
【図１３】
0006643706.tif 000014
【図１４】
0006643706.tif 000015
【図１５】
0006643706.tif 000016
【図１６】
0006643706.tif 000017
【図１７】
0006643706.tif 000018
【図１８】
0006643706.tif 000019