Interface / Protocol 総論¶
学習目標¶
この章を読み終えると、次のことができるようになります。
- 参照点(Reference Point) とは何か、なぜ「点対点の接続」として定義されるかを説明できる
- SBI(Service-Based Interface) とは何か、なぜ「共通APIの公開」として設計されるかを説明できる
- 参照点とSBIの 関係と違い を、例え話で説明できる
- 5GCの主要プロトコル(NAS / NGAP / PFCP / GTP-U / HTTP/2 / SCTP)が どの参照点で動くか を地図として描ける
- 制御プレーン(C-Plane) と ユーザプレーン(U-Plane) のプロトコルの違いを説明できる
前提知識¶
- 5GC概要とSBA — SBA(Service-Based Architecture)とSBIの概念的な初出。ここでは前提とします
- Network Function 総論 — AMF/SMF/UPF等のNFが「何をする箱か」
このページは、NF側(箱)ではなく 箱と箱をつなぐ線(インターフェース)とその上を流れるプロトコル の側から5GCを俯瞰します。
この章で学べること¶
- Why — なぜ参照点とSBIという2つの考え方を区別するのか
- Basic Concept — 参照点=専用窓口、SBI=共通APIを公開しあうWebサービス という例え
- 参照点とは / SBIとは / 両者の違い — 概念の整理
- 主要プロトコル地図 — どの参照点で何のプロトコルが動くか
- C-Plane と U-Plane のプロトコル差 — 制御信号とユーザデータで使う技術が違う理由
- EPCとの比較 — 点対点IF(S1/S5等)からSBI化への流れ
この総論の立ち位置(重複回避)
全参照点・全プロトコルの精密な一覧は Interface辞典 と Protocol辞典 に委ねます。個別IFの詳細は個別ページ(N2 等)へ。このページは 「地図と考え方」 に徹し、代表例を数個だけ示してリンクします。
Why — なぜ参照点とSBIを区別するのか¶
5GCは、多数の NF(Network Function) が協調して動くシステムです。NF同士をつなぐには「どことどこが、何を、どう話すか」を決めなければなりません。3GPPは、この「つなぎ方」を大きく2つの流儀で規定しています。
- 参照点(Reference Point) — 「A と B の2者間」を名前で固定し、その区間で使うプロトコルを決める、点対点 の考え方
- SBI(Service-Based Interface) — 各NFが自分のサービスを 共通API として公開し、必要な相手が呼び出す、サービス指向 の考え方
制御プレーンのNF間(例: AMF ⇔ SMF)は主にSBIで、無線・ユーザプレーン区間(例: (R)AN ⇔ AMF、gNB ⇔ UPF)は主に参照点+専用プロトコルで設計されています。同じ「インターフェース」でも設計思想が違う ため、この2つを区別できることが5GC理解の土台になります。
Overview — 概要¶
5GCのインターフェースは、次のように整理できます。
- 参照点 は「N番号(N1, N2, N3, N4, N6 …)」で呼ばれ、接続する2点とプロトコルが辞典で定義される(Interface辞典)
- そのうち 制御プレーンのNF間 の多くは、実体として SBI(HTTP/2 over TLS) で実現される。SBIは「Namf」「Nsmf」のように N + NF名 のサービス名で呼ばれる
- 無線・ユーザプレーン区間 は、SBIではなく専用プロトコル(NAS / NGAP / GTP-U / PFCP 等)を使う
- プロトコルは大きく C-Plane(制御信号)用 と U-Plane(ユーザデータ)用 に分かれ、要求される性質(信頼性か低遅延・高スループットか)が異なる
つまり「N番号=参照点(区間の名前)」と「SBIサービス名=公開API(Namf等)」は 見る角度が違う だけで、多くのC-Plane参照点は中身がSBIです。
Basic Concept — 初心者向け説明¶
専用窓口(参照点) vs 共通API(SBI)¶
会社の部署間のやり取りにたとえます。
- 参照点 は「経理部と総務部の間の 専用連絡窓口」のイメージです。誰と誰が、どの書式でやり取りするかが最初から決まっています。相手が固定なので手続きは明快ですが、新しい相手が増えるたびに窓口を作り直す必要があります。
- SBI は「各部署が 社内共通の申請システム(API) を公開し、必要な部署がその画面から申請する」イメージです。経理は「経費精算サービス(Namf に相当)」を公開し、誰でも同じ作法で呼べます。相手が増えても、公開済みのサービスを呼ぶだけで済みます。
| 観点 | 参照点(Reference Point) | SBI(Service-Based Interface) |
|---|---|---|
| たとえ | 2者間の専用窓口 | 共通APIを公開しあうWebサービス |
| 呼び方 | N番号(N2, N3, N4 …) | サービス名(Namf, Nsmf, Nudm …) |
| 接続の形 | 点対点(相手が固定) | 多対多(公開したAPIを誰でも呼べる) |
| 主な区間 | 無線・ユーザプレーン、UE-コア間 | 制御プレーンのNF間 |
| 主な転送 | NGAP/SCTP、GTP-U/UDP、PFCP/UDP 等 | HTTP/2 over TLS |
「N番号」と「Nサービス名」は別物
参照点の N2 / N3 / N4 は「区間の名前」です。一方、SBIの Namf / Nsmf / Nudm は「NFが公開するサービスの名前」で、先頭のNは "Network function service" 由来です。同じ "N" でも意味が違うので混同しないでください。
参照点とは¶
参照点(Reference Point) は、3GPPが「どのNF/ノードと、どのNF/ノードの間か」を 2点で固定して名付けた接続点 です。5GCでは主に N1, N2, N3, N4, N6 … のように「N+番号」で表されます。各参照点には、使用するプロトコルとトランスポートが辞典で定義されます。
代表例を数個だけ挙げます(全一覧は Interface辞典)。
- N1: UE ⇔ AMF。NAS(5GMM/5GSM)シグナリング。N2上をリレーして運ばれる
- N2: (R)AN ⇔ AMF。NGAP による RANとコアの制御
- N3: gNB ⇔ UPF。GTP-U によるユーザプレーン転送
- N4: SMF ⇔ UPF。PFCP によるセッション制御
- N6: UPF ⇔ DN(データネットワーク)。外部ネットワーク接続
参照点は「相手が最初から決まっている」ため、無線区間やユーザプレーンのように 性能・信頼性を作り込みたい区間 に向いています。
SBIとは¶
SBI(Service-Based Interface) は、各NFが自分の機能を サービス(API) として公開し、他のNFがそれを呼び出す仕組みです。SBA(Service-Based Architecture)の中核で、概念的な導入は 5GC概要とSBA で扱いました。ここではIF/プロトコルの側から見ます。
- サービスは Namf(AMF), Nsmf(SMF), Nudm(UDM) のように「N+NF名」で命名される
- 共通の転送として HTTP/2 over TLS(下位はTCP) を用いる(Protocol辞典)
- ペイロードは主に JSON で、Web APIと同じ作法(REST風)で呼び出される
Interface辞典で N7/N8/N10/N11/N12/N13/N5/N15/N22/N33/N14/N20/N21/N35/N36/N37/N40 に「SBI(HTTP/2 / TLS)」と記されているのは、これらの参照点が 実体としてSBIで実現される制御プレーンのNF間 だからです。たとえば N11(AMF ⇔ SMF) は、AMFがSMFの公開サービス(Nsmf)を呼び出す形で実現されます。
参照点とSBIの違い¶
両者は排他ではなく、多くのC-Plane参照点は「N番号という区間名」を持ちつつ、中身がSBI です。違いを整理します。
| 項目 | 参照点(点対点型) | SBI(サービス型) |
|---|---|---|
| 定義の単位 | 2つのノード/NFの区間 | NFが公開する1つのサービス |
| 追加のしやすさ | 相手ごとに区間を定義 | 公開済みAPIを呼ぶだけ |
| 代表区間 | N1/N2/N3/N4/N6 | N7/N8/N11/N12 …(Namf/Nsmf/Nudm 等) |
| 転送 | NGAP/SCTP・GTP-U/UDP・PFCP/UDP・NAS | HTTP/2 over TLS |
SBIではない参照点に注意(辞典どおり)
N番号だからといって全てがSBIではありません。次は位置づけが異なります(Interface辞典)。
- N9(UPF ⇔ UPF): GTP-U によるUPF間ユーザプレーン転送。SBIではなくU-Plane
- N32(SEPP ⇔ SEPP, PLMN間): N32-c / N32-f(PRINS)によるPLMN間SBIの保護中継・トポロジ隠蔽。NF間サービス呼び出しそのものとは位置づけが異なる
- N1/N2/N3/N4/N6 も上表のとおりSBIではない
主要プロトコル地図¶
「どの参照点で、何のプロトコルが動くか」の地図です。値は Interface辞典・Protocol辞典 と整合しています。
| プロトコル | 主な参照点 | Transport | 用途(1行) | 詳細 |
|---|---|---|---|---|
| NAS | N1 | N2上をリレー(over NGAP) | UE-コア間の登録・認証・セッション要求(5GMM/5GSM) | Protocol辞典 |
| NGAP | N2 | SCTP(port 38412) | RANとコアの制御(NG Setup, UE-associated signalling) | N2 |
| SCTP | N2の下位 | IP | NGAPシグナリングの信頼性転送 | Protocol辞典 |
| GTP-U | N3 / N9 | UDP(port 2152) | ユーザプレーンのパケット転送(カプセル化) | N3 |
| PFCP | N4 | UDP(port 8805) | UPFの転送規則(PDR/FAR等)の設定・制御 | N4 |
| HTTP/2 | SBI全般 | TCP(TLS保護) | NF間のサービスベース通信(Namf/Nsmf等) | Protocol辞典 |
ポート番号・Spec番号の出典
NGAP/SCTPのポート 38412 は TS 38.412、GTP-Uの 2152 は TS 29.281、PFCPの 8805 は TS 29.244 に基づく登録値です(辞典で裏取り済み)。SBI各APIのSpec章番号はReleaseにより差異があるため、断定せず Interface辞典(各行「要確認」付記)を参照してください。
プロトコルスタックの対応(C-Plane と U-Plane)¶
graph TD
subgraph CP["制御プレーン(例: N1/N2)"]
NAS["NAS(UE⇔AMF)"] --> NGAP["NGAP(N2)"]
NGAP --> SCTP["SCTP"]
SCTP --> IPCP["IP"]
end
subgraph UP["ユーザプレーン(例: N3/N9)"]
USER["ユーザIPパケット"] --> GTPU["GTP-U"]
GTPU --> UDP["UDP"]
UDP --> IPUP["IP"]
end
図の読み方: 左は制御信号のスタックで、NASがNGAPに運ばれ、下位はSCTP/IP。右はユーザデータのスタックで、ユーザのIPパケットがGTP-Uでカプセル化され、下位はUDP/IPです。上位が「何を伝えるか」、下位が「どう運ぶか」 という層構造になっています。
参照点接続とSBIバスの対比¶
graph LR
subgraph P2P["点対点の参照点(U-Plane/無線系)"]
RAN["(R)AN"] -- "N2: NGAP/SCTP" --> AMF1["AMF"]
gNB["gNB"] -- "N3: GTP-U/UDP" --> UPF1["UPF"]
SMF1["SMF"] -- "N4: PFCP/UDP" --> UPF1
end
subgraph SBA["SBI(制御プレーンNF間: HTTP/2 over TLS)"]
AMF2["AMF"] --- BUS(("SBIバス"))
SMF2["SMF"] --- BUS
UDM["UDM"] --- BUS
AUSF["AUSF"] --- BUS
PCF["PCF"] --- BUS
end
図の読み方: 上は「相手が固定された点対点の参照点」、下は「各NFが共通バス(HTTP/2)上でサービスを公開しあうSBI」です。同じ5GCの中で、区間の性質に応じて2つの流儀を使い分けている ことが見て取れます。
EPCとの比較 — 点対点IFからSBI化へ¶
4G(EPC)は、NF(正確にはノード)間を 点対点のインターフェース で結ぶ設計でした。5GCは、制御プレーンをSBI化した点が最大の違いです。
| 観点 | EPC(4G) | 5GC(5G) |
|---|---|---|
| 制御プレーンの接続 | 点対点IF(S1-MME, S6a, S11 等) | SBI(Namf/Nsmf/Nudm 等, HTTP/2 over TLS) |
| ユーザプレーン | GTP-U(S1-U, S5/S8-U) | GTP-U(N3, N9) |
| 無線-コア制御 | S1-AP over SCTP(S1-MME) | NGAP over SCTP(N2) |
| セッション制御 | GTP-C(S11 等) | PFCP(N4, CUPS由来) |
ポイントは2つです。(1) 制御プレーンのIFがSBI化 され、NF追加や機能拡張が容易になりました。(2) ユーザプレーンは引き続きGTP-U で、無線-コア制御もSCTP上のアプリ層プロトコル(S1-AP → NGAP)という構図は維持されています。つまり U-Planeと無線系は連続性を保ちつつ、C-Planeをサービス化した のが5GCです。EPCとの詳細な対応は Level 1 の関連章に譲ります。
3GPP Specification¶
- アーキテクチャ全体(参照点の定義・SBAの原則): TS 23.501
- NAS: TS 24.501
- NGAP: TS 38.413(SCTPポートは TS 38.412)
- GTP-U: TS 29.281
- PFCP: TS 29.244
- SBIの一般原則(HTTP/2 の利用等): TS 29.500、SBI保護(TLS): TS 33.501
断定はTS+章番号、曖昧なら辞典参照
SBI各APIのSpec章番号はRelease差があり、辞典でも「要確認」付きです。章番号まで断定せず、Interface辞典・Protocol辞典 を一次参照としてください。本ページで章番号を断定していないのはこのためです(推測での穴埋めは行いません)。
FAQ¶
Q. 「N2」と「Namf」は同じものですか? A. 違います。N2は参照点((R)AN ⇔ AMF の区間の名前) で、NGAP/SCTPを使います。Namfは AMF が公開するSBIサービスの名前 で、HTTP/2 over TLS で呼ばれます。N2はSBIではありません。
Q. N番号が付いていれば全部SBIですか? A. いいえ。制御プレーンのNF間(N7/N8/N11/N12 等)はSBIですが、N1/N2/N3/N4/N6 はSBIではなく専用プロトコル、N9はGTP-U(U-Plane)、N32はSEPP間のPLMN間相互接続(N32-c/N32-f, PRINS) で位置づけが異なります(Interface辞典)。
Q. なぜユーザプレーンはSBI(HTTP/2)を使わないのですか? A. ユーザプレーンは大量のパケットを 低遅延・高スループット で転送する必要があり、軽量なカプセル化(GTP-U over UDP)が向くためです。信頼性重視の制御信号(HTTP/2 over TLS/TCP)とは要求が異なります。
Q. NASはどの参照点のプロトコルですか? A. N1(UE ⇔ AMF) のプロトコルですが、無線・N2区間を リレー して運ばれます。UEとAMFの間の論理的なやり取りがN1、その物理的な運搬経路がRRC→NGAP(N2)という関係です。
Q. このページの値はどこまで信頼できますか? A. プロトコル・ポート・Transportは Interface辞典・Protocol辞典 と整合させています。SBI各APIの章番号など「要確認」事項は断定していません。
Summary¶
- 参照点(Reference Point) は「2点を固定して名付けた点対点の接続」。N1/N2/N3/N4/N6 が代表
- SBI(Service-Based Interface) は「NFが共通API(Namf/Nsmf等)を公開しあう仕組み」。転送は HTTP/2 over TLS
- 多くの C-Plane参照点は中身がSBI。ただし N1/N2/N3/N4/N6、N9(GTP-U)、N32(SEPP間)はSBIではない
- 主要プロトコル地図: NAS(N1) / NGAP(N2,SCTP) / GTP-U(N3・N9,UDP) / PFCP(N4,UDP) / HTTP/2(SBI全般)
- C-Plane は信頼性重視、U-Plane は低遅延・高スループット重視で、使うプロトコルが異なる
- EPCの点対点IFに対し、5GCは 制御プレーンをSBI化(U-Plane/無線系は連続性を維持)
Practice — 理解度チェック・演習¶
理解度チェック¶
Q1. 「N2」と「Namf」の違いを一言で説明してください。
N2は 参照点((R)AN ⇔ AMF の区間名) でNGAP/SCTPを使います。Namfは AMFが公開するSBIサービス名 でHTTP/2 over TLSで呼ばれます。N2はSBIではありません。
Q2. 次のうちSBIではない参照点を全て挙げてください: N1, N8, N4, N11, N9
N1・N4・N9 がSBIではありません(N1=NAS、N4=PFCP、N9=GTP-U)。N8・N11はSBI(HTTP/2 over TLS)です。
Q3. N3(gNB⇔UPF)で使うプロトコルとTransport、代表ポートは?
プロトコルは GTP-U、Transportは UDP、ポートは 2152(TS 29.281)です。
Q4. なぜ制御プレーンはHTTP/2、ユーザプレーンはGTP-U/UDP、と使い分けるのですか?
制御信号は信頼性・保護(TLS)が重要でHTTP/2 over TLS/TCPが向き、ユーザデータは低遅延・高スループットが重要で軽量なGTP-U over UDPが向くためです。
演習¶
- Interface辞典 を開き、「SBIである参照点」と「SBIでない参照点」を自分で3つずつ書き出してみましょう。
- N1のNASメッセージが、UEからAMFへ届くまでに通る区間(無線→N2)を、プロトコルスタックとして図に描いてみましょう。
Next Step¶
- Interface辞典 — 全参照点の接続点・Protocol・Transport・Specを引く
- Protocol辞典 — NAS/NGAP/SCTP/HTTP2/TLS/GTP-U/PFCPの詳細
- N2 / N3 / N4 — 代表的な参照点の個別ページ
- Network Function 総論 — 線ではなく「箱(NF)」の側から5GCを見る