{"schema":"article/1","id":"art_f1e54b5f30","owner":"u_owner","status":"published","visibility":"public","version":1,"title":"ルーティングテーブルの行を、誰がどこで決めるか","rawTitle":"ルーティングテーブルの行を、誰がどこで決めるか","slug":"nw-basics-21-sdn","file":"ネットワーク_21_SDN","relPath":"content/published/ネットワーク_21_SDN.md","aliases":[],"kind":"published","area":"tech","topic":"ネットワーク","category":"ネットワーク","tags":["ネットワーク","sdn","ルーティング","concept"],"summary":"テーブルの行を載せる係が、人からプロトコル、そしてコントローラへ移る 3 段を 1 枚の図で見る。制御面とデータ面の分離、北向きと南向きの API、アンダーレイとオーバーレイ","date":"2026-09-14","updated":"2026-09-14","links":["nw-basics-index","nw-basics-00-three-layers","nw-basics-20-ipv6","nw-basics-22-firewall","nw-basics-05-static-route","nw-basics-13-ospf"],"blocks":[{"id":"blk_480d20","type":"paragraph","markdown":"勉強会では、ルータのルーティングテーブルに手で行を書きました。\n別の回では、ルータ同士が経路を教え合う設定もしました。\nどちらの回も、機器がテーブルを見て運ぶところは同じで、行を載せる係だけが違いました。\nこの記事は、その係がもう一段移った形を 1 枚の図で見ます。「テーブルを書くのは誰か」の 3 段目です。","text":"勉強会では、ルータのルーティングテーブルに手で行を書きました。\n別の回では、ルータ同士が経路を教え合う設定もしました。\nどちらの回も、機器がテーブルを見て運ぶところは同じで、行を載せる係だけが違いました。\nこの記事は、その係がもう一段移った形を 1 枚の図で見ます。「テーブルを書くのは誰か」の 3 段目です。","line":2,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_bb713c","type":"paragraph","markdown":"この連載は、ネットワークの言葉を 3 つの層に置いて読みます。\nもの（物理か論理か）、結びつき（人が設定で付ける手動か、機器が学習する自動か、製造時に決まる固定か）、通信フロー（1 本の通信がそれらを順に通る道筋）の 3 つです。","text":"この連載は、ネットワークの言葉を 3 つの層に置いて読みます。\nもの（物理か論理か）、結びつき（人が設定で付ける手動か、機器が学習する自動か、製造時に決まる固定か）、通信フロー（1 本の通信がそれらを順に通る道筋）の 3 つです。","line":7,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_34ba84","type":"heading","depth":2,"markdown":"## 登場するもの","text":"登場するもの","line":10,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_dd76a6","type":"heading","depth":4,"markdown":"#### 制御面とデータ面","text":"制御面とデータ面","line":12,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_aad9bb","type":"paragraph","markdown":"決める役割と運ぶ役割です。\nどちらも論理の役割の名前で、物理の箱が 2 つに割れるわけではありません。\nこれまでの図に出てきた機器は、1 台の中に両方を持っていました。","text":"決める役割と運ぶ役割です。\nどちらも論理の役割の名前で、物理の箱が 2 つに割れるわけではありません。\nこれまでの図に出てきた機器は、1 台の中に両方を持っていました。","line":14,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_4492a6","type":"heading","depth":4,"markdown":"#### コントローラ","text":"コントローラ","line":18,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_99f01f","type":"paragraph","markdown":"網全体の行を 1 か所で決める箱です。\n物理の箱にも仮想の箱にもなります。\nCisco の説明では、制御面をデータ面から切り離して管理を 1 か所に集めた形が SDN だとされています。","text":"網全体の行を 1 か所で決める箱です。\n物理の箱にも仮想の箱にもなります。\nCisco の説明では、制御面をデータ面から切り離して管理を 1 か所に集めた形が SDN だとされています。","line":20,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_984dcc","type":"heading","depth":4,"markdown":"#### 北向き API と南向き API","text":"北向き API と南向き API","line":24,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_d6f568","type":"paragraph","markdown":"論理の入口です。\n北向きは人や運用のアプリとコントローラの間、南向きはコントローラと個々の機器の間にあります。\n南向きの代表は NETCONF（機器の設定を入れる・変える・消す仕組み）と、RESTCONF（同じデータに HTTP でアクセスする仕組み）です。","text":"論理の入口です。\n北向きは人や運用のアプリとコントローラの間、南向きはコントローラと個々の機器の間にあります。\n南向きの代表は NETCONF（機器の設定を入れる・変える・消す仕組み）と、RESTCONF（同じデータに HTTP でアクセスする仕組み）です。","line":26,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_5cbb2c","type":"heading","depth":4,"markdown":"#### アンダーレイとオーバーレイ","text":"アンダーレイとオーバーレイ","line":30,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_28e5d6","type":"paragraph","markdown":"アンダーレイは物理の網です。\n実際の機器とケーブルで、IP で相手に届きさえすればよい部分です。\nオーバーレイは、包み方（カプセル化）で作る論理の網です。\n図 10 で 1 本だけ作ったトンネルを、網全体でやったものにあたります。","text":"アンダーレイは物理の網です。\n実際の機器とケーブルで、IP で相手に届きさえすればよい部分です。\nオーバーレイは、包み方（カプセル化）で作る論理の網です。\n図 10 で 1 本だけ作ったトンネルを、網全体でやったものにあたります。","line":32,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_118c7a","type":"heading","depth":2,"markdown":"## 結びつき","text":"結びつき","line":37,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_624034","type":"list","markdown":"- 行 ⇄ 機器は、コントローラが配るので、機器から見れば自動です。何を配るかを決めるのは人の方針なので、そこは手動のまま残ります。\n- オーバーレイ ⇄ アンダーレイは、包み方で結び付きます。上の 1 本が、下では複数の機器を経由します。上の網の形と下の網の形は一致しなくてかまいません。\n- 人やアプリ ⇄ コントローラは北向き API、コントローラ ⇄ 機器は南向き API です。","text":"行 ⇄ 機器は、コントローラが配るので、機器から見れば自動です。何を配るかを決めるのは人の方針なので、そこは手動のまま残ります。オーバーレイ ⇄ アンダーレイは、包み方で結び付きます。上の 1 本が、下では複数の機器を経由します。上の網の形と下の網の形は一致しなくてかまいません。人やアプリ ⇄ コントローラは北向き API、コントローラ ⇄ 機器は南向き API です。","line":39,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_df21fc","type":"heading","depth":2,"markdown":"## 通信フロー","text":"通信フロー","line":43,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_ba61f2","type":"paragraph","markdown":"この図には、1 本の通信を追う番号がありません。\n通信の通り道そのものは変わらず、変わるのは行を載せる係だからです。\n代わりに、係が移る 3 段を並べます。","text":"この図には、1 本の通信を追う番号がありません。\n通信の通り道そのものは変わらず、変わるのは行を載せる係だからです。\n代わりに、係が移る 3 段を並べます。","line":45,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_ddb0ea","type":"paragraph","markdown":"① 手動（スタティック）。人が 1 台ずつ行を書きます。決める係は人です。図 5 でやったことです。","text":"① 手動（スタティック）。人が 1 台ずつ行を書きます。決める係は人です。図 5 でやったことです。","line":49,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_991386","type":"paragraph","markdown":"② プロトコル。機器同士が網の情報を配り合い、各機器が自分で計算して行を作ります。決める係は各機器です。図 13 でやったことです。","text":"② プロトコル。機器同士が網の情報を配り合い、各機器が自分で計算して行を作ります。決める係は各機器です。図 13 でやったことです。","line":51,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_34d8be","type":"paragraph","markdown":"③ コントローラ。1 か所で決めて、各機器へ配ります。機器に残るのは、配られた行のとおりに運ぶ仕事だけです。","text":"③ コントローラ。1 か所で決めて、各機器へ配ります。機器に残るのは、配られた行のとおりに運ぶ仕事だけです。","line":53,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_dffc51","type":"paragraph","markdown":"3 段とも、機器がテーブルを見て運ぶところは変わりません。","text":"3 段とも、機器がテーブルを見て運ぶところは変わりません。","line":55,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_f1bb18","type":"heading","depth":2,"markdown":"## 図 21","text":"図 21","line":57,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_9fedb6","type":"paragraph","markdown":"図の上から順に、3 段の並び、制御面とデータ面の分かれ方、アンダーレイとオーバーレイの重なり、同じ 1 行が 3 段で誰の手で載るかの対比です。","text":"図の上から順に、3 段の並び、制御面とデータ面の分かれ方、アンダーレイとオーバーレイの重なり、同じ 1 行が 3 段で誰の手で載るかの対比です。","line":59,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_dc73a2","type":"html","markdown":"<svg viewBox=\"0 0 900 1248\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"SDN：テーブルを書くのは誰か、制御面とデータ面の分離、北向き・南向き API、オーバーレイとアンダーレイ\" style=\"max-width:100%;height:auto;font-family:sans-serif\">\n  <rect x=\"0\" y=\"0\" width=\"900\" height=\"1248\" fill=\"#fbfcfe\"/>\n  <text x=\"20\" y=\"30\" text-anchor=\"start\" font-size=\"14\" font-weight=\"700\" fill=\"#1f2937\">SDN：ルーティングテーブルを書くのは誰か（手動 → プロトコル → コントローラ）</text>\n  <text x=\"20\" y=\"50\" text-anchor=\"start\" font-size=\"11\" fill=\"#6b7280\">機器の中の「決める係」と「運ぶ係」を切り離し、決める係を 1 か所に集めたものがコントローラ型。図 5（手動）・図 13（プロトコル）の次の段</text>\n  <text x=\"20\" y=\"80\" text-anchor=\"start\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">A. テーブルを書くのは誰か（3 段）</text>\n  <rect x=\"20\" y=\"92\" width=\"260\" height=\"96\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"32\" y=\"112\" text-anchor=\"start\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">1. 手動（スタティック）</text>\n  <text x=\"32\" y=\"130\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">人が 1 台ずつ行を書く（図 5）</text>\n  <text x=\"32\" y=\"145\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">決める係は人。機器は書かれた行で運ぶ</text>\n  <text x=\"32\" y=\"160\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">台数が増えるほど書く量が増える</text>\n  <line x1=\"286\" y1=\"140\" x2=\"306\" y2=\"140\" stroke=\"#9aa7b5\" stroke-width=\"2\"/><polygon points=\"305,135 305,145 314,140\" fill=\"#9aa7b5\"/>\n  <rect x=\"320\" y=\"92\" width=\"260\" height=\"96\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"332\" y=\"112\" text-anchor=\"start\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">2. プロトコル（OSPF など）</text>\n  <text x=\"332\" y=\"130\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">機器同士が網の情報を配り合う（図 13）</text>\n  <text x=\"332\" y=\"145\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">決める係は各機器。自分で計算する</text>\n  <text x=\"332\" y=\"160\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">全体の方針は 1 か所にまとまらない</text>\n  <line x1=\"586\" y1=\"140\" x2=\"606\" y2=\"140\" stroke=\"#9aa7b5\" stroke-width=\"2\"/><polygon points=\"605,135 605,145 614,140\" fill=\"#9aa7b5\"/>\n  <rect x=\"620\" y=\"92\" width=\"260\" height=\"96\" rx=\"8\" fill=\"#e6f0ff\" stroke=\"#0a7aff\" stroke-width=\"1.5\"/>\n  <text x=\"632\" y=\"112\" text-anchor=\"start\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">3. コントローラ（SDN）</text>\n  <text x=\"632\" y=\"130\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">1 か所で決めて、各機器へ配る</text>\n  <text x=\"632\" y=\"145\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">決める係はコントローラ（別の箱）</text>\n  <text x=\"632\" y=\"160\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">機器は配られた行のとおりに運ぶ</text>\n  <text x=\"20\" y=\"206\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">3 段とも、機器が「テーブルを見て運ぶ」ところは変わらない。変わるのは、その行を誰がどこで決めるか</text>\n  <text x=\"20\" y=\"236\" text-anchor=\"start\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">B. 決める係（制御面）と運ぶ係（データ面）を分ける</text>\n  <rect x=\"20\" y=\"250\" width=\"200\" height=\"150\" rx=\"8\" fill=\"#f2f5f9\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"120.0\" y=\"270\" text-anchor=\"middle\" font-size=\"13\" font-weight=\"700\" fill=\"#1f2937\">従来の 1 台（図 5・図 13）</text>\n  <rect x=\"36\" y=\"282\" width=\"168\" height=\"40\" rx=\"8\" fill=\"#e6f0ff\" stroke=\"#0a7aff\" stroke-width=\"1.5\"/>\n  <text x=\"120.0\" y=\"302\" text-anchor=\"middle\" font-size=\"11\" font-weight=\"700\" fill=\"#1f2937\">制御面：決める</text>\n  <rect x=\"36\" y=\"332\" width=\"168\" height=\"40\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"120.0\" y=\"352\" text-anchor=\"middle\" font-size=\"11\" font-weight=\"700\" fill=\"#1f2937\">データ面：運ぶ</text>\n  <text x=\"20\" y=\"418\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">1 台の中に両方が入っていて、自分で決めて自分で運ぶ</text>\n  <text x=\"20\" y=\"434\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">制御面も運ぶ係も論理の役割。箱（物理）は 1 つのまま</text>\n  <rect x=\"560\" y=\"250\" width=\"200\" height=\"44\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"660.0\" y=\"270\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">人・運用のアプリ</text>\n  <line x1=\"660\" y1=\"294\" x2=\"660\" y2=\"314\" stroke=\"#0a7aff\" stroke-width=\"2\"/><polygon points=\"655,313 665,313 660,322\" fill=\"#0a7aff\"/>\n  <text x=\"676\" y=\"314\" text-anchor=\"start\" font-size=\"10\" fill=\"#0a7aff\">北向き API（REST・JSON）</text>\n  <rect x=\"500\" y=\"322\" width=\"320\" height=\"58\" rx=\"8\" fill=\"#e6f0ff\" stroke=\"#0a7aff\" stroke-width=\"1.5\"/>\n  <text x=\"660.0\" y=\"342\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">コントローラ（制御面を集めた箱）</text>\n  <text x=\"660.0\" y=\"360\" text-anchor=\"middle\" font-size=\"10\" fill=\"#374151\">網全体の行を、ここでまとめて決める</text>\n  <line x1=\"555\" y1=\"380\" x2=\"555\" y2=\"412\" stroke=\"#0a7aff\" stroke-width=\"2\"/><polygon points=\"550,411 560,411 555,420\" fill=\"#0a7aff\"/>\n  <line x1=\"660\" y1=\"380\" x2=\"660\" y2=\"412\" stroke=\"#0a7aff\" stroke-width=\"2\"/><polygon points=\"655,411 665,411 660,420\" fill=\"#0a7aff\"/>\n  <line x1=\"765\" y1=\"380\" x2=\"765\" y2=\"412\" stroke=\"#0a7aff\" stroke-width=\"2\"/><polygon points=\"760,411 770,411 765,420\" fill=\"#0a7aff\"/>\n  <text x=\"490\" y=\"404\" text-anchor=\"end\" font-size=\"10\" fill=\"#0a7aff\">南向き API（NETCONF・RESTCONF など）</text>\n  <rect x=\"500\" y=\"420\" width=\"110\" height=\"52\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"555.0\" y=\"440\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">機器 1</text>\n  <text x=\"555.0\" y=\"458\" text-anchor=\"middle\" font-size=\"10\" fill=\"#374151\">データ面</text>\n  <rect x=\"605\" y=\"420\" width=\"110\" height=\"52\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"660.0\" y=\"440\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">機器 2</text>\n  <text x=\"660.0\" y=\"458\" text-anchor=\"middle\" font-size=\"10\" fill=\"#374151\">データ面</text>\n  <rect x=\"710\" y=\"420\" width=\"110\" height=\"52\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"765.0\" y=\"440\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">機器 3</text>\n  <text x=\"765.0\" y=\"458\" text-anchor=\"middle\" font-size=\"10\" fill=\"#374151\">データ面</text>\n  <text x=\"250\" y=\"340\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">コントローラ型では、制御面が機器の外に出る</text>\n  <text x=\"250\" y=\"356\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">機器に残るのは、配られた行のとおりに運ぶ仕事</text>\n  <text x=\"250\" y=\"372\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">北向き＝人やアプリの側　南向き＝機器の側</text>\n  <text x=\"20\" y=\"492\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">コントローラは物理の箱にも仮想の箱にもなる。制御面・データ面は「決める役割」「運ぶ役割」という論理の名前</text>\n  <text x=\"20\" y=\"508\" text-anchor=\"start\" font-size=\"10\" fill=\"#0a7aff\">*機器の中の表は、人が 1 台ずつ書くのでも機器同士が計算するのでもなく、コントローラが配ったものになる</text>\n  <text x=\"20\" y=\"548\" text-anchor=\"start\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">C. アンダーレイ（物理の網）とオーバーレイ（論理の網）</text>\n  <rect x=\"20\" y=\"562\" width=\"860\" height=\"96\" rx=\"10\" fill=\"#e6f0ff\" stroke=\"#0a7aff\" stroke-width=\"1.5\" stroke-dasharray=\"6 4\"/>\n  <text x=\"34\" y=\"582\" text-anchor=\"start\" font-size=\"11\" font-weight=\"700\" fill=\"#0a7aff\">オーバーレイ（論理）：トンネルで作る網。図 10 の GRE や、VXLAN のような包み方で作る</text>\n  <rect x=\"60\" y=\"594\" width=\"150\" height=\"48\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"135.0\" y=\"614\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">端の機器 1</text>\n  <rect x=\"690\" y=\"594\" width=\"150\" height=\"48\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"765.0\" y=\"614\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">端の機器 2</text>\n  <line x1=\"210\" y1=\"618\" x2=\"690\" y2=\"618\" stroke=\"#0a7aff\" stroke-width=\"2\" stroke-dasharray=\"7 5\"/>\n  <text x=\"450\" y=\"612\" text-anchor=\"middle\" font-size=\"10\" fill=\"#0a7aff\">トンネル（論理では直結の 1 本に見える）</text>\n  <line x1=\"135\" y1=\"642\" x2=\"130\" y2=\"682\" stroke=\"#9aa7b5\" stroke-width=\"1.5\" stroke-dasharray=\"3 3\"/>\n  <line x1=\"765\" y1=\"642\" x2=\"770\" y2=\"682\" stroke=\"#9aa7b5\" stroke-width=\"1.5\" stroke-dasharray=\"3 3\"/>\n  <rect x=\"20\" y=\"682\" width=\"860\" height=\"106\" rx=\"10\" fill=\"#f2f5f9\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"34\" y=\"702\" text-anchor=\"start\" font-size=\"11\" font-weight=\"700\" fill=\"#374151\">アンダーレイ（物理）：実際の機器とケーブル。ここは IP で相手に届きさえすればよい</text>\n  <rect x=\"70\" y=\"714\" width=\"120\" height=\"46\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"130.0\" y=\"734\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">機器 A</text>\n  <rect x=\"270\" y=\"714\" width=\"120\" height=\"46\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"330.0\" y=\"734\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">機器 B</text>\n  <rect x=\"470\" y=\"714\" width=\"120\" height=\"46\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"530.0\" y=\"734\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">機器 C</text>\n  <rect x=\"710\" y=\"714\" width=\"120\" height=\"46\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"770.0\" y=\"734\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">機器 D</text>\n  <line x1=\"190\" y1=\"737\" x2=\"270\" y2=\"737\" stroke=\"#374151\" stroke-width=\"2\"/>\n  <line x1=\"390\" y1=\"737\" x2=\"470\" y2=\"737\" stroke=\"#374151\" stroke-width=\"2\"/>\n  <line x1=\"590\" y1=\"737\" x2=\"710\" y2=\"737\" stroke=\"#374151\" stroke-width=\"2\"/>\n  <text x=\"450\" y=\"778\" text-anchor=\"middle\" font-size=\"10\" fill=\"#6b7280\">上の 1 本は、下では複数の機器を経由している。上の網の形と下の網の形は一致しなくてよい</text>\n  <text x=\"20\" y=\"810\" text-anchor=\"start\" font-size=\"11\" fill=\"#374151\">オーバーレイ（論理の網）をファブリックと呼ぶ（Cisco SD-Access 設計ガイド）</text>\n  <text x=\"20\" y=\"828\" text-anchor=\"start\" font-size=\"10\" fill=\"#b45309\">設計ガイドの原文は A fabric is simply an overlay network.（ファブリックとは、要はオーバーレイの網である）</text>\n  <text x=\"20\" y=\"858\" text-anchor=\"start\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">D. 同じ 1 行が、3 段でそれぞれ誰の手で載るか（例：図 5 の 192.168.3.0/24 の行）</text>\n  <rect x=\"20\" y=\"872\" width=\"280\" height=\"90\" rx=\"6\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"30\" y=\"888\" font-size=\"10\" font-weight=\"700\" fill=\"#1f2937\">1. 手動（スタティック）</text>\n  <text x=\"30\" y=\"904\" font-size=\"10\" fill=\"#374151\">192.168.3.0/24 → 172.16.12.2</text>\n  <text x=\"30\" y=\"919\" font-size=\"10\" fill=\"#374151\">載せた人: 人（図 5）</text>\n  <text x=\"30\" y=\"934\" font-size=\"10\" fill=\"#374151\">きっかけ: 人が入力したとき</text>\n  <text x=\"30\" y=\"949\" font-size=\"10\" fill=\"#374151\">直すとき: その機器で人が直す</text>\n  <rect x=\"310\" y=\"872\" width=\"280\" height=\"90\" rx=\"6\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"320\" y=\"888\" font-size=\"10\" font-weight=\"700\" fill=\"#1f2937\">2. プロトコル（OSPF など）</text>\n  <text x=\"320\" y=\"904\" font-size=\"10\" fill=\"#374151\">192.168.3.0/24 → 172.16.12.2</text>\n  <text x=\"320\" y=\"919\" font-size=\"10\" fill=\"#374151\">載せた人: その機器自身（図 13）</text>\n  <text x=\"320\" y=\"934\" font-size=\"10\" fill=\"#374151\">きっかけ: 隣から情報が届いたとき</text>\n  <text x=\"320\" y=\"949\" font-size=\"10\" fill=\"#374151\">直すとき: 網が変われば各自で再計算</text>\n  <rect x=\"600\" y=\"872\" width=\"280\" height=\"90\" rx=\"6\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"610\" y=\"888\" font-size=\"10\" font-weight=\"700\" fill=\"#1f2937\">3. コントローラ</text>\n  <text x=\"610\" y=\"904\" font-size=\"10\" fill=\"#374151\">192.168.3.0/24 → 172.16.12.2</text>\n  <text x=\"610\" y=\"919\" font-size=\"10\" fill=\"#374151\">載せた人: コントローラ</text>\n  <text x=\"610\" y=\"934\" font-size=\"10\" fill=\"#374151\">きっかけ: コントローラが配ったとき</text>\n  <text x=\"610\" y=\"949\" font-size=\"10\" fill=\"#374151\">直すとき: コントローラ側で一括</text>\n  <text x=\"20\" y=\"984\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">行そのものは 3 段とも同じ。違うのは「誰が、いつ、どこで」その行を載せたか。運ぶ側の動きは変わらない</text>\n  <text x=\"20\" y=\"1012\" text-anchor=\"start\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">3 層で見ると</text>\n  <text x=\"20\" y=\"1032\" text-anchor=\"start\" font-size=\"11\" fill=\"#374151\">もの：コントローラ（物理または仮想の箱）／制御面・データ面（論理の役割）／北向き・南向き API（論理）／アンダーレイ（物理）とオーバーレイ（論理）</text>\n  <text x=\"20\" y=\"1050\" text-anchor=\"start\" font-size=\"11\" fill=\"#374151\">結びつき：行 ⇄ 機器（コントローラが配る＝自動）／オーバーレイ ⇄ アンダーレイ（包み方で結び付く。図 10 のトンネルと同じ）／方針を決めるのは人（手動）</text>\n  <text x=\"20\" y=\"1068\" text-anchor=\"start\" font-size=\"11\" fill=\"#374151\">フロー：図 5 の ②「ルータが自分のテーブルを探す」は変わらない。変わるのはその前、行を誰が書いたか。手動 → 各機器の計算 → コントローラ</text>\n  <text x=\"20\" y=\"1098\" text-anchor=\"start\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">注（出典と、この図で断定していないこと）</text>\n  <text x=\"20\" y=\"1116\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">・SDN の定義／制御面とデータ面の分離／北向き・南向き API：Cisco「Software-Defined Networking overview」</text>\n  <text x=\"20\" y=\"1130\" text-anchor=\"start\" font-size=\"9\" fill=\"#6b7280\">　https://www.cisco.com/c/en/us/solutions/software-defined-networking/overview.html</text>\n  <text x=\"20\" y=\"1148\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">・アンダーレイ／オーバーレイ／ファブリック：Cisco「SD-Access Solution Design Guide (CVD)」</text>\n  <text x=\"20\" y=\"1162\" text-anchor=\"start\" font-size=\"9\" fill=\"#6b7280\">　https://www.cisco.com/c/en/us/td/docs/solutions/CVD/Campus/cisco-sda-design-guide.html</text>\n  <text x=\"20\" y=\"1176\" text-anchor=\"start\" font-size=\"9\" fill=\"#6b7280\">　原文: A fabric is simply an overlay network. ／ The underlay network is defined by the physical switches and routers that are used to deploy the SD-Access network.</text>\n  <text x=\"20\" y=\"1196\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">・南向きの例：NETCONF は RFC 6241、RESTCONF は RFC 8040。OpenFlow は ONF「OpenFlow Switch Specification 1.5.1」（2015-03-26）</text>\n  <text x=\"20\" y=\"1212\" text-anchor=\"start\" font-size=\"9\" fill=\"#6b7280\">　OpenFlow は題・版・章立て（6.1 OpenFlow Switch Protocol Overview／7.3 Controller-to-Switch Messages）まで確認。本文の定義文は PDF のため未取得</text>\n  <text x=\"20\" y=\"1228\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">・製品名（Catalyst Center・SD-Access）は実装例として名前だけ。出題範囲は CCNA 200-301 v1.1 の 6.2〜6.3。設定コマンドは扱わない</text>\n</svg>","text":"<svg viewBox=\"0 0 900 1248\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-label=\"SDN：テーブルを書くのは誰か、制御面とデータ面の分離、北向き・南向き API、オーバーレイとアンダーレイ\" style=\"max-width:100%;height:auto;font-family:sans-serif\">\n  <rect x=\"0\" y=\"0\" width=\"900\" height=\"1248\" fill=\"#fbfcfe\"/>\n  <text x=\"20\" y=\"30\" text-anchor=\"start\" font-size=\"14\" font-weight=\"700\" fill=\"#1f2937\">SDN：ルーティングテーブルを書くのは誰か（手動 → プロトコル → コントローラ）</text>\n  <text x=\"20\" y=\"50\" text-anchor=\"start\" font-size=\"11\" fill=\"#6b7280\">機器の中の「決める係」と「運ぶ係」を切り離し、決める係を 1 か所に集めたものがコントローラ型。図 5（手動）・図 13（プロトコル）の次の段</text>\n  <text x=\"20\" y=\"80\" text-anchor=\"start\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">A. テーブルを書くのは誰か（3 段）</text>\n  <rect x=\"20\" y=\"92\" width=\"260\" height=\"96\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"32\" y=\"112\" text-anchor=\"start\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">1. 手動（スタティック）</text>\n  <text x=\"32\" y=\"130\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">人が 1 台ずつ行を書く（図 5）</text>\n  <text x=\"32\" y=\"145\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">決める係は人。機器は書かれた行で運ぶ</text>\n  <text x=\"32\" y=\"160\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">台数が増えるほど書く量が増える</text>\n  <line x1=\"286\" y1=\"140\" x2=\"306\" y2=\"140\" stroke=\"#9aa7b5\" stroke-width=\"2\"/><polygon points=\"305,135 305,145 314,140\" fill=\"#9aa7b5\"/>\n  <rect x=\"320\" y=\"92\" width=\"260\" height=\"96\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"332\" y=\"112\" text-anchor=\"start\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">2. プロトコル（OSPF など）</text>\n  <text x=\"332\" y=\"130\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">機器同士が網の情報を配り合う（図 13）</text>\n  <text x=\"332\" y=\"145\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">決める係は各機器。自分で計算する</text>\n  <text x=\"332\" y=\"160\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">全体の方針は 1 か所にまとまらない</text>\n  <line x1=\"586\" y1=\"140\" x2=\"606\" y2=\"140\" stroke=\"#9aa7b5\" stroke-width=\"2\"/><polygon points=\"605,135 605,145 614,140\" fill=\"#9aa7b5\"/>\n  <rect x=\"620\" y=\"92\" width=\"260\" height=\"96\" rx=\"8\" fill=\"#e6f0ff\" stroke=\"#0a7aff\" stroke-width=\"1.5\"/>\n  <text x=\"632\" y=\"112\" text-anchor=\"start\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">3. コントローラ（SDN）</text>\n  <text x=\"632\" y=\"130\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">1 か所で決めて、各機器へ配る</text>\n  <text x=\"632\" y=\"145\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">決める係はコントローラ（別の箱）</text>\n  <text x=\"632\" y=\"160\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">機器は配られた行のとおりに運ぶ</text>\n  <text x=\"20\" y=\"206\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">3 段とも、機器が「テーブルを見て運ぶ」ところは変わらない。変わるのは、その行を誰がどこで決めるか</text>\n  <text x=\"20\" y=\"236\" text-anchor=\"start\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">B. 決める係（制御面）と運ぶ係（データ面）を分ける</text>\n  <rect x=\"20\" y=\"250\" width=\"200\" height=\"150\" rx=\"8\" fill=\"#f2f5f9\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"120.0\" y=\"270\" text-anchor=\"middle\" font-size=\"13\" font-weight=\"700\" fill=\"#1f2937\">従来の 1 台（図 5・図 13）</text>\n  <rect x=\"36\" y=\"282\" width=\"168\" height=\"40\" rx=\"8\" fill=\"#e6f0ff\" stroke=\"#0a7aff\" stroke-width=\"1.5\"/>\n  <text x=\"120.0\" y=\"302\" text-anchor=\"middle\" font-size=\"11\" font-weight=\"700\" fill=\"#1f2937\">制御面：決める</text>\n  <rect x=\"36\" y=\"332\" width=\"168\" height=\"40\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"120.0\" y=\"352\" text-anchor=\"middle\" font-size=\"11\" font-weight=\"700\" fill=\"#1f2937\">データ面：運ぶ</text>\n  <text x=\"20\" y=\"418\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">1 台の中に両方が入っていて、自分で決めて自分で運ぶ</text>\n  <text x=\"20\" y=\"434\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">制御面も運ぶ係も論理の役割。箱（物理）は 1 つのまま</text>\n  <rect x=\"560\" y=\"250\" width=\"200\" height=\"44\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"660.0\" y=\"270\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">人・運用のアプリ</text>\n  <line x1=\"660\" y1=\"294\" x2=\"660\" y2=\"314\" stroke=\"#0a7aff\" stroke-width=\"2\"/><polygon points=\"655,313 665,313 660,322\" fill=\"#0a7aff\"/>\n  <text x=\"676\" y=\"314\" text-anchor=\"start\" font-size=\"10\" fill=\"#0a7aff\">北向き API（REST・JSON）</text>\n  <rect x=\"500\" y=\"322\" width=\"320\" height=\"58\" rx=\"8\" fill=\"#e6f0ff\" stroke=\"#0a7aff\" stroke-width=\"1.5\"/>\n  <text x=\"660.0\" y=\"342\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">コントローラ（制御面を集めた箱）</text>\n  <text x=\"660.0\" y=\"360\" text-anchor=\"middle\" font-size=\"10\" fill=\"#374151\">網全体の行を、ここでまとめて決める</text>\n  <line x1=\"555\" y1=\"380\" x2=\"555\" y2=\"412\" stroke=\"#0a7aff\" stroke-width=\"2\"/><polygon points=\"550,411 560,411 555,420\" fill=\"#0a7aff\"/>\n  <line x1=\"660\" y1=\"380\" x2=\"660\" y2=\"412\" stroke=\"#0a7aff\" stroke-width=\"2\"/><polygon points=\"655,411 665,411 660,420\" fill=\"#0a7aff\"/>\n  <line x1=\"765\" y1=\"380\" x2=\"765\" y2=\"412\" stroke=\"#0a7aff\" stroke-width=\"2\"/><polygon points=\"760,411 770,411 765,420\" fill=\"#0a7aff\"/>\n  <text x=\"490\" y=\"404\" text-anchor=\"end\" font-size=\"10\" fill=\"#0a7aff\">南向き API（NETCONF・RESTCONF など）</text>\n  <rect x=\"500\" y=\"420\" width=\"110\" height=\"52\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"555.0\" y=\"440\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">機器 1</text>\n  <text x=\"555.0\" y=\"458\" text-anchor=\"middle\" font-size=\"10\" fill=\"#374151\">データ面</text>\n  <rect x=\"605\" y=\"420\" width=\"110\" height=\"52\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"660.0\" y=\"440\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">機器 2</text>\n  <text x=\"660.0\" y=\"458\" text-anchor=\"middle\" font-size=\"10\" fill=\"#374151\">データ面</text>\n  <rect x=\"710\" y=\"420\" width=\"110\" height=\"52\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"765.0\" y=\"440\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">機器 3</text>\n  <text x=\"765.0\" y=\"458\" text-anchor=\"middle\" font-size=\"10\" fill=\"#374151\">データ面</text>\n  <text x=\"250\" y=\"340\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">コントローラ型では、制御面が機器の外に出る</text>\n  <text x=\"250\" y=\"356\" text-anchor=\"start\" font-size=\"10\" fill=\"#374151\">機器に残るのは、配られた行のとおりに運ぶ仕事</text>\n  <text x=\"250\" y=\"372\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">北向き＝人やアプリの側　南向き＝機器の側</text>\n  <text x=\"20\" y=\"492\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">コントローラは物理の箱にも仮想の箱にもなる。制御面・データ面は「決める役割」「運ぶ役割」という論理の名前</text>\n  <text x=\"20\" y=\"508\" text-anchor=\"start\" font-size=\"10\" fill=\"#0a7aff\">*機器の中の表は、人が 1 台ずつ書くのでも機器同士が計算するのでもなく、コントローラが配ったものになる</text>\n  <text x=\"20\" y=\"548\" text-anchor=\"start\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">C. アンダーレイ（物理の網）とオーバーレイ（論理の網）</text>\n  <rect x=\"20\" y=\"562\" width=\"860\" height=\"96\" rx=\"10\" fill=\"#e6f0ff\" stroke=\"#0a7aff\" stroke-width=\"1.5\" stroke-dasharray=\"6 4\"/>\n  <text x=\"34\" y=\"582\" text-anchor=\"start\" font-size=\"11\" font-weight=\"700\" fill=\"#0a7aff\">オーバーレイ（論理）：トンネルで作る網。図 10 の GRE や、VXLAN のような包み方で作る</text>\n  <rect x=\"60\" y=\"594\" width=\"150\" height=\"48\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"135.0\" y=\"614\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">端の機器 1</text>\n  <rect x=\"690\" y=\"594\" width=\"150\" height=\"48\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"765.0\" y=\"614\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">端の機器 2</text>\n  <line x1=\"210\" y1=\"618\" x2=\"690\" y2=\"618\" stroke=\"#0a7aff\" stroke-width=\"2\" stroke-dasharray=\"7 5\"/>\n  <text x=\"450\" y=\"612\" text-anchor=\"middle\" font-size=\"10\" fill=\"#0a7aff\">トンネル（論理では直結の 1 本に見える）</text>\n  <line x1=\"135\" y1=\"642\" x2=\"130\" y2=\"682\" stroke=\"#9aa7b5\" stroke-width=\"1.5\" stroke-dasharray=\"3 3\"/>\n  <line x1=\"765\" y1=\"642\" x2=\"770\" y2=\"682\" stroke=\"#9aa7b5\" stroke-width=\"1.5\" stroke-dasharray=\"3 3\"/>\n  <rect x=\"20\" y=\"682\" width=\"860\" height=\"106\" rx=\"10\" fill=\"#f2f5f9\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"34\" y=\"702\" text-anchor=\"start\" font-size=\"11\" font-weight=\"700\" fill=\"#374151\">アンダーレイ（物理）：実際の機器とケーブル。ここは IP で相手に届きさえすればよい</text>\n  <rect x=\"70\" y=\"714\" width=\"120\" height=\"46\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"130.0\" y=\"734\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">機器 A</text>\n  <rect x=\"270\" y=\"714\" width=\"120\" height=\"46\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"330.0\" y=\"734\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">機器 B</text>\n  <rect x=\"470\" y=\"714\" width=\"120\" height=\"46\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"530.0\" y=\"734\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">機器 C</text>\n  <rect x=\"710\" y=\"714\" width=\"120\" height=\"46\" rx=\"8\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"770.0\" y=\"734\" text-anchor=\"middle\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">機器 D</text>\n  <line x1=\"190\" y1=\"737\" x2=\"270\" y2=\"737\" stroke=\"#374151\" stroke-width=\"2\"/>\n  <line x1=\"390\" y1=\"737\" x2=\"470\" y2=\"737\" stroke=\"#374151\" stroke-width=\"2\"/>\n  <line x1=\"590\" y1=\"737\" x2=\"710\" y2=\"737\" stroke=\"#374151\" stroke-width=\"2\"/>\n  <text x=\"450\" y=\"778\" text-anchor=\"middle\" font-size=\"10\" fill=\"#6b7280\">上の 1 本は、下では複数の機器を経由している。上の網の形と下の網の形は一致しなくてよい</text>\n  <text x=\"20\" y=\"810\" text-anchor=\"start\" font-size=\"11\" fill=\"#374151\">オーバーレイ（論理の網）をファブリックと呼ぶ（Cisco SD-Access 設計ガイド）</text>\n  <text x=\"20\" y=\"828\" text-anchor=\"start\" font-size=\"10\" fill=\"#b45309\">設計ガイドの原文は A fabric is simply an overlay network.（ファブリックとは、要はオーバーレイの網である）</text>\n  <text x=\"20\" y=\"858\" text-anchor=\"start\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">D. 同じ 1 行が、3 段でそれぞれ誰の手で載るか（例：図 5 の 192.168.3.0/24 の行）</text>\n  <rect x=\"20\" y=\"872\" width=\"280\" height=\"90\" rx=\"6\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"30\" y=\"888\" font-size=\"10\" font-weight=\"700\" fill=\"#1f2937\">1. 手動（スタティック）</text>\n  <text x=\"30\" y=\"904\" font-size=\"10\" fill=\"#374151\">192.168.3.0/24 → 172.16.12.2</text>\n  <text x=\"30\" y=\"919\" font-size=\"10\" fill=\"#374151\">載せた人: 人（図 5）</text>\n  <text x=\"30\" y=\"934\" font-size=\"10\" fill=\"#374151\">きっかけ: 人が入力したとき</text>\n  <text x=\"30\" y=\"949\" font-size=\"10\" fill=\"#374151\">直すとき: その機器で人が直す</text>\n  <rect x=\"310\" y=\"872\" width=\"280\" height=\"90\" rx=\"6\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"320\" y=\"888\" font-size=\"10\" font-weight=\"700\" fill=\"#1f2937\">2. プロトコル（OSPF など）</text>\n  <text x=\"320\" y=\"904\" font-size=\"10\" fill=\"#374151\">192.168.3.0/24 → 172.16.12.2</text>\n  <text x=\"320\" y=\"919\" font-size=\"10\" fill=\"#374151\">載せた人: その機器自身（図 13）</text>\n  <text x=\"320\" y=\"934\" font-size=\"10\" fill=\"#374151\">きっかけ: 隣から情報が届いたとき</text>\n  <text x=\"320\" y=\"949\" font-size=\"10\" fill=\"#374151\">直すとき: 網が変われば各自で再計算</text>\n  <rect x=\"600\" y=\"872\" width=\"280\" height=\"90\" rx=\"6\" fill=\"#ffffff\" stroke=\"#b9c4d0\" stroke-width=\"1.5\"/>\n  <text x=\"610\" y=\"888\" font-size=\"10\" font-weight=\"700\" fill=\"#1f2937\">3. コントローラ</text>\n  <text x=\"610\" y=\"904\" font-size=\"10\" fill=\"#374151\">192.168.3.0/24 → 172.16.12.2</text>\n  <text x=\"610\" y=\"919\" font-size=\"10\" fill=\"#374151\">載せた人: コントローラ</text>\n  <text x=\"610\" y=\"934\" font-size=\"10\" fill=\"#374151\">きっかけ: コントローラが配ったとき</text>\n  <text x=\"610\" y=\"949\" font-size=\"10\" fill=\"#374151\">直すとき: コントローラ側で一括</text>\n  <text x=\"20\" y=\"984\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">行そのものは 3 段とも同じ。違うのは「誰が、いつ、どこで」その行を載せたか。運ぶ側の動きは変わらない</text>\n  <text x=\"20\" y=\"1012\" text-anchor=\"start\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">3 層で見ると</text>\n  <text x=\"20\" y=\"1032\" text-anchor=\"start\" font-size=\"11\" fill=\"#374151\">もの：コントローラ（物理または仮想の箱）／制御面・データ面（論理の役割）／北向き・南向き API（論理）／アンダーレイ（物理）とオーバーレイ（論理）</text>\n  <text x=\"20\" y=\"1050\" text-anchor=\"start\" font-size=\"11\" fill=\"#374151\">結びつき：行 ⇄ 機器（コントローラが配る＝自動）／オーバーレイ ⇄ アンダーレイ（包み方で結び付く。図 10 のトンネルと同じ）／方針を決めるのは人（手動）</text>\n  <text x=\"20\" y=\"1068\" text-anchor=\"start\" font-size=\"11\" fill=\"#374151\">フロー：図 5 の ②「ルータが自分のテーブルを探す」は変わらない。変わるのはその前、行を誰が書いたか。手動 → 各機器の計算 → コントローラ</text>\n  <text x=\"20\" y=\"1098\" text-anchor=\"start\" font-size=\"12\" font-weight=\"700\" fill=\"#1f2937\">注（出典と、この図で断定していないこと）</text>\n  <text x=\"20\" y=\"1116\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">・SDN の定義／制御面とデータ面の分離／北向き・南向き API：Cisco「Software-Defined Networking overview」</text>\n  <text x=\"20\" y=\"1130\" text-anchor=\"start\" font-size=\"9\" fill=\"#6b7280\">　https://www.cisco.com/c/en/us/solutions/software-defined-networking/overview.html</text>\n  <text x=\"20\" y=\"1148\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">・アンダーレイ／オーバーレイ／ファブリック：Cisco「SD-Access Solution Design Guide (CVD)」</text>\n  <text x=\"20\" y=\"1162\" text-anchor=\"start\" font-size=\"9\" fill=\"#6b7280\">　https://www.cisco.com/c/en/us/td/docs/solutions/CVD/Campus/cisco-sda-design-guide.html</text>\n  <text x=\"20\" y=\"1176\" text-anchor=\"start\" font-size=\"9\" fill=\"#6b7280\">　原文: A fabric is simply an overlay network. ／ The underlay network is defined by the physical switches and routers that are used to deploy the SD-Access network.</text>\n  <text x=\"20\" y=\"1196\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">・南向きの例：NETCONF は RFC 6241、RESTCONF は RFC 8040。OpenFlow は ONF「OpenFlow Switch Specification 1.5.1」（2015-03-26）</text>\n  <text x=\"20\" y=\"1212\" text-anchor=\"start\" font-size=\"9\" fill=\"#6b7280\">　OpenFlow は題・版・章立て（6.1 OpenFlow Switch Protocol Overview／7.3 Controller-to-Switch Messages）まで確認。本文の定義文は PDF のため未取得</text>\n  <text x=\"20\" y=\"1228\" text-anchor=\"start\" font-size=\"10\" fill=\"#6b7280\">・製品名（Catalyst Center・SD-Access）は実装例として名前だけ。出題範囲は CCNA 200-301 v1.1 の 6.2〜6.3。設定コマンドは扱わない</text>\n</svg>","line":61,"sources":["src_1","src_2"],"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_77bd7f","type":"heading","depth":2,"markdown":"## 図 5・図 13 との接続","text":"図 5・図 13 との接続","line":180,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_3acb7c","type":"paragraph","markdown":"図 5 の ②「ルータが自分のテーブルで一致する行を探す」は、3 段のどれでも変わりません。\n変わるのは、その行が載るまでの段階だけです。","text":"図 5 の ②「ルータが自分のテーブルで一致する行を探す」は、3 段のどれでも変わりません。\n変わるのは、その行が載るまでの段階だけです。","line":182,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_a134a0","type":"paragraph","markdown":"図 13 では、各機器が同じ地図を持って各自で計算しました。\n3 段目では、その計算する場所が 1 か所に寄ります。\n図 10 のトンネルは、オーバーレイのいちばん小さな例にあたります。","text":"図 13 では、各機器が同じ地図を持って各自で計算しました。\n3 段目では、その計算する場所が 1 か所に寄ります。\n図 10 のトンネルは、オーバーレイのいちばん小さな例にあたります。","line":185,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_703626","type":"heading","depth":2,"markdown":"## 未検証・注意","text":"未検証・注意","line":189,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_983bc2","type":"list","markdown":"- ファブリックという語は、SD-Access の設計ガイドの原文「A fabric is simply an overlay network.」に合わせ、オーバーレイの網そのものを指すものとして使っています。図もこの原文を引いています。アンダーレイとオーバーレイを組にした仕組みを指す使い方も見かけますが、一次資料で裏取りできていないので採っていません。CCNA の出題範囲 6.3 は overlay・underlay・fabric の 3 語を並べているだけで、どちらを採るかは書いていません。\n- 南向き API には OpenFlow もありますが、仕様書は PDF で、この環境に本文を取り出す道具がありませんでした。URL に文書があることまでしか確認していないので、記事でも図でも名前を出していません。\n- 製品名（Catalyst Center・SD-Access）は名前だけです。機能の詳細・画面・設定は扱っていません。\n- 「コントローラが配るので自動」と書きましたが、どこまでが自動でどこからが人の作業かは、製品と運用によります。\n- コントローラが落ちたときに、機器が配られた行を持ったまま動き続けるのか止まるのかは、図に入れていません。未検証です。\n- SD-Access のデータ面が VXLAN、制御面が LISP であることは設計ガイドに書かれていますが、図では包み方で作るところまでにとどめ、プロトコル名は出していません。CCNA の範囲外だからです。設定コマンドも 1 つも書いていません。","text":"ファブリックという語は、SD-Access の設計ガイドの原文「A fabric is simply an overlay network.」に合わせ、オーバーレイの網そのものを指すものとして使っています。図もこの原文を引いています。アンダーレイとオーバーレイを組にした仕組みを指す使い方も見かけますが、一次資料で裏取りできていないので採っていません。CCNA の出題範囲 6.3 は overlay・underlay・fabric の 3 語を並べているだけで、どちらを採るかは書いていません。南向き API には OpenFlow もありますが、仕様書は PDF で、この環境に本文を取り出す道具がありませんでした。URL に文書があることまでしか確認していないので、記事でも図でも名前を出していません。製品名（Catalyst Center・SD-Access）は名前だけです。機能の詳細・画面・設定は扱っていません。「コントローラが配るので自動」と書きましたが、どこまでが自動でどこからが人の作業かは、製品と運用によります。コントローラが落ちたときに、機器が配られた行を持ったまま動き続けるのか止まるのかは、図に入れていません。未検証です。SD-Access のデータ面が VXLAN、制御面が LISP であることは設計ガイドに書かれていますが、図では包み方で作るところまでにとどめ、プロトコル名は出していません。CCNA の範囲外だからです。設定コマンドも 1 つも書いていません。","line":191,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_240080","type":"heading","depth":2,"markdown":"## 出典","text":"出典","line":198,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_e53825","type":"list","markdown":"- 勉強会での本人の観察（2026-09-13 実機ハンズオン。資料は非公開）\n- [Cisco: Software-Defined Networking (SDN) overview](https://www.cisco.com/c/en/us/solutions/software-defined-networking/overview.html) — 「SDN centralizes management by abstracting the control plane from the data forwarding function in the discrete networking devices.」／南向き API はコントローラと個々の機器の間、北向き API はコントローラとアプリやポリシーエンジンの間\n- [Cisco: SD-Access Solution Design Guide](https://www.cisco.com/c/en/us/td/docs/solutions/CVD/Campus/cisco-sda-design-guide.html) — アンダーレイは SD-Access を構成する物理のスイッチとルータで、IP で到達できること／オーバーレイはアンダーレイの上に仮想化で作られ、同じアンダーレイの上に複数走らせられる／「A fabric is simply an overlay network.」\n- [RFC 6241: Network Configuration Protocol (NETCONF)](https://www.rfc-editor.org/rfc/rfc6241.txt) — 「mechanisms to install, manipulate, and delete the configuration of network devices」\n- [RFC 8040: RESTCONF Protocol](https://www.rfc-editor.org/rfc/rfc8040.txt) — 「an HTTP-based protocol that provides a programmatic interface for accessing data defined in YANG, using the datastore concepts defined in the Network Configuration Protocol (NETCONF)」\n- [Cisco: Catalyst Center](https://www.cisco.com/site/us/en/products/networking/catalyst-center/index.html) — 「Manage your entire network—campus and branch, wired and wireless, IT and OT—from a single console.」\n- [CCNA 200-301 v1.1 出題範囲](https://learningcontent.cisco.com/documents/marketing/exam-topics/200-301-CCNA-v1.1.pdf) — 6.2「Compare traditional networks with controller-based networking」／6.3「Describe controller-based, software defined architecture (overlay, underlay, and fabric)」／6.3.a「Separation of control plane and data plane」／6.3.b「Northbound and Southbound APIs」","text":"勉強会での本人の観察（2026-09-13 実機ハンズオン。資料は非公開）Cisco: Software-Defined Networking (SDN) overview — 「SDN centralizes management by abstracting the control plane from the data forwarding function in the discrete networking devices.」／南向き API はコントローラと個々の機器の間、北向き API はコントローラとアプリやポリシーエンジンの間Cisco: SD-Access Solution Design Guide — アンダーレイは SD-Access を構成する物理のスイッチとルータで、IP で到達できること／オーバーレイはアンダーレイの上に仮想化で作られ、同じアンダーレイの上に複数走らせられる／「A fabric is simply an overlay network.」RFC 6241: Network Configuration Protocol (NETCONF) — 「mechanisms to install, manipulate, and delete the configuration of network devices」RFC 8040: RESTCONF Protocol — 「an HTTP-based protocol that provides a programmatic interface for accessing data defined in YANG, using the datastore concepts defined in the Network Configuration Protocol (NETCONF)」Cisco: Catalyst Center — 「Manage your entire network—campus and branch, wired and wireless, IT and OT—from a single console.」CCNA 200-301 v1.1 出題範囲 — 6.2「Compare traditional networks with controller-based networking」／6.3「Describe controller-based, software defined architecture (overlay, underlay, and fabric)」／6.3.a「Separation of control plane and data plane」／6.3.b「Northbound and Southbound APIs」","line":200,"sources":["src_1","src_2","src_3","src_4","src_5","src_6"],"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_1f7c1f","type":"heading","depth":2,"markdown":"## 関連","text":"関連","line":208,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}},{"id":"blk_672c56","type":"list","markdown":"- [ネットワーク\\_INDEX](/notes/nw-basics-index) — 連載の目次\n\n- 連載の入口: [ネットワーク\\_00\\_3層で言葉を置く](/notes/nw-basics-00-three-layers)（`/notes/nw-basics-00-three-layers`）\n\n- 前の記事（図 20）: [ネットワーク\\_20\\_IPv6](/notes/nw-basics-20-ipv6)（`/notes/nw-basics-20-ipv6`）\n\n- 次の記事（図 22）: [ネットワーク\\_22\\_ファイアウォール](/notes/nw-basics-22-firewall)（`/notes/nw-basics-22-firewall`）\n\n- 土台になる記事（図 5）: [ネットワーク\\_05\\_行きと帰り](/notes/nw-basics-05-static-route)（`/notes/nw-basics-05-static-route`）\n\n- 各機器が自分で計算する段: [ネットワーク\\_13\\_OSPF](/notes/nw-basics-13-ospf)（`/notes/nw-basics-13-ospf`）","text":"ネットワーク_INDEX — 連載の目次連載の入口: ネットワーク_00_3層で言葉を置く（/notes/nw-basics-00-three-layers）前の記事（図 20）: ネットワーク_20_IPv6（/notes/nw-basics-20-ipv6）次の記事（図 22）: ネットワーク_22_ファイアウォール（/notes/nw-basics-22-firewall）土台になる記事（図 5）: ネットワーク_05_行きと帰り（/notes/nw-basics-05-static-route）各機器が自分で計算する段: ネットワーク_13_OSPF（/notes/nw-basics-13-ospf）","line":210,"lineage":[],"authoredBy":{"kind":"human","id":"owner","label":"ぴぐお"}}],"sources":[{"id":"src_1","url":"https://www.cisco.com/c/en/us/solutions/software-defined-networking/overview.html","title":"Cisco: Software-Defined Networking (SDN) overview","accessed":"2026-09-14","kind":"secondary"},{"id":"src_2","url":"https://www.cisco.com/c/en/us/td/docs/solutions/CVD/Campus/cisco-sda-design-guide.html","title":"Cisco: SD-Access Solution Design Guide","accessed":"2026-09-14","kind":"secondary"},{"id":"src_3","url":"https://www.rfc-editor.org/rfc/rfc6241.txt","title":"RFC 6241: Network Configuration Protocol (NETCONF)","accessed":"2026-09-14","kind":"secondary"},{"id":"src_4","url":"https://www.rfc-editor.org/rfc/rfc8040.txt","title":"RFC 8040: RESTCONF Protocol","accessed":"2026-09-14","kind":"secondary"},{"id":"src_5","url":"https://www.cisco.com/site/us/en/products/networking/catalyst-center/index.html","title":"Cisco: Catalyst Center","accessed":"2026-09-14","kind":"secondary"},{"id":"src_6","url":"https://learningcontent.cisco.com/documents/marketing/exam-topics/200-301-CCNA-v1.1.pdf","title":"CCNA 200-301 v1.1 出題範囲","accessed":"2026-09-14","kind":"secondary"}],"errata":[]}