(57)【要約】  ドメインネームシステム（ＤＮＳ）を使用してネットワークデバイスに関する情報を配布および取得するための技術が開示されている。構成設定やシステムステータスなどのデバイス情報は、ＤＮＳプロトコルを使用して、１つ以上のＤＮＳサービスとネットワークノードとの間で双方向に交換される。交換された情報は、ＤＮＳレコードとして符号化される。
2020530734.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークデバイス伝搬サービスポータルにログインすることと、
ネットワークデバイス構成設定に入力することと、
ネットワークデバイス構成伝搬エージェントおよびキーを取得することと、
ピアに前記ネットワークデバイス伝搬エージェントをインストールすることと、
前記ネットワークデバイス構成伝搬エージェントにキーをインストールすることと、を含む、方法。
【請求項２】
ネットワークデバイス構成データを有するＤＮＳレコードをダウンロードすることと、
ネットワークデバイス構成を保存することと、
ネットワークデバイス構成の変更をチェックすることと、を含む、請求項１に記載の方法。
【請求項３】
ネットワークデバイス構成の変更が検出されるときに、
ネットワークデバイス構成データを有するＤＮＳレコードをダウンロードすることと、
ネットワークデバイス構成を保存することと、
ネットワークデバイス構成の変更をチェックすることと、を含む、請求項２に記載の方法。
【請求項４】
ネットワークデバイス構成の変更が検出されなかったときに、ネットワークデバイス構成の変更のチェックを継続することを含む、請求項２に記載の方法。
【請求項５】
遠隔測定データを収集することと、
前記遠隔測定データを有するＤＮＳレコードを生成することと、
動的ＤＮＳ更新を行って、前記遠隔測定データの少なくとも一部をネットワークデバイス構成伝搬サービスに送ることと、を含む、請求項１〜４のいずれか一項に記載の方法。
【請求項６】
ネットワークデバイス伝搬サービスポータルにログインする手段と、
ネットワークデバイスの構成設定を入力する手段と、
ネットワークデバイス構成伝搬エージェントおよびキーを取得する手段と、
ピアに前記ネットワークデバイス伝搬エージェントをインストールする手段と、
前記ネットワークデバイス構成伝搬エージェントに前記キーをインストールする手段と、を備える、システム。
【請求項７】
ネットワークデバイス構成データを有するＤＮＳレコードをダウンロードする手段と、
ネットワークデバイス構成を保存する手段と、
ネットワークデバイス構成の変更をチェックする手段と、を備える、請求項６に記載のシステム。
【請求項８】
ネットワークデバイス構成の変更が検出されるときに、ネットワークデバイス構成データを有するＤＮＳレコードをダウンロードする手段と、
ネットワークデバイス構成の変更が検出されるときにネットワークデバイス構成を保存する手段と、
ネットワークデバイス構成の変更が検出されるときに、ネットワークデバイス構成の変更をチェックする手段と、を備える、請求項７に記載のシステム。
【請求項９】
ネットワークデバイス構成の変更が検出されなかったときに、ネットワークデバイス構成の変更のチェックを継続する手段を備える、請求項７に記載のシステム。
【請求項１０】
遠隔測定データを収集する手段と、
前記遠隔測定データを有するＤＮＳレコードを生成する手段と、
動的ＤＮＳ更新を行って、前記遠隔測定データの少なくとも一部をネットワークデバイス構成伝搬サービスに送る手段と、を備える、請求項１〜４のいずれか一項に記載のシステム。
【請求項１１】
コンピュータプログラム製品であって、前記プログラムがコンピュータによって実行されるときに、前記コンピュータに請求項１〜５のいずれか一項に記載の方法の前記ステップを実行させる命令を含む、コンピュータプログラム製品。
【発明の詳細な説明】
【発明の概要】
【０００１】
ドメインネームサービス（ＤＮＳ）プロトコルは、ドメイン名ゾーン転送要求を行うことができるネットワークデバイスに、または動的ＤＮＳ更新要求を行うことができるネットワークデバイスから情報を伝搬するために使用される。本明細書に記載する技術を組み込んだ方法には、構成データストアからネットワークデバイスに構成情報を送信することが含まれ得る。本明細書に記載する技術を組み込んだシステムには、構成データストアからネットワークデバイスに構成情報を送信することに関連付けられた技術を組み込むことができる。本明細書に記載する技術を組み込んだ方法には、ネットワークデバイスの使用に関する情報をレポートシステムに送信することが含まれ得る。本明細書に記載する技術を組み込んだシステムには、ネットワークデバイスの使用に関する情報をレポートに送信することに関連付けられた技術を組み込むことができる。
【図面の簡単な説明】
【０００２】
【図１】ピアトリガネットワークデバイス構成伝搬システムの例の線図を示す。
【図２】ネットワーク構成システムからＤＮＳゾーンへのピアトリガネットワークデバイス構成伝搬の方法の例のフローチャートを示す。
【図３】ＤＮＳサーバ〜ＤＮＳクライアントネットワークデバイス構成伝搬システムの例の線図を示す。
【図４】スレーブまたはセカンダリＤＮＳサーバネットワークデバイス構成伝搬システムのＤＮＳサーバの例の線図を示す。
【図５】ＤＮＳエンジン〜ＤＮＳサーバネットワークデバイス遠隔測定供給システムの例の線図を示す。
【図６】ネットワークデバイス構成伝搬システムを利用する方法の例のフローチャートを示す。
【図７】複数の伝搬コントローラを備えたネットワークデバイス構成伝搬システムの例の線図を示す。
【図８】ファイアウォールを備えた、顧客によって使用されるポリシー伝搬システムの例の線図を示す。
【図９】本明細書に記載されているような伝搬が起こり得る構造の例の線図を示す。
【発明を実施するための形態】
【０００３】
図１は、ピアトリガネットワークデバイス構成伝搬システムの例の線図１００を示す。線図１００は、コンピュータ可読媒体（ＣＲＭ）１０２、ネットワーク構成システム１０４、構成からＤＮＳへの変換システム１０６、ＤＮＳゾーンリポジトリ１０８−１〜ＤＮＳゾーンリポジトリ１０８−ｎ（まとめて、ＤＮＳゾーンリポジトリ１０８）、およびピア１１０−１〜ピア１１０−ｎ（まとめて、ピア１１０）を含む。ネットワーク構成システム１０４、構成からＤＮＳへの変換システム１０６、ＤＮＳゾーンリポジトリ１０８、およびピア１１０は、ＣＲＭ１０２に結合されている。
【０００４】
本明細書で説明されているＣＲＭ１０２および他のＣＲＭ（複数可）は、法定（例えば、米国では３５ＵＳＣ１０１の下）のすべての媒体を含むこと、およびＣＲＭを含む申し立てを有効にするには除外が必要である程度にまで、本質的に法定でないすべての媒体を特に除外することを意図している。既知の法定ＣＲＭ（複数可）には、ハードウェア（いくつか例を挙げると、例えば、レジスタ、ランダムアクセスメモリ（ＲＡＭ）、不揮発性（ＮＶ）記憶装置）が含まれるが、ハードウェアに限定しても、しなくてもよい。
【０００５】
本明細書で説明するＣＲＭ１０２および他のコンピュータ可読媒体は、さまざまな潜在的に適用可能な技術を表すことを意図している。例えば、ＣＲＭ１０２を使用して、ネットワークまたはネットワークの一部を形成することができる。２つのコンポーネントがデバイス上で同じ場所にある場合、ＣＲＭ１０２は、バスまたは他のデータパイプまたはデータ平面を含むことができる。実装形態固有の考慮事項または他の考慮事項に応じて、ＣＲＭ１０２は、有線または無線通信チャネルを経由して通信するための有線通信インターフェースおよび無線通信インターフェースを含むことができる。第１のコンポーネントが第１のデバイスに配置され、第２のコンポーネントが第２の（異なる）デバイスに配置される場合、ＣＲＭ１０２は無線または有線のバックエンドネットワークまたはＬＡＮを含むことができる。ＣＲＭ１０２は、該当する場合、ＷＡＮまたは他のネットワークの関連部分も包含することができる。企業ネットワークには、ＷＡＮセグメントにわたって結合された地理的に分散したＬＡＮを含めることができる。例えば、分散企業ネットワークには、ＷＡＮセグメントで区切られた複数のＬＡＮ（ＩＥＥＥ８０２．１１用語では、各ＬＡＮが基本サービスセット（ＢＳＳ）と称されることもあるが、ここでは明示的な要件は示さない）を含めることができる。企業ネットワークでは、ＶＬＡＮトンネリングも使用することができる（接続されたＬＡＮは、ＩＥＥＥ８０２．１１用語では拡張サービスセット（ＥＳＳ）と称されることもあるが、ここでは明示的な要件は示さない）。実装形態または他の考慮事項に応じて、ＣＲＭ１０２は、企業または第三者の管理下にあるプライベートクラウド、またはパブリッククラウドを含むことができる。
【０００６】
本明細書に記載するデバイス、システム、およびＣＲＭは、コンピュータシステム、またはコンピュータシステムの一部、または複数のコンピュータシステムとして実装することができる。一般に、コンピュータシステムには、プロセッサ、メモリ、不揮発性記憶装置、およびインターフェースが含まれる。一般的なコンピュータシステムは、通常、少なくともプロセッサ、メモリ、およびメモリをプロセッサに結合するデバイス（例えば、バス）を含む。プロセッサは、例えば、マイクロプロセッサなどの汎用中央処理装置（ＣＰＵ）、またはマイクロコントローラなどの専用プロセッサであり得る。
【０００７】
メモリは、限定ではなく例として、ダイナミックＲＡＭ（ＤＲＡＭ）やスタティックＲＡＭ（ＳＲＡＭ）などのランダムアクセスメモリ（ＲＡＭ）を含むことができる。メモリは、ローカル、リモート、または分散型であり得る。バスは、プロセッサを不揮発性記憶装置に結合することもできる。不揮発性記憶装置は、多くの場合、磁気フロッピーもしくはハードディスク、光磁気ディスク、光ディスク、例えばＣＤ−ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭなどの読み取り専用メモリ（ＲＯＭ）、磁気カードもしくは光カード、または大量のデータ用の別の形態の記憶装置である。このデータのいくつかは、多くの場合、コンピュータシステムでのソフトウェアの実行中に、直接メモリアクセスプロセスによってメモリに書き込まれる。不揮発性記憶装置は、ローカル、リモート、または分散型であり得る。不揮発性記憶装置は、メモリ内で利用可能なすべての適用可能なデータを使用してシステムを作成することができるため、任意選択的である。
【０００８】
ソフトウェアは通常、不揮発性記憶装置に保存される。実際、大規模なプログラムの場合、プログラム全体をメモリに保存することさえできない場合がある。それでも、必要なら、ソフトウェアを実行するためには、それを、処理に適したコンピュータ読み取り可能な位置に移動し、説明のために、その位置を本明細書ではメモリと称されることを理解されたい。実行のためにソフトウェアがメモリに移動された場合でも、プロセッサは、通常、ハードウェアレジスタを使用して、ソフトウェアに関連付けられた値と、理想的に実行を高速化するのに役立つローカルキャッシュと、を保存する。本明細書で使用される場合、ソフトウェアプログラムが「コンピュータ可読記憶媒体に実装される」として言及されるとき、ソフトウェアプログラムは、適用可能な既知または便利な位置（不揮発性記憶装置からハードウェアレジスタ）に保存されると想定される。プログラムに関連付けられた少なくとも１つの値がプロセッサで読み取り可能なレジスタに保存されているとき、プロセッサは「プログラムを実行するように構成されている」と見なされる。
【０００９】
動作の一例では、コンピュータシステムは、ディスクオペレーティングシステムなどのファイル管理システムを含む、ソフトウェアプログラムであるオペレーティングシステムソフトウェアによって制御することができる。関連するファイル管理システムソフトウェアを有するオペレーティングシステムソフトウェアの１つの例は、ワシントン州レドモンドのＭｉｃｒｏｓｏｆｔ  ＣｏｒｐｏｒａｔｉｏｎのＷｉｎｄｏｗｓ（登録商標）として知られているオペレーティングシステムのファミリ、およびそれらの関連するファイル管理システムである。その関連するファイル管理システムソフトウェアを有するオペレーティングシステムソフトウェアの別の例は、Ｌｉｎｕｘオペレーティングシステムおよびその関連するファイル管理システムである。ファイル管理システムは通常、不揮発性記憶装置に保存され、オペレーティングシステムに必要なさまざまな働きをプロセッサに実行させて、データを入力および出力し、不揮発性記憶装置にファイルを保存することを含め、メモリにデータを保存する。
【００１０】
バスは、プロセッサをインターフェースに結合することもできる。インターフェースには、１つ以上の入力および／または出力（Ｉ／Ｏ）デバイスを含めることができる。実装形態固有または他の考慮事項に応じて、限定ではなく例として、Ｉ／Ｏデバイスには、キーボード、マウスもしくは他のポインティングデバイス、ディスクドライブ、プリンタ、スキャナ、およびディスプレイデバイスを含む他のＩ／Ｏデバイスが含まれ得る。ディスプレイデバイスは、限定ではなく例として、陰極線管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、または他の何らかの適用可能な既知のもしくは便利なディスプレイデバイスを含むことができる。インターフェースには、１つ以上のモデムまたはネットワークインターフェースを含めることができる。モデムまたはネットワークインターフェースは、コンピュータシステムの一部であるとみなすことができることが理解されよう。インターフェースには、アナログモデム、ＩＳＤＮモデム、ケーブルモデム、トークンリングインターフェース、衛星伝送インターフェース（例えば「ダイレクトＰＣ」）、またはコンピュータシステムを他のコンピュータシステムに結合するための他のインターフェースが含まれ得る。インターフェースにより、コンピュータシステムおよび他のデバイスをネットワークにおいて一緒に結合させることができる。
【００１１】
コンピュータシステムは、クラウドベースのコンピューティングシステムと互換性があるか、またはクラウドベースのコンピューティングシステムの一部として、もしくはクラウドベースのコンピューティングシステムを通じて実装することができる。本明細書で使用されているように、クラウドベースのコンピューティングシステムは、仮想化されたコンピューティングリソース、ソフトウェア、および／または情報をエンドユーザーデバイスに提供するシステムである。コンピューティングリソース、ソフトウェア、および／または情報は、エッジデバイスがネットワークなどの通信インターフェースを経由してアクセスすることができる集中化されたサービスおよびリソースを維持することにより、仮想化することができる。「クラウド」はマーケティング用語である場合があり、本明細書の目的上、本明細書に記載するネットワークのいずれかを含めることができる。クラウドベースのコンピューティングシステムは、サービスへの加入を伴うか、またはユーティリティ価格設定モデルを使用することができる。ユーザーは、ウェブブラウザ、またはユーザーのエンドユーザーデバイスに配置された他のコンテナアプリケーションを通じて、クラウドベースのコンピューティングシステムのプロトコルにアクセスすることができる。
【００１２】
コンピュータシステムは、エンジンとして、エンジンの一部として、または複数のエンジンを通じて実装することができる。本明細書で使用されるように、エンジンには、１つ以上のプロセッサまたはその一部分が含まれる。１つ以上のプロセッサの一部分には、レジスタのサブセットなど、任意の所与の１つ以上のプロセッサを含むハードウェアのすべてとは言えないまでもハードウェアの一部分、マルチスレッドプロセッサの１つ以上のスレッド専用のプロセッサの一部分、プロセッサがエンジンの機能の一部を実行することに全体的または部分的に専念している間のタイムスライスなどを含めることができる。そのようなものとして、第１のエンジンおよび第２のエンジンは、１つ以上の専用プロセッサを有することができるか、または第１のエンジンおよび第２のエンジンは、１つ以上のプロセッサを互いにまたは他のエンジンと共有することができる。実装形態固有または他の考慮事項に応じて、エンジンを集中化するか、またはその機能を分散させることができる。エンジンには、プロセッサで実行するためにＣＲＭに具現化されたハードウェア、ファームウェア、またはソフトウェアを含めることができる。プロセッサは、本明細書の図を参照して記載されているように、実装されたデータ構造および方法を使用して、データを新しいデータに変換する。
【００１３】
本明細書に記載されているエンジン、または本明細書に記載されているシステムおよびデバイスを実装することができるエンジンは、クラウドベースのエンジンであってもよい。本明細書で使用されているように、クラウドベースのエンジンは、クラウドベースのコンピューティングシステムを使用してアプリケーションおよび／または機能を実行することができるエンジンである。アプリケーションおよび／または機能のすべてまたは一部分は、複数のコンピューティングデバイスにわたって分散することができ、１つのコンピューティングデバイスのみに制限する必要はない。いくつかの実施形態では、クラウドベースのエンジンは、エンドユーザーのコンピューティングデバイスにローカルに機能および／またはモジュールをインストールすることなく、エンドユーザーがウェブブラウザまたはコンテナアプリケーションを通じてアクセスする機能および／またはモジュールを実行することができる。
【００１４】
本明細書で使用されるように、データストアには、テーブル、コンマ区切り値（ＣＳＶ）ファイル、従来のデータベース（例えば、ＳＱＬ）、または他の適用可能な既知もしくは便利な編成フォーマットを含む、適用可能な任意のデータ編成を有するリポジトリが含まれることが意図されている。データストアは、例えば、特定用途マシン上の物理的なＣＲＭ、ファームウェア、ハードウェア、それらの組み合わせ、または適用可能な既知もしくは便利なデバイスもしくはシステムで具現化されるソフトウェアとして実装できる。データベースインターフェースなどのデータストア関連コンポーネントは、データストアの「一部」、他の何らかのシステムコンポーネントの一部、またはそれらの組み合わせと見なすことができるが、データストア関連コンポーネントの物理的な位置や他の特性は、本明細書に記載されている技術の理解には重要でない。
【００１５】
データストアにはデータ構造を含めることができる。本明細書で使用されているように、データ構造は、所与のコンテキスト内で効率的に使用することができるように、コンピュータにデータを保存および編成する特定の方法に関連付けられている。データ構造は、一般に、それ自体がメモリに保存され、プログラムによって操作され得るビット文字列であるアドレスによって指定され、そのメモリ内の任意の場所でデータを取得して保存するコンピュータの能力に基づいている。したがって、いくつかのデータ構造は、算術演算を用いてデータ項目のアドレスを計算することに基づいており、一方、他のデータ構造は、構造自体の中にデータ項目のアドレスを保存することに基づいている。多くのデータ構造は両方の原則を使用しており、場合によっては自明ではない方法で組み合わされている。データ構造の実装には、通常、その構造のインスタンスを作成および操作する一連のプロシージャを書き込む必要がある。本明細書に記載するデータストアは、クラウドベースのデータストアであってもよい。クラウドベースのデータストアは、クラウドベースのコンピューティングシステムおよびエンジンと互換性のあるデータストアである。
【００１６】
図１の例に戻ると、ネットワーク構成システム１０４は、ネットワークデバイス構成の設定および管理する役割を担うシステム管理者および他の人員を含み得る企業ネットワークの一部を表すことを意図している。線図１００では、ネットワーク構成システム１０４は、ネットワークデバイス構成入力エンジン１１２と、ネットワークデバイス構成データストア１１４と、を含む。
【００１７】
ネットワークデバイス構成入力エンジン１１２は、ネットワークデバイス構成情報が手動で入力されるか、自動プロセスを使用して入力されるか、またはその両方によって、人間が入力したデータ用のＧＵＩなどのインターフェースを表すことを意図している。例えば、１つ以上のポリシー対応ネットワークデバイス構成ノード３０６またはそのエージェントは、ネットワークデバイス構成入力エンジン１１２がネットワークデバイス構成データストア１１４に格納するネットワークデバイス構成データを入力することができる。
【００１８】
図１の例では、構成からＤＮＳへの変換システム１０６は、ネットワーク構成システム１０４からのネットワークデバイス構成を、ネットワークデバイス構成データを含むＤＮＳレコードに変換するシステムを表すことを意図している。特定の実装形態において、ネットワークデバイス構成データストア１１４への変更は、構成からＤＮＳへの変換システム１０６をトリガして、ＤＮＳゾーンに記憶するためにネットワークデバイス構成データを符号化するＤＮＳ  ＴＸＴレコードなどのＤＮＳレコードを作成する。本明細書で使用されているように、管理を委任された１つ以上のサブドメインの領域は、ＤＮＳゾーンと呼ばれる。
【００１９】
コンテキストについては、トップレベルドメイン名レジストリオペレーターは、第２レベルドメインの登録に義務付けられた地理的または他の範囲の目的で、パブリックまたはエンティティにネームスペースを提供する場合がある。下位レベルのドメインを担当する組織は、ネームスペースを同様に操作し、スペースを細分化する場合がある。サブドメインスペースの登録または割り当てごとに、登録者は、下位レベルドメインへのサブ委任を含め、ゾーンの責任を管理する管理および技術インフラストラクチャを維持する義務がある。ゾーンは、ドメイン境界で始まり、ドメイン内のリーフノード（ホスト）を含めるか、または独立して管理される別のゾーンの境界で終わる。各ドメインがさらにサブドメインに分割され、各々が独自の管理者およびＤＮＳサーバのセットを有するＤＮＳゾーン自体になると、ツリーは最下部で最大数のリーフノードに成長する。この最下位レベルでは、ツリーのエンドノードまたはリーフで、ＤＮＳゾーンという用語は、使用および管理の両方の面で「ドメイン」という用語と本質的に同義語になる。ドメインという用語は、それに割り当てられたエンティティのビジネス機能で使用され、ゾーンという用語は通常、ＤＮＳサービスの構成に使用される。
【００２０】
特定の実装形態では、構成からＤＮＳへのシステム１０６は、ＤＮＳゾーンの知識、例えば、管理責任がそれぞれの一人のマネージャに委任されたＤＮＳのドメイン名スペースの別個の連続部分を使用して、それぞれの複数のＤＮＳゾーンに関連付けられ、かつ関連付けられているとして識別可能なＤＮＳレコードをＤＮＳゾーンリポジトリ１０８に保存する。例えば、構成からＤＮＳへの変換システム１０６は、変更されたＤＮＳゾーンに関連付けられた開始権限（ＳＯＡ）レコードのシリアル番号を増加させることができ、これにより、ＤＮＳゾーンは伝搬準備完了としてラベル付けされる。
【００２１】
コンテキストでは、ＤＮＳゾーンは、ＳＯＡで始まり、ゾーン内で記載されたリソースのレコードを含むオペレーティングシステムファイルで定義することができる。この方式は元々、Ｂｅｒｋｅｌｅｙインターネットネームドメインサーバ（ＢＩＮＤ）ソフトウェアパッケージで使用され、ＲＦＣ１０３４およびＲＦＣ１０３５で定義されており、これらは参照により本明細書に組み込まれる。
【００２２】
有利なことに、構成からＤＮＳへの変換システム１０６は、ＤＮＳレコードにネットワークデバイス構成を含めさせ、これにより、本明細書で後記するようにＤＮＳサービスを介したネットワークデバイス構成の分散が可能になる。代替案では、代わりにまたは追加で、ＤＮＳレコードには遠隔測定データが含まれる。さらに別の代替案では、代わりにまたは追加で、ＤＮＳレコードにはキー管理データが含まれる。
【００２３】
図１の例では、ＤＮＳゾーンリポジトリ１０８は、ドメインネームサーバの構成システムに実装されたＤＮＳゾーン内に記載されたリソースのレコードを表すことを意図している。ＤＮＳゾーンリポジトリ１０８におけるネットワークデバイス構成メッセージの記憶は、適用可能なネットワークノードへの伝搬のためにネットワークデバイス構成データをＤＮＳサービスにロードすることとして特徴付けられ得る。ＤＮＳレコードの例は、
＜ｄｅｖｉｃｅ＿ｉｄ＞ｖｅｒｓｉｏｎ１．ｃｏｎｆｉｇ．ｔｈｒｅａｔｓｔｏｐ．ｃｏｍ９００ＩＮ  ＴＸＴ“ｐａｒａｍ＝ｖａｌｕｅ”である。
【００２４】
図１の例では、ピア１１０は、ピア１１０がＣＲＭ１０２を介してデータを送受信することができる有線または無線インターフェースを備えたデバイスを表すことを意図している。ピア１１０の例は、いくつかの挙げると、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、ワイヤレスデバイス（携帯電話、スマートフォンなど）、またはウェアラブルデバイスである。
【００２５】
特定の実装形態では、ピア１１０は、ネットワークを通じたデータの伝送に使用することができる一意の識別子を含む。一意の識別子には、インターネットプロトコルバージョン４に従って作成された識別子（以下「ＩＰｖ４」と称される）、またはインターネットプロトコルバージョン６に従って作成された識別子（以下「ＩＰｖ６」と称される）が含まれ、どちらのプロトコルバージョンも参照により本明細書に組み込まれる。実装形態固有の考慮事項または他の考慮事項に応じて、ピア１１０は、適用可能な無線デバイスプロトコルによりデータを受信および送信するための適用可能な通信インターフェースを含むことができる。適用可能な無線デバイスプロトコルの例には、Ｗｉ−Ｆｉ、ＺｉｇＢｅｅ（登録商標）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、および他の適用可能な低電力通信規格が含まれる。
【００２６】
特定の実装形態では、ピア１１０はステーションとしての機能を果たす。本明細書で使用するように、ステーションは、メディアアクセス制御（ＭＡＣ）アドレスと、ＩＥＥＥ８０２．１１標準に準拠する無線媒体への物理層（ＰＨＹ）インターフェースと、を有する、デバイスと称され得る。したがって、例えば、該当する場合、ネットワークデバイスは、ステーションと称され得る。ＩＥＥＥ８０２．１１ａ−１９９９、ＩＥＥＥ８０２．１１ｂ−１９９９、ＩＥＥＥ８０２．１１ｇ−２００３、ＩＥＥＥ８０２．１１−２００７、およびＩＥＥＥ８０２．１１ｎ  ＴＧｎ  Ｄｒａｆｔ８．０（２００９）は参照により組み込まれる。本明細書で使用されているように、８０２．１１標準互換または８０２．１１標準準拠のシステムは、１つ以上の組み込まれたドキュメントの要件および／もしくは推奨事項、または以前のドキュメントのドラフトからの要件および／もしくは推奨事項のうちの少なくともいくつかに準拠しており、Ｗｉ−Ｆｉシステムを含む。Ｗｉ−Ｆｉは、ＩＥＥＥ８０２．１１標準と、Ｗｉ−Ｆｉ  Ｐｒｏｔｅｃｔｅｄ  Ａｃｃｅｓｓ（ＷＰＡ）およびＷＰＡ２セキュリティ標準と、Ｅｘｔｅｎｓｉｂｌｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ（ＥＡＰ）標準と一般的に相関する非技術的な記述である。代替の実施形態では、ステーションは、Ｗｉ−ＦｉまたはＩＥＥＥ８０２．１１とは異なる規格に準拠し、「ステーション」以外の名称で称される場合があり、無線または他の媒体への異なるインターフェースを有する場合がある。
【００２７】
特定の実装形態では、ピア１１０はＩＥＥＥ８０２．３に準拠してネットワークサービスにアクセスするように構成されている。ＩＥＥＥ８０２．３はワーキンググループであり、有線イーサネットの物理層およびデータリンク層のＭＡＣを定義するワーキンググループによって作成されたＩＥＥＥ標準の収集である。これは通常、いくつかの広域ネットワークアプリケーションを有するローカルエリアネットワークテクノロジーである。通常、物理的な接続は、さまざまなタイプの銅線またはファイバーケーブルによって、ノードおよび／またはインフラストラクチャデバイス（ハブ、スイッチ、ルータ）間でなされる。ＩＥＥＥ８０２．３は、ＩＥＥＥ８０２．１ネットワークアーキテクチャをサポートするテクノロジーである。関連技術でよく知られているように、ＩＥＥＥ８０２．１１は、２．４、３．６、および５ＧＨｚの周波数帯域で無線ローカルエリアネットワーク（ＷＬＡＮ）コンピュータ通信を実装するためのワーキンググループおよび標準の収集である。標準ＩＥＥＥ８０２．１１−２００７の基本バージョンには、その後に補正が加えられてきた。これらの標準は、Ｗｉ−Ｆｉブランドを使用する無線ネットワーク製品の基準を提供する。ＩＥＥＥ８０２．１および８０２．３は参照により組み込まれる。
【００２８】
特定の実装形態では、ピア１１０はＤＮＳエンジンを含む。実装形態または構成の固有の要因に応じて、ＤＮＳエンジンにはＤＮＳサーバまたはＤＮＳクライアントを含めることができる。さらに、実装形態または構成の固有の要因に応じて、ＤＮＳエンジンには、遠隔測定サブシステム（図示せず）または構成サブシステムを含めることができ、後者は、構成エンジンおよび構成データストア（図示せず）を含み、どちらも後で説明する。１つ以上のピア１１０が遠隔測定サブシステムを含む実装形態では、ネットワーク構成システム１０４は遠隔測定リーダー（図示せず）を含むことができる。
【００２９】
動作の一例では、図１に示されるようなシステムは次のように動作する。ネットワーク構成システム１０４は、ネットワークデバイスの構成セットを、ＣＲＭ１０２を経由して、構成からＤＮＳへの変換システム１０６に提供する。ネットワーク構成システム１０４は、ネットワークデバイス構成への変更を検出するなどのトリガに応答して、構成セットを提供することができる。ネットワークデバイス構成セットには、ネットワークデバイスの完全な構成または部分的な構成を含めることができる。例えば、ネットワークデバイス構成セットにはデルタのみが含まれる場合があり、デルタは、以前の構成と現在の構成との間の違いを含む部分的な構成である。デルタを提供すると、ピアにいくつかの要件が課され、これは、例えば遠隔測定サブシステムまたは構成サブシステムを使用して管理することができることに注意されたい。
【００３０】
この動作例では、構成からＤＮＳへの変換システム１０６は、ネットワークデバイス構成セットをＤＮＳメッセージに変換し、それは１つ以上のＤＮＳリポジトリ１０８に保存される。実装形態または構成の固有の要因に応じて、ネットワークデバイス構成セットは、適用可能なＤＮＳメッセージ内のカプセル化（または包含）に適さないフォーマットで提供される場合があり、この場合、構成からＤＮＳへの変換システム１０６は、最初にネットワークデバイス構成セットをＤＮＳメッセージ互換フォーマットに変換し、次に再フォーマットされたネットワークデバイス構成セットをＤＮＳメッセージに含める。特定の実装形態では、再フォーマットされたネットワークデバイス構成セットは、ピア１１０の少なくとも１つが理解する独自のフォーマットを有する。代替案では、再フォーマットされたネットワークデバイス構成セットは標準化されたフォーマットを有する。再フォーマットには、暗号化が含まれる場合と含まれない場合があり、復号化が含まれる場合と含まれない場合がある。
【００３１】
この動作例では、ＤＮＳゾーンリポジトリ１０８は、ピア１１０に提供されるネットワークデバイス構成セットメッセージをバッファリングする。特定の実装形態では、ネットワークデバイス構成セットメッセージは、ネットワーク構成システム１０４へのＡＸＦＲクエリまたはＩＸＦＲクエリなどのトリガ刺激を開始した１つ以上のピア１１０に提供される。（ＲＦＣ５９３６、１９９５、および１９９６は参照により組み込まれる。）したがって、ネットワークデバイス構成セットメッセージは、ピアからのトリガ刺激に応答して提供される。一方、遠隔測定リーダーを含むネットワーク構成システム１０４の場合、ネットワークデバイス構成セットメッセージをピアに提供する必要がない場合がある。むしろ、ＤＮＳゾーンリポジトリ１０８は、遠隔測定リーダーに従い、動的ＤＮＳ更新に応答して更新され得る。この代替案は、１つ以上のピア１１０で遠隔測定エンジンを実装することを伴い得る。
【００３２】
ネットワークデバイス構成を提供する役割を担う当事者と、ネットワークデバイス構成をＤＮＳ互換フォーマットに変換する当事者とは、同じ当事者である必要がない。例えば、ＤＮＳサービスの顧客は、ネットワークデバイス構成をＤＮＳサービスに提供し、顧客がＤＮＳクエリまたは動的ＤＮＳ更新を送信するときに、ネットワークデバイス構成をＤＮＳ互換フォーマットに変換することができる。概念的に、ネットワーク構成システム１０４および構成からＤＮＳへの変換システム１０６は、ＤＮＳサービスの一部として特徴付けることができる。具体的には、ネットワーク構成システム１０４は、構成からＤＮＳへの変換システム１０６が使用するデータをバッファするデータストアを少なくとも含み、最小限のバッファでさえＤＮＳサービスの制御下にあるネットワーク構成システムとして特徴付けることができる。同様に、ＤＮＳゾーンリポジトリ１０８は、ＤＮＳサービスがＤＮＳゾーンリポジトリ１０８のＤＮＳレコードを伝搬するバッファを少なくとも含む。一方、ピア１１０は、ＤＮＳサービスの一人以上の顧客の制御下にあり得る。
【００３３】
この動作例では、ピア１１０またはそれに関連するエージェントは、ＤＮＳクエリでネットワーク構成システム１０４をトリガし、ピア１１０は、更新されたネットワークデバイス構成を含むそれぞれの応答を受信する。例えば、ネットワーク構成システム１０４、構成からＤＮＳへの変換システム１０６、およびＤＮＳゾーンリポジトリ１０８がＤＮＳサービスによって制御される場合、ＤＮＳサービスの顧客は、ピアの１１０の１つ、または他の何らかのデバイスを介してネットワークデバイス構成を提供することができ、さらにピア１１０の１つからのトリガも提供することができる。顧客からも遠隔測定データを受信することがＤＮＳサービスにとって望ましい場合がある。したがって、この動作例の説明のために、顧客は遠隔測定データをＤＮＳサービスに送り返す。
【００３４】
前述したように、遠隔測定サブシステムは、適用可能なピアへの明示的なＤＮＳ応答を不要にすることができるが、ピア１１０は、例えば動的ＤＮＳ更新を用いてネットワークデバイス構成伝搬を依然としてトリガする。いずれにせよ、上記の動作例は、ネットワーク構成システムからＤＮＳゾーンへのピアトリガネットワークデバイス構成伝搬の理解を提供する。
【００３５】
図２は、ネットワーク構成システムからＤＮＳゾーンへのピアトリガネットワークデバイス構成伝搬のための方法の例のフローチャート２００を示す。本明細書に記載するこのフローチャートおよび他のフローチャートは、理解を促すように編成されたモジュール（および場合によっては決定ポイント）を示している。しかしながら、状況に応じて、モジュールを、並列実行、再配列、修正（変更、削除、または強化）のために再編成することができることを認識されたい。フローチャート２００は、モジュール２０２で開始し、ネットワークデバイス構成を作成、読み取り、更新、または削除（ＣＲＵＤｉｎｇ）する。特定の実装形態では、システムオペレータまたは自動化されたプロセスがネットワークデバイスを構成する。システムオペレータまたは自動化されたプロセスは、ＤＮＳサービスの顧客に関連付けられている場合がある。読み取り、作成次いで削除、ならびに更新および以前の更新を元に戻すための更新を行うと、正味デルタがなくなる可能性があることに注意されたい。しかしながら、このような行為は、セキュリティプロセスなどの他のプロセスをトリガする可能性がある。
【００３６】
図２の例では、フローチャート２００はモジュール２０４に進み、ＣＲＵＤに応答してネットワークデバイス構成伝搬プロセスをトリガする。ＣＲＵＤの検出方法は、実装および／または構成に固有である。例えば、ＣＲＵＤ命令の検出、データストアへのアクセスの検出、以前のデータストアに対する現在のデータストア内のデルタの識別などがプロセスをトリガすることができる。有利なことに、ネットワークデバイス構成は、ＤＮＳを使用して伝搬される１つ以上のＤＮＳゾーンに関連付けられたＤＮＳレコードの形態でバッファリングすることができる。
【００３７】
図２の例では、フローチャート２００は、ネットワークデバイス構成データをＤＮＳレコードに組み込むモジュール２０６に続く。
【００３８】
図２の例では、フローチャート２００は、ＤＮＳレコードをＤＮＳサービスに提供するモジュール２０８に続く。有利なことに、ＤＮＳレコードにはネットワークデバイス構成データが含まれているにもかかわらず、ＤＮＳサービスはＤＮＳレコードを他のＤＮＳレコードと同様に扱うことができる。ポリシーは、例えば、システムオペレータまたは自動化されたプロセスによって事前に設定されているため、ネットワークデバイス構成伝搬プロセスはポリシー転送ではない。そのようなプロセスは、本明細書ではポリシー非依存ネットワークデバイス構成伝搬プロセスと称される。
【００３９】
図２の例では、フローチャートは、モジュール２１０で終了し、ＤＮＳゾーン内でポリシー非依存ネットワークデバイス構成を伝搬する。特定の実装形態では、ゾーンのポリシーを設定する当事者は、ＤＮＳサービスにネットワークデバイス構成を提供し、ＤＮＳサービスをトリガしてＤＮＳゾーン内のネットワークデバイス構成を伝搬する当事者である。ＤＮＳサービスはポリシーを転送しないため、伝搬はポリシーに依存しないものとして伝播は、ポリシーに依存しないものとして特徴付けられる。有利なことに、ネットワークデバイスは、ＤＮＳサービスによって提供されるＤＮＳゾーンを使用するか、または別個のＤＮＳゾーンを使用するように構成することができる。これにかかわらず、複数のネットワークデバイスは、この方法で同じＤＮＳサービスから構成を検索することができる。
【００４０】
図３は、ＤＮＳサーバ〜ＤＮＳクライアントネットワークデバイス構成伝搬システムの例の線図３００を示す。線図３００は、ネットワーク３０２、ネットワーク３０２に結合されたポリシー非依存ネットワークデバイス構成伝搬ノード３０４、およびネットワーク３０２に結合されたポリシー対応ネットワークデバイス構成ノード３０６−１〜ポリシー対応ネットワークデバイス構成ノード３０６−ｎ（まとめて、ポリシー対応ネットワークデバイス構成ノード３０６）を含む。
【００４１】
図３の例では、ネットワーク３０２は、説明のために、ＬＡＮ、ＷＡＮ、他の何らかのサイズのネットワーク、またはそれらの組み合わせを含むことを意図している。特定の実装形態では、ポリシー非依存ネットワークデバイス構成伝搬ノード３０４およびポリシー対応ネットワークデバイス構成ノード３０６は、インターネットプロトコル（ＩＰ）技術を介して動作可能に接続される。例えば、ポリシー非依存ネットワークデバイス構成伝搬ノード３０４およびポリシー対応ネットワークデバイス構成ノード３０６は、プライベートネットワークにわたって、またはインターネットなどのパブリックネットワークにわたって存在することができる。
【００４２】
図３の例では、ポリシー非依存ネットワークデバイス構成伝搬ノード３０４は、ネットワークデバイス構成が、ポリシー対応ネットワークデバイス構成ノード３０６のポリシーに従って、提供されるＤＮＳサービスを提供するノードを表すことを意図している。線図３００において、ポリシー非依存ネットワークデバイス構成伝搬ノード３０４は、ＤＮＳゾーンリポジトリ３０８−１〜ＤＮＳゾーンリポジトリ３０８−ｎ（まとめて、ＤＮＳゾーンリポジトリ３０８）、およびＤＮＳサーバ３１０−１〜ＤＮＳサーバ３１０−ｎ（まとめて、ＤＮＳサーバ３１０）を含む。
【００４３】
図３の例では、ＤＮＳゾーンリポジトリ３０８は、１つまたは複数のネットワークデバイスに関連付けられ、および１つ以上のネットワークデバイスのネットワークデバイス構成情報を有する、ＤＮＳレコードを保存するように構成されたデータストアを表すことを意図している。
【００４４】
図３の例において、ＤＮＳサーバ３１０は、ポリシー対応ネットワークデバイス構成ノード３０６が、ネットワークデバイスを構成するために使用するネットワークデバイス構成データを有するＤＮＳレコードでＤＮＳクエリに応答するエンジンを表すことを意図している。
【００４５】
図３の例では、ポリシー対応ネットワークデバイス構成ノード３０６は、ポリシー非依存ネットワークデバイス構成伝搬ノード３０４にＤＮＳクエリを送信して、ネットワークデバイス構成データを含むＤＮＳ応答をトリガするノードを表すことを意図しており、ポリシー対応ネットワークデバイス構成ノード３０６は、ネットワークデバイスを構成するためにこれを使用する。線図３００では、ポリシー対応ネットワークデバイス構成ノード３０６は、ネットワークデバイス構成伝搬トリガエンジン３１２、ＤＮＳクライアント３１４、ＤＮＳゾーンコンテンツから構成データへの変換エンジン３１６、構成エンジン３１８、およびネットワークデバイス構成データストア３２０を含む。
【００４６】
特定の実装形態では、ネットワークデバイス構成伝搬トリガエンジン３１２は、ＤＮＳ要求をＤＮＳクライアント３１４に発行する。実装形態または構成の固有の要因に応じて、ゾーンデータの変更がなされたときに、１つ以上のＤＮＳサーバ３１０がＮＯＴＩＦＹメッセージをＤＮＳクライアント３１４に送信することができるが、ゾーン転送のスケジューリングは、完全にネットワークデバイス構成伝搬トリガエンジン３１２の制御下にある。特定の実装形態では、ネットワークデバイス構成伝搬トリガエンジン３１２は、ゾーン頂点のＳＯＡリソースレコードの「更新」、「再試行」、および「期限切れ」フィールドの値によって制御されるパターンで、定期的にゾーン転送をスケジュールする。トリガの頻度および周期は、トリガが手動であるか自動であるかのように、実装または構成の固有の要因に依存する。
【００４７】
特定の実装形態では、ＤＮＳクライアント３１４は最初にＤＮＳサーバ３１０の１つに接続する。Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒ  Ｓｅｃｕｒｉｔｙ（ＴＬＳ）またはその前身であるＳｅｃｕｒｅ  Ｓｏｃｋｅｔｓ  Ｌａｙｅｒ（ＳＳＬ）などの暗号化プロトコルは、ネットワーク３０２を経由した通信セキュリティを提供することができる。有利なことに、送信されたデータを暗号化するために使用された対称暗号化により、接続を安全にすることができる。この対称暗号化のキーは、接続ごとに一意に生成され、セッションの開始時に取り決められた共有秘密に基づいている。ＤＮＳサーバ３１０およびＤＮＳクライアント３１４は、データを送信する前に、使用する暗号化アルゴリズムおよび暗号化キーの詳細を取り決める。代替的または追加的に、ＤＮＳサーバ３１０およびＤＮＳクライアント３１４のアイデンティティは、一方または両方の当事者に必要とされ得る公開キー暗号を使用して認証され得る。代替的または追加的に、各メッセージには、メッセージ認証コードを使用したメッセージ整合性チェックが含まれ、送信中のデータの未検出の損失または変更を防止する。このようにして、接続は整合性を確保することができる。
【００４８】
ＤＮＳクライアント３１４がＤＮＳサーバ３１０の１つに接続した後、ＤＮＳクライアント３１４はＤＮＳ非同期完全転送ゾーン（ＡＸＦＲ）を開始する。ゾーン転送では、転送に伝送制御プロトコル（ＴＣＰ）を使用する。ＤＮＳサーバ３１０およびＤＮＳクライアント３１４は、ゾーン転送がクライアント−サーバトランザクションの形態を採とるので、そのように名付けられている。ゾーン転送を要求するクライアントは、マスタサーバからのデータを要求するスレーブサーバまたはセカンダリサーバであり得ることに注意されたい。
【００４９】
ゾーン転送は、プリアンブルとそれに続く実際のデータ転送で構成される。プリアンブルは、「ゾーン」の最上部にあるＤＮＳネームスペースのノードである「ゾーンの頂点」のＳｔａｒｔ  ｏｆ  Ａｕｔｈｏｒｉｔｙ（ＳＯＡ）リソースレコードのルックアップで構成される。このＳＯＡリソースレコードのフィールド、特に「シリアル番号」は、そもそも実際のデータ転送を行う必要があるかどうかを決定する。クライアントは、ＳＯＡリソースレコードのシリアル番号を、そのリソースレコードの最後のコピーのシリアル番号と比較する。転送されているレコードのシリアル番号が大きい場合、ゾーン内のデータは（何らかの方法で）「変更」されたと見なされ、スレーブは実際のゾーンデータ転送の要求に進む。シリアル番号が同一である場合、ゾーン内のデータは「変更」されていないと見なされ、クライアントは、もしあれば、それがすでに有しているデータベースのコピーを使用し続けることができる。
【００５０】
特定の実装形態では、ＤＮＳクライアント３１４は、ＤＮＳクエリ解決メカニズムを使用してプリアンブルのＳＯＡルックアップを行う。ＤＮＳクライアント３１４は、ＤＮＳクライアント３１４が実際のデータ転送を行う必要性を識別するまで、ＤＮＳサーバ３１０の１つへのＴＣＰ接続を開かない。代替案では、ＤＮＳクライアント３１４は、ＤＮＳサーバ３１０の１つへのＴＣＰ接続を開き、その後、実際のデータ転送を行う（行い得る）場合、同じＴＣＰ接続上でＳＯＡルックアッププリアンブルを行う。
【００５１】
実際のデータ転送プロセスは、ＤＮＳクライアント３１４が特別なクエリタイプＡＸＦＲ（値２５２）を有するクエリ（オペコード０）を、ＤＮＳサーバ３１０の１つにＴＣＰ接続を経由して送信することによって開始される。ＤＮＳサーバ３１０は、ゾーン内のすべてのドメイン名のすべての全リソースレコードを含む一連の応答メッセージで応答する。最初の応答は、ゾーンの頂点のＳＯＡリソースレコードで構成される。他のデータは、順不同で続く。データの終了は、ゾーンの頂点のＳＯＡリソースレコードを含む応答を繰り返す関連ＤＮＳサーバ３１０によって通知される。
【００５２】
ＤＮＳクライアント３１４は、Ｔｒａｎｓａｃｔｉｏｎ  ＳＩＧｎａｔｕｒｅ（ＴＳＩＧ）を使用して、ＤＮＳクライアント３１４を含むポリシー対応ネットワークデバイス構成ノード３０６の１つを認証することができる。ＴＳＩＧは、共有秘密キーおよび一方向ハッシュを使用して、ＤＮＳ更新をする、または応答することが許可されているとしてＤＮＳサーバ３１０およびＤＮＳクライアント３１０を認証する暗号的に安全な方法を提供する。実装形態固有または構成固有の要因に応じて、ＤＮＳへのクエリは認証なしでなされ得るが、ＤＮＳへの更新は認証される必要がある。記録された応答が再利用されないように、タイムスタンプがＴＳＩＧプロトコルに含まれている。これは、正確なクロックを有するように、ＤＮＳサーバ３１０およびＤＮＳクライアント３１４に要求することができる。Ｎｅｔｗｏｒｋ  ＴＩＭＥ  Ｐｒｏｔｏｃｏｌは、正確な時刻ソースを提供することができる。クエリのようなＤＮＳ更新は、通常ＵＤＰを介して転送されるが、ＤＮＳサーバ３１０はＵＤＰ要求およびＴＣＰ要求の両方をサポートすることができる。ＴＳＩＧは、ＲＦＣ２８４５に記載されており、これは参照により組み込まれる。
【００５３】
特に中断されない限り、ＤＮＳクライアント３１４は最終的に、ＡＸＦＲ応答からのネットワークデバイス構成データを、ＤＮＳゾーンコンテンツから構成データへの変換エンジン３１６に利用可能にする。
【００５４】
ＤＮＳゾーンコンテンツから構成データへの変換エンジン３１６は、応答、または少なくともゾーンの内容を読み取り、応答からネットワーク構成データを復号化する。情報にチェックサムが含まれる場合、ＤＮＳゾーンコンテンツから構成データへの変換エンジン３１６は、チェックサムプロセスとの整合性を確保することができる。ＤＮＳゾーンコンテンツから構成データへの変換エンジン３１６は、ネットワークデバイス構成データを構成エンジン３１８に提供する。
【００５５】
構成エンジン３１８は、構成をネットワークデバイス構成データストア３２０に書き込む。構成データストア３２０の一般的な実装形態は、「構成ファイル」であり、構成ファイルは、人間が編集可能な平文であり、単純なキーおよび値のペアフォーマットが一般的である。有利なことに、本明細書に記載する技術は、ＤＮＳレコードのデータを符号化し、この使用しやすい形態を安全な方法で渡すときにテキストの使用を容易にする。代替案では、状態情報を使用して他のソフトウェアプロセスをトリガする。
【００５６】
動作例では、図３に示されるようなシステムは、次のように動作する。１つ以上のＤＮＳゾーンリポジトリ３０８への変更に応答して、１つ以上のＤＮＳサーバ３１０は、ポリシー非依存ネットワークデバイス構成伝搬ノード３０４から１つ以上のポリシー対応ネットワークデバイス構成ノード３０６にＮＯＴＩＦＹメッセージを送信することができる。代替案では、ＤＮＳサーバ３１０はＮＯＴＩＦＹメッセージを送信しない。
【００５７】
この動作例では、ネットワークデバイス構成伝搬トリガエンジン３１２は、ネットワークデバイス構成伝搬プロセスを開始するかどうかを決定する。ＤＮＳサーバ３１０がＮＯＴＩＦＹメッセージを送信するのが可能である場合、ネットワークデバイス構成伝搬トリガエンジン３１２は、ＮＯＴＩＦＹメッセージの受信に応答してプロセスを開始してもよい。代替的に、ＤＮＳサーバ３１０がＮＯＴＩＦＹメッセージを送信しない場合、またはＮＯＴＩＦＹメッセージに応答して動作することに加えて、ネットワークデバイス構成伝搬トリガエンジン３１２は、定期的にプロセスを開始するか、または明示的な（例えば、システム管理者による）命令に応答してプロセスを開始することができる。ネットワークデバイス構成伝搬トリガエンジン３１２は、関連する１つ以上のＤＮＳゾーンリポジトリ３０８に変更がなかったことが確かである（正しいかどうか）場合、定期的な動作を行わないことを選択することができる。プロセスをトリガするために、ネットワークデバイス構成伝搬トリガエンジン３１２は、ＤＮＳ要求をＤＮＳクライアント３１４に送信する。
【００５８】
この動作例では、ＤＮＳクライアント３１４は、ネットワーク３０２を経由して、関連する１つのＤＮＳサーバ３１０との接続を確立する。例えば、最後のゾーン転送以降、関連する１つ以上のＤＮＳゾーンリポジトリ３０８に変更が加えられていないという判定により接続が中断されないと仮定すると、ＤＮＳクライアント３１４はＤＮＳゾーン転送（例えば、ＡＸＦＲ）クエリをＤＮＳサーバ３１０に送信し、これは、ネットワークデバイス構成データを含むＤＮＳ応答で応答する。
【００５９】
この動作例では、ＤＮＳゾーンコンテンツから構成データへの変換エンジン３１６は、ネットワークデバイス構成データコンテンツを、構成エンジン３１８によるネットワークデバイス構成データストア３２０への記憶に好適なフォーマットに復号化する。
【００６０】
図４は、ＤＮＳサーバ〜スレーブまたはセカンダリＤＮＳサーバネットワークデバイス構成伝搬システムの例の線図４００を示す。線図４００は、ネットワーク４０２、ネットワーク４０２に結合されたポリシー非依存ネットワークデバイス構成伝搬ノード４０４、および、ネットワーク４０２に結合されたポリシー対応ネットワークデバイス構成ノード４０６−１〜ポリシー対応ネットワークデバイス構成ノード４０６−ｎ（まとめて、ポリシー対応ネットワークデバイス構成ノード４０６）を含む。線図４００は線図３００と同様であるが、ＤＮＳクライアント３１４はＤＮＳサーバ４１４に置き換えられている。図４の例では、ＤＮＳサーバ４１０は、ＤＮＳサーバ３１０（図３）と同様であり、ＤＮＳゾーンリポジトリ４０８は、任意選択的である。具体的には、図３を参照して例として記載したように、ゾーン転送要求はＡＸＦＲクエリ、または増分ゾーン転送のためのＩＸＦＲクエリを含むことができる。
【００６１】
増分ゾーン転送は、次の点で完全ゾーン転送とは異なり、第一に、（ＤＮＳクライアントとして働く）ＤＮＳサーバ４１４は、ＡＸＦＲ  ＱＴＹＰＥの代わりにＱＴＹＰＥ  ＩＸＦＲ（値２５１）を使用する。第二に、ＤＮＳサーバ４１４は、もしあれば、ＩＸＦＲメッセージで現在有しているゾーン頂点のＳＯＡリソースレコードを送信し、最新と考える「ゾーン」のバージョンをサーバに知らせる。第三に、ＤＮＳサーバ４１０のうちの関連する１つは、ゾーンの全データで通常のＡＸＦＲ方式で応答してもよいが、代わりに「増分」データ転送で応答してもよい。後者は、クライアントが有しているとサーバに報告したゾーンのバージョンと、サーバで最新のゾーンのバージョンとの間の、ゾーンシリアル番号順のゾーンデータへの変更のリストで構成されている。変更は、削除されるリソースレコードのリストと挿入されるリソースレコードのリストの２つのリストを含む。（リソースレコードへの修正は、削除とそれに続く挿入として表される。）
【００６２】
ＤＮＳサーバ４１４に加えて、ポリシー対応ネットワークデバイス構成ノード４０６は、ネットワークデバイス構成伝搬トリガエンジン４１２、ＤＮＳゾーンコンテンツから構成データへの変換エンジン４１６、構成エンジン４１８、およびネットワークデバイス構成データストア４２０を含む。ポリシー対応ネットワークデバイス構成ノード４０６は、サーバ、ＤＮＳサーバ４１４を有するため、ポリシー対応ネットワークデバイス構成ノード４０６の下流にあるＤＮＳエンジン（サーバまたはクライアント）を備えた追加のピアは存在してもしなくてもよい。
【００６３】
図５は、ＤＮＳエンジン〜ＤＮＳサービスネットワークデバイス構成遠隔測定供給システムの例の線図５００を示す。線図５００は、ネットワーク５０２、ネットワーク５０２に結合されたネットワークデバイス構成顧客ノード５０４−１〜ネットワークデバイス構成顧客ノード５０４−ｎ（まとめて、ネットワークデバイス構成顧客ノード５０４）、およびネットワークデバイス構成サービスノード５０６を含む。
【００６４】
図５の例では、ネットワーク５０２は、説明のために、ＬＡＮ、ＷＡＮ、他の何らかのサイズのネットワーク、またはそれらの組み合わせを含むことを意図している。特定の実装形態では、ネットワークデバイス構成顧客ノード５０４およびネットワークデバイス構成サービスノード５０６は、インターネットプロトコル（ＩＰ）技術を介して動作可能に接続される。例えば、ネットワークデバイス構成顧客ノード５０４およびネットワークデバイス構成サービスノード５０６は、プライベートネットワークにわたって、またはインターネットなどのパブリックネットワークにわたって存在することができる。
【００６５】
図５の例では、ネットワークデバイス構成顧客ノード５０４は、ＤＮＳを介してネットワークデバイス構成サービスを受信するエンティティの制御下でエンジンおよびデータストアを表すことを意図している。線図５００において、ネットワークデバイス構成顧客ノード５０４は、遠隔測定レポートトリガエンジン５０８、ネットワークデバイス構成からＤＮＳゾーンコンテンツへの変換エンジン５１０、フィードバックからＤＮＳゾーンコンテンツへの変換エンジン５１２、構成データストア５１４、フィードバックデータストア５１６、および（ＤＮＳサーバまたはＤＮＳクライアントを含むことができる）ＤＮＳエンジン５１８を含む。
【００６６】
遠隔測定レポートトリガエンジン５０８は、最終的にネットワークデバイス構成サービスノード５０６に遠隔測定を提供する情報収集プロセスを開始する役割を担うエンジンを表すことを意図している。特定の実装形態では、遠隔測定レポートトリガエンジン５０８は、定期的なトリガ刺激により遠隔測定プロセスを開始させるタイマーを含む。その代わりに、またはそれに加えて、遠隔測定レポートトリガエンジン５０８は、そうするための明示的なコマンド（例えば、人間またはそのエージェントによって提供される「手動」命令）に応答して遠隔測定プロセスを開始することができる。
【００６７】
プロセスを開始するとき、遠隔測定レポートトリガエンジン５０８により、ネットワークデバイス構成からＤＮＳゾーンコンテンツへの変換エンジン５１０、およびフィードバックからＤＮＳゾーンコンテンツへの変換エンジン５１２が、それぞれ構成データストア５１４およびフィードバックデータストア５１６にアクセスし、ネットワークデバイス構成データおよびフィードバックを、ＤＮＳエンジン５１８によるネットワークデバイス構成サービスノード５０６への送信のためのＤＮＳレコードに変換する。
【００６８】
フィードバックデータストア５１６のフィードバックは、いくつか例を挙げると、設定、ソフトウェアバージョン情報、エラー条件、またはパフォーマンスデータなど、ソフトウェアコマンド、ログデータ、またはネットワークの特性によって返される情報を含むことができる。ネットワークデバイス構成からＤＮＳゾーンコンテンツへの変換エンジン５１０は、ネットワークデバイス構成データを、ネットワークデバイス構成データを有するＤＮＳテキストレコード（ＤＮＳ  ＴＸＴレコード）などのＤＮＳレコードとして符号化し、フィードバックからＤＮＳゾーンコンテンツへの変換エンジン５１２は、フィードバックデータを有するＤＮＳレコードとしてフィードバックを符号化する。
【００６９】
ＤＮＳエンジン５１８は、ＤＮＳ要求を行うことが可能である。パブリックＤＮＳインフラストラクチャを使用する場合、ＤＮＳエンジン５１８は関連するＤＮＳゾーンの名前で構成される。動作中、ＤＮＳエンジン５１８は、ネットワークデバイス構成サービスノード５０６に接続する。特定の実装形態では、ＴＬＳによって提供されるような相互認証が使用される。特定の実装形態では、ＤＮＳエンジン５１８は、その構成で提供されたＤＮＳゾーンの動的ＤＮＳ更新を行う。動的ＤＮＳ更新は、ＤＮＳ  ＴＳＩＧキーで署名することができ、したがって、ネットワークデバイス構成顧客ノード５０４の関連する１つを認証する。プライベートＤＮＳインフラストラクチャを使用する場合、ＤＮＳ構成には、適用可能なＤＮＳサーバのＩＰアドレスまたはホスト名を含める必要がある場合がある。ＤＮＳレコードの例は次のとおりである。
＜ｄｅｖｉｃｅ＿ｉｄ＞ｖｅｒｓｉｏｎ１．ｔｅｌｅ．ｔｈｒｅａｔｓｔｏｐ．ｃｏｍ９００ＩＮ  ＴＸＴ“ｔｅｌｅｍｅｔｒｙ＝ｖａｌｕｅ”
【００７０】
図５の例では、ネットワークデバイス構成サービスノード５０６は、ＤＮＳを使用してネットワークデバイス構成伝搬サービスを提供するエンティティの制御下（または顧客との共有制御下）のエンジンおよびデータストアを表すことを意図している。線図５００では、ネットワークデバイス構成サービスノード５０６は、ＤＮＳサーバ５２０−１〜ＤＮＳサーバ５２０−ｎ（まとめて、ＤＮＳサーバ５２０）、ＤＮＳゾーンリポジトリ５２２−１〜ＤＮＳゾーンリポジトリ５２２−ｎ（まとめて、ＤＮＳゾーンリポジトリ５２２）、ＤＮＳゾーンコンテンツから構成データへの変換エンジン５２４、構成エンジン５２６、およびネットワークデバイス構成データストア５２８を含む。
【００７１】
ＤＮＳサーバ５２０ののうちの関連する１つによって動的ＤＮＳ更新が受信および処理され、その結果、ＤＮＳゾーンリポジトリ５２２のうちの関連する１つに記憶するためのＤＮＳレコードが作成される。ＤＮＳサーバ５２０は、パブリックまたはプライベートＤＮＳインフラストラクチャの一部とすることができる。特定の実装形態では、手動または自動トリガに応答するＤＮＳゾーンコンテンツから構成データへの変換エンジン５２４は、ＤＮＳゾーン転送（例えば、ＡＸＦＲ）を使用して、ＤＮＳゾーンリポジトリ５２２に含まれるＤＮＳゾーンのコンテンツを読み取り、ＤＮＳレコードを復号化し、ネットワークデバイス構成データを構成エンジン５２６に提供し、構成エンジン５２６は、構成データをネットワークデバイス構成データストア５２６に保存する。有利なことに、複数のネットワークデバイス構成顧客ノード５０４は、ネットワークデバイス構成サービスノード５０６に情報を広めることができる。ネットワークデバイス構成顧客ノード５０４の各々は、ネットワークデバイス構成サービスノード５０６によって提供された同じＤＮＳゾーンを使用するように構成することができ、または１つ以上が別個のＤＮＳゾーンを使用することができる。
【００７２】
図６Ａ、図６Ｂ、および図６Ｃは、ネットワークデバイス構成伝搬システムを利用する方法の例のフローチャート６００を示する。フローチャート６００は、ネットワークデバイス構成伝搬サービスポータルにログインするモジュール６０２（図６Ａ）で開始する。特定の実装形態では、ゾーン名は、ＩＰアドレスから引き出され、ログイン中に利用可能になる。実装形態または構成に固有の要因に応じて、顧客またはそのエージェントによるログイン中またはログイン後にゾーン名を明示的に提供することもできる。
【００７３】
図６Ａの例では、フローチャート６００は、ネットワークデバイス構成設定を入力するモジュール６０４に続く。有利なことに、ネットワークデバイスの構成設定は、ＤＮＳインフラストラクチャを活用するためにＤＮＳレコードに符号化される。実装形態または構成の固有の要因に応じて、顧客は、ネットワーク構成設定をＤＮＳレコードとして、またはネットワークデバイス構成伝搬サービスもしくはそのエージェントによってＤＮＳレコードに変換される他の何らかのフォーマットで入力することができる。
【００７４】
図６Ａの例では、フローチャート６００は、ネットワークデバイス構成伝搬エージェントおよびキーを取得するモジュール６０６に続く。特定の実装形態では、ネットワークデバイス構成伝搬エージェントがダウンロードされる。代替案では、エージェントは、ストリーミングされるか、実行時に仮想的に提供されるか、または他の何らかの方法で顧客に利用可能にされる。特定の実装形態では、キーは、顧客のＩＰアドレスから引き出されるか、または他の何らかの方法で取得された、顧客が明示的に提供したＤＮＳゾーン名から引き出され、およびＴＳＩＧなどの関連付けられたゾーンに関連付けられたキーから引き出される。
【００７５】
図６Ａの例では、フローチャート６００は、ネットワークデバイス構成伝搬エージェントをピアにインストールするモジュール６０８に続く。実装形態または構成の固有の要因に応じて、顧客は、１つ以上のピアを有することができる。特定の実装形態では、１つのエンティティであるネットワークデバイス構成伝搬サービスが、すべてのピアのサービスプロバイダである。代替案では、ネットワークデバイス構成伝搬サービスは、ピアツーピアネットワーク全体に分散される機能を有する。
【００７６】
図６Ａの例では、フローチャート６００は、ネットワークデバイス構成伝搬エージェントにキーをインストールするモジュール６１０に続く。このキーを使用して、キーが引き出されるＤＮＳゾーン名、および安全な通信の両方をネットワークデバイス構成伝搬サービスに提供することができる。モジュール６１０から、フローチャート６００は、それぞれ伝搬および遠隔測定に関連付けられた２つの異なる経路に分裂する。
【００７７】
図６Ｂの例では、フローチャート６００は、ネットワークデバイス構成データを有するＤＮＳレコードをダウンロードするモジュール６１２に続く。特定の実装形態では、チェックサムなどのアプリケーションレベルのセキュリティチェックが、ネットワークデバイス構成データを検証するために行われる。有利なことに、チェックサムにより、ピアは設定が完了したことを知ることができるが、これは現実世界の問題である。
【００７８】
図６Ｂの例では、フローチャート６００は、ネットワークデバイス構成を保存するモジュール６１４に続く。特定の実装形態では、ＤＮＳレコードは保存する前に復号化される。
【００７９】
図６Ｂの例では、フローチャート６００は、ネットワークデバイス構成の変更をチェックするモジュール６１６に続く。特定の実装形態では、チェックは、明示的な命令によって、定期的に、または手動でトリガすることができる。
【００８０】
図６Ｂの例では、フローチャート６００は決定ポイント６１８に進み、ネットワークデバイス構成への変更が検出されたかどうかが判定される。ネットワーク構成設定への変更が検出されたと判定された場合（６１８−はい）、フローチャート６００はモジュール６１２に戻り、そこから継続する。一方、ネットワークデバイス構成の変更が検出されなかったと判定された場合（６１８−いいえ）、フローチャート６００は、ネットワークデバイス構成の変更が検出されるまでモジュール６１６および決定ポイント６１８を繰り返す。
【００８１】
図６Ｃの例では、フローチャート６００は、（モジュール６１０から）モジュール６２０へと続き、遠隔測定データを収集する。特定の実装形態では、遠隔測定データは定期的に収集される。周期は必要に応じて異なる場合があるが、特定の実装形態では、１５分は十分に短いと見なされる。
【００８２】
図６Ｃの例では、フローチャート６００は、遠隔測定データを有するＤＮＳレコードを生成するモジュール６２２に続く。
【００８３】
図６Ｃの例では、フローチャート６００は、モジュール６２４に続き、動的ＤＮＳ更新を行って、遠隔測定データをネットワークデバイス構成伝搬サービスに送る。特定の実装形態では、ネットワークデバイス構成伝搬サービスは、ＤＮＳレコードを復号化し、その中に符号化された遠隔測定データを保存する。次に、フローチャート６００は、モジュール６２０に戻り、前述のように続き、それにより、モジュール６２０、６２２、および６２４を含むループを作成する。
【００８４】
図７は、複数の伝搬コントローラを備えたネットワークデバイス構成伝搬システムの例の線図７００を示している。線図７００は、コントローラ７０２、コントローラ７０４、ピア７０６、およびピア７０８を含む。コントローラ７０２、７０４は、１つ以上のＤＮＳサーバおよびＤＮＳゾーンリポジトリを含む。（図示されていないが、これらのコンポーネントの説明については図１〜図６を参照されたい。）ピア７０６、７０８は、ＤＮＳサーバまたはＤＮＳクライアントなどのＤＮＳエンジンを含む。（図示されていないが、これらのコンポーネントの説明については図１〜図６を参照されたい。）ピアは、無関係のＤＮＳドメインにおいて構成されても、または構成されなくてもよい。線図７００は、ネットワークデバイス構成伝搬サービスが２つ以上のコントローラによって制御され得ることを示すことを意図している。
【００８５】
図７の例では、コントローラ７０２、７０４は、ネットワークデバイス構成を複数のピアに伝搬するのに好適なＤＮＳゾーンリポジトリおよび関連エンジンを表すことを意図している。図７の例では、コントローラ７０２は、ピア７０６、７０８からの書き込みアクセス、およびピア７０８との読み取りアクセスに関与し、一方、コントローラ７０４は、ピア７０６、７０８との読み取りアクセスに関与する。これらのアクセスは、説明のためのみを目的としており、コントローラ７０４は、ピアからの読み取りアクセスのみに制限されていると特徴付けられる必要はない。しかしながら、許可されるアクセスの形態を制限することもできる。例えば、ピア７０６は、コントローラ７０２への書き込みアクセスおよびコントローラ７０４への読み取りアクセスのみをすることができ、一方、ピア７０８は、コントローラ７０４からの読み取りのみを行うことができるが、コントローラ７０２からの読み取りおよびそれへの書き込みを行うことができる。
【００８６】
有利なことに、ピア７０６、７０８は、コントローラ７０２、７０４のＤＮＳサービスへの共有アクセスを介して応答ポリシーレコード（ＤＮＳ  ＲＰＺレコード）を交換することができ、したがって情報を分散するための集中システムを必要としない。
【００８７】
図８は、ファイアウォールを備えた顧客によって使用されるポリシー伝搬システムの例の線図８００を示している。線図８００は、マスタシステム８０２および顧客システム８０４を含む。図８の例において、マスタシステム８０２は、この特定の例では、ポリシーを伝搬するサービス（またはコントローラ）を表すことを意図している。
【００８８】
線図８００では、マスタシステム８０２は、ポリシーサブシステム８０６、ポリシーからＤＮＳへの変換エンジン８０８、およびマスタＤＮＳサービス８１０を含む。図８の例において、ポリシーサブシステム８０６は、ネットワークフィルタ処理ポリシー（ネットワークファイアウォールによってフィルタ処理可能なドメイン名およびＩＰネットワークのリストなど）を生成するエンジンおよびデータストアを表すことを意図している。ポリシーからＤＮＳへの変換エンジン８０８は、ポリシーを、ＤＮＳレコードタイプに限定される必要のないＤＮＳレコード、いくつかの例を挙げると、ＤＮＳ  ＲＰＺレコード、テキストレコード、符号化された文字列データレコードなどに変換する。ＤＮＳレコードは、マスタＤＮＳサービス８１０によって提供されるＤＮＳゾーンにロードされる。
【００８９】
線図８００では、顧客システム８０４は、ファイアウォール８１２−１〜ファイアウォール８１２−ｎ（まとめて、ファイアウォール８１２）および顧客ＤＮＳサービス８１４を含む。ファイアウォール８１２は、それぞれのネットワークノードに関連付けられている。特定の実装形態では、ファイアウォールはＤＮＳ要求をする。例えば、ファイアウォール８１２は、ＤＮＳゾーン転送要求をマスタＤＮＳサービス８１０に発行して、ネットワークフィルタ処理ポリシーを含む１つ以上のＤＮＳゾーンを取得し、ファイアウォール８１２を通過するネットワークトラフィックにネットワークポリシーを適用することができる。ファイアウォールは、顧客ＤＮＳサービス８１４に動的ＤＮＳ更新を発行する。例えば、ファイアウォール８１２は、ドメイン名またはＩＰサブネットを表すＤＮＳレコードを送信して、ネットワークフィルタ処理ポリシーを強化または修正することができる。他のファイアウォール８１２は、これらのＤＮＳレコードを取得して、それらをポリシーに適用することができる。有利なことに、図８を参照して記載したシステムは、図７を参照して記載したように複数のピアを備え、図１〜図６を参照して記載したようにネットワーク構成システムを備えた複数のコントローラにわたって適用することができる。
【００９０】
単一のエンティティが複数のコントローラを制御し得ることに注意されたい。例えば、規制により、異なる権限に対してサービスブロックが必要になる場合がある。この例では、複数のコントローラを用いてサービスを実装することができ、コントローラの各々は、異なる権限に関連付けられている。異なるエンティティはまた、複数の異なるコントローラを制御し得る。例えば、第１のエンティティは、ネットワークデバイス構成伝搬に第１のコントローラを使用し、第２のエンティティは、遠隔測定に第２のコントローラを使用し、第３のエンティティは、広告サイトポリシーに第３のコントローラを使用することができる。有利なことに、異なる当事者が協力して、関係するさまざまなエンティティに許容可能であるものだけを共有することができる。例えば、プライベートエンティティは、それらのブラックリストまたはホワイトリストを公開したくない場合がある。
【００９１】
図９は、本明細書に記載されているように、伝搬が起こり得る構造の例の線図９００を示している。線図９００は、ルートノード９０２、ＤＮＳサーバ９０４−１〜ＤＮＳサーバ９０４−ｎ（まとめて、ＤＮＳサーバ９０４）、ＤＮＳサーバ９０６、およびＤＮＳクライアント９０８−１〜ＤＮＳクライアント９０８−ｎ（まとめて、ＤＮＳクライアント９０８）を含む。ルートノード９０２は、ＤＮＳゾーンのルートノードデータを表すことを意図している。ルートノードデータは、多くのサーバ（図示せず）にわたって複製することができる。ＤＮＳサーバ９０４は、ルートノードデータを他のＤＮＳサーバまたはクライアントに提供するサーバである。理論的には、ＤＮＳサーバ９０４とＤＮＳサーバ９０６の間には、ＤＮＳクライアント９０８のみを子とするエッジサーバを表すことを意図した任意の数のサーバが存在し得る。ＤＮＳサーバ９０６は、有効期限の日付コードキャッシュを用いて実装することができる。
【００９２】
有利なことに、伝搬サービスはＡＬＴルート（ｒｏｏｔｉｄ）へのパスを提供することができ、これは、マスタシステムまたはコントローラ上に存在する完全に別個のツリーである。ＴＳＩＧはアクセス制御用に設計されていないが、特定の実装形態では、マスタシステムまたはコントローラはアクセス制御およびデータの認証の両方にＴＳＩＧを使用する（後者はＴＳＩＧの設計目的である）。
【００９３】
本明細書で提供されたこれらの例および他の例は、説明を意図しているが、記載された実装形態を必ずしも限定するものではない。本明細書で使用される場合、「実装形態」という用語は、限定ではなく、例として説明する役割を果たす実装形態を意味する。前文および図面で記載した技術は、状況に応じて代替の実装を作成するためにうまく組み合わせることができる。
【図１】
2020530734.tif 000003
【図２】
2020530734.tif 000004
【図３】
2020530734.tif 000005
【図４】
2020530734.tif 000006
【図５】
2020530734.tif 000007
【図６Ａ】
2020530734.tif 000008
【図６Ｂ】
2020530734.tif 000009
【図６Ｃ】
2020530734.tif 000010
【図７】
2020530734.tif 000011
【図８】
2020530734.tif 000012
【図９】
2020530734.tif 000013
【国際調査報告】
2020530734.tif 000014
2020530734.tif 000015