(57)【要約】本発明はネットワーク管理システム（１２）に関し、ブロードバンド・ネットワークにおいて、コマンド言語によってネットワーク要素（１４）を機能構成し（１、２、３）更新する方法に関する。その要素（１４）において新しいコンフィギュレーション・バージョン用の差ファイル（２０）が生成される。ネットワーク要素において新しいコンフィギュレーション・バージョンの配置は、先のコンフィギュレーション・ソフトウェアの主要部を用いてネットワーク要素（１４）上でコンフィギュレーションの更新を実行する。
2008511898.tif 000002
【特許請求の範囲】
【請求項１】
コマンド言語によってネットワーク要素を構成し更新するネットワーク管理システムであって、
前記ネットワーク要素のコンフィギュレーション用の定義されたシンタックスと、
前記シンタックス定義を機械読み取り可能な形式に編集した編集物であって、前記ネットワーク要素を構成するために前記ネットワーク要素に配置され、さらに前記管理システムにおけるデータ・ファイルに格納され、それによってネットワーク要素と前記管理システムとにおいて動作する正確なコンフィギュレーション・バージョンのコピーを格納する、編集物と、
シンタックス・フィールドにおける全ての各変数についての制限を有しこれをどのように変えるべきかを表す項目を有するテキストを記述するソフトウェア・インタプリタと、
を含み、
前記インタプリタは全てのネットワーク要素に接続される動的ライブラリとソフトウェアのタイプとを利用し、
前記編集されたシンタックスのソース・コード・ファイルはコマンド・ステートメントを定義する前記ライブラリを構成し、
前記インタプリタは、前記ネットワーク要素における新しいコンフィギュレーション・バージョン用の差ファイルを生成するものであり、
さらに、前記差ファイルにおけるデータに従って前記格納されたデータ・ファイルを変えることによって前記管理システムにおける前記新しいコンフィギュレーション・バージョンを検証し、
前記ネットワーク要素に前記新しいコンフィギュレーション・バージョンを配置し、それによって先のコンフィギュレーション・ソフトウェアの主要部を用いてネットワーク要素上でコンフィギュレーションの更新を実行すること、
を含む、ネットワーク管理システム。
【請求項２】
前記コマンド・セマンティックスおよびシンタックスが正しいことを検証するときに前記新しいコンフィギュレーション（１８）を利用することを含むものである、請求項１に記載のネットワーク管理システム。
【請求項３】
ステートメントを書く複数の方法が存在し、前記ステートメントをコマンド・シンタックスに標準化することを含む、請求項１に記載のネットワーク管理システム。
【請求項４】
定義された目標を達成するためにコマンド・ステートメントを変更し、それによって異なるコマンドが類似しているが異なるパラメータを有することを認識する、請求項１に記載のネットワーク管理システム。
【請求項５】
コマンドのグループが認識されて、特定のコンテキストに関係するコンフィギュレーションをアドレスするために動作中のコンフィギュレーションにおいて前記特定のコンテキストを構成するコマンド・ラインの前に前記特定のコンテキストが配置される、請求項１に記載のネットワーク管理システム。
【請求項６】
配置されるコマンドの標準化および検証を行うステップが、オンラインであり到達可能である実際のネットワーク要素を用いずに、実行される、請求項１に記載のネットワーク管理システム。
【請求項７】
ブロードバンド・ネットワークに位置するネットワーク管理システムにおいて、コマンド言語によってネットワーク要素を構成し更新する方法であって、
前記ネットワーク要素のコンフィギュレーション用のシンタックスを定義し、
前記シンタックス定義を機械読み取り可能な形式へ編集し、前記ネットワーク要素を構成するために前記ネットワーク要素に配置され、さらに前記管理システムにおけるデータ・ファイルに格納され、それによってネットワーク要素と前記管理システムとにおいて動作する正確なコンフィギュレーション・バージョンのコピーを格納し、
シンタックス・フィールドにおける全ての各変数について制限を有し、これをどのように変更すべきかを有する、テキストを記述する前記ネットワーク要素中のソフトウェア・インタプリタを介して新しいコンフィギュレーション・バージョン用の差ファイルを生成し、
前記インタプリタは全てのネットワーク要素に接続される動的ライブラリとソフトウェアのタイプとを利用し、前記編集されたシンタックス・ソース・コード・ファイルはコマンド・ステートメントを定義する前記ライブラリを構成し、
さらに、前記差ファイルにおけるデータに従って前記格納されたデータ・ファイルを変更することによって前記管理システムにおける前記新しいコンフィギュレーション・バージョンを検証し、
前記ネットワーク要素に前記新しいコンフィギュレーション・バージョンを配置し、それによって先のコンフィギュレーション・ソフトウェアの主要部を用いてネットワーク要素上でコンフィギュレーションの更新を実行すること
を含む、方法。
【請求項８】
前記新しいコンフィギュレーション（１８）は、前記コマンド・セマンティックスおよびシンタックスが正しいことを検証するのに使用されるものである、請求項７に記載の方法。
【請求項９】
ステートメントを書き、前記ステートメントをコマンド・シンタックスに標準化する複数の方法が存在する、請求項７に記載の方法。
【請求項１０】
定義された目標を達成するためにコマンド・ステートメントを変更し、従って異なるコマンドが類似するが異なるパラメータを有することを認識する、請求項７に記載の方法。
【請求項１１】
コマンドのグループが認識され、特定のコンテキストに関係するコンフィギュレーションをアドレスするために動作中のコンフィギュレーションにおいて前記特定のコンテキストを構成するコマンド・ラインの前に前記特定のコンテキストが配置される、請求項７に記載の方法。
【請求項１２】
配置されるコマンドの標準化および検証を行うステップが、オンラインであり到達可能である実際のネットワーク要素を用いずに実行される、請求項７に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ブロードバンド・ネットワークにおいて、コマンド言語による複数のネットワーク要素の構成（コンフィギュレーション、機器構成、機能構成）および更新を行うネットワーク管理システムおよび方法に関する。
【背景技術】
【０００２】
例えばルータ、スイッチ（交換機）、マルチプレクサ（多重化器）、およびネットワークにおいて制御されるその他の装置のようなネットワーク要素（エレメント）は、コンフィギュレーション言語を用いて管理され制御される。ネットワーク要素機器（デバイス）を制御するために、或るシンタックスに対応するコマンドが入力される。コマンドは、制御されるネットワーク要素機器において、或る機能を実行する。コマンドは、しばしば、その機能の詳細項目を制御するための１つまたは複数のパラメータを有することがある。例えば、コマンドを用いて、ネットワーク要素におけるファン（fans）をターンオンしてもよい。そのコマンドに対するパラメータは、そのファンがターンオンされる前の到達すべき温度（ターンオンされるときの到達温度）であってもよい。
【０００３】
人は、ドキュメンテーション（documentation：文書）を解釈し、コマンド・シンタックスの機能を理解することができ、コマンドが実行されたときに検出された予想外の動作（振る舞い）に対して反応（react）することができる。そのような予想外の動作は、無効なコマンド・シンタックスであることもあり、または特定のシステムにおいて利用可能でないパラメータを用いることであってもよい。
【０００４】
その代わりに、ネットワーク要素の機能およびコンフィギュレーションがソフトウェアによって制御される場合は、人間の対話性（interactivity）はもはやファクタ（因子、要因）でなくなる。そのソフトウェアは、その制約（constraints）の下でのみ動作できるか、またはそのシステム中に設計されたフレキシビリティ（柔軟性）をもって動作できる。そのコマンド・シンタックスが１つのバージョンのネットワーク要素イメージから別のバージョンのものに変化した場合、管理ソフトウェア・アプリケーションは、新しいシンタックスを認識（理解）するように書き替えなければならないことがある。それらの要素上で動作（稼働）する要素およびシステム・イメージ（image：像）のバージョンの数が増大するに従って、管理すべきネットワーク管理システム（ＮＭＳ：Network Management System）の複雑さは、ますます複雑になり管理できなくなる。
【０００５】
１つのＮＭＳを用いて、各ノードに位置するネットワーク・エージェントに対してプロトコルを介して送信（対話）することによってネットワークの複数の部分が管理される。そのＮＭＳは、ネットワーク管理層において諸機能を実現（implement：実装、実行）し、その他のＭＮＳを管理することができる。
【発明の開示】
【０００６】
発明の概要
本発明の目的は、特に、複数のネットワーク要素上で動作（稼働）するネットワーク要素機器およびシステム・イメージのバージョンの数が増大するに従って、新しいシンタックスによる変更されたコンフィギュレーションに関係する問題を解決することである。管理すべきネットワーク管理システムの複雑さは、そのような環境の下ではますます複雑で管理できないものとなる。従って、本発明は、ネットワーク要素コンフィギュレーションを更新するときに、管理ソフトウェアの複数の部分だけを変えればよい（変えなければならない）という形を、導入する。
【０００７】
現在のコンフィギュレーション変更は、新しいプログラムを作成するプログラマ（手動で作成する人）によって行われる。本発明は、複数の変数の新しい値を与えることによって機器コンフィギュレーションを自動的に変更するインタプリタ（解釈器）を導入する。
【０００８】
本発明の目的および目標を達成するために、本発明は、ブロードバンド・ネットワークにおいて、コマンド言語によってネットワーク要素を機能構成し（コンフィギュアし、機器構成し）更新するネットワーク管理システムを実現（提案、説明）する。
【０００９】
従って、そのネットワーク管理システムは、
そのネットワーク要素のコンフィギュレーション用の定義されたシンタックスと、
そのシンタックス定義を機械読み取り可能な形式に編集した編集物（compilation）と、
を含み、
その編集物は、そのネットワーク要素を機能構成するためにそのネットワーク要素に配置され、さらにその管理システムにおけるデータ・ファイルに格納され、それによってネットワーク要素とその管理システムとにおいて動作（稼働）する正確なコンフィギュレーション・バージョンのコピーを格納し、
さらに、シンタックス・フィールドにおける全ての各変数についての制限を有しこれをどのように変えるべきかを表す項目を有するテキストを記述するソフトウェア・インタプリタを含み、
前記インタプリタは、全てのネットワーク要素（１２）に接続される動的ライブラリとソフトウェアのタイプとを利用し、
前記編集されたシンタックス（前記シンタックス定義の前記編集物）のソース・コード・ファイルはコマンド・ステートメントを定義する前記ライブラリを構成し、
前記インタプリタは、前記ネットワーク要素（１２）における新しいコンフィギュレーション・バージョン用の差ファイルを生成するものであり、
さらに、その差ファイルにおけるデータに従ってその格納されたデータ・ファイルを変えることによって、その管理システムにおけるその新しいコンフィギュレーション・バージョンを検証（ｖｅｒｉｆｙ）し、
そのネットワーク要素にその新しいコンフィギュレーション・バージョンを配置し、それによって先のコンフィギュレーションの主要部を用いてネットワーク要素上でコンフィギュレーションの更新を実行すること、
を含んでいる。
【００１０】
本発明の１つの実施形態は、そのコマンド・セマンティックスおよびシンタックスが正しいことを検証するときにその新しいコンフィギュレーションを利用すること、を含んでいる。
【００１１】
別の実施形態は、ステートメントを書く複数の方法が存在し、それによってそのステートメントを共通のシンタックスに標準化（正規化）することを含む。
【００１２】
さらに別の実施形態は、定義された目標（goal）を達成するためにコマンド・ステートメントを変更し、それによって異なるコマンドが類似しているが異なるパラメータを有することを認識する。
【００１３】
さらに別の実施形態では、コマンドのグループが認識されて、特定のコンテキストに関係するコンフィギュレーションをアドレスするために動作（稼働）中のコンフィギュレーションにおいてその特定のコンテキストを機能構成（機器構成）するコマンド・ラインの前にその特定のコンテキストが配置される。
【００１４】
さらに別の実施形態では、配置されるコマンドの標準化および検証を行うステップが、オンラインであり到達可能である実際のネットワーク要素を用いずに、実行される。
【００１５】
さらに、本発明は、ブロードバンド・ネットワークに位置するネットワーク管理システムにおいて、コマンド言語によってネットワーク要素を機能構成し更新する方法を含んでいる。
【００１６】
その方法は、
そのネットワーク要素のコンフィギュレーション用のシンタックスを定義し、
そのシンタックス定義を機械読み取り可能な形式に編集し、そのネットワーク要素を機能構成するためにそのネットワーク要素に配置され、さらにその管理システムにおけるデータ・ファイルに格納され、それによってネットワーク要素とその管理システムとにおいて動作（稼働）する正確なコンフィギュレーション・バージョンのコピーを格納し、
シンタックス・フィールドにおける全ての各変数について制限を有し、これをどのように変えるべきかを有する、テキストを記述する前記ネットワーク要素（１２）中のソフトウェア・インタプリタによって新しいコンフィギュレーション・バージョン用の差ファイルを生成し、
前記インタプリタは全てのネットワーク要素（１２）に接続される動的ライブラリとソフトウェアのタイプとを利用し、
前記編集されたシンタックス・ソース・コード・ファイルはコマンド・ステートメントを定義する前記ライブラリを構成し、
さらに、その差ファイルにおけるデータに従ってその格納されたデータ・ファイルを変えることによってその管理システムにおけるその新しいコンフィギュレーション・バージョンを検証し、
そのネットワーク要素にその新しいコンフィギュレーション・バージョンを配置し、それによって先のコンフィギュレーション・ソフトウェアの主要部を用いてネットワーク要素上でコンフィギュレーションの更新を実行すること、
を含んでいる。
【００１７】
本発明の方法は、請求の範囲に記載の従属請求項の方法に従って、上述のシステム実施形態を実行することができる。
【００１８】
従って、本発明をより良く理解するために、添付の図１を参照して所与の例および実施形態を用いて本発明を説明する。
【発明を実施するための最良の形態】
【００１９】
本発明は、ネットワーク要素コンフィギュレーションを更新するときに、管理ソフトウェアの複数の部分だけを変えればよいという形態を導入する。ネットワーク要素は、機器（デバイス）であり、例えば、ルータ、スイッチ、マルチプレクサ、およびブロードバンド・ネットワークにおいてデータ・パケットの転送を扱う（処理する）ためのその他の装置、等である。これらは、ソフトウェアで構成される。
【００２０】
次の説明において、コマンド・シンタックス（英数字）は、太字（「：太字」と記す）で強調されている。
コマンド・シンタックスの例：
［no］ip  pim  rp−candidate <interface>［＜0−255＞］  （：太字）
シンタックス・ワード・リスト
ｉｐ（：太字）−インターネット・プロトコル
ｐｉｍ（：太字）−プロトコルとは独立な（無関係な）マルチキャスト。既存のＩＰネットワーク上でＩＰマルチキャストを可動化（可能に）する。
ｒｐ（：太字）−ｃａｎｄｉｄａｔｅ−ランデヴー（rendevouz：出会）点候補
【００２１】
このタイプのコマンド・シンタックスは、ドキュメンテーション（ドキュメント化）において共通に（一般的に）用いられて、例えばプログラマにコマンドをどのように利用するかを教示する。ブラケット［］は、この例において、オプションのパラメータを示し、別の符号＜＞はテキスト変数入力を示すのに用いられ、この場合、システムにおけるインタフェースの名称が示される。そのようなコマンド・シンタックス定義は、次のコマンドを利用するときに可能な複数の組み合わせを示唆する（含んでいる）。
no ip  pim  rp−candidate ethernet0  （：太字）
no ip  pim  rp−candidate ethernet0 0  （：太字）
ip  pim  rp−candidate ethernet0  （：太字）
ip  pim  rp−candidate ethernet0 0  （：太字）
【００２２】
その結果得られるコマンドのアクションは、どの組み合わせが利用されるかに応じて異なる。そのｎｏというキーワードは、コマンド機能がそのデフォルト値に戻るべきであることを示唆している。しかし、コマンドに対して複数のパラメータが存在する場合は（例えば、インタフェース名と数値の双方）、そのｎｏというキーワードは、完全なコマンド（complete command）をまたは機能の一部分だけを削除するものであってもよい。これは、ネットワーク要素供給業者によって決定され、各要素毎におよび各供給業者毎に異なる。
【００２３】
ここで挙げたシンタックスは一例であり、コンフィギュレーションについてその他の変数を用いることができるであろうことが、分かる。
【００２４】
ユーザまたはプログラマは、ドキュメンテーションを解釈し、コマンド・シンタックスの機能を理解することができ、また、そのコマンドが実行されたときに検出される任意の予想外の動作（振る舞い）に反応することができる。そのような予想外の動作は、無効なコマンド・シンタックスであってもよく（ip pmi rp-candidate（：太字））、または特定のシステム（例えば、fastethernet0（：太字））において利用可能でないパラメータ（ethernet0（：太字））を用いてもよい。
【００２５】
その代わりに、ネットワーク要素１２の機能およびコンフィギュレーション１０が図１に概略的に示された本発明におけるようなソフトウェアによって制御される場合は、プログラマによる対話性はもはやファクタ（要因）でない。そのソフトウェアは、制約の下でのみ、またはシステム中に設計されたフレキシビリティを用いて、動作することができる。コマンド・シンタックスが、１つのバージョンのネットワーク要素イメージから別のバージョンのネットワーク要素イメージに変化した場合は、管理ソフトウェア・アプリケーションは、新しいシンタックスを理解するために書き換える必要があることがあることがある。それらの要素上で稼働するシステム・イメージの要素およびバージョンの数が増大するに従って、管理すべきネットワーク管理システム１４の複雑さは、ますます複雑で管理できないものとなる。
【００２６】
開発されたコマンド記述言語および方法を本発明によって説明する。図１において、要素のコマンド・シンタックスが定義されている。その定義は、次いで、機械読み取り可能な形式に編集（コンパイル）され、ネットワーク管理局１４によって使用できるデータ・ファイルとしてネットワーク要素１２に配置される。そのデータ・ファイルは、ネットワーク要素１２において稼働するシステム・イメージ１６の各バージョンに固有である。
【００２７】
データ・ファイルのコマンド構造は、動的にロードされたライブラリに格納される。これは、ＮＭＳ１４が、ソフトウェアに変更を加えることなく新しいバージョのンネットワーク要素ソフトウェアに関して新しいコマンドを取り扱う（処理する）ことができること、を意味する。
【００２８】
本発明によれば、データ・ファイルのコンテンツは、ネットワーク管理システム１４が、ソフトウェア・インタプリタによってコマンド・ステートメントの検証（verification）、標準化（normalisation）および差生成（differentiation）を実行する。これによって、次の２つの問題が解決さる。第１に、ネットワーク中に配置されるべきネットワーク管理システムにおいて維持されるコマンド・ステートメントが正確で有効であることを保証し、それが実際に機能するコンフィギュレーションである。第２に、ネットワーク要素においてアプリケーションまたは機能を再開することを必要とし得る完全に新しいコンフィギュレーションの代わりに、必要なコマンドだけがネットワーク要素に配置されるようにコマンド更新が最適化される。
【００２９】
本発明のソフトウェア・インタプリタは、シンタックス・フィールドにおける全ての各変数の限界を有し、それをどのように変更しおよび／または削除するかを有する、テキストを記述することからなる。そのために、そのインタプリタは、全ての各ネットワーク要素１２に接続される動的（可変または更新可能な）ライブラリ、およびソフトウェアのタイプを使用する。コンパイルされたソース・コード・ファイルは、コマンド・ステートメントを定義し／それと等価なライブラリを構成（constitute）する。
【００３０】
本発明の解決法によれば、ネットワーク管理システム（ＮＭＳ）１４は、ネットワーク要素１２と通信する。そのＮＭＳはそのコンフィギュレーションを知っており、それ（コンフィギュレーション）は、図１における典型例１６、１８のＮＭＳソフトウェア・インタプリタによって制御されるライブラリからのコマンド・ステートメントからなり、ＮＭＳとしてのネットワーク要素において稼働するパラメータは、ネットワーク要素１２に対して先にコンフィギュレーション１６を配置した。コンフィギュレーション変更１８は、ＮＭＳによって初期化される。この例では、ethernet0インタフェース上のアドレスは１９２．１６８．１．０から１９２．１６８．１．１に変化する。ip pim rp-candidate（：太字）と共に用いられるメトリック値55（：太字）は削除されるが、rp-candidate（：太字）は、ethernet0（：太字）上に維持される。本発明によって生成されるデータ・ファイルのコンテンツによって、ＮＭＳ１４は、次のことを実行することができる。即ち、コマンド・セマンティックスおよびシンタックスが正しいことを検証する新しいコンフィギュレーション１８を完了する。ステートメントを書く複数の方法が存在する場合は、ステートメントを共通シンタックスに標準化する（ネットマスク２５５．２５５．２５５．０を有するＩＰアドレス１９２．１６８．１．１は１９２．１６８．１．１／２４と書き換えることができ、同様の目的を与える２つの方法がある）。プログラマにとって可能な時間を消費するタスクであるが、ソフトウェアを理解困難なものにする。コマンド・ステートメントをどのように変更するかを理解し認識して、定義された目標に達する（ip pim rp-candidate ethernet0 55（：太字）およびip pim rp-candidate ethernet0（：太字）は同じコマンドであるが、異なるパラメータを有すること、また５５（：太字）のパラメータだけを削除しコマンドの残りを維持するために、コマンド・ラインにはno（：太字）というキーワードが適用されること、を理解する。）ライン全体が削除されるべき場合は、異なるコマンドが発行されるべきである（no ip pim rp-candidate ethernet0（：太字））。或るコンテキスト（interface ethernet0（：太字））に関係するコンフィギュレーションをアドレスするためにはコンテキストはそのコンテキストを機能構成（機器構成）するコマンド・ラインの前に配置する。配置すべきコマンドの標準化および検証の各ステップは、オンラインおよび到達可能な実際のネットワーク要素を用いずに、実行することができる。ＮＭＳは、基本的に（essentially）その要素上で用いられるコマンド言語の正確なコピーといえるものを有するので、コンフィギュレーションおよびコマンドはユニットがネットワークにインストールされる前であっても用意できる。従って、これは、前述のように、本発明のインタプリタによって達成される。
【００３１】
それによって、ＮＭＳ１４は、そのソフトウェア・インタプリタによって、稼働中のコンフィギュレーション１６と新しいコンフィギュレーション１８の間で差２０を生成することができる。そのインタプリタによって生成されたその差２０は、コンフィギュレーション全体をネットワーク・コンフィギュレーション１６に完全に書き換える必要なく、稼働中のコンフィギュレーション１６を新しいコンフィギュレーション１８に変換するのに必要な正確なコンフィギュレーション・コマンドを含んでいる。
【００３２】
Ｄｉｆｆ（差）フィールド２０は、稼働中のコンフィギュレーションを新しいコンフィギュレーションに変える必要のある稼働中のコンフィギュレーション・データおよび検証機能のライブラリにおけるＮＭＳ１４コピー・データ・ファイルによって決定された、正確なコマンド・ステートメントを含んでいる。
【００３３】
本発明は前述の実施形態および挙げた例に限定されるものではない。請求の範囲はこの技術分野における専門家に対して別の実施形態を示唆するものである。
【図面の簡単な説明】
【００３４】
【図１】図１は、本発明による、ＮＭＳによって制御されるネットワーク要素のコンフィギュレーションを概略的に示している。
【図１】
2008511898.tif 000003
【国際調査報告】
2008511898.tif 000004
2008511898.tif 000005