N21 — SMSF ⇔ UDM(SMS加入データ / SMSF登録)¶
学習目標¶
このページを読み終えると、次のことができるようになります。
- N21が SBI(Service Based Interface) であり、実体がUDMの提供するサービス Nudm(TS 29.503) のSMS関連部であることを説明できる。
- SMSFが SMS加入データ(SMSの利用可否・SMS管理データ) をUDMから取得する流れを説明できる。
- SMSFが自身を サービングSMSF としてUDMに 登録 し、これが下りSMSルーティングの土台になることを説明できる。
- N20(AMF⇔SMSF)と対でSMS over NASを支える関係を説明できる。
- 4G(EPC)の S6a/S6c(HSS ⇔ SMS関連系) との対応関係を説明できる。
前提知識¶
先に以下を理解しておくとスムーズです。
- SBA / SBI と HTTP/2・TLS の位置づけ → Protocol辞典
- N21の両端のNF → SMSF / UDM
- SMS over NAS・SMSF連携の使われ方 → N20
- Interfaceと参照点の考え方 → Interface辞典
Why — なぜ必要なのか¶
5GでSMS(ショートメッセージ)を届けるには、SMSF が「このUEはそもそもSMSを使えるのか」「どんなSMS管理データ(設定)が紐づくのか」を知る必要があります。しかしこの情報はSMSF自身が持っているわけではなく、加入者データの元締めである UDM が保持しています。
そこで、SMSFがUDMに「このUEのSMS加入情報をください」と問い合わせる道が要ります。これがN21です。さらにSMSFは、下りSMS(ネットワーク→UE)が届いたときに「どのSMSFがこのUEを担当しているか」をネットワークが知っている必要があるため、自身をサービングSMSFとしてUDMに登録します。N21が無ければ、SMSFはSMS利用可否を確認できず、UDMも下りSMSをどのSMSFへ渡せばよいか判断できません。
例え話: N21は、郵便局(SMSF)が役所(UDM)に確認・届け出をする窓口です。郵便局は役所で「この人は郵便を受け取れる住民か(SMS加入)」を確認し、あわせて「この人の担当郵便局は当局です(SMSF登録)」と届け出ます。以後、役所は届いた郵便(下りSMS)を、届け出のあった郵便局へ回せるようになります。
Overview — 概要¶
N21は SMSF ⇔ UDM を結ぶ参照点です。N21はSBI(Service Based Interface) であり、SBIとはNF同士が Web API(HTTP) でサービスを呼び合う仕組みで、共通の転送として HTTP/2 + JSON(RESTful)over TLS を用います。
N21の実体は、UDMが提供するサービス Nudm(TS 29.503) のうちのSMS関連部です。具体的には、SMSFが SDM(Subscriber Data Management) でSMS加入データ(SMSの利用可否・SMS管理データ)を取得し、UECM(UE Context Management) で自身をサービングSMSFとしてUDMに登録します。
参照点N21とサービスNudmは同じものの2つの見方
3GPPのアーキテクチャ図では 参照点として N21(SMSF⇔UDM) が示されますが、SBA(サービス化)ではこれが実体として UDMのサービス Nudm として実装されます。つまり「N21」と「Nudm(のSMS関連部)」は、同じSMSF⇔UDM間の連携を、参照点の視点/サービスの視点で見たものです。どちらも指しているものは同一で、呼び方(視点)が違うだけ、と捉えてください。
N8/N10/N13/N21は全てNudm(TS 29.503)だがオペレーションが異なる
UDMは多数のNFに対して同じ Nudm(TS 29.503) を提供しますが、利用するオペレーションが参照点ごとに異なります。取り違えに注意してください。
- N8(AMF⇔UDM): UECM/SDM(アクセス&モビリティ加入データ、AMF登録)
- N10(SMF⇔UDM): SDM(セッション管理[SM]加入データ)
- N13(AUSF⇔UDM): UEAuthentication(認証情報取得)
- N21(SMSF⇔UDM): SDM(SMS加入データ)/ UECM(SMSF登録)
「同じNudmだから同じ」ではなく、どのオペレーションを、何のために使うかで区別してください。
Basic Concept — 初心者向け説明¶
N21を、郵便局(SMSF)と役所(UDM)のやり取りに例えます。
あなたのスマホがSMSを使えるようにするには、SMS担当の SMSF が動きます。SMSFは「この人はSMSを使える契約か? どんなSMS設定があるか?」を自分では持っていないので、加入者名簿を握る UDM に問い合わせます(SMS加入データの取得=SDM)。UDMは名簿を照らし合わせて「SMS利用可・こういう管理データ付き」と返します。
さらにSMSFは「このUEの担当は自分です」とUDMに届け出ます(SMSF登録=UECM)。こうしておくと、後からネットワーク側からそのUEへSMSが届いたとき、UDMは「担当SMSFはここ」と分かり、正しいSMSFへSMSを回せます(下りSMSルーティングの土台)。
このUDMへの問い合わせ・届け出は、専用の電話回線(N2やN4のような専用プロトコル)ではなく、社内Webシステム(HTTP)でリクエストを投げて回答をもらうイメージです。これが SBI(Service Based Interface)=NF同士がWeb API(HTTP/2)で会話する仕組みです。要求も応答も、人間に読みやすい JSON という書式でやり取りされます。
Protocol / Transport¶
| 項目 | 内容 |
|---|---|
| Protocol | HTTP/2 + JSON(RESTful)— SBI(Service Based Interface)の共通スタック |
| サービス | Nudm(UDMが提供)— TS 29.503(SMS関連部: SDM / UECM) |
| SBI framework | TS 29.500 / TS 29.501 系(SBIの共通規約・OpenAPI定義) |
| 下位Transport | TCP、TLS で保護(機密性・完全性・認証)— TS 33.501 |
| ポート | SBIの待受ポートは実装依存(NRF登録のエンドポイントで解決)。特定番号は断定しない |
| 特徴 | 専用L4プロトコルではなくWeb技術ベース。HTTPメソッド(GET/PUT/POST/DELETE)+リソースURIで操作。RESTful |
専用L4ではなくWeb技術ベース
N2は NGAP over SCTP:38412、N4は PFCP over UDP という専用の下位プロトコルを持ちますが、N21にはそれらは一切当てはまりません。N21はSBIなので、他のSBI(N8/N10/N11/N20 等)と同じく HTTP/2 over TLS を共通の土台として使います。したがってN21の解析にSCTP固有のフィルタやポート番号を流用してはいけません。
Architecture¶
N21がSMSFとUDMを結び、SMSFがN20でAMFと連携し、UDMがUDR(N35)に加入データを格納する文脈を示します。
flowchart LR
AMF["AMF"]
SMSF["SMSF"]
UDM["UDM (加入データ)"]
UDR[("UDR (N35)")]
AMF -. "N20 (Namf / Nsmsf)" .- SMSF
SMSF == "N21 (Nudm: SDM / UECM)" ==> UDM
UDM -. "格納" .- UDR
classDef ctrl fill:#efe,stroke:#3a3,stroke-width:2px;
class SMSF,UDM ctrl;
図の読み方: 太い線(==>)のN21がSMSF⇔UDMの連携(SBI/HTTP2)で、SMSFはここでUDMから SMS加入データを取得(SDM) し、自身をサービングSMSFとして登録(UECM) します。左のN20(点線)はAMF⇔SMSFの連携で、SMS over NASの上り/下りを運ぶ経路です。UDMが保持する加入データの実体は UDR(N35) に格納されます。N21は「SMSの前提を整える確認・登録」、N20は「実際のSMSの受け渡し」という役割分担に注目してください。
利用Procedure¶
N21は、SMSFがSMSサービスを有効化する(UEのSMS利用を立ち上げる)際に使われます。
- SMS加入データの取得(SDM Get / Subscribe): SMSFがUDMへ、対象UEの SMS加入データ(SMS利用可否・SMS管理データ) を照会する。以後の変更通知を受けるためにSubscribeする場合もある。
- SMSF登録(UECM Registration): SMSFが自身を サービングSMSF としてUDMに登録する。これによりUDMは「このUEのSMSはどのSMSFが扱っているか」を把握し、下りSMSを当該SMSFへ誘導できるようになる。
この結果、UDMは下りSMSのルーティングやSMS加入確認が可能になり、N20(AMF⇔SMSF)と対でSMS over NASを支えます。
各オペレーションの正確なメッセージシーケンス・条件・IE、およびSMS登録手順の詳細は3GPP仕様(TS 23.502 のSMS登録手順、章番号は要確認)に従います。手順の細部は要確認とします。
主なMessage¶
N21はSBIなので、メッセージはHTTPメソッド + リソース操作の形を取ります(NGAPのようなprocedureCodeではなくRESTful操作)。代表的なサービスオペレーションは次のとおりです。
| サービスオペレーション | HTTP操作(概念例) | 用途 |
|---|---|---|
| Nudm_SDM_Get | GET(リソース取得) | SMS加入データ(SMS利用可否・SMS管理データ)の取得 |
| Nudm_SDM_Subscribe | POST(購読リソース生成) | SMS加入データ変更通知の購読 |
| Nudm_UECM_Registration | PUT(登録リソース生成/更新) | 自身をサービングSMSFとしてUDMに登録 |
HTTP操作の対応は概念整理です: 上表の「HTTP操作」は理解のための対応づけであり、各オペレーションの正確なメソッド・リソースURI・呼び出し方向はTS 29.503のOpenAPI定義に従います。厳密なメソッド割り当ては要確認とします。各メッセージの詳細は Message辞典 を参照してください。
Packet Analysis (Wireshark)¶
N21はSBIなので、キャプチャ上は HTTP/2 として観測されます(NGAP/SCTPのようなL4専用プロトコルは現れません)。
| 目的 | Display Filter |
|---|---|
| HTTP/2メッセージを抽出 | http2 |
| ヘッダのパスで絞る(概念) | http2.headers.path(:path に nudm-sdm / nudm-uecm を含む) |
| JSONボディを見る | json(復号後) |
Decodeの見どころ:
- N21は TLSで暗号化されます。中身(HTTP/2ヘッダやJSONボディ)を見るには復号鍵(TLSセッションキー等)が必要です。鍵が無ければ
tlsの暗号化ペイロードとしてしか見えません。 - 復号できれば、HTTP/2の ヘッダ(
:method= GET/PUT等、:pathに.../nudm-sdm/...や.../nudm-uecm/...を含むリソースパス)でオペレーションを識別できます(正確なパスは要確認)。 - ボディは JSON(SMS加入データ、SMSF登録情報等)で、人間に読みやすい構造で入っています。
- N2のNGAP(バイナリ、SCTP上)と違い、N21はWeb的(HTTP/JSON)である点が観察の要です。SCTP固有のフィルタ(
sctp.port等)は使いません。
EPCとの比較¶
- 4Gでは: SMS加入情報や在圏情報(どのノードがUEを担当しているか)の管理は HSS(Home Subscriber Server) が担い、周辺ノードとは S6a(MME⇔HSS)や S6c(HSS⇔SMS関連系)といった Diameter/MAP ベースのインターフェースで連携していました。
- 5Gでは: HSSのSMS加入・登録機能を UDM が引き継ぎ、SMSF連携が N21(Nudm) に SBI化されました。Diameter/MAPから HTTP/2 + JSON(SBI) へ置き換わっています(TS 29.503)。
| 4G (EPC) | 5G (5GC) |
|---|---|
| S6c / S6a(HSS ⇔ SMS関連系) | N21(SMSF ⇔ UDM) |
| Diameter / MAP(専用L4上) | SBI: HTTP/2 + JSON over TLS |
| —(Diameter/MAPの各仕様) | TS 29.503(Nudm) |
| HSS(SMS加入・在圏管理を内蔵) | UDM(SMS加入データ提供・SMSF登録受付) |
4GのHSSが担っていたSMS加入管理・サービングノード登録の機能は、5Gでは UDM + N21 に対応します(4Gインターフェースとの厳密な対応は要確認)。5Gでの主な変化は、Diameter/MAPベースの専用IFから SBI(HTTP/2+JSON)化された点です。
3GPP Specification¶
- 3GPP TS 29.503 — Nudm サービス(SMS関連部: SDM[SMS加入データ取得]・UECM[SMSF登録], N21)。個別章番号は要確認
- 3GPP TS 29.500 / TS 29.501 — SBI framework(技術規約 / 設計原則・OpenAPI)。個別章番号は要確認
- 3GPP TS 23.501 §6.2.13 — SMSFの定義 / §6.2.7 — UDMの定義
- 3GPP TS 23.502 — SMS登録手順(SMSF登録・SMS加入データ取得のフロー)。個別章番号は要確認
- 3GPP TS 33.501 — SBIのセキュリティ(TLS等)。個別章番号は要確認
注記(要確認): N21の実体が Nudm(TS 29.503)のSMS関連部であること、SBI共通framework が TS 29.500/29.501 系であることは、3GPPアーキテクチャの一般的整理です。各サービスオペレーションの正確なメソッド・リソースURI・procedureの細目章番号は Release により差異があるため個別には要確認とします。N8/N10/N13も同じNudm(TS 29.503)ですが、利用オペレーションが異なる点に注意してください。
Summary¶
- N21は SMSF ⇔ UDM を結ぶ参照点で、SBI(Service Based Interface)(HTTP/2 + JSON over TLS)である。
- SMSFはN21で、UDMから SMS加入データ(SMS利用可否・SMS管理データ) を取得(SDM)し、自身を サービングSMSFとして登録(UECM)する。
- 実体はUDMのサービス Nudm(TS 29.503) のSMS関連部。SMSF登録により、UDMは下りSMSを正しいSMSFへ誘導でき、下りSMSルーティングの土台となる。
- N20(AMF⇔SMSF)と対で SMS over NAS を支える(N21=SMSの前提整備、N20=SMSの受け渡し)。
- 4Gの S6a/S6c(HSS⇔SMS関連系, Diameter/MAP) に相当し、5Gでは SBI化(TS 29.503)された(対応は要確認)。
Next Step¶
- SMSF — N21の一方の端。SMS over NASを担うNF
- UDM — N21の相手側。SMS加入データを提供しSMSF登録を受け付けるNF
- N20 — AMF⇔SMSF。N21と対でSMS over NASを支える
- N8 — 同じNudmだがUECM/SDM(アクセス&モビリティ)で用途が異なる例
- Interface辞典 — 参照点の確認