JP4788796B2 - ネットワークシステム - Google Patents

ネットワークシステム Download PDF

Info

Publication number
JP4788796B2
JP4788796B2 JP2009076797A JP2009076797A JP4788796B2 JP 4788796 B2 JP4788796 B2 JP 4788796B2 JP 2009076797 A JP2009076797 A JP 2009076797A JP 2009076797 A JP2009076797 A JP 2009076797A JP 4788796 B2 JP4788796 B2 JP 4788796B2
Authority
JP
Japan
Prior art keywords
firmware
computer
peripheral device
server
computers
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2009076797A
Other languages
English (en)
Other versions
JP2010231388A (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.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2009076797A priority Critical patent/JP4788796B2/ja
Priority to US12/726,011 priority patent/US8626920B2/en
Publication of JP2010231388A publication Critical patent/JP2010231388A/ja
Application granted granted Critical
Publication of JP4788796B2 publication Critical patent/JP4788796B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/123Software or firmware update, e.g. device firmware management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1289Remote printer device, e.g. being remote from client or server in server-client-printer device configuration, e.g. the server does not see the printer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Description

本発明は、ネットワークシステムに関する。
従来、サーバと、ネットワークを介してサーバと通信可能なコンピュータと、このコンピュータとネットワークを介して通信可能な周辺装置とを備えたネットワークシステムが知られている。
そして、この種のネットワークシステムでは、コンピュータが、サーバから周辺装置であるプリンタの最新のファームウェアを取得し、この取得したファームウェアをプリンタへ送信することにより、プリンタがファームウェアの更新を行うものがある(例えば、特許文献1参照)。
特開2007−148629号公報
ところで、周辺装置と通信可能なコンピュータが複数存在する場合には、全てのコンピュータが、サーバに対してファームウェアの取得を同時に行う可能性がある。この場合、サーバへのアクセスが集中するので、ネットワークのトラフィック(回線の利用状況)が増大してしまうという問題が生じる。
本発明は、上記点に鑑み、ネットワークのトラフィックが増大してしまうことを抑制することを目的とする。
上記目的を達成するためになされた請求項1に記載の発明は、サーバと、ネットワークを介してサーバと通信可能な複数のコンピュータと、ネットワークを介して複数のコンピュータと通信可能な周辺装置とを備えたネットワークシステムであって、サーバに設けられ、周辺装置に搭載される最新のファームウェアが記憶されたファームウェア記憶手段と、周辺装置に設けられ、複数のコンピュータの中から1台のコンピュータを選出する選出手段と、周辺装置に設けられ、選出手段により選出されたコンピュータと通信を行うことにより、この選出されたコンピュータに対して、最新のファームウェアの提供要求を送信する提供要求送信手段と、複数のコンピュータに設けられ、提供要求送信手段からの提供要求を受信した場合に、サーバと通信を行うことにより、サーバのファームウェア記憶手段に記憶された最新のファームウェアをサーバから取得するファームウェア取得手段と、複数のコンピュータに設けられ、ファームウェア取得手段によりファームウェアが取得された場合に、提供要求を送信した周辺装置と通信を行うことにより、この周辺装置に対して最新のファームウェアを提供するファームウェア提供手段と、周辺装置に設けられ、周辺装置のファームウェアを、ファームウェア提供手段により提供される最新のファームウェアに更新する更新手段とを備えたことを特徴とする。
これによれば、周辺装置は、ファームウェアの提供元として、1台のコンピュータを選出するので、周辺装置と通信可能なコンピュータが複数存在したとしても、サーバと同時に通信を行うコンピュータは1台だけとなる。
このため、コンピュータがファームウェアをサーバから取得するために、複数のコンピュータがサーバに対して同時に通信を行うことを防止することができるので、サーバへのアクセスが集中してしまうことを抑制することができる。したがって、ネットワークのトラフィックが増大してしまうことを抑制することができる。
また、請求項1に記載の発明では、周辺装置に設けられ、複数のコンピュータと通信を行うことにより、そのコンピュータの使用状況を通信先のコンピュータから取得する使用状況取得手段を備え、選出手段は、使用状況取得手段により取得されたコンピュータの使用状況に基づいて、1台のコンピュータを選出する。
これによれば、コンピュータの使用状況に基づいて、ファームウェアの提供元となるコンピュータを選出しているので、例えばコンピュータの記憶容量がファームウェアのサイズに対して十分ではない場合など、ファームウェアの提供元として適していないコンピュータを選出してしまうのを防止することができる。
また、選出手段は、請求項2に記載のように、使用状況取得手段により取得されたコンピュータの使用状況が所定の条件を満たすコンピュータを選出候補として抽出し、この抽出したコンピュータの中から1台のコンピュータを選出するようにされていれば、ファームウェアの提供元として適したコンピュータだけを、選出候補として絞り込むことができる。
た、請求項に記載の発明では、サーバと、ネットワークを介して前記サーバと通信可能な複数のコンピュータと、前記ネットワークを介して前記複数のコンピュータと通信可能な周辺装置とを備えたネットワークシステムであって、前記サーバに設けられ、前記周辺装置に搭載される最新のファームウェアが記憶されたファームウェア記憶手段と、前記周辺装置に設けられ、前記複数のコンピュータの中から1台のコンピュータを選出する選出手段と、前記周辺装置に設けられ、前記選出手段により選出されたコンピュータと通信を行うことにより、この選出されたコンピュータに対して、最新のファームウェアの提供要求を送信する提供要求送信手段と、前記複数のコンピュータに設けられ、前記提供要求送信手段からの提供要求を受信した場合に、前記サーバと通信を行うことにより、前記サーバのファームウェア記憶手段に記憶された最新のファームウェアを前記サーバから取得するファームウェア取得手段と、前記複数のコンピュータに設けられ、前記ファームウェア取得手段によりファームウェアが取得された場合に、前記提供要求を送信した周辺装置と通信を行うことにより、この周辺装置に対して最新のファームウェアを提供するファームウェア提供手段と、前記周辺装置に設けられ、前記周辺装置のファームウェアを、前記ファームウェア提供手段により提供される最新のファームウェアに更新する更新手段とを備え、前記選出手段は、乱数に基づいて1台のコンピュータを選出することを特徴とする。
また、請求項に記載の発明は、複数のコンピュータに設けられ、提供要求を受信した場合に、その提供要求を送信した周辺装置に対して、利用者による前記コンピュータの操作、又は、該コンピュータ自身のその時点における使用状況に基づいて、ファームウェアの提供元になるか否かを選択する提供元選択手段と、提供元選択手段によりファームウェアの提供元にはならないと選択された場合に、提供要求を送信した周辺装置に対して、ファームウェアを提供することができない旨を通知する通知手段とを備え、ファームウェア取得手段は、提供元選択手段によりファームウェアの提供元になると選択された場合に、サーバと通信を行い、逆に、提供元選択手段によりファームウェアの提供元にはならないと選択された場合には、サーバと通信を行わないことを特徴とする。
このような請求項に記載の発明では、コンピュータは、ファームウェアの提供元として選出されたことに対して拒否することができるので、ファームウェアの提供元として適していないコンピュータについては、ファームウェアの提供元にはならないと選択することにより、周辺装置は、ファームウェアの提供元として適したコンピュータからファームウェアの更新を行うことができる。
したがって、効率良くファームウェアの更新を行うことができる。
また、提供元選択手段は、請求項に示すように、提供要求を受信した場合に、コンピュータ自身のその時点における使用状況を調査し、その調査結果に基づいて、ファームウェアの提供元になるか否かを選択するとよい。
このようにすれば、例えば、コンピュータの使用率が大きい場合など、ファームウェアの提供元に適していないコンピュータについては、ファームウェアの提供元にはならないように選択することで、周辺装置は、ファームウェアの提供元として適したコンピュータからファームウェアの更新を行うことができる。
また、提供元選択手段は、請求項に記載のように、コンピュータ自身の使用状況として、ネットワークの回線の通信速度やネットワーク使用率等、ネットワークの使用状況を調査すれば、ファームウェアの更新に際して要するネットワークの通信時間を効果的に短縮することができる。
また、選出手段は、請求項に記載のように、通知手段から通知を受けた場合に、複数のコンピュータのうち、その通知を送信したコンピュータを除くコンピュータの中から、1台のコンピュータを選出するようにされていれば、ファームウェアの提供元とはならないコンピュータを再度選出してしまうことを防止することができる。
第1実施形態のネットワークシステム全体の構成を表す概略構成図である。 第1実施形態のプリンタの記憶部に記憶されている監視テーブルを説明する説明図である。 第1実施形態のプリンタの制御部が実行するステータス情報送信処理のフローチャートである。 第1実施形態のプリンタの制御部が実行する登録削除処理のフローチャートである。 第1実施形態のプリンタの制御部が実行する更新処理のフローチャートである。 第1実施形態のプリンタの制御部が実行するエージェント選出処理のフローチャートである。 第1実施形態のPCにおいてステータスモニタが起動された際に実行される処理のフローチャートである。 第1実施形態のPCの制御部が実行するエージェント可否選択処理のフローチャートである。 第2実施形態のエージェント選出処理のフローチャートである。 第3実施形態のPCの制御部及びプリンタの制御部が実行する処理のフローチャートである。 第4実施形態のエージェント選出処理のフローチャートである。 第5実施形態のPCに制御部が実行する使用状況調査処理のフローチャートである。 第5実施形態の更新処理のフローチャートである。 第6実施形態のエージェント選出処理のフローチャートである。 第7実施形態のエージェント選出処理のフローチャートである。
以下に本発明の実施形態を図面と共に説明する。
1.ネットワークシステムの全体構成
図1は、本発明が適用されたネットワークシステム全体の構成を表す概略構成図である。
ネットワークシステムは、図1に示すように、複数のパーソナルコンピュータ1A〜1E(以下、PC1A〜1Eという)、プリンタ2、及び、サーバ3などにより構成される。
PC1A〜1Eとプリンタ2とは、LAN(Local Area Network)5を介して互いに通信可能となっている。また、LAN5は、ルータ6を介してWAN(Wide Area Network:例えば、インターネット)7に接続され、PC1は、WAN7を介してサーバ3とも通信可能となっている。
また、サーバ3には、プリンタ2用のファームウェアを配信する機能が備えられており、このサーバ3の記憶部4には、配信対象となるプリンタ2のファームウェアがそのバージョン情報と関連付けて記憶されている。
PC1は、制御部11、記憶部12、入力部13、表示部14、及び、ネットワークインターフェース15などを備えている。
制御部11は、CPU,RAM,ROM等のハードウェアと、OS(Operating System)やアプリケーション等のソフトウェアによって構成されている。この制御部11において、ネットワークシステムに関連するソフトウェアとしては、ステータスモニタ11Aやパーサなどが機能している。
ステータスモニタ11Aは、プリンタ2の動作状態、トラブル状態及び使用状況等のプリンタ2に関するステータス情報を、表示部14に出力することで、利用者に通知する処理や、プリンタ2から要求に従い、プリンタ2の最新のファームウェアをサーバ3から取得し、その取得したファームウェアをプリンタ2に対して提供する処理などを実行する。
記憶部12は、大容量のハードディスク装置や不揮発性メモリによって構成されるものであり、この記憶部12は、比較的大きいサイズのデータや、電力供給が遮断されたときにも消失させたくないデータを記憶する際に利用される。また、本実施形態において、この記憶部12には、PC1がサーバ3から取得(受信)したプリンタ2のファームウェアが記憶される。
なお、図1においては、PC1Aについてのみ内部構成を図示してあるが、他のPC1B〜1Eの内部構成も、PC1Aと同様になっている。また、このことは、後述する図面においても同様である。
プリンタ2は、PC1A〜1Eから送信されてくる印刷指令に従い、出力用紙に印字を行うものであり、このプリンタ2は、制御部21、記憶部22、操作部23、表示部24、ネットワークインターフェース25、印刷部26、及び、音や光を発生させることで周囲に報知する報知部27などを備えている。
記憶部22は、不揮発性メモリによって構成されるものであり、この記憶部22には、プリンタ2が備えるハードウェアを制御するためのファームウェア、そのファームウェアに関連する情報、及び、プリンタ2と通信可能なPC1A〜1Eを監視する監視テーブルなどが記憶されている。なお、ファームウェアに関連する情報とは、ファームウェアの種類、及び、ファームウェアのバージョン情報などの情報のことである。
監視テーブルは、プリンタ2と通信可能なPC1A〜1Eを監視するためのものであり、この監視テーブルは、図2に示すように、プリンタ2と通信可能なPC1A〜1Eに関するホスト情報(本実施形態では、IPアドレス、ポート、プロトコル等)と、PC1A〜1Eがプリンタ2に最後にアクセスした最終アクセス時刻とが関連付けられたものである。なお、最終アクセス時刻は、後述するS520の処理でPC1A〜1Eから送られたステータス要求指令をプリンタ2が受信した時刻のことであり、プリンタ2が電源を供給されてからのカウント値で示されている。
制御部21は、CPU,RAM,ROM等からなるマイクロコンピュータにて構成されている。
また、制御部21は、プリンタ2のステータス情報を要求することを表すステータス要求指令をPC1A〜1Eから受信すると、図3に示すステータス情報送信処理を実行する。なお、図3は、制御部21が実行するステータス情報送信処理のフローチャートである。
具体的に説明すると、制御部21は、ステータス要求指令を受信すると、図3に示すように、その受信時刻を最終アクセス時刻とし、ステータス要求指令を送信したPC1A〜1Eのホスト情報と最終アクセス時刻とを関連付けて監視テーブルに記憶し(S110)、ステータス要求指令を送信したPC1A〜1Eに対して、プリンタ2のステータス情報を送信する(S120)。
また、制御部21は、図4に示すように、定期的(本実施形態では10秒毎)に、監視テーブルに記憶(登録)されているPC1A〜1Eのうち、最終アクセス時刻から30秒経過したPC1A〜1Eの情報を監視テーブルから削除する(S210)、という登録削除処理を行う。すなわち、制御部21は、自身が電源を供給されてから現在までのカウント値と、監視テーブルの最終アクセス時刻(プリンタ2が電源を供給されてから最終アクセスまでのカウント値)を比較し、その差が30秒を超えたPCの情報を削除する。なお、図4は、制御部21が実行する登録削除処理のフローチャートである。
また、制御部21は、監視テーブルに登録されているPC1A〜1Eの中から1台のPCを選出し、その選出したPCからファームウェアを取得して、プリンタ2自身のファームウェアを最新のファームウェア(選出したPCから取得したファームウェア)に更新する更新処理を行う。
2.ネットワークシステムの特徴的作動
2.1.プリンタの特徴的作動
2.1.1.更新処理
図5は、プリンタ2の制御部21が実行する更新処理を表すフローチャートであり、この処理は、定期的(本実施形態では1ヶ月に1回)に実行される。
そして、制御部21が図5に示す更新処理を開始すると、図5に示すように、まず、現在継続中の印刷処理が終了するまでの間、待機状態が保たれる(S310)。
そして、現在継続中の印刷処理が終了すると、続くS320にて、監視テーブルに登録されているPC1A〜1Eの中から、1台のPCをファームウェアの提供元(エージェント)となるPCとして選出するエージェント選出処理が行われる。
なお、ファームウェアの提供元となるPCとは、サーバ3経由でプリンタ2のファームウェアを取得して、その取得したファームウェアをプリンタ2に提供するPCのことであり、以下の説明では、プリンタ2がエージェント選出処理にてPC1Aを選出した場合を例に挙げて説明する。
続いて、S330では、最新のファームウェアを要求することを表すファームウェア要求指令が、エージェント選出処理にて選出されたPC1Aに対して送信され、続くS340では、このファームウェア要求指令に対する応答としてPC1Aから送信されてくる応答信号が、プリンタ2にて受信されたか否かが判定される。
そして、S340にて、応答信号が受信されていないと判定された場合には(S340:NO)、このS340の処理が繰り返し実行される。一方、応答信号が受信されたと判定された場合には(S340:YES)、このS340の処理にて受信された応答信号は、PC1Aがエージェントとなることを承諾する旨を表すものであったか否かが判定される(S350)。
そして、S350にて、応答信号はPC1Aがエージェントとなることを承諾する旨を表すものではない、換言すれば、応答信号はPC1Aがエージェントとなることを承諾しない旨を表すものであると判定された場合には(S350:NO)、監視テーブルに登録されているPC1A〜1Eの中に、他のエージェントの候補があるか否かが判定される(S360)。
具体例を挙げて説明すると、S350にて、応答信号はPC1Aがエージェントとなることを承諾する旨を表すものではないと判定された場合(S350:NO)、S360では、今回エージェント選出処理にて選出されたPC1Aがエージェントにはならないので、監視テーブルに登録されているPC1A〜1Eの中に、PC1A以外のPCがあるか否かが判定される。
そして、S360にて、他のエージェントの候補があると判定された場合には(S360:YES)、すでに選出されたPC(ここではPC1A)以外のPC1B〜1Eの中から、1台のPCを選出するエージェント選出処理が実行され(S320)、逆に、他のエージェントの候補がないと判定された場合には(S360:NO)、図5に示す更新処理が終了する。
また、S350にて、応答信号はPC1Aがエージェントとなることを承諾する旨を表すものであると判定された場合には(S350:YES)、エージェント選出処理にて選出されたPC1Aからファームウェアが取得されて、その取得されたファームウェアがプリンタ2の最新のファームウェアとして更新(上書き)され(S370)、図5に示す更新処理が終了する。
なお、プリンタ2が現在有しているファームウェアのバージョンが、既に最新のものであった場合、プリンタ2は、S370にて、エージェント選出処理で選出されたPC1Aからファームウェアを取得せずに、図5に示す更新処理を終了する。
2.1.2.エージェント選出処理
図6は、プリンタ2の制御部21が実行するエージェント選出処理を表すフローチャートであり、この処理は、図5に示す更新処理のS310が終了したときに実行される。そして、制御部21がエージェント選出処理を開始すると、監視テーブルに登録されたPC1A〜1Eのうち、PC1A〜1Eがエージェントとなることを承諾しない旨の応答信号を送信していないPCの数を最大値とした乱数が発生される(S410)。
つまり、エージェント選出処理では、当初、監視テーブルに登録された全てのPC1A〜1Eをエージェントの選出候補としているが、エージェントとして選出したが拒否されたPC1A〜1Bについては(S350:NO)、エージェントの選出候補から除外するようにされている。
そして、続くS420では、S410の結果に基づいて、監視テーブルに登録されたPC1A〜1Eの中から1台のPC1Aが選出され、エージェント選出処理が終了する。
具体的には、たとえばPC1Aのみがエージェントとなることを承諾しない旨の応答信号をだした場合、1から4の乱数が生成され、その1から4のそれぞれの数字がPC1B〜1Eに対応する。乱数の結果が2であるならば、対応するPC1Cが選ばれることになる。
2.2.PCの特徴的作動
2.2.1.ステータスモニタが実行する処理
図7は、PC1Aにおいてステータスモニタ11Aが起動された際に制御部11が実行する処理であり、PC1Aの制御部11が図7に示す処理を開始すると、図7に示すように、まず、待機状態が1秒間保たれる(S510)。
次に、プリンタ2に対してステータス要求指令が送信され、その指令に応じてプリンタ2から送信されたステータス情報が取得され、その情報が表示される(S520)。
続いて、S530では、ファームウェア要求指令がPC1Aにて受信されたか否かが判定される。このファームウェア要求指令は、プリンタ2の更新処理においてS330にて送信されたものである。そして、S530にて、ファームウェア要求指令が受信されていないと判定された場合には(S530:NO)、処理がS510に戻り、逆に、ファームウェア要求指令が受信されたと判定された場合には(S530:YES)、処理がS540に移行される。
S540では、PC1A自身の使用状況を調査し、その調査結果に基づいて、PC1A自身がエージェントとなるか否かを選択するエージェント可否選択処理が実行され、続くS550では、エージェント可否選択処理の結果に基づいて、PC1A自身がエージェントになるか否かが判定される。
そして、S550にて、PC1A自身がエージェントとはならないと判定された場合には(S550:NO)、PC1Aがエージェントとなることを承諾しない旨を表す応答信号がプリンタ2に対して送信され(S560)、処理がS510に戻る。
一方、S550にて、PC1A自身がエージェントとなると判定された場合には(S550:YES)、PC1Aがエージェントとなることを承諾する旨を表す応答信号がプリンタ2に対して送信される(S570)。
続いて、S580では、プリンタ2の最新のファームウェアをサーバ3から取得するファームウェア取得処理が実行される。そして、続くS590では、S580にて取得されたファームウェアがプリンタ2に対して送信(提供)され、処理がS510に戻る。
なお、ファームウェア取得処理(S580)では、プリンタ2が現在有しているファームウェアのバージョンが既に最新のものであった場合、サーバ3からファームウェアを取得しない。また、ファームウェア提供処理(S590)においても同様に、プリンタ2が現在有しているファームウェアのバージョンが既に最新のものであった場合には、プリンタ2に対してファームウェアを提供しない。
2.2.2.エージェント可否選択処理
図8は、ステータスモニタ11A(厳密には、ステータスモニタ11Aとして機能するPC1Aの制御部21)が実行するエージェント可否選択処理を表すフローチャートであり、この処理は、図7に示す処理のS530にて、ファームウェア要求指令が受信されたと判定された場合にS540として実行される。
そして、図8に示すように、PC1Aの制御部11がエージェント可否選択処理を開始すると、まず、PC1A自身が現在シャットダウン中であるか否かが判定される(S610)。
そして、S610にて、PC1A自身が現在シャットダウン中であると判定された場合には(S610:YES)、PC1A自身がエージェントとはならないと選択され(S620)、図8に示すエージェント可否選択処理が終了する。
一方、S610にて、PC1A自身が現在シャットダウン中ではないと判定された場合には(S610:NO)、処理がS630に移行される。S630では、PC1A自身のネットワークの使用状況に基づいて、PC1Aがネットワーク通信を行うのに余力が残されているか否かが判定される。
具体的に説明すると、S630では、ネットワークの使用状況として、ネットワークの使用率とネットワークの回線の通信速度とを調査し、例えば、ネットワークの使用率が所定値以下であり、かつ、通信速度が10[Mbps]以上であった場合に、PC1Aがネットワーク通信を行うのに余力が残されていると判定される。
そして、S630にて、PC1Aがネットワーク通信を行うのに余力が残されていないと判定された場合には(S630:NO)、PC1A自身がエージェントとはならないと選択され(S620)、図8に示すエージェント可否選択処理が終了する。
一方、S630にて、PC1Aがネットワーク通信を行うのに余力が残されていると判定された場合には(S630:YES)、所定時間内にPC1Aがシャットダウンを行う予定があるか否かが判定される(S640)。
そして、S640にて、所定時間内にPC1Aがシャットダウンを行う予定があると判定された場合には(S640:YES)、PC1A自身がエージェントとはならないと選択され(S620)、図8に示すエージェント可否選択処理が終了する。
一方、S640にて、所定時間内にPC1Aがシャットダウンを行う予定がないと判定された場合には(S640:NO)、制御部11のCPUの使用率が50%以下であるか否かが判定される(S650)。
そして、S650にて、制御部11のCPUの使用率が50%以下ではないと判定された場合には(S650:NO)、PC1A自身がエージェントとはならないと選択され(S620)、図8に示すエージェント可否選択処理が終了する。
一方、S650にて、制御部11のCPUの使用率が50%以下であると判定された場合には(S650:YES)、PC1Aの現在の状態がスリープ状態であるか否かが判定される(S660)。
そして、S660にて、PC1Aの現在の状態がスリープ状態であると判定された場合には(S660:YES)、PC1A自身がエージェントとなると選択され(S710)、図8に示すエージェント可否選択処理が終了する。
一方、S660にて、PC1Aの現在の状態がスリープ状態ではないと判定された場合には(S660:NO)、PC1Aにログイン中の利用者がいないか否かが判定される(S670)。
そして、S670にて、PC1Aにログイン中の利用者がいないと判定された場合には(S670:YES)、PC1A自身がエージェントとなると選択され(S710)、図8に示すエージェント可否選択処理が終了する。
一方、S670にて、PC1Aにログイン中の利用者がいると判定された場合には(S670:NO)、ログイン中の利用者が特定権限を有しているか否かが判定される(S680)。
そして、S680にて、ログイン中の利用者が特定権限を有してはいないと判定された場合には(S680:NO)、PC1A自身がエージェントとなると選択され(S710)、図8に示すエージェント可否選択処理が終了する。
一方、S680にて、ログイン中の利用者が特定権限を有していると判定された場合には(S680:YES)、PC1Aがエージェントとなることを承諾するか否かを利用者に選択させるための選択画面が、PC1Aの表示部14に表示され、この選択画面における利用者の選択結果がPC1Aに入力部13を介して入力されたか否かが判定される(S690)。
そして、S690は、上記選択画面における利用者の選択結果がPC1Aに入力部13を介して入力されたと判定されるまでの間、繰り返し実行され、利用者の選択結果がPC1Aに入力されたと判定されると(S690:YES)、その入力結果は、PC1Aがエージェントとなることを承諾する選択であったか否かが判定される(S700)。
そして、S700にて、PC1Aがエージェントとなることを承諾する選択であると判定された場合には(S700:YES)、PC1A自身がエージェントとなると選択され(S710)、図8に示すエージェント可否選択処理が終了する。
一方、S700にて、PC1Aがエージェントとなることを承諾する選択ではないと判定された場合には(S700:NO)、PC1A自身がエージェントとはならないと選択され(S620)、図8に示すエージェント可否選択処理が終了する。
3.本実施形態に係るネットワークシステムの特徴
以上説明したように、本実施形態によれば、プリンタ2は、エージェント(ファームウェアの提供元)として、複数のPC1A〜PC1Eの中から1台のPCを選出するので(S320)、プリンタ2と通信可能なPC1A〜1Bが複数存在したとしても、サーバ3と同時に通信を行うPCは1台だけとなる。
このため、PCがファームウェアをサーバ3から取得するために、複数のPC1A〜1Eがサーバ3に対して同時に通信を行うことを防止することができるので、サーバ3へのアクセスが集中してしまうことを抑制することができる。したがって、ネットワークのトラフィックが増大してしまうことを抑制することができる。
また、本実施形態では、エージェントとなるPC1A〜1Eを選出する際に、乱数を発生させることで(S410)、無作為にエージェントとしてのPC1A〜1Eを選出するようにされている。つまり、本実施形態では、乱数を用いることで、エージェント選出処理選出にて前回選出したPC1Aとは異なるPC1B〜1Eを選出され易くしている。
このため、特定のPC1A〜1Eが、エージェントとして集中的に選出されて一台のみに負荷が集中することを防いでいる。
また、本実施形態のPC1A〜1Eは、図8のエージェント可否選択処理に示すように、プリンタ2によりエージェントとして選出されたことに対して拒否することができるので(S620)、エージェントとして適していないPC1Aについては、エージェントとはならないと選択することにより、プリンタ2は、エージェントとして適したPC1A〜1Eを利用してファームウェアの更新を行うことができる。
したがって、効率良くファームウェアの更新を行うことができる。
また、本実施形態では、ネットワーク通信に余力がない場合(S630:NO)や、PC1A〜1EのCPUの使用率が大きい場合(S650:NO)など、エージェントと適していないPC1A〜1Eについては、このPC1A〜1Eがエージェントとはならないようにされている(S620)。このため、プリンタ2は、エージェントとして適したPC1A〜1Eからファームウェアの更新を行うことができる。
また、エージェント可否選択処理では、エージェントとなるか否かの選択条件として、ネットワークの回線の通信速度やネットワーク使用率を利用しているので(S630)、ファームウェアの更新に際して要するネットワークの通信時間を効果的に短縮することができる。
さらに、本実施形態では、特定の権限者が使用するPCに関しては、たとえほかの条件に合致したとしてもエージェントになることを拒否する仕組みもいれられている(S680〜S700)。この処理により、特定の権限を持つユーザは、エージェントになることを拒否することができるので、緊急案件の処理を行う必要があるユーザは、その緊急案件の処理を邪魔されることがない。
また、本実施形態のプリンタ2は、PC1A〜1Eから送信されてくる応答信号がエージェントとはならない旨を表すものであった場合に(S350:NO)、複数のPC1A〜1Eのうち、その応答信号を送信したPCを除くPCの中から、1台のPCを選出するようにされているので、エージェントとはならないPC1A〜1Eを再度選出してしまうことを防止することができる。
4.発明特定事項と実施形態との対応関係
本実施形態では、プリンタ2が特許請求の範囲に記載された周辺装置に相当し、サーバ3の記憶部4が特許請求の範囲に記載されたファームウェア記憶手段に相当し、S410及びS420の処理が特許請求の範囲に記載された選出手段に相当する。
また、S330の処理が特許請求の範囲に記載された提供要求送信手段に相当し、S580の処理が特許請求の範囲に記載されたファームウェア取得手段に相当し、S590の処理が特許請求の範囲に記載されたファームウェア提供手段に相当する。
また、S370の処理が特許請求の範囲に記載された更新手段に相当し、S610〜S710の処理が特許請求の範囲に記載された提供元選択手段に相当し、S560の処理が特許請求の範囲に記載された通知送信手段に相当する。
(第2実施形態)
上述した第1実施形態では、乱数を利用してエージェントとなるPC1A〜1Eを選出するようにされていたが、本実施形態は、図9に示すように、プリンタ2へのアクセス時間が最も長いPC1A〜1Eを、エージェントとして選出するようにされている。
以下、本実施形態のエージェント選出処理について、図9を用いて説明する。なお、図9は、第2実施形態のエージェント選出処理のフローチャートである。また、第2実施形態において、第1実施形態と同じ構成については同一の符号を付し、同じ処理内容については同一のステップ番号を付しているため、詳細な説明は省略する。また、このことは、後述する第3〜第7実施形態においても同様である。
上述した図5に示す更新処理のS110が終了することで、制御部21がエージェント選出処理を開始すると、図9に示すように、監視テーブル(図2)に登録されたPC1A〜1Eの中から、最初にアクセスした時刻から最終アクセス時刻までが最も長いPC1Aが選出され(S810)、エージェント選出処理が終了する。
具体的には、登録されているPC1A〜1Eの最初にアクセスした時刻と最終アクセス時刻とをそれぞれ記憶しておき、その差がもっとも大きいPCがエージェントとして選出される。
以上のように、本実施形態においても、プリンタ2は、エージェントとして、1台のPCを選出するので、上記第1実施形態と同様に、ネットワークのトラフィックが増大してしまうことを抑制することができる。
また、もっとも長くアクセスしているPCは、プリンタ2との通信を安定して行える可能性が高いので、そのようなPCをエージェントとして選出することで、PCからプリンタ2へのファームウェアの提供を安定して行うことができる。
なお、本実施形態では、S810の処理が特許請求の範囲に記載された選出手段に相当する。
(第3実施形態)
本実施形態のエージェント選出処理は、上述した第1及び第2実施形態のエージェント選出処理と比較すると、PC1A〜1Eの使用状況を利用して、エージェントとなるPC1A〜1Eを選出するようにされている。
以下、本実施形態のエージェント選出処理について、図10を用いて説明する。なお、図10は、第3実施形態のPC1Aの制御部11及びプリンタ2の制御部21が実行する処理のフローチャートである。
図10に示すように、プリンタ2の制御部21がエージェント選出処理を開始すると、まず、PC1A〜1Eに対して、PC1A〜1Eが有する全てのアプリケーションの内容について問い合わせが行われる(S910)。すると、この問い合わせを受けたPC1A〜1E側では、プリンタ2に対して、PC1A〜1E自身が有する全てのアプリケーションの内容が送信(報告)される(S1010)。
そして、PC1A〜1Eが有する全てのアプリケーションの内容がプリンタ2にて受信されると、その受信結果に基づいて、各アプリケーションの印刷頻度について調査が行われ、この印刷頻度に対して重み付け加算が行われる(S920)。
具体的には、プリンタ2には、印刷頻度が高いと想定されるアプリケーションの種類が予め記憶されており、プリンタ2は、例えばPC1Aから取得したアプリケーションの内容に基づいて、PC1Aが有するアプリケーションの種類が、記憶されているアプリケーションの種類と一致するか否かを判断する。
一致する場合には、そのアプリケーションは印刷頻度が高いアプリケーションとして重み付け加算され、一致しない場合は何も加算されない。
このような処理をPC1Aから取得したすべてのアプリケーションについて繰り返し行われる。
続いて、S930では、全てのPC1A〜1Eの各アプリケーションに対して調査が行われたか否かが判定される。そして、S930にて、全てのPC1A〜1Eの各アプリケーションに対して調査が行われていないと判定された場合には(S930:NO)、処理がS910に戻り、逆に、全てのPC1A〜1Eの各アプリケーションに対して調査が行われたと判定された場合には(S930:YES)、処理がS940に移行される。
S940では、S920の計算結果(加算値)が最小となるPC1Aがエージェントとして選出され、エージェント選出処理が終了する。つまり、S940では、プリンタ2を最も利用していないPC1A〜1Eがエージェントとして選出される。
以上のように、本実施形態においても、プリンタ2は、エージェントとして、1台のPCを選出するので、上記第1及び第2実施形態と同様に、ネットワークのトラフィックが増大してしまうことを抑制することができる。
また、本実施形態では、PC1A〜1Eの使用状況(アプリケーションの印刷頻度)に基づいて、エージェントとなるPC1A〜1Eを選出しているので、エージェントとして適していないPCを選出してしまうのを防止することができる。
なお、本実施形態では、S910〜940の処理が特許請求の範囲に記載された選出手段に相当する。
(第4実施形態)
本実施形態のエージェント選出処理は、上述した第1〜第3実施形態のエージェント選出処理と比較すると、プリンタ2の利用者がエージェントとなるPC1A〜1Eを選出するようにされている。
以下、本実施形態のエージェント選出処理について、図11を用いて説明する。なお、図11は、第4実施形態のエージェント選出処理のフローチャートである。
図11に示すように、プリンタ2の制御部21がエージェント選出処理を開始すると、まず、報知部27に光及び音を発生させる報知処理が行われ(S1110)、監視テーブル(図2)に登録されているPC1A〜1Eのうち何れかを選択可能な選択画面が、表示部24に表示される(S1120)。
そして、S1130では、表示部24の選択画面にて表示されているPC1A〜1Eの中から1台が、利用者により選択されたか否かが判定される(S1130)。このS1130は、PC1A〜1Eの中から1台が利用者により選択されたと判定されるまでの間、繰り返し実行される。
そして、S1130にて、PC1A〜1Eの中から1台が利用者により選択されたと判定されると(S1130:YES)、利用者により選択されたPC1A〜1Eがエージェントとして選出され(S1140)、エージェント選出処理が終了する。
以上のように、本実施形態においても、プリンタ2は、エージェントとして、1台のPCを選出するので、上記第1〜第3実施形態と同様に、ネットワークのトラフィックが増大してしまうことを抑制することができる。
なお、本実施形態では、S1110〜1140の処理が特許請求の範囲に記載された選出手段に相当する。
(第5実施形態)
本実施形態は、上述した第1〜第4実施形態と比較すると、PC1A〜1Eの使用状況が所定の条件を満たすPC1A〜1Eをエージェントの選出候補として抽出し、この抽出したPC1A〜1Eの中から1台のPCを選出するようにされている。
具体的に説明すると、本実施形態のPC1Aの制御部11では、PC1A自身の使用状況を調査する使用状況調査処理が行われ、この調査結果(後述の「スコア」)がプリンタ2へ送信される。
また、プリンタ2は、PC1Aから送信されてくるスコアを受信する度に、記憶部22に記憶する。そして、プリンタ2は、このスコアに基づいて、PC1A〜1Eの中からエージェントの選出候補を抽出し、この抽出した選出候補の中から1台のPCを選出する。
以下、本実施形態のPC1Aの制御部11が実行する使用状況調査処理、及び、プリンタ2の制御部21が実行する更新処理について、図12及び図13を用いて説明する。
1.使用状況調査処理
図12は、本実施形態のPC1Aの制御部11が実行する使用状況調査処理のフローチャートであり、この処理は、定期的(本実施形態では、1時間毎)に実行される。そして、図12に示すように、PC1Aの制御部11が使用状況調査処理を開始すると、まず、PC1Aがネットワークに接続可能であるか否かの調査が行われる(S1210)。
具体的に説明すると、S1210では、PC1AがWAN7に接続されているか否か、及び、PC1Aのポートが使用可能(例えば、ファイアーウォールによりポートが閉じられていない状態)であるか否かについて、調査が行われる。
続いて、S1220では、S1210の調査結果に基づいて、PC1Aがネットワークに接続可能であるかの判定が行われる。具体的に説明すると、S1210では、PC1AがWAN7に接続され、かつ、PC1Aのポートが使用可能である場合に、PC1Aがネットワークに接続可能であると判定される。
そして、S1220にて、PC1Aがネットワークに接続可能ではないと判定された場合には(S1220:NO)、PC1Aの使用状況を表すスコアが「0」に設定される(S1310)。続いて、S1300では、S1310にて設定されたスコアがプリンタ2へ送信され、使用状況調査処理が終了する。
一方、S1220にて、PC1Aがネットワークに接続可能であると判定された場合には(S1220:YES)、PC1Aの記憶部12の空き容量が計算され、(S1230)、その計算結果(記憶部12の空き容量)に基づいて、PC1Aがファームウェアをダウンロード可能か否かが判定される(S1240)。
具体的に説明すると、S1240では、記憶部12の空き容量が、ファームウェアを記憶するのに十分な容量があった場合に、PC1Aがファームウェアをダウンロード可能であると判定される。
そして、S1240にて、PC1Aがファームウェアをダウンロード可能ではないと判定された場合には(S1240:NO)、スコアが「0」に設定され(S1310)、そのスコアがプリンタ2へ送信される(S1300)。
一方、S1240にて、PC1Aがファームウェアをダウンロード可能であると判定された場合には(S1240:YES)、ネットワークの余力について調査が行われる(S1250)。具体的に説明すると、S1250では、ネットワークの非使用率とネットワークの回線の通信速度との積が計算される。
そして、S1260では、制御部11(具体的にはCPU)の非使用率が計算され、続いて、S1250による計算結果とS1260による計算結果とが加算され、この計算結果がスコアとして設定される(S1270)。
次に、S1280では、リアルタイムに実行されているアプリケーションがある(例えば、PC1Aにて音楽ファイルや動画ファイルが実行されている)か否かが判定される。
そして、S1280にて、リアルタイムに実行されているアプリケーションがないと判定された場合には(S1280:NO)、S1270で設定されたスコアがプリンタ2へ送信される(S1300)。
一方、S1280にて、リアルタイムに実行されているアプリケーションがあると判定された場合には(S1280:YES)、S1270で設定されたスコアが下方補正され(S1290)、この下方補正されたスコアがプリンタ2へ送信される(S1300)。
2.更新処理
図13は、本実施形態のプリンタ2の制御部21が実行する更新処理のフローチャートである。この処理は、定期的(本実施形態では1ヶ月に1回)に実行される。
図13に示すように、制御部21が図13に示す更新処理を開始して、現在継続中の印刷処理が終了すると(S310)、記憶部22に記憶されているスコア(すなわち、PC1A〜1Eの使用状況)の中から所定値以上のスコアであったPC1A〜1Eがエージェントの選出候補として抽出される(S315)。
そして、続くS320では、S315で抽出されたPC1A〜1Eの中から、1台のPCを、エージェントとなるPCとして選出するエージェント選出処理が行われる。なお、本実施形態で実行されるエージェント選出処理の詳細は、上述した第1〜第4実施形態(図6,9〜11)の何れであってもよい。
3.本実施形態に係るネットワークシステムの特徴
以上説明したように、本実施形態においても、プリンタ2は、エージェントとして、1台のPCを選出するので、上記第1〜第4実施形態と同様に、ネットワークのトラフィックが増大してしまうことを抑制することができる。
また、本実施形態では、PC1A〜1Eから送信されてきたスコアの値が所定値以上であった場合に、そのスコアに対応するPC1A〜1Eをエージェントの選出候補として抽出している(S315)。
つまり、本実施形態では、PC1A〜1Eの使用状況が所定の条件を満たすPC1A〜1Eをエージェントの選出候補として抽出し、この抽出したPC1A〜1Eの中から1台のPCを選出するようにされている。このため、エージェントとして適したPC1A〜1Eだけを、エージェントの選出候補として絞り込むことができる。
なお、スコア計算の手法は上記に限定されるものではなく、たとえばログインされてないPCやスクリーンセーバーが起動しているPCなどはスコアを増やすなど、変更が可能である。またスコアの送信は、S315にてプリンタがPCに要求し、それにこたえる形で行われてもよい。
なお、本実施形態では、S315及びS320の処理が特許請求の範囲に記載された選出手段に相当する。
(第6実施形態)
本実施形態のエージェント選出処理は、上述した第1〜5実施形態のエージェント選出処理と比較すると、PC1A〜1Eから送信されてくるスコア(PC1A〜1Eの使用状況)に基づいて、エージェントとなるPC1A〜1Eを選出するようにされている。
以下、本実施形態のエージェント選出処理について、図14を用いて説明する。なお、図14は、第6実施形態のエージェント選出処理のフローチャートである。
図14に示すように、プリンタ2の制御部21がエージェント選出処理を開始すると、プリンタ2の記憶部22に記憶されているスコアに基づいて、S315(図13参照)にてエージェントの選出候補として抽出されたPC1A〜1Eの中から、スコアが最も高いPC1A〜1Eが、エージェントなるPCとして選出され(S1410)、エージェント選出処理が終了する。
以上のように、本実施形態においても、プリンタ2は、エージェントとして、1台のPCを選出するので、上記第1〜第5実施形態と同様に、ネットワークのトラフィックが増大してしまうことを抑制することができる。
なお、本実施形態では、S315及びS1410の処理が特許請求の範囲に記載された選出手段に相当する。
(第7実施形態)
上述した第6実施形態では、PC1A〜1Eから送信されてくるスコア(PC1A〜1Eの使用状況)に基づいて、エージェントとなるPC1A〜1Eを選出していたが、本実施形態は、スコアに加えて乱数も利用して、エージェントとなるPC1A〜1Eを選出するようにされている。
以下、本実施形態のエージェント選出処理について、図15を用いて説明する。なお、図15は、第7実施形態のエージェント選出処理のフローチャートである。
図15に示すように、プリンタ2の制御部21がエージェント選出処理を開始すると、S315にてエージェントの選出候補として抽出されたPC1A〜1Eの各々に対して乱数が発生される(S1510)。
続いて、S1520では、S1510にて発生された乱数と、その乱数に対応するPC1A〜1Eのスコアとが重み付け加算され、続くS1530では、その加算値が最大となるPC1A〜1Eが、エージェントとなるPCとして選出され、エージェント選出処理が終了する。
以上のように、本実施形態においても、プリンタ2は、エージェントとして、1台のPCを選出するので、上記第1〜第6実施形態と同様に、ネットワークのトラフィックが増大してしまうことを抑制することができる。
なお、本実施形態では、S315、S1510〜1530の処理が特許請求の範囲に記載された選出手段に相当する。
(その他の実施形態)
本発明は、特許請求の範囲に記載された発明の趣旨に合致するものであればよく、上述の実施形態に限定されるものではない。
また、上記実施形態では、周辺装置として、プリンタ2を例に挙げて説明していたが、本発明はこれに限定されるものではなく、周辺装置は、ネットワークを介して他の機器と通信可能な機器であって、ファームウェアの更新が必要な機器であれば何でもよい。例えば、周辺装置は、ネットワーク接続可能なハードディスクドライブや複合機やFAX機等でもよい。
1A〜1E…PC(パーソナルコンピュータ)、2…プリンタ、3…サーバ、4…記憶部、5…LAN、6…ルータ、7…WAN、11…制御部、11A…ステータスモニタ、12…記憶部、13…入力部、14…表示部、15…ネットワークインターフェース、21…制御部、22…記憶部、23…操作部、24…表示部、25…ネットワークインターフェース、26…印刷部、27…報知部。

Claims (7)

  1. サーバと、ネットワークを介して前記サーバと通信可能な複数のコンピュータと、前記ネットワークを介して前記複数のコンピュータと通信可能な周辺装置とを備えたネットワークシステムであって、
    前記サーバに設けられ、前記周辺装置に搭載される最新のファームウェアが記憶されたファームウェア記憶手段と、
    前記周辺装置に設けられ、前記複数のコンピュータの中から1台のコンピュータを選出する選出手段と、
    前記周辺装置に設けられ、前記選出手段により選出されたコンピュータと通信を行うことにより、この選出されたコンピュータに対して、最新のファームウェアの提供要求を送信する提供要求送信手段と、
    前記複数のコンピュータに設けられ、前記提供要求送信手段からの提供要求を受信した場合に、前記サーバと通信を行うことにより、前記サーバのファームウェア記憶手段に記憶された最新のファームウェアを前記サーバから取得するファームウェア取得手段と、
    前記複数のコンピュータに設けられ、前記ファームウェア取得手段によりファームウェアが取得された場合に、前記提供要求を送信した周辺装置と通信を行うことにより、この周辺装置に対して最新のファームウェアを提供するファームウェア提供手段と、
    前記周辺装置に設けられ、前記周辺装置のファームウェアを、前記ファームウェア提供手段により提供される最新のファームウェアに更新する更新手段と、
    前記周辺装置に設けられ、前記複数のコンピュータと通信を行うことにより、そのコンピュータの使用状況を通信先のコンピュータから取得する使用状況取得手段を備え、
    前記選出手段は、前記使用状況取得手段により取得されたコンピュータの使用状況に基づいて、1台のコンピュータを選出することを特徴とするネットワークシステム。
  2. 前記選出手段は、前記使用状況取得手段により取得されたコンピュータの使用状況が所定の条件を満たすコンピュータを選出候補として抽出し、この抽出したコンピュータの中から1台のコンピュータを選出すること
    を特徴とする請求項1に記載のネットワークシステム。
  3. サーバと、ネットワークを介して前記サーバと通信可能な複数のコンピュータと、前記ネットワークを介して前記複数のコンピュータと通信可能な周辺装置とを備えたネットワークシステムであって、
    前記サーバに設けられ、前記周辺装置に搭載される最新のファームウェアが記憶されたファームウェア記憶手段と、
    前記周辺装置に設けられ、前記複数のコンピュータの中から1台のコンピュータを選出する選出手段と、
    前記周辺装置に設けられ、前記選出手段により選出されたコンピュータと通信を行うことにより、この選出されたコンピュータに対して、最新のファームウェアの提供要求を送信する提供要求送信手段と、
    前記複数のコンピュータに設けられ、前記提供要求送信手段からの提供要求を受信した場合に、前記サーバと通信を行うことにより、前記サーバのファームウェア記憶手段に記憶された最新のファームウェアを前記サーバから取得するファームウェア取得手段と、
    前記複数のコンピュータに設けられ、前記ファームウェア取得手段によりファームウェアが取得された場合に、前記提供要求を送信した周辺装置と通信を行うことにより、この周辺装置に対して最新のファームウェアを提供するファームウェア提供手段と、
    前記周辺装置に設けられ、前記周辺装置のファームウェアを、前記ファームウェア提供手段により提供される最新のファームウェアに更新する更新手段とを備え、
    前記選出手段は、乱数に基づいて1台のコンピュータを選出することを特徴とするネットワークシステム。
  4. 前記複数のコンピュータに設けられ、前記提供要求を受信した場合に、その提供要求を送信した周辺装置に対して、利用者による前記コンピュータの操作、又は、該コンピュータ自身のその時点における使用状況に基づいて、ファームウェアの提供元になるか否かを選択する提供元選択手段と、
    前記提供元選択手段によりファームウェアの提供元にはならないと選択された場合に、前記提供要求を送信した周辺装置に対して、ファームウェアを提供することができない旨を通知する通知手段とを備え、
    前記ファームウェア取得手段は、前記提供元選択手段によりファームウェアの提供元になると選択された場合に、前記サーバと通信を行い、逆に、前記提供元選択手段によりファームウェアの提供元にはならないと選択された場合には、前記サーバと通信を行わないこと
    を特徴とする請求項1ないし請求項の何れか1項に記載のネットワークシステム。
  5. 前記提供元選択手段は、前記提供要求を受信した場合に、前記コンピュータ自身のその時点における使用状況を調査し、その調査結果に基づいて、ファームウェアの提供元になるか否かを選択すること
    を特徴とする請求項に記載のネットワークシステム。
  6. 前記提供元選択手段は、前記コンピュータ自身の使用状況として、前記コンピュータが使用するネットワークの状況を調査すること
    を特徴とする請求項に記載のネットワークシステム。
  7. 前記選出手段は、前記通知手段から通知を受けた場合に、前記複数のコンピュータのうち、その通知を送信したコンピュータを除くコンピュータの中から、1台のコンピュータを選出すること
    を特徴とする請求項ないし請求項の何れか1項に記載のネットワークシステム。
JP2009076797A 2009-03-26 2009-03-26 ネットワークシステム Active JP4788796B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009076797A JP4788796B2 (ja) 2009-03-26 2009-03-26 ネットワークシステム
US12/726,011 US8626920B2 (en) 2009-03-26 2010-03-17 Network system and peripheral

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009076797A JP4788796B2 (ja) 2009-03-26 2009-03-26 ネットワークシステム

Publications (2)

Publication Number Publication Date
JP2010231388A JP2010231388A (ja) 2010-10-14
JP4788796B2 true JP4788796B2 (ja) 2011-10-05

Family

ID=42785632

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009076797A Active JP4788796B2 (ja) 2009-03-26 2009-03-26 ネットワークシステム

Country Status (2)

Country Link
US (1) US8626920B2 (ja)
JP (1) JP4788796B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100435985B1 (ko) * 2004-02-25 2004-06-12 엔에이치엔(주) 투표를 활용한 무정지 서비스 시스템 및 그 시스템에서의정보 갱신 및 제공 방법
JP5698493B2 (ja) 2010-10-14 2015-04-08 マツダ株式会社 車両のサスペンション支持構造
KR20130029995A (ko) * 2011-09-16 2013-03-26 삼성전자주식회사 화상형성장치 및 펌웨어 업그레이드 방법

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0973424A (ja) * 1995-09-07 1997-03-18 Mitsubishi Electric Corp ネットワークシステム
JPH11232233A (ja) * 1998-02-12 1999-08-27 Hitachi Ltd ネットワークコンピュータ管理方法及びネットワークコンピュータシステム
JP2001268306A (ja) * 2000-03-16 2001-09-28 Canon Inc マルチファンクションペリフェラルシステム
JP2004021582A (ja) 2002-06-17 2004-01-22 Seiko Epson Corp 情報処理システム、ファームウエアの書換方法、書換プログラムならびに記録媒体
EP1376344A3 (en) 2002-06-17 2005-08-24 Seiko Epson Corporation Apparatus and method of rewriting firmware
JP4408033B2 (ja) 2002-09-24 2010-02-03 株式会社リコー 遠隔管理システム
US7840674B1 (en) * 2004-05-10 2010-11-23 Intuit Inc. Routing messages across a network in a manner that ensures that non-idempotent requests are processed
JP4086813B2 (ja) * 2004-06-09 2008-05-14 キヤノン株式会社 ネットワークプリントシステム及びネットワークプリントシステムにおけるグリッド網構築方法
KR100618321B1 (ko) * 2004-11-20 2006-08-31 삼성전자주식회사 이동 단말기를 이용한 화상형성장치의 펌웨어 업그레이드방법
JP2007148629A (ja) 2005-11-25 2007-06-14 Ricoh Co Ltd プリントシステム及びファームウェア更新方法

Also Published As

Publication number Publication date
JP2010231388A (ja) 2010-10-14
US20100250749A1 (en) 2010-09-30
US8626920B2 (en) 2014-01-07

Similar Documents

Publication Publication Date Title
US8804176B2 (en) Printing system and printing method
JP5522095B2 (ja) プリンタ
US8014025B2 (en) System and method for outputting a job
JP5595035B2 (ja) 情報処理装置、その方法及びプログラム
JP4403135B2 (ja) Webサービス利用システム
JP6503986B2 (ja) 画像処理システム、情報処理装置及びプログラム
US20120092689A1 (en) Information processing apparatus, method for controlling the same, and storage medium
JP2005209059A (ja) ネットワークに接続されるプリンタの動作に関する特定情報の通知先設定
US10540130B2 (en) Management apparatus for designating one or more image forming apparatuses as preferential image forming apparatuses for requesting job information from a server
JP5505341B2 (ja) 通信装置
JP5573132B2 (ja) 印刷システム、印刷装置、プログラム、および記憶媒体
JP4788796B2 (ja) ネットワークシステム
JP2007172274A (ja) 機器管理システム及び機器管理プログラム
JP5287512B2 (ja) 周辺装置、プログラム、及び、ネットワークシステム
JP5949491B2 (ja) 情報処理装置及びプログラム
TWI530153B (zh) 輸出管理裝置、輸出管理系統及輸出管理方法
US20060123151A1 (en) Status notifications
US9686426B2 (en) Pull printing system including printing data transmitter that transmits pull printing data and storage medium
JP5401379B2 (ja) 画像形成システム、認証方法、および画像形成装置
JP2011253351A (ja) 印刷状態監視システム、情報処理装置、画像形成装置、印刷状態監視方法、プログラムおよび記録媒体
JP2014170424A (ja) 情報処理システム、ジョブ管理装置およびプログラム
JP2009220331A (ja) ネットワークインタフェース装置、印刷制御方法、印刷制御プログラム、および画像形成装置
JP4996494B2 (ja) ファクシミリデータ送信プログラムおよびファクシミリデータ送信方法
JP5983814B2 (ja) 印刷状態監視システム、情報処理装置、画像形成装置、印刷状態監視方法、プログラムおよび記録媒体
JP2004328167A (ja) 通信装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110111

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110309

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110405

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110527

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

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

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

Free format text: PAYMENT UNTIL: 20140729

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4788796

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150