要約
- IESG は 2026 年 8 月 18 日、
draft-ietf-netmod-yang-semver-28を Proposed Standard として発行することを承認したと発表した。YANG モジュールにセマンティック版を付け、YANG Library から任意に公開できるようにする仕様である。 - この版は、保守者がモジュール成果物間の互換関係をどう分類したかを表す。対象サーバーのモジュール集合が整合していること、必要な機能が有効であること、偏差がないこと、期待どおり動くことは証明しない。変更承認には対象固有の証拠が要る。
推奨下限が判定しないもの
冒頭は仮想例であり、実在する障害やベンダー不具合ではない。recommended-min-version は、利用側が望む最古の互換版を伝えるための手掛かりだ。
比較対象は三つの数値だけで、互換性修飾子やプレリリース、ビルド情報は見ない。したがって、上位のメジャー版も、_non_compatible を伴う版も数値上は下限を満たし得る。候補が見つからない場合も、コンパイラーは警告したうえで通常の YANG import 解決を続けるべきだとされる。
これは緩い依存関係を守る設計である。「数値条件を満たした」を「装置への変更を許可した」に変換すると、推奨情報に存在しない権限を追加してしまう。
承認されたのは系譜を読める仕組みだ
承認対象は “YANG Semantic Versioning” 第 28 版で、RFC Editor の処理中は Internet-Draft のままである。NETMOD ワーキンググループの成果で、公告は全体的な合意と一部の異論、開発中のツールを記録している。
ysv:version は X.Y.Z_COMPAT を基本とし、任意のプレリリース情報とビルド情報を持つ。原則としてメジャー増分は後方非互換、マイナー増分は互換追加、パッチ増分は互換な編集変更を示す。
モジュール名と版を合わせれば、特定の改訂内容を識別できる。日付だけより依存関係と祖先を説明しやすく、サーバーは YANG Library で実装を主張する版を示せる。
ただし、これは成果物の身元と来歴である。対象で実際に構成される木や、実行時の挙動の証明ではない。
互換性は成果物間の主張である
版を付けるのはモジュールの作者または保守者だ。規則はあるが、必要以上に大きい増分や番号の省略も許される。対象装置が独立に測定した値ではない。
仕様自身も、番号が記述された変更の発生を保証せず、特定の利用者への影響も保証しないと明記する。差分はスキーマ比較で、影響はインスタンス検証と実装試験で確かめる必要がある。
単体では互換なモジュールでも、別モジュールの augmentation、無効化された feature、対象固有の deviation によって実効スキーマは変わる。元の版表示が正しくても、制御処理が必要とするノードが消えることはある。
ゆえに「互換」は常に範囲付きだ。この成果物系譜に関する保守者の分類であって、あらゆる装置と設定への保証ではない。
非互換の履歴は枝に残る
_compatible と _non_compatible は限定的な開発枝を表す。同じメジャー・マイナー枝で一度 _non_compatible が現れると、後続版はそれを消したり互換へ戻したりできない。
後の編集で過去の断絶を洗い流さないための規則だ。監査記録は三数値だけでなく、完全な識別子を保持しなければならない。
一方、推奨下限は数値だけを比べる。枝を拒否したい組織は、解決した成果物に対して別の方針を明示し、理由を記録する必要がある。下限欄が代行したことにしてはならない。
対象が持つのはモジュール集合だ
YANG Library は、モジュールと改訂、import-only モジュール、サブモジュール、有効な機能、偏差、所在を含む集合を記述する。セマンティック版は有用な一列を追加するが、一覧全体を置き換えない。
草案も、整合したモジュール集合の構築は拡張の範囲外だとし、YANG packages などの隣接作業を挙げる。同じ主要モジュール版を示す二台でも、周辺要素により実効スキーマは異なり得る。
RFC 7950 は import、augmentation、feature、deviation の合成を定め、RFC 8525 は対象の発見を助け、RFC 9907 は改訂ラベルを扱う。それでも装置上のコードや既存データを試験したことにはならない。
承認は証拠の連鎖で行う
自動化は、要求制約、解決した成果物とハッシュ、完全な版、YANG Library スナップショット、実効スキーマのハッシュ、前後差分、データ検証、実装試験、対象ソフトウェアと設定分類、残余リスクを引き受ける責任者を保存すべきだ。
下限未達は依存選択、非互換修飾子は系譜方針、機能欠落や偏差衝突は対象スキーマ、挙動回帰は実装、承認欠如は統治の問題である。全部を「版違い」にまとめれば、強制実行だけが簡単になる。
番号は候補を早く絞るために使う。最後の扉は、コンパイルされた対象、動くコードの証拠、結果を負う所有者が管理する。
出典
- IETF Datatracker — YANG Semantic Versioning
- IETF Datatracker — 文書履歴
- IETF Datatracker — shepherd write-up
- Lu Heng — Minimum Initial Specification
- Lu Heng — 稼働コード優先
- IETF 公告 — protocol action
- YANG Module Versioning — 第17版
- YANG Schema Comparison — 第9版
- 承認済み Internet-Draft — 第28版
- IETF — YANG モジュール更新
- RFC 7950 — YANG 1.1
- RFC 8525 — YANG Library
- RFC 9907 — YANG Revision Labels
会員向け解説
プロフィールの詳細
適切な会員レベルでログインすると、解説全文と出典メモをご覧いただけます。
Strategic Circle 限定
Strategic Circle
すべての読者に公開されています。参加してログインすると プロフィール解説 を閲覧できます。
Strategic Circle に参加Leadership Alliance 会員限定
Leadership Alliance
対象となる IP 資産の所有者・管理者向けです。ログインすると Leadership Alliance の解説を閲覧できます。
Leadership Alliance に参加