JP4581259B2 - Embedded electronic device, embedded electronic device, and management method of embedded electronic device - Google Patents

Embedded electronic device, embedded electronic device, and management method of embedded electronic device Download PDF

Info

Publication number
JP4581259B2
JP4581259B2 JP2001029358A JP2001029358A JP4581259B2 JP 4581259 B2 JP4581259 B2 JP 4581259B2 JP 2001029358 A JP2001029358 A JP 2001029358A JP 2001029358 A JP2001029358 A JP 2001029358A JP 4581259 B2 JP4581259 B2 JP 4581259B2
Authority
JP
Japan
Prior art keywords
embedded electronic
electronic device
snmp
board
value
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
JP2001029358A
Other languages
Japanese (ja)
Other versions
JP2002229875A (en
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2001029358A priority Critical patent/JP4581259B2/en
Publication of JP2002229875A publication Critical patent/JP2002229875A/en
Application granted granted Critical
Publication of JP4581259B2 publication Critical patent/JP4581259B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、ネットワークに接続され、筐体内に装着された組込電子機器をSNMP(Simple Network Management Protocol)を用いて管理する際に、被管理機器における構成の変化に柔軟に対応可能な組込型電子機器ならびに組込電子機器および組込電子機器の管理方法に関する。
【0002】
【従来の技術】
現在、TCP/IP(Transmission Control Protocol/Internet Protocol)によるネットワークに接続された機器を管理するためのプロトコルとして、SNMP(Simple Network Management Protocol)が提供されている。SNMPでは、システム管理者により起動されるネットワーク監視端末(SNMPマネージャと称される)と、SNMPが実装されるネットワーク上の機器(SNMPエージェントと称される)との間のプロトコルが規定される。SNMPでは、MIB(Management Information Base)と称されるSNMPエージェントが持つ情報に、SNMPマネージャがアクセスすることで、機器の状態の把握や機器に設定される定義情報の変更が可能とされる。SNMPを用いることによって、複雑に構成されるネットワークの管理を、SNMPマネージャから容易に行うことが可能とされる。
【0003】
一方、ネットワーク環境の普及により、コンピュータといった情報機器のみならず、例えば放送局などで使用されるビデオ機器を、TCP/IPによるネットワーク接続により管理することが提案されている。このとき、SNMPが実装されていないなど、SNMPエージェント機能を有さない機器をSNMPにより管理するためには、SNMPエージェント機能が実装されている機器をプロキシエージェントとして設ける必要がある。すなわち、プロキシエージェントによって、SNMPエージェント機能を有さない機器とSNMPとの仲介を行い、当該機器のSNMPによる管理を可能とする。
【0004】
図21は、このプロキシエージェントによる一例のアーキテクチャを示す。SNMPマネージャ300により、独自の管理インターフェイスに対応した機器320がプロキシエージェント310を介して管理される。
【0005】
例えばSNMPマネージャ300から機器320に対してコマンドやデータ(以下、コマンドとする)などを送る場合、SNMPマネージャ300側の管理アプリケーション301で発行されたコマンドは、クライアント・スタブ302でプロトコル・スタック303によりプロトコル解釈されてSNMPに変換され、SNMPマネージャ300から送信される。このSNMPに変換されたコマンドは、プロキシ・エージェント310に受信され、プロトコル・スタック313およびサーバ・スタブ312を介してプロキシ・エージェント・アプリケーション311に供給される。
【0006】
一方、機器320は、SNMPとは異なるプロトコルを用いた独自の管理インターフェイス321により管理される。SNMPマネージャ300から送信されたSNMPは、プロキシ・エージェント・アプリケーション311において、クライアント・プロキシ・スタブ314によりプロトコル・スタック315を用いて機器320の独自の管理インターフェイス321が対応するプロトコルに変換される。このプロトコル変換されたコマンドが機器320に送信され、管理インターフェイス321に受信される。
【0007】
このように、プロキシ・エージェント310によってSNMPマネージャ300とSNMP非対応の機器320の仲介をすることで、SNMPマネージャ300により機器320を管理することができる。
【0008】
【発明が解決しようとする課題】
しかしこの場合、プロキシ・エージェント310は、管理される側の機器320(被プロキシ・エージェントとする)に関する全管理項目を把握している必要があるという問題点があった。
【0009】
さらに、被プロキシ・エージェントが多種・複数存在する、ニーズに応じて管理項目の構成が変化する、新たな被プロキシ・エージェントが開発され管理項目が追加される、などの事態を想定すると、プロキシ・エージェント310におけるプロキシ・エージェント・アプリケーション311に対して、バージョンアップなどによる機能拡張を可能にするように対応する必要があるという問題点があった。
【0010】
したがって、この発明の目的は、SNMPを用いてSNMPに非対応の機器を管理する際に、機能の拡張が容易な組込型電子機器ならびに組込電子機器および組込電子機器の管理方法を提供することにある。
【0011】
【課題を解決するための手段】
この発明は、上述した課題を解決するために、SNMPが実装されプロキシ・エージェントの機能を持つシステム用CPUおよびメモリを有するシステム基板と、複数の組込電子機器をそれぞれ接続するための複数の組込手段と、ネットワークを介してSNMPマネージャとの通信を行う第1の通信手段と、SNMPに基づくオブジェクトIDをSNMPとは異なるプロトコルに変換する変換手段と、複数の組込手段により組み込まれた複数の組込電子機器の種類および該種類毎の数を取得する機器情報取得手段と、複数の組込電子機器に対してSNMPとは異なるプロトコルを用いて通信を行う第2の通信手段とを備え、機器情報取得手段は、所定の周期で複数の組込電子機器をスキャンし、複数の組込手段により組み込まれた複数の組込電子機器の種類および該種類毎の数を取得し、メモリは、取得された複数の組込電子機器の種類毎の数と各組込電子機器を識別するための識別子とを対応付けた配列として保持し、オブジェクトIDがSNMPマネージャから供給された際に、オブジェクトIDのうち、組込電子機器の種類を示す識別子を参照することにより、メモリに保持された配列から、問い合わせの対象となる組込電子機器を特定し、問い合わせの対象となる組込電子機器が組み込まれている場合に、オブジェクトIDを問い合わせの対象となる組込電子機器に渡すようにした組込型電子機器である。
【0012】
また、この発明は、オブジェクト情報が格納されるオブジェクト情報格納手段を有し、
オブジェクト情報が、組込型電子機器を介してSNMPマネージャの管理対象となるオブジェクトを示すものである組込電子機器である。
【0013】
また、この発明は、複数の組込電子機器をそれぞれ接続するための組み込みのステップと、ネットワークを介してSNMPマネージャとの通信を行う第1の通信のステップと、SNMPに基づくオブジェクトIDをSNMPとは異なるプロトコルに変換する変換のステップと、複数の組込手段により組み込まれた複数の組込電子機器の種類および該種類毎の数を取得する機器情報取得のステップと、複数の組込電子機器に対してSNMPとは異なるプロトコルを用いて通信を行う第2の通信のステップとを備え、SNMPが実装されプロキシ・エージェントの機能を持つシステム用CPUおよびメモリを有するシステム基板を備えた組込型電子機器により、機器情報取得のステップにおいて、所定の周期で複数の組込電子機器をスキャンし、複数の組込手段により組み込まれた複数の組込電子機器の種類および該種類毎の数を取得し、メモリは、取得された複数の組込電子機器の種類毎の数と各組込電子機器を識別するための識別子とを対応付けた配列として保持し、オブジェクトIDがSNMPマネージャから供給された際に、オブジェクトIDのうち、組込電子機器の種類を示す識別子を参照することにより、メモリに保持された配列から、問い合わせの対象となる組込電子機器を特定し、問い合わせの対象となる組込電子機器が組み込まれている場合に、オブジェクトIDを問い合わせの対象となる組込電子機器に渡すようにした組込電子機器の管理方法である。
【0014】
また、この発明は、組込型電子機器が有するCPUおよび組込型電子機器に組み込まれる組込電子機器の種類に応じてグループ分けしたグループ識別子を配し、組込電子機器の種類を示すグループ識別子の値が、組込型電子機器が有するCPUを示すグループ識別子の値よりも大であるとされたMIB構造を表すオブジェクトIDを用い、組込型電子機器に組み込まれる組込電子機器を、組込型電子機器を介してSNMPマネージャにより管理する組込電子機器の管理方法である。
【0015】
上述したように、この発明は、機器情報取得手段が、所定の周期で複数の組込電子機器をスキャンし、複数の組込手段により組み込まれた複数の組込電子機器の種類および該種類毎の数を取得し、メモリが、取得された複数の組込電子機器の種類毎の数と各組込電子機器を識別するための識別子とを対応付けた配列として保持し、オブジェクトIDがSNMPマネージャから供給された際に、オブジェクトIDのうち、組込電子機器の種類を示す識別子を参照することにより、メモリに保持された配列から、問い合わせの対象となる組込電子機器を特定し、問い合わせの対象となる組込電子機器が組み込まれている場合に、オブジェクトIDを問い合わせの対象となる組込電子機器に渡すようにしているため、筐体内における組込電子機器の拡張が容易である。
【0016】
また、この発明は、組込電子機器が、オブジェクト情報が格納されるオブジェクト情報格納手段を有し、オブジェクト情報が、組込型電子機器を介してSNMPマネージャの管理対象となるオブジェクトを示すものであるため、オブジェクトを管理する外部においてオブジェクト情報を持つ必要がない。
【0017】
また、この発明は、組込型電子機器が有するCPUおよび組込型電子機器に組み込まれる組込電子機器の種類に応じてグループ分けしたグループ識別子を配し、組込電子機器の種類を示すグループ識別子の値が、組込型電子機器が有するCPUを示すグループ識別子の値よりも大であるとされたMIB構造を表すオブジェクトIDを用い、組込型電子機器に組み込まれる組込電子機器を、組込型電子機器を介してSNMPマネージャにより管理するようにしているため、組込型電子機器に組み込まれた組込電子機器をMIBを用いて管理できる。
【0018】
【発明の実施の形態】
以下、この発明の実施の一形態を、図面を参照しながら説明する。図1は、この発明を適用可能な一例のシステムを示す。ネットワーク1にSNMPマネージャ2とSNMPエージェント3とが接続される。これらSNMPマネージャ2とSNMPエージェント3との間では、SNMP標準のオペレーションやイベント通知がネットワーク1を介してやりとりされる。
【0019】
この実施の一形態では、SNMPエージェント3は、例えばMPEG2(Moving Pictures Experts Group 2)方式に対応したビデオプロセッサ3である。後述するが、ビデオプロセッサ3は、内部に組み込まれた基板の機能に応じた処理を行う。図1の例では、ビデオプロセッサ3は、入力されたディジタルビデオ信号およびディジタルオーディオ信号を、所定にエンコードしてMPEG2方式によるトランスポートストリームにして出力する機能を有する。また、ビデオプロセッサ3は、入力されたMPEG2方式によるトランスポートストリームを所定にデコードし、例えば標準のディジタルビデオ信号およびディジタルオーディオ信号にして出力する機能を有する。
【0020】
ビデオプロセッサ3において、バス20にシステム基板10が接続される。図示しないが、システム基板10には、システム用CPU(Central Processing Unit)、マルチプレクス用CPUおよび統計多重用CPUの3つのCPUが搭載され、それぞれのCPUによって所定の機能が実現される。また、バス20に対して複数のスロット11A、11B、11C、11Dおよび11Eが接続される。
これらスロット11A、11B、・・・に基板30、30、・・・を装着することで、その基板30、30、・・・がバス20に所定に接続され、ビデオプロセッサ3においてその基板30、30、・・・の機能が有効になる。
【0021】
なお、図1では、基板30、30、・・・を、説明のため基板30A、30B、・・・とそれぞれ区別している。
【0022】
図1の例では、スロット11A、11Bおよび11Eに、標準解像度ビデオ信号(SD)に対応したビデオエンコーダである基板30A(ENC(1))、30B(ENC(2))および30D(ENC(3))が装着され、スロット11Dにオーディオエンコーダである基板30C(APR(1))が装着される。例えばシステム基板10は、入出力インターフェイスの機能を有し、システム基板に入力された信号は、バス20を介してこれら基板30A〜30Dに供給される。なお、図1の例では、「φ」と記されたスロット11Cには、基板30が装着されていない。
【0023】
上述したように、ビデオプロセッサ3は、スロット11A〜11Eに装着される基板30が有する機能に応じた処理を行うことができる。図2は、ビデオプロセッサ3に装着可能な基板30の例を示す。各基板30、30、・・・には、その基板30の種類に応じてそれぞれ識別番号が割り当てられる。基板OPMは、システム基板10であり、システム基板10にのせられたシステム用CPU、マルチプレクス用CPUおよび統計多重用CPUに、識別番号1、2および3番がそれぞれ割り当てられる。システム基板10には、このように、最小の識別番号から順に識別番号が割り当てられる。
【0024】
一方、各基板30、30、・・・には、システム基板10の識別番号の次の値から、基板30の種類毎に識別番号が割り当てられる。基板IPMは、トランスポートストリームの入力部であり、識別番号が4番とされる。エンコーダである基板ENCは、識別番号が5番とされる。基板VPRは、高精細解像度ビデオ信号(HD)に対応したビデオエンコーダであり、識別番号が6番とされる。基板DECは、ビデオデコーダであり、識別番号が7番とされる。オーディオエンコーダである基板APRは、識別番号が8番とされる。
【0025】
この例では、このように識別番号が8番までが予約されており、新たに開発された基板には、9番以降の識別番号が順次割り当てられることになる。
【0026】
なお、上述ではビデオプロセッサ3にはスロットが5個、設けられ、基板が5枚装着可能として説明したが、これはこの例に限定されない。例えば、スロットは、筐体の大きさに応じて異なる数を設けることができる。なお、スロット11A、11B、・・・は、基板30の活電挿抜が可能とされており、ビデオプロセッサ3が稼働中でも、スロット11A、11B、・・・の状況が変わり得る。すなわち、ビデオプロセッサ3の稼働中に、スロット11A、11B、・・・に装着される基板30が変更されることが有り得る。さらに、ビデオプロセッサ3は、用途に応じて必要な機能を有する基板30を選択し、筐体内に複数種類および複数枚の基板30を装着することが可能とされている。
【0027】
図2で上述した各基板のうち、SNMPが実装されている、すなわち、SNMPによる送受信が可能で、且つ、ANS.1コーデック機能(SNMPのパケットのコーデック機能)を持つのは、システム基板10(基板OPM)上のシステム用CPUのみであり、また、外部との通信ポートを持つのもシステム用CPUのみである。したがって、システム基板10がSNMPのプロキシ・エージェントとなる。実際には、システム基板10におけるシステム用CPUがプロキシ・エージェントとしての機能を果たす。このシステム基板10(基板OPM)は、このビデオプロセッサ3の構成において必須である。
【0028】
SNMPマネージャ2によるビデオプロセッサ3の管理は、従来の技術の項で図21を用いて説明した方法と同様にして行われる。すなわち、システム基板10をプロキシ・エージェントとして、SNMPマネージャ2とシステム基板10との間でネットワーク1を介して通信が行われ、SNMPによる標準的なオペレーションコマンドやイベント通知がやりとりされる。システム基板10では、例えば、SNMPマネージャ2からSNMPにより送られたオペレーションコマンドやイベント通知が、ビデオプロセッサ3独自のオペレーションコマンドやイベント通知に変換される。変換されたこれらコマンドや通知がバス20を介して、スロット11A、11B、・・・に装着された各基板30、30、・・・に供給される。また、各基板30、30、・・・から出力された、ビデオプロセッサ3独自のコマンドやイベント通知は、バス20を介してシステム基板10に供給され、SNMPによるコマンドやイベント通知に変換される。変換されたコマンドやイベント通知は、ネットワーク1を介してSNMPマネージャ2に送られる。
【0029】
この実施の一形態においては、ビデオプロセッサ3のスロット11A、11B、・・・に装着される各基板30、30、・・・のオブジェクトは、各基板30、30、・・・側でそれぞれが持つ。こうすることで、プロキシ・エージェントであるシステム基板10上のシステム用CPUは、スロット11A、11B、・・・に装着される各基板30、30、・・・のオブジェクトそれぞれに特有のオブジェクトに関する情報から解放される。
【0030】
なお、ここでオブジェクトは、MIBにおける項目を指す。例えば、上述したエンコーダである基板ENCでは、「ビットレート」、「サンプリングレート」、「入力信号の種類」などのエンコーダのパラメータに対するSNMPによるコマンドの一つ一つがオブジェクトとされる。すなわち、オブジェクトは、SNMPマネージャ2による管理対象である。
【0031】
図3は、MIB一例の構成を示す。MIBは、世界的に標準化されており、ツリー構造を有している。この図3の例では、最上位がインターネット(internet(1))とされ、その下位にツリーが構成される。図示は省略するが、実際には、「internet(1)」も、さらに上位のツリー構造の一部である。「enterprise(1)」より上位がグローバルな階層である。「xxx(n)」より下位がベンダローカルな階層とされ、例えばxxx社の製品は、「xxx(n)」より下層に位置する。また、xxx社の製品である上述のビデオプロセッサ3(図3における「yyyy(6004)」)に装着される各基板30、30、・・・は、「yyyy(6004)」より下層に位置する。
【0032】
なお、ツリー構造の各枝において括弧「()」内に記される値は、それぞれの階層においてMIBオブジェクトを識別するための識別子である。このツリー構造の各枝は、上位から下位にかけて、各層の識別子と各層を互いに区別するための区切り識別子であるピリオド(.)とによって一意的に表現される。例えば、最下層の基板ENC(7)は、「1.4.1.n.6004.7」として表される。実際には、より上位の階層からの識別子を用いて、「1.3.6.1.4.1.n.6004.7」と表現される。これは、オブジェクトIDと称される。
【0033】
ビデオプロセッサ3に装着される基板30、30、・・・は、種類毎に識別子が割り当てられ、基板種類毎にオブジェクトグループが分かれている。図3では、オブジェクト「SYS/OPM(3)」以下に示される、括弧()内の添え字が3以上のオブジェクトがこれに当たる。
【0034】
新たな機能を持つ基板30が開発された場合には、さらに異なる識別子が与えられ、図3に「???(11)」、「???(12)」として示されるように、オブジェクトを増やすことができる。このとき、基板30側がオブジェクトを持っているので、プロキシ・エージェントに手を加えることなく、SNMPマネージャ2が持つMIB定義ファイルを変更するだけで、オブジェクトを追加できる。これにより、追加された基板30についてのMIB監視も可能となる。
【0035】
なお、システム基板10は、上述したように機能毎に3つのCPUを持ち、識別子は、これら3つのCPUにもそれぞれ割り当てられる。
【0036】
また、図示しないが、各基板のそれぞれは、さらに下位にオブジェクトを持つことができる。例えば、各基板に対するSNMPマネージャ2による管理コマンドのそれぞれがオブジェクトとされる。各基板は、階層的にオブジェクトを持つことができる。下位のオブジェクトは、オブジェクトに対するポインタが記されるオブジェクトテーブルにより参照される。
【0037】
図4は、ビデオプロセッサ3に装着される基板30の一例の構成を概略的に示す。基板30は、バス31を有し、バス31に対してCPU32、ROM(Read Only Memory)33および通信インターフェイス34が接続される。通信インターフェイス34は、コネクタ35に接続される。また、バス31に、この基板30の主要な機能を司る機能部36が接続される。この基板30が上述したエンコーダ基板ENCである場合には、外部から供給されたディジタルビデオ信号がこの機能部36に入力され、所定にエンコード処理され、機能部36から出力される。コネクタ35がスロット11A、11B、・・・に挿入されることで、基板30とシステム基板10とが電気的に結合される。例えば、システム基板10に搭載される3つのCPUから出力された指令がコネクタ35から通信インターフェイス34に供給され、バス31を介してCPU32に渡される。この指令に基づきCPU32により機能部36が制御され、機能部36に入力された信号に対する所定の処理が行われる。
【0038】
このような構成において、オブジェクトの情報は、例えばROM33に予め記憶される。ROM33に記憶された情報は、例えばシステム基板10に搭載されたシステム用CPUからの指令に基づくCPU32の制御により読み出され、通信部34およびコネクタを介してシステム基板10に渡される。
【0039】
次に、システム基板10側、すなわち、プロキシ・エージェント側での組み込み方法について説明する。システム基板10においてプロキシ・エージェントの機能を持つシステム用CPUにより、バス20に接続される全スロット11A、11B、・・・をある一定の周期でスキャンし、基板30の種類毎に何枚が装着されているかが調べられる。システム用CPUでは、例えば図示されないメモリを利用し、予め基板30の種類数以上の配列が用意され、上述した図2に示される識別番号とその識別番号が示す基板30の枚数とが対応付けられて保持される。
【0040】
図5は、上述の図1に示されるビデオプロセッサ3における、識別番号の一例の配列の内容を示す。識別子が3、4および5は、システム基板10上の3つのCPUにそれぞれ対応し、枚数がそれぞれ1となっている。図1のビデオプロセッサ3では、3枚の基板ENCと1枚の基板APRが装着されているので、対応する識別子7および10は、それぞれ枚数が3および1となっている。その他の識別子を持つ基板30は、装着されていないので枚数が0となっている。
【0041】
SNMPマネージャ2からの、ビデオプロセッサ3に装着された各基板への問い合わせは、上述したオブジェクトIDを用いてなされる。例えば基板ENCに対して問い合わせが行われる場合には、オブジェクトID{1.3.6.1.4.1.n.6004.7.*}が用いられる。なお、基板の種類を示す識別子「7」の次の「*」は、任意の長さの識別子が許されることを示す。また、オブジェクトIDの最後尾には、基板種類毎のさらに詳細な項目を示すインデックスを付すことができる。例えば同種の基板30が複数枚装着されている場合に、インデックスを用いて区別することができる。
【0042】
SNMPマネージャ2から送信された問い合わせは、ビデオプロセッサ3に受信され、システム基板10上のシステム用CPUに渡される。システム用CPU(プロキシ・エージェント)では、渡された問い合わせに含まれるオブジェクトIDの特定の値が書かれている場所を見て、対象となる基板30が判断される。
例えばこの例では、オブジェクトIDの「6004.」の次に書かれている値(この例では「7」)が調べられる。そして、この値に基づき、上述の図5に示されるような配列が参照され、該当する基板30が装着されているかどうかが判断される。該当する基板30が装着されていると判断されれば、SNMPマネージャ2から送信された問い合わせが、問い合わせに用いられるコマンドがGET/SET Requestであるか、GET Next Requestであるかに応じた方法で、当該基板30に渡される。
【0043】
なお、SNMPマネージャ2から送られてきた問い合わせは、SNMPが用いられている。システム用CPUでは、上述のようにして問い合わせを基板30に渡す際に、プロトコルを基板30に対応した形式に変換する。
【0044】
同種の基板30が1台の筐体に複数枚装着されている場合に、SNMP上でそれら複数の同種基板を互いに区別する必要がある。上述したビデオプロセッサ3の例では、スロット11A、11B、・・・のそれぞれに、スロット番号の小さい方から同種基板識別用のインデックスが付与される。
【0045】
図6は、この場合のオブジェクトIDの一例の構造を示す。SNMPマネージャ2から送られるオブジェクトIDは、例えば{1.3.6.1.4.1.n.6004.x.y.y.y.y.y.z}と記述される。このうち、{1.3.6.1.4.1.n.6004}が当該装置であるビデオプロセッサ3を示す。
次の「x」がビデオプロセッサ3に装着される基板30の種別を示す基板別グループ番号である。この{x}が上述の図2に示した基板種類識別番号に対応する。この{x}と、次の{y.y.y.y.y}で、完全なコマンド列が構成される。最後尾の{z}が同種基板識別用のインデックスである。
【0046】
このようなオブジェクトIDに基づくプロキシ・エージェント側の処理について説明する。処理は、実際には、システム基板10上に搭載されるシステム用CPUにより実行される。SNMPマネージャ2からシステム用CPUに対して、オブジェクトID{1.3.6.1.4.1.n.6004.x.*}というオブジェクトの参照要求が送信される。なお、最後尾の{*}は、1または複数の任意の識別子を示す。このオブジェクトIDが受信されたプロキシ・エージェントにより、受信されたオブジェクトIDに基づき、基板種類識別子が{x}に対応し、受信された要求の種類(GET/GETN/SET)に応じて、インデックスが対応する基板に対して、受信されたオブジェクトIDが渡される。
【0047】
受信されたオブジェクトIDが対応する基板30に渡されると共に、スロット11A、11B、・・・に装着されている当該基板30と同一種類の基板枚数と、同種基板識別インデックスとが当該基板30に渡される。各基板30、30、・・・側では、プロキシ・エージェントから渡されたこれらの情報に基づき、処理が行われる。
【0048】
一方、プロキシ・エージェント側でも、システム用CPUにおいてオブジェクトテーブルが持たれており、オブジェクトテーブルの最後尾には、他の基板30、30、・・・宛のポインタを擁している。プロキシ・エージェントでは、このオブジェクトテーブルにおいて、SNMPマネージャ2から送られてきたオブジェクトIDを見て、{1.3.6.1.4.1.n.6004.x}のうち先頭から’6004’までが一致し、且つ、送られてきたオブジェクトIDが{1.3.6.1.4.1.n.6004.x}以上の長さを持つものについて、’x’の値が確認される。
【0049】
その結果、’x’の値が、上述の図3における「MUX(4)」以上の値であれば、そのオブジェクトIDは、上述のシステム用CPUが持つオブジェクトテーブルの最後尾に記される、他の基板30宛のオブジェクトIDであると見なされる。このオブジェクトIDは、’x’の値に対応する基板30に渡される。このように構成することで、今後、基板30の種類が増加しても、プロキシ・エージェントにおける動作変更の必要がない。
【0050】
なお、この実施の一形態によるビデオプロセッサ3は、例えば、システム用CPUと他基板30、30、・・・との間の通信が最大16種類の基板種類まで対応するように作られている。したがって、基板種類がこの範囲内であれば、新たに開発された基板30をそのままビデオプロセッサ3に装着することで、装着された基板30における被プロキシ機能が実現される。データを渡すスロット11A、11B、・・・の識別には、「基板の種類」と「同種基板識別用のインデックス」とが用いられる。
【0051】
上述したように、SNMPマネージャ2から送信された問い合わせが、問い合わせに用いられるコマンドがGET/SET Requestであるか、GETNext Requestであるかにより、問い合わせを基板に渡す方法が異なる。GET/SET Requestの場合には、オブジェクトIDとインデックスとが特定されているのが前提であって、オブジェクトIDの最後尾にインデックスが書かれている。そのため、データは、該当する種類の中で指定された基板30に、直接的に引き渡される。
【0052】
図7は、GET/SET Requestの場合の一例のデータ遷移図を示す。この場合、図6における同種基板識別インデックスを示す値’z’がオブジェクトIDに含まれていることが前提の処理となる。したがって、システム用CPUにより、オブジェクトIDに含まれる、図6における値’x’および’z’に基づき、直接的に、操作対象とされる基板30B(基板ENC(2))にオブジェクトIDが渡される。この図7の例では、{1.3.6.1.4.1.n.6004.7.y.y.y.y.y.2}という、コマンドおよびインデックスが含まれたオブジェクトIDが送られている。
【0053】
一方、GET Next Requestの場合には、オブジェクトIDとインデックスとが不確定な状態で要求されることがある。この場合、図6における’y.y.y.y.y’の一部または全部および’z’の値が含まれない状態で、オブジェクトIDがSNMPマネージャ2から送られてくる可能性がある。そのため、’x’の値のみに基づき、’x’の値に該当する種類の基板30が複数枚、筐体内に装着されている場合、それらのうちの、添え字(図1参照)が最も小さい基板30に、オブジェクトIDが渡される。例えば、同種類の基板で、スロット11A、11B、・・・のうち最もスロット番号が小さいスロットに挿入された基板に、オブジェクトIDが渡される。
【0054】
図8は、GET Next Requestの場合の一例のデータ遷移図を示す。この図8の例では、{1.3.6.1.4.1.n.6004.7.*}という、コマンドおよびインデックスが含まれていないオブジェクトIDが送られている。
【0055】
例えば、’x’が、この例のようにエンコーダ基板ENCを表している場合、先ず「()」内の添え字が最も小さい値の基板30A(ENC(1))にオブジェクトIDが渡される。オブジェクトIDに基づき、基板30A(ENC(1))側で値’z’が調べられ、このオブジェクトIDが自分宛でないと判断されると、基板30A(ENC(1))からシステム用CPUに、その旨示すメッセージ「NACK」が送られる。この「NACK」を受け取ったシステム用CPUでは、「()」の添え字が次の値の同種基板、すなわち基板30B(ENC(2))にオブジェクトIDが渡される。基板30B(ENC(2))も該当する基板でないときには、添え字が次の値の同種の基板である基板30D(ENC(3))が調べられる。
【0056】
また、SNMPマネージャ2から送られてきたオブジェクトIDの値’x’に基づき、該当する基板が存在しないと判断されれば、システム用CPUにより図5の配列が検索され、値が’x’以上の基板があればその基板にオブジェクトIDが渡される。例えば、上述のように基板ENC41、42および44を調べて該当する基板が無い場合、’x’値が’8’である基板30C(APR(1))にオブジェクトIDが渡され、同様に該当する基板があるかどうかが探索される。
【0057】
若し、最終的に、オブジェクトIDに該当する基板が無いとされた場合には、システム用CPUにより処理が引き取られる。
【0058】
次に、システム用CPUによる他基板宛のGET Next Operationについて、より詳細に説明する。図9は、基板30側のMIB情報の一例の構成を示す。このように、基板30内では、ツリー構造でオブジェクトを持つことができる。オブジェクトテーブルは、table#1、#2、・・・で示されるように、ツリーの幹の部分を構成する。図9の例では、オブジェクトテーブルに対して、上位のオブジェクトテーブルから近い順に#1、#2、#3、・・・と番号が付けられる。
【0059】
また、ツリーの葉に相当する部分は、オブジェクトそのものを表す。それぞれのオブジェクトは、ツリー構造を反映するように、そのオブジェクトが属するオブジェクトテーブルに付された番号と、同一テーブルに属するオブジェクトを識別するための通し番号とからなる識別符号が付される。例えば、影が付されたオブジェクトは、「2−1−3」と識別符号が付され、オブジェクトテーブルtable#2の下に属するtable#1の、3番目のオブジェクトであることが分かる。
【0060】
一方、システム用CPUと各基板30、30、・・・との間でなされるGETNext Requestによる通信のために、図10に一例が示される、1バイトのGETN操作用のフィールドが用意される。これら第0〜第7ビットからなる1バイトで、GETN操作用フィールドの値(80H、8H、4H、2H、1Hおよび0)が定義される。値表記における「H」は、その数が16進表記されていることを示す。
【0061】
第0ビットが’1’であれば、GETN操作用フィールドの値が’1H’とされ、オブジェクトを固定して次の同種のCPU(基板30や機能ブロック)に処理が移されることが示される。すなわち、この場合には、同種のオブジェクトが異なるオブジェクトテーブル間で探されることになる。第1ビットが’1’であれば、GETN操作用フィールドの値が’2H’とされ、次のオブジェクトに処理が移されることが示される。すなわち、この場合には、同一オブジェクトテーブル内で、ツリー構造を枝側から葉側へと辿ってオブジェクトが探される。第2ビットが’1’であれば、GETN操作用フィールドの値が’4H’とされ、次のグループに処理が移されることが示される。この場合には、互いに対応する番号のオブジェクトテーブル、例えばtable#1が全て検索の対象とされる。
【0062】
第3ビットが’1’であれば、当該CPU(基板30や機能ブロック)からのデータが終了されたことが示される。また、システム用CPUへのACK応答時には、第7ビットが’1’とされ、GETN操作用フィールドの値が’80H’とされる。なお、このGETN操作用フィールドの値が’0’であれば、システム用CPUから各基板30、30、・・・に対する最初のアクセスであることが示される。
【0063】
SNMPマネージャ2から送られてきたオブジェクトIDと、システム用CPUが保有している基板構成の配列(図5参照)が、装着されている基板30、30、・・・にそれぞれ渡される。基板30側では、{オブジェクトID,システム用CPUが持つその基板のインデックス,GETN操作用のフィールド}の3つの値を用いて、自分宛の要求かどうかが判断される。
【0064】
図11は、基板30におけるオブジェクトIDの一例の判別方法を示すフローチャートである。なお、GETN操作用フィールドの値が’0’であれば、システム用CPUにより最初にこのフローチャートによる処理が行われることが示される。最初のステップS10では、システム用CPUから基板30に対してオブジェクトIDが渡され、基板30では、ROM33に記憶された情報に基づきオブジェクトが検索される。オブジェクトの検索方法については後述するが、このとき、上述したシステム用CPUが持つその基板のインデックス、GETN操作用のフィールドも、オブジェクトIDと共に渡される。
【0065】
次のステップS11で、該当するオブジェクトIDがあるかどうかが判断される。若し、ステップS11で、該当するオブジェクトIDが無いと判断されれば、処理はステップS22に移行する。ステップS22では、GETN操作用フィールドが参照され、値が’1’以下であれば、値が’1’にセットされる。そして、処理はステップS19に移行し、基板30からシステム用CPUに応答される。
【0066】
一方、ステップS11で、該当するオブジェクトIDがあると判断されれば、処理はステップS12に移行する。ステップS12では、そのオブジェクトが葉であるかどうかが判断される。若し、葉ではないと判断されれば、当該オブジェクトは、オブジェクトテーブルであるので、処理はステップS13に移行し、そのオブジェクトテーブル内での最初のオブジェクトが検索される。そして、処理はステップS11に戻され、ステップS13での検索結果に基づく判断がなされる。
【0067】
一方、ステップS12で、検索されたオブジェクトが葉であると判断されれば、処理はステップS14に移行し、GETN操作用フィールドの値が’1’以下であるかどうかが判断される。若し、’1’以下であると判断されれば、処理はステップS15に移行し、オブジェクト内に任意の値のインデックス’p’があるかどうかが判断される。
【0068】
若し、ステップS15でインデックス’p’がオブジェクト内に見つかれば、ステップS17で、その値’p’とシステム用CPUから指定されたインデックス’q’とが比較される。比較の結果、(’p’<’q’)であれば、処理はステップS22に移行し、GETN操作用フィールドの値が’1’以下であれば’1’とされ、基板30からシステム用CPUに対して応答される。
【0069】
なお、ステップS15でインデックス’p’がオブジェクト内に見つからなかったときには、システム用CPUから指定されたインデックス’q’に基づき’q−1’がインデックス’p’とされ、処理はステップS17に移行する。
【0070】
一方、ステップS17で、値’p’と’q’との比較の結果、(’p’≧’q’)であれば、処理はステップS18に移行し、オブジェクトIDが決定されると共に、インデックスに’q’が採用される。そして、処理はステップS19に移行し、基板30からシステム用CPUに応答される。
【0071】
また、上述のステップS14において、GETN操作用フィールドの値が’1’以下でないと判断された場合、処理はステップS20に移行する。ステップS20では、GETN操作用フィールドの値に基づき、次のオブジェクトあるいは次のグループが検索される。検索結果は、次のステップS21で判断される。次のオブジェクトあるいはグループに目的のオブジェクトが見つかった場合には、処理はステップS18に移行し、オブジェクトIDが決定されると共に、インデックスとしてシステム用CPUから指定された’q’が採用される。
【0072】
一方、ステップS21において、次のオブジェクトあるいはグループに目的のオブジェクトが見つからないと判断された場合には、処理はステップS22に移行し、GETN操作用フィールドが’1’以下であれば’1’にされてステップS19でシステム用CPUに応答される。
【0073】
なお、上述の図11のフローチャートによる処理おいて、システム用CPUから最初にデータを渡された基板30で該当するオブジェクトが見つかった場合、システム用CPUからSNMPマネージャ2に対して応答される。一方、該当するオブジェクトが見つからなかった場合には、基板30側でGETN操作用フィールドの値が’1’とされ、基板30からシステム用CPUに対して’NACK’が返される。また、連続したGET Next Operationが既に参照された基板30’に渡された場合にも、基板30’においてGETN操作用フィールドの値が適当な値にされ、基板30’からシステム用CPUに対して’NACK’が返される。
【0074】
また、SNMPマネージャ2からシステム用CPUに送られたGET Next Operationは、必ず、システム基板10のシステム用CPU経由で、対応する種類の基板中で最もインデックスが小さい基板に渡される。例えば、上述のビデオプロセッサ3において、スロット11A、11B・・・の順にインデックスが割り当てられるとすれば、同種の基板のうち最も小さいインデックス値が割り当てられるスロットに装着されている基板に、GET Next Operationによる指示が渡される。
【0075】
次に、図12のフローチャートを用いて、上述した図11のステップS19で基板30からの応答を受け取った、システム用CPUにおける処理について説明する。最初のステップS70で、基板30からの応答がシステム用CPUに受け取られる。そして、ステップS71、S72およびS73において、GETN操作用フィールドの値に基づき処理が分岐される。
【0076】
ステップS71では、GETN操作用フィールドの値が’80H’以上であるかどうかが判断される。若し、’80H’以上であれば、処理はステップS80に移行し、システム用CPUにおいて、GETN操作用フィールドに対応したSNMPパケットが生成される。生成されたSNMPパケットは、次のステップS87でシステム用CPUからSNMPマネージャ2に送信される。
【0077】
ステップS71で、GETN操作用フィールドの値が’80H’以上ではないと判断されれば、処理はステップS72に移行する。ステップS72では、GETN操作用フィールドの値が’1H’乃至’4H’であるかどうかが判断される。若し、’1H’乃至’4H’であれば、処理はステップS81に移行し、当該応答を渡した基板30が同種基板のうち最後の基板であるかどうかが判断される。これは、例えば当該基板のインデックスと、システム用CPUが保持する基板構成配列(図5参照)における当該基板と同種類の基板枚数を比較することで、判断できる。
【0078】
ステップS81の判断において、若し、当該基板30が同種類の基板のうち最後の基板であると判断されれば、処理はステップS82に移行する。ステップS82では、GETN操作用フィールドが1ビット左にシフトされ、再び同一の基板30にデータが渡される。そして、基板30において、ビットが左にシフトされたGETN操作用フィールドに基づき、上述した図11による処理がなされる。
【0079】
一方、ステップS81で当該基板30が同種類の基板のうち最後の基板で無いと判断されれば、処理はステップS83に移行する。ステップS83では、インデックスが次の番号の同種基板に、システム用CPUが受け取ったデータをそのまま渡す。そして、基板30において、渡されたデータに基づき、上述した図11による処理がなされる。
【0080】
ステップS72でGETN操作用フィールドの値が’1H’乃至’4H’でないと判断されれば、処理はステップS73に移行する。ステップS73では、GETN操作用フィールドの値が’8H’であるかどうかが判断される。若し、’8H’で無いとされれば、ステップS74で、エラーが発生したと判断される。
【0081】
GETN操作用フィールドの値が’8H’であると判断されれば、処理はステップS84に移行する。ステップS84では、対象になっている基板種類以降の基板が装着されているかどうかが判断される。例えば、システム用CPUにおいて、上述の図5の基板構成配列が参照され、対象となっている基板種類のグループ番号より大きいグループ番号の基板が装着されているかどうかが判断される。
【0082】
若し、対象になっている基板種類以降の基板が装着されていると判断されれば、処理はステップS85に移行する。そして、ステップS85で、システム用CPUにおいてGETN操作用フィールドがリセットされ値が’0’とされ、次の種類の基板にデータが渡される。
【0083】
一方、ステップS84で、対象になっている基板種類以降の基板が装着されていないと判断されれば、処理はステップS86に移行する。ステップS86では、システム用CPU側で、MIBの最後であることを通知するパケットが生成される。そして、処理はステップS87に移行し、そのパケットがSNMPマネージャ2に送信される。
【0084】
次に、基板30における被プロキシ・エージェント側での処理について説明する。基板30は、上述した図9に一例が示されるようなMIB情報を有する。このMIB情報は、SNMPによるMIB情報がこの基板30独自の形式に変換されて、基板30に保持される。MIB情報は、例えばROM33に予め記憶され、基板30に保持される。なお、同種類の基板であっても、バージョンなどの違いにより、新たなオブジェクトが追加される場合がある。図9においては、塗り潰されたオブジェクト2−1−3がそれに相当する。すなわち、同種類の他のバージョンの基板30’には無いオブジェクト2−1−3が、この基板30には存在している。
【0085】
図13は、システム用CPUから基板30に渡される一例の情報を示す。データ名modeは、SNMPの問い合わせ方法であって、上述したGET/GETN/SETの何れを用いてSNMPが問い合わせられたかが記される。データ名cmd_ctlは、SNMP時のコマンドコントロールフィールドであって、1バイトが設けられ、上述したGETN操作用フィールドが記される。
【0086】
データ名board_idxは、同種基板の識別子である同種基板識別用インデックスが記され、データ名board_maxは、同種基板が現在筐体内に装着されている枚数が記される。これらboard_idxおよびboard_maxを用いることにより、システム用CPUから渡されたデータに対してどのような処理を行えばよいかを、基板30側で独自に判断することができる。
【0087】
データ名cmd_lenは、オブジェクトIDのデータ長が記される。cmdは、実際のオブジェクトIDのデータ列が記される。
【0088】
図14、図15、図16および図17を用いて、上述した、基板30側でのオブジェクトの検索方法について説明する。図14、図15および図16は、それぞれGETN操作用フィールドの値が’1H’以下、’2H’、’4H’または’8H’の場合のフローチャートである。また、図17は、図14に示すGETN操作用のフィールドの値が’1H’の場合の検索方法を説明するための、一例のMIB構造を示す。
【0089】
なお、図17に一例が示されるMIBツリーにおいて、長方形はオブジェクトテーブルを示し、テーブルの下に、そのテーブルに対応するオブジェクトIDの、基板種類識別番号である’x’以下の部分を記す。また、最も深い階層をn=1として、一つ浅い階層に移動する毎に、nを1ずつ増加させる。最も深い位置のテーブルがある階層を1として、MIBツリーを根(ルート)の方に上がっていったときに、その基板のトップ(根元)の階層に対応する値をリミット値と呼ぶ。この図17の例では、リミット値は、n=4である。
【0090】
図14は、GETN操作用フィールドの値が’1H’以下の場合の、オブジェクトの一例の検索方法を示す。より深い階層から検索するために、先ず、オブジェクトテーブルtable#nの検索基準として、n=1に設定される(ステップS30)。図17におけるテーブルA、Bが最初の検索対象とするために、このように設定する。次のステップS31で、nが所定のリミット値以下であるかどうかが判断される。nがリミット値以下ではないと判断されれば、処理はステップS40に移行し、当該基板30内に該当するオブジェクトが無いとされ、一連の処理が終了される。
【0091】
一方、ステップS31で、nがリミット位置以下であると判断されれば、処理はステップS32に移行する。ステップS32では、table#nが検索される。そして、ステップS33で、検索されたtable#nのオブジェクトIDがシステム用CPUから受け取ったオブジェクトIDに完全に含まれるかどうかが判断される。若し、検索されたtable#nがこの条件を満たしていないと判断されれば、ステップS34でnを1つ増して、処理がステップS31に戻される。
【0092】
一方、ステップS33で、table#nが条件を満たしていると判断されれば、処理はステップS35に移行する。システム用CPUから受け取ったオブジェクトIDの長さが上述したステップS33で見つかったテーブルのオブジェクトIDよりも短いと判断されれば、処理はステップS36に移行する。ステップS36では、table#n内から、辞書式順序で以て最も小さなオブジェクトが取り出される。そして、次のステップS37でオブジェクトが発見されたとされる。
【0093】
一方、上述したステップS35で、システム用CPUから受け取ったオブジェクトIDの長さが上述したステップS33で見つかったテーブルのオブジェクトIDよりも長いと判断されれば、処理はステップS39に移行する。この場合には、システム用CPUから受け取ったオブジェクトIDがtable#nのオブジェクトIDよりもデータ長が長く、さらに細部までオブジェクトの指定がなされていることになるので、オブジェクトテーブルからオブジェクトを直接的に取り出すことができる。ステップS39では、table#1内から該当するオブジェクトが取り出され、処理がステップS37に移行される。
【0094】
上述の処理を、より具体的な例を用いて説明する。ここでは、システム用CPUから送られたオブジェクトIDが{6004.x.5.1.y}(前半は省略する)であるものとして説明する。リミット値nは、n=4である。オブジェクトID{6004.x.5.1.y}において、n=1に対応する値は’y’、n=2に対応する値は’1’、n=3に対応する値は’5’となる。オブジェクトIDにおいて、nに応じて、それぞれの階層に対応する長さまで、テーブル検索時に一致している必要がある。上述したように、より深い階層から検索を行うために、ステップS30によりn=1に設定される。図17におけるテーブルA、Bを最初の検索対象とするために、このように設定する。
【0095】
ステップS33により、n=1の階層では、オブジェクトID{6004.x.5.1.y}が含むオブジェクトIDを持つテーブルが存在しなかったので、ステップS34によりnを1つ増やしてn=2として、一つ上の階層について検索が試みられる。
【0096】
検索の結果、n=2の階層において、テーブルC、DおよびEにはオブジェクトID{6004.x.5.1.y}が含むn=2の階層までの長さのオブジェクトIDが存在しなかったので、続いてテーブルFについてオブジェクトID{6004.x.5.1.y}がテーブルのオブジェクトID{6004.x.5.1}を含むかどうかが調べられる。テーブルFのオブジェクトIDは、{x.5.1}であり、オブジェクトID{6004.x.5.1}に含まれることが分かる(ステップS35)。処理はステップS39に移行してテーブルFからオブジェクトが取り出され、ステップS37でオブジェクトが発見されたとされる。
【0097】
図15は、GETN操作用フィールドの値が’2H’の場合の、オブジェクトの一例の検索方法を示す。ここでは、table#1についてオブジェクトを検索する場合について説明する。先ず、最初のステップS50で、table#1のうち、オブジェクトIDがシステム用CPUから受け取ったオブジェクトIDに完全に含まれているオブジェクトテーブルが検索される。検索の結果に基づき、ステップS51で、一致するテーブルが存在しないと判断されれば、処理はステップS55に移行し、該当するオブジェクトが存在しないとされる。
【0098】
一方、ステップS51で、一致するテーブルが存在すると判断されれば、処理はステップS52に移行し、table#1から該当するオブジェクトが取り出される。そして、次のステップS53で、このMIBテーブル(図9参照)において、取り出された次のオブジェクトが葉であるかどうかが判断される。若し、葉であると判断されれば、その葉であるオブジェクトが求めるオブジェクトであるとして、オブジェクトが発見されたとされる(ステップS54)。
【0099】
一方、ステップS53で、次のオブジェクトが葉ではないと判断されれば、現在検索中のテーブル内には該当するオブジェクトが無いので、処理はステップS55に移行する。
【0100】
図16は、GETN操作用フィールドの値が’4H’または’8H’の場合の、オブジェクトの一例の検索方法を示す。ここでは、table#1についてオブジェクトを検索する場合について説明する。先ず、最初のステップS60で、table#1のうち、オブジェクトIDがシステム用CPUから受け取ったオブジェクトIDに完全に含まれているオブジェクトテーブルが検索される。検索の結果に基づき、ステップS61で、一致するテーブルが存在しないと判断されれば、処理はステップS65に移行し、該当するオブジェクトが存在しないとされる。
【0101】
一方、ステップS61で、一致するtable#1が存在すると判断されれば、処理はステップS62に移行し、辞書式順序で、次のtable#1が検索される。検索結果に基づき、次のステップS63で、次のtable#1が存在するかどうかが判断される。若し、次のtable#1が存在すると判断されれば、処理は次のステップS64に移行し、見つかったtable#1内で最初のオブジェクトが該当オブジェクトとされる。
【0102】
一方、ステップS63で、次のtable#1が存在しないと判断されれば、処理はステップS65に移行し、該当するオブジェクトが存在しないとされる。
【0103】
なお、GETN操作用フィールドの値が’4H’の処理が終了したら、次にGETN操作用フィールドの値が’8H’の処理が行われ、図16の処理が2回繰り返されることになる。これは、オブジェクトの検索ミスを防止するための処理であって、GETN操作用フィールドの値が’8H’の場合の検索処理を行わなくても、正常に動作する。
【0104】
図14、図15および図16を用いて上述したような方法でオブジェクトを検索することにより、同種基板で新たなオブジェクトが追加された基板と、新たな基板が追加されていない以前のバージョンの基板とが同一筐体内に共存する場合でも、オブジェクトの抜けが無く、GET Next Operationを動作させることができる。
【0105】
なお、上述の動作を保証するためには、新規オブジェクトの追加および削除作業を正しく行う必要がある。例えば、新規オブジェクトの追加および削除作業を行う際の制限事項として、以下の3項目が設けられる。
(1)既存のオブジェクトのオブジェクトIDを変更してはならない。
(2)オブジェクトが不要になった、あるいは、オブジェクトが削除された場合は、当該オブジェクトのオブジェクトIDを欠番として残しておく。
(3)むやみに深い階層にオブジェクトを追加しない。
【0106】
図18、図19および図20は、好ましくないオブジェクト追加および削除方法の例を示す。図18は、上述した(1)の項目に対応し、オブジェクトを追加する際に既存のオブジェクトのオブジェクトIDを変更してしまった例である。図18Aに示される、table#1の下にある既存のオブジェクト1−1、1−2および1−3を考える。この構成に対して、1−1の前にオブジェクトが挿入されると、図18Bのようになり、既存のオブジェクト1−1、1−2および1−3がオブジェクト1−2、1−3および1−4にシフトされ、新たに挿入追加されたオブジェクトがオブジェクト1−1となっている。この場合には、オブジェクトIDによるオブジェクトの検索を行ったときに、正しいオブジェクトが検索されないおそれがある。
【0107】
図19は、上述した(2)の項目に対応し、オブジェクトを削除した際に、既存のオブジェクトが繰り上げられた例である。図19Aに示される、table#1の下にあるオブジェクト2−1、2−2および2−3を考える。この状態から、オブジェクト2−1が削除され、図19Bに示されるように、既存のオブジェクト2−2および2−3がそれぞれオブジェクト2−1および2−2と、オブジェクトIDが繰り上がっている。この場合にも、上述と同様に、オブジェクトIDによるオブジェクトの検索を行ったときに、正しいオブジェクトが検索されないおそれがある。
【0108】
図20は、上述した(3)の項目に対応し、非常に深い階層にオブジェクトが追加された例である。この場合には、オブジェクトの検索に非常に時間がかかってしまうおそれがある。例えば、オブジェクト3−2−1を検索するためには、table#6、table#5、table#4、table#3、table#2およびtable#1と、階層を辿らなくてはいけない。
【0109】
なお、上述した(1)、(2)および(3)の制限は、IANA(Internet Assigned Numbers Authority)により定義されたものである。この制限に準じない方法でオブジェクトを追加あるいは削除した場合には、この発明により組み込まれたプロキシ・エージェントが正常に動作しない可能性がある。
【0110】
上述では、この発明がディジタルビデオおよびオーディオ信号を処理するエンコーダ・デコーダに適用されるように説明したが、これはこの例に限定されない。例えば、この発明は、パーソナルコンピュータといったコンピュータ装置のスロットに装着されて使用される、拡張カードにも適用することができる。この場合には、パーソナルコンピュータのスロットに装着された拡張カードを、MIBによって管理することができるようになる。
【0111】
【発明の効果】
以上説明したように、この発明は、SNMPマネージャにプロキシ・エージェントを介して管理される各基板側がMIBによる管理対象となるオブジェクトを持っているので、プロキシ・エージェント側で、各基板それぞれに特有のオブジェクトに関する情報から解放されるという効果がある。
【0112】
これにより、新たな基板が開発された場合でも、プロキシ・エージェントに手を加えることなく、SNMPマネージャが持つMIB定義ファイルを変更するだけで、オブジェクトを追加することができる効果がある。
【図面の簡単な説明】
【図1】この発明を適用可能な一例のシステムを示すブロック図である。
【図2】ビデオプロセッサに装着可能な基板の例を示す略線図である。
【図3】MIB一例の構成を示す略線図である。
【図4】ビデオプロセッサに装着される基板の一例の構成を概略的に示すブロック図である。
【図5】ビデオプロセッサにおける識別番号の一例の配列の内容を示す略線図である。
【図6】オブジェクトIDの一例の構造を示す略線図である。
【図7】GET/SET Requestの場合の一例のデータ遷移図を示す略線図である。
【図8】GET Next Requestの場合の一例のデータ遷移図を示す略線図である。
【図9】基板側のMIB情報オブジェクトの一例の構成を示す略線図である。
【図10】GETN操作用のフィールドの一例を示す略線図である。
【図11】基板におけるオブジェクトIDの一例の判別方法を示すフローチャートである。
【図12】基板からの応答を受け取ったシステム用CPUにおける一例の処理を示すフローチャートである。
【図13】システム用CPUから基板に渡される一例の情報を示す略線図である。
【図14】GETN操作用フィールドの値が’1H’以下の場合のオブジェクトの一例の検索方法を示すフローチャートである。
【図15】GETN操作用フィールドの値が’2H’の場合のオブジェクトの一例の検索方法を示すフローチャートである。
【図16】GETN操作用フィールドの値が’4H’または’8H’の場合のオブジェクトの一例の検索方法を示すフローチャートである。
【図17】GETN操作用のフィールドの値が’1H’の場合の検索方法を説明するための、一例のMIB構造を示す略線図である。
【図18】オブジェクトを追加する際に既存のオブジェクトのオブジェクトIDを変更してしまった例を示す略線図である。
【図19】オブジェクトを削除した際に既存のオブジェクトが繰り上げられた例を示す略線図である。
【図20】非常に深い階層にオブジェクトが追加された例を示す略線図である。
【図21】プロキシエージェントによる一例のアーキテクチャを示すブロック図である。
【符号の説明】
2・・・SNMPマネージャ、3・・・SNMPエージェント、10・・・プロキシ・エージェント、11A,11B,11C,11D,11E・・・スロット、30,30A,30B,30C,30D・・・基板、32・・・CPU、33・・・ROM、34・・・通信インターフェイス、35・・・コネクタ、36・・・機能部
[0001]
BACKGROUND OF THE INVENTION
  The present invention relates to a built-in device that can flexibly cope with a change in a configuration of a managed device when managing the embedded electronic device connected to the network and installed in the housing using SNMP (Simple Network Management Protocol). Type electronic equipmentEmbedded electronic device and method for managing embedded electronic deviceAbout.
[0002]
[Prior art]
Currently, SNMP (Simple Network Management Protocol) is provided as a protocol for managing devices connected to a network using TCP / IP (Transmission Control Protocol / Internet Protocol). In SNMP, a protocol between a network monitoring terminal activated by a system administrator (referred to as an SNMP manager) and a device on a network on which SNMP is implemented (referred to as an SNMP agent) is defined. In SNMP, when an SNMP manager accesses information held by an SNMP agent called MIB (Management Information Base), the status of a device can be grasped and definition information set in the device can be changed. By using SNMP, it is possible to easily manage a complex network from the SNMP manager.
[0003]
On the other hand, with the widespread use of network environments, it has been proposed to manage not only information devices such as computers but also video devices used in, for example, broadcasting stations by network connection using TCP / IP. At this time, in order to manage a device that does not have an SNMP agent function, such as a device that does not have an SNMP agent function, by SNMP, it is necessary to provide a device that has an SNMP agent function as a proxy agent. That is, the proxy agent mediates between a device that does not have an SNMP agent function and SNMP, and enables management of the device by SNMP.
[0004]
FIG. 21 shows an example architecture of this proxy agent. The SNMP manager 300 manages the device 320 corresponding to the unique management interface via the proxy agent 310.
[0005]
For example, when a command or data (hereinafter referred to as a command) is transmitted from the SNMP manager 300 to the device 320, the command issued by the management application 301 on the SNMP manager 300 side is sent from the protocol stack 303 by the client stub 302. The protocol is interpreted, converted into SNMP, and transmitted from the SNMP manager 300. The command converted into SNMP is received by the proxy agent 310 and supplied to the proxy agent application 311 via the protocol stack 313 and the server stub 312.
[0006]
On the other hand, the device 320 is managed by a unique management interface 321 using a protocol different from SNMP. The SNMP transmitted from the SNMP manager 300 is converted by the proxy agent application 311 into a protocol corresponding to the unique management interface 321 of the device 320 using the protocol stack 315 by the client proxy stub 314. The protocol-converted command is transmitted to the device 320 and received by the management interface 321.
[0007]
As described above, the SNMP manager 300 can manage the device 320 by mediating between the SNMP manager 300 and the SNMP non-compliant device 320 by the proxy agent 310.
[0008]
[Problems to be solved by the invention]
However, in this case, there is a problem that the proxy agent 310 needs to grasp all the management items related to the managed device 320 (assumed to be a proxy agent).
[0009]
  In addition, the proxied agentThere are many types and multiple typesAssuming a situation in which the configuration of management items changes according to needs, a new proxyed agent is developed and management items are added, the proxy agent application 311 in the proxy agent 310 is However, there is a problem that it is necessary to cope with the function expansion by upgrading the version.
[0010]
  Accordingly, an object of the present invention is to provide an embedded electronic device whose function can be easily expanded when a device that does not support SNMP is managed using SNMP.Embedded electronic device and method for managing embedded electronic deviceIs to provide.
[0011]
[Means for Solving the Problems]
  In order to solve the above-described problems, the present inventionCommunication between a system board having a system CPU and memory having a function of a proxy agent in which SNMP is installed, a plurality of embedded means for connecting a plurality of embedded electronic devices, and an SNMP manager via a network First communication means for performing the conversion, conversion means for converting the object ID based on SNMP into a protocol different from SNMP, the types of the plurality of embedded electronic devices incorporated by the plurality of incorporation means, and the number of each type Device information acquisition means and second communication means for communicating with a plurality of embedded electronic devices using a protocol different from SNMP, and the device information acquisition means includes a plurality of information in a predetermined cycle. Scan the embedded electronic device, obtain the types of a plurality of embedded electronic devices incorporated by a plurality of incorporating means and the number of each type, Mori holds as an array in which the number of each type of embedded electronic device acquired and an identifier for identifying each embedded electronic device are associated, and when the object ID is supplied from the SNMP manager , By referring to an identifier indicating the type of embedded electronic device among the object IDs, the embedded electronic device to be inquired is specified from the array held in the memory, and the embedded electronic to be inquired about When a device is installed, the object ID is passed to the embedded electronic device to be inquired.It is an embedded electronic device.
[0012]
  In addition, this inventionHaving object information storage means for storing object information;
  Embedded electronic device whose object information indicates an object to be managed by the SNMP manager via the embedded electronic deviceIt is.
[0013]
  In addition, this inventionA built-in step for connecting a plurality of embedded electronic devices, a first communication step for communicating with an SNMP manager via a network, and converting an object ID based on SNMP into a protocol different from SNMP The step of conversion, the step of acquiring device information for acquiring the types of a plurality of embedded electronic devices incorporated by a plurality of embedded means, and the number of each type, and SNMP for a plurality of embedded electronic devices And a second communication step for performing communication using a different protocol, and the device information is provided by an embedded electronic device having a system board having a system CPU and a memory having a function of a proxy agent in which SNMP is implemented. In the acquisition step, a plurality of embedded electronic devices are scanned at a predetermined cycle, and a plurality of embedded means are used. The type of a plurality of built-in electronic devices and the number of each type are obtained, and the memory is an identifier for identifying the number of each type of the plurality of built-in electronic devices and each built-in electronic device. Is stored as an associated array, and when the object ID is supplied from the SNMP manager, by referring to the identifier indicating the type of the embedded electronic device among the object IDs, from the array stored in the memory, An embedded electronic device that identifies an embedded electronic device to be inquired and passes an object ID to the embedded electronic device to be inquired when the embedded electronic device to be inquired is incorporated Device management methodIt is.
[0014]
  In addition, this inventionA group identifier grouped according to the CPU of the embedded electronic device and the type of embedded electronic device incorporated in the embedded electronic device is arranged, and the value of the group identifier indicating the type of embedded electronic device is Using the object ID representing the MIB structure that is larger than the value of the group identifier indicating the CPU of the embedded electronic device, the embedded electronic device embedded in the embedded electronic device is replaced with the embedded electronic device. For managing embedded electronic devices managed by SNMP managerIt is.
[0015]
  As described above, the present inventionThe device information acquisition unit scans a plurality of embedded electronic devices at a predetermined cycle, acquires the types of a plurality of embedded electronic devices incorporated by the plurality of integration units and the number of each type, and the memory When the object ID is supplied from the SNMP manager, the object ID is stored as an array in which the number for each type of the plurality of embedded electronic devices acquired is associated with an identifier for identifying each embedded electronic device. By referring to the identifier indicating the type of embedded electronic device, the embedded electronic device to be inquired is identified from the array stored in the memory, and the embedded electronic device to be inquired is incorporated. The object ID to the embedded electronic device that is the subject of the inquiry.Since it is handed over, it is easy to expand the embedded electronic device in the housing.
[0016]
  In addition, this inventionThe embedded electronic device has object information storage means for storing object information, and the object information indicates an object to be managed by the SNMP manager via the embedded electronic device.Therefore, there is no need to have object information outside the object management.
[0017]
  In addition, this inventionA group identifier grouped according to the CPU of the embedded electronic device and the type of embedded electronic device incorporated in the embedded electronic device is arranged, and the value of the group identifier indicating the type of embedded electronic device is Using the object ID representing the MIB structure that is larger than the value of the group identifier indicating the CPU of the embedded electronic device, the embedded electronic device embedded in the embedded electronic device is replaced with the embedded electronic device. Via SNMP managerSince it manages, the embedded electronic device incorporated in the embedded electronic device can be managed using MIB.
[0018]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an embodiment of the present invention will be described with reference to the drawings. FIG. 1 shows an example system to which the present invention is applicable. An SNMP manager 2 and an SNMP agent 3 are connected to the network 1. Between the SNMP manager 2 and the SNMP agent 3, SNMP standard operations and event notifications are exchanged via the network 1.
[0019]
In this embodiment, the SNMP agent 3 is a video processor 3 compatible with, for example, MPEG2 (Moving Pictures Experts Group 2) system. As will be described later, the video processor 3 performs processing according to the function of the board incorporated therein. In the example of FIG. 1, the video processor 3 has a function of encoding the input digital video signal and digital audio signal in a predetermined manner and outputting it as a transport stream according to the MPEG2 system. The video processor 3 has a function of decoding the input MPEG2 transport stream in a predetermined manner and outputting it as, for example, a standard digital video signal and digital audio signal.
[0020]
In the video processor 3, the system board 10 is connected to the bus 20. Although not shown, the system board 10 is equipped with three CPUs: a system CPU (Central Processing Unit), a multiplex CPU, and a statistical multiplexing CPU, and each CPU realizes a predetermined function. A plurality of slots 11A, 11B, 11C, 11D, and 11E are connected to the bus 20.
.. Are attached to the bus 20 in a predetermined manner by attaching the boards 30, 30,... To these slots 11A, 11B,. The functions of 30, ... become effective.
[0021]
In FIG. 1, the substrates 30, 30,... Are distinguished from the substrates 30A, 30B,.
[0022]
In the example of FIG. 1, boards 30A (ENC (1)), 30B (ENC (2)) and 30D (ENC (3), which are video encoders corresponding to the standard resolution video signal (SD), are inserted into slots 11A, 11B and 11E. )) Is mounted, and the board 30C (APR (1)), which is an audio encoder, is mounted in the slot 11D. For example, the system board 10 has an input / output interface function, and a signal input to the system board is supplied to the boards 30 </ b> A to 30 </ b> D via the bus 20. In the example of FIG. 1, the board 30 is not mounted in the slot 11 </ b> C marked “φ”.
[0023]
As described above, the video processor 3 can perform processing according to the function of the board 30 mounted in the slots 11A to 11E. FIG. 2 shows an example of a substrate 30 that can be mounted on the video processor 3. An identification number is assigned to each of the substrates 30, 30,... According to the type of the substrate 30. The board OPM is the system board 10, and identification numbers 1, 2, and 3 are assigned to the system CPU, the multiplex CPU, and the statistical multiplexing CPU mounted on the system board 10, respectively. Thus, identification numbers are assigned to the system board 10 in order from the smallest identification number.
[0024]
On the other hand, each board 30, 30,... Is assigned an identification number for each type of board 30 from the next value of the identification number of the system board 10. The board IPM is an input part of the transport stream, and the identification number is 4. The substrate ENC that is an encoder has an identification number of 5. The substrate VPR is a video encoder corresponding to a high-definition resolution video signal (HD), and has an identification number of 6. The substrate DEC is a video decoder and has an identification number of 7. The board APR, which is an audio encoder, has an identification number of 8.
[0025]
In this example, up to the identification number 8 is reserved in this way, and the identification numbers after the ninth are sequentially assigned to newly developed boards.
[0026]
In the above description, the video processor 3 is provided with five slots and five boards can be mounted. However, this is not limited to this example. For example, a different number of slots can be provided depending on the size of the housing. The slots 11A, 11B,... Can be hot-plugged and unplugged, and the status of the slots 11A, 11B,... Can change even when the video processor 3 is operating. That is, the substrate 30 mounted in the slots 11A, 11B,... May be changed during the operation of the video processor 3. Furthermore, the video processor 3 can select a substrate 30 having a necessary function according to the application, and can mount a plurality of types and a plurality of substrates 30 in the housing.
[0027]
  Among the boards described above with reference to FIG. 2, SNMP is mounted, that is, transmission / reception by SNMP is possible, and ANS. Only the system CPU on the system board 10 (board OPM) has one codec function (SNMP packet codec function), and has an external communication port.Has only system CPUIt is. Therefore, the system board 10 becomes an SNMP proxy agent. In practice, the system CPU on the system board 10 functions as a proxy agent.This system board 10(Substrate OPM) is essential in the configuration of the video processor 3.
[0028]
The management of the video processor 3 by the SNMP manager 2 is performed in the same manner as the method described with reference to FIG. That is, communication is performed between the SNMP manager 2 and the system board 10 via the network 1 using the system board 10 as a proxy agent, and standard operation commands and event notifications by SNMP are exchanged. In the system board 10, for example, operation commands and event notifications sent by SNMP from the SNMP manager 2 are converted into operation commands and event notifications unique to the video processor 3. These converted commands and notifications are supplied to the respective boards 30, 30,... Mounted in the slots 11A, 11B,. In addition, commands and event notifications unique to the video processor 3 output from the respective boards 30, 30,... Are supplied to the system board 10 via the bus 20 and converted into commands and event notifications by SNMP. The converted command or event notification is sent to the SNMP manager 2 via the network 1.
[0029]
In this embodiment, the objects of the boards 30, 30,... Mounted in the slots 11A, 11B,... Of the video processor 3 are respectively on the boards 30, 30,. Have. In this way, the system CPU on the system board 10 which is a proxy agent has information about the objects specific to the objects of the boards 30, 30,... Mounted in the slots 11A, 11B,. Released from.
[0030]
Here, the object refers to an item in the MIB. For example, in the substrate ENC, which is the encoder described above, each of the SNMP commands for encoder parameters such as “bit rate”, “sampling rate”, and “input signal type” is an object. That is, the object is a management target by the SNMP manager 2.
[0031]
FIG. 3 shows a configuration of an example MIB. MIB is standardized worldwide and has a tree structure. In the example of FIG. 3, the highest level is the Internet (Internet (1)), and a tree is formed below it. Although illustration is omitted, in reality, “internet (1)” is also a part of a higher-level tree structure. The hierarchy above “enterprise (1)” is a global hierarchy. A layer lower than “xxx (n)” is a vendor-local layer. For example, a product of xxx is located below “xxx (n)”. Moreover, each board | substrate 30,30, ... mounted | worn with the above-mentioned video processor 3 ("yyyy (6004)" in FIG. 3) which is a product of xxx company is located in a layer lower than "yyyy (6004)". .
[0032]
A value written in parentheses “()” in each branch of the tree structure is an identifier for identifying a MIB object in each layer. Each branch of the tree structure is uniquely expressed from the upper level to the lower level by an identifier of each layer and a period (.) Which is a delimiter identifier for distinguishing each layer from each other. For example, the lowermost substrate ENC (7) is represented as “1.4.1.n.6004.7”. Actually, it is expressed as “1.3.6.1.4.1.n.6004.7” using an identifier from a higher hierarchy. This is referred to as an object ID.
[0033]
.., Which are mounted on the video processor 3, are assigned an identifier for each type, and an object group is divided for each type of substrate. In FIG. 3, an object having subscripts 3 or more in parentheses () shown below the object “SYS / OPM (3)” corresponds to this.
[0034]
When a substrate 30 having a new function is developed, a different identifier is given, and objects are displayed as shown in FIG. 3 as “??? (11)” and “?????? (12)”. Can be increased. At this time, since the board 30 side has the object, the object can be added only by changing the MIB definition file of the SNMP manager 2 without changing the proxy agent. Thereby, the MIB monitoring of the added substrate 30 is also possible.
[0035]
As described above, the system board 10 has three CPUs for each function, and identifiers are also assigned to these three CPUs.
[0036]
Further, although not shown, each of the substrates can have an object at a lower level. For example, each management command by the SNMP manager 2 for each board is an object. Each board can have objects hierarchically. Subordinate objects are referred to by an object table in which pointers to the objects are written.
[0037]
FIG. 4 schematically shows an example of the configuration of the board 30 mounted on the video processor 3. The substrate 30 includes a bus 31, and a CPU 32, a ROM (Read Only Memory) 33, and a communication interface 34 are connected to the bus 31. The communication interface 34 is connected to the connector 35. A functional unit 36 that controls the main functions of the board 30 is connected to the bus 31. When the substrate 30 is the encoder substrate ENC described above, a digital video signal supplied from the outside is input to the function unit 36, subjected to predetermined encoding processing, and output from the function unit 36. When the connector 35 is inserted into the slots 11A, 11B,..., The board 30 and the system board 10 are electrically coupled. For example, commands output from three CPUs mounted on the system board 10 are supplied from the connector 35 to the communication interface 34 and passed to the CPU 32 via the bus 31. Based on this command, the CPU 32 controls the function unit 36 and performs predetermined processing on the signal input to the function unit 36.
[0038]
In such a configuration, object information is stored in advance in the ROM 33, for example. The information stored in the ROM 33 is read, for example, under the control of the CPU 32 based on a command from the system CPU mounted on the system board 10 and is passed to the system board 10 via the communication unit 34 and the connector.
[0039]
Next, an installation method on the system board 10 side, that is, the proxy agent side will be described. A system CPU having a proxy agent function on the system board 10 scans all the slots 11A, 11B,... Connected to the bus 20 at a certain period, and mounts each of the boards 30 for each type. It is investigated whether it is done. In the system CPU, for example, a memory (not shown) is used, and an array larger than the number of types of substrates 30 is prepared in advance, and the identification number shown in FIG. 2 and the number of substrates 30 indicated by the identification number are associated with each other. Held.
[0040]
FIG. 5 shows the contents of an example of an identification number in the video processor 3 shown in FIG. The identifiers 3, 4, and 5 correspond to the three CPUs on the system board 10, respectively, and the number is one. In the video processor 3 of FIG. 1, since three substrates ENC and one substrate APR are mounted, the corresponding identifiers 7 and 10 are 3 and 1, respectively. The number of the boards 30 having other identifiers is 0 because they are not mounted.
[0041]
An inquiry from the SNMP manager 2 to each board mounted on the video processor 3 is made using the object ID described above. For example, when an inquiry is made to the substrate ENC, the object ID {1.3.3.6.4.1. n. 6004.7. *} Is used. The “*” next to the identifier “7” indicating the type of substrate indicates that an identifier of an arbitrary length is allowed. In addition, an index indicating more detailed items for each board type can be attached to the end of the object ID. For example, when a plurality of substrates 30 of the same type are mounted, they can be distinguished using an index.
[0042]
The inquiry transmitted from the SNMP manager 2 is received by the video processor 3 and passed to the system CPU on the system board 10. The system CPU (proxy agent) determines the target board 30 by looking at the place where the specific value of the object ID included in the passed inquiry is written.
For example, in this example, the value (“7” in this example) written after the object ID “6004.” is checked. Based on this value, the array as shown in FIG. 5 is referred to and it is determined whether or not the corresponding board 30 is mounted. If it is determined that the corresponding board 30 is mounted, the inquiry transmitted from the SNMP manager 2 is performed by a method according to whether the command used for the inquiry is a GET / SET Request or a GET Next Request. To the substrate 30.
[0043]
Note that the SNMP sent from the SNMP manager 2 uses SNMP. The system CPU converts the protocol into a format corresponding to the board 30 when passing the inquiry to the board 30 as described above.
[0044]
When a plurality of the same type of substrates 30 are mounted on one housing, it is necessary to distinguish the plurality of the same types of substrates from each other on SNMP. In the example of the video processor 3 described above, an index for identifying the same type of substrate is assigned to each of the slots 11A, 11B,...
[0045]
FIG. 6 shows an example of the structure of the object ID in this case. The object ID sent from the SNMP manager 2 is, for example, {1.3.6.1.4.1. n. 6004. x. y. y. y. y. y. z}. Of these, {1.3.6.1.4.1. n. Reference numeral 6004} denotes the video processor 3 which is the device.
The next “x” is a board-specific group number indicating the type of the board 30 to be mounted on the video processor 3. This {x} corresponds to the board type identification number shown in FIG. This {x} and the following {y. y. y. y. y} constitutes a complete command sequence. The last {z} is an index for identifying the same type of substrate.
[0046]
Processing on the proxy agent side based on such object ID will be described. The processing is actually executed by the system CPU mounted on the system board 10. An object ID {1.3.3.6.4.1.1 from the SNMP manager 2 to the system CPU. n. 6004. x. *} Object reference request is sent. The last {*} indicates one or more arbitrary identifiers. Based on the received object ID by the proxy agent that received this object ID, the board type identifier corresponds to {x}, and the index is set according to the type of request received (GET / GETN / SET). The received object ID is passed to the corresponding board.
[0047]
The received object ID is passed to the corresponding board 30, and the number of boards of the same type as the board 30 mounted in the slots 11A, 11B,. It is. On the side of each of the boards 30, 30,..., Processing is performed based on these pieces of information passed from the proxy agent.
[0048]
On the other hand, the proxy agent side also has an object table in the system CPU. At the end of the object table, a pointer addressed to the other boards 30, 30,. The proxy agent looks at the object ID sent from the SNMP manager 2 in this object table, and see {1.3.6.1.4.1. n. 6004. x} from the top to “6004” match and the sent object ID is {1.3.6.1.4.1. n. 6004. For those having a length equal to or greater than x}, the value of 'x' is confirmed.
[0049]
As a result, if the value of “x” is greater than or equal to “MUX (4)” in FIG. 3, the object ID is written at the end of the object table held by the system CPU. It is assumed that the object ID is addressed to another board 30. This object ID is passed to the board 30 corresponding to the value of “x”. With this configuration, even if the types of the substrates 30 increase in the future, there is no need to change the operation in the proxy agent.
[0050]
Note that the video processor 3 according to this embodiment is formed so that, for example, communication between the system CPU and the other boards 30, 30,... Corresponds to a maximum of 16 kinds of boards. Therefore, if the board type is within this range, the newly developed board 30 is mounted on the video processor 3 as it is, thereby realizing the function to be proxied on the mounted board 30. For identifying the slots 11A, 11B,... To which data is passed, “type of substrate” and “index for identifying the same type of substrate” are used.
[0051]
As described above, the method of passing the inquiry to the board differs depending on whether the inquiry transmitted from the SNMP manager 2 is a GET / SET Request or a GETNext Request. In the case of GET / SET Request, it is assumed that the object ID and the index are specified, and the index is written at the end of the object ID. Therefore, the data is directly delivered to the board 30 specified in the corresponding type.
[0052]
FIG. 7 shows an example of data transition in the case of GET / SET Request. In this case, the precondition is that the object ID includes the value 'z' indicating the same type substrate identification index in FIG. Therefore, based on the values “x” and “z” in FIG. 6 included in the object ID, the system CPU passes the object ID directly to the substrate 30B (substrate ENC (2)) that is the operation target. It is. In the example of FIG. 7, {1.3.6.1.4.1. n. 6004.7. y. y. y. y. y. 2}, an object ID including a command and an index is sent.
[0053]
On the other hand, in the case of GET Next Request, the object ID and the index may be requested in an indeterminate state. In this case, ‘y. y. y. y. There is a possibility that the object ID is sent from the SNMP manager 2 in a state where some or all of y ′ and the value of “z” are not included. Therefore, when a plurality of substrates 30 of the type corresponding to the value of “x” are mounted in the housing based only on the value of “x”, the subscript (see FIG. 1) among them is the most. The object ID is passed to the small board 30. For example, the object ID is passed to the board of the same type that is inserted into the slot having the smallest slot number among the slots 11A, 11B,.
[0054]
FIG. 8 shows an example of data transition in the case of GET Next Request. In the example of FIG. 8, {1.3.6.1.4.1. n. 6004.7. *} An object ID that does not include a command and an index is sent.
[0055]
For example, when “x” represents the encoder board ENC as in this example, the object ID is first passed to the board 30A (ENC (1)) having the smallest subscript in “()”. Based on the object ID, the value 'z' is checked on the board 30A (ENC (1)) side, and if it is determined that this object ID is not addressed to itself, the board 30A (ENC (1)) sends it to the system CPU. A message “NACK” indicating that is sent. Upon receiving this “NACK”, the system CPU passes the object ID to the same type of substrate whose subscript “()” is the next value, that is, the substrate 30B (ENC (2)). When the substrate 30B (ENC (2)) is not a corresponding substrate, the substrate 30D (ENC (3)), which is the same type of substrate having the next subscript, is examined.
[0056]
If it is determined that the corresponding board does not exist based on the value “x” of the object ID sent from the SNMP manager 2, the system CPU searches the array in FIG. 5 and the value is “x” or more. If there is a board, the object ID is passed to that board. For example, if the board ENC 41, 42 and 44 are examined as described above and there is no corresponding board, the object ID is passed to the board 30C (APR (1)) having the value “x” of “8”, and the same applies. It is searched whether there is a substrate to be used.
[0057]
If it is finally determined that there is no board corresponding to the object ID, the processing is taken over by the system CPU.
[0058]
Next, GET Next Operation addressed to another board by the system CPU will be described in more detail. FIG. 9 shows an exemplary configuration of MIB information on the substrate 30 side. As described above, the substrate 30 can have objects in a tree structure. The object table constitutes a trunk portion of the tree, as indicated by table # 1, # 2,. In the example of FIG. 9, the object tables are numbered # 1, # 2, # 3,.
[0059]
A portion corresponding to a leaf of the tree represents the object itself. Each object is assigned an identification code including a number assigned to an object table to which the object belongs and a serial number for identifying an object belonging to the same table so as to reflect the tree structure. For example, the shadowed object is identified by “2-1-3” and is identified as the third object of table # 1 belonging to the object table table # 2.
[0060]
On the other hand, for communication by GETNext Request performed between the system CPU and each of the substrates 30, 30,..., A 1-byte GETN operation field is prepared as shown in FIG. The value (80H, 8H, 4H, 2H, 1H and 0) of the GETN operation field is defined by 1 byte composed of these 0th to 7th bits. “H” in the value notation indicates that the number is expressed in hexadecimal.
[0061]
If the 0th bit is “1”, the value of the GETN operation field is set to “1H”, which indicates that the object is fixed and the process is transferred to the next CPU of the same type (the board 30 or the functional block). . That is, in this case, the same type of object is searched for between different object tables. If the first bit is '1', the value of the GETN operation field is set to '2H', indicating that the process is transferred to the next object. That is, in this case, an object is searched for by tracing the tree structure from the branch side to the leaf side in the same object table. If the second bit is “1”, the value of the GETN operation field is set to “4H”, indicating that the process is transferred to the next group. In this case, all object tables with numbers corresponding to each other, for example, table # 1, are all searched.
[0062]
If the third bit is “1”, it indicates that the data from the CPU (the substrate 30 or the functional block) has been completed. When an ACK response is sent to the system CPU, the seventh bit is set to “1”, and the value of the GETN operation field is set to “80H”. If the value of this GETN operation field is “0”, it indicates that this is the first access from the system CPU to each of the boards 30, 30,.
[0063]
The object ID sent from the SNMP manager 2 and the array of the board configuration held by the system CPU (see FIG. 5) are passed to the mounted boards 30, 30,. On the board 30 side, using the three values {object ID, index of the board held by the system CPU, field for GETN operation}, it is determined whether the request is for itself.
[0064]
FIG. 11 is a flowchart illustrating a method for determining an example of an object ID on the substrate 30. If the value of the GETN operation field is “0”, it is indicated that the processing by this flowchart is first performed by the system CPU. In the first step S <b> 10, an object ID is passed from the system CPU to the board 30, and the board 30 searches for an object based on information stored in the ROM 33. An object search method will be described later. At this time, the board index and GETN operation field of the system CPU described above are also passed along with the object ID.
[0065]
In the next step S11, it is determined whether there is a corresponding object ID. If it is determined in step S11 that there is no corresponding object ID, the process proceeds to step S22. In step S22, the GETN operation field is referred to. If the value is equal to or less than “1”, the value is set to “1”. Then, the process proceeds to step S19, and a response is sent from the substrate 30 to the system CPU.
[0066]
On the other hand, if it is determined in step S11 that there is a corresponding object ID, the process proceeds to step S12. In step S12, it is determined whether or not the object is a leaf. If it is determined that the object is not a leaf, since the object is an object table, the process proceeds to step S13, and the first object in the object table is searched. Then, the process returns to step S11, and a determination is made based on the search result in step S13.
[0067]
On the other hand, if it is determined in step S12 that the searched object is a leaf, the process proceeds to step S14, and it is determined whether or not the value of the GETN operation field is equal to or less than “1”. If it is determined that the value is equal to or less than “1”, the process proceeds to step S15, and it is determined whether or not there is an index “p” of an arbitrary value in the object.
[0068]
If the index 'p' is found in the object in step S15, the value 'p' is compared with the index 'q' designated by the system CPU in step S17. If the result of the comparison is ('p' <'q'), the process proceeds to step S22. If the value of the GETN operation field is equal to or less than '1', the value is set to '1'. A response is made to the CPU.
[0069]
When the index 'p' is not found in the object in step S15, 'q-1' is set as the index 'p' based on the index 'q' designated by the system CPU, and the process proceeds to step S17. To do.
[0070]
On the other hand, if the result of comparison between the values 'p' and 'q' is ('p' ≧ 'q') in step S17, the process proceeds to step S18, the object ID is determined, and the index 'Q' is adopted for Then, the process proceeds to step S19, and a response is sent from the substrate 30 to the system CPU.
[0071]
If it is determined in step S14 that the value of the GETN operation field is not “1” or less, the process proceeds to step S20. In step S20, the next object or the next group is searched based on the value of the GETN operation field. The search result is determined in the next step S21. If the target object is found in the next object or group, the process proceeds to step S18, the object ID is determined, and 'q' designated by the system CPU is adopted as the index.
[0072]
On the other hand, if it is determined in step S21 that the target object is not found in the next object or group, the process proceeds to step S22, and if the GETN operation field is “1” or less, “1” is set. In step S19, the system CPU is responded.
[0073]
In the process according to the flowchart of FIG. 11 described above, when a corresponding object is found on the board 30 to which data is first transferred from the system CPU, the system CPU responds to the SNMP manager 2. On the other hand, if the corresponding object is not found, the value of the GETN operation field is set to '1' on the board 30 side, and 'NACK' is returned from the board 30 to the system CPU. In addition, even when successive GET Next Operations are transferred to the already-referenced board 30 ′, the value of the GETN operation field is set to an appropriate value on the board 30 ′, and the board 30 ′ sends the value to the system CPU. 'NACK' is returned.
[0074]
Also, the GET Next Operation sent from the SNMP manager 2 to the system CPU is always passed to the board with the smallest index among the corresponding types of boards via the system CPU of the system board 10. For example, in the video processor 3 described above, if the indexes are assigned in the order of the slots 11A, 11B,..., The GET Next Operation is applied to the board mounted in the slot to which the smallest index value is assigned among the same kinds of boards. The instruction by is passed.
[0075]
Next, processing in the system CPU that has received the response from the substrate 30 in step S19 of FIG. 11 described above will be described using the flowchart of FIG. In the first step S70, the response from the board 30 is received by the system CPU. In steps S71, S72, and S73, the process branches based on the value of the GETN operation field.
[0076]
In step S71, it is determined whether or not the value of the GETN operation field is '80H' or more. If “80H” or more, the process proceeds to step S80, and the system CPU generates an SNMP packet corresponding to the GETN operation field. The generated SNMP packet is transmitted from the system CPU to the SNMP manager 2 in the next step S87.
[0077]
If it is determined in step S71 that the value of the GETN operation field is not '80H' or more, the process proceeds to step S72. In step S72, it is determined whether or not the value of the GETN operation field is '1H' to '4H'. If it is '1H' to '4H', the process proceeds to step S81, and it is determined whether or not the substrate 30 that has passed the response is the last substrate of the same type. This can be determined, for example, by comparing the index of the board with the number of boards of the same type as the board in the board configuration array (see FIG. 5) held by the system CPU.
[0078]
If it is determined in step S81 that the substrate 30 is the last substrate of the same type, the process proceeds to step S82. In step S82, the GETN operation field is shifted to the left by one bit, and the data is transferred to the same board 30 again. Then, on the substrate 30, the above-described processing shown in FIG. 11 is performed based on the GETN operation field in which the bits are shifted to the left.
[0079]
On the other hand, if it is determined in step S81 that the substrate 30 is not the last substrate of the same type, the process proceeds to step S83. In step S83, the data received by the system CPU is transferred as it is to the same type of substrate with the next index. Then, on the substrate 30, the above-described processing shown in FIG. 11 is performed based on the passed data.
[0080]
If it is determined in step S72 that the value of the GETN operation field is not '1H' to '4H', the process proceeds to step S73. In step S73, it is determined whether or not the value of the GETN operation field is '8H'. If it is not '8H', it is determined in step S74 that an error has occurred.
[0081]
If it is determined that the value of the GETN operation field is '8H', the process proceeds to step S84. In step S84, it is determined whether or not a board of the target board type or later is mounted. For example, in the system CPU, it is determined whether or not a board having a group number larger than the group number of the target board type is mounted by referring to the board configuration array shown in FIG.
[0082]
If it is determined that a board of the target board type or later is mounted, the process proceeds to step S85. In step S85, the system CPU resets the GETN operation field to "0", and the data is transferred to the next type of board.
[0083]
On the other hand, if it is determined in step S84 that the board of the target board type or later is not mounted, the process proceeds to step S86. In step S86, the system CPU side generates a packet notifying the end of the MIB. Then, the process proceeds to step S87, and the packet is transmitted to the SNMP manager 2.
[0084]
Next, processing on the proxy agent side in the board 30 will be described. The substrate 30 has MIB information as shown in an example in FIG. The MIB information is stored in the substrate 30 after the MIB information by SNMP is converted into a format unique to the substrate 30. The MIB information is stored in advance in the ROM 33, for example, and held on the substrate 30. Even with the same type of board, a new object may be added due to a difference in version or the like. In FIG. 9, the filled object 2-1-3 corresponds to that. In other words, an object 2-1-3 that does not exist on the board 30 'of another version of the same type exists on the board 30.
[0085]
FIG. 13 shows an example of information passed from the system CPU to the board 30. The data name mode is an SNMP inquiry method, and describes which of the above-mentioned GET / GETN / SET was used to inquire about SNMP. The data name cmd_ctl is a command control field at the time of SNMP, and is provided with 1 byte, and describes the above-described GETN operation field.
[0086]
The data name “board_idx” describes the same-type board identification index that is an identifier of the same-type board, and the data name “board_max” describes the number of the same-type boards currently mounted in the casing. By using these board_idx and board_max, it is possible to uniquely determine what processing should be performed on the data delivered from the system CPU.
[0087]
The data name cmd_len describes the data length of the object ID. In cmd, a data string of an actual object ID is described.
[0088]
The above-described object search method on the substrate 30 side will be described with reference to FIGS. 14, 15, 16, and 17. FIGS. 14, 15 and 16 are flowcharts when the value of the GETN operation field is '1H' or lower, '2H', '4H' or '8H', respectively. FIG. 17 shows an example MIB structure for explaining a search method when the value of the GETN operation field shown in FIG. 14 is “1H”.
[0089]
In the MIB tree shown as an example in FIG. 17, a rectangle indicates an object table, and below the table, a portion of the object ID corresponding to the table below “x” that is a board type identification number is described. In addition, assuming that the deepest hierarchy is n = 1, n is incremented by 1 each time a move is made to one shallow hierarchy. When the hierarchy having the deepest table is set to 1, and the MIB tree is moved up to the root, the value corresponding to the top (root) hierarchy of the substrate is called a limit value. In the example of FIG. 17, the limit value is n = 4.
[0090]
FIG. 14 shows an example of an object search method when the value of the GETN operation field is '1H' or less. In order to search from a deeper hierarchy, first, n = 1 is set as a search criterion for the object table table # n (step S30). The table A and B in FIG. 17 are set in this way in order to be the first search target. In the next step S31, it is determined whether n is equal to or less than a predetermined limit value. If it is determined that n is not less than or equal to the limit value, the process proceeds to step S40, it is determined that there is no corresponding object in the board 30, and the series of processes is terminated.
[0091]
On the other hand, if it is determined in step S31 that n is equal to or less than the limit position, the process proceeds to step S32. In step S32, table # n is searched. In step S33, it is determined whether or not the retrieved object ID of table # n is completely included in the object ID received from the system CPU. If it is determined that the searched table # n does not satisfy this condition, n is incremented by 1 in step S34, and the process returns to step S31.
[0092]
On the other hand, if it is determined in step S33 that table # n satisfies the condition, the process proceeds to step S35. If it is determined that the length of the object ID received from the system CPU is shorter than the object ID of the table found in step S33 described above, the process proceeds to step S36. In step S36, the smallest object is extracted from the table #n in lexicographic order. Then, it is assumed that the object is found in the next step S37.
[0093]
On the other hand, if it is determined in step S35 described above that the length of the object ID received from the system CPU is longer than the object ID of the table found in step S33 described above, the process proceeds to step S39. In this case, since the object ID received from the system CPU is longer than the object ID of table # n and the object is specified in detail, the object is directly specified from the object table. It can be taken out. In step S39, the corresponding object is taken out from table # 1, and the process proceeds to step S37.
[0094]
The above process will be described using a more specific example. Here, the object ID sent from the system CPU is {6004. x. 5.1. It is assumed that y} (the first half is omitted). The limit value n is n = 4. Object ID {6004. x. 5.1. In y}, the value corresponding to n = 1 is “y”, the value corresponding to n = 2 is “1”, and the value corresponding to n = 3 is “5”. In the object ID, according to n, it is necessary to match up to the length corresponding to each layer at the time of table search. As described above, in order to perform a search from a deeper hierarchy, n = 1 is set in step S30. In order to set the tables A and B in FIG.
[0095]
In step S33, the object ID {6004. x. 5.1. Since there is no table having the object ID included in y}, in step S34, n is incremented by 1 and n = 2 is set, and a search is attempted for the hierarchy one level above.
[0096]
As a result of the search, in the hierarchy of n = 2, object IDs {6004. x. 5.1. y}, the object ID having the length up to the layer of n = 2 does not exist, so the object ID {6004. x. 5.1. y} is the object ID {6004. x. 5.1} is included. The object ID of the table F is {x. 5.1} and the object ID {6004. x. 5.1} (step S35). The process proceeds to step S39, where an object is extracted from the table F, and an object is found in step S37.
[0097]
FIG. 15 shows a search method for an example of an object when the value of the GETN operation field is “2H”. Here, a case where an object is searched for table # 1 will be described. First, in the first step S50, an object table in which the object ID is completely included in the object ID received from the system CPU in the table # 1 is searched. If it is determined in step S51 that there is no matching table based on the search result, the process proceeds to step S55, and it is determined that the corresponding object does not exist.
[0098]
On the other hand, if it is determined in step S51 that a matching table exists, the process proceeds to step S52, and the corresponding object is extracted from table # 1. Then, in the next step S53, it is determined whether or not the next object taken out is a leaf in this MIB table (see FIG. 9). If it is determined that the object is a leaf, it is determined that the object is found as the object that the object that is the leaf seeks (step S54).
[0099]
On the other hand, if it is determined in step S53 that the next object is not a leaf, since there is no corresponding object in the currently searched table, the process proceeds to step S55.
[0100]
FIG. 16 shows an example of an object search method when the value of the GETN operation field is '4H' or '8H'. Here, a case where an object is searched for table # 1 will be described. First, in the first step S60, an object table in which the object ID is completely included in the object ID received from the system CPU in the table # 1 is searched. If it is determined in step S61 that there is no matching table based on the search result, the process proceeds to step S65, and it is determined that the corresponding object does not exist.
[0101]
On the other hand, if it is determined in step S61 that a matching table # 1 exists, the process proceeds to step S62, and the next table # 1 is searched in lexicographic order. Based on the search result, it is determined in next step S63 whether or not the next table # 1 exists. If it is determined that the next table # 1 exists, the process proceeds to the next step S64, and the first object in the found table # 1 is set as the corresponding object.
[0102]
On the other hand, if it is determined in step S63 that the next table # 1 does not exist, the process proceeds to step S65, and the corresponding object does not exist.
[0103]
When the processing of the GETN operation field value of “4H” is completed, the processing of the GETN operation field value of “8H” is performed, and the processing of FIG. 16 is repeated twice. This is a process for preventing an object search error, and it operates normally without performing a search process when the value of the GETN operation field is '8H'.
[0104]
By searching for an object by the method described above with reference to FIGS. 14, 15, and 16, a board in which a new object is added to the same kind of board and a board of a previous version in which no new board is added. Can coexist in the same case, there is no missing object, and GET Next Operation can be operated.
[0105]
In order to guarantee the above-described operation, it is necessary to correctly add and delete new objects. For example, the following three items are provided as restrictions when adding and deleting new objects.
(1) Do not change the object ID of an existing object.
(2) When an object becomes unnecessary or is deleted, the object ID of the object is left as a missing number.
(3) Don't add objects to a deeper hierarchy.
[0106]
18, 19 and 20 show examples of undesirable object addition and deletion methods. FIG. 18 corresponds to the item (1) described above and is an example in which the object ID of an existing object is changed when an object is added. Consider the existing objects 1-1, 1-2, and 1-3 under table # 1, shown in FIG. 18A. With respect to this configuration, when an object is inserted before 1-1, as shown in FIG. 18B, the existing objects 1-1, 1-2, and 1-3 become objects 1-2, 1-3, and The object shifted to 1-4 and newly inserted and added is the object 1-1. In this case, there is a possibility that a correct object may not be searched when searching for an object by object ID.
[0107]
FIG. 19 shows an example in which an existing object is moved up when an object is deleted corresponding to the item (2) described above. Consider the objects 2-1, 2-2 and 2-3 under table # 1, shown in FIG. 19A. From this state, the object 2-1 is deleted, and as shown in FIG. 19B, the existing objects 2-2 and 2-3 have their object IDs raised to the objects 2-1 and 2-2, respectively. Also in this case, as described above, there is a possibility that a correct object may not be searched when searching for an object by object ID.
[0108]
FIG. 20 shows an example in which an object is added to a very deep hierarchy corresponding to the item (3) described above. In this case, it may take a very long time to search for the object. For example, in order to search for the object 3-2-1, the hierarchy must be traced to table # 6, table # 5, table # 4, table # 3, table # 2, and table # 1.
[0109]
The above restrictions (1), (2), and (3) are defined by IANA (Internet Assigned Numbers Authority). If an object is added or deleted by a method not complying with this restriction, the proxy agent incorporated according to the present invention may not operate normally.
[0110]
In the above description, the present invention has been described as applied to an encoder / decoder for processing digital video and audio signals. However, the present invention is not limited to this example. For example, the present invention can also be applied to an expansion card that is used by being installed in a slot of a computer device such as a personal computer. In this case, the expansion card installed in the slot of the personal computer can be managed by the MIB.
[0111]
【The invention's effect】
As described above, according to the present invention, each board side managed by the SNMP manager via the proxy agent has an object to be managed by the MIB. Therefore, the proxy agent side is specific to each board. It has the effect of being freed from information about the object.
[0112]
As a result, even when a new board is developed, there is an effect that an object can be added only by changing the MIB definition file of the SNMP manager without modifying the proxy agent.
[Brief description of the drawings]
FIG. 1 is a block diagram showing an example system to which the present invention is applicable.
FIG. 2 is a schematic diagram illustrating an example of a substrate that can be mounted on a video processor;
FIG. 3 is a schematic diagram illustrating a configuration example of an MIB.
FIG. 4 is a block diagram schematically showing a configuration of an example of a board mounted on a video processor.
FIG. 5 is a schematic diagram showing the contents of an example of an identification number in a video processor.
FIG. 6 is a schematic diagram illustrating an exemplary structure of an object ID.
FIG. 7 is a schematic diagram illustrating an example data transition diagram in the case of GET / SET Request.
FIG. 8 is a schematic diagram illustrating a data transition diagram of an example in the case of GET Next Request.
FIG. 9 is a schematic diagram illustrating a configuration of an example of a MIB information object on the board side;
FIG. 10 is a schematic diagram illustrating an example of a field for GETN operation.
FIG. 11 is a flowchart illustrating a method for determining an example of an object ID on a substrate.
FIG. 12 is a flowchart showing an example of processing in the system CPU that has received a response from the board;
FIG. 13 is a schematic diagram illustrating an example of information passed from the system CPU to the board.
FIG. 14 is a flowchart showing a search method for an example of an object when the value of a GETN operation field is '1H' or less.
FIG. 15 is a flowchart showing a search method for an example of an object when the value of a GETN operation field is “2H”.
FIG. 16 is a flowchart showing a search method for an example of an object when the value of a GETN operation field is '4H' or '8H'.
FIG. 17 is a schematic diagram illustrating an example MIB structure for explaining a search method when the value of a field for GETN operation is “1H”;
FIG. 18 is a schematic diagram illustrating an example in which an object ID of an existing object is changed when an object is added.
FIG. 19 is a schematic diagram illustrating an example in which an existing object is moved up when an object is deleted;
FIG. 20 is a schematic diagram illustrating an example in which an object is added to a very deep hierarchy.
FIG. 21 is a block diagram illustrating an example architecture with a proxy agent.
[Explanation of symbols]
2 ... SNMP manager, 3 ... SNMP agent, 10 ... proxy agent, 11A, 11B, 11C, 11D, 11E ... slot, 30, 30A, 30B, 30C, 30D ... substrate 32 ... CPU, 33 ... ROM, 34 ... communication interface, 35 ... connector, 36 ... functional part

Claims (13)

SNMPが実装されプロキシ・エージェントの機能を持つシステム用CPUおよびメモリを有するシステム基板と、
複数の組込電子機器をそれぞれ接続するための複数の組込手段と、
ネットワークを介してSNMPマネージャとの通信を行う第1の通信手段と、
SNMPに基づくオブジェクトIDをSNMPとは異なるプロトコルに変換する変換手段と、
上記複数の組込手段により組み込まれた上記複数の組込電子機器の種類および該種類毎の数を取得する機器情報取得手段と、
上記複数の組込電子機器に対して上記SNMPとは異なるプロトコルを用いて通信を行う第2の通信手段と
を備え、
上記機器情報取得手段は、所定の周期で上記複数の組込電子機器をスキャンし、上記複数の組込手段により組み込まれた上記複数の組込電子機器の種類および該種類毎の数を取得し、
上記メモリは、上記取得された上記複数の組込電子機器の種類毎の数と各組込電子機器を識別するための識別子とを対応付けた配列として保持し、
上記オブジェクトIDが上記SNMPマネージャから供給された際に、上記オブジェクトIDのうち、上記組込電子機器の種類を示す識別子を参照することにより、上記メモリに保持された配列から、問い合わせの対象となる上記組込電子機器を特定し、
上記問い合わせの対象となる上記組込電子機器が組み込まれている場合に、上記オブジェクトIDを上記問い合わせの対象となる上記組込電子機器に渡すようにした組込型電子機器。
A system board having a CPU and a memory with a system and a function of a proxy agent in which SNMP is implemented;
A plurality of built-in means for connecting a plurality of built-in electronic devices respectively;
First communication means for communicating with the SNMP manager via a network;
Conversion means for converting an object ID based on SNMP into a protocol different from SNMP;
Device information acquisition means for acquiring the types of the plurality of embedded electronic devices incorporated by the plurality of integration means and the number of each type;
Second communication means for communicating with the plurality of embedded electronic devices using a protocol different from the SNMP;
With
The device information acquisition unit scans the plurality of embedded electronic devices at a predetermined cycle, and acquires the types of the plurality of embedded electronic devices incorporated by the plurality of integration units and the number of each type. ,
The memory holds the acquired number for each type of the plurality of embedded electronic devices and an identifier for identifying each embedded electronic device as an array in association with each other,
When the object ID is supplied from the SNMP manager, by referring to the identifier indicating the type of the built-in electronic device in the object ID, the object is inquired from the array held in the memory. Identify the embedded electronic device
An embedded electronic device that passes the object ID to the embedded electronic device to be inquired when the embedded electronic device to be inquired is incorporated .
上記組込電子機器の種類を示す識別子は、上記システム基板に搭載されたCPUおよび上記組込電子機器が有するCPUをそれぞれ識別するものであり、The identifier indicating the type of the embedded electronic device identifies the CPU mounted on the system board and the CPU of the embedded electronic device,
上記組込電子機器が有するCPUを示す識別子の値が、上記システム基板に搭載されたCPUを示す識別子の値よりも大である請求項1の組込型電子機器。The embedded electronic device according to claim 1, wherein the value of the identifier indicating the CPU included in the embedded electronic device is larger than the value of the identifier indicating the CPU mounted on the system board.
オブジェクト情報が格納されるオブジェクト情報格納手段を有し、Having object information storage means for storing object information;
上記オブジェクト情報が、組込型電子機器を介してSNMPマネージャの管理対象となるオブジェクトを示すものである組込電子機器。An embedded electronic device in which the object information indicates an object to be managed by an SNMP manager via the embedded electronic device.
上記オブジェクト情報に対するポインタが格納されたオブジェクトテーブルを有し、上記オブジェクトテーブルに基づき上記オブジェクト情報が組込型電子機器を介してSNMPマネージャに参照される請求項3に記載の組込電子機器。4. The embedded electronic device according to claim 3, further comprising: an object table storing a pointer to the object information, wherein the object information is referred to an SNMP manager via the embedded electronic device based on the object table. 複数の組込電子機器をそれぞれ接続するための組み込みのステップと、Built-in steps for connecting multiple embedded electronic devices respectively,
ネットワークを介してSNMPマネージャとの通信を行う第1の通信のステップと、A first communication step of communicating with an SNMP manager via a network;
SNMPに基づくオブジェクトIDをSNMPとは異なるプロトコルに変換する変換のステップと、A step of converting an object ID based on SNMP into a protocol different from SNMP;
上記複数の組込手段により組み込まれた上記複数の組込電子機器の種類および該種類毎の数を取得する機器情報取得のステップと、A step of acquiring device information to acquire the types of the plurality of embedded electronic devices incorporated by the plurality of incorporation means and the number of each type;
上記複数の組込電子機器に対して上記SNMPとは異なるプロトコルを用いて通信を行う第2の通信のステップとA second communication step of communicating with the plurality of embedded electronic devices using a protocol different from the SNMP;
を備え、With
SNMPが実装されプロキシ・エージェントの機能を持つシステム用CPUおよびメモリを有するシステム基板を備えた組込型電子機器により、An embedded electronic device equipped with a system board having a CPU and memory with a system CPU having a function of a proxy agent in which SNMP is implemented,
上記機器情報取得のステップにおいて、所定の周期で上記複数の組込電子機器をスキャンし、上記複数の組込手段により組み込まれた上記複数の組込電子機器の種類および該種類毎の数を取得し、In the device information acquisition step, the plurality of embedded electronic devices are scanned at a predetermined cycle, and the types of the plurality of embedded electronic devices incorporated by the plurality of incorporating means and the number of each type are acquired. And
上記メモリは、上記取得された上記複数の組込電子機器の種類毎の数と各組込電子機器を識別するための識別子とを対応付けた配列として保持し、The memory holds the acquired number for each type of the plurality of embedded electronic devices and an identifier for identifying each embedded electronic device as an array,
上記オブジェクトIDが上記SNMPマネージャから供給された際に、上記オブジェクトIDのうち、上記組込電子機器の種類を示す識別子を参照することにより、上記メモリに保持された配列から、問い合わせの対象となる上記組込電子機器を特定し、When the object ID is supplied from the SNMP manager, by referring to the identifier indicating the type of the embedded electronic device in the object ID, the object is inquired from the array held in the memory. Identify the embedded electronic device
上記問い合わせの対象となる上記組込電子機器が組み込まれている場合に、上記オブジェクトIDを上記問い合わせの対象となる上記組込電子機器に渡すようにした組込電子機器の管理方法。A method of managing an embedded electronic device in which, when the embedded electronic device to be inquired is incorporated, the object ID is passed to the embedded electronic device to be inquired.
組込型電子機器が有するCPUおよび上記組込型電子機器に組み込まれる組込電子機器の種類に応じてグループ分けしたグループ識別子を配し、Arranging group identifiers grouped according to the type of the embedded electronic device incorporated in the embedded electronic device and the CPU of the embedded electronic device,
上記組込電子機器の種類を示すグループ識別子の値が、上記組込型電子機器が有するCPUを示すグループ識別子の値よりも大であるとされたMIB構造を表すオブジェクトIDを用い、Using the object ID representing the MIB structure in which the value of the group identifier indicating the type of the embedded electronic device is larger than the value of the group identifier indicating the CPU of the embedded electronic device,
上記組込型電子機器に組み込まれる上記組込電子機器を、上記組込型電子機器を介してSNMPマネージャにより管理する組込電子機器の管理方法。A method for managing an embedded electronic device, wherein the embedded electronic device incorporated in the embedded electronic device is managed by an SNMP manager via the embedded electronic device.
上記グループ識別子に対応するオブジェクト情報を上記組込電子機器側が持つようにした請求項6に記載の組込電子機器の管理方法。The method of managing an embedded electronic device according to claim 6, wherein the embedded electronic device side has object information corresponding to the group identifier. 上記組込電子機器が、複数のオブジェクトを有し、The embedded electronic device has a plurality of objects,
上記複数のオブジェクトが、上記組込型電子機器を介してSNMPマネージャにより管理される請求項6に記載の組込電子機器の管理方法。The method for managing an embedded electronic device according to claim 6, wherein the plurality of objects are managed by an SNMP manager via the embedded electronic device.
上記オブジェクトが、該オブジェクトに対するポインタが格納されたオブジェクトテーブルにより、組込型電子機器を介してSNMPマネージャに参照される請求項8に記載の組込電子機器の管理方法。9. The method of managing an embedded electronic device according to claim 8, wherein the object is referred to the SNMP manager via the embedded electronic device by an object table in which a pointer to the object is stored. 上記組込型電子機器と上記組込電子機器との間の通信が、Communication between the embedded electronic device and the embedded electronic device
該組込電子機器からのデータが終わりであるかどうかを示す第1の値と、A first value indicating whether the data from the embedded electronic device is end;
次の種類の上記組込電子機器に処理を移すかどうかを指示する第2の値と、A second value that indicates whether to transfer the processing to the next type of embedded electronic device;
該組込電子機器内の次の上記オブジェクトに処理を移すかどうかを指示する第3の値と、A third value indicating whether to move the process to the next object in the embedded electronic device;
上記オブジェクトを固定して該組込電子機器と同一種類の次の上記組込電子機器に処理を移すかどうかを指示する第4の値と  A fourth value for instructing whether to fix the object and move the processing to the next embedded electronic device of the same type as the embedded electronic device;
を含むフィールドを用いてなされる請求項9に記載の組込電子機器の管理方法。The method for managing an embedded electronic device according to claim 9, wherein the method is performed using a field including
上記フィールドの上記第2の値が上記組込電子機器内の次の上記オブジェクトに処理を移すことを示すときには、When the second value of the field indicates to move to the next object in the embedded electronic device,
上記オブジェクトテーブルを識別する識別子が互いに対応する上記オブジェクトテーブルのうち、上記組込型電子機器から送られた上記オブジェクトIDに完全に含まれる上記オブジェクトテーブルを検索し、Search for the object table that is completely included in the object ID sent from the embedded electronic device, among the object tables corresponding to identifiers for identifying the object table,
検索されたオブジェクトテーブル内で、上記オブジェクトテーブルを識別する識別子が対応する上記オブジェクトテーブルを辞書式順序でさらに検索し、In the searched object table, the object table corresponding to the identifier for identifying the object table is further searched in lexicographic order,
検索されたオブジェクトテーブル内の最初のオブジェクトを取り出すようにした請求項10に記載の組込電子機器の管理方法。The method of managing an embedded electronic device according to claim 10, wherein the first object in the searched object table is extracted.
上記フィールドの上記第3の値が上記組込電子機器内の次の上記オブジェクトに処理を移すことを示すときには、When the third value in the field indicates to move to the next object in the embedded electronic device,
上記オブジェクトテーブルを識別する識別子が互いに対応する上記オブジェクトテーブルのうち、上記組込型電子機器から送られた上記オブジェクトIDに完全に含まれる上記オブジェクトテーブルを検索し、Search for the object table that is completely included in the object ID sent from the embedded electronic device, among the object tables corresponding to identifiers for identifying the object table,
検索されたオブジェクトテーブル内の該当するオブジェクトのうち、上記MIB構造の葉であるオブジェクトを取り出すようにした請求項10に記載の組込電子機器の管理方法。The management method for an embedded electronic device according to claim 10, wherein an object that is a leaf of the MIB structure is extracted from the corresponding objects in the searched object table.
上記フィールドの上記第4の値が次の種類の上記組込電子機器に処理を移すことを示すときには、When the fourth value in the field indicates to move processing to the next type of embedded electronic device,
上記組込電子機器が持つ上記オブジェクトテーブルのうち、上記組込型電子機器から送られた上記オブジェクトIDに完全に含まれる上記オブジェクトテーブルを検索し、Search the object table that is completely included in the object ID sent from the embedded electronic device among the object tables of the embedded electronic device,
検索されたオブジェクトテーブルが上記組込電子機器の持つ最初のオブジェクトテーブルであって、且つ、該オブジェクトテーブルのオブジェクトIDが上記送られたオブジェクトIDと長さが異なれば、該オブジェクトテーブルから該当するオブジェクトを取り出し、  If the retrieved object table is the first object table of the embedded electronic device, and the object ID of the object table is different in length from the sent object ID, the corresponding object from the object table Take out
上記検索されたオブジェクトテーブルが上記組込電子機器の持つ最初のオブジェクトテーブルであって、且つ、該オブジェクトテーブルのオブジェクトIDが上記送られたオブジェクトIDと同一の長さであれば、該オブジェクトテーブル内から辞書式順序で最も小さなオブジェクトを取り出し、If the retrieved object table is the first object table of the embedded electronic device and the object ID of the object table is the same length as the sent object ID, the object table Takes the smallest object in lexicographic order from
上記検索されたオブジェクトテーブルが上記組込電子機器の持つ最初のオブジェクトテーブルでなければ、該オブジェクトテーブル内から辞書式順序で最も小さなオブジェクトを取り出すようにした請求項10に記載の組込電子機器の管理方法。11. The embedded electronic device according to claim 10, wherein if the searched object table is not the first object table of the embedded electronic device, the smallest object is extracted from the object table in a lexicographic order. Management method.
JP2001029358A 2001-02-06 2001-02-06 Embedded electronic device, embedded electronic device, and management method of embedded electronic device Expired - Fee Related JP4581259B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001029358A JP4581259B2 (en) 2001-02-06 2001-02-06 Embedded electronic device, embedded electronic device, and management method of embedded electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001029358A JP4581259B2 (en) 2001-02-06 2001-02-06 Embedded electronic device, embedded electronic device, and management method of embedded electronic device

Publications (2)

Publication Number Publication Date
JP2002229875A JP2002229875A (en) 2002-08-16
JP4581259B2 true JP4581259B2 (en) 2010-11-17

Family

ID=18893715

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001029358A Expired - Fee Related JP4581259B2 (en) 2001-02-06 2001-02-06 Embedded electronic device, embedded electronic device, and management method of embedded electronic device

Country Status (1)

Country Link
JP (1) JP4581259B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050094663A1 (en) * 2003-11-05 2005-05-05 Interdigital Technology Corporation Method and system for providing intelligent remote access to wireless transmit/receive units
JP2008504765A (en) * 2004-06-30 2008-02-14 シーメンス アクチエンゲゼルシヤフト Method and apparatus for obtaining optical output level of PON
JP5862417B2 (en) * 2012-03-29 2016-02-16 ブラザー工業株式会社 Managed device
JP2014026437A (en) * 2012-07-26 2014-02-06 Nippon Telegr & Teleph Corp <Ntt> Information collection system, server device, and information collection method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000267961A (en) * 1999-03-17 2000-09-29 Nec Corp System for sharing package method so as to be operated as snmp agent

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000267961A (en) * 1999-03-17 2000-09-29 Nec Corp System for sharing package method so as to be operated as snmp agent

Also Published As

Publication number Publication date
JP2002229875A (en) 2002-08-16

Similar Documents

Publication Publication Date Title
EP1719289B1 (en) Generating topology information identifying devices in a network topology
JP5055376B2 (en) SAS zone group permission table version identifier
US6104868A (en) Extendible and portable network protocol based system management architecture
US8812137B2 (en) Controlling sensor networks
US6446142B1 (en) Method of and apparatus for dynamically binding subobjects into objects to represent functions and characteristics of a device within an IEEE 1394 serial bus network
KR100716167B1 (en) Network management system and method
US7831644B2 (en) Electronic apparatus and content data providing method
US6366964B1 (en) Method of and apparatus for dynamically enumerating objects representing devices within an IEEE 1394 serial bus networking
US7817583B2 (en) Method for verifying a storage area network configuration
US6971090B1 (en) Common Information Model (CIM) translation to and from Windows Management Interface (WMI) in client server environment
US8312128B2 (en) Identification of management information base object identifiers supported by a managed device
US20080301143A1 (en) Automatic Update System and Method for Using a Meta Mib
US20080178202A1 (en) Interface For Supporting an Element Management System
JPH10105482A (en) Method and system for discovering computer network information from remote device by using different network protocol
CA2582380A1 (en) Network management apparatus and method based on simple network management protocol
US20070242617A1 (en) Network device connecting apparatus and network device connecting method
US8589381B2 (en) Resource management program, resource management process, and resource management apparatus
CN104468274A (en) Cluster monitor and management method and system
CN1533115A (en) Method and device for supporting error reason of simple network management protocol
CN113381870B (en) Message processing method and device
CN102859970B (en) The method and apparatus accessing non-Internet Protocol center resources
JP4581259B2 (en) Embedded electronic device, embedded electronic device, and management method of embedded electronic device
KR102226915B1 (en) Method, apparatus and computer program for operating the flow rules database in software defined network
US7734640B2 (en) Resource discovery and enumeration in meta-data driven instrumentation
KR100372386B1 (en) Method and system for managing an aix unix server using an snmp interface

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090901

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100309

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100428

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

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

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

Free format text: PAYMENT UNTIL: 20130910

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees