JP2000183877A - ネットワークデバイス制御装置及び方法 - Google Patents

ネットワークデバイス制御装置及び方法

Info

Publication number
JP2000183877A
JP2000183877A JP10356569A JP35656998A JP2000183877A JP 2000183877 A JP2000183877 A JP 2000183877A JP 10356569 A JP10356569 A JP 10356569A JP 35656998 A JP35656998 A JP 35656998A JP 2000183877 A JP2000183877 A JP 2000183877A
Authority
JP
Japan
Prior art keywords
registration
network
packet
detected
module
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.)
Withdrawn
Application number
JP10356569A
Other languages
English (en)
Inventor
Akira Sugiyama
明 杉山
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
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP10356569A priority Critical patent/JP2000183877A/ja
Publication of JP2000183877A publication Critical patent/JP2000183877A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

(57)【要約】 【課題】 探索シーケンスにおいて、真に必要なパケッ
トのみを送受信させることにより、ネットワークトラフ
ィックを低減させたネットワークデバイス制御装置及び
方法を提供する。 【解決手段】 探索モジュール1040がブロードキャ
ストパケット1101により、ネットワークに接続され
ているデバイスを検出し、検出されたデバイスに関する
追加情報を取得するために、それらのデバイスに対して
個別に通信を行う際に、検出されたネットワークデバイ
スに関する情報が登録されていなければ、必要とする全
てのオブジェクトの取得を試み、また登録されていれば
その内容に応じてデバイスがサポートしているオブジェ
クトのみの取得を試みるように1つのパケット1119
又は1121を送信する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ネットワークデバ
イス制御装置及び方法に関する。
【0002】
【従来の技術】近年、コンピュータを相互に接続したロ
ーカルエリアネットワーク(LAN)が普及しており、
このようなローカルエリアネットワークは、ビルのフロ
ア又はビル全体、ビル群(構内)、地域或いは更に広い
地域に渡って構築されている。更に、LANは相互に接
続され、世界的規模のネットワークにも接続可能であ
る。このような相互接続されたそれぞれのLANは、多
様なハードウェア相互接続技術といくつものネットワー
クプロトコルを持つことがある。
【0003】これに対し、他と切り離された簡単なLA
Nは個々のユーザが管理することができる。即ち、ユー
ザが機器を取り替えたり、ソフトウェアをインストール
したり、問題点を診断したりすることができる。
【0004】しかし、規模の大きい複雑なLANや相互
接続された大きなLANグループは「管理」を必要とす
る。ここで「管理」とは、一般に人間のネットワーク管
理者とその管理者が使用するソフトウェアの両方による
管理を意味するが、本願ではシステム全体を管理するた
めのソフトウェアによる管理を意味し、「ユーザ」はネ
ットワーク管理ソフトウェアを使用する人を意味するも
のとする。
【0005】尚、ユーザは、通常、システム管理責任者
であり、ネットワーク管理ソフトウェアを使うことによ
り、ネットワーク上で管理データを取得して、このデー
タを変更することができる。
【0006】また、大規模ネットワークシステムは、通
常、機器の増設と除去、ソフトウェアの更新、及び問題
の検出などを絶えず行うことが必要な動的システムであ
る。一般に、様々な人が所有する、様々な業者から供給
される様々なシステムが存在する。
【0007】このような大規模ネットワークシステムを
構成するネットワーク上のデバイスを管理するための方
法として、これまでにいくつかの試みが数多くの標準機
関でなされている。例えば、国際標準化機構(ISO)
からは開放型システム間相互接続(OSI:Open Syste
m Interconnect)モデルと呼ばれる汎用基準フレームワ
ークが提供されている。ネットワーク管理プロトコルの
OSIモデルは、共通管理情報プロトコル(CMIP:
Common Management Information Protocol)と呼ばれ
る。CMIPはヨーロッパの共通ネットワーク管理プロ
トコルである。
【0008】また近年では、より共通性の高いネットワ
ーク管理プロトコルとして、簡易ネットワーク管理プロ
トコル(SNMP:Simple Network Management Protoc
ol)と呼ばれるCMIPに関連する一変種のプロトコル
がある(「TCP/IPネットワーク管理入門 実用的
な管理をめざして」M.T.ローズ著/西田竹志訳
(株)トッパン発行 1992年8月20日初版を参照)。
【0009】このSNMPネットワーク管理技術によれ
ば、ネットワーク管理システムには、少なくとも1つの
ネットワーク管理ステーション(NMS)、各々がエー
ジェントを含むいくつかの管理対象ノード、及び管理ス
テーションやエージェントが管理情報を交換するために
使用するネットワーク管理プロトコルが含まれる。
【0010】ユーザは、NMS上でネットワーク管理ソ
フトウェアを用いて管理対象ノード上のエージェントソ
フトウェアと通信することにより、ネットワーク上のデ
ータを獲得し、またデータを変更することができる。
【0011】ここでエージェントとは、各々のターゲッ
ト装置についてのバックグラウンドプロセスとして動作
するソフトウェアである。ユーザがネットワーク上の装
置に対して管理データを要求すると、管理ソフトウェア
はオブジェクト識別情報を管理パケット又はフレームに
入れてターゲットエージェントへ送り出す。エージェン
トは、そのオブジェクト識別情報を解釈し、そのオブジ
ェクト識別情報に対応するデータを取り出し、そのデー
タをパケットに入れてユーザに送り返す。時には、デー
タを取り出すために対応するプロセスが呼び出される場
合もある。
【0012】またエージェントは、自分の状態に関する
データをデータベースの形式で保持している。このデー
タベースのことをMIB(Management Information Bas
e)と呼ぶ。図4は、MIBの構造を示す概念図である。
図4に示すように、MIBは木構造のデータ構造をして
おり、全てのノードが一意に番号付けられている。図4
において、括弧内に書かれている番号が、そのノードの
識別子である。例えば、図4に示すノード401の識別
子は「1」である。ノード402の識別子は、ノード4
01の下の“3”なので、「1.3」と表記される。以
下同様にして、ノード403の識別子は、「1.3.
6.1.2」と表記される。このノードの識別子のこと
を、オブジェクト識別子(Object Identifier)と呼ぶ。
【0013】このMIBの構造は、管理情報構造(SM
I:Structure of Management Inforrnation)と呼ば
れ、RFC1155 Structure and Identification of Manage
ment Information for TCP/IP-based Internetsで規定
されている。
【0014】図4に示すものは、標準として規定されて
いるMIBのうち、一部のもののみを抜き出したもので
ある。
【0015】次に、簡易ネットワーク管理プロトコル
(SNMP)について簡単に説明する。ネットワーク管
理ユーティリティソフトウェアが動作するPC(以下、
マネージャと呼称する)と、SNMPエージェントが動
作する管理対象ネットワークデバイス(以下、エージェ
ントと呼称する)とは、SNMPを用いて通信を行う。
SNMPには5種類のコマンドがあり、それぞれGet-re
quest、Get-next-request、Get-response、Set-reques
t、Trapと呼ばれる。図8は、これらのコマンドがマネ
ージャとエージェントの間で授受される様子を示す図で
ある。
【0016】図8において、Get-request及びGet-next-
requestコマンドは、マネージャがエージェントのMI
Bオブジェクトの値を取得するために、マネージャから
エージェントへ送出されるコマンドである。Get-respon
seコマンドは、Get-request及びGet-next-requestコマ
ンドを受け取ったエージェントがMIBの値をマネージ
ャに通知するために、マネージャに対して送出されるコ
マンドである(801及び802)。
【0017】また、Set-requestコマンドは、マネージ
ャがエージェントのMIBオブジェクトの値を設定する
ために、マネージャからエージェントへ送出されるコマ
ンドである。Get-responseコマンドは、Set-requestコ
マンドを受け取ったエージェントが設定結果をマネージ
ャに通知するために、マネージャに対して送出されるコ
マンドである(803)。
【0018】更に、Trapコマンドは、エージェントが自
分自身の状態の変化をマネージャに通知するために、マ
ネージャに対して送出されるコマンドである(80
4)。
【0019】図7は、SNMPメッセージのフォーマッ
トを示す図である。この例は、Trapコマンドを除くGet-
request、Get-next-request、Get-response及びSet-req
uestのフォーマットを示す図である。
【0020】図示するように、SNMPメッセージは、
バージョン701、コミュニティ名702及びPDUと
呼ばれる領域703で構成されている。更に、PDU7
03の詳細な構成はPDUタイプ711、リクエストI
D712、エラーステータス713、エラーインデック
ス714及びMIB情報715である。PDUタイプ7
11には、コマンドを識別する値が格納される。即ち、
このフィールドの値が“0”であるならばGet-request
コマンドと識別され、以下同様に“1”であるならばGe
t-next-requestコマンド、“2”であるならばGet-resp
onseコマンド、“3”であるならばSet-requestと識別
される。また、エラーステータス713には、エラー情
報を示す値が格納される。エラーが無い場合は、このフ
ィールドの値は“0”である。また、MIB情報715
には、オブジェクトIDとその値が組みになって格納さ
れる。
【0021】次に、管理が必要な大規模なネットワーク
の構成について説明する。図1は、プリンタをネットワ
ークに接続するためのネットワークボード(NB)10
1を、開放型アーキテクチャを持つプリンタ102へ接
続した場合を示す図である。NB101はローカルエリ
アネットワーク(LAN)100へ、例えば同軸コネク
タを持つEthernetインターフェース10Base-2やRJ-45
を持つ10Base-T等のLANインターフェースを介して
接続されている。
【0022】PC103やPC104等の複数のパーソ
ナルコンピュータ(PC)もまた、LAN100に接続
されており、ネットワークオペレーティングシステムの
制御の下、これらのPCはNB101と通信することが
できる。PCの1つ、例えばPC103をネットワーク
管理部として使用するように指定することができる。P
C103に、PC104に接続されているプリンタ10
5のようなプリンタを接続してもよい。
【0023】また、LAN100にファイルサーバー1
06が接続されており、これは大容量(例えば10Gバ
イト)のネットワークディスク107に記憶されたファ
イルへのアクセスを管理する。プリントサーバー108
は接続されたプリンタ109a及び109b、又は遠隔
地にあるプリンタ105などのプリンタに印刷を行わせ
る。また他の図示しない周辺機器をLAN100に接続
してもよい。
【0024】更に詳しくは、図1に示すネットワーク
は、様々なネットワークメンバー間で効率良く通信を行
うために、例えばNovell社やUNIXのネットワークソフト
ウェアを使用することができる。どのネットワークソフ
トウェアを使用することも可能であるが、例えばNovell
社のネットワークソフトウェアであるNetWare(Novell
社の商標)を使用することができる。このソフトウェア
パッケージに関する詳細な説明は、NetWareパッケージ
に同梱されているオンラインドキュメンテーションを参
照のこと。これは、Novell社からNetWareパッケージと
ともに購入可能である。
【0025】ここで、図1の構成について簡潔に説明す
ると、ファイルサーバー106は、LANメンバー間で
データファイルの受信や記憶、キューイング、キャッシ
ング、及び送信を行う、ファイル管理部としての役割を
果たす。例えば、PC103及びPC104それぞれに
よって作られたデータファイルは、ファイルサーバー1
06へ送られ、ファイルサーバー106はこれらのデー
タファイルを順に並べ、プリントサーバー108からの
コマンドに従って、並べられたデータファイルをプリン
タ109aへ送信する。
【0026】また、PC103とPC104はそれぞ
れ、データファイルの生成や生成したデータファイルの
LAN100への送信、或いはLAN100からのファ
イルの受信や、更にそのようなファイルの表示及び/又
は処理を行える、通常のPCで構成されている。図1に
パーソナルコンピュータ機器が示されているが、ネット
ワークソフトウェアを実行するのに適切であるような、
他のコンピュータ機器を含んでも良い。例えば、UNIXの
ソフトウェアを使用している場合に、UNIXワークステー
ションをネットワークに含んでも良く、これらのワーク
ステーションは、適切な状況下で、図示されているPC
と共に使用することができる。
【0027】通常、LAN100などのネットワーク
は、1つの建物内の1つの階又は連続した複数の階での
ユーザーグループ等のローカルなユーザーグループにサ
ービスを提供している。例えば、ユーザーが他の建物や
他県に居るなど、あるユーザーが他のユーザーから離れ
るに従って、ワイドエリアネットワーク(WAN)を構
成しても良い。WANは、基本的には、いくつかのLA
Nを高速度サービス総合デジタルネットワーク(ISD
N)回線等の高速度デジタル回線で接続して形成された
集合体である。従って、図1に示すように、LAN10
0、LAN110、及びLAN120と変調/復調(M
ODEM)/トランスポンダー130又はバックボーン
140を介して接続され、WANを形成している。これ
らの接続は、数本のバスによる単純な電気的接続であ
る。それぞれのLANは専用のPCを含み、また、必ず
しも必要なわけではないが、通常はファイルサーバー及
びプリントサーバーを含む。
【0028】従って、図1に示すように、LAN110
は、PC111、PC112、ファイルサーバー11
3、ネットワークディスク114、プリントサーバー1
15、プリンタ116、及びプリンタ117を含む。対
照的に、LAN120は、PC121及びPC122を
含む。尚、LAN100、LAN110、LAN120
に接続されている機器は、WAN接続を介して他のLA
Nに接続されている機器の機能にアクセスすることがで
きる。
【0029】次に、エージェントの実装例として、プリ
ンタをネットワークに接続するためのネットワークボー
ド(NB)上にエージェントを実装することが考えられ
る。これにより、プリンタをネットワーク管理ソフトウ
ェアによる管理の対象とすることができる。ユーザー
は、ネットワーク管理ソフトウェアを用いて制御対象の
プリンタの情報を取得し、また状態を変更することがで
きる。より具体的には、例えばプリンタの液晶ディスプ
レイに表示されている文字列を取得したり、デフォルト
の給紙カセットを変更したりすることができる。
【0030】以下、エージェントを実装したネットワー
クボード(NB)をプリンタに接続する実施形態につい
て説明する。
【0031】図2は、NB101をプリンタ102にイ
ンストールした状態を示す断面図である。図示するよう
に、NB101はプリンタ102の内部拡張I/Oスロ
ットに内蔵されており、後述する処理及びデータ記憶機
能を持つ「埋め込まれた」ネットワークノードとして作
用する。このNB101の構成により、ワイドエリアネ
ットワーク(WAN)を統括及び管理するための、特徴
的な補助機能を有するという利点をもたらす。これらの
補助機能は、例えばネットワーク上の遠隔地(ネットワ
ーク統括者の事務所など)からのプリンタ制御及び状態
観察や、各印刷ジョブ後の次のユーザーのための保証初
期環境を提供するためのプリンタ構成の自動管理、及び
プリンタの負荷量を特徴付け、或いはトナーカートリッ
ジの交換スケジュールを組むためにネットワークを通し
てアクセスできる、プリンタログ又は使用統計を含む。
【0032】このNB設計において重要な要因は、共有
メモリ等の両方向インターフェースを介してNB101
からプリンタ制御状態にアクセスする機能である。尚、
共有メモリ以外にSCSIインターフェース等のインタ
ーフェースを使用することもできる。これにより、多数
の便利な補助機能のプログラムを利用でき、プリンタ操
作情報をNB101又は外部ネットワークノードへ送出
することが可能となる。印刷画像データ及び制御情報の
ブロックは、NB101上にあるマイクロプロセッサー
によって構成され、共有メモリに格納され、そして、プ
リンタ102によって読み込まれる。また同様に、プリ
ンタ状態情報はプリンタ102から共有メモリへ送ら
れ、そこからNBプロセッサーによって読み込まれる。
【0033】図2に示すように、NB101はネットワ
ーク接続のためのフェースプレート101bを設置した
印刷回路ボード101aで構成されており、コネクタ1
70を介してプリンタインターフェースカード150に
接続されている。プリンタインターフェースカード15
0は、プリンタ102のプリンタエンジンを直接制御す
る。印刷データ及びプリンタ状態コマンドは、NB10
1からコネクタ170を介してプリンタインターフェー
スカード150へ入力され、プリンタ状態情報はプリン
タインターフェースカード150からコネクタ170を
介して得られる。NB101は、この情報をフェースプ
レート101bのネットワークコネクタを介してLAN
100上で通信する。同時に、プリンタ102は従来の
シリアルポート102a及びパラレルポート102bか
ら印刷データを受信することもできる。
【0034】図3は、NB101、プリンタ102、及
びLAN100の電気的接続を示すブロック図である。
NB101は、LAN100へはLANインターフェー
スを介して接続され、プリンタ102へはプリンタイン
ターフェースカード150を介して接続されている。N
B101上にはNB101を制御するためのマイクロプ
ロセッサー301、マイクロプロセッサー301の動作
プログラムを格納するためのROM303、マイクロプ
ロセッサー301がプログラムを実行する上でワークと
して用いるためのRAM302、NB101とプリンタ
インタフェースカード150とが相互にデータをやりと
りするための共有メモリ200を備え、内部バスにより
相互に接続されている。NB101がSNMPのエージ
ェントとして動作するためのプログラムはROM303
に格納されている。尚、マイクロプロセッサー301
は、ROM303に格納されたプログラムに従って各種
制御を実行し、その制御を実行する際にワークエリアと
してRAM302を用いる。また、プリンタインターフ
ェースカード150と相互に通信するためのバッファ領
域として共有メモリ200を用いる。
【0035】プリンタインタフェースカード150上の
マイクロプロセッサー151はNB101とのデータの
アクセスを、NB101に設置されている共有メモリ2
00を介して行う。プリンタインタフェースカード15
0上のマイクロプロセッサー151は、実際に印刷機構
を動かすプリンタエンジン160とも通信する。
【0036】一方、ネットワーク管理ソフトウェアが稼
動するPC側について、以下に説明する。
【0037】図5は、ネットワーク管理ソフトウェアが
稼動可能なPCの構成を示すブロック図である。同図に
おいて、500はネットワーク管理ソフトウェアが稼動
するPCであり、図1に示すPC103と同等である。
PC500は、ROM502若しくはハードディスク
(HD)511に記憶された、或いはフロッピーディス
クドライブ(FD)512より供給されるネットワーク
管理プログラムを実行するCPU501を備え、システ
ムバス504に接続された各デバイスを総括的に制御す
る。
【0038】503はRAMであり、CPU501の主
メモリ、ワークエリア等として機能する。505はキー
ボードコントローラ(KBC)であり、キーボード(K
B)509や不図示のポインティングデバイス等からの
指示入力を制御する。506はCRTコントローラ(C
RTC)であり、ディスプレイ(CRT)510への表
示を制御する。507はディスクコントローラ(DK
C)であり、ブートプログラム、種々のアプリケーショ
ン、編集ファイル、ユーザファイルそしてネットワーク
管理プログラム等を記憶するハードディスク(HD)5
11やフロッピーディスクコントローラ(FD)512
とのアクセスを制御する。508はネットワークインタ
フェースカード(NIC)であり、LAN100を介し
てエージェント或いはネットワーク機器と双方向にデー
タを授受する。
【0039】次に、従来例におけるネットワーク管理ソ
フトウェアの構成について説明する。従来例におけるネ
ットワーク管理装置は、図5に示すようなネットワーク
管理装置を実現可能なPCと同様の構成のPC上で実現
される。尚、ハードディスク(HD)511には、後述
するすべての説明で動作主体となるネットワーク管理ソ
フトウェアのプログラムが格納されている。後述するす
べての説明において、特に断りのない限り、実行の主体
はハード上はCPU501である。
【0040】一方、ソフトウェア上の制御の主体は、ハ
ードディスク(HD)511に格納されたネットワーク
管理ソフトウェアである。従来例においては、OSは例
えば、ウィンドウズ95(マイクロソフト社製)を想定
しているが、これに限るものではない。また、ネットワ
ーク管理プログラムは、フロッピーディスクやCD−R
OMなどの記憶媒体に格納された形で供給されても良
く、その場合には図5に示すフロッピーディスクコント
ローラ(FD)512又は不図示のCD−ROMドライ
ブなどによって記憶媒体からプログラムが読み取られ、
ハードディスク(HD)511にインストールされる。
【0041】図6は、従来例におけるネットワーク管理
ソフトウェアのモジュール構成を示す図である。このネ
ットワーク管理ソフトウェアは、図5に示すハードディ
スク511に格納されており、CPU501によって実
行される。その際に、CPU501はワークエリアとし
てRAM503を使用する。
【0042】図6において、601はデバイスリストモ
ジュールと呼ばれ、ネットワークに接続されたデバイス
を一覧にして表示するモジュールである。一覧表示の様
子については、図15を参照して後述する。602は全
体制御モジュールと呼ばれ、デバイスリストからの指示
に基づき、他のモジュールを統括する。603はコンフ
ィグレータと呼ばれ、エージェントのネットワーク設定
に関する特別な処理を行うモジュールである。604は
探索モジュールと呼ばれ、ネットワークに接続されてい
るデバイスを探索するモジュールである。この探索モジ
ュール604によって探索されたデバイスがデバイスリ
ストモジュール601によって一覧表示される。605
はNetWareジョブモジュールであり、プリントジョブの
状況をNetWare API616を用いてネットワークサーバ
から取得する。尚、NetWare APIについては、例えばNov
ell社から発行されている“NetWare Programmer*s Guid
e for C”等を参照のこと。この書籍はノベル株式会社
から購入可能である。
【0043】606,607は共に後述するデバイス詳
細ウィンドウを表示するためのUI(User Interface)モ
ジュールであり、詳細情報を表示する対象機種毎にUI
モジュールが存在する。608,609は共に制御モジ
ュールと呼ばれ、詳細情報を取得する対象機種に特有の
制御を受け持つモジュールである。UIモジュールと同
様に、各制御モジュールも詳細情報を表示する対象機種
毎に存在する。制御Aモジュール608及び制御Bモジ
ュール609は、後述するMIBモジュールを用いて管
理対象デバイスからMIBデータを取得し、必要に応じ
てデータの変換を行い、各々対応するUIAモジュール
606或いはUIBモジュール607にデータを渡す。
【0044】610はMIBモジュールと呼ばれ、オブ
ジェクト識別子とオブジェクトキーとの変換を行うモジ
ュールである。ここでオブジェクトキーとは、オブジェ
クト識別子と一対一に対応する32ビットの整数のこと
である。オブジェクト識別子は可変長の識別子であり、
ネットワーク管理ソフトウェアを実装する上で扱いが面
倒なので、このネットワーク管理ソフトウェアではオブ
ジェクト識別子と一対一に対応する固定長の識別子を内
部的に用いている。MIBモジュール610より上位の
モジュールはこのオブジェクトキーを用いてMIBの情
報を扱う。これにより、ネットワーク管理ソフトウェア
の実装が容易に行える。
【0045】611はSNMPモジュールと呼ばれ、S
NMPパケットの送信と受信を行う。612は共通トラ
ンスポートモジュールと呼ばれ、SNMPデータを運搬
するための下位プロトコルの差を吸収するモジュールで
ある。実際には、動作時にユーザーが選択したプロトコ
ルによって、IPXハンドラ613かUDPハンドラ6
14の何れかがデータを転送する役割を担う。尚、IP
Xハンドラ613は、実装としてNetWare616を用
い、UDPハンドラ614は、実装としてWinSock61
7を用いている。このWinSockについては、例えばWindo
ws Socket API v1.1の仕様書を参照のこと。このドキュ
メントは複数の箇所から入手可能であるが、例えばマイ
クロソフト社製のコンパイラであるVisual C++に同梱さ
れている。
【0046】コンフィグレータ603が用いる現在のプ
ロトコル615というのは、動作時にユーザが選択して
いるIPXプロトコルかUDPプロトコルの何れかのこ
とを示す。
【0047】次に、従来例で使用する探索モジュール6
04とMIBモジュール610との間のインタフェース
について説明する。MIBモジュール610は図9に示
すC言語のAPI(Appllcation Program Interface)を
上位モジュールに提供する。最初に、上位モジュールは
MIBモジュールとの間で、指定したアドレスに対する
インタフェース(これをポートと呼ぶ)を開設するため
に、MIB Open API901の呼び出しを行う。MIBモジ
ュールは、開設されたインタフェースを識別するための
識別子(これをポート識別子と呼ぶ)を上位モジュール
に返す(MIBOpen API901の第1引数portに返される
値)。以降、上位モジュールはポート識別子を用いてM
IBモジュールとのやりとりを行う。
【0048】ここで指定するアドレスは、動作している
プロトコルのアドレスであり、IPプロトコルの場合は
IPアドレス、NetWareプロトコルの場合はNetWareアド
レスである。また、ブロードキャストアドレスを指定す
ることもできる。このブロードキャストアドレスを指定
してポートをオープンした場合は、ブロードキャストア
ドレスに応答する複数のデバイスと通信を行うことが可
能である。上位モジュールがポートを使用しなくなった
とき、MIB Close API904の呼び出しを行いポートを
閉じる。
【0049】次に、上位モジュールがMIBオブジェク
トの読み出しを行う場合は、MIB Read Objects API90
2の呼び出しを行う。MIB Read Objects API902の呼
び出しには、ポート識別子、読み出すべきMIBオブジ
ェクトのオブジェクトキーを指定すると共に、MIBモ
ジュールが読み出したMIBオブジェクトの値を上位モ
ジュールへ通知するためのコールバック関数のアドレス
を指定する。
【0050】MIB Read Objects API902の呼び出しに
よりSNMPのGet-requestコマンドが生成され、ネッ
トワーク上に送信される。図8に示したように、このGe
t-requestコマンドに応答するエージェントを持っデバ
イスはGet-responseコマンドを送信する。
【0051】また、上位モジュールがMIBオブジェク
トへの書き込みを行う場合は、MIBWrite Objects API9
03の呼び出しを行う。MIB Write Objects API903
呼び出しにはポート識別子、書き込むMIBオブジェク
トのオブジェクトキーとその値を指定すると共に、MI
Bモジュールが書き込みの結果を上位モジュールへ通知
するためのコールバック関数のアドレスを指定する。
【0052】MIB Write Objects API903の呼び出し
によりSNMPのGet-requestコマンドが生成され、ネ
ットワーク上に送信される。図8に示したように、この
Get-requestコマンドに応答するエージェントを持っデ
バイスはGet-responseコマンドを送信する。
【0053】コールバック関数はMIB Read Objects API
902若しくはMIB Write ObjectsAPI903の結果を上
位モジュールに通知するためのものである。具体的に
は、デバイスのアドレスと受信したGet-responseコマン
ドの内容を上位へ通知する。次に、ブロードキャストア
ドレスの指定によりオープンされたボートに対してMIB
Read Objects API902の呼び出しを行った場合は、ネ
ットワーク上に送信されるGet-requestコマンドを運ぶ
パケット(IPプロトコルの場合はIPパケット、NetW
areプロトコルの場合はIPXパケット)の宛先アドレ
スがブロードキャストアドレスになる。従って、このパ
ケットは複数のデバイスで受信されるので、Get-reques
tコマンドには複数のデバイスが応答する。つまり、マ
ネージャ側では複数のGet-responseコマンドを受信す
る。この場合、コールバック関数は、ポート識別子は同
じでデバイスのアドレスが異なる複数回の呼び出しが行
われる。上位モジュールはアドレス情報を調べることに
より、そのコールバックがどのデバイスからのものかを
知ることができる。
【0054】ここで、具体的なデータの流れを説明す
る。MIBモジュール610では上位モジュールからの
要求によりオブジェクトキーからオブジェクトIDへの
変換等の処理を行い、SNMPモジュール611へコマ
ンド送信要求を行う。SNMPモジュール611はMI
Bモジュール610からの送信要求によりSNMP P
DUをRAM503上で組み立て、共通トランスポート
モジュール612へ送信要求を行う。共通トランスポー
トモジュール612では、動作プロトコルによりヘッダ
の付加等の所定の処理を行い、TCP/IPプロトコル
であればWinSockモジュール617へ、NetWareプロトコ
ルであればNetWare APIモジュール616へパケット送
信要求を行う。以下、TCP/IPプロトコルで動作し
ているものとして説明を行う。
【0055】WinSockモジュール617は送信要求のあ
ったパケットをIPパケット化し、OSに対してネット
ワークへのデータ送信要求を行う。OSはRAM503
上のデータをシステムバス504を介してNIC508
へ書き込む。NIC508では、書き込まれたデータを
所定のフレームにフレーム化してLAN100に送信す
る。
【0056】LAN100に接続されているデバイスか
らのパケットはNIC508で受信される。NIC50
8ではパケット受信を割り込みによりOSに通知する。
OSはNIC508から受信パケットをシステムバス5
04経由で読み出してRAM503に置く。OSは動作
プロトコル若しくは受信したパケットからプロトコルを
判断し、TCP/IPプロトコルであればWinSockモジ
ュール617へ、NetWareプロトコルであればNetWare A
PIモジュール616へパケット受信を通知する。以下T
CP/IPプロトコルで動作しているものとして説明を
行う。
【0057】WinSockモジュール617では、受信パケ
ットが自分宛のものかどうかを受信パケットの中のアド
レスにより判断する。受信パケットが自分宛のものでは
無いときは受信パケットを破棄する。また、受信パケッ
トが自分宛であった場合は、UPDハンドラ614起動
し、共通トランスポートモジュール612にパケット受
信を通知する。共通トランスポートモジュール612で
は、トランスポートヘッダの除去等の所定の処理を行
い、SNMPモジュール611へパケット受信を通知す
る。SNMPモジュール611では、SNMPヘッダの
除去等の所定の処理を行い、MIBモジュールへPDU
受信を通知する。MIBモジュール610では所定処理
を行うと共に、受信した情報をMIB APIで規定さ
れた形式に変換し上位モジュールのコールバック関数を
呼び出すことにより、デバイスからの応答を上位モジュ
ールへ通知する。
【0058】尚、以下の説明において、本実施形態にお
けるネットワーク管理ソフトウェアのことを「NetS
pot」と呼称する。
【0059】NetSpotのインストールに必要なフ
ァイルは、通常、フロッピーディスク(FD)やCD−
ROMなどの物理媒体に記録されて配布されるか、或い
はネットワークを経由して伝送される。ユーザは、これ
らの手段によりNetSpotのインストールに必要な
ファイルを入手した後、所定のインストール手順に従っ
てNetSpotのインストールを開始する。
【0060】NetSpotのインストール手順は、他
の一般的なソフトウェアのインストール手順と同様であ
る。即ち、ユーザがNetSpotのインストーラをパ
ーソナルコンピュータ(PC)上で起動すると、その後
はインストーラが自動的にインストールを実行する。イ
ンストーラは、NetSpotの動作に必要なファイル
をPCのハードディスクにコピーし、また必要に応じて
ユーザから情報を入力してもらいながら、NetSpo
tの動作に必要なファイルの修正又は新規作成なども行
う。
【0061】次に、従来例におけるネットワーク管理プ
ログラムの探索シーケンスについて説明する。
【0062】図10は、従来のネットワーク管理プログ
ラムにおける探索シーケンスを示す図である。図示する
ように、探索モジュール1040はネットワーク管理プ
ログラムの探索モジュールを示し、これは図6に示す探
索モジュール604と同等である。この探索モジュール
1040は、ネットワーク管理プログラムの他のモジュ
ールと同様に、図1に示すPC103上で図5に示すC
PU501によって実行される。
【0063】デバイス1041は、ネットワーク上に接
続されており、かつ、SNMPエージェントが動作して
いるデバイスを示す。例えば、図1に示すNB101で
ある。また同様に、デバイス1042はNB118であ
る。
【0064】まず、上位モジュールから探索開始の指示
が出されると、探索モジュール1040はブロードキャ
ストアドレスを指定してデバイス種別を取得するための
オブジェクトを含むSNMP要求パケットをネットワー
クに送出する(1001)。このパケットは、ネットワ
ークに接続されている全てのデバイスに届けられる。こ
のSNMP要求パケットに対して、SNMPエージェン
トを実装しているネットワークデバイスは、それぞれS
NMP応答パケットを送出する(1002及び100
3)。
【0065】次に、ネットワークデバイスからの応答を
受信した探索モジュール1040は、更に詳細な情報を
取得するために、それぞれのデバイスに対してSNMP
要求パケットを送信する。より具体的には、図10にお
いて、SNMP応答パケット1002の受信に対しては
SNMP要求パケット1004、1006、1008の
送信を行い、同様にSNMP応答パケット1003の受
信に対してはSNMP要求パケット1010、101
2、1014の送信を行う。
【0066】ここで、SNMP要求パケットを受信した
ネットワークデバイスは、SNMP応答パケットを送信
する。より具体的には、1004の受信に対しては10
05の送信を、1006の受信に対しては1007の送
信を、1008の受信に対しては1009の送信を、1
010の受信に対しては1011の送信を、1012の
受信に対しては1013の送信を、1014の受信に対
しては1015の送信を行う。尚、各SNMP要求パケ
ットに含まれるオブジェクトが自身がサポートしていな
いオブジェクトであれば、「no such name」を値とする
SNMP応答パケットが送信される。
【0067】その後、デバイス応答タイマー1051が
満了した時点で、上位モジュールに対してそれまでに探
索したデバイスの情報を通知する。また、探索間隔タイ
マー1052が満了した時点で、再度探索を開始する。
以降、今まで説明した動作と全く同一のシーケンスであ
り、その説明を省略する。
【0068】
【発明が解決しようとする課題】しかしながら、上記従
来例では、無駄な通信が行われており、ネットワークの
トラフィックを過剰に消費するという問題点がある。よ
り具体的には、ブロードキャストのSNMP要求パケッ
トに応答があったデバイスに対してより詳細情報を取得
するためのデバイス個別のSNMP要求パケットでいつ
も同じ問い合わせを行っている。つまり、図10に示す
1004と1010と1019と1025、1006と
1012と1021と1027、1008と1014と
1023と1029は同じ問い合わせである。
【0069】そのために、デバイスが問い合わせる全て
のオブジェクトをサポートしている保証は無く、デバイ
スが問い合わせのあったオブジェクトをサポートしてい
なければ、いっも「no such name」のSNMP応答パケ
ットを返すことになる。
【0070】本発明は、上記課題を解決するためになさ
れたものであり、探索シーケンスにおいて、真に必要な
パケットのみを送受信させることにより、ネットワーク
トラフィックを低減させたネットワークデバイス制御装
置及び方法を提供することを目的とする。
【0071】
【課題を解決するための手段】上記目的を達成するため
に、本発明に係るネットワークデバイス制御装置は、ブ
ロードキャスト通信により、ネットワークに接続されて
いるデバイスを検出する一次検索手段と、前記一次検索
手段で検出したデバイスに関する追加情報を取得するた
めに前記一次検索手段で検出したデバイスに対して個別
に通信を行う二次検索手段と、検出したネットワークデ
バイスに関する情報を登録するための登録手段と、前記
一次検索手段で検出したデバイスが前記登録手段に登録
されているか判断する判断手段とを有し、前記二次検索
手段は、前記判断手段にて登録無しと判断された場合に
は必要とする全てのオブジェクトの取得を試み、前記判
断手段にて登録有りと判断された場合には前記登録手段
の内容に応じてデバイスがサポートしているオブジェク
トのみの取得を行うことを特徴とする。
【0072】また、上記目的を達成するために、本発明
に係るネットワークデバイス制御方法は、ブロードキャ
スト通信により、ネットワークに接続されているデバイ
スを検出する一次検索工程と、前記一次検索工程で検出
したデバイスに関する追加情報を取得するために前記一
次検索工程で検出したデバイスに対して個別に通信を行
う二次検索工程と、検出したネットワークデバイスに関
する情報を登録するための登録工程と、前記一次検索工
程で検出したデバイスが前記登録工程で登録されている
か判断する判断工程とを有し、前記二次検索工程は、前
記判断工程にて登録無しと判断された場合には必要とす
る全てのオブジェクトの取得を試み、前記判断工程にて
登録有りと判断された場合には前記登録された内容に応
じてデバイスがサポートしているオブジェクトのみの取
得を行うことを特徴とする。
【0073】
【発明の実施の形態】以下、図面を参照しながら本発明
に係る実施の形態を詳細に説明する。
【0074】図11は、実施形態におけるネットワーク
管理プログラムとネットワーク上のデバイスが通信する
様子を示すシーケンス図である。特に、図11に示す例
では、ネットワーク管理プログラムがネットワーク上に
存在するデバイスを探索する様子を示している。
【0075】図11において、1040、1041、1
042、1050、1051及び1052は図10に示
す同一番号のものと同じものである。また、探索モジュ
ール1040は実施形態におけるネットワーク管理プロ
グラムの探索モジュールを示し、これは図6に示す探索
モジュール604と同等である。この探索モジュール
は、実施形態におけるネットワーク管理プログラムの他
のモジュールと同様に、図1に示すPC103上で図5
に示すCPU501によって実行される。
【0076】また、図11に示す1101から1115
は探索モジュール1040とネットワークデバイス10
41及び1042との間で通信が行われていることを示
す。これらの通信内容については、後述するフローチャ
ートに従って詳述する。
【0077】図12は、本実施形態における検出デバイ
ステーブルの構成を示す図である。この検出デバイステ
ーブルは、探索モジュール604が動作の過程において
探索するデバイスの情報を記憶するために使用するテー
ブルである。このテーブルは図5に示すRAM503内
に保持されている。
【0078】図12において、1220は検出デバイス
テーブルであり、検出したデバイスの情報が登録され
る。ここでは、デバイスが1つ検出される毎に、検出デ
バイステーブル1220の行が1行追加される。以下、
検出デバイステーブル1220に登録する情報について
説明する。
【0079】1201はネットワークアドレスフィール
ドであり、検出したデバイスのネットワークアドレスを
登録する。1202はポートフィールドであり、MIB
モジュール610が提供するMibOpen関数によっ
て返されるポート値を登録する。1203はデバイスタ
イプフィールドであり、デバイスの種別を登録する。1
204はデバイス状態フィールドであり、デバイスが現
在どのような状態になっているかを登録する。1205
は装備情報フィールドであり、デバイスに装着されてい
るオプション機器を登録する。1206はデバイス名フ
ィールドであり、デバイスに設定れている名前を登録す
る。
【0080】図12に示す例では、現在2つのデバイス
が検出デバイステーブル1220に登録されている。1
つはネットワークアドレス「192.1.16.13
0」のデバイスであり、このデバイスと通信するための
MIBモジュール610におけるポート値は「0x12
FE」である。また、このデバイスはデバイスタイプが
「LBP」であり、デバイスは「Ready」(使用可
能)であり、オプション装置として2000枚デッキが
装着されおり、デバイスの名前としては「LBP93
0」が設定されている。
【0081】また同様に、ネットワークアドレス「19
2.1.16.150」のデバイスのポート値は「0x
2501」であり、デバイスタイプは「Copier」
(複写機)である。このデバイスではデバイスの状態の
オブジェクトはサポートされいない(つまり、SNMP
要求パケットにして「no such name」のSNMP応答パ
ケットが返ってきた)ため、デバイス状態には「NUL
L」が設定されている。更に、装備情報のオブジェクト
もサポートされていないため、装備情報には「NUL
L」が設定されている。デバイスの名前として「MED
IO」が設定されている。
【0082】図13は、PC103上で動作するネット
ワークデバイス管理プログラム全体の動作を示すフロー
チャートである。プログラムが起動されると、まずステ
ップS1301において、探索を開始するための処理を
行う。尚、この処理については図14を参照して更に後
述する。次に、ステップS1302において、生じたイ
ベントがSNMPパケットの受信であるか、デバイス応
答タイマーの満了であるか、探索間隔タイマーの満了で
あるか、或いはそれ以外のイベントであるか(全くイベ
ントが生じていない場合も含む)を判断する。
【0083】次に、発生したイベントに応じて、それぞ
れ対応するステップS1303からステップS1306
へ移行し、詳細は後述するサブルーチンを呼び出す。そ
の後、それぞれの処理が終了したら、ステップS130
2に戻り、上述の処理を繰り返す。
【0084】図14は、探索を開始する際の処理を示す
フローチャートである。この処理は、図13に示すステ
ップS1301の探索開始処理に相当する。
【0085】まず、ステップS1401において、検出
デバイステーブル1220の内容をすべて消去し、テー
ブルを初期化する。次に、ステップS1402に進み、
図6に示すMIBモジュール610が提供するMibO
pen関数を呼び出し、一次探索用のポートをブロード
キャストアドレスでオープンし、そのポート値を図1に
示すRAM503に記憶する。
【0086】次に、ステップS1403において、ステ
ップS1402で取得したポートを引数とし、MIBオ
ブジェクトとしてデバイス名を指定してMibRead
Objects関数を呼び出す。これにより、図11に
示すブロードキャスト1101の通信が行われる。この
通信はブロードキャストアドレス宛てであるので、図1
に示すLAN100に接続されているすべてのデバイス
に通知される。当然、NB101及び118、即ち、図
11に示すデバイス1041及び1042にも通知され
る。
【0087】次に、ステップS1404において、デバ
イス応答タイマーT1を起動する。そして、ステップS
1405において、探索間隔タイマーT2を起動する。
【0088】図15は、SNMPパケットを受信した場
合の動作を示すフローチャートである。この処理は、図
13に示すステップS1303のSNMPパケット受信
処理に相当する。
【0089】この動作は、本実施形態においては、図1
1に示す通信1102、1103、1105、110
7、1109、1111、1113、1115、111
7、1118、1120及び1122が行われた際に、
図1に示すPC103がSNMPパケットを受信し、そ
れが図6に示す探索モジュール604に通知された時点
で起動される。
【0090】SNMPパケットを受信した場合には、ま
ずステップS1501において一次探索ポートへの応答
かどうかを判断する。この判断は、SNMPパケットを
受信した際に呼び出される探索モジュールのコールバッ
ク関数における第2の引数であるポート値が、図14に
示すステップS1403で記憶したポート値と同じ値で
あるかどうかによって行われる。もし同じ値である場合
には、一次探索ポートに対する通信であるとみなされ、
ステップS1502に進む。そうでない場合には、ステ
ップS1511に進む。尚、図11においては、110
2、1103、1117及び1118が一次探索ポート
への応答である。
【0091】ステップS1502において、正常応答か
どうかを判断する。ここで正常応答とは、図7に示すS
NMPパケットのエラーステータス713が“0”であ
ることである。ステップS1502において、正常応答
であると判断された場合にはステップS1503に進
む。そうでない場合はステップS1510に進む。尚、
後述するステップS1511においても全く同様の判断
を行う。
【0092】ステップS1503においては、受信した
SNMPパケットが検出デバイステーブル1220に登
録されているデバイスからのものかどうかを判断する。
この判断は受信したSNMPパケットの送出元IPアド
レスが検出デバイステーブル1220のネットワークア
ドレスフィールド1201に登録されているかどうかに
よって行う。ここで、登録済みであると判断された場合
にはステップS1507に進む。そうでない場合はステ
ップS1504へ進む。
【0093】ステップS1504においては、そのデバ
イスは始めて検出されたデバイスであるので、受信内容
を検出デバイステーブル1220に新規登録する。図1
4に示すステップS1403で問い合わせるMIBオブ
ジェクトとしてデバイス名を指定したので、受信内容に
はこのオブジェクトの値が含まれているはずである。こ
の値をデバイス検出テーブル1220のデバイス名フィ
ールド1206へ登録し、更にコールバック関数におけ
る第1引数であるデバイスのネットワークアドレスを検
出デバイステーブル1220のネットワークアドレスフ
ィールド1201に登録する。
【0094】次に、ステップS1505において、個別
デバイス毎に更に通信を行うために、通信ポートをオー
プンする。より具体的には、ステップS1503で判明
したデバイスのネットワークアドレスを引数としてMi
bOpen関数を呼び出し、得られたポート値を検出デ
バイステーブル1220のポート値フィールド1202
に記入する。次に、ステップS1506において、デバ
イスに関する各種情報を取得するために、MibRea
dObjects関数を用いてデバイスに対して問い合
わせを行う。ここで、問い合わせるオブジェクトは、検
出デバイステーブル1220の残りのフィールドを満た
すために必要とする全ての情報である。より具体的に
は、デバイスタイプ、デバイス状態、装備情報に関する
情報を問い合わせるMIBオブジェクトとする。この間
い合わは各オブジェクトを各々1つのSNMP要求パケ
ットにより送信する。つまり、図11に示す1104、
1106及び1108の通信が行われることになる。
【0095】一方、ステップS1503において検出デ
バイステーブル1220に既に登録済みであると判断さ
れた場合にはステップS1507に進み、検出デバイス
テーブル1220のネットワークアドレスフィールド1
201をコールバック関数における第一引数であるデバ
イスのネットワークアドレスで検索し、一致する行のデ
バイス名フィールド1206の値を、受信したデバイス
名オブジェクトの値で更新する。そして、ステップS1
508において、個別デバイス毎に更に通信を行うため
に、通信ポートをオープンする。より具体的には、ステ
ップS1503で判明したデバイスのネットワークアド
レスを引数としてMibOpen関数を呼び出し、得ら
れたポート値を検出デバイステーブル1220のポート
値フィールド1202に記入する。
【0096】次に、ステップS1509において、デバ
イスに関する各種情報を取得するために、MibRea
dObjects関数を用いてデバイスに対して問い合
わせを行う。ここで、問い合わせるオブジェクトは、検
出デバイステーブル1220の残りのフィールドを満た
すために必要とする全ての情報である。より具体的に
は、デバイスタイプ、デバイス状態、装備情報に関する
情報を問い合わせるMIBオブジェクトとする。但し、
この間い合わではデバイスがサポートしていないオブジ
ェクトは問い合わせ無い。検出デバイステーブル122
0に登録されている各フィールドの値がNULLだった
ものは前回の問い合わせに対して、デバイスから「no s
uch name」が返って来たものである。このオブジェクト
をまた問い合わせても「no such name」が返ってるだけ
あり無駄である。
【0097】従って、検出デバイステーブルの該当デバ
イスの各フィールドで意味のある値をもっているオブジ
ェクトだけを問い合わせる。更に、これらのオブジェク
トを1つのSNMP要求パケットにより送信することに
より、一層のトラフィックの低減を図ることができる。
つまり、図11に示す1119の通信が行われることに
なる。
【0098】また、上述したステップS1502におい
て、受信したパケットが正常応答でないと判断された場
合にはステップS1510に進み、そのパケットからは
有効な情報を得られないので、パケットをそのまま破棄
する。
【0099】また、上述したステップS1501におい
て、一時探索ポートへの応答ではないと判断された場合
はステップS1511に進む。図11において、110
5、1107及び1109と1111、1113及び1
115の通信が、この場合に相当する。ステップS15
11において、受信したパケットが正常応答でないと判
断された場合にはステップS1513に進む。ステップ
S1513においては、そのパケットからは有効な情報
を得られないので、パケットをそのまま破棄する。
【0100】一方、ステップS1511において正常な
パケットであると判断された場合にはステップS151
2に進み、受信内容を検出デバイステーブル1220に
登録する。より具体的には、ステップS1506又はS
1509においてデバイス毎に送付した各種情報の問い
合わせに対する応答が得られるので、その内容を検出デ
バイステーブル1220の該当デバイスの各フィールド
に登録する。この際にデバイスから「no such name」の
応答が返ってきたものは、そのオブジェクトはデバイス
がサポートしないオブジェクトであるので対応するフィ
ールドにはNULLを設定する。
【0101】図16は、デバイス応答タイマーが満了し
た際の処理を示すフローチャートである。タイマーサー
ビスはOS(オペレーティングシステム)によって提供
され、指定したタイマー時間が経過すると、OSが本手
順を呼び出す。この処理は、図13に示すステップS1
304のデバイス応答タイマー満了処理に相当する。デ
バイス応答タイマーT1満了においては、まずステップ
S1601において一次探索ポートをクローズする。よ
り具体的には、ステップS1403においてMibOp
en関数を用いてオープンしたポートのポート値を図5
に示すRAM503に記憶させたが、そのポート値を引
数としてMibClose関数を呼び出す。同時に、R
AM503に記憶させておいたポート値を値NULLで
クリアする。
【0102】次に、ステップS1602において、全て
の二次探索ポートをクローズする。より具体的には、検
出デバイステーブル1220のポート値フィールド12
02を上から下に向かって順に走査し、それぞれのポー
ト値を引数としてMibClose関数を呼び出す。同
時に、ポート値フィールド1202に、ポートがクロー
ズされたことを示すために値NULLを登録する。
【0103】最後に、ステップS1603において、検
出デバイステーブル1220に格納されている情報を上
位モジュールに通知する。より具体的には、検出デバイ
ステーブル1220に登録されているデバイスの数、即
ち検出デバイステーブル1220の行数と、RAM50
3上におけるデバイス検出テーブル1220の先頭アド
レスを上位モジュールに通知する。上位モジュールは、
この通知された情報を基に、検出されたデバイスの一覧
をディスプレイ510に表示する。
【0104】図17は、探索間隔タイマーが満了した際
の処理を示すフローチャートである。タイマーサービス
はOS(オペレーティングシステム)によって提供さ
れ、指定したタイマー時間が経過すると、OSが本手順
を呼び出す。この処理は、図13に示すステップS13
05の探索間隔タイマー満了処理に相当する。
【0105】探索間隔タイマーT2満了においては、ま
ずステップS1701において、直前に行われた探索操
作の結果を次回の探索に活かすため、検出デバイステー
ブル1220の内容を前回検出テーブルにコピーする。
【0106】以下、ステップS1702〜ステップS1
706までの動作は、図14に示すステップS1402
〜ステップS1406までの動作と全く同じであり、説
明は省略する。
【0107】尚、上述したネットワークデバイス制御プ
ログラムは、外部からインストールされるプログラムに
よって、PC500によって遂行されても良い。その場
合、そのプログラムはCD−ROMやフラッシュメモリ
やフロッピーディスクなどの記憶媒体により、或いは電
子メールやパソコン通信などのネットワークを介して外
部の記憶媒体からプログラムを含む情報群をPC500
上にロードすることにより、PC500に供給される場
合にも適用されるものである。
【0108】図18は、記憶媒体の一例であるCD−R
OMのメモリマップを示す図である。9999はディレ
クトリ情報を記憶している領域であり、以降のインスト
ールプログラムを記憶している領域及びネットワークデ
バイス制御プログラムを記憶している領域の位置を示し
ている。9998はインストールプログラムを記憶して
いる領域である。9997はネットワークデバイス制御
プログラムを記憶している領域である。
【0109】このネットワーク制御プログラムがPC5
00にインストールされる際には、まずインストールプ
ログラムを記憶している領域9998に記憶されている
インストールプログラムがシステムにロードされ、CP
U501によって実行される。次に、CPU501によ
って実行されるインストールプログラムが、ネットワー
クデバイス制御プログラムを記憶している領域9997
からネットワークデバイス制御プログラムを読み出し、
ハードディスク511に格納する。
【0110】このように、実施形態によれば、新規に発
見されたデバイスに対しては必要とする全てのオブジェ
クトを取得に行くが、前回の探索でデバイスがサポート
していないと判明しているオブジェクトについては再度
取得しには行かず、サポートオブジェクトのみを取得
し、またサポートしていると判明しているオブジェクト
については、複数のオブジェクトを纏めて1つのパケッ
トで取得することにより、ネットワークトラフィックを
低減することができるという効果がある。
【0111】尚、本発明は複数の機器(例えば、ホスト
コンピュータ,インタフェイス機器,リーダ,プリンタ
など)から構成されるシステムに適用しても、一つの機
器からなる装置(例えば、複写機,ファクシミリ装置な
ど)に適用してもよい。
【0112】また、本発明の目的は前述した実施形態の
機能を実現するソフトウェアのプログラムコードを記録
した記憶媒体を、システム或いは装置に供給し、そのシ
ステム或いは装置のコンピュータ(CPU若しくはMP
U)が記憶媒体に格納されたプログラムコードを読出し
実行することによっても、達成されることは言うまでも
ない。
【0113】この場合、記憶媒体から読出されたプログ
ラムコード自体が前述した実施形態の機能を実現するこ
とになり、そのプログラムコードを記憶した記憶媒体は
本発明を構成することになる。
【0114】プログラムコードを供給するための記憶媒
体としては、例えばフロッピーディスク,ハードディス
ク,光ディスク,光磁気ディスク,CD−ROM,CD
−R,磁気テープ,不揮発性のメモリカード,ROMな
どを用いることができる。
【0115】また、コンピュータが読出したプログラム
コードを実行することにより、前述した実施形態の機能
が実現されるだけでなく、そのプログラムコードの指示
に基づき、コンピュータ上で稼働しているOS(オペレ
ーティングシステム)などが実際の処理の一部又は全部
を行い、その処理によって前述した実施形態の機能が実
現される場合も含まれることは言うまでもない。
【0116】更に、記憶媒体から読出されたプログラム
コードが、コンピュータに挿入された機能拡張ボードや
コンピュータに接続された機能拡張ユニットに備わるメ
モリに書込まれた後、そのプログラムコードの指示に基
づき、その機能拡張ボードや機能拡張ユニットに備わる
CPUなどが実際の処理の一部又は全部を行い、その処
理によって前述した実施形態の機能が実現される場合も
含まれることは言うまでもない。
【0117】
【発明の効果】以上説明したように、本発明によれば、
探索シーケンスにおいて、真に必要なパケットのみを送
受信させることにより、ネットワークトラフィックを低
減させることが可能となる。
【図面の簡単な説明】
【図1】プリンタをネットワークに接続するためのネッ
トワークボードを、開放型アーキテクチャを持つプリン
タへ接続した場合を示す図である。
【図2】ネットワークボードをプリンタにインストール
した状態を示す断面図である。
【図3】ネットワークボード、プリンタ及びLANとの
電気的接続を示すブロック図である。
【図4】MIBの構造を示す概念図である。
【図5】ネットワーク管理ソフトウェアが稼動可能なP
Cの構成を示すブロック図である。
【図6】ネットワーク管理ソフトウェアのモジュール構
成を示す図である。
【図7】SNMPメッセージのフォーマットである。
【図8】マネージャとエージェント間でのSNMPコマ
ンドのやりとりを示す図である。
【図9】MIBモジュールAPIを示す図である。
【図10】ネットワーク管理プログラムにおける探索シ
ーケンスを示す図である。
【図11】実施形態におけるネットワーク管理プログラ
ムとネットワーク上のデバイスが通信する様子を示すシ
ーケンス図である。
【図12】本実施形態における検出デバイステーブルの
構成を示す図である。
【図13】ネットワークデバイス管理プログラム全体の
動作を示すフローチャートである。
【図14】探索を開始する際の処理を示すフローチャー
トである。
【図15】SNMPパケットを受信した場合の動作を示
すフローチャートである。
【図16】デバイス応答タイマーが満了した際の処理を
示すフローチャートである。
【図17】探索間隔タイマーが満了した際の処理を示す
フローチャートである。
【図18】ネットワーク管理ソフトウェアの記憶媒体に
おけるメモリマップを示す図である。
【符号の説明】
1040 探索モジュール 1041 ネットワークデバイス1 1042 ネットワークデバイス2 1220 検出デバイステーブル

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 ブロードキャスト通信により、ネットワ
    ークに接続されているデバイスを検出する一次検索手段
    と、 前記一次検索手段で検出したデバイスに関する追加情報
    を取得するために前記一次検索手段で検出したデバイス
    に対して個別に通信を行う二次検索手段と、 検出したネットワークデバイスに関する情報を登録する
    ための登録手段と、 前記一次検索手段で検出したデバイスが前記登録手段に
    登録されているか判断する判断手段とを有し、 前記二次検索手段は、前記判断手段にて登録無しと判断
    された場合には必要とする全てのオブジェクトの取得を
    試み、前記判断手段にて登録有りと判断された場合には
    前記登録手段の内容に応じてデバイスがサポートしてい
    るオブジェクトのみの取得を行うことを特徴とするネッ
    トワークデバイス制御装置。
  2. 【請求項2】 前記二次検索手段は、前記判断手段にて
    登録無しと判断された場合には1つのオブジェクトを1
    つのパケットによって送信し、前記判断手段にて登録有
    りと判断された場合には前記登録手段の内容に応じてデ
    バイスがサポートしている複数のオブジェクトを1つの
    パケットによって送信することを特徴とする請求項1記
    載のネットワークデバイス制御装置。
  3. 【請求項3】 ブロードキャスト通信により、ネットワ
    ークに接続されているデバイスを検出する一次検索工程
    と、 前記一次検索工程で検出したデバイスに関する追加情報
    を取得するために前記一次検索工程で検出したデバイス
    に対して個別に通信を行う二次検索工程と、 検出したネットワークデバイスに関する情報を登録する
    ための登録工程と、 前記一次検索工程で検出したデバイスが前記登録工程で
    登録されているか判断する判断工程とを有し、 前記二次検索工程は、前記判断工程にて登録無しと判断
    された場合には必要とする全てのオブジェクトの取得を
    試み、前記判断工程にて登録有りと判断された場合には
    前記登録された内容に応じてデバイスがサポートしてい
    るオブジェクトのみの取得を行うことを特徴とするネッ
    トワークデバイス制御方法。
  4. 【請求項4】 前記二次検索工程は、前記判断工程にて
    登録無しと判断された場合には1つのオブジェクトを1
    つのパケットによって送信し、前記判断工程にて登録有
    りと判断された場合には前記登録された内容に応じてデ
    バイスがサポートしている複数のオブジェクトを1つの
    パケットによって送信することを特徴とする請求項3記
    載のネットワークデバイス制御方法。
  5. 【請求項5】 ネットワークデバイス制御方法のプログ
    ラムコードが記憶されたコンピュータ可読記憶媒体であ
    って、 ブロードキャスト通信により、ネットワークに接続され
    ているデバイスを検出する一次検索工程のコードと、 検出したデバイスに関する追加情報を取得するために前
    記一次検索工程で検出したデバイスに対して個別に通信
    を行う二次検索工程のコードと、 前記検出したネットワークデバイスに関する情報を登録
    するための登録工程のコードと、 前記検出したデバイスが前記登録工程で登録されている
    か判断する判断工程のコードとを有し、 前記二次検索工程のコードは、前記判断工程にて登録無
    しと判断された場合には必要とする全てのオブジェクト
    の取得を試み、前記判断工程にて登録有りと判断された
    場合には前記登録された内容に応じてデバイスがサポー
    トしているオブジェクトのみの取得を行うことを特徴と
    する記憶媒体。
  6. 【請求項6】 前記二次検索工程は、前記判断工程にて
    登録無しと判断された場合には1つのオブジェクトを1
    つのパケットによって送信し、前記判断工程にて登録有
    りと判断された場合には前記登録された内容に応じてデ
    バイスがサポートしている複数のオブジェクトを1つの
    パケットによって送信することを特徴とする請求項5記
    載の記憶媒体。
JP10356569A 1998-12-15 1998-12-15 ネットワークデバイス制御装置及び方法 Withdrawn JP2000183877A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10356569A JP2000183877A (ja) 1998-12-15 1998-12-15 ネットワークデバイス制御装置及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10356569A JP2000183877A (ja) 1998-12-15 1998-12-15 ネットワークデバイス制御装置及び方法

Publications (1)

Publication Number Publication Date
JP2000183877A true JP2000183877A (ja) 2000-06-30

Family

ID=18449688

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10356569A Withdrawn JP2000183877A (ja) 1998-12-15 1998-12-15 ネットワークデバイス制御装置及び方法

Country Status (1)

Country Link
JP (1) JP2000183877A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002232423A (ja) * 2000-09-13 2002-08-16 Canon Inc ディレクトリ許可デバイスの管理
JP2009245024A (ja) * 2008-03-28 2009-10-22 Brother Ind Ltd デバイス管理システム、デバイス及びデバイス管理プログラム
EP2267943A1 (en) 2009-06-24 2010-12-29 Brother Kogyo Kabushiki Kaisha Administration device for sequentially acquiring data from remote devices
JP2011008329A (ja) * 2009-06-23 2011-01-13 Brother Industries Ltd 管理装置及びコンピュータプログラム
JP2011151531A (ja) * 2010-01-20 2011-08-04 Nippon Telegr & Teleph Corp <Ntt> トラヒック情報収集装置、トラヒック情報収集方法、およびプログラム

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002232423A (ja) * 2000-09-13 2002-08-16 Canon Inc ディレクトリ許可デバイスの管理
JP4603737B2 (ja) * 2000-09-13 2010-12-22 キヤノン株式会社 通信装置及びネットワーク装置の管理方法、並びにプログラム及び記憶媒体
JP2009245024A (ja) * 2008-03-28 2009-10-22 Brother Ind Ltd デバイス管理システム、デバイス及びデバイス管理プログラム
JP4683063B2 (ja) * 2008-03-28 2011-05-11 ブラザー工業株式会社 デバイス管理システム、デバイス及びデバイス管理プログラム
US8312122B2 (en) 2008-03-28 2012-11-13 Brother Kogyo Kabushiki Kaisha Device management system, device, and computer readable medium
JP2011008329A (ja) * 2009-06-23 2011-01-13 Brother Industries Ltd 管理装置及びコンピュータプログラム
EP2267943A1 (en) 2009-06-24 2010-12-29 Brother Kogyo Kabushiki Kaisha Administration device for sequentially acquiring data from remote devices
JP2011008409A (ja) * 2009-06-24 2011-01-13 Brother Industries Ltd 管理装置及びコンピュータプログラム
US8467076B2 (en) 2009-06-24 2013-06-18 Brother Kogyo Kabushiki Kaisha Administration device for administering devices by acquiring object information therefrom
JP2011151531A (ja) * 2010-01-20 2011-08-04 Nippon Telegr & Teleph Corp <Ntt> トラヒック情報収集装置、トラヒック情報収集方法、およびプログラム

Similar Documents

Publication Publication Date Title
JP3684108B2 (ja) ネットワークデバイス管理装置及び方法
JP3782600B2 (ja) ネットワークデバイス管理装置、ネットワークデバイス管理方法及び記録媒体
US6430612B1 (en) Network device management apparatus and method, and storage medium
JP3935276B2 (ja) ネットワークデバイス管理方法、装置、記憶媒体、及び送出装置
EP2428868A2 (en) Network service system, service proxy processing method, computer-readable storage medium storing program, and program therefor
JP2000330742A (ja) ネットワークプリンタシステム
JP2000172600A (ja) ネットワーク構成調査方法、ネットワーク機器制御方法及びその装置
JP3624089B2 (ja) 周辺装置制御装置および制御方法、記録媒体
JP3944030B2 (ja) ネットワークデバイス制御装置、ネットワークデバイス制御方法および該制御方法を実現するためのプログラム
JP2000183877A (ja) ネットワークデバイス制御装置及び方法
JP2000196665A (ja) ネットワークデバイス制御装置及び方法
JP2003006068A (ja) ネットワークデバイス管理装置、管理方法及び管理プログラム
JP2000353136A (ja) ネットワークデバイス探索装置およびその方法、記憶媒体
JP2004054657A (ja) ネットワークデバイス管理装置
JP2003015973A (ja) ネットワークデバイス管理装置、管理方法及び管理プログラム
JP2001255974A (ja) 情報処理装置及び方法
JP2001256153A (ja) ネットワークデバイス制御装置および方法
JP2000194626A (ja) ネットワークデバイス制御装置及び方法
JP4095594B2 (ja) ネットワークデバイス制御方法及び装置
JP2000357145A (ja) ネットワークデバイス管理装置および方法
JPH11296467A (ja) ネットワークデバイス制御方法及び装置、記録媒体
JP3869924B2 (ja) ネットワーク制御装置および通信プロトコル設定方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体
JP2000353142A (ja) ネットワーク管理装置及び方法
JP2000148631A (ja) ネットワークデバイス管理装置及び方法
JP2000148431A (ja) ネットワークデバイス管理装置及び方法とネットワークデバイス制御装置及びその方法

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20060307