[go: up one dir, main page]

JP5264161B2 - 情報処理装置、デバイス、情報処理装置の制御方法、及びコンピュータプログラム - Google Patents

情報処理装置、デバイス、情報処理装置の制御方法、及びコンピュータプログラム Download PDF

Info

Publication number
JP5264161B2
JP5264161B2 JP2007330953A JP2007330953A JP5264161B2 JP 5264161 B2 JP5264161 B2 JP 5264161B2 JP 2007330953 A JP2007330953 A JP 2007330953A JP 2007330953 A JP2007330953 A JP 2007330953A JP 5264161 B2 JP5264161 B2 JP 5264161B2
Authority
JP
Japan
Prior art keywords
network
network address
address
search
dhcp
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
JP2007330953A
Other languages
English (en)
Other versions
JP2009153050A (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 JP2007330953A priority Critical patent/JP5264161B2/ja
Application filed by Canon Inc filed Critical Canon Inc
Priority to KR1020107015841A priority patent/KR101103190B1/ko
Priority to EP08865215.1A priority patent/EP2225855A4/en
Priority to US12/739,913 priority patent/US20100257271A1/en
Priority to RU2010130476/07A priority patent/RU2448422C2/ru
Priority to CN200880122005.4A priority patent/CN101904138B/zh
Priority to PCT/JP2008/071599 priority patent/WO2009081688A1/en
Publication of JP2009153050A publication Critical patent/JP2009153050A/ja
Application granted granted Critical
Publication of JP5264161B2 publication Critical patent/JP5264161B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4541Directories for service discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • H04L61/5014Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5076Update or notification mechanisms, e.g. DynDNS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/668Internet protocol [IP] address subnets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5053Lease time; Renewal aspects

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)
  • Facsimiles In General (AREA)
  • Computer And Data Communications (AREA)

Description

本発明は、ネットワーク上のデバイスを検索するネットワークシステムで用いられる情報処理装置、デバイス、情報処理装置の制御方法に関する。
従来、プリンタ等のデバイスがネットワークに接続され、クライアントPCからネットワークを介して利用することが可能になっている。その際、クライアントPCはまずネットワーク上のデバイスを発見し、発見したデバイスを利用するためのドライバソフトウェアをインストールする必要がある。ネットワーク上のデバイスを検索するための技術としていくつか考えられているものの中には、ブロードキャストやマルチキャストを用いて検索要求パケットを送信するものがある。ブロードキャストやマルチキャストは、ネットワーク上に存在する複数の装置に対してデータを送信する方法である。これらの技術では、クライアントPCは検索要求パケットをブロードキャストやマルチキャストで送信し、検索要求パケットを受信したデバイスが検索応答パケットをクライアントPCに送信することにより、デバイスを検索する。
また、ネットワーク同士がルータなどの接続機器により相互に接続され、大規模なネットワークを構築することが可能になっている。その中で、ブロードキャストやマルチキャストはネットワーク全体のトラフィックに影響を与えるため、一般にルータはこれらを通過させない設定で運用されることが多い。ルータによって区切られたそれぞれのネットワークはサブネットと呼ばれ、ブロードキャストやマルチキャストは一般にサブネット内のみで利用されている。このような環境でブロードキャストやマルチキャストを使用したネットワークデバイス検索技術を用いた場合、クライアントPCが送信した検索要求パケットはルータを通過できない。そのため、複数のサブネットがルータによって接続されたネットワーク環境において、クライアントPCは、異なるサブネットに存在するデバイスを発見することはできなかった。
このような課題を解決するために、〔特許文献1〕には、サブネットごとにサーバを設置し、サーバ間でデバイス情報や検索要求の交換を行う技術が提案されている。
特開2007−97057
上記従来技術の方法では、クライアントPCは、サーバに問い合わせるためにそのサーバのネットワークアドレスを知っている必要がある。即ち、ユーザはクライアントPCそれぞれに対して、事前に、サーバのネットワークアドレスを登録しておく必要がある。また、各サーバには、ネットワーク上のデバイスの情報を登録しておく必要がある。このような登録作業は、サブネットが増えることによってサーバの数が増えたり、デバイスやクライアントPCの数が増えるにつれて作業負荷が高くなり、システム管理者やユーザの手間となっていた。
本発明は、このような問題に対してなされたものであり、デバイスを検索するための検索サーバを設置した場合に、クライアントPCやデバイスがこの検索サーバを使用するにあたっての設定作業の手間を軽減することを目的とする。
上記目的を達成するために、本発明は、ネットワークに接続可能な情報処理装置と、前記ネットワーク上の装置を検索するための検索要求に応じて検索を行い検索結果を応答する検索サーバと、を含むネットワークシステムであって、前記情報処理装置は、複数のネットワークアドレスを管理する管理手段と、前記検索サーバのネットワークアドレスを記憶する記憶手段と、前記ネットワークに新たに接続された装置からの要求に応じて、前記管理手段で管理されるネットワークアドレスのうち他の装置に割り当てられていないネットワークアドレスを割り当てる割り当て手段と、前記割り当て手段によって割り当てられたネットワークアドレスを、前記ネットワークに新たに接続された装置に送信する第1の送信手段と、前記割り当て手段によって割り当てられたネットワークアドレスを、前記記憶手段により記憶されたネットワークアドレスに基づいて前記検索サーバに送信する第2の送信手段と、を有し、前記検索サーバは、前記第2の送信手段により送信されたネットワークアドレスに基づいて、前記ネットワークに新たに接続された装置に対してデバイス情報を要求する要求手段と、前記要求手段による要求に応じて取得したデバイス情報を登録する登録手段と、を有する。
本発明によれば、デバイスを検索するためのサーバを設置した場合に、クライアントPCやデバイスがこのサーバを使用するにあたっての設定作業の手間を軽減することができる。
(実施例1)
図1は本発明を適用したデバイス検索システムの構成を示す図である。
DHCPサーバ101および検索サーバとしてのDiscovery Proxy(DP)102が接続されたサブネット1、クライアントPC103、画像形成装置104が接続されたサブネット2、画像形成装置105が接続されたサブネット3が存在している。サブネット1とサブネット2はルータ106により相互に接続され、サブネット1とサブネット3はルータ107により相互に接続されており、これら3つのサブネットによって1つのLANが形成されている。そして、結果としてすべてのサブネットにおいて接続された端末は相互に通信が可能になっている。ただし、ルータ106、107は一方のサブネットから受信したブロードキャストやマルチキャストを他方のサブネットにそのまま通過させることはしない。そのため、ブロードキャストやマルチキャストによる通信は各サブネット内でのみ可能である。ここで、本実施例に登場する装置のうち、画像形成装置104、105は、本発明におけるデバイスの一例であり、プリンタや複写機、スキャナ、複合機、ファクシミリ等である。また、本実施例に登場する装置のうち、DHCPサーバ101、DP102、クライアントPC103は、本発明における情報処理装置の一例であり、後述するように汎用のPCを使用可能である。図1のデバイス検索システムでは、クライアントPC103を操作するユーザが所望する画像形成装置を探すために、クライアントPC103からDP102に対して検索要求パケットが送られる。そして、DP102においてデバイスが検索された結果、検索結果がクライアントPCに送られる。
次に、DHCP (Dynamic Host Configuration Protocol)を使用しIPアドレスなどの設定情報を配布する方法について説明する。DHCPは、ネットワークに接続された端末に設定情報を配布する仕組みを規定したプロトコルであり、その詳細はRFC2131で規定されている。DHCPはクライアント/サーバ方式をとり、DHCPサーバは各種設定情報を一元管理し、DHCPクライアントであるネットワーク端末はその情報を受信する。
図2は、DHCPサーバとDHCPクライアントとの間で送受信されるDHCPメッセージのフローを説明するシーケンス図である。DHCPクライアントはDHCP DISCOVERメッセージをブロードキャストする(S2001)。DHCPサーバはDHCP DISCOVERメッセージを受信すると、メッセージを送信したDHCPクライアントにIPアドレスを割り当て、その後DHCP OFFERメッセージを送信する(S2002)。DHCP OFFERメッセージには、DHCP DISCOVER メッセージを送信したDHCPクライアントに割り当てられたIPアドレスやその他の設定情報が含まれている。
DHCPクライアントはDHCP OFFERメッセージを受信すると、DHCP OFFERメッセージに含まれていたIPアドレスを使用するためのDHCP REQUESTメッセージをブロードキャストする(S2003)。DHCPサーバはDHCP REQUESTメッセージを受信すると、DHCP ACKメッセージを送信する(S2004)。DHCPクライアントはDHCP ACKメッセージを受信すると、それ以降は配布されたIPアドレスおよび設定情報を使用してネットワーク通信を行う。
また、DHCPサーバから配布されたIPアドレスには使用可能な期間(リースタイム)が設けられている。DHCPクライアントは、取得したIPアドレスをリースタイム後も継続して使用したい場合には、リースタイムが切れる期限の前にDHCPサーバに対してDHCP REQUESTメッセージを送信する(S2005)。DHCPサーバは割り当て済のIPアドレスからのDHCP REQUESTを受信すると、リースタイムを更新し、DHCP ACKメッセージを送信する(S2006)。
また、DHCPクライアントがIPアドレスの使用を中止する場合、DHCPクライアントはDHCPサーバに対してDHCP RELEASEメッセージを送信する(S2007)。DHCPサーバはDHCP RELEASEメッセージを受信すると、そのIPアドレスの割り当てを解除し、別のDHCPクライアントに対して割り当て可能にする。
また、DHCPサーバは、割り当て済のIPアドレスからリースタイムが切れる前にDHCP REQUESTを受信することなく、リースタイムが経過した場合は、そのIPアドレスの割り当てを解除する。そして、そのIPアドレスを別のDHCPクライアントに対して割り当て可能にする。
尚、図2のフローにおいて、S2001〜S2004のメッセージは、ブロードキャストで行われる。この時点では、DHCPクライアントにはまだIPアドレスが確定していないためである。
一方、図1の構成のように複数のサブネットがルータによって接続されたネットワークにおいて、ルータがブロードキャストを通過させない設定である場合には、これらのDHCPメッセージはルータにより遮断されてしまう。この問題を解決するためにRFC2131においてはリレーエージェントの仕様も記載されている。リレーエージェントは一般にルータの一機能として実装され、以下に図1の構成の記号を使用して簡単にその動作を説明する。
まずリレーエージェント機能を実装したルータ106はあらかじめDHCPサーバ101のIPアドレスを記憶しておく。DHCPクライアントとなるクライアントPC103はDHCP DISCOVERやDHCP REQUESTメッセージをサブネット2にブロードキャストする。ルータ106はDHCP DISCOVER/ DHCP REQUESTメッセージを受信すると、このメッセージをあらかじめ記憶しているDHCPサーバ101に対してユニキャストで転送する。DHCPサーバ101はルータ106からユニキャストでDHCP DISCOVER/ DHCP REQUESTメッセージを受信すると、DHCP OFFERやDHCP ACKメッセージをルータ106に対してユニキャストで送信する。ルータ106はDHCPサーバ101からDHCP OFFER/ DHCP ACKメッセージを受信すると、このメッセージをサブネット2にブロードキャストする。
このように、リレーエージェント機能を実装したルータがブロードキャストによるDHCPメッセージを受信してユニキャストでDHCPサーバに転送することで、DHCPクライアントはDHCPサーバから情報を受信できるようになる。
図3は、DHCPメッセージのフォーマットを示す図である。optionsフィールド301は可変長の各種データを設定可能な領域である。この領域は1byteのタグ、1byteのデータサイズ、可変長のデータを1個のoptionデータとし、複数のoptionデータを設定可能である。タグの値はあらかじめ標準化されている値とベンダが拡張可能な値があり、一例としてサブネットマスクやDNSサーバのIPアドレスといったタグの値は標準化された値として広く使用されている。
本実施例においては、このoptionsフィールド301を拡張して使用する。DPのIPアドレスを意味するタグを定義し、データとしてDPのIPアドレスを設定することで、DHCPプロトコルを使用してDPのIPアドレス情報をクライアントPCやデバイス等のDHCPクライアントに配布することが可能となる。さらに、ネットワーク上に複数のDPが存在する場合には、このoptionsフィールド301に複数のDPのIPアドレスを設定することによりそれらのIPアドレス情報を配布することも可能である。
またgiaddrフィールド302は、リレーエージェントがDHCPサーバにDHCPメッセージを転送する際に、リレーエージェント自身のIPアドレスを設定する。それによりDHCPサーバはDHCPメッセージを受信した際に、それがリレーエージェントからのものであった場合にはこのgiaddrフィールドを確認することでDHCPクライアントが属するサブネットを特定することが可能である。またyiaddrフィールド303は、DHCPサーバがDHCPクライアントに割り当てるIPアドレスが設定される。
次に、図1で示したシステム構成の中で、本発明に関係するDHCPサーバ101、DP102、クライアントPC103、画像形成装置104、105のハードウェアおよびソフトウェア構成について説明する。なお、以降では特に断らない限り画像形成装置に関しては代表して104の記号を用いる。
図30は、DHCPサーバ101、DP102、クライアントPC103のハードウェア構成を示すブロック図である。なお、DHCPサーバ101、DP102、クライアントPC103は汎用のPC(パーソナルコンピュータ)を使用可能であり、以下の説明は共通である。
図30において、3001はCPUであり、システムバス3004に接続された各種デバイスの制御を行う。3002はBIOSやブートプログラムを記憶するROM、3003はCPU3001の主記憶装置として使用されるRAMである。3005はキーボードコントローラ(KBC)であり、マウス(登録商標)等のポインティングデバイス3009a、キーボード3009bからの情報などの入力に係る処理を行う。3006は表示制御部(CRTC)であり、内部にビデオメモリを有し、CPU3001からの指示に従ってそのビデオメモリに描画すると共に、ビデオメモリに描画されたイメージデータをビデオ信号としてCRT表示装置3010に出力する。なお、図30において表示装置としてCRTを例示しているが、液晶表示装置等、その表示装置の種類は問わない。3007はディスクコントローラ(DKC)であり、ハードディスク3011、フロッピー(登録商標)ディスク3012へのアクセスを行う。3008はネットワークインタフェースカード(NIC)であって、ネットワークに接続し、ネットワークを介しての情報通信を行うものである。なお、ハードディスク3011には、OS(Operating System)やOS上で動作する各種アプリケーションプログラム等が格納される。上記構成において、本装置の電源がONになると、CPU3001はROM3002に格納されたブートプログラムに従って、ハードディスク3011からOSをRAM3003に読み込み、情報処理装置として機能するようになる。
図4は画像形成装置104のハードウェア構成を示すブロック図である。なお、ここでは、画像形成装置がMFP(Multi Function Peripheral)であった場合を例にして説明する。図4のMFP104において、401はCPUで、ROM402のプログラム用ROMに記憶された制御プログラムに基づいてシステムバス404に接続される各種のデバイスとのアクセスを総括的に制御する。また、印刷インターフェース407を介して接続される印刷部(プリンタエンジン)410に出力情報としての画像信号を出力したり、読取インターフェース412を介して接続される読取部(スキャナ)413から入力される画像信号を制御する。また、このROM403のプログラム用ROMには、CPU401が実行可能な制御プログラム等を記憶する。さらに、ROM403のフォント用ROMには上記出力情報を生成する際に使用するフォントデータ(アウトラインフォントデータを含む)等を記憶し、ROM403のデータ用ROMには、ホストコンピュータ上で利用される情報等を記憶している。CPU401はLANコントローラ部406を介してネットワーク上のホストコンピュータや画像形成装置との通信処理が可能となっている。402はRAMで、主としてCPU401の主メモリ,ワークエリア等として機能し、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。なお、RAM402は、出力情報展開領域,環境データ格納領域等に用いられる。ハードディスク(HD),ICカード等の外部記憶装置411は、ディスクコントローラ(DKC)408によりアクセスが制御される。ハードディスクは、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶したり、プリントジョブを一時的にスプールし、スプールされたジョブを外部から制御するためのジョブ格納領域として使用される。またさらに、スキャナ413から読み取った画像データやプリントジョブの画像データをBOXデータとして保持し、ネットワークから参照したり、印刷を行うBOXデータ格納領域としても使用される。405は操作パネルで、ユーザがソフトウェアキーから各種情報を入力することが可能である。前述した外部記憶装置は、1個に限らず、少なくとも1個以上備え、内蔵フォントに加えてオプションフォントカード,言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていても良い。409は不揮発性メモリであり、操作パネル405から設定される各種設定情報を記憶している。また、図示していないが、MFP104にはさらにオプションで、ステープルやソート機能を行うフィニッシャや、両面印刷機能を実現するための両面装置など各種拡張装置を装着することが可能となっており、それらの動作はCPU401から制御される。
図5は、DHCPサーバ101、DP102、クライアントPC103、画像形成装置104のソフトウェア構成を示すブロック図である。
DHCPサーバ101において、DHCPサーバ処理部501は前述のDHCPサーバとしての処理を行う。即ち、DHCPクライアントからの要求に応じて、IPアドレスをそのDHCPクライアントに割り当てる処理や、割り当てられたIPアドレスをDHCPクライアントに配布する処理を行う。DHCPクライアントに配布するIPアドレスのリストや設定情報は配布情報DB503において保持されている。尚、本実施例におけるDHCPクライアントは、クライアントPC103又は画像形成装置104であるが、DP102がDHCPクライアントとして動作しても構わない。DHCPサーバ処理部501はDHCPクライアントからの要求に基づき配布情報DB503を参照して各種情報を配布する。配布情報設定部502は配布情報DB503に保持する情報を設定するものである。またDHCPクライアントが属するサブネットごと、またクライアントごとに配布する情報を設定することも可能である。
図21は、配布情報DB503に保持される設定情報の例である。図21においては、サブネット1用設定2101、サブネット2用設定2102、サブネット3用設定2103が存在し、それぞれのサブネットに異なる設定情報を配布することが可能な構成になっている。それぞれの設定情報は、スコープ、IPアドレス範囲、割り当て済みIPアドレス、リースタイム、DNSサーバアドレス、サブネットマスク、Gatewayアドレス、DPアドレスからなる。本実施例においては、DPがネットワーク上に1台のみ存在する構成であるため、各サブネット用設定のDPアドレスはすべてDP102のIPアドレスに設定される。
DP102において、デバイス情報通知受信部511は画像形成装置104からデバイス情報の登録要求、更新要求、削除要求の通知を受信し、その通知の種類に基づき、デバイス情報保持部514が保持するデバイス情報の処理を行う。処理の結果、デバイス情報の取得が必要であると判断された場合は、デバイス情報取得部512は画像形成装置104に対してデバイス情報取得要求を送信し、返されたデバイス情報をデバイス情報保持部514に保持する。デバイス情報検索処理部513はクライアントPC103からデバイス情報の検索要求を受信し、指定された検索条件に基づきデバイス情報保持部514内のデバイス情報を検索する。そして、その結果をクライアントPC103に送信する。デバイス情報保持部514が保持するデバイス情報については後述する。
クライアントPC103において、DHCPクライアント処理部521は前述のDHCPクライアントとしての処理を行う。DHCPサーバから配布されたIPアドレスや各種設定情報は設定情報記憶部522に保持され、適宜参照して使用することが可能である。デバイス検索要求処理部523はDP102に対してデバイス検索要求を送信し、その結果は検索情報表示部524において表示される。
画像形成装置104において、DHCPクライアント処理部531は前述のDHCPクライアントとしての処理を行う。DHCPサーバから配布されたIPアドレスや各種設定情報は設定情報記憶部532に保持され、適宜参照して使用することが可能である。デバイス情報管理部534は画像形成装置104自身のデバイス情報を管理する。デバイス情報通知部533はデバイス情報の通知が必要な場合にDP102に対してデバイス情報の登録要求、更新要求、削除要求を送信する。ネットワークを介してデバイス情報取得要求を受信すると、デバイス情報送信部535は、デバイス情報管理部534が管理しているデバイス情報を要求元に送信する。
図6はDP102のデバイス情報保持部514が保持するデバイス情報の例である。
それぞれのデバイスに関する情報はレコードとして保持され、レコードはID601、UUID602、バージョン603、デバイスタイプ604、モデル名605、デバイス名606、URL607、IPアドレス608からなる。
ID601はDP内でデバイスを識別するためのIDを示す。UUID602はデバイスをグローバルに識別するUUID(Universally Unique Identifier)を示す。バージョン603はデバイス情報のバージョンを示す。デバイスタイプ604は複合機を意味する「MFP」、プリンタを意味する「Printer」などのタイプを示す。モデル名605は「LBPXXXX」のようなデバイスのモデル名を示す。デバイス名606はデバイス管理者がデバイスに設定した名前を示す。URL607はデバイス情報を取得するためのURLを示す。IPアドレス608はデバイスのIPアドレスを示す。
次に、DHCPサーバ101がIPアドレスなどの設定情報をDHCPクライアントに配布する際の処理を図22のフローチャートを使用して説明する。図22の各ステップは、DHCPサーバのCPU3001がROM3002に格納されたプログラムを処理することによって実行される。
まずS2201において、DHCPクライアントまたはリレーエージェントが送信したDHCP DISCOVERメッセージを、NIC3008を介して受信する。S2202において、CPU3001は、DHCPクライアントに割り当てる設定情報を、後述する方法によって特定する。
S2203において、CPU3001は、S2202の処理により設定情報が特定されたかどうかを判定し、特定されなかった場合には処理を終了する。特定されていた場合にはS2204に進み、特定された設定情報に未割り当てのIPアドレスが残っているかどうかを判定し、残っていない場合には処理を終了する。残っている場合にはS2205に進み、DHCP OFFERメッセージを生成する。その際、配布するIPアドレスは図3のyiaddrフィールドに設定する。またその他の設定情報として、optionsフィールド301にはDHCPサーバ自身のIPアドレスおよびリースタイムを設定する。そしてS2206において、生成したDHCP OFFERメッセージを、NIC3008を介してDHCPクライアントに送信する。
S2207において、DHCPクライアントまたはリレーエージェントが送信したDHCP REQUESTメッセージを、NIC3008を介して受信する。DHCP REQUESTメッセージのoptionsフィールド301には、DHCP OFFERメッセージのyiaddrフィールドで設定したIPアドレスが含まれており、CPU3001は、S2208において、配布情報DB503内の該当するIPアドレスを割り当て済みとする。次にS2209において、CPU3001は、DHCP REQUESTメッセージのoptionsフィールド301にさらに含まれている要求オプションを確認する。そして、配布情報DB503内を参照して要求されたオプション情報を設定したDHCP ACKメッセージを生成する。そしてS2210において、生成したDHCP ACKメッセージをNIC3008を介してDHCPクライアントに送信し、処理を終了する。
図23は図22のフローチャートにおけるS2202の設定情報を特定する際の処理を詳細に示すフローチャートである。
まずS2301において、CPU3001は、S2201において受信したDHCP DISCOVERメッセージに含まれるgiaddrフィールドの値を取得する。次にS2302において、CPU3001は、giaddrの値が0であるかどうかを判定する。0であった場合はこのメッセージがDHCPサーバと同じサブネットに存在するDHCPクライアントから直接送信されたことを意味する。そのためS2303において、CPU3001は、配布する設定情報としてサブネット1用の設定情報2101を特定する。S2302の判定によりgiaddrの値が0以外であった場合はS2304に進む。S2304においてCPU3001は、giaddrの値がサブネット2用設定情報のスコープ内であるかどうかを判定する。この判定はgiaddrと、スコープのネットワークアドレスが一致するかどうかを判定することによって行う。S2304でYesと判定された場合はS2305に進み、CPU3001は、配布する設定情報としてサブネット2用の設定情報2102を特定する。S2304がNoであった場合はS2306に進む。S2306において、CPU3001は、giaddrの値がサブネット3用設定情報のスコープ内であるかどうかを判定する。S2306でYesと判定された場合はS2307に進み、配布する設定情報としてサブネット3用の設定情報2103を特定する。S2306でNoと判定された場合はS2308に進み、設定情報は特定せずに処理を終了する。
図24は図22のS2207においてDHCPサーバが受信するDHCP REQUESTメッセージのoptionsフィールド301の例である。図24においては、要求IPアドレス2401、サーバ識別子2402、クライアント識別子2403、要求オプションリスト2404が記述されている。要求IPアドレス2401にはDHCP OFFERのyiaddrフィールドで指定されたIPアドレスが設定される。サーバ識別子2402にはDHCPサーバのIPアドレスが設定される。クライアント識別子2403にはDHCPクライアントのMACアドレスが設定される。要求オプションリスト2404にはDHCPクライアントが要求する設定情報のリストが設定される。図24の例では、サブネットマスク、Gatewayアドレス、DNSサーバアドレス、DPアドレスからなる。
図25は図22のS2210においてDHCPサーバが送信するDHCP ACKメッセージのoptionsフィールド301の例である。図25においては、サーバ識別子2501、リースタイム2502、サブネットマスク2503、Gatewayアドレス2504、DNSサーバアドレス2505、DPアドレス2506を持っている。サーバ識別子2501にはDHCPサーバのIPアドレスが設定される。リースタイム2502にはリースタイムが設定される。サブネットマスク2503にはサブネットマスクが設定される。Gatewayアドレス2504にはGatewayアドレスが設定される。DNSサーバアドレス2505にはDNSサーバアドレスが設定される。DPアドレス2506にはDPのアドレスが設定される。
次に、画像形成装置104のデバイス情報をDP102に登録する処理について説明する。画像形成装置104はDHCPクライアントとして動作し、DHCPサーバ101が図22、23の処理を行った結果、画像形成装置104自身のIPアドレスに加えDP102のIPアドレスを受信している。
画像形成装置104は、起動時やデバイス情報に変化があった場合にDP102に対して図7のようなXML形式のHelloメッセージをユニキャストで送信することにより存在を通知する。
図7のHelloメッセージは、<Header>タグで囲まれるheader部701と<Body>タグで囲まれるbody部702からなり、全体が<Envelope>タグで囲まれる構造になっている。この構造は本実施例において使用するメッセージすべてに共通である。
header部701はメッセージの内容に依存しない共通ヘッダとしての役割を果たしており、<Action>タグ、<MessageID>タグ、<To>タグが存在する。<Action>タグはメッセージの種類を識別するためのものである。<MessageID>タグはメッセージを一意に識別するための識別子である。<To>タグはこのメッセージの送信先を識別するためのものである。一方、body部702はメッセージの内容に対応して構造が変化する。図7においては、<Body>タグの直下に<Hello>タグが存在し、このメッセージがHelloメッセージであることを示している。<Hello>タグの中には<EndpointReference>タグ、<Types>タグ、<XAddrs>タグ、<MetadataVersion>タグが存在する。<EndpointReference>タグの中には<Address>タグが存在し、デバイスを識別するアドレス情報を持つ。<Types>タグはデバイスのタイプ情報を持つ。<XAddrs>タグはデバイス情報を取得するためのURLを持つ。<MetadataVersion>タグはデバイス情報のバージョンを持つ。
DP102はHelloメッセージの中からデバイスをグローバルに識別するUUIDとして<EndpointReference>タグの中の<Address>タグの値を抽出する。またデバイスタイプとして<Types>タグの値を抽出する。またデバイス情報のバージョンとして<MetadataVersion>タグの値を抽出する。またデバイス情報を取得するためのURLとして<XAddrs>タグの値を抽出する。そしてこれら抽出した情報をデバイス情報保持部514に格納する。また同時に、Helloメッセージの送信元IPアドレスもデバイス情報保持部514に格納する。
その後DP102は<XAddrs>タグで記載されたURLに対し、図8のようなXML形式のGetメッセージをユニキャストで送信する。図8のGetメッセージは、header部のみを持つメッセージとなっている。header部の<Action>タグにおいて、このメッセージがGetメッセージであることを示している。
画像形成装置104のデバイス情報送信部535はGetメッセージを受信すると図9のようなGetResponseメッセージを送信する。
図9のGetResponseメッセージにおいては、body部に<Metadata>タグで示されるデバイス情報を持つ構造となっている。<Metadata>タグの中には<MetadataSection>タグで示されるMetadataSection部901、902、903が存在する。各MetadataSection部は直下のタグにより、その中に持つ情報の種類が指定される。MetadataSection部901は<ThisDevice>タグを持っており、デバイスごとに異なる情報が格納される。<FriendlyName>タグはこのデバイスにつけた名前、<FirmwareVersion>タグはこのデバイスのファームウェアバージョン、<SerialNumber>タグはこのデバイスのシリアル番号を示している。MetadataSection部902は<ThisModel>タグを持っており、デバイスのモデルごとに異なる情報が格納される。<Manufacturer>タグはデバイスの製造会社名、<Manufacturer>タグはデバイス製造会社のURL、<PresentationURL>はデバイスの情報を示すURL、<ModelName>タグはデバイスのモデル名を示している。MetadataSection部903は<Relationship>タグを持っており、デバイスが持つ内部サービスの情報が格納される。本実施例においては、内部サービスとは画像形成装置が提供するプリントサービスである。<Relationship>タグはさらにその直下に<Hosted>タグを持ち、その中に<EndpointReference>タグ、<Types>タグ、<ServiceId>タグが存在する。<EndpointReference>タグの中には<Address>タグが存在し、サービスを利用するためのアドレス情報を持つ。<Types>タグはサービスのタイプ情報を持つ。<ServiceId>タグはデバイス内でサービスを識別するための識別子を持つ。
DP102は受信したデバイス情報からデバイス名として<FriendlyName>タグの値、モデル名として<ModelName>タグの値を抽出し、デバイス情報保持部514に格納する。
図14は上述のデバイス情報登録の流れに関し、DP102がデバイス情報をデバイス情報保持部514に登録する際の処理を示すフローチャートである。図14の各ステップは、DP102のCPU3001がROM3002に格納されたプログラムを処理することによって実行される。
S1401において、DP102は、画像形成装置から送信されたHelloメッセージを、NIC3008を介して受信する。次にS1402において、CPU3001は、受信したHelloメッセージの中からUUIDを抽出する。そして、S1403において、CPU3001は、抽出されたUUIDと同じUUIDを持つレコードがデバイス情報保持部514に存在するかどうかを判定する。存在しなかった場合はS1404に進み、デバイス情報保持部514に保持される図6に示すデバイス情報にあらたにレコードを追加する。続いてS1405において、DP102は、Getメッセージを画像形成装置に対して送信することによりデバイス情報を取得する。S1406において、CPU3001は、デバイス情報保持部514に追加したレコードを更新する。一方S1403において、レコードが存在すると判定された場合にはS1407に進み、CPU3001は、受信したHelloメッセージからバージョン情報を抽出する。次にS1408において、CPU3001は、UUIDが一致したレコードにおけるバージョン情報が、S1407で抽出したバージョン情報と同じであるかどうかを判定する。バージョンが異なった場合はS1405に進みデバイス情報の更新を行う。同じであった場合には何もせずに処理を終了する。
次にDP102に登録されたデバイス情報を画像形成装置104が削除する処理について説明する。
画像形成装置104は、自機がSHUTDOWNする場合など、動作を停止する場合にはDP102に対して図10のようなByeメッセージをユニキャストで送信する。
図10のByeメッセージにおいては、body部に<Bye>タグが存在し、このメッセージがByeメッセージであることを示している。<Bye>タグの中には<EndpointReference>タグが存在する。<EndpointReference>タグの中には<Address>タグが存在し、デバイスを識別するアドレス情報を持つ。
DP102はByeメッセージの中からUUID情報を抽出し、対応するデバイス情報をデバイス情報保持部514から削除する。
図15は上述のデバイス情報削除の流れに関し、DP102がデバイス情報をデバイス情報保持部514から削除する際の処理を示すフローチャートである。図15の各ステップは、DP102のCPU3001がROM3002に格納されたプログラムを処理することによって実行される。
まずDP102はS1501において、画像形成装置から送信されたByeメッセージをNIC3008を介して受信する。次にS1502において、CPU3001は、受信したHelloメッセージの中からUUIDを抽出する。そして、S1503において、CPU3001は、抽出されたUUIDと同じUUIDを持つレコードがデバイス情報保持部514に存在するかどうかを判定する。存在した場合はS1504に進み、CPU3001は、デバイス情報保持部514からそのレコードを削除する。存在しなかった場合には何もせずに処理を終了する。
次に、クライアントPC103がDP102を使用して画像形成装置を検索する処理について説明する。クライアントPC103はDHCPクライアントとして動作し、DHCPサーバ101が図22、23の処理を行った結果、クライアントPU103自身のIPアドレスに加えて、DP102のIPアドレスを受信している。
クライアントPC103は、DP102に対して図11のようなXML形式のProbeメッセージをユニキャストで送信する。図11のProbeメッセージにおいては、body部に<Probe>タグが存在し、このメッセージがProbeメッセージであることを示している。<Probe>タグの中には<Types>タグが存在する。<Types>タグは検索したいデバイスのタイプを指定するものである。図11の例では、デバイスのタイプがプリンタであるデバイスを検索するためのProbeメッセージを示している。
DP102はProbeメッセージを受信すると、<Types>タグを抽出しデバイス情報保持部514の中から検索条件に合致するデバイスを探し、図12のようなProbeMatchメッセージをクライアントPC103に送信する。図12のProbeMatchメッセージにおいては、body部に<ProbeMatches>タグが存在し、このメッセージがProbeMatchメッセージであることを示している。<ProbeMatches>タグの中には<ProbeMatch>タグで示されるProbeMatch部1201、1202が存在する。それぞれのProbeMatch部が1個の検索結果に対応しており、図12の例においては2個のデバイスが条件に合致したことを示す検索結果を示している。ProbeMatch部の中の構造は図7のHelloメッセージにおける<Hello>タグの中と同一である。
クライアントPC103はProbeMatchメッセージの中から<XAddrs>タグで記載されたURLを抽出し、図8のようなGetメッセージをユニキャストで送信する。本実施例においてURLは画像形成装置104のIPアドレスからなっており、GetメッセージはDP102ではなく画像形成装置104に直接送信する。画像形成装置104は図9のようなGetResponseメッセージを送信し、これを受信したクライアントPC103は必要な情報を抽出する。
ProbeMatchメッセージに複数の検索結果が存在している場合にはクライアントPC103はGetメッセージの送信を繰り返し、すべてのデバイス情報を取得する。
図16は上述の検索の流れに関し、DP102がデバイス情報を検索する際の処理を示すフローチャートである。図16の各ステップは、DP102のCPU3001がROM3002に格納されたプログラムを処理することによって実行される。
まずDP102はS1601において、クライアントPC103から送信されたProbeメッセージをNIC3008を介して受信する。次にS1602において、CPU3001は、受信したProbeメッセージ中のTypesタグの値を抽出する。S1603において、CPU3001は、Typesタグの値が空かどうかを判定する。空ではなかった場合はS1604において、CPU3001は、デバイス情報保持部514に保持されているデバイス情報のレコードを検索し、抽出された値と同じデバイスタイプを持つレコードが存在するかどうかを判定する。デバイスタイプが同じレコードが存在した場合には、S1605において、CPU3001はそのレコードに対応した応答データを作成する。S1606において、CPU3001はすべてのレコードについて確認が終了したかどうかを判定する。すべてのレコードの検索が終了するとS1607に進み、CPU3001は、それまでに生成された応答データを1個にまとめ、図12のようなProbeMatchメッセージをクライアントPC103に送信して処理を終了する。また、S1603において、Typesの値が空であると判定された場合にはS1608に進み、すべてのレコードについての応答データを作成する。そして、S1607においてProbeMatchメッセージをクライアントPC103に送信して処理を終了する。尚、図16の例では、Probeに含まれる検索条件が、デバイスタイプであった場合を例に説明したが、デバイス名やモデル名など、その他の情報であってもよい。
図13はクライアントPC103が画像形成装置を検索する際のUIの例を示す図である。図13の画面は、クライアントPCのCRT3010上に表示される画面である。図13において、領域1301は検索するデバイスのタイプを指定するための領域であり、「MFP」「Printer」などのキーワードが指定可能である。領域1301に何も入力しない場合はすべての画像形成装置が検索される。ボタン1302を押下すると上述したようにDP102に対して検索が実行される。検索された結果は領域1303に表示され、取得した情報から、デバイスのタイプやモデル名、デバイス名が同時に表示される。
以上説明したように、本実施例によれば、サブネットを越えた範囲におけるデバイスを検索することができる。また、デバイス検索サーバをクライアントPCやデバイスに登録する処理が簡単になり、システム管理者やユーザの手間が軽減される。即ち、クライアントPCやデバイスにDHCPサーバがアドレスを配布する際に、一緒にデバイス検索サーバのアドレスを配布するので、改めてクライアントPCやデバイスにデバイス検索サーバのアドレスを登録する必要がなくなる。
(実施例2)
次に、第二の実施例として別のシステム構成例について説明する。
本実施例においては、DP102のデバイス情報保持部514に保持されるデバイス情報の更新を、画像形成装置からの通知受信時ではなくDHCPサーバからの通知によって行う。
本実施例におけるネットワーク構成は図1で示した第一の実施例と同様である。
図17は本実施例におけるDHCPサーバ101、DP102、クライアントPC103、画像形成装置104のソフトウェア構成を示すブロック図である。なお、第一の実施例と同じ機能を持つブロックに関しては同じ番号を付し、説明は省略する。
図17において、DHCPサーバ101の配布状況通知部1701はIPアドレスや設定情報をDHCPクライアントへ配布した状況を、DP102に対して通知する。この通知は図18のようなフォーマットである。配布状況通知部は、この通知を図2のDHCP ACK(S2004、S2006)送信時、DHCP RELEASE(S2007)受信時、およびリース期間内にDHCP REQUESTを受信せず、IPアドレスの割り当てを解除したタイミングで行う。
DP102の配布状況受信部1711は、通知を受信し、その種類に基づきデバイス情報保持部514が保持するデバイス情報を用いた処理を行う。デバイス情報の取得が必要であると判断された場合は、デバイス情報取得部512は画像形成装置104に対してデバイス情報取得要求を送信し、返されたデバイス情報をデバイス情報保持部514に保持する。
画像形成装置104は、第一の実施例におけるデバイス情報通知部533は持たない。そのため、DHCPサーバ101からDP102のIPアドレスが配布されたとしても、DP102に対して直接そのIPアドレスを通知することはしない。
図18はDHCPサーバ101からDP102に送信される通知データのフォーマットである。タイプ1801としては、1〜3の値を設定する。1はDHCPACK(S2004)を送信しIPアドレスの新規割り当てを行ったことを示す。2はDHCPACK(S2006)を送信しIPアドレスの使用を更新したことを示す。3はDHCPRELEASEを受信したか、リース期間内にDHCPREQUESTを受信せずIPアドレスの割り当てを解除したことを示す。アドレス1802には配布したIPアドレスを設定する。
図19はDP102の配布状況受信部1702がDHCPサーバ101から通知を受信した際のDP102の処理を示すフローチャートである。図19の各ステップは、DP102のCPU3001がROM3002に格納されたプログラムを処理することによって実行される。
ステップ1901において、DP102は、図18の通知メッセージをNIC3008を介して受信する。次にS1902において、CPU3001は通知メッセージのタイプを解析しその値によって処理を分岐させる。タイプが1であった場合はS1903に進み、DP102はNIC3008を介して通知メッセージに含まれるIPアドレスに対してProbeメッセージを送信する。次にS1904において、Probeの応答としてのProbeMatchメッセージを受信する。次にS1905において、CPU3001は、受信したProbeMatchメッセージに基づいてデバイス情報保持部514に新たにレコードを追加する。そしてS1906において、NIC3008を介してGetメッセージを送信する。S1907においてGetの応答としてのデバイス情報を取得し、S1908において、CPU3001はデバイス情報保持部514に追加したレコードを更新して処理を終了する。
S1902において、タイプが2であった場合にはS1909に進み、DP102は受信した通知メッセージに含まれるIPアドレスに対して、NIC3008を介してProbeメッセージを送信する。次にS1910において、送信したProbeの応答としてのProbeMatchメッセージを受信する。次にS1911において、CPU3001はProbeMatchメッセージからUUIDを抽出する。S1912において、CPU3001は抽出されたUUIDと同じUUIDを持つレコードがデバイス情報保持部514に保持されるデバイス情報の中に存在するかどうかを判定する。存在しなかった場合はS1913に進み、CPU3001はデバイス情報保持部514にあらたにレコードを追加する。続いてS1914においてGetメッセージを送信する。次にS1915においてGetの応答としてのデバイス情報を取得し、S1916において、CPU3001はデバイス情報保持部514に追加したレコードを更新して処理を終了する。一方S1912において、存在すると判定された場合にはS1917に進み、CPU3001はProbeMatchメッセージからバージョン情報を抽出する。S1918において、CPU3001は、S1917で抽出したバージョン情報が、UUIDが一致したレコードにおけるバージョン情報と比較して同じであるかどうかを判定する。バージョンが異なった場合はS1914に進み、CPU3001はデバイス情報の更新を行う。同じであった場合には何もせずに処理を終了する。
S1902において、タイプが3であった場合にはS1919に進み、CPU3001は、通知メッセージに含まれるIPアドレスを持つレコードがデバイス情報保持部514に保持されるデバイス情報の中に存在するかどうかを判定する。存在した場合はS1920に進み、CPU3001はそのレコードを削除して処理を終了する。存在しなかった場合には何もせずに処理を終了する。
尚、本実施例2において、デバイス情報保持部514に保持されるデバイス情報を削除することが可能な装置を制限することも可能である。つまり、特定の装置のみが、DP102のデバイス情報保持部514に保持されるデバイス情報を削除できるようにする。図28はその場合のDP102のソフトウェア構成を示すものである。図28において、アクセス制御手段2801は、図18の通知メッセージを受信すると、アクセス制御リスト設定手段2802により作成されるアクセス制御リストに従い、通知メッセージを処理するかどうかを判断する。アクセス制御リスト設定手段2802はユーザによりキーボード3009bから所望のIPアドレスが入力されると、そのIPアドレスに基づいてアクセス制御リストを作成する。なお、アクセス制御リストを作成する別の形態としては、ネットワークを介してIPアドレス情報を受信し、アクセス制御リストを作成するようにしてもよい。
図29は上記構成例において、DP102の配布状況受信部1702がDHCPサーバ101から上述したタイプが3である通知を受信した際の処理を示すフローチャートである。このフローチャートの各ステップは、DP102のCPU3001によって処理される。
S2901において、DP102はタイプが3である通知を受信する。S2902において、CPU3001は、受信した通知の送信元IPアドレスを取得する。図18の通知メッセージの送受信はIP通信を使用しており、このIPアドレスは通知メッセージの前に付加されるIPヘッダから取得される。次にS2903において、CPU3001は、取得したIPアドレスがアクセス制御リストの中に存在するかどうかを判定する。存在した場合はS2904に進み、CPU3001は通知メッセージに含まれるIPアドレスを持つレコードがデバイス情報保持部514に保持されるデバイス情報の中に存在するかどうかを判定する。存在した場合はS2905に進み、CPU3001はそのレコードを削除して処理を終了する。S2903において取得したIPアドレスがアクセス制御リストに存在しなかった場合、およびS2904においてレコードが存在しなかった場合には何もせずに処理を終了する。
この構成においては、DP102が保持するデバイス情報を削除できる装置を、例えばDHCPサーバ101のみに限定することができる。
以上説明したように、実施例2によれば、クライアントPC103や画像形成装置104が自身の情報をDP102に通知する必要はなくなる。従って、クライアントPCや画像形成装置が自身の情報をDP102に通知することができない状況であっても、DHCPサーバが代わりにデバイス情報をDP102に通知することができる。例えば、画像形成装置の電源が抜かれ、画像形成装置がByeメッセージをDPに送信できない場合、画像形成装置が使用できないことをIPアドレスの更新が依頼されないことによってDHCPサーバが知ることができる。そのような場合に、DHCPサーバは、画像形成装置の代わりにDP102のデバイス情報からその画像形成装置の情報を削除するように通知することができる。従って、DPは、このような状況であってもより正確なデバイス情報を管理することができるようになる。
(実施例3)
次に第三の実施例について説明する。
本実施例においてはDPはネットワーク上に1台のみ存在するのではなく、各サブネットごとにDPを配置する。
図20は本実施例におけるデバイス検索システムの構成を示す図である。サブネット1にはDHCPサーバ101、クライアントPC109が接続されている。サブネット2にはDP102、クライアントPC103、画像形成装置104が接続されている。サブネット3にはDP108、クライアントPC110、画像形成装置105が接続されている。サブネット1とサブネット2はルータ106により相互に接続され、サブネット1とサブネット3はルータ107により相互に接続されており、結果としてすべてのサブネットにおいて接続された端末は相互に通信が可能になっている。
このようなシステム構成において、本実施例においては、DHCPサーバ101の配布情報設定部502により、図26のような配布設定を行う。図26においては、第一の実施例における図21の設定情報に加え、サブネット2用設定2602には予約済みオプション2604が存在している。予約済みオプション2604は、MACアドレス、IPアドレス、DPアドレスからなる。DHCP REQUESTを送信したDHCPクライアントのMACアドレスがこの予約済みオプションのいずれかに一致した場合には、本オプションで記述された情報が優先して配布される。なお図26では1個のみ設定しているが、複数個設定することも可能である。本実施例においては予約済みオプション2604にはMACアドレスとして画像形成装置104のMACアドレス、IPアドレスとして画像形成装置104に固定で配布するIPアドレス、DPアドレスとしてDP102のIPアドレスを設定する。また、サブネット1用設定2601にはDPのアドレスとしてDP102およびDP108のIPアドレスを設定する。サブネット2用設定2602にはDPのアドレスとしてDP102およびDP108のIPアドレスを設定する。サブネット3用設定2603にはDPのアドレスとしてDP108のIPアドレスを設定する。
次に、DHCPサーバ101がIPアドレスなどの設定情報をDHCPクライアントに配布する際の処理を図27のフローチャートを使用して説明する。図27の各ステップは、DHCPサーバ101のCPU3001がROM3002に格納されたプログラムを処理することによって実行される。
まずS2701において、DHCPサーバ101は、DHCPクライアントまたはリレーエージェントが送信したDHCP DISCOVERメッセージを受信する。S2702において、CPU3001は第一の実施例における図23で示した方法により割り当てる設定情報を特定する。S2703において、CPU3001は、S2702で設定情報が特定されたかどうかを判定し、特定されなかった場合には処理を終了する。特定されていた場合にはS2704に進む。S2704において、CPU3001は、メッセージに含まれるクライアント識別子と、特定された設定情報の予約済みオプションのMACアドレスが一致するかどうかを判定する。一致していた場合にはS2705に進み、CPU3001は予約済みオプションで設定されているIPアドレスをDHCP OFFERメッセージのyiaddrフィールドに設定する。その後、S2707へ進む。S2704の判定で一致していなかった場合はS2706に進み、CPU3001は、特定された設定情報に未割り当てのIPアドレスが残っているかどうかを判定し、残っていない場合には処理を終了する。残っていた場合にはS2707に進む。S2707においては、CPU3001は、DHCP OFFERメッセージの中で未設定の部分に、特定された設定情報を設定し、DHCPOFFERメッセージを生成する。ここで、S2705によりyiaddrフィールドが設定されていない場合には、配布するIPアドレスはyiaddrフィールドに設定する。そしてS2708において、生成したDHCP OFFERメッセージをDHCPクライアントに送信する。次にS2709において、DHCPサーバ101は、DHCPクライアントまたはリレーエージェントが送信したDHCP REQUESTメッセージを受信する。S2710において、CPU3001は、第一の実施例における図23で示した方法により割り当てる設定情報を特定する。S2711においてCPU3001は、S2710で設定情報が特定されたかどうかを判定し、特定されなかった場合には処理を終了する。特定されていた場合にはS2712に進み、CPU3001は、メッセージに含まれるクライアント識別子と、特定された設定情報の予約済みオプションのMACアドレスが一致するかどうかを判定する。一致していた場合にはS2713に進み、CPU3001は、予約済みオプションに設定されている設定情報をDHCP ACKメッセージに設定する。S2712の判定で一致していなかった場合はS2714に進み、DHCP REQUESTメッセージに含まれる要求IPアドレスを割り当て済みとする。次にS2715において、CPU3001は、DHCP REQUESTメッセージの中で未設定の部分に、特定された設定情報に基づき設定し、DHCP ACKメッセージを生成する。そしてS2716において、生成したDHCP ACKメッセージをDHCPクライアントに送信し、処理を終了する。
上記処理により、画像形成装置104にはDP102のIPアドレスが配布され、画像形成装置105にはDPのアドレスとしてDP108のIPアドレスが配布される。
その結果、画像形成装置104はDP102に存在を通知し、画像形成装置105はDP108に存在を通知することになる。その後第一の実施例と同様のメッセージ交換を行うことにより、画像形成装置104のデバイス情報はDP102、画像形成装置105のデバイス情報はDP108に保持される。
一方、クライアントPC103にはDPのアドレスとしてDP102、DP108のIPアドレスが配布される。クライアントPC103はDP102、DP108両方のDPに対して第一の実施例と同様の処理を繰り返し行うことにより、画像形成装置104、105のデバイス情報を取得することが可能となる。またクライアントPC110にはDPのアドレスとしてDP108のIPアドレスが配布される。よってクライアントPC110はDP108に対して第一の実施例と同様の処理を行い、画像形成装置105のデバイス情報を取得できるが、DP102の存在はわからないため、画像形成装置104のデバイス情報を取得することはできない。これにより、サブネット2上のクライアントPCにはすべてのサブネットに存在する画像形成装置のデバイス情報を取得させ、サブネット3上のクライアントPCにはサブネット3に存在する画像形成装置のデバイス情報しか取得させないという制御が可能となる。また、図26の例においては、DPが存在しないサブネット1上のDHCPクライアントにはDP102、DP108のIPアドレスを配布するように設定している。そのため、クライアントPC109はクライアントPC103と同様画像形成装置104、105のデバイス情報を取得することが可能となる。
(その他の実施例)
本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。
また、本発明は、前述した実施例のフローチャートを実現するソフトウェアのコンピュータプログラムコードを記録した記憶媒体を、システムあるいは装置に供給してもよい。そして、そのシステムあるいは装置のコンピュータ(CPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成され得る。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、フロッピディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD−ROM、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
本実施例におけるしたネットワーク検索システムの構成を示す図 DHCPサーバとDHCPクライアントとの間で送受信されるDHCPメッセージのフローを説明する図 DHCPメッセージのフォーマットを示す図 画像形成装置のハードウェア構成を示すブロック図 DHCPサーバ、DP、クライアントPC、画像形成装置のソフトウェア構成を示すブロック図 DPのデバイス情報保持部が保持するデバイス情報の例 本実施例におけるHelloメッセージの例 本実施例におけるGetメッセージの例 本実施例におけるGetResponseメッセージの例 本実施例におけるByeメッセージの例 本実施例におけるProbeメッセージの例 本実施例におけるProbeMatchメッセージの例 クライアントPCが画像形成装置を検索する際のUIの例を示す図 DPがデバイス情報登録を行う際の処理を示すフローチャート DPがデバイス情報を削除する際の処理を示すフローチャート DPがデバイス情報を検索する際の処理を示すフローチャート 第二の実施例におけるDHCPサーバ、DP、クライアントPC、画像形成装置のソフトウェア構成を示すブロック図 DHCPサーバからDPに送信される通知データのフォーマット DPの配布状況受信部がDHCPサーバから通知を受信した際の処理を示すフローチャート 第三の実施例におけるネットワーク検索システムの構成を示す図 第一の実施例における配布情報DBに保持される設定情報の例 第一の実施例におけるDHCPサーバが設定情報を配布する際の処理を示すフローチャート DHCPサーバが設定情報を特定する際の処理を示すフローチャート DHCPREQUESTメッセージのoptionsフィールドの例 DHCPACKメッセージのoptionsフィールドの例 第三の実施例における配布情報DBに保持される設定情報の例 第三の実施例におけるDHCPサーバが設定情報を配布する際の処理を示すフローチャート 第二の実施例におけるDPのソフトウェア構成を示すブロック図 DPの配布状況受信部がDHCPサーバから通知を受信した際の処理を示すフローチャート DHCPサーバ、DP、クライアントPCのハードウェア構成を示すブロック図
符号の説明
3001 CPU
3002 ROM
3003 RAM
3005 KBC
3006 CRTC
3007 DKC
3008 NIC

Claims (14)

  1. ネットワークに接続可能な情報処理装置と、前記ネットワーク上の装置を検索するための検索要求に応じて検索を行い検索結果を応答する検索サーバと、を含むネットワークシステムであって、
    前記情報処理装置は、
    複数のネットワークアドレスを管理する管理手段と、
    前記検索サーバのネットワークアドレスを記憶する記憶手段と、
    前記ネットワークに新たに接続された装置からの要求に応じて、前記管理手段で管理されるネットワークアドレスのうち他の装置に割り当てられていないネットワークアドレスを割り当てる割り当て手段と
    記割り当て手段によって割り当てられたネットワークアドレスを、前記ネットワークに新たに接続された装置に送信する第1の送信手段と、
    前記割り当て手段によって割り当てられたネットワークアドレスを、前記記憶手段により記憶されたネットワークアドレスに基づいて前記検索サーバに送信する第2の送信手段と、を有し、
    前記検索サーバは、
    前記第2の送信手段により送信されたネットワークアドレスに基づいて、前記ネットワークに新たに接続された装置に対してデバイス情報を要求する要求手段と、
    前記要求手段による要求に応じて取得したデバイス情報を登録する登録手段と、
    を有することを特徴とするネットワークシステム
  2. 前記第1の送信手段は、前記装置が前記割り当て手段によって割り当てられたネットワークアドレスを使用可能な期間を示す情報を送信することを特徴とする請求項1記載のネットワークシステム
  3. 前記使用可能な期間が経過する前に前記装置から更新要求を受信した場合、前記使用可能な期間を更新し、前記使用可能な期間が経過しても前記装置から更新要求を受信しなかった場合、前記ネットワークアドレスの割り当てを解除する更新手段と、
    前記更新手段によって前記ネットワークアドレスの割り当てが解除された場合、当該ネットワークアドレスが使用されなくなったことを前記検索サーバに通知する通知手段と、を更に有することを特徴とする請求項2記載のネットワークシステム
  4. 前記記憶手段は、複数の検索サーバそれぞれのネットワークアドレスを記憶し、
    前記第2の送信手段は、前記装置に応じて、前記複数の検索サーバのうちのどの検索サーバのネットワークアドレスを送信するかを切り替えることを特徴とする請求項1乃至3の何れかに記載のネットワークシステム
  5. 前記情報処理装置はDHCPサーバであり、前記ネットワークアドレスはIPアドレスであることを特徴とする請求項1乃至4の何れかに記載のネットワークシステム
  6. 前記装置は、クライアントコンピュータ或いはクライアントコンピュータによって使用されるデバイスの何れかであることを特徴とする請求項1乃至5の何れかに記載のネットワークシステム
  7. 複数のネットワークアドレスを管理する管理手段と、
    ネットワーク上の装置を検索するための検索要求に応じて検索を行い検索結果を応答する検索サーバのネットワークアドレスを記憶する記憶手段と、
    前記ネットワークに新たに接続された装置からの要求に応じて、前記管理手段で管理されるネットワークアドレスのうち他の装置に割り当てられていないネットワークアドレスを割り当てる割り当て手段と、
    前記割り当て手段によって割り当てられたネットワークアドレスを、前記ネットワークに新たに接続された装置に送信する第1の送信手段と、
    前記ネットワークに新たに接続された装置に関するデバイス情報を前記検索サーバに取得させるために、前記割り当て手段によって割り当てられたネットワークアドレスを、前記記憶手段により記憶されたネットワークアドレスに基づいて前記検索サーバに送信する第2の送信手段と、
    を有することを特徴とする情報処理装置。
  8. 前記第1の送信手段は、前記装置が前記割り当て手段によって割り当てられたネットワークアドレスを使用可能な期間を示す情報を送信することを特徴とする請求項7記載の情報処理装置。
  9. 前記使用可能な期間が経過する前に前記装置から更新要求を受信した場合、前記使用可能な期間を更新し、前記使用可能な期間が経過しても前記装置から更新要求を受信しなかった場合、前記ネットワークアドレスの割り当てを解除する更新手段と、
    前記更新手段によって前記ネットワークアドレスの割り当てが解除された場合、当該ネットワークアドレスが使用されなくなったことを前記検索サーバに通知する通知手段と、を更に有することを特徴とする請求項8記載の情報処理装置。
  10. 前記記憶手段は、複数の検索サーバそれぞれのネットワークアドレスを記憶し、
    前記第2の送信手段は、前記装置に応じて、前記複数の検索サーバのうちのどの検索サーバのネットワークアドレスを送信するかを切り替えることを特徴とする請求項7乃至9の何れかに記載の情報処理装置。
  11. 前記情報処理装置はDHCPサーバであり、前記ネットワークアドレスはIPアドレスであることを特徴とする請求項7乃至10の何れかに記載の情報処理装置。
  12. 前記装置は、クライアントコンピュータ或いはクライアントコンピュータによって使用されるデバイスの何れかであることを特徴とする請求項7乃至10の何れかに記載の情報処理装置。
  13. ネットワーク上のデバイスを検索するための検索要求に応じて検索を行い検索結果を応答する検索サーバと通信可能な情報処理装置の制御方法であって、
    複数のネットワークアドレスを管理し、ネットワークに新たに接続された装置からの要求に応じて、前記複数のネットワークアドレスのうち他の装置に割り当てられていないネットワークアドレスを割り当てる割り当てステップと、
    前記割り当てステップにおいて割り当てられたネットワークアドレスを前記装置に送信する第1の送信ステップと、
    前記ネットワークに新たに接続された装置に関するデバイス情報を前記検索サーバに取得させるために、前記割り当てステップにおいて割り当てられたネットワークアドレスを、前記検索サーバに送信する第2の送信ステップと、
    を有することを特徴とする情報処理装置の制御方法。
  14. 請求項13記載の制御方法をコンピュータに実行させるためのコンピュータプログラム。
JP2007330953A 2007-12-21 2007-12-21 情報処理装置、デバイス、情報処理装置の制御方法、及びコンピュータプログラム Expired - Fee Related JP5264161B2 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP2007330953A JP5264161B2 (ja) 2007-12-21 2007-12-21 情報処理装置、デバイス、情報処理装置の制御方法、及びコンピュータプログラム
EP08865215.1A EP2225855A4 (en) 2007-12-21 2008-11-20 INFORMATION PROCESSING APPARATUS, DEVICE, METHOD FOR CONTROLLING INFORMATION PROCESSING APPARATUS, AND STORAGE MEDIUM
US12/739,913 US20100257271A1 (en) 2007-12-21 2008-11-20 Information processing apparatus, device, control method of information processing apparatus, and storage medium
RU2010130476/07A RU2448422C2 (ru) 2007-12-21 2008-11-20 Аппаратура обработки информации, устройство, способ управления аппаратурой обработки информации и носитель хранения данных
KR1020107015841A KR101103190B1 (ko) 2007-12-21 2008-11-20 정보 처리 장치, 디바이스, 정보 처리 장치의 제어 방법 및 저장 매체
CN200880122005.4A CN101904138B (zh) 2007-12-21 2008-11-20 信息处理设备、装置和信息处理设备的控制方法
PCT/JP2008/071599 WO2009081688A1 (en) 2007-12-21 2008-11-20 Information processing apparatus, device, control method of information processing apparatus, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007330953A JP5264161B2 (ja) 2007-12-21 2007-12-21 情報処理装置、デバイス、情報処理装置の制御方法、及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2009153050A JP2009153050A (ja) 2009-07-09
JP5264161B2 true JP5264161B2 (ja) 2013-08-14

Family

ID=40801000

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007330953A Expired - Fee Related JP5264161B2 (ja) 2007-12-21 2007-12-21 情報処理装置、デバイス、情報処理装置の制御方法、及びコンピュータプログラム

Country Status (7)

Country Link
US (1) US20100257271A1 (ja)
EP (1) EP2225855A4 (ja)
JP (1) JP5264161B2 (ja)
KR (1) KR101103190B1 (ja)
CN (1) CN101904138B (ja)
RU (1) RU2448422C2 (ja)
WO (1) WO2009081688A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010282610A (ja) * 2009-05-07 2010-12-16 Canon Inc ネットワークシステム及びその管理方法
JP5402782B2 (ja) * 2010-03-31 2014-01-29 ブラザー工業株式会社 プリンタ検索装置、印刷仲介サーバ、及び、コンピュータプログラム
ES2528744T3 (es) * 2011-08-31 2015-02-12 Liberty Global Europe Holding B.V. Método y sistema para enrutar tráfico de datos
JP5867940B2 (ja) 2012-03-14 2016-02-24 ▲ホア▼▲ウェイ▼技術有限公司 接続確立要求を送信するための方法、スイッチ、サーバ、およびシステム
CN103034464A (zh) * 2012-12-06 2013-04-10 南京邮电大学 远程打印电子商务平台信息更新通知的方法
US10182133B2 (en) 2014-12-15 2019-01-15 Xiaomi Inc. Method and device for starting application
CN104539548B (zh) * 2014-12-15 2018-05-08 小米科技有限责任公司 应用启动方法及装置
JP2017034482A (ja) 2015-07-31 2017-02-09 キヤノン株式会社 画像形成装置、その制御方法、及びプログラム
JP6720735B2 (ja) * 2016-07-04 2020-07-08 コニカミノルタ株式会社 印刷システム及び装置検索方法並びに装置検索プログラム

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6292202B1 (en) * 1993-07-29 2001-09-18 Canon Kabushiki Kaisha Image processing method and apparatus for hardware processing image data received from a device using software processing
JPH09282259A (ja) * 1996-04-18 1997-10-31 Hitachi Ltd ネットワークシステム
JP3335582B2 (ja) * 1998-10-09 2002-10-21 日本電信電話株式会社 ダイナミック・ドメイン・ネーム・システムおよびダイナミック・ドメイン・ネーム管理方法
FR2804811B1 (fr) * 2000-02-07 2002-05-10 Rene Duranton Procede et dispositif pour l'attribution automatique d'adresses a une pluralite de modules interconnectes par reseau de communication a topologie complexe
JP2001223730A (ja) * 2000-02-14 2001-08-17 Matsushita Electric Ind Co Ltd ゲートウェイ装置および記録媒体
JP2002290472A (ja) * 2001-03-23 2002-10-04 E-Withyou Inc 通信接続先管理システム
US20030078987A1 (en) * 2001-10-24 2003-04-24 Oleg Serebrennikov Navigating network communications resources based on telephone-number metadata
US7443862B2 (en) * 2002-01-22 2008-10-28 Canon Kabushiki Kaisha Apparatus connected to network, and address determination program and method
JP3715954B2 (ja) * 2002-07-12 2005-11-16 キヤノン株式会社 情報処理装置、情報処理方法、制御プログラム、ネットワークシステム
EP1385295B1 (en) * 2002-07-25 2007-10-31 Hewlett-Packard Company Process and apparatus for distributing network configuration settings
JP2004062443A (ja) * 2002-07-26 2004-02-26 Ntt Docomo Inc サービス管理システム、サービス管理方法、サーバ管理装置、通信端末及びサーバ装置
JP2004080567A (ja) * 2002-08-21 2004-03-11 Matsushita Electric Ind Co Ltd ネットワーク端末装置とアドレス管理サーバ、及びそのネットワーク通信方法
KR100520040B1 (ko) * 2003-02-26 2005-10-11 아이피원(주) 이동 ip 네트워크에서 dhcp 서버를 이용하여 서브넷 변경을 확인하는 방법
JP4401679B2 (ja) * 2003-05-12 2010-01-20 キヤノン株式会社 制御装置、制御プログラム、制御方法
US7418486B2 (en) * 2003-06-06 2008-08-26 Microsoft Corporation Automatic discovery and configuration of external network devices
EP1487186B8 (de) * 2003-06-11 2017-05-17 Unify GmbH & Co. KG Verfahren und Kommunikationsanordnung zum wechselweisen Betrieb eines Endgerätes an zumindest zwei Kommunikationsknoten
US20050060390A1 (en) * 2003-09-15 2005-03-17 Faramak Vakil Method and system for plug and play installation of network entities in a mobile wireless internet
JP2005217976A (ja) * 2004-01-30 2005-08-11 Canon Inc 電子機器及びその制御方法
JP4049123B2 (ja) * 2004-04-09 2008-02-20 ソニー株式会社 電子機器及び制御方法
JP2006127218A (ja) * 2004-10-29 2006-05-18 Oki Data Corp ドライバソフトウェアインストール方法、それを用いた情報処理装置、そのコンピュータプログラムおよび記憶媒体
CN100461693C (zh) * 2005-01-14 2009-02-11 日立通讯技术株式会社 网络系统
JP2006222929A (ja) * 2005-01-14 2006-08-24 Hitachi Communication Technologies Ltd ネットワークシステム
US8117340B2 (en) * 2005-04-25 2012-02-14 Microsoft Corporation Trans-network roaming and resolution with web services for devices
JP2007097057A (ja) * 2005-09-30 2007-04-12 Brother Ind Ltd サーバ装置、機器情報提供方法、プログラム、ネットワークシステム、及び、機器共用化方法

Also Published As

Publication number Publication date
US20100257271A1 (en) 2010-10-07
JP2009153050A (ja) 2009-07-09
WO2009081688A1 (en) 2009-07-02
EP2225855A1 (en) 2010-09-08
CN101904138A (zh) 2010-12-01
KR101103190B1 (ko) 2012-01-04
RU2448422C2 (ru) 2012-04-20
EP2225855A4 (en) 2016-09-07
RU2010130476A (ru) 2012-01-27
CN101904138B (zh) 2015-06-10
KR20100093123A (ko) 2010-08-24

Similar Documents

Publication Publication Date Title
JP5264161B2 (ja) 情報処理装置、デバイス、情報処理装置の制御方法、及びコンピュータプログラム
JP5459983B2 (ja) 情報処理装置、情報処理装置の制御方法及びコンピュータプログラム
JP5178539B2 (ja) 情報処理装置、情報処理装置の制御方法、セッション管理システム並びにプログラム
JP5743589B2 (ja) Webサービスシステム、サーバ管理装置およびWebサービス提供方法
JP3919721B2 (ja) 情報処理方法及び情報処理装置
US20090059272A1 (en) Printer auto installation
JP4542165B2 (ja) 情報処理装置、画像形成装置及びその制御方法
KR100893344B1 (ko) 네트워크 시스템, 화상 처리 장치, 방법, 및 컴퓨터 판독 가능한 매체
JP4974848B2 (ja) ネットワーク管理装置、ネットワーク管理方法、ならびにネットワーク管理方法を実行するプログラム
JP5425320B2 (ja) 情報処理装置、情報処理装置の制御方法及びプログラム
CN102271050A (zh) 一种IPv6网络中网络设备自动配置的方法、网络设备和系统
JP2008140048A (ja) 管理装置及び方法
JP5153475B2 (ja) 情報処理装置、画像処理装置、制御方法、及びプログラム
US8718058B2 (en) Device search apparatus and method, and device search server, device search system, and storage medium
US8832312B2 (en) Communication apparatus and communication control method
JP2001326656A (ja) ネットワークシステム及びネットワーク機器
JP3609948B2 (ja) マルチプロトコルネットワーク管理方法、マルチプロトコルネットワーク管理プロキシサーバシステム、マルチプロトコルアドレス管理サーバシステム、および、マルチプロトコルネットワーク管理システム
JP5473248B2 (ja) 情報処理装置、情報処理装置の制御方法及びコンピュータプログラム
US8458118B1 (en) Dynamic configuration for networked imaging devices
JP2008259162A (ja) ネットワーク接続された画像処理装置、画像処理装置のネットワーク接続方法、およびプログラム
JP2011114805A (ja) 通信装置及び方法、並びにプログラム
JP2004151849A (ja) クライアントサーバシステムにおけるクライアントとサーバ間の接続管理装置および接続管理方法、プログラム
JP2007122636A (ja) ネットワークデバイス管理システム及びその処理方法、並びに処理プログラム

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100201

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20100630

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120807

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121005

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121030

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121227

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130430

LAPS Cancellation because of no payment of annual fees