はじめに
本記事は、Coursera の Network Systems Foundations モジュール「Network Layer」で学んだ内容を整理する目的でまとめたものです。
ネットワーク層とは?
リンク層は同一ネットワーク内での通信を扱いますが、異なるネットワーク間を接続して通信を成立させるのがネットワーク層の役割です。
ルータを介して、異なるサブネット間でパケットを中継します。
インターネットプロトコル (IP)
サービスモデル:Best Effort 型
IP の通信は 信頼性を保証しない「Best Effort」方式です。
| 項目 | 内容 |
|---|---|
| Delivery | パケットは途中で破棄される可能性あり |
| Timing | 遅延保証なし |
| Order | パケット順序が入れ替わる可能性あり |
IP は「異なるリンク層を共通のアドレス空間で結ぶ」ことに特化し、最小限の共通機能のみを提供します。信頼性や順序保証は上位層(例: TCP)が担います。
アドレス指定と表記
-
IPv4: 32bit (例:
192.168.0.1) -
IPv6: 128bit (例:
2001:db8::ff00:42:8329) - サブネット化: アドレスを階層的に分割し、管理しやすくする仕組み
-
CIDR (Classless Inter-Domain Routing):
a.b.c.d/xの形式- 例:
2.1.1.0/24 -
xはネットワーク部のビット長(最長一致検索の単位)
- 例:
💡 2.1.0.0/24 と 2.1.1.0/24 は連結して 2.1.0.0/23 と表せる(上位の集約)。
ルータの役割と構造
ネットワーク層の中心装置である ルータ (Router) は、主に 2 つの機能プレーンを持ちます。
| プレーン | 役割 |
|---|---|
| コントロールプレーン (Routing) | 経路情報の交換と転送テーブルの生成 |
| データプレーン (Forwarding) | 実際のパケット転送を担当 |
- 経路情報は IP アドレス単体ではなく「プレフィックス(サブネット単位)」で管理します。
- 転送処理はハードウェア(ASIC)やネットワークプロセッサ上で実行されます。
転送処理の流れ
- Line Card がパケットを受信
- 転送テーブルから宛先 IP を Longest Prefix Match (LPM) で検索
(リンク層では完全一致だが、ネットワーク層ではプレフィックス最長一致) - 出力ポートを決定し、Switch Fabric を介して送信
Switch Fabric の発展
| 方式 | 概要 | 特徴・制約 | イメージ |
|---|---|---|---|
| ① メモリ方式 | CPU が「入力 → メモリ → 出力」を順番に処理 | CPU/メモリ帯域に依存、並列化困難 | 郵便局で一度倉庫に置いてから仕分け |
| ② バス方式 | 全ポートが共有バスを利用して順番に転送 | バスがボトルネック、同時転送不可 | 一本の廊下を全員で共有 |
| ③ クロスバー方式 | 入力と出力をマトリクス配線で直結 | 並列動作が可能、コスト高 | 交差点信号のように動的接続 |
| ④ 分散処理方式 | マルチコア CPU で並列転送(仮想スイッチ) | ソフトウェア柔軟性・クラウド対応 | 自動仕分け機での高速処理 |
ルーティング(経路制御)
ルーティングは 経路探索アルゴリズム により「どのルータ経由で目的地に送るか」を決定します。
リンクステート型(例: OSPF)
- 各ルータがネットワーク全体のリンク状態を共有し、Dijkstra アルゴリズムで最短経路を計算。
- 全ルータが同一のネットワークマップを持つ。
- 主に Intra(自治システム内) で利用されます。
パスベクタ型(例: BGP)
- 各 AS (Autonomous System) が経路情報を交換。
- 経路は「AS の列(AS Path)」として表現。
- 経路選択は距離だけでなく、ビジネスポリシー(提供者・顧客・ピア関係)を考慮。
- 例: Provider / Customer / Peer の関係で情報共有制限あり。
- BGP 属性(AS Path 長, Local Pref, MED 等)をもとに最適経路を選択。
- Inter(異なる自治体間) で利用される。
IP アドレスの管理と解決
| 機能 | 内容 |
|---|---|
| IANA / RIR | 世界および地域レベルで IP アドレス空間を管理 |
| ISP | 一般ユーザーに IP を割り当て |
| ARP (Address Resolution Protocol) | IP アドレス → MAC アドレス の変換 |
| DHCP (Dynamic Host Configuration Protocol) | IP アドレスを動的に割り当て、再利用性を高める |
ネットワークレイヤーのトラブルシューティングツール
| ツール | 機能 | 解説 |
|---|---|---|
| ping | ノード到達性・遅延確認 | ICMP Echo Request/Reply を利用 |
| traceroute | 経路確認 | TTL 値を 1 ずつ増やして ICMP Time Exceeded を受信 |
| iperf3 | 通信スループット計測 | TCP/UDP ベースで帯域・遅延を測定可能 |
💡 実践ポイント:
ping で疎通を確認 → traceroute で経路を特定 → iperf3 で帯域を測定、の順で問題箇所を特定できます。
参考文献
- Coursera:Network Systems Foundations