こんにちは!ネットワークやガジェットの裏側を覗くのが大好きなライターの皆さん、日々のインフラ構築やアプリ開発、お疲れ様です!
私たちが普段何気なくスマホで動画を見たり、オンラインゲームで熱くなったりするとき、空中を駆け巡る電波は、地上の基地局を通って「コアネットワーク」という巨大な心臓部へと吸い込まれていきます。特に最新の5G(第5世代移動通信システム)の世界では、この心臓部がこれまでの4G時代からガラリと変わり、まるで洗練されたクラウドシステムのようになりました。
今回は、その5Gコアネットワーク(5GC)のなかでも、「加入者データ」の管理を一手に引き受ける裏の立役者、UDM(Unified Data Management)とUDR(Unified Data Repository)にスポットを当ててみたいと思います。
「UDM? UDR? なんか名前が似ていて難しそう……」と思ったそこのあなた!大丈夫です。一歩ずつ、私たちの身近な仕組みに例えて優しく紐解いていきましょう!
—
5Gの頭脳:加入者データ管理はどう変わったのか?
これまでの4G(EPC)の時代にも、加入者のプロフィールや契約情報を管理する「HSS(Home Subscriber Server)」というデータベースがありました。ただ、このHSS、何でもかんでも一つの箱に詰め込んでいたため、通信が混雑したときや新しいサービスを追加したいときに、どうしても動きが重くなりがちだったんです。
そこで5Gでは、クラウドネイティブな思想を取り入れ、機能をきれいに「役割分担」させました。それが今回主役となるUDMとUDRのコンビです。
身近な例えでイメージしてみよう:郵便局と住民票の保管庫
この2つの関係を、私たちの身近な「郵便局と役所の窓口」に例えてみましょう。
- UDR(Unified Data Repository):巨大な「住民票の保管庫(データベース)」です。名前、住所、契約プラン、暗証番号のヒントなど、すべての加入者データがここにきれいにファイリングされています。ただし、UDR自身は頭を使って手続きをすることはできません。ただひたすらデータを安全に保管し、出し入れするスペシャリストです。
- UDM(Unified Data Management):優秀な「郵便局の窓口スタッフ(処理ロジック)」です。「この人は本当にうちの住民(加入者)かな?」「暗証番号は合っているかな?」といった複雑な認証の計算や、アクセス権限のチェックを行います。データが必要になると、自分で保管庫を開けに行くのではなく、UDRに「ちょっとこの人のデータ貸して!」とお願いして、受け取ったデータをもとに手続きを進めます。
このように、「データを保管する場所(UDR)」と「データを料理して認証する頭脳(UDM)」を完全に切り離したのが、5Gコアネットワークの大きな特徴なんです。
—
UDMとUDRの連携プレイを覗いてみる
スマホの電源をパッと入れたとき、ネットワークの内部では、UDMとUDRの間で次のような華麗なパス回しが行われています。
1. スマホからのアプローチ
「おーい、電波さん!僕はこの通信会社の契約者だよ!」とスマホが基地局経由で挨拶(登録リクエスト)をしてきます。
2. UDMの認証処理
挨拶を受け取ったAMF(アクセスおよびモビリティ管理機能:ネットワークの総合窓口)から、「このスマホを通していいか確認して!」とUDMに依頼が飛んできます。
3. UDRからのデータ取得
UDMは、「どれどれ、契約内容を確認するね」と言って、UDRへデータの問い合わせ(APIリクエスト)を投げます。UDRは安全な保管庫から該当する加入者プロファイルを取り出し、UDMに渡します。
4. 暗号の生成と審査
UDMは受け取った秘密の鍵データを使って認証用の一時トークンを生成し、「よし、この人は本物の加入者だ!」と判定を下します。
この一連の流れが、わずかミリ秒単位のスピードで行われているわけです。パケットが目に見えない世界で、まるで職人技のように連携している姿を想像すると、ちょっとワクワクしてきませんか?
—
実務で役立つ!APIとデータ構造のイメージ
さて、ここからは少しだけエンジニアの視点にシフトしてみましょう。実際の5Gコアネットワーク(3GPP標準)において、UDMとUDRは、HTTP/2ベースのRESTful API(Sbiインターフェース)を使って会話をしています。
「データベースやAPIと言われても、具体的にどんなデータをやり取りしているの?」という疑問に答えるために、UDRが保持し、UDMが参照する加入者データのイメージを、JSON形式の設定サンプルで覗いてみましょう。
加入者プロファイルデータ構造のサンプル(JSON)
実務のインフラ構築やシミュレータ(Open5GSなど)の設定でも、このようなデータ構造がベースになっています。
{
"supi": "imsi-999700000000001",
"profileAndSubscriptions": {
"accessAndMobilitySubscriptionData": {
"servingPlmnId": "99970",
"subscribedUeAmbr": {
"uplink": "1 Gbps",
"downlink": "2 Gbps"
}
},
"smfSelectionSubscriptionData": {
"subscribedSnssais": [
{
"sst": 1,
"sd": "A1B2C3"
}
]
}
},
"authenticationData": {
"authenticationMethod": "5G_AKA",
"encryptedPermanentKey": "8baf473f... (暗号化された秘密鍵)",
"sequenceNumber": "000000000020"
}
}
設定・パラメータのポイント
supi(Subscriber Permanent Identifier): 4G時代のIMSIに代わる、5Gにおける加入者のユニークな永続IDです。accessAndMobilitySubscriptionData: ユーザーがネットワーク上でどれくらいの通信速度(AMBR)まで使えるかといった、モビリティに関する契約情報です。authenticationData: UDMが認証資格情報(暗号キーなど)を生成するために必要な、UDRの奥深くにしまわれている機密データです。
こうしたデータがKubernetes上のコンテナとして動くUDRに格納され、UDMからのAPIリクエストに応じて秒速で呼び出されています。
—
まとめ:これからのネットワークを支える分業の美学
今回は、5GコアネットワークにおけるUDMとUDRのデータ保持構造について、郵便局と住民票の保管庫という例えを交えながら解説しました。
- UDRは加入者データを安全に一元管理する「保管庫」。
- UDMはそのデータを使って認証や権限検証を行う「プロフェッショナルな頭脳」。
この「データの分離と集中」があるおかげで、5Gは膨大なIoTデバイスの接続や、超高速・低遅延な通信をスマートかつ安定して支えることができるのです。
次にスマホのアンテナピクトが「5G」に切り替わったとき、その裏側でUDMとUDRがどんなパス回しをしているのか、ぜひ今回の話を思い出してみてくださいね。
それでは、また次回のネットワーク探訪でお会いしましょう!
コメント