JP4838564B2 - ネットワークデバイス、その制御方法およびプログラム - Google Patents

ネットワークデバイス、その制御方法およびプログラム Download PDF

Info

Publication number
JP4838564B2
JP4838564B2 JP2005294031A JP2005294031A JP4838564B2 JP 4838564 B2 JP4838564 B2 JP 4838564B2 JP 2005294031 A JP2005294031 A JP 2005294031A JP 2005294031 A JP2005294031 A JP 2005294031A JP 4838564 B2 JP4838564 B2 JP 4838564B2
Authority
JP
Japan
Prior art keywords
network device
proxy server
response
search request
multicast
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
JP2005294031A
Other languages
English (en)
Other versions
JP2007102640A (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.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to JP2005294031A priority Critical patent/JP4838564B2/ja
Application filed by Canon Inc filed Critical Canon Inc
Priority to EP06798440A priority patent/EP1949241B1/en
Priority to PCT/JP2006/319392 priority patent/WO2007043353A1/en
Priority to CN2006800371429A priority patent/CN101283336B/zh
Priority to DE602006021603T priority patent/DE602006021603D1/de
Priority to US12/065,052 priority patent/US8230492B2/en
Priority to KR1020087010868A priority patent/KR101039687B1/ko
Publication of JP2007102640A publication Critical patent/JP2007102640A/ja
Application granted granted Critical
Publication of JP4838564B2 publication Critical patent/JP4838564B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、ネットワークシステムにおけるネットワークデバイスの探索技術に関する。
近年、ネットワーク設備が整備されるに従い、ネットワークデバイス(例えば、ネットワーク対応型のプリンタ、スキャナおよび複写機など)が急速に普及しつつある。
ところで、PC(パーソナルコンピュータ)などのクライアント装置からネットワークデバイスを使用するには、種々の設定が必要となる。例えば、PCには、ネットワークデバイスのドライバをインストールする必要がある。また、ネットワークデバイスのIPアドレス、プリンタポート、使用するプリントプロトコルなどを把握して、ドライバに設定する必要もある。
最近になり、マイクロソフト社の提唱するUniversal Plug and Play(UPnP)など、ネットワークに接続されているネットワークデバイスやサービスを探索する技術が開発されている。
UPnPのバージョン1.0によれば、クラインアント装置は、あて先アドレスとしてマルチキャストアドレスを設定された探索パケットを送信する。ネットワークデバイスは、探索パケットを受信すると、自己のアドレス情報などを含む応答パケットをクラインアント装置に返信する。このようにして、クライアント装置は、ネットワークデバイスの設定情報を取得することができる。
ところで、ネットワークデバイスに関する設定情報を予め検索サーバに蓄積する技術も提案されている(特許文献1)。
特開2000−312222号公報
上述したように、探索パケットをマルチキャストパケットとして送信することで、ネットワークデバイスの探索が容易になることはいうまでもない。しかしながら、クライアントやネットワークデバイスが増加すると、探索パケットや応答パケットによってネットワークが輻輳するおそれがある。加えて、クライアントやネットワークデバイスの処理負荷も増加してしまうだろう。
一方で、ネットワークデバイスに代わって応答パケットを送信する代理サーバを設ければ、ネットワークデバイスの処理負荷は軽減される。しかしながら、探索パケットに応答するネットワークデバイスと代理サーバが共存するネットワークシステムでは、マルチキャストによる探索パケットに対して、ネットワークデバイスと代理サーバの双方が応答パケットを送信してしまうおそれがある。これでは、ネットワークの輻輳を軽減できない。
そこで、本発明は、このような課題および他の課題の少なくとも1つを解決することを目的とする。なお、他の課題については明細書の全体を通して理解できよう。
本発明によれば、ネットワークを介して接続されたクライアント装置及び代理サーバと通信するネットワークデバイスであって、前記ネットワークデバイスの設定情報を要求するために前記クライアント装置からマルチキャストにより送信される探索要求に対する応答を抑制するための指示を、前記代理サーバから受信する受信手段と、前記クライアント装置から送信される探索要求に対して前記ネットワークデバイスの代わりに前記代理サーバが前記ネットワークデバイスの設定情報を応答できるように、前記ネットワークデバイスの設定情報を前記代理サーバに送信する送信手段と、前記受信手段によって前記指示を受信した場合、前記クライアント装置から送信される探索要求であって前記ネットワークデバイスは受信し前記代理サーバが受信しないユニキャストによって送信される探索要求に対して前記ネットワークデバイスの設定情報を応答し、前記クライアント装置から送信される探索要求であって前記ネットワークデバイスと前記代理サーバが共に受信するマルチキャストによって送信される探索要求に対する応答を抑制する制御手段とを含むネットワークデバイスが提供される。
本発明によれば、代理サーバが、ネットワークデバイスの設定情報を代理送信可能な場合、ネットワークデバイスが、応答の送信を抑制する。よって、マルチキャストによる検索要求に対して、代理サーバとネットワークデバイスとの双方が応答パケットを送付してしまうことによるトラヒックの増加を緩和することが可能になる。
以下に本発明の上位概念、中位概念および下位概念の理解に役立つ一実施形態を示す。もちろん、以下の具体的な実施形態は単なる例示に過ぎない。
[第1の実施形態]
図1は、本実施形態に係るネットワークデバイスの一例を示す図である。ネットワークシステム100は、主に、LAN110を介して接続される1以上のネットワークデバイス101、1以上のクライアント装置102、および1以上の代理サーバ103を含む。
ネットワークデバイス101は、ネットワークカード(NIC)を有する周辺機器(プリンタ、複写機、コピー機、スキャナ、およびデジタルカメラなど)である。クライアント装置(以下、クライアントと称す。)102は、PC(パーソナルコンピュータ)などの情報処理装置である。代理(プロキシ)サーバ103は、ネットワークデバイス101から送信された応答パケットに含まれる設定情報をキャッシュし、キャッシュされた設定情報をクライアント102に送信する情報処理装置である。ここで、設定情報とは、クライアントがネットワークデバイスと通信する為に必要な情報である。例えば、ネットワークデバイスのIPアドレス、プリンタポート、ネットワークデバイスのドライバに係る情報等である。
本実施形態によれば、まず、ネットワークデバイス101は、設定情報を代理サーバ103に登録する。代理サーバ103は、記憶装置に設定情報を記憶し、当該設定情報の代理送信が可能な状態になる。以降、ネットワークデバイス101は、クライアントから送信される探索要求(リクエスト)またはマルチキャストによる探索要求への応答を抑制する(応答を完全に禁止してもよい)。なお、設定情報の代理送信が可能な状態には、ネットワークデバイス101が代理サーバ103から応答の抑制指示を受信した状態も含まれるものとする。なぜなら、抑制指示は、将来的に代理送信が可能となることを暗示しているからである。
図2は、実施形態に係るネットワークデバイスの例示的なブロック図である。以下で説明する各部は、ソフトウエアのみによって実現されてもよいし、ソフトウエアおよびハードウエアの組み合わせによって実現されてもよいし、あるいはハードウエアのみによって実現されてもよい。
登録部200は、設定情報を代理サーバ103に登録するためのユニットである。設定情報は、例えば、クライアント102がネットワークデバイス101と通信するために必要となる情報などである。例えば、ネットワークデバイスのIPアドレス、プリンタポート、ネットワークデバイスのドライバに係る情報等である。登録部200には、例えば、起動通知送信部201が含まれてもよい。この起動通知送信部201は、ネットワークデバイス101においてエージェントサービスが起動すると、代理サーバ103に起動通知を送信するユニットである。また、登録部200には、応答受信部202も含まれてもよい。この応答受信部202は、起動通知を受信した代理サーバ103から送信される応答を受信するユニットである。なお、この応答には、例えば、クライアント102から送信される探索要求またはマルチキャストによる探索要求への応答動作を抑制(例:無効化)するための情報が含まれていてもよい。
探索応答部203は、代理サーバ103から送信される探索要求や、クライアント102から送信される探索要求に対して応答を送信するユニットである。なお、探索応答部203の応答動作は、制御部210によって制御される。
制御部210は、代理サーバ103において設定情報の代理送信が可能な状態になると、クライアント102から送信される探索要求またはマルチキャストによる探索要求への応答を抑制するユニットである。制御部210には、例えば、探索要求に対する応答を抑制するための抑制部211を含む。抑制部211は、例えば、代理サーバ103から応答の抑制指示を受信すると、応答の抑制を開始する。なお、抑制部211は、代理サーバ103からの探索要求、または、ユニキャストもしくはブロードキャストによる探索要求に対しては応答するよう探索応答部203を制御してもよい。
制御部210には、判定部212や抑制解除部213などが含まれてもよい。図2の点線は、判定部212や抑制解除部213がオプションであることを示している。判定部212は、代理サーバ103において、ネットワークデバイス101に関する設定情報の代理送信が可能な状態になったか否かを判定する。例えば、探索応答部203は、代理サーバ103から送信された(ユニキャストによる)探索要求を受信すると、設定情報を含む探索応答を送信する。次に、判定部212は、探索応答部203による探索応答の送信が実行されると、代理送信が可能な状態になったと判定することができる。なお、探索応答の送信が完了していない場合などに、判定部212は、代理送信が可能な状態になっていないと判定する。但し、探索応答の送信が完了していない場合であっても、将来的に代理送信が可能となる可能性が高い場合は、判定部212が、代理送信が可能な状態になったと判定してもよい。
抑制解除部213は、例えば、代理サーバ103が無反応の状態になると、クライアント102などによる探索要求に対する応答の抑制を解除する。代理サーバ103が無反応の状態になるときは、例えば、代理サーバ103が正常終了したときや、異常終了したときなどが該当しよう。このように、代理サーバ103が無反応となったときは、ネットワークデバイス101は、自動的に、クライアント102等からの探索要求に応答するよう切り替わる。よって、クライアント102から、ネットワークデバイス101を検出できなくなってしまうような不測の事態を回避できよう。
図3Aは、実施形態に係る抑制解除部の例示的な構成を示す図である。抑制解除部213は、代理サーバ103の存在を確認する存在確認部301を備える。存在確認部301は、代理サーバ103に対して存在確認要求を送信する。存在確認要求は、代理サーバ103の存在を問い合わせるための要求である。なお、結果的に、代理サーバ103の存在を確認できれば、存在確認要求の形式および内容は問わない。もし代理サーバ103が正常に動作している場合、代理サーバ103は、存在確認要求に対して存在確認応答を送信する。よって、存在確認部301は、存在確認応答を受信すれば、代理サーバ103が存在していると判定できる。なお、存在確認部301は、他の装置(例:クライアント102)から存在確認依頼を受信したときに、存在確認要求を送信してもよい。
計時部302は、存在確認要求(存在の問い合せ)を送信してからの経過時間を計時するタイマーユニットである。無反応判定部303は、例えば、計時部302によって計時された経過時間が所定時間に達すると、代理サーバ103が無反応の状態になっていると判定する。無反応の場合、無反応判定部303は、抑制部211に対して抑制の解除指示を送信する。これによって、抑制部211は、抑制を解除するため、探索応答部203は、クライアント102からの探索要求や、マルチキャストによる探索要求にも応答を送信するようになる。
このように、ネットワークデバイス101は、必要に応じて代理サーバの存在を確認するため、存在確認のために送出するパケットも必要最小限にとどめることができよう。
なお、代理サーバ探索部304は、例えば、現在の代理サーバ103が無反応な状態になった場合に、他の代理サーバ等を検索するユニットである。これにより、ネットワークデバイス101は、他の代理サーバに自己の設定情報を登録することができるようになる。
図3Bは、実施形態に係る抑制解除部の他の例示的な構成を示す図である。存在明示受信部311は、代理サーバ103が正常に動作しているときに代理サーバ103から送信される存在明示情報(例:キープアライブパケットなど)を受信する。受信タイミング判定部312は、存在明示情報を所定タイミングで受信できているか否かを判定する。所定タイミングは、例えば、定期的なタイミングなどである。所定タイミングで存在明示情報を受信できなくなった場合、受信タイミング判定部312は、前記代理サーバが無反応の状態になっていると判定し、解除指示を出力する。
このように、ネットワークデバイス101は、代理サーバ103から所定のタイミングで送信されるはずの存在明示情報が途絶えると、代理サーバ103が無反応になったと認識できる。ネットワークデバイス101は、存在確認要求(図3A)を送信する必要がなくなるため、処理負荷が軽減される可能性がある。
図3Cは、実施形態に係る抑制解除部の他の例示的な構成を示す図である。解除情報受信部321は、抑制を解除するための解除情報を受信するユニットである。この解除情報は、例えば、代理サーバ103が停止するのに先立って送信する停止情報であってもよい。解除情報を受信すると、解除情報受信部321は、解除指示を出力する。
このように、代理サーバ103が停止する場合は、事前に停止情報がネットワークデバイス101に通知されるため、ネットワークデバイス101が探索不能に陥ることを防止できよう。
なお、解除情報受信部321は、解除情報を受信し、かつ代理サーバ探索部304により他の代理サーバを検出できない場合に、解除指示を出力してもよい。すなわち、他の代理サーバが存在すれば、ネットワークデバイス101は、他の代理サーバに代理応答を依頼できるからである。もちろん、引き続き、トラヒックの低減効果が得られることはいうまでもない。
図4は、実施形態に係るクライアントの例示的なブロック図である。探索部401は、マルチキャストによる探索要求を送信したり、当該探索要求に対する探索応答(設定情報を含む)を受信したりするユニットである。なお、探索部401は、代理サーバ103に対してユニキャストによる探索要求を送信し、この探索要求に対する応答が代理サーバ103から得られない場合に、マルチキャストによる探索要求を送信するようにしてもよい。ユニキャストによる探索要求を優先した方が、トラヒックの増加を抑制できるからである。
なお、代理サーバ103から停止情報を受信することもある。この場合、探索部401は、他の代理サーバやネットワークデバイス101を探索するための探索要求を送信する。
検出部402は、存在確認依頼をネットワークデバイス101に送信する契機となる所定の送信契機を検出するユニットである。存在確認部403は、所定の送信契機が検出されると、ネットワークデバイス101に対して代理サーバ103の存在を確認するよう依頼するための存在確認依頼を送信する。送信契機は、例えば、代理サーバ103からの応答がない場合などである。
図5は、実施形態に係る代理サーバの例示的な機能ブロック図である。探索部501は、マルチキャストによる探索要求を送信したり、当該探索要求に対する探索応答(設定情報を含む)を受信したりするユニットである。なお、探索部501は、ユニキャストやブロードキャストによる探索要求も送信するように構成されてもよい。また、探索部501は、起動通知をネットワークデバイス101から受信すると、起動通知に対する応答をネットワークデバイス101に送信する。
記憶部502は、探索部501を通じて受信したネットワークデバイス101の設定情報を記憶するユニットである。代理応答部503は、マルチキャストによる探索要求を受信すると、記憶部502から設定情報を読み出して探索応答を作成し、探索応答を送信するユニットである。停止制御部504は、代理サーバ103が停止するのに先立って停止情報を送信するユニットである。
図6は、実施形態に係るネットワークデバイスの制御方法を示す例示的なフローチャートである。以下では、上述の探索処理のうち最も基本的なフローについて説明する。
ステップS601において、登録部200は、ネットワークデバイス101の設定情報を代理サーバ103に登録する。ステップS602において、制御部210は、代理サーバ103が代理応答可能な状態になると、マルチキャストによる探索要求やクライアントから送信される探索要求に対する応答動作を抑制する。その結果、探索応答部203は、これらの探索要求を受信したとしても無視するように動作する。
以上説明したように本実施形態によれば、ネットワークデバイス101は、代理サーバ103が代理応答可能な状態になると、クライアント102からの探索要求やマルチキャストによる探索要求を無視するようになる。これにより、探索要求に対して、クライアント102と代理サーバ103の双方が応答してしまう事態を抑制できる。ひいては、応答に伴うトラヒックの増加も抑制されよう。
なお、クライアント102からの探索要求やマルチキャストによる探索要求への応答動作を抑制するための抑制指示を探索プロトコルに追加してもよい。すなわち、代理サーバ103が明示的な抑制指示を送信すれば、ネットワークデバイス101は、代理サーバ103が代理可能な状態になったか否かをネットワークデバイスで判定する処理が不要となろう。また、より確実に、応答動作を抑制することも可能となるので、明示的な抑制指示は好ましいであろう。
ネットワークデバイス101は、代理サーバ103からの探索要求やユニキャストによる探索要求については応答することはいうまでもない。これらの探索要求に対して応答したとしても、トラヒックに対する影響は相対的に小さいからである。また、代理サーバ103からの応答を無視してしまうと、代理サーバ103による代理応答を実現できないおそれもあるからである。
なお、ネットワークデバイス101が起動したときの起動通知を契機として、代理サーバ103は抑制指示を送信することができる。これによって、起動当初からトラヒックの増加を緩和できる利点がある。即ち、ネットワークデバイス101は、起動通知に対する応答を代理サーバ103から受信するのに応じて、マルチキャストによる探索要求やクライアントから送信される探索要求に対する応答動作を抑制してもよい。起動通知に対する応答を代理サーバ103から受信したことにより、代理サーバ103の存在が確認できたためである。
また、ネットワークデバイス101は、代理サーバ103から送信される探索要求に対して応答を完了すると、代理サーバ103が代理可能な状態になったと判断してもよい。すなわち、この応答の完了によって、代理サーバ103には設定情報がキャッシュされるため、代理応答が可能になるのである。
ところで、代理サーバ103が無反応になると、代理応答機能が停止している可能性がある。よって、代理サーバ103が無反応になったときは、ネットワークデバイス101は、抑制されていた応答動作を再度活性化することが望ましい。もし、応答動作を抑制したままにすると、ネットワークデバイス101をクライアント102から探索できなくなってしまうからである。
なお、代理サーバ103が存在(正常に動作)していることを確認するために、存在確認処理を行ってもよい。あるいは、代理サーバ103から所定タイミングで送信される存在明示情報に基づいて、存在確認処理を実行してもよい。代理サーバ103の存在を確認できなければ、代理サーバ103が停止または暴走している可能性があるので、ネットワークデバイス101は応答動作の抑制を解除することが望ましい。
なお、代理サーバ103は、停止するのに先立って解除情報をネットワークデバイス101に送信してもよい。これにより、ネットワークデバイス101は、即座に、応答動作を活性化することが可能となる。
また、ネットワークデバイス101は、応答動作を活性化する際に、他の代理サーバ103を検索してもよい。もし、他の代理サーバ103が存在すれば、当該他の代理サーバ103に代理応答を依頼できるからである。できる限り代理サーバを利用した方が、トラヒックの抑制効果が高まることはいうまでもない。
ところで、クライアント102は、代理サーバ103に対してユニキャストによる探索要求を送信することが望ましい。マルチキャストによる探索要求は、相対的にトラヒックが増大してしまうからである。但し、代理サーバ103から応答が得られない場合は、マルチキャストによる探索要求を送信してもよい。これにより、クライアント102は、代理サーバ103が応答不能に陥っても、ネットワークデバイス101を好適に探索することが可能となる。なお、クライアント102は、所定の送信契機に応じて、ネットワークデバイス101に代理サーバ103の存在を確認させてもよい。
[第2の実施形態]
以下では、第1の実施形態で説明した発明の下位概念として第2の実施形態を説明する。本実施形態は、UPnPに本発明を適用した事例である。なお、本発明は、UPnPにのみ限定されるわけではなく、他の探索プロトコルにも同様に適用できることは言うまでもない。
なお、第1の実施形態と共通する事項については、同一の参照符号を付すことで説明を簡潔化する。
図7は、実施形態に係るクライアントおよび代理サーバの例示的な機能ブロック図である。ここでは、説明の簡略化のため、クライアントおよび代理サーバとも一般的なPCとして説明する。なお、さらに説明を簡略化するため、クライアントプログラムと代理サーバプログラムとが同一のPC上で実行されるものとする。現実には、クライアントプログラムと代理サーバプログラムとは、異なるPC上で実行されることはいうまでもない。なお、クライアントプログラムまたは当該プログラムが実行されているネットワークデバイスは、探索エージェントと呼ばれることもある。
クライアント102および代理サーバ103のハードウエア構成例は、次の通りである。CPU801は、装置の各部を統括的に制御する制御ユニットである。RAM702は、ワークエリアとして機能する揮発性の記憶ユニットである。ROM703は、フォントデータ、プログラムおよび各種データを記憶する不揮発性の記憶ユニットである。704は、内部バスである。キーボードコントローラ(KBC)705は、キーボード709やポインティングデバイス等を制御するための制御ユニットである。CRTコントローラ(CRTC)706は、CRTディスプレイ(CRT)710を制御するための制御ユニットである。ディスクコントローラ(DKC)707は、外部メモリ711を制御する制御ユニットである。外部メモリ711は、フレキシブルディスクドライブやハードディスクドライブなどである。ネットワークカード708は、イーサネット(登録商標)カードなど、LAN110と接続するための通信ユニットである。
なお、ROM703または外部メモリ711には、クライアントプログラム、オペレーティングシステム(OS)、プリンタドライバなどのコンピュータプログラムが記憶されている。
図8は、実施形態に係るネットワークデバイスの例示的な機能ブロック図である。この例では、ネットワークデバイス101としてプリンタを取り上げる。もちろん、他の周辺機器であっても、本発明を適用できることはいうまでもない。
CPU801は、装置の各部を統括的に制御する制御ユニットである。RAM802は、ワークエリアとして機能する揮発性の記憶ユニットである。ROM803は、フォントデータ、プログラムおよび各種データを記憶する不揮発性の記憶ユニットである。804は、内部バスである。印刷部インタフェース806は、印刷部810を制御するための制御ユニットである。印刷部810は、レーザプリンタエンジンやインクジェットプリンタエンジンなどの画像形成ユニットである。メモリコントローラ(MC)807は、外部メモリ811を制御する制御ユニットである。外部メモリ811は、フレキシブルディスクドライブやハードディスクドライブなどである。外部メモリ811は、例えば、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶している。ネットワークカード808は、イーサネット(登録商標)カードや無線LANカードなど、LAN110と接続するための通信ユニットである。
図9は、実施形態に係る探索応答処理の例示的なフローチャートである。なお、本応答処理(エージェントサービス)は、ネットワークデバイス(例:プリンタ)101において実行されるものとする。また、この応答処理を実行するためのコンピュータプログラムは、ROM803または外部メモリ811に記憶されているものとする。
ステップS901で、CPU801は、エージェントプログラムが起動すると、デフォルトの応答動作(応答モード)を規定した設定データを取得する。エージェントプログラムは、エージェントサービスを提供するソフトウエアである。デフォルトの設定データは、例えば、ROM803などに記憶されているものとする。この設定データには、探索リクエストを受信したときの応答動作を決定するための情報が含まれている。応答動作としては、例えば、マルチキャストモードと非マルチキャストモードとがある。マルチキャストモードに設定されている場合、CPU801は、マルチキャストによるリクエストパケット(探索/multicastパケット)にも応答する。もちろん、CPU801は、ユニキャストによるリクエストパケットおよびブロードキャストによるリクエストパケットにも応答する。ここで、マルチキャストによるリクエストパケットとは、あて先としてマルチキャストアドレスが設定された探索リクエストパケットを意味する。また、ユニキャストによるリクエストパケットとは、あて先としてユニキャストアドレスが設定された探索リクエストパケットを意味する。また、ブロードキャストによるリクエストパケットとは、あて先としてブロードキャストアドレスが設定された探索リクエストパケットを意味する。
一方、非マルチキャストモードに設定されている場合、CPU801は、ユニキャストによるリクエストパケット、および、ブロードキャストによるリクエストパケットにのみ応答する。すなわち、非マルチキャストモードで、CPU801は、マルチキャストによるリクエストパケットについては応答を抑制する。
ステップS902で、CPU801は、取得した設定データに基づき、マルチキャストによるリクエストパケットに応答するか否かを判定する。設定データが、マルチキャストによるリクエストパケットに対する応答動作を無効としている場合(非マルチキャストモードの場合)、ステップS903に進む。
ステップS903で、CPU801は、マルチキャストによるリクエストパケットに対する応答動作を無効とするように設定する。例えば、CPU801は、RAM802に記憶されている有効/無効フラグを1(無効)に設定する。
一方、応答動作が有効の場合(マルチキャストモードの場合)、ステップS904に進む。ステップS904において、CPU801は、マルチキャストによるリクエストパケットに対する応答動作を有効とするように設定する。例えば、CPU801は、RAM802に記憶されている有効/無効フラグを0(有効)に設定する。
ステップS905で、CPU802は、ネットワークカード808を通じて、クライアント102、代理サーバ103および他の探索エージェントなどに、起動通知パケットを送信する。起動通知パケットは、エージェントプログラムが起動したことを表すパケットである。
ステップS906で、CPU801が、起動通知に対する代理サーバ103からの応答パケットを受信するまで待機する。この際に、CPU801は、内部タイマーによる計時を開始する。代理サーバ103は、起動通知パケットを受信すると、ユニキャストにより応答パケットをネットワークデバイス101に送信する。
ステップS907で、CPU801は、タイマーがタイムアウトしたか否かを判定する。すなわち、待機時間が所定時間を超えると「タイムアウト」となる。タイムアウトしていなければ、ステップS908に進む。タイムアウトしていれば、ステップS914に進む。
ステップS908で、CPU801は、受信した応答パケットが探索サービスの応答動作を無効化するための設定パケットであるか否かを判定する。無効化するためのパケットであれば、ステップS909に進む。有効化するためのパケットであれば、ステップS914に進む。
ステップS909で、CPU801は、エージェントサービスの内部ステータスが終了を意味するステータス(以下、終了ステータス)になっているかどうかを判定する。例えば、受信した応答パケットが、エージェントサービスの終了指示パケットであった場合は、終了ステータスとなる。終了ステータスであれば、CPU801は、本フローチャートに係るエージェントサービスをシャットダウンする。
一方、終了ステータスでなければ、ステップS910で、CPU801は、リクエストパケットの受信を試行する。
ステップS911で、CPU801は、受信したリクエストパケットが、マルチキャストによるリクエストパケットであった場合は、これを無視してステップS909に進む。これによって、応答動作が好適に抑制される。
一方、マルチキャストによるリクエストパケットでなければ、すなわち、ユニキャストまたはブロードキャストによるリクエストパケットであれば、ステップS912に進む。
ステップS912で、CPU801は、受信したリクエストパケットに対する応答パケットを作成して、ネットワークカード808を通じて送信する。
ところで、ステップS907でタイムアウトした場合、または、ステップS908で明示的な有効化を示すパケットを受信した場合は、ステップS914に進む。すなわち、起動通知パケットを送信しても、応答パケットを受信できなければ、代理サーバ103がネットワーク上に存在しないことになる。この場合、通常どおり、マルチキャストによるリクエストパケットに応答する必要がある。
ステップS914で、CPU801は、エージェントプログラムの応答動作をマルチキャストモードに変更する。すなわち、マルチキャストによるリクエストパケットへの応答動作を有効化する。
ステップS915で、CPU801は、リクエストパケットの受信待ちを行う。ステップS916で、CPU801は、受信したリクエストパケットに対して応答パケットを作成し、送信する。
ステップS917で、CPU801は、受信したパケットが、応答動作の再設定を指示するパケット(以下、再設定パケット)か、否かを判定する。再設定パケットの場合は、ステップS908に戻る。一方、再設定パケットでなければ、ステップS91で、終了ステータスか否かを判定する。終了ステータスであれば、CPU801は、本フローチャートに係るエージェントサービスをシャットダウンする。一方、終了ステータスでなければ、ステップS915に戻り、CPU801は、リクエストパケットの受信を試行する。
図10は、実施形態に係る探索プロトコルの例示的なシーケンス図である。まず、探索エージェントとして動作しているネットワークデバイス101は、起動通知パケットを(マルチキャスト)送信する(S905)。代理サーバ103やクライアント102のCPU701は、ネットワークカード708を通じて起動通知パケットを受信する。S1002で、代理サーバ103のCPU701は、ネットワークデバイス101に対し起動通知に対する応答パケットを(ユニキャスト)送信する。
さらに、S1003で、代理サーバ103のCPU701は、ネットワークデバイス101に、マルチキャストによるリクエストパケットに対する応答動作を無効化するための指示パケットを送信する。これにより、S1004で、ネットワークデバイス101は、非マルチキャストモードに移行する(S906ないしS912)。
さらに、S1005で、代理サーバ103のCPU701は、ネットワークデバイス101に対し、ユニキャストによるリクエストパケットを送信する。ネットワークデバイス101は、当該パケットを受信すると、代理サーバ103に登録するための設定情報を含む応答パケット(ユニキャスト)を作成し、返信する(S910ないしS912)。
S1006で、代理サーバ103のCPU701は、応答パケット(ユニキャスト)を受信する。S1007で、代理サーバ103のCPU701は、受信した応答パケットに含まれている設定情報を外部メモリ711に記憶する。
その後、S1008で、クライアント102のCPU701は、ネットワークカード708を通じて、マルチキャストによるリクエストパケットを送信する。S100で、ネットワークデバイス101は、応答動作が無効化されているため、当該パケットを無視する(S911でYes)。
S1010で、代理サーバ103のCPU701は、外部メモリ611に記憶している設定情報を検索する。リクエストパケットに含まれる検索条件に合致する設定情報が含まれていれば、CPU701は、当該設定情報を読み出して、応答パケットを送信する。一方、設定情報が見つかれない場合、CPU701は、探索の対象となっているネットワークデバイス101に対して、リクエストパケット(ユニキャスト)を送信する。ネットワークデバイス101は、当該パケットを受信すると、代理サーバ103に登録するための設定情報を含む応答パケット(ユニキャスト)を作成し、返信する(S910ないしS912)。代理サーバ103は、当該設定情報を外部メモリ711に記憶する。その後、S1011で、代理サーバ103のCPU701は、読み出した設定情報を含む探索応答パケットを作成し、当該応答パケットにクライアントのアドレスを設定し、ユニキャストで送信する。クライアント102のCPU701は、ネットワークデバイス101の設定情報を受信し、ネットワークデバイス101で通信できるように設定処理を実行する。
以上説明したように本実施形態に係る発明によれば、代理サーバ103による代理応答が可能なると、ネットワークデバイス101は、マルチキャストによるリクエストパケットへの応答動作を抑制する。そのため、従来のように、当該パケットに、ネットワークデバイス101と代理サーバ103の双方が応答してしまうことを抑制できる。また、探索プロトコルによるトラヒックを軽減できるであろう。なお、他の効果については、第1の実施形態において説明したので、省略する。
[第3の実施形態]
代理サーバ103は、種々の事情で停止することがある。もし、ネットワークデバイス101が非マルチキャストモードで動作している最中に、代理サーバ103が停止してしまうと、クラインアント装置102は、ネットワークデバイス101を半永久的に探索できなくなってしまうおそれがある。
そこで、本実施形態では、代理サーバ103が停止する場合は、ネットワークデバイス101に停止を通知することで、マルチキャストモードに移行させる発明を説明する。
図11は、実施形態に係る代理サーバの停止を考慮した探索応答処理の例示的なフローチャートである。なお、本フローチャートに係る処理は、図9のステップS912をサブルーチン化したものである。よって、既に説明した個所には、同一の参照符号を付すことで、説明を簡潔にする。
ステップS1101で、ネットワークデバイス101のCPU801は、受信したパケットが代理サーバ103の停止を意味する停止通知パケットであるか否かを判定する。停止通知パケットであれば、ステップS1102に進み、CPU801は、他の代理サーバを探索する。CPU801は、例えば、RFC2165において標準化されたSLP(Service Location Protocol)や、本願の出願人他が提案したWS−Discoveryなどの探索プロトコルを用いて他の代理サーバを検索する。もちろん、他の探索プロトコルを採用してもよい。
ステップS1103において、CPU801は、他の代理サーバが存在するか否かを判定する。他の代理サーバが存在しない場合は、ステップS914に進み、CPU801は、マルチキャストモードに移行する。これにより、クライアント102から送信されるマルチキャスによるリクエストパケットにも応答できるようになる。
他の代理サーバが存在する場合は、S909に戻り、当該代理サーバからのリクエストパケットを待つ。なお、見つかった他の代理サーバに設定情報の登録が済んでいない場合、CPU801は、設定情報を当該他の代理サーバに登録する。
一方、S1101で停止通知パケットでないと判定した場合、CPU801は、ステップS1104に進み、受信したパケットの種類に応じた応答処理を実行する。
以上説明したように本実施形態に係る発明によれば、第1の実施形態の効果に加え、代理サーバの停止に伴う課題を解決できる効果がある。すなわち、代理サーバ103から停止通知パケットを送信することで、ネットワークワーデバイス101は、マルチキャストモードに復帰することができる。すなわち、クライアント102は、ネットワークデバイス101を探索できるようになる。
なお、他の代理サーバが存在する場合、ネットワークデバイス101を継続して非マルチキャストモードで動作させてもよい。このようにすれば、探索処理に伴うトラヒックの増加を引き続き軽減できるからである。
[第4の実施形態]
第3の実施形態では、代理サーバ103が正常に停止または終了することを前提として説明した。しかしながら、現実の動作環境下では、代理サーバ103が異常終了してしまうこともある。異常終了のとき、代理サーバ103は、停止通知を送信できない可能性が高い。そのため、第3の実施形態では、代理サーバ103が異常停止したときに問題が生じる。すなわち、非マルチキャストモードで動作しているネットワークデバイス101を、クライアント102が探索できなくなってしまう。なお、異常停止以外であっても、例えば、代理サーバ103とLAN110との接続が切断され場合も同様の問題が生じる。
そこで、本実施形態では、エージェントプログラムに、代理サーバの存在確認機能を追加する。もし、存在を確認できない場合にはマルチキャストモードに復帰することはいうまでもない。なお、クライアント102等から非マルチキャストモードの解除情報を受信したときも、マルチキャストモードに復帰するようにしてもよい。
図12は、実施形態に係る代理サーバの異常停止を考慮した探索応答処理の例示的なフローチャートである。なお、本フローチャートに係る処理は、図9のS912または図11のS1104に相当するサブルーチンである。よって、既に説明した個所には、同一の参照符号を付すことで、説明を簡潔にする。また、本実施形態は、第2の実施形態だけでなく、第3の実施形態と組み合わせてもよい。
ステップS1201で、ネットワークデバイスのCPU801は、受信したパケットが代理サーバ103の存在確認を依頼するパケットであるか否かを判定する。存在確認依頼パケットは、例えば、クライアント102などから送信される。存在確認依頼パケットでなければ、ステップS1204に進む。存在確認依頼パケットであれば、ステップS1202に進む。
ステップS1202で、CPU801は、代理サーバ103の存在確認を実行する。例えば、CPU801は、ネットワークデバイス101自身を探索するためのリクエストパケット(存在の問い合せ)を作成し、代理サーバ103に送信する。代理サーバ103のCPU701は、当該リクエストパケットを受信すると、応答パケットを返信する。
ステップS1203で、CPU801は、代理サーバ103からの応答を所定時間内に受信できたか否かを判定する。応答がなければ、代理サーバ103が存在しないことになるので、ステップS914に進む。すなわち、CPU801は、マルチキャストモードに復帰する。一方、応答があれば、ステップS1204に進む。
ステップS1204で、CPU801は、受信したパケットが、代理サーバ103により定期的に送信されることになっている存在明示(キープアライブ)パケットであるか否かを判定する。存在明示パケットを定期的なタイミングで受信できなかった場合、ステップS914に戻る。すなわち、CPU801は、マルチキャストモードに復帰する。一方、定期的なタイミングで存在明示パケットを受信できていれば、ステップS1205に進む。なお、代理サーバ103のCPU701は、内部タイマーにて定期的なタイミングを検出し、存在明示パケットをネットワークデバイス101に送信するものとする。
ステップS1205で、CPU801は、受信パケットが、非マルチキャストモードを強制解除するための指示パケット(強制解除パケット)であるか否かを判定する。このパケットは、マルチキャストによるリクエストパケットへの応答動作を有効化するためのパケットと観念することもできる。強制解除パケットであれば、ステップS914に進む。一方、強制解除パケットでなければ、CPU801は、受信したパケットの種類に応じて応答処理を実行し、ステップS909に戻る。
以上説明したように本実施形態に係る発明によれば、代理サーバ103が異常停止等した場合には、ネットワークデバイス101は、マルチキャストモードへと復帰する。よって、ネットワークデバイス101を検索できなくなってしまう問題を解決できよう。
なお、図12において、S1201ないしS1203と、S1204は、少なくとも一方が本サブルーチンに含まれていればよい。いずれか一方が含まれていれば、代理サーバ103の非常停止を検出できるからである。なお、S1201ないしS1203を実行する場合は、クライアント102または他の代理サーバのCPU801等が存在確認要求をネットワークデバイス101に送信できることが前提である。
[他の実施形態]
以上、様々な実施形態を詳述したが、本発明は、複数の機器から構成されるシステムに適用してもよい。また、本発明は、一つの機器からなる装置に適用してもよい。例えば、スキャナ、プリンタ、PC、複写機、複合機及びファクシミリ装置の如くである。すなわち、ネットワークに接続する機能を備えている装置であれば本発明を適用できることは言うまでもない。
また、LANに限らず、WANや無線LANなどの他のネットワークであっても本発明を適用できることは言うまでもない。
本発明は、前述した実施形態の各機能を実現するソフトウェアプログラムを、システム若しくは装置に対して直接または遠隔から供給し、そのシステム等に含まれるコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される。
従って、本発明の機能・処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、上記機能・処理を実現するためのコンピュータプログラム自体も本発明の一つである。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、記録媒体としては、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。
また、プログラムは、クライアントコンピュータのブラウザを用いてインターネットのホームページからダウンロードしてもよい。すなわち、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードしてもよいのである。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明の構成要件となる場合がある。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布してもよい。この場合、所定条件をクリアしたユーザにのみ、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報で暗号化されたプログラムを復号して実行し、プログラムをコンピュータにインストールしてもよい。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現されてもよい。なお、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ってもよい。もちろん、この場合も、前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ってもよい。このようにして、前述した実施形態の機能が実現されることもある。
本実施形態に係るネットワークデバイスの一例を示す図である。 実施形態に係るネットワークデバイスの例示的なブロック図である。 実施形態に係る抑制解除部の例示的な構成を示す図である。 実施形態に係る抑制解除部の他の例示的な構成を示す図である。 実施形態に係る抑制解除部のさらに他の例示的な構成を示す図である。 実施形態に係るクライアント装置の例示的なブロック図である。 実施形態に係る代理サーバの例示的な機能ブロック図である。 実施形態に係るネットワークデバイスの制御方法を示す例示的なフローチャートである。 実施形態に係るクライアント装置および代理サーバの例示的な機能ブロック図である。 実施形態に係るネットワークデバイスの例示的な機能ブロック図である。 実施形態に係る探索応答処理の例示的なフローチャートである。 実施形態に係る探索プロトコルの例示的なシーケンス図である。 実施形態に係る代理サーバの正常停止を考慮した探索応答処理の例示的なフローチャートである。 実施形態に係る代理サーバの異常停止を考慮した探索応答処理の例示的なフローチャートである。

Claims (12)

  1. ネットワークを介して接続されたクライアント装置及び代理サーバと通信するネットワークデバイスであって、
    前記ネットワークデバイスの設定情報を要求するために前記クライアント装置からマルチキャストにより送信される探索要求に対する応答を抑制するための指示を、前記代理サーバから受信する受信手段と、
    前記クライアント装置から送信される探索要求に対して前記ネットワークデバイスの代わりに前記代理サーバが前記ネットワークデバイスの設定情報を応答できるように、前記ネットワークデバイスの設定情報を前記代理サーバに送信する送信手段と、
    前記受信手段によって前記指示を受信した場合、前記クライアント装置から送信される探索要求であって前記ネットワークデバイスは受信し前記代理サーバが受信しないユニキャストによって送信される探索要求に対して前記ネットワークデバイスの設定情報を応答し、前記クライアント装置から送信される探索要求であって前記ネットワークデバイスと前記代理サーバが共に受信するマルチキャストによって送信される探索要求に対する応答を抑制する制御手段とを含む、ネットワークデバイス。
  2. 前記送信手段は、前記代理サーバから送信される探索要求に応答して、前記ネットワークデバイスの設定情報を送信する請求項1に記載のネットワークデバイス。
  3. 前記ネットワークデバイスが起動したことを表す起動通知を前記代理サーバに送信する手段と、
    前記代理サーバから前記起動通知に対する応答を受信する手段と、
    前記起動通知を送信した後に所定時間が経過するまでに前記起動通知に対する応答を受信したか否かを判断する判断手段と
    をさらに含み、
    前記制御手段は、前記起動通知を送信した後に所定時間が経過するまでに前記起動通知に対する応答を受信したと前記判断手段が判断したことに応じて、前記クライアント装置から送信されるマルチキャストによって送信される探索要求に対する応答を抑制する、請求項1又は2に記載のネットワークデバイス。
  4. 前記制御手段による、前記マルチキャストによって送信される探索要求への応答の抑制を解除する手段をさらに含む、請求項1ないし3の何れか1項に記載のネットワークデバイス。
  5. 前記マルチキャストによって送信される探索要求への応答の抑制を解除する手段は、
    前記代理サーバに対して問い合せを送信する手段と、
    前記問い合せに対する応答を受信するまでの時間を計時する手段と、
    前記時間が予め定められた時間に達すると、前記マルチキャストによって送信される探索要求への応答の抑制を解除すると判定する手段と
    を含む、請求項4に記載のネットワークデバイス。
  6. 前記マルチキャストによって送信される探索要求への応答の抑制を解除する手段は、
    前記代理サーバから予め定められたタイミングで送信される存在明示情報を受信する手段と、
    前記存在明示情報を前記予め定められたタイミングで受信できなくなると、前記マルチキャストによって送信される探索要求への応答の抑制を解除すると判定する手段と
    を含む、請求項4に記載のネットワークデバイス。
  7. 前記マルチキャストによって送信される探索要求への応答の抑制を解除するための解除情報を受信する手段と、
    前記解除情報を受信すると、前記マルチキャストによって送信される探索要求への応答の抑制を解除する手段と
    をさらに含む、請求項1ないし3の何れか1項に記載のネットワークデバイス。
  8. 前記解除情報は、前記代理サーバが停止するのに先立って送信される停止情報である、請求項7に記載のネットワークデバイス。
  9. 前記マルチキャストによって送信される探索要求への応答の抑制を解除する手段は、
    前記解除情報を受信し、かつ他の代理サーバと通信できない場合に、前記マルチキャストによって送信される探索要求への応答の抑制を解除する、請求項7または8に記載のネットワークデバイス。
  10. 前記送信手段によって送信される設定情報は、前記ネットワークデバイスのIPアドレス又はプリンタポート又は当該ネットワークデバイスのドライバに係る情報であることを特徴とする請求項1ないし9の何れか1項に記載のネットワークデバイス。
  11. ネットワークを介して接続されたクライアント装置及び代理サーバと通信するネットワークデバイスの制御方法であって、
    受信手段が、前記ネットワークデバイスの設定情報を要求するために前記クライアント装置からマルチキャストにより送信される探索要求に対する応答を抑制するための指示を、前記代理サーバから受信する受信工程と、
    送信手段が、前記クライアント装置から送信される探索要求に対して前記ネットワークデバイスの代わりに前記代理サーバが前記ネットワークデバイスの設定情報を応答できるように、前記ネットワークデバイスの設定情報を前記代理サーバに送信する送信工程と、
    制御手段が、前記受信手段によって前記指示を受信した場合、前記クライアント装置から送信される探索要求であって前記ネットワークデバイスは受信し前記代理サーバが受信しないユニキャストによって送信される探索要求に対して前記ネットワークデバイスの設定情報を応答し、前記クライアント装置から送信される探索要求であって前記ネットワークデバイスと前記代理サーバが共に受信するマルチキャストによって送信される探索要求に対する応答を抑制する制御工程と
    を含む、ネットワークデバイスの制御方法。
  12. 請求項1に記載のネットワークデバイスが備える各手段としてコンピュータを機能させることを特徴とするプログラム。
JP2005294031A 2005-10-06 2005-10-06 ネットワークデバイス、その制御方法およびプログラム Expired - Fee Related JP4838564B2 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP2005294031A JP4838564B2 (ja) 2005-10-06 2005-10-06 ネットワークデバイス、その制御方法およびプログラム
PCT/JP2006/319392 WO2007043353A1 (en) 2005-10-06 2006-09-22 Network device, method of controlling the same and network system
CN2006800371429A CN101283336B (zh) 2005-10-06 2006-09-22 网络装置及其控制方法和客户端设备
DE602006021603T DE602006021603D1 (de) 2005-10-06 2006-09-22 Netzwerk-einrichtung, verfahren zu ihrer steuerung und netzwerk-system
EP06798440A EP1949241B1 (en) 2005-10-06 2006-09-22 Network device, method of controlling the same and network system
US12/065,052 US8230492B2 (en) 2005-10-06 2006-09-22 Network device, method of controlling the same and network system
KR1020087010868A KR101039687B1 (ko) 2005-10-06 2006-09-22 네트워크 디바이스, 이를 제어하는 방법, 및 네트워크시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005294031A JP4838564B2 (ja) 2005-10-06 2005-10-06 ネットワークデバイス、その制御方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2007102640A JP2007102640A (ja) 2007-04-19
JP4838564B2 true JP4838564B2 (ja) 2011-12-14

Family

ID=37942601

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005294031A Expired - Fee Related JP4838564B2 (ja) 2005-10-06 2005-10-06 ネットワークデバイス、その制御方法およびプログラム

Country Status (7)

Country Link
US (1) US8230492B2 (ja)
EP (1) EP1949241B1 (ja)
JP (1) JP4838564B2 (ja)
KR (1) KR101039687B1 (ja)
CN (1) CN101283336B (ja)
DE (1) DE602006021603D1 (ja)
WO (1) WO2007043353A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5127414B2 (ja) * 2007-11-20 2013-01-23 キヤノン株式会社 サービス提供装置及びその制御方法、コンピュータプログラム
JP5459983B2 (ja) * 2008-06-03 2014-04-02 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及びコンピュータプログラム
JP5305896B2 (ja) * 2008-12-26 2013-10-02 キヤノン株式会社 通信装置、通信装置の制御方法、及びプログラム
JP5371511B2 (ja) * 2009-03-30 2013-12-18 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及びコンピュータプログラム
JP5300562B2 (ja) * 2009-03-31 2013-09-25 キヤノン株式会社 情報処理装置、情報処理方法、およびプログラム
JP5966368B2 (ja) * 2012-01-11 2016-08-10 株式会社リコー 情報処理装置、機器管理システム及びプログラム
JP2013168840A (ja) * 2012-02-16 2013-08-29 Canon Inc 通信機器、その制御方法、および制御プログラム
JP2016018384A (ja) * 2014-07-08 2016-02-01 富士通株式会社 ストレージ制御装置、ストレージシステム、及びプログラム
JP6821363B2 (ja) * 2016-09-15 2021-01-27 キヤノン株式会社 通信装置、通信方法、及びプログラム
US20220345540A1 (en) * 2021-04-26 2022-10-27 Kyocera Document Solutions Inc. Electronic apparatus executing service in response to command from front end apparatus and front end apparatus managing electronic apparatus

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6496859B2 (en) 1998-11-25 2002-12-17 Xerox Corporation System for network device location
US20020007374A1 (en) * 1998-12-16 2002-01-17 Joshua K. Marks Method and apparatus for supporting a multicast response to a unicast request for a document
JP3869972B2 (ja) 1999-04-27 2007-01-17 キヤノン株式会社 デバイス検索クライアントおよびデバイス検索方法
EP1052806B1 (en) * 1999-05-13 2006-03-22 Canon Kabushiki Kaisha Apparatus for searching a device on a network
US6910068B2 (en) * 1999-06-11 2005-06-21 Microsoft Corporation XML-based template language for devices and services
US7293067B1 (en) 1999-07-16 2007-11-06 Canon Kabushiki Kaisha System for searching device on network
US6360076B1 (en) * 1999-10-06 2002-03-19 Telefonaktiebolaget L M Ericsson (Publ) Method of broadcasting a quality over-the-air multicast
US7024476B1 (en) * 2000-09-13 2006-04-04 Canon Kabushiki Kaisha Directory-enabled device management
JP4464029B2 (ja) * 2001-04-19 2010-05-19 キヤノン株式会社 情報処理方法および制御プログラムおよび情報処理装置および周辺装置および応答方法および代理応答装置およびネットワークシステム
US20030061333A1 (en) 2001-05-04 2003-03-27 Stephen Dean System and method for universal networked device management
JP2003186765A (ja) * 2001-12-20 2003-07-04 Fuji Xerox Co Ltd ネットワーク接続デバイス、ネットワーク接続デバイス管理システム、ネットワーク接続デバイス管理方法
US20030140119A1 (en) * 2002-01-18 2003-07-24 International Business Machines Corporation Dynamic service discovery
KR100440583B1 (ko) * 2002-05-16 2004-07-19 한국전자통신연구원 외부 인터넷에 의한 댁내망의 UPnP장치 관리제어 장치및 방법
US7269629B2 (en) * 2002-12-30 2007-09-11 Intel Corporation Method and apparatus for distributing notification among cooperating devices and device channels
US8064474B2 (en) 2003-03-20 2011-11-22 Qualcomm Atheros, Inc. Method and apparatus for selecting a responder to enable reliable multicast
US20050021737A1 (en) * 2003-05-01 2005-01-27 Ellison Carl M. Liveness protocol
JP4401679B2 (ja) * 2003-05-12 2010-01-20 キヤノン株式会社 制御装置、制御プログラム、制御方法
JP4546040B2 (ja) * 2003-05-12 2010-09-15 キヤノン株式会社 ネットワークサービスシステムおよびサービス代行処理方法およびコンピュータが読取り可能なプログラムを格納した記憶媒体およびプログラム
JP2004334793A (ja) 2003-05-12 2004-11-25 Canon Inc 周辺装置およびサーバ装置およびクライアントデバイスおよびネットワークデバイスシステムおよびデバイス検索方法およびコンピュータが読取り可能なプログラムを格納した記憶媒体およびプログラム
US7107442B2 (en) * 2003-08-20 2006-09-12 Apple Computer, Inc. Method and apparatus for implementing a sleep proxy for services on a network
DE10345535B4 (de) * 2003-09-30 2005-10-06 Siemens Ag Überprüfung der Verfügbarkeit eines Servers
US7739375B2 (en) * 2004-05-10 2010-06-15 Sharp Labratories Of America, Inc. System and method for UPnP discovery advertisement byebye by proxy
US7830826B2 (en) * 2004-07-01 2010-11-09 Nokia Corporation Multicast relay for mobile devices
US7606187B2 (en) * 2004-10-28 2009-10-20 Meshnetworks, Inc. System and method to support multicast routing in large scale wireless mesh networks
US20060129813A1 (en) * 2004-12-15 2006-06-15 Vidya Narayanan Methods of authenticating electronic devices in mobile networks
US20060239190A1 (en) * 2005-04-25 2006-10-26 Matsushita Electric Industrial Co., Ltd. Policy-based device/service discovery and dissemination of device profile and capability information for P2P networking
JP4546356B2 (ja) * 2005-08-31 2010-09-15 キヤノン株式会社 画像形成装置及びその制御方法、プログラム、画像形成システム
JP2007102283A (ja) * 2005-09-30 2007-04-19 Canon Inc 情報処理装置、情報取得方法、コンピュータプログラム、及びコンピュータ読み取り可能な記憶媒体
US20070076715A1 (en) * 2005-09-30 2007-04-05 Bauer Markus G Method for providing a multicast service within a wireless communications system
US20070078959A1 (en) * 2005-10-03 2007-04-05 Yinghua Ye Low-power proxy for providing content listings in ad-hoc, peer to peer networks
JP2007280113A (ja) * 2006-04-07 2007-10-25 Canon Inc 代理サービス提供装置及びネットワークシステム
US20070250590A1 (en) * 2006-04-21 2007-10-25 Microsoft Corporation Ad-hoc proxy for discovery and retrieval of dynamic data such as a list of active devices
US7965680B2 (en) * 2007-09-05 2011-06-21 Motorola Mobility, Inc. Method and system for utilizing commonality in data streams

Also Published As

Publication number Publication date
US8230492B2 (en) 2012-07-24
EP1949241A1 (en) 2008-07-30
DE602006021603D1 (de) 2011-06-09
KR101039687B1 (ko) 2011-06-09
CN101283336B (zh) 2012-05-16
EP1949241B1 (en) 2011-04-27
KR20080064857A (ko) 2008-07-09
EP1949241A4 (en) 2009-12-23
US20090144360A1 (en) 2009-06-04
WO2007043353A1 (en) 2007-04-19
JP2007102640A (ja) 2007-04-19
CN101283336A (zh) 2008-10-08

Similar Documents

Publication Publication Date Title
JP4838564B2 (ja) ネットワークデバイス、その制御方法およびプログラム
JP4523592B2 (ja) インターネット接続端末装置およびインターネット接続状態確認方法
US20050071507A1 (en) Method and apparatus for discovering a network address
JP5810761B2 (ja) 処理制御サーバーおよび処理制御方法
US7827235B2 (en) Service providing system, service providing method, and program of the same
US20090027725A1 (en) Network apparatus and control method therefor
JP4759000B2 (ja) アプリケーションサーバを経由した印刷の方法およびシステム、ならびに対応するコンピュータプログラム、および対応するコンピュータ読み取り可能な記憶媒体
US8832312B2 (en) Communication apparatus and communication control method
JP4405933B2 (ja) 制御装置、通信制御方法、通信制御プログラム、及び記憶媒体
JP2007334890A (ja) 自動プリンタ登録
WO2001082051A2 (en) Broadcast printing system and method
JP2008004010A (ja) 通信装置及びその制御方法
KR101452710B1 (ko) 컨트롤 포인트 및 컨트롤 요청을 처리하는 방법
US9442779B2 (en) Information-processing apparatus, information-processing method, and program
JP5794057B2 (ja) 画像投映装置及び画像投映プログラム
US20150089033A1 (en) Information communication system, intermediate server, and recording medium
US8270017B2 (en) Network card device for determining permissibility for processing data from a data source and method of controlling the same
KR101586761B1 (ko) 네트워크에서 네트워크 성분들을 관리하기 위한 방법과 네트워크 성분
JP6064703B2 (ja) 中継サーバ
JP5272400B2 (ja) 新たなサービスを装置に動的に追加するための方法、装置及びコンピュータプログラム
JP6520643B2 (ja) 機能実行装置
JP4126859B2 (ja) 応答方法、ネットワークシステム、および端末装置
JP2007034843A (ja) 画像形成装置、電力制御方法、プログラム及び記憶媒体
JP6079845B2 (ja) システムおよび処理端末
JP2023111145A (ja) 通信装置と通信装置のためのコンピュータプログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090914

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091113

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100409

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20100423

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20100702

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

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

Free format text: PAYMENT UNTIL: 20141007

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20141007

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees