https://en.wikipedia.org/wiki/YANGを読みましたが、 の実際の使用法とYANG
それが提供する利点を理解するのにまだ問題があります。私が理解しているように、元々設計されていたように、現在は NETCONF だけでなく使用されています。たとえば、私たちが書いたものは何でもコンパイルまたは翻訳されていないためYANG
、常識的な言語ではありません。私が理解しているように、より高いレベルのライブラリまたはアプリケーションの参照モデルとして使用されています。次に問題は、高レベルのコードがどのように理解するかです。C
python
YANG
YANG
1 に答える
YANG は特殊なスキーマ言語であり、XSD スキーマまたは RelaxNG に似ていますが、NETCONF に固有でした (だった)。その目標は、RFC6020 で説明されているように、ピア間のプロトコル セッション中に交換されるすべてのコンテンツをモデル化することです。
YANG は、NETCONF プロトコルのデータをモデル化するために使用される言語です。YANG モジュールは、構成、状態データ、リモート プロシージャ コール (RPC)、通知など、NETCONF ベースの操作に使用できるデータの階層を定義します。これにより、NETCONF クライアントとサーバーの間で送信されるすべてのデータの完全な説明が可能になります。
YANG によって定義されたモデルは、通常の方法で使用できます。たとえば、JAXBが XSD スキーマと Java に対して行うコード生成などです。YANG モジュール セット (YANG モデル) を単純に使用し、ダミーの実装としてすぐに使用できるツールとサーバーの実装があります。モデルを使用して、ユーザーがデバイスに固有のものを実際に実装せずにデバイスをクエリできるようにするツールもあります。YANG モジュールのセットは、デバイスによって提供されるインターフェイスを公開していると言えます。このインターフェースで何をするかは完全にあなた次第です。
仕様で提供されている高レベルの概要を読むことをお勧めします。
ietf-netmod-yangタグの wiki ページも確認してください。
編集:また、NETCONF および YANGドキュメントを使用したネットワーク管理のアーキテクチャを読むことも有益です。さらに、アプリケーション開発者などのさまざまな役割が (ネットワーク管理のコンテキストで) どのように YANG a にアプローチする必要があるかなど、YANG a が属するアーキテクチャについて説明します。