(57)【要約】【課題】  ソフトウェアデータの記憶容量が低減された監視制御装置及び監視制御システムを提供する。【解決手段】  監視制御装置は、監視制御対象の通信装置に保持されたデータの種類を記憶する記憶部と、前記監視制御対象の通信装置に新たな通信装置が追加される場合、前記監視制御対象の通信装置のうち、前記新たな通信装置に用いられるデータと同一種類のデータを保持する通信装置を前記記憶部から検索する検索部と、前記検索部により検索された通信装置に、前記新たな通信装置への該データの転送を指示する指示部とを有する。【選択図】図１１
2017068696.tif 000002
【特許請求の範囲】
【請求項１】
監視制御対象の通信装置に保持されたデータの種類を記憶する記憶部と、
前記監視制御対象の通信装置に新たな通信装置が追加される場合、前記監視制御対象の通信装置のうち、前記新たな通信装置に用いられるデータと同一種類のデータを保持する通信装置を前記記憶部から検索する検索部と、
前記検索部により検索された通信装置に、前記新たな通信装置への該データの転送を指示する指示部とを有することを特徴とする監視制御装置。
【請求項２】
前記監視制御対象の通信装置にデータを転送する転送処理部と、
前記転送処理部により転送されたデータの種類に関するデータ情報を取得する取得部と、
前記データ情報に基づき、所定の条件を満たす種類のデータを選択して保持する保持部とを、さらに有し、
前記転送処理部は、前記新たな通信装置が追加される場合、前記監視制御対象の通信装置のうち、前記新たな通信装置に用いられるデータと同一種類のデータを保持する通信装置が存在せず、前記新たな通信装置に用いられるデータの種類と前記保持部により保持されたデータの種類が一致するとき、前記保持部により保持されたデータを前記新たな通信装置に転送することを特徴とする請求項１に記載の監視制御装置。
【請求項３】
前記取得部は、前記データの種類ごとに、該データを保持する前記監視制御対象の通信装置の数を示す前記データ情報を取得し、
前記保持部は、前記データ情報に基づき、前記監視制御対象の通信装置の数の順位に応じた種類のデータを選択して保持することを特徴とする請求項２に記載の監視制御装置。
【請求項４】
前記取得部は、前記データの種類ごとに、前記転送処理部による該データの転送の頻度を示す前記データ情報を取得し、
前記保持部は、前記データ情報に基づき、前記転送の頻度の順位に応じた種類のデータを選択して保持することを特徴とする請求項２に記載の監視制御装置。
【請求項５】
前記取得部は、前記データの種類ごとに、該データのサイズを示す前記データ情報を取得し、
前記保持部は、前記データ情報に基づき、前記サイズの順位に応じた種類のデータを選択して保持することを特徴とする請求項２に記載の監視制御装置。
【請求項６】
前記転送処理部は、前記新たな通信装置が追加される場合、前記監視制御対象の通信装置のうち、前記新たな通信装置に用いられるデータと同一種類のデータを保持する通信装置が存在せず、前記新たな通信装置に用いられるデータの種類と前記保持部に保持されたデータの種類が不一致であるとき、前記新たな通信装置に用いられるデータを他装置から取得して前記新たな通信装置に転送することを特徴とする請求項２乃至５の何れかに記載の監視制御装置。
【請求項７】
監視制御装置と、前記監視制御装置の監視制御対象の通信装置とを有し、
前記監視制御装置は、
前記監視制御対象の通信装置に保持されたデータの種類を記憶する記憶部と、
前記監視制御対象の通信装置に新たな通信装置が追加される場合、前記監視制御対象の通信装置のうち、前記新たな通信装置に用いられるデータと同一種類のデータを保持する通信装置を前記記憶部から検索する検索部と、
前記検索部により検索された通信装置に、前記新たな通信装置への該データの転送を指示する指示部とを有し、
前記検索部により検索された通信装置は、前記指示部の指示に従い、自装置に保持されたデータを前記新たな通信装置に転送し、
前記新たな通信装置は、前記検索部により検索された通信装置から転送されたデータを保持することを特徴とする監視制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本件は、監視制御装置及び監視制御システムに関する。
【背景技術】
【０００２】
例えばレジデンシャル、ビジネス、及びモバイルなどの様々な場面のネットワークアプリケーションに応じ、多くの種類の通信装置が用いられている。通信装置には、ネットワークアプリケーションに応じ、機能及び性能に関するバリエーションが存在する。
【０００３】
通信装置は、一例として、通信処理を行う通信ユニット、各通信ユニットを監視制御する監視制御ユニット、各通信ユニットと監視制御ユニットを収容するシェルフ、複数のシェルフが取り付けられるラックなどから構成される。通信ユニットには、所望の通信処理を実現するため、ＦＰＧＡ（Field Programmable Gate Array）やＣＰＵ（Central Processing Unit）などが実装されている。ＦＰＧＡやＣＰＵは、通信ユニットに保持されたソフトウェア（つまりＣＰＵのファームウェアデータやＦＰＧＡの回路データなど）に従って動作する。
【０００４】
ソフトウェアデータは、通信ユニットの製造時に予め通信ユニット内の不揮発性メモリなどに記憶させてもよいが、監視制御ユニットから通信ユニットにダウンロードすることもできる（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−３２３３９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ネットワークアプリケーションによらない統合化されたネットワークシステムを構築するため、共通化された主要なハードウェア構成により多種の機能や性能を柔軟に実現する新しい通信ユニットが研究開発されている。この通信ユニットは、種別がなく、例えば、着脱自在な主信号の送受信モジュールであるＳＦＰ（Small Form-Factor Pluggable）の付け替え、及びソフトウェアデータのダウンロードなどにより異なる機能や性能を実現できる。
【０００７】
このため、例えば、１つの通信ユニットを「100G  Ethernet（登録商標、以下同様）」として動作させたり、「10G-PON(Passive Optical Network)」または「CPRI(Common Public Radio Interface)」として動作させることも可能である。したがって、複数の通信ユニットを設置場所によらずに組み合わせて、物理的ではない、仮想的なシェルフ（以下、「仮想シェルフ」と呼称）に構成して管理することにより、様々なネットワークアプリケーションに対応することができる。
【０００８】
この仮想シェルフが用いられる場合でも、監視制御ユニットは必要となる。監視制御ユニットは、上述した物理的なシェルフが存在しないため、独立した装置として、１以上の仮想シェルフ内の通信ユニットを監視制御する。
【０００９】
物理的なシェルフの場合、監視制御ユニットは、通信ユニットにソフトウェアデータをダウンロードするため、自装置と同じ物理的なシェルフに収容される通信ユニットの種類に応じたデータだけを保持すればよい。
【００１０】
しかし、仮想シェルフの場合、監視制御ユニットは、通信ユニットが実現する全ての機能や性能に応じて、多くの種類のデータを保持する必要がある。このため、監視制御ユニットには、全種類のデータの記憶する大容量の記憶デバイスを設ける必要があり、装置コストや装置サイズが増加するという問題がある。
【００１１】
そこで本件は上記の課題に鑑みてなされたものであり、ソフトウェアデータの記憶容量が低減された監視制御装置及び監視制御システムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本明細書に記載の監視制御装置は、監視制御対象の通信装置に保持されたデータの種類を記憶する記憶部と、前記監視制御対象の通信装置に新たな通信装置が追加される場合、前記監視制御対象の通信装置のうち、前記新たな通信装置に用いられるデータと同一種類のデータを保持する通信装置を前記記憶部から検索する検索部と、前記検索部により検索された通信装置に、前記新たな通信装置への該データの転送を指示する指示部とを有する。
【００１３】
本明細書に記載の監視制御システムは、監視制御装置と、前記監視制御装置の監視制御対象の通信装置とを有し、前記監視制御装置は、前記監視制御対象の通信装置に保持されたデータの種類を記憶する記憶部と、前記監視制御対象の通信装置に新たな通信装置が追加される場合、前記監視制御対象の通信装置のうち、前記新たな通信装置に用いられるデータと同一種類のデータを保持する通信装置を前記記憶部から検索する検索部と、前記検索部により検索された通信装置に、前記新たな通信装置への該データの転送を指示する指示部とを有し、前記検索部により検索された通信装置は、前記指示部の指示に従い、自装置に保持されたデータを前記新たな通信装置に転送し、前記新たな通信装置は、前記検索部により検索された通信装置から転送されたデータを保持する。
【発明の効果】
【００１４】
ソフトウェアデータの記憶容量を低減できる。
【図面の簡単な説明】
【００１５】
【図１】監視制御システムの一例を示す構成図である。
【図２】通信ユニットの物理的な配置の一例を示す構成図である。
【図３】通信ユニットの一例を示す構成図である。
【図４】監視制御ユニットの一例を示す構成図である。
【図５】ダウンロード統計情報の一例を示す図である。（ａ）は、ソフトウェアデータの種類ごとの通信ユニットの台数を示すダウンロード統計情報の一例を示す図である。（ｂ）は、ソフトウェアデータの種類ごとのダウンロードの頻度を示すダウンロード統計情報の一例を示す図である。（ｃ）は、ソフトウェアデータの種類ごとのサイズを示すダウンロード統計情報の一例を示す図である。
【図６】ネットワーク管理装置の一例を示す構成図である。
【図７】監視制御システムの起動時のソフトウェアデータの転送動作の一例を示す図である。
【図８】起動時の通信ユニットの処理の一例を示すフローチャートである。
【図９】起動時の監視制御ユニットの処理の一例を示すフローチャートである。
【図１０】通信ユニット間のソフトウェアデータの転送動作の一例を示す図である。
【図１１】通信ユニット間のソフトウェアデータの転送を行う場合の監視制御システムの処理の一例を示すシーケンス図である。
【図１２】ソフトウェアデータの転送指示の受信時の通信ユニットの処理の一例を示すフローチャートである。
【図１３】監視制御ユニットから通信ユニットへの予備のソフトウェアデータの転送動作の一例を示す図である。
【図１４】監視制御ユニットから通信ユニットへ予備のソフトウェアデータを転送する場合の監視制御システムの処理の一例を示すシーケンス図である。
【図１５】ネットワーク管理装置から新たな通信ユニットへのソフトウェアデータの転送動作の一例を示す図である。
【図１６】ネットワーク管理装置から新たな通信ユニットへソフトウェアデータを転送する場合の監視制御システムの処理の一例を示すシーケンス図である。
【図１７】監視制御システムの起動後の監視制御ユニットの処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１６】
図１は、監視制御システムの一例を示す構成図である。監視制御システムは、複数の監視制御ユニット１と、複数の通信ユニット２と、ネットワーク（ＮＷ）管理装置４とを有する。ＮＷ管理装置４は、コントロールプレーン（CP: Control Plane）９０を介して各監視制御ユニット１と通信し、各監視制御ユニット１は、ＣＰ９１を介して監視制御対象の各通信ユニット２と通信する。なお、ＣＰ９０，９１としては、ＶＰＮ（Virtual Private Network）などのセキュリティ性の高い専用のネットワークが挙げられるが、これに限定されない。
【００１７】
ＮＷ管理装置４は、例えばネットワークＯｐＳ（Operating System）が実装されたサーバであり、ネットワーク全体を管理する。ＮＷ管理装置４は、後述するように通信ユニット２に用いられるソフトウェアデータが格納されている。なお、ソフトウェアデータは、データの一例である。
【００１８】
監視制御ユニット１は、監視制御装置の一例であり、複数の通信ユニット２を監視制御する。ＮＷ管理装置４は、監視制御対象の通信ユニット２を、物理的なシェルフとは異なる仮想シェルフ３ごとに管理する。
【００１９】
各仮想シェルフ３には、識別子であるシェルフＩＤ（＃１，＃２，・・・，＃Ｍ（Ｍ：正の整数））が割り当てられ、１以上の通信ユニット２が属する。各通信ユニット２は、起動時、自装置が属するシェルフのシェルフＩＤが設定される。なお、本実施例において、各監視制御ユニット１は、２つの仮想シェルフ３の通信ユニット２を管理するが、管理対象の仮想シェルフ３の数に限定はない。
【００２０】
監視制御ユニット１は、監視制御システムの起動時（初期構築時）、ＮＷ管理装置４からソフトウェアデータを取得して、監視制御対象の仮想シェルフ３に属する全通信ユニット２にダウンロード（転送）する。また、監視制御ユニット１は、監視制御対象の仮想シェルフ３に新たな通信ユニット２が追加されるとき、後述するように、３種類の転送手段から１つを選択し、新たな通信ユニット２にソフトウェアデータを転送する。
【００２１】
通信ユニット２は、通信装置の一例であり、例えば通信サービスの加入者の通信処理を行う。通信ユニット２は、共通化された主要なハードウェア構成により多種の機能や性能を柔軟に実現する。この通信ユニット２は、種別がなく、後述するように、例えば、着脱自在なＳＦＰの付け替え、及びソフトウェアデータのダウンロードなどにより異なる機能や性能を実現する。
【００２２】
このため、通信ユニット２は、ネットワークアプリケーションによらない統合化されたネットワークシステムを構築できる。なお、以降の説明において、通信ユニット２ごとの機能や性能を通信ユニット２の「モード」（「Ｍ１」，「Ｍ２」，・・・）と表記する。
【００２３】
本実施例において、例えば、仮想シェルフ（＃１）３には、２台のモードＭ１の通信ユニット２、２台のモードＭ２の通信ユニット２、１台のモードＭ３の通信ユニット２、及び１台のモードＭ４の通信ユニット２が属する。また、仮想シェルフ（＃２）３には、２台のモードＭ１の通信ユニット２、１台のモードＭ２の通信ユニット２、及び１台のモードＭ４の通信ユニット２が属する。
【００２４】
一例として、モードＭ１の通信ユニット２は「100G  Ethernet」の通信装置として動作し、モードＭ２の通信ユニット２は「10G-PON」の通信装置として動作する。また、モードＭ３の通信ユニット２は「CPRI」の通信装置として動作し、モードＭ４の通信ユニット２は「WDM(Wavelength Division Multiplex)-PON」の通信装置として動作する。
【００２５】
このように、複数の通信ユニット２を組み合わせて、仮想シェルフ３に構成して管理することにより、様々なネットワークアプリケーションに対応することができる。なお、本実施例では、１つの仮想シェルフ３に最大６台の通信ユニット２が属するが、１つの仮想シェルフ３に属する通信ユニット２の最大数に限定はない。
【００２６】
各仮想シェルフ３に属する通信ユニット２は、一例として、インターフェースＩＤ（ＩＮＦ−ＩＤ）「＃１」〜「＃６」により識別される。例えば、仮想シェルフ（＃２）３のモードＭ１の通信ユニット２の一方はＩＮＦ−ＩＤ「＃１」で識別され、他方はＩＮＦ−ＩＤ「＃３」で識別される。また、通信ユニット２には、以下に述べるように物理的な配置の制限がない。
【００２７】
図２は、通信ユニット２の物理的な配置の一例を示す構成図である。通信ユニット２は、ラック５ａ〜５ｃに取り付けられている。ラック５ａ，５ｂは同じ架列αに配置され、ラック５ｃは別の架列βに配置されている。
【００２８】
図２には、各通信ユニット２が属する仮想シェルフ３のシェルフＩＤが示されている。架列αのラック５ａには、シェルフＩＤ「＃１」及び「＃２」の仮想シェルフ３に属する通信ユニット２が２台ずつ取り付けられており、架列αのラック５ｂには、シェルフＩＤ「＃１」の仮想シェルフ３に属する２台の通信ユニット２が取り付けられている。また、架列βのラック５ｃには、シェルフＩＤ「＃２」の仮想シェルフ３に属する３台の通信ユニット２及びシェルフＩＤ「＃３」の仮想シェルフ３に属する１台の通信ユニット２が取り付けられている。
【００２９】
各ラック５ａ〜５ｃ内の通信ユニット２は、例えばラック５ａ〜５ｃの背面の配線を介してＣＰ９１に接続されているため、通信ユニット２は監視制御ユニット１と通信する。したがって、監視制御ユニット１は、ラック５ａ〜５ｃ内の異なる位置に取り付けられた通信ユニット２同士、異なるラック５ａ〜５ｃ内の通信ユニット２同士、あるいは異なる架列α，βのラック５ａ〜５ｃ内の通信ユニット２同士を共通の仮想シェルフ３として管理することができる。
【００３０】
これにより、通信ユニット２は、物理的な配置に制限のない「ロケーションフリー」な通信装置として扱うことができる。以下に通信ユニット２の構成について説明する。
【００３１】
図３は、通信ユニット２の一例を示す構成図である。通信ユニット２は、ＣＰＵ（Central Processing Unit）２０、ＲＯＭ（Read Only Memory）２１、ＲＡＭ（Random Access Memory）２２、冗長構成された不揮発性メモリ２３、ＦＰＧＡ２４、複数のコネクタ２５ａ〜２５ｃ、及び複数の通信ポート２６を有する。ＣＰＵ２０は、互いに信号の入出力ができるように、ＲＯＭ２１、ＲＡＭ２２、不揮発性メモリ２３、ＦＰＧＡ２４、及び複数の通信ポート２６と、データバス２７を介して接続されている。
【００３２】
ＲＯＭ２１には、ＣＰＵ２０を駆動するプログラムが格納されている。ＲＡＭ２２は、ＣＰＵ２０のワーキングメモリとして機能する。不揮発性メモリ２３には、ＣＰＵ２０の通信処理機能及びＦＰＧＡ２４を動作させるソフトウェアデータが格納されている。つまり、ソフトウェアデータには、ＣＰＵ２０の通信処理機能に関するファームウェアデータ及びＦＰＧＡ２４の回路データが含まれる。
【００３３】
通信ポート２６は、例えばＰＨＹ（Physical Layer）／ＭＡＣ（Media Access Control）デバイスであり、外部端末との間やＣＰ９１を介して監視制御ユニット１との間でパケットを送受信する。なお、本実施例において、パケットとしてＩＰパケットを挙げるが、これに限定されない。
【００３４】
ＦＰＧＡ２４は、複数のコネクタ２５ａ〜２５ｃと接続され、コネクタ２５ａ〜２５ｃから入力される、例えば加入者の信号（以下、「クライアント信号」と表記）を処理する。コネクタ２５ａ〜２５ｃは、通信ユニット２のモードＭ１，Ｍ２，・・・ごとに設けられ、モードＭ１，Ｍ２，・・・に応じた送受信モジュール２８ａ〜２８ｃが挿入される。なお、本実施例において、コネクタ２５ａ〜２５ｃから入力される信号の例として、クライアント信号を挙げるが、これに限定されない。
【００３５】
送受信モジュール２８ａ〜２８ｃから選択された１つだけが、コネクタ２５ａ〜２５ｃに挿入される（「選択」参照）。ＦＰＧＡ２４は、何れかのコネクタ２５ａ〜２５ｃに送受信モジュール２８ａ〜２８ｃが挿入された場合、そのコネクタ２５ａ〜２５ｃに対応するモードＭ１，Ｍ２，・・・に従いクライアント信号を処理する。
【００３６】
送受信モジュール２８ａ〜２８ｃとしては、例えばＳＦＰが挙げられる。例えば、送受信モジュール２８ａが「Smart SFP」（登録商標）である場合、送受信モジュール２８ａがコネクタ２５ａに挿入されると、ＦＰＧＡ２４は、ソフトウェアデータに含まれるEthernet 用の回路データによりコンフィグレーションされる。これにより、ＦＰＧＡ２４は、Ethernetの規定に従いクライアント信号を処理する。
【００３７】
また、例えば、送受信モジュール２８ｂが「Chameleon SFP」（登録商標）である場合、送受信モジュール２８ｂがコネクタ２５ｂに挿入されると、ＦＰＧＡ２４は、ソフトウェアデータに含まれる「10G-PON」 用の回路データによりコンフィグレーションされる。これにより、ＦＰＧＡ２４は、「10G-PON」の規定に従いクライアント信号を処理する。なお、ＦＰＧＡ２４に代えて、回路データによるコンフィグレーションが可能な他のデバイスが用いられてもよい。
【００３８】
ＣＰＵ２０は、ＲＯＭ２１からプログラムを読み込むと、機能として、制御部２００、データ転送処理部２０１、実装通知部２０３、及びデータ格納処理部２０４が形成される。また、ＣＰＵ２０は、ソフトウェアデータに含まれるファームウェアデータを読み込むと、機能として、通信処理部２０２が形成される。通信処理部２０２は、ＦＰＧＡ２４と同様に、ソフトウェアデータに応じた通信処理を行う。
【００３９】
制御部２００は、通信ユニット２の動作を全体的に制御し、データ転送処理部２０１、通信処理部２０２、実装通知部２０３、及びデータ格納処理部２０４に対して各種の指示や応答を行う。
【００４０】
制御部２００は、通信ユニット２の起動時、端末から通信ポート２６を介して設定処理を受け付ける。設定処理の内容には、例えば、通信ユニット２のアドレス、仮想シェルフ３のシェルフＩＤ、モードＭ１，Ｍ２，・・・、及び、適用されるソフトウェアデータの種類であるデータＩＤなどが含まれる。
【００４１】
実装通知部２０３は、通信ユニット２の起動時、通信ユニット２の実装を監視制御ユニット１に通知する。この実装通知には、設定処理で設定されたアドレス、シェルフＩＤ、モードＭ１，Ｍ２，・・・、及びデータＩＤなどの情報が含まれる。
【００４２】
データ格納処理部２０４は、監視制御ユニット１から転送されたソフトウェアデータ、または他の通信ユニット２から転送されたソフトウェアデータの格納処理を行う。例えば、データ格納処理部２０４は、通信ポート２６を介してソフトウェアデータを取得し、不揮発性メモリ２３に格納する。なお、不揮発性メモリ２３は、冗長構成されており、ソフトウェアデータも冗長化されている。各不揮発性メモリ２３に保持されたソフトウェアデータは、現用系及び予備系として扱われ、内容が互いに同期している。
【００４３】
例えばソフトウェアデータのヘッダ部分には、そのソフトウェアデータの種類を示すデータＩＤが格納されている。データ格納処理部２０４は、監視制御ユニット１または他の通信ユニット２からソフトウェアデータのデータＩＤが、自装置のモードＭ１，Ｍ２，・・・に応じたものであるかを確認する。
【００４４】
制御部２００は、不揮発性メモリ２３内のソフトウェアデータを、ＲＡＭ２２及びＦＰＧＡ２４に展開する。これにより、ＦＰＧＡ２４はソフトウェアデータ内の回路データによりコンフィグレーションされ、ＣＰＵ２０は、ソフトウェアデータ内のファームウェアデータにより通信処理部２０２が形成される。制御部２００は、ソフトウェアデータの展開を完了すると、ソフトウェアデータの受信通知を監視制御ユニット１に送信する。その後、通信処理部２０２及びＦＰＧＡ２４は通信処理を開始する。
【００４５】
また、制御部２００は、監視制御ユニット１からの指示を受信したとき、データ転送処理部２０１に他の通信ユニット２へのソフトウェアデータの転送を指示する。データ転送処理部２０１は、制御部２００の指示に従い、不揮発性メモリ２３からソフトウェアデータを読み出して、通信ポート２６を介して他の通信ユニット２に転送する。このとき、宛先の通信ユニット２のアドレスは、例えばソフトウェアデータの転送指示に含まれている。次に、監視制御ユニット１の構成を説明する。
【００４６】
図４は、監視制御ユニット１の一例を示す構成図である。監視制御ユニット１は、ＣＰＵ１０、ＲＯＭ１１、ＲＡＭ１２、不揮発性メモリ１３、ダウンロード（ＤＬ）管理メモリ１４、及び複数の通信ポート１５を有する。ＣＰＵ１０は、互いに信号の入出力ができるように、ＲＯＭ１１、ＲＡＭ１２、不揮発性メモリ１３、ＤＬ管理メモリ１４、及び複数の通信ポート１５と、データバス１６を介して接続されている。
【００４７】
ＲＯＭ１１には、ＣＰＵ１０を駆動するプログラムが格納されている。ＲＡＭ１２は、ＣＰＵ１０のワーキングメモリとして機能する。通信ポート１５は、例えばＰＨＹ／ＭＡＣデバイスであり、ＣＰ９１を介して通信ユニット２との間で、また、ＣＰ９０を介してＮＷ管理装置４との間でパケットを送受信する。なお、本実施例において、パケットとしてＩＰパケットを挙げるが、これに限定されない。
【００４８】
不揮発性メモリ１３には、通信ユニット２に用いられるソフトウェアデータが格納されている。不揮発性メモリ１３には、一例として、ソフトウェアデータの記憶領域Ｘ，Ｙ１，Ｙ２が設けられている。記憶領域Ｘには、ＮＷ管理装置４から転送されたソフトウェアデータが一時的に記憶される。記憶領域Ｘ内のソフトウェアデータは、該当する通信ユニット２に転送される。
【００４９】
記憶領域Ｙ１，Ｙ２には、データＩＤが「Ｄｉ」，「Ｄｊ」（ｉ，ｊ：正の整数）である予備のソフトウェアデータがそれぞれ記憶されている。予備のソフトウェアデータは、監視制御対象の仮想シェルフ３に新たな通信ユニット２が追加される場合に、データＩＤ「Ｄｉ」，「Ｄｊ」がその通信ユニット２のモードＭ１，Ｍ２，・・・に対応するものであるとき、通信ユニット２に転送される。データＩＤ「Ｄｉ」，「Ｄｊ」は、ＤＬ管理メモリ１４に保持されたダウンロード（ＤＬ）統計情報１４０に基づき決定される。
【００５０】
なお、本実施例において、予備のソフトウェアデータの記憶領域として２つの記憶領域Ｙ１，Ｙ２が設けられているが、３つ以上の記憶領域が設けられてもよい。もっとも、監視制御ユニット１の装置コストを低減するためには、不揮発性メモリ１３の記憶容量が小さい方がよいため、記憶領域Ｙ１，Ｙ２は少ない方が望ましい。
【００５１】
ＤＬ管理メモリ１４には、ＤＬ統計情報１４０及びデータ管理テーブル（ＴＢＬ）１４１が記憶されている。ＤＬ統計情報１４０は、データ情報の一例であり、監視制御ユニット１から通信ユニット２に転送されたソフトウェアデータの種類に関する情報である。ＤＬ統計情報１４０は、不揮発性メモリ１３の記憶領域Ｙ１，Ｙ２に保持される予備のソフトウェアデータの種類、つまりデータＩＤ「Ｄｉ」，「Ｄｊ」の選択に用いられる。
【００５２】
データ管理ＴＢＬ１４１は、監視制御対象の仮想シェルフ３に属する通信ユニット２に保持されたソフトウェアデータの種類、つまりデータＩＤが登録されている。より具体的には、データ管理ＴＢＬ１４１には、シェルフＩＤ、ＩＮＦ−ＩＤ、モード、及びデータＩＤが互いに対応付けられて登録されている。
【００５３】
図４の例では、例えばシェルフＩＤ「＃１」のＩＮＦ−ＩＤ「＃１」の通信ユニット２は、モードＭ１であり、データＩＤ「Ｄ１」のソフトウェアデータを保持している。また、シェルフＩＤ「＃１」のＩＮＦ−ＩＤ「＃２」の通信ユニット２は、モードＭ２であり、データＩＤ「Ｄ２」のソフトウェアデータを保持している。なお、データＩＤは、単にモードＭ１，Ｍ２，・・・に応じた種類だけでなく、そのバージョンも含めた種類も示すものとする。
【００５４】
このため、データ管理ＴＢＬ１４１によると、監視制御対象の仮想シェルフ３の各通信ユニット２に保持されたソフトウェアデータの種類を検出できる。なお、ＤＬ管理メモリ１４は、記憶部の一例である。
【００５５】
ＣＰＵ１０は、ＲＯＭ１１からプログラムを読み込むと、機能として、制御部１００、データ転送処理部１０１、ユニット検索部１０２、ダウンロード（ＤＬ）統計取得部１０３、及びデータ保持処理部１０４が形成される。
【００５６】
制御部１００は、監視制御ユニット１の動作を全体的に制御し、データ転送処理部１０１、ユニット検索部１０２、ＤＬ統計取得部１０３、及びデータ保持処理部１０４に対して各種の指示や応答を行う。制御部１００は、通信ユニット２の起動時、通信ユニット２から通信ポート１５を介して実装通知を受信する。制御部１００は、実装通知から各種の情報を取得して、データ管理ＴＢＬ１４１に登録する。
【００５７】
制御部１００は、監視制御システムの起動時、実装通知により各通信ユニット２の実装を検出し、各通信ユニット２へのソフトウェアデータの転送をデータ転送処理部１０１に指示する。データ転送処理部１０１は、転送処理部の一例であり、制御部１００からの転送指示に従い、監視対象の仮想シェルフ３の各通信ユニット２にソフトウェアデータを転送する。
【００５８】
ＤＬ統計取得部１０３は、取得部の一例であり、転送処理部により転送されたソフトウェアデータの種類に関するＤＬ統計情報１４０を取得する。ＤＬ統計取得部１０３は、取得したＤＬ統計情報１４０をＤＬ管理メモリ１４に書き込む。
【００５９】
データ保持処理部１０４は、保持部の一例であり、ＤＬ統計情報１４０に基づき、所定の条件を満たす種類のソフトウェアデータを選択して保持する。より具体的には、データ保持処理部１０４は、ＤＬ統計情報１４０に基づき、所定条件を満たす予備のソフトウェアデータのデータＩＤ「Ｄｉ」，「Ｄｊ」を決定し、そのソフトウェアデータをＮＷ管理装置４から取得して不揮発性メモリ１３の記憶領域Ｙ１，Ｙ２に書き込む。
【００６０】
ＤＬ統計情報１４０は、例えば、ソフトウェアデータを保持する通信ユニット２のデータＩＤごとの台数、データＩＤごとのソフトウェアデータの転送処理部によるダウンロードの頻度、またはデータＩＤごとのソフトウェアデータのサイズを、データＩＤごとに示す。以下に各例について述べる。
【００６１】
図５（ａ）には、ソフトウェアデータの種類ごとの通信ユニットの台数を示すＤＬ統計情報１４０の一例が示されている。本例では、ＤＬ統計取得部１０３は、ソフトウェアデータの種類ごとに、そのソフトウェアデータを保持する監視制御対象の通信ユニット２の数を示すＤＬ統計情報１４０を取得する。
【００６２】
より具体的には、ＤＬ統計情報１４０は、データＩＤごとの通信ユニット２の台数を示す。例えば、データＩＤ「Ｄ１」のソフトウェアデータを保持する通信ユニット２の台数は４台であり、データＩＤ「Ｄ２」のソフトウェアデータを保持する通信ユニット２の台数は３台である。また、データＩＤ「Ｄ４」のソフトウェアデータを保持する通信ユニット２の台数は２台であり、データＩＤ「Ｄ３」のソフトウェアデータを保持する通信ユニット２の台数は１台である。
【００６３】
データ保持処理部１０４は、ＤＬ統計取得部１０３に基づき、監視制御対象の通信ユニット２の台数の順位（「順位」参照）に応じた種類のソフトウェアデータを選択して保持する。本例において、データ保持処理部１０４は、順位が１番のデータＩＤ「Ｄ１」と順位が２番のデータＩＤ「Ｄ２」のソフトウェアデータを選択して、不揮発性メモリ１３の記憶領域Ｙ１，Ｙ２に保持する。
【００６４】
つまり、予備のソフトウェアデータのデータＩＤ「Ｄｉ」，「Ｄｊ」として、データＩＤ「Ｄ１」，「Ｄ２」が選択される。このため、他より多くの通信ユニット２に用いられるソフトウェアデータが、予備のソフトウェアデータとして選択される。
【００６５】
また、図５（ｂ）には、ソフトウェアデータの種類ごとのダウンロードの頻度を示すＤＬ統計情報１４０の一例が示されている。本例では、ＤＬ統計取得部１０３は、ソフトウェアデータの種類ごとに、データ転送処理部１０１によるそのソフトウェアデータの転送の頻度を示すＤＬ統計情報１４０を取得する。
【００６６】
より具体的には、ＤＬ統計情報１４０は、データＩＤごとのソフトウェアデータの１月当たりのダウンロード回数（回／月）を示す。例えば、データＩＤ「Ｄ１」のソフトウェアデータのダウンロードの頻度は７（回／月）であり、データＩＤ「Ｄ４」のソフトウェアデータのダウンロードの頻度は５（回／月）である。また、データＩＤ「Ｄ２」のソフトウェアデータのダウンロードの頻度は４（回／月）であり、データＩＤ「Ｄ３」のソフトウェアデータのダウンロードの頻度は２（回／月）である。なお、ダウンロードの頻度は、１月当たりのダウンロード回数に限定されず、１日当たりのダウンロード回数や監視制御ユニット１の初期起動時以降の累計のダウンロード回数としてもよい。
【００６７】
データ保持処理部１０４は、ＤＬ統計取得部１０３に基づき、ダウンロードの頻度の順位（「順位」参照）に応じた種類のソフトウェアデータを選択して保持する。データ保持処理部１０４は、順位が１番のデータＩＤ「Ｄ１」と順位が２番のデータＩＤ「Ｄ４」のソフトウェアデータを選択して、不揮発性メモリ１３の記憶領域Ｙ１，Ｙ２に保持する。
【００６８】
つまり、予備のソフトウェアデータのデータＩＤ「Ｄｉ」，「Ｄｊ」として、データＩＤ「Ｄ１」，「Ｄ４」が選択される。このため、他より多くダウンロードされたソフトウェアデータが、予備のソフトウェアデータとして選択される。
【００６９】
また、図５（ｃ）には、ソフトウェアデータの種類ごとのサイズを示すＤＬ統計情報１４０の一例が示されている。本例では、ＤＬ統計取得部１０３は、ソフトウェアデータの種類ごとに、そのソフトウェアデータのサイズを示すＤＬ統計情報１４０を取得する。
【００７０】
より具体的には、ＤＬ統計情報１４０は、データＩＤごとのソフトウェアデータのサイズ（GByte）を示す。例えば、データＩＤ「Ｄ２」のソフトウェアデータのサイズは５（GByte）であり、データＩＤ「Ｄ１」のソフトウェアデータのサイズは４（GByte）である。また、データＩＤ「Ｄ３」のソフトウェアデータのサイズは２（GByte）であり、データＩＤ「Ｄ４」のソフトウェアデータのサイズは１（GByte）である。
【００７１】
データ保持処理部１０４は、ＤＬ統計取得部１０３に基づき、サイズの順位（「順位」参照）に応じた種類のソフトウェアデータを選択して保持する。データ保持処理部１０４は、順位が１番のデータＩＤ「Ｄ２」と順位が２番のデータＩＤ「Ｄ１」のソフトウェアデータを選択して、不揮発性メモリ１３の記憶領域Ｙ１，Ｙ２に保持する。
【００７２】
つまり、予備のソフトウェアデータのデータＩＤ「Ｄｉ」，「Ｄｊ」として、データＩＤ「Ｄ２」，「Ｄ１」が選択される。このため、他よりサイズが大きいソフトウェアデータが、予備のソフトウェアデータとして選択される。これにより、本例では、ＮＷ管理装置４から監視制御ユニット１へのソフトウェアデータのダウンロードに要する時間が低減されるとともに、ＣＰ９０のトラフィックへの負荷が低減される。
【００７３】
なお、図５（ａ）〜図５（ｃ）に示されたＤＬ統計情報１４０のうち、少なくとも２つを組み合わせたＤＬ統計情報１４０が用いられてもよい。例えば、予備のソフトウェアデータの記憶領域Ｙ１，Ｙ２が、図４の例とは異なり、３つ設けられた場合、図５（ａ）〜図５（ｃ）の各順位の優先度に従い、データＩＤ「Ｄ１」（図５（ａ）の１位），「Ｄ４」（図５（ｂ）の２位），「Ｄ２」（図５（ｃ）の１位）の各ソフトウェアデータが選択されてもよい。
【００７４】
再び図４を参照すると、制御部１００は、監視制御システムの起動後、監視対象の仮想シェルフ３に新たな通信ユニット２が追加される場合、ユニット検索部１０２に、新たな通信ユニット２と同一種類のソフトウェアデータを保持する通信ユニット２の検索を指示する。このとき、制御部１００は、新たな通信ユニット２の実装通知からデータＩＤを取得して、ユニット検索部１０２に通知する。
【００７５】
ユニット検索部１０２は、検索部の一例であり、監視制御対象の仮想シェルフ３に新たな通信ユニット２が追加される場合、新たな通信ユニット２に用いられるソフトウェアデータと同一種類のソフトウェアデータを保持する通信ユニット２をＤＬ管理メモリ１４から検索する。より具体的には、ユニット検索部１０２は、制御部１００からの検索指示に従い、新たな通信ユニット２のデータＩＤと同一のデータＩＤの通信ユニット２をデータ管理ＴＢＬ１４１から検索する。ユニット検索部１０２は、新たな通信ユニット２のデータＩＤと同一のデータＩＤを保持する通信ユニット２のシェルフＩＤ及びＩＮＦ−ＩＤを制御部１００に通知する。
【００７６】
制御部１００は、指示部の一例であり、ユニット検索部１０２により検索された通信ユニット２に、新たな通信ユニット２へのソフトウェアデータの転送を指示する。より具体的には、制御部１００は、ユニット検索部１０２から通知された通信ユニット２のシェルフＩＤ及びＩＮＦ−ＩＤに該当する通信ユニット２に、通信ポート１５を介してソフトウェアデータの転送指示を送信する。なお、転送指示には、新たな通信ユニット２の実装通知から取得された新たな通信ユニット２のアドレスが含まれる。
【００７７】
このように、制御部１００は、新たな通信ユニット２に用いられるソフトウェアデータと同一種類のソフトウェアデータを保持する通信ユニット２に対して、新たな通信ユニット２へのソフトウェアデータの転送を指示する。このため、監視制御ユニット１は、通信ユニット２の全てのモードＭ１，Ｍ２，・・・に応じた全種類のソフトウェアデータを保持する必要がないため、ソフトウェアデータの記憶容量が低減される。
【００７８】
また、制御部１００は、ユニット検索部１０２により通信ユニット２が検索されない場合、つまり、新たな通信ユニット２のデータＩＤと同一のデータＩＤの通信ユニット２が存在しない場合、データ転送処理部１０１に予備のソフトウェアデータの転送を指示する。データ転送処理部１０１は、不揮発性メモリ１３の記憶領域Ｙ１，Ｙ２内の予備のソフトウェアデータのデータＩＤ「Ｄｉ」，「Ｄｊ」を、新たな通信ユニット２に用いられるソフトウェアデータのデータＩＤと比較する。
【００７９】
データ転送処理部１０１は、予備のソフトウェアデータのデータＩＤ「Ｄｉ」，「Ｄｊ」の何れかが新たな通信ユニット２に用いられるソフトウェアデータのデータＩＤに一致する場合、一致する予備のソフトウェアデータを、通信ポート１５を介して新たな通信ユニット２に転送する。なお、新たな通信ユニット２に用いられるソフトウェアデータのデータＩＤは、新たな通信ユニット２の実装通知から取得される。
【００８０】
このように、データ転送処理部１０１は、新た通信ユニット２に用いられるデータと同一種類のソフトウェアデータを保持する通信ユニット２が存在せず、新たな通信ユニット２に用いられるソフトウェアデータの種類と予備のソフトウェアデータの種類が一致するとき、予備のソフトウェアデータを新たな通信ユニット２に転送する。したがって、監視制御ユニット１は、ＮＷ管理装置４からソフトウェアデータを取得する必要がないため、ＣＰ９０にトラフィックの負荷をかけることなく、短時間で新たな通信ユニット２にソフトウェアデータを転送できる。
【００８１】
また、データ転送処理部１０１は、新たな通信ユニット２に用いられるソフトウェアデータの種類と予備のソフトウェアデータの種類が不一致である場合、新たな通信ユニット２に用いられるソフトウェアデータをＮＷ管理装置４から取得して、不揮発性メモリ１３の記憶領域Ｘを介し新たな通信ユニット２に転送する。このため、監視制御ユニット１は、新たな通信ユニット２に用いられるソフトウェアデータと同一種類のソフトウェアデータが、監視制御対象の通信ユニット２及び不揮発性メモリ１３の記憶領域Ｙ１，Ｙ２に存在しない場合でも、新たな通信ユニット２にソフトウェアデータを転送できる。
【００８２】
図６は、ネットワーク管理装置４の一例を示す構成図である。ネットワーク管理装置４は、ＣＰＵ４０、ＲＯＭ４１、ＲＡＭ４２、記憶装置４３、入出力装置４４、及び複数の通信ポート４５を有する。ＣＰＵ４０は、互いに信号の入出力ができるように、ＲＯＭ４１、ＲＡＭ４２、記憶装置４３、入出力装置４４、及び複数の通信ポート４５と、データバス４６を介して接続されている。
【００８３】
ＲＯＭ４１には、ＣＰＵ４０を駆動するプログラムが格納されている。ＲＡＭ４２は、ＣＰＵ４０のワーキングメモリとして機能する。通信ポート４５は、例えばＰＨＹ／ＭＡＣデバイスであり、ＣＰ４０を介して監視制御ユニット１との間でパケットを送受信する。
【００８４】
記憶装置４３は、例えばストレージデバイスであり、大きな記憶容量（例えば１（TByte）以上）を有する。記憶装置４３には、通信ユニット２の全てのモードＭ１，Ｍ２，・・・に応じた全種類のソフトウェアデータ（データＩＤ：「Ｄ１」〜「Ｄｍ」（ｍ：正の整数））が記憶されている。記憶装置４３内のソフトウェアデータは、監視制御ユニット１を介して通信ユニット２に転送される。
【００８５】
入出力装置４４は、例えばキーボード、マウス、及びディスプレイなどであり、オペレータの操作に用いられる。
【００８６】
ＣＰＵ４０は、ＲＯＭ４１からプログラムを読み込むと、機能として、制御部４００、ユニット管理部４０１、及びデータ転送処理部４０２が形成される。
【００８７】
制御部４００は、ＮＷ管理装置４の動作を全体的に制御し、ユニット管理部４０１及びデータ転送処理部４０２に対して各種の指示や応答を行う。ユニット管理部４０１は、ＮＷ管理装置４に接続された各監視制御ユニット１の監視制御対象の通信ユニット２を管理する。ユニット管理部４０１は、監視制御ユニット１から通信ポート４５を介して通信ユニット２の実装検出通知を受信し、実装検出通知に基づき通信ユニット２をデータベースに登録して管理する。
【００８８】
データ転送処理部４０２は、監視制御ユニット１からの要求に応じてソフトウェアデータを記憶装置４３から読み出し、監視制御ユニット１に転送する。監視制御ユニット１からの要求には、所望のソフトウェアデータのデータＩＤが含まれており、データ転送処理部４０２は、そのデータＩＤに応じたソフトウェアデータを選択して転送する。データ転送処理部４０２は、監視制御システムの起動時、監視制御ユニット１の監視制御対象の各通信ユニット２に応じたソフトウェアデータを順次に転送する。
【００８９】
図７には、監視制御システムの起動時のソフトウェアデータの転送動作の一例が示されている。図７において、図１、図３、図４、及び図６と共通する構成については同一の符号を付し、その説明を省略する。図７は、仮想シェルフ（＃１、＃２）３の通信ユニット２にソフトウェアデータが転送される動作を示す。
【００９０】
監視制御システムの起動時、ＮＷ管理装置４は、矢印Ａ１で示されるように、監視制御ユニット１の要求に応じて、記憶装置４３からソフトウェアデータを読み出し、ＣＰ９０を介して監視制御ユニット１に転送する。転送されたソフトウェアデータは、不揮発性メモリ１３の記憶領域Ｘに一時的に記憶される。監視制御ユニット１は、記憶領域Ｘ内のソフトウェアデータを読み出し、矢印Ａ２で示されるように、ＣＰ９１を介して監視制御対象の通信ユニット２のうち、該当する通信ユニット２に転送する。
【００９１】
また、監視制御ユニット１は、監視制御対象の全ての通信ユニット２にソフトウェアデータを転送した後、ＤＬ統計情報１４０に基づき、予備のソフトウェアデータのデータＩＤを決定する。監視制御ユニット１は、ＮＷ管理装置４に、そのデータＩＤのソフトウェアデータを要求する。なお、本例では、データＩＤ「Ｄ１」，「Ｄ２」が、予備のソフトウェアデータのデータＩＤとして決定されたと仮定する。
【００９２】
ＮＷ管理装置４は、監視制御ユニット１の要求に応じて、矢印Ａ１’で示されるように、データＩＤ「Ｄ１」，「Ｄ２」のソフトウェアデータを監視制御ユニット１に転送する。転送されたソフトウェアデータは、予備のソフトウェアデータとして、不揮発性メモリ１３の記憶領域Ｙ１，Ｙ２に記憶される。
【００９３】
図８は、起動時の通信ユニット２の処理の一例を示すフローチャートである。まず、監視制御ユニット１の制御部２００は、外部の端末からの操作に応じて設定処理を行う（ステップＳｔ１）。上述したように、設定処理の内容には、例えば、通信ユニット２のアドレス、仮想シェルフ３のシェルフＩＤ、モードＭ１，Ｍ２，・・・、及びデータＩＤなどが含まれる。
【００９４】
次に、実装通知部２０３は、上記の設定内容に関する情報が含まれた実装通知を監視制御ユニット１に送信する（ステップＳｔ２）。次に、データ格納処理部２０４は、監視制御ユニット１からソフトウェアデータ（Ｓ／Ｗデータ）を受信したか否かを判定する（ステップＳｔ３）。通信ユニット２は、ソフトウェアデータが受信されていない場合（ステップＳｔ３のＮｏ）、処理を終了する。なお、この場合、データ格納処理部２０４は、監視制御ユニット１に対して警報を出力してもよい。
【００９５】
また、データ格納処理部２０４は、ソフトウェアデータを受信した場合（ステップＳｔ３のＹｅｓ）、ソフトウェアデータを不揮発性メモリ２３に格納する（ステップＳｔ４）。次に、制御部２００は、ソフトウェアデータをＦＰＧＡ２４やＲＡＭ２２に展開する（ステップＳｔ５）。これにより、通信処理部２０２及びＦＰＧＡ２４は通信処理を開始する。
【００９６】
次に、制御部２００は、ソフトウェアデータの正常受信を監視制御ユニット１に通知して（ステップＳｔ６）、処理を終了する。このようにして、通信ユニット２は起動時の処理を行う。
【００９７】
また、図９は、起動時の監視制御ユニット１の処理の一例を示すフローチャートである。まず、監視制御ユニット１の制御部１００は、通信ユニット２からの実装通知の有無を判定する（ステップＳｔ１１）。制御部１００は、実装通知がない場合（ステップＳｔ１１のＮｏ）、再びステップＳｔ１１の判定処理を行う。
【００９８】
また、制御部１００は、実装通知があった場合（ステップＳｔ１１のＹｅｓ）、実装検出通知をＮＷ管理装置４に送信する（ステップＳｔ１２）。次に、制御部１００は、実装通知のあった通信ユニット２の１つを選択する（ステップＳｔ１３）。選択した通信ユニット２のアドレスは、ソフトウェアデータの転送指示としてデータ転送処理部１０１に通知される。
【００９９】
次に、データ転送処理部１０１は、選択された通信ユニット２にソフトウェアデータを転送する（ステップＳｔ１４）。次に、制御部１００は、通信ユニット２の実装通知内の情報をデータ管理ＴＢＬ１４１に登録する（ステップＳｔ１５）。
【０１００】
次に、制御部１００は、実装通知があった通信ユニット２のうち、未選択の通信ユニット２の有無を判定する（ステップＳｔ１６）。制御部１００は、未選択の通信ユニットが有る場合（ステップＳｔ１６のＹｅｓ）、再びステップＳｔ１３の処理を実行する。また、未選択の通信ユニットがない場合（ステップＳｔ１６のＮｏ）、ＤＬ統計取得部１０３は、データ転送処理部１０１の転送履歴からＤＬ統計情報１４０を取得する（ステップＳｔ１７）。
【０１０１】
次に、データ保持処理部１０４は、ＤＬ統計情報１４０に基づき、図５（ａ）〜図５（ｃ）を参照して述べた条件を満たす種類のソフトウェアデータを選択する（ステップＳｔ１８）。次に、データ保持処理部１０４は、選択した予備のソフトウェアデータをＮＷ管理装置４に要求する（ステップＳｔ１９）。次に、データ保持処理部１０４は、ＮＷ管理装置４から転送されたソフトウェアデータを、不揮発性メモリ１３の記憶領域Ｙ１，Ｙ２に格納する（ステップＳｔ２０）。
【０１０２】
次に、制御部１００は、通信ユニット２からのソフトウェアデータの受信通知の有無を判定する（ステップＳｔ２１）。制御部１００は、受信通知が有った場合（ステップＳｔ２１のＹｅｓ）、転送完了通知をＮＷ管理装置４に送信して（ステップＳｔ２２）、処理を終了する。また、制御部１００は、受信通知がない場合（ステップＳｔ２１のＮｏ）、転送異常通知をＮＷ管理装置４に送信して（ステップＳｔ２３）、処理を終了する。このようにして、監視制御ユニット１は処理を行う。
【０１０３】
監視制御システムの起動後、監視制御ユニット１は、監視制御対象の仮想シェルフ３に新たな通信ユニット２が追加される場合、新たな通信ユニット２と同一種類のソフトウェアデータを保持する通信ユニット２が存在するとき、その通信ユニット２にソフトウェアデータの転送を指示する。本動作について、以下に説明する。
【０１０４】
図１０には、通信ユニット２間のソフトウェアデータの転送動作の一例が示されている。図１０において、図７と共通する構成については同一の符号を付し、その説明を省略する。
【０１０５】
図１０は、仮想シェルフ（＃２）３にモードＭ３の新たな通信ユニット２ａが追加された例を示す。監視制御ユニット１は、データ管理ＴＢＬ１４１から、新たな通信ユニット２ａに用いられるソフトウェアデータと同一種類のソフトウェアデータを保持する既設の通信ユニット２ｂを検索する。なお、既設の通信ユニット２ｂは、新たな通信ユニット２ｂと同一のモードＭ３で動作する。
【０１０６】
監視制御ユニット１は、仮想シェルフ（＃１）３の既設の通信ユニット２ｂに、新たな通信ユニット２ａへのソフトウェアデータの転送を指示する。これにより、矢印Ａ３で示されるように、既設の通信ユニット２ｂから新たな通信ユニット２ａに、モードＭ３用のデータＩＤ「Ｄ３」が転送される。
【０１０７】
図１１は、通信ユニット２ａ，２ｂ間のソフトウェアデータの転送を行う場合の監視制御システムの処理の一例を示すシーケンス図である。まず、新たな通信ユニット２ａは、外部の端末からの操作により設定処理を行い（符号Ｓ１参照）、実装通知を監視制御ユニット１に送信する。
【０１０８】
監視制御ユニット１は、実装通知を受信すると、実装検出通知をＮＷ管理装置４に送信する。ＮＷ管理装置４は、実装検出通知を受信すると、新たな通信ユニット２ａの登録処理を行う（符号Ｓ３参照）。
【０１０９】
次に、監視制御ユニット１は、データ管理ＴＢＬ１４１から、新たな通信ユニット２ａに用いられるソフトウェアデータと同一種類のソフトウェアデータを保持する既設の通信ユニット２ｂを検索する（符号Ｓ２参照）。次に、監視制御ユニット１は、検索した既設の通信ユニット２ｂにソフトウェアデータの転送を指示する。既設の通信ユニット２ｂは、転送指示に従い、自装置に保持されたデータＩＤ「Ｄ３」のソフトウェアデータを新たな通信ユニット２ａに転送する。
【０１１０】
新たな通信ユニット２ａは、既設の通信ユニット２ｂからソフトウェアデータを受信すると、展開処理を行う（符号Ｓ４参照）。次に、新たな通信ユニット２ａは、ソフトウェアデータの受信通知を監視制御ユニット１に送信する。監視制御ユニット１は、受信通知を受けると、転送完了通知をＮＷ管理装置４に送信する。このようにして、通信ユニット２ａ，２ｂ間のソフトウェアデータの転送は行われる。
【０１１１】
図１２は、ソフトウェアデータの転送指示の受信時の通信ユニット２ｂの処理の一例を示すフローチャートである。本処理は、例えば一定の周期で行われる。まず、通信ユニット２ｂのデータ転送処理部２０１は、監視制御ユニット１からのソフトウェアデータの転送指示の有無を判定する（ステップＳｔ３１）。
【０１１２】
データ転送処理部２０１は、転送指示がない場合（ステップＳｔ３１のＮｏ）、処理を終了する。また、データ転送処理部２０１は、転送指示がある場合（ステップＳｔ３１のＹｅｓ）、不揮発性メモリ２３からソフトウェアデータを読み出し、新たな通信ユニット２ａに転送して（ステップＳｔ３２）、処理を終了する。ソフトウェアデータの転送には、例えばＦＴＰ（File Transfer Protocol）が用いられる。このようにして、通信ユニット２の処理は行われる。
【０１１３】
このように、既設の通信ユニット２ｂは、監視制御ユニット１の制御部１００の指示に従い、自装置に保持されたソフトウェアデータを新たな通信ユニット２ａに転送する。また、新たな通信ユニット２ａは、図８に示された処理を行うことにより、既設の通信ユニット２ｂから転送されたソフトウェアデータを保持する。
【０１１４】
本例の場合、監視制御ユニット１は、自装置に全種類のソフトウェアデータを保持することなく、通信ユニット２ａ，２ｂ間のソフトウェアデータの転送を実行できる。したがって、監視制御ユニット１は、ソフトウェアデータの記憶容量が低減される。
【０１１５】
さらに、本例の場合、通信ユニット２ａ，２ｂ間でソフトウェアデータの転送が行われるため、ＣＰ９０において監視制御ユニット１を介した通信が行われない。したがって、監視制御ユニット１からの転送処理と比較すると、ＣＰ９０におけるトラフィックの負荷が低減されるとともに、転送時間も低減される。なお、本例の場合、同一のモードＭ３の通信ユニット２ａ，２ｂ間でソフトウェアデータのコピーが行われるため、ソフトウェアデータのバージョン管理の手間が低減される。
【０１１６】
また、監視制御ユニット１は、新たな通信ユニット２ａに用いられるソフトウェアデータと同一種類のソフトウェアデータを保持する既設の通信ユニット２ｂが存在しない場合、予備のソフトウェアデータのデータＩＤを検索する。監視制御ユニット１は、新たな通信ユニット２ａに用いられるソフトウェアデータと予備のソフトウェアデータのデータＩＤ、つまり種類が一致した場合、一致した予備のソフトウェアデータを新たな通信ユニット２ａに転送する。
【０１１７】
図１３には、監視制御ユニット１から通信ユニット２への予備のソフトウェアデータの転送動作の一例が示されている。図１３において、図７と共通する構成については同一の符号を付し、その説明を省略する。
【０１１８】
本例において、仮想シェルフ（＃２）３には、モードＭ２の新たな通信ユニット２ｃが追加されている。また、新たな通信ユニット２ｃに用いられるデータＩＤ「Ｄ２」のソフトウェアデータと同一種類のソフトウェアデータを保持する既設の通信ユニット２は、仮想シェルフ（＃１，＃２）３に存在しないと仮定する。
【０１１９】
この場合、監視制御ユニット１は、不揮発性メモリ１３の記憶領域Ｙ２から、新たな通信ユニット２ｃと同一種類であるデータＩＤ「Ｄ２」の予備のソフトウェアデータを検索する。監視制御ユニット１は、矢印Ａ４で示されるように、検索した予備のソフトウェアデータを新たな通信ユニット２ｃに転送する。
【０１２０】
本例の場合、監視制御ユニット１は、ＮＷ管理装置４からソフトウェアデータを取得する必要がないため、ＣＰ９０にトラフィックの負荷をかけることなく、短時間で新たな通信ユニット２にソフトウェアデータを転送できる。
【０１２１】
図１４は、監視制御ユニット１から通信ユニット２へ予備のソフトウェアデータを転送する場合の監視制御システムの処理の一例を示すシーケンス図である。なお、図１４において、図１１と共通する処理については同一の符号を付し、その説明を省略する。
【０１２２】
監視制御ユニット１は、データ管理ＴＢＬ１４１から、検索処理Ｓ２の結果、新たな通信ユニット２ｃと同一種類のソフトウェアデータを保持する既設の通信ユニット２が検索されない場合、不揮発性メモリ１３の記憶領域Ｙ１，Ｙ２の予備のソフトウェアデータを検索する（符号Ｓ５参照）。監視制御ユニット１は、新たな通信ユニット２ｃと種類が一致する予備のソフトウェアデータ（データＩＤ「Ｄ２」）を新たな通信ユニット２ｃに転送する。その後は、図１１と同様の処理が行われる。このようにして、監視制御ユニット１から通信ユニット２へ予備のソフトウェアデータの転送は行われる。
【０１２３】
また、監視制御ユニット１は、新たな通信ユニット２ｃと同一種類の予備のソフトウェアデータが存在しない場合、ＮＷ管理装置４から所望のソフトウェアデータを取得して、新たな通信ユニット２ｃに転送する。つまり、ＮＷ管理装置４から監視制御ユニット１を経由して、新たな通信ユニット２ｃにソフトウェアデータが転送される。
【０１２４】
図１５には、ＮＷ管理装置４から新たな通信ユニット２へのソフトウェアデータの転送動作の一例が示されている。図１５において、図７と共通する構成については同一の符号を付し、その説明を省略する。
【０１２５】
本例において、仮想シェルフ（＃２）３には、モードＭ５の新たな通信ユニット２ｄが追加されている。また、新たな通信ユニット２ｄに用いられるデータＩＤ「Ｄ５」のソフトウェアデータと同一種類のソフトウェアデータを保持する既設の通信ユニット２は、仮想シェルフ（＃１，＃２）３に存在しないと仮定する。さらに、不揮発性メモリ１３の記憶領域Ｙ１，Ｙ２の予備のソフトウェアデータのデータＩＤ「Ｄ１」，「Ｄ２」は、新たな通信ユニット２ｄに用いられるソフトウェアデータのデータＩＤ「Ｄ５」とは異なると仮定する。
【０１２６】
監視制御ユニット１は、新たな通信ユニット２ｄに用いられるソフトウェアデータと種類（データＩＤ）が一致するものが、監視制御対象の既設の通信ユニット２及び予備のソフトウェアデータに存在しないため、該当するソフトウェアデータをＮＷ管理装置４に要求する。ＮＷ管理装置４は、要求に応じ、矢印Ａ５で示されるように、データＩＤ「Ｄ５」のソフトウェアデータを、ＣＰ９０を介して監視制御ユニット１に転送する。転送されたソフトウェアデータは、不揮発性メモリ１３の記憶領域Ｘに一時的に格納される。
【０１２７】
監視制御ユニット１は、記憶領域Ｘからソフトウェアデータを読み出して、矢印Ａ６で示されるように、ＣＰ９１を介して新たな通信ユニット２ｄに転送する。したがって、監視制御ユニット１は、新たな通信ユニット２ｄに用いられるソフトウェアデータと同一種類のソフトウェアデータが、監視制御対象の既設の通信ユニット２及び不揮発性メモリ１３の記憶領域Ｙ１，Ｙ２に存在しない場合でも、ソフトウェアデータをＮＷ管理装置４から取得して新たな通信ユニット２ｄに転送できる。
【０１２８】
図１６は、ＮＷ管理装置４から新たな通信ユニット２ｄへソフトウェアデータを転送する場合の監視制御システムの処理の一例を示すシーケンス図である。なお、図１６において、図１１及び図１４と共通する処理については同一の符号を付し、その説明を省略する。
【０１２９】
監視制御ユニット１は、検索処理Ｓ５の結果、予備のソフトウェアデータから、新たな通信ユニット２ｄに用いられるソフトウェアデータと同一種類のものを検索できない場合、該当するソフトウェアデータをＮＷ管理装置４に要求する。ＮＷ管理装置４は、要求に応じて、データＩＤ「Ｄ５」のソフトウェアデータを監視制御ユニット１に転送する。監視制御ユニット１は、データＩＤ「Ｄ５」のソフトウェアデータを新たな通信ユニット２ｄに転送する。その後は、図１１と同様の処理が行われる。このようにして、ＮＷ管理装置４から新たな通信ユニット２ｄへのソフトウェアデータの転送は行われる。
【０１３０】
このように、監視制御ユニット１は、監視制御システムの起動後、監視制御対象の仮想シェルフ３に新たな通信ユニット２が追加される場合、図１０〜図１６を参照して述べた３つの転送手段の何れかを用いて新たな通信ユニット２にソフトウェアデータを転送する。
【０１３１】
図１７は、監視制御システムの起動後の監視制御ユニット１の処理の一例を示すフローチャートである。本処理は、例えば一定の周期で実行される。
【０１３２】
まず、監視制御ユニット１の制御部１００は、新たな通信ユニット２からの実装通知の有無を判定する（ステップＳｔ４１）。制御部１００は、実装通知がない場合（ステップＳｔ４１のＮｏ）、処理を終了する。また、制御部１００は、実装通知が有る場合（ステップＳｔ４１のＹｅｓ）、ＮＷ管理装置４に実装検出通知を送信する（ステップＳｔ４２）。
【０１３３】
次に、ユニット検索部１０２は、データ管理ＴＢＬ１４１から、新たな通信ユニット２に用いられるソフトウェアデータと同一種類のソフトウェアデータを保持する既設の通信ユニット２を検索する（ステップＳｔ４３）。制御部１００は、該当する既設の通信ユニット２が存在する場合（ステップＳｔ４４のＹｅｓ）、その通信ユニット２にソフトウェアデータの転送を指示する（ステップＳｔ５１）。その後、ステップＳｔ４９以降の処理が行われる。
【０１３４】
また、制御部１００は、該当する既設の通信ユニット２が存在しない場合（ステップＳｔ４４のＮｏ）、不揮発性メモリ１３の記憶領域Ｙ１，Ｙ２から、新たな通信ユニット２に用いられるソフトウェアデータと同一種類の予備のソフトウェアデータを検索する（ステップＳｔ４５）。該当する予備のソフトウェアデータが存在する場合（ステップＳｔ４６のＹｅｓ）、データ転送処理部１０１は、その予備のソフトウェアデータを新たな通信ユニット２に転送する（ステップＳｔ５２）。その後、ステップＳｔ４９以降の処理が行われる。
【０１３５】
また、データ転送処理部１０１は、該当する予備のソフトウェアデータが存在しない場合（ステップＳｔ４６のＮｏ）、そのソフトウェアデータをＮＷ管理装置４に要求する（ステップＳｔ４７）。次に、データ転送処理部１０１は、ＮＷ管理装置４から転送されたソフトウェアデータを新たな通信ユニット２に転送する（ステップＳｔ４８）。
【０１３６】
次に、制御部１００は、通信ユニット２からのソフトウェアデータの受信通知の有無を判定する（ステップＳｔ４９）。制御部１００は、受信通知が有った場合（ステップＳｔ４９のＹｅｓ）、転送完了通知をＮＷ管理装置４に送信して（ステップＳｔ５０）、処理を終了する。また、制御部１００は、受信通知がない場合（ステップＳｔ４９のＮｏ）、転送異常通知をＮＷ管理装置４に送信して（ステップＳｔ５３）、処理を終了する。このようにして、監視制御ユニット１は処理を行う。
【０１３７】
このように、監視制御ユニット１は、通信ユニット２にソフトウェアデータをダウンロードする場合、通信ユニット２間の転送手段、自装置からの転送手段、及びＮＷ管理装置４からの転送手段から適切なものを選択する。
【０１３８】
これまで述べたように、実施例に係る監視制御装置である監視制御ユニット１は、ＤＬ管理メモリ１４と、ユニット検索部１０２と、制御部１００とを有する。ＤＬ管理メモリ１４は、監視制御対象の通信ユニット２に保持されたソフトウェアデータの種類を記憶する。
【０１３９】
ユニット検索部１０２は、監視制御対象の通信ユニット２に新たな通信ユニット２が追加される場合、監視制御対象の通信ユニット２のうち、新たな通信ユニット２に用いられるデータと同一種類のソフトウェアデータを保持する通信ユニット２をＤＬ管理メモリ１４から検索する。制御部１００は、ユニット検索部１０２により検索された通信ユニット２に、新たな通信ユニット２へのそのソフトウェアデータの転送を指示する。
【０１４０】
上記の構成によると、制御部１００は、新たな通信ユニット２に用いられるソフトウェアデータと同一種類のソフトウェアデータを保持する通信ユニット２に対して、新たな通信ユニット２へのソフトウェアデータの転送を指示する。このため、監視制御ユニット１は、通信ユニット２の全てのモードＭ１，Ｍ２，・・・に応じた全種類のソフトウェアデータを保持する必要がないため、ソフトウェアデータの記憶容量が低減される。
【０１４１】
また、実施例に係る監視制御システムは、監視制御ユニット１と、監視制御対象の通信ユニット２とを有する。監視制御ユニット１は、ＤＬ管理メモリ１４と、ユニット検索部１０２と、制御部１００とを有する。ＤＬ管理メモリ１４は、監視制御対象の通信ユニット２に保持されたソフトウェアデータの種類を記憶する。
【０１４２】
ユニット検索部１０２は、監視制御対象の通信ユニット２に新たな通信ユニット２が追加される場合、監視制御対象の通信ユニット２のうち、新たな通信ユニット２に用いられるデータと同一種類のソフトウェアデータを保持する通信ユニット２をＤＬ管理メモリ１４から検索する。制御部１００は、ユニット検索部１０２により検索された通信ユニット２に、新たな通信ユニット２へのそのソフトウェアデータの転送を指示する。
【０１４３】
ユニット検索部１０２により検索された通信ユニット２は、制御部１００の指示に従い、自装置に保持されたソフトウェアデータを新たな通信ユニット２に転送する。新たな通信ユニット２は、ユニット検索部１０２により検索された通信ユニット２から転送されたソフトウェアデータを保持する。
【０１４４】
実施例に係る監視制御システムは、上記の監視制御ユニット１と同様の構成を含むので、上述した内容と同様の作用効果を奏する。
【０１４５】
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
【０１４６】
なお、以上の説明に関して更に以下の付記を開示する。
（付記１）  監視制御対象の通信装置に保持されたデータの種類を記憶する記憶部と、
前記監視制御対象の通信装置に新たな通信装置が追加される場合、前記監視制御対象の通信装置のうち、前記新たな通信装置に用いられるデータと同一種類のデータを保持する通信装置を前記記憶部から検索する検索部と、
前記検索部により検索された通信装置に、前記新たな通信装置への該データの転送を指示する指示部とを有することを特徴とする監視制御装置。
（付記２）  前記監視制御対象の通信装置にデータを転送する転送処理部と、
前記転送処理部により転送されたデータの種類に関するデータ情報を取得する取得部と、
前記データ情報に基づき、所定の条件を満たす種類のデータを選択して保持する保持部とを、さらに有し、
前記転送処理部は、前記新たな通信装置が追加される場合、前記監視制御対象の通信装置のうち、前記新たな通信装置に用いられるデータと同一種類のデータを保持する通信装置が存在せず、前記新たな通信装置に用いられるデータの種類と前記保持部により保持されたデータの種類が一致するとき、前記保持部により保持されたデータを前記新たな通信装置に転送することを特徴とする付記１に記載の監視制御装置。
（付記３）  前記取得部は、前記データの種類ごとに、該データを保持する前記監視制御対象の通信装置の数を示す前記データ情報を取得し、
前記保持部は、前記データ情報に基づき、前記監視制御対象の通信装置の数の順位に応じた種類のデータを選択して保持することを特徴とする付記２に記載の監視制御装置。
（付記４）  前記取得部は、前記データの種類ごとに、前記転送処理部による該データの転送の頻度を示す前記データ情報を取得し、
前記保持部は、前記データ情報に基づき、前記転送の頻度の順位に応じた種類のデータを選択して保持することを特徴とする付記２に記載の監視制御装置。
（付記５）  前記取得部は、前記データの種類ごとに、該データのサイズを示す前記データ情報を取得し、
前記保持部は、前記データ情報に基づき、前記サイズの順位に応じた種類のデータを選択して保持することを特徴とする付記２に記載の監視制御装置。
（付記６）  前記転送処理部は、前記新たな通信装置が追加される場合、前記監視制御対象の通信装置のうち、前記新たな通信装置に用いられるデータと同一種類のデータを保持する通信装置が存在せず、前記新たな通信装置に用いられるデータの種類と前記保持部に保持されたデータの種類が不一致であるとき、前記新たな通信装置に用いられるデータを他装置から取得して前記新たな通信装置に転送することを特徴とする付記２乃至５の何れかに記載の監視制御装置。
（付記７）  監視制御装置と、前記監視制御装置の監視制御対象の通信装置とを有し、
前記監視制御装置は、
前記監視制御対象の通信装置に保持されたデータの種類を記憶する記憶部と、
前記監視制御対象の通信装置に新たな通信装置が追加される場合、前記監視制御対象の通信装置のうち、前記新たな通信装置に用いられるデータと同一種類のデータを保持する通信装置を前記記憶部から検索する検索部と、
前記検索部により検索された通信装置に、前記新たな通信装置への該データの転送を指示する指示部とを有し、
前記検索部により検索された通信装置は、前記指示部の指示に従い、自装置に保持されたデータを前記新たな通信装置に転送し、
前記新たな通信装置は、前記検索部により検索された通信装置から転送されたデータを保持することを特徴とする監視制御システム。
（付記８）  前記監視制御対象の通信装置にデータを転送する転送処理部と、
前記転送処理部により転送されたデータの種類に関するデータ情報を取得する取得部と、
前記データ情報に基づき、所定の条件を満たす種類のデータを選択して保持する保持部とを、さらに有し、
前記転送処理部は、前記新たな通信装置が追加される場合、前記監視制御対象の通信装置のうち、前記新たな通信装置に用いられるデータと同一種類のデータを保持する通信装置が存在せず、前記新たな通信装置に用いられるデータの種類と前記保持部により保持されたデータの種類が一致するとき、前記保持部により保持されたデータを前記新たな通信装置に転送することを特徴とする付記７に記載の監視制御システム。
（付記９）  前記取得部は、前記データの種類ごとに、該データを保持する前記監視制御対象の通信装置の数を示す前記データ情報を取得し、
前記保持部は、前記データ情報に基づき、前記監視制御対象の通信装置の数の順位に応じた種類のデータを選択して保持することを特徴とする付記８に記載の監視制御システム。
（付記１０）  前記取得部は、前記データの種類ごとに、前記転送処理部による該データの転送の頻度を示す前記データ情報を取得し、
前記保持部は、前記データ情報に基づき、前記転送の頻度の順位に応じた種類のデータを選択して保持することを特徴とする付記８に記載の監視制御システム。
（付記１１）  前記取得部は、前記データの種類ごとに、該データのサイズを示す前記データ情報を取得し、
前記保持部は、前記データ情報に基づき、前記サイズの順位に応じた種類のデータを選択して保持することを特徴とする付記８に記載の監視制御システム。
（付記１２）  前記転送処理部は、前記新たな通信装置が追加される場合、前記監視制御対象の通信装置のうち、前記新たな通信装置に用いられるデータと同一種類のデータを保持する通信装置が存在せず、前記新たな通信装置に用いられるデータの種類と前記保持部に保持されたデータの種類が不一致であるとき、前記新たな通信装置に用いられるデータを他装置から取得して前記新たな通信装置に転送することを特徴とする付記８乃至１１の何れかに記載の監視制御システム。
【符号の説明】
【０１４７】
１       監視制御ユニット
２       通信ユニット
４       ＮＷ管理装置
１３       不揮発性メモリ
１４       ダウンロード管理メモリ
１００      制御部
１０１      データ転送処理部
１０２      ユニット検索部
１０３      ダウンロード統計取得部
１０４      データ保持処理部
１４０      ダウンロード統計情報
１４１      データ管理テーブル
【図１】
2017068696.tif 000003
【図２】
2017068696.tif 000004
【図３】
2017068696.tif 000005
【図４】
2017068696.tif 000006
【図５】
2017068696.tif 000007
【図６】
2017068696.tif 000008
【図７】
2017068696.tif 000009
【図８】
2017068696.tif 000010
【図９】
2017068696.tif 000011
【図１０】
2017068696.tif 000012
【図１１】
2017068696.tif 000013
【図１２】
2017068696.tif 000014
【図１３】
2017068696.tif 000015
【図１４】
2017068696.tif 000016
【図１５】
2017068696.tif 000017
【図１６】
2017068696.tif 000018
【図１７】
2017068696.tif 000019