【入門編】 5G制御プレーンプロトコルNGAP(Next Generation Application Protocol)の基本構造とメッセージ種別 – 家庭用ネットワーク・IoT・モバイル通信実践ガイド

こんにちは!ネットワーク・ガジェットライターの私です。

日頃から最新のWi-Fi 7や5Gの爆速モバイル通信、そしてスマートホームの裏側を支える通信プロトコルにワクワクしている私ですが、今回は少しだけ視点を変えて、基地局とコアネットワークの裏側で繰り広げられている「超重要かつディープな世界」を覗いてみたいと思います。

テーマは、5Gの頭脳と手足を繋ぐ制御プロトコル「NGAP(Next Generation Application Protocol)」です。

「いきなりアルファベットの羅列で頭が痛くなりそう…」と思いましたよね?大丈夫です!教科書のような無機質な仕様書の解説は一旦横に置いて、私たちの身近にある「郵便配達システム」に例えながら、一歩ずつ優しく紐解いていきましょう。

—

そもそも「NGAP」ってなに?身近な例えで理解する5Gの裏側

私たちがスマホで動画を見たり、オンラインゲームをしたりするとき、空気を伝わってきた電波は、まず街中にある基地局(5Gの世界では gNB と呼びます)にキャッチされます。

しかし、基地局は単なる「中継アンテナ」に過ぎません。スマホの認証をしたり、「このユーザーにはこれだけの通信速度を許可しよう」と交通整理をしたりしているのは、ネットワークの奥深くにある頭脳、つまりコアネットワーク(その中の AMF という管理センター)です。

ここで問題が発生します。
「最前線にいる基地局(gNB)と、司令塔であるコアネットワーク(AMF)は、どうやって会話をしているのでしょうか?」

この2人の間で交わされる「業務連絡」の共通言語こそが NGAP なんです。

郵便配達システムに例えてみよう

イメージしやすいように、身近な「郵便配達」に置き換えてみましょう。

  • スマホ = 手紙を出したい差出人
  • gNB(基地局) = あなたの街の郵便局(窓口)
  • AMF(コアネットワーク) = 全国の郵便配達ルートを管理する中央本局

あなたが窓口(gNB)に手紙を持っていったとき、窓口の人は「これは速達ですね」「宛先はあっちの本局(AMF)に確認しなきゃいけないな」と判断して、専用の伝票に記入して本局へ送りますよね。

このとき、窓口と本局の間でやり取りされる「業務連絡のルールや伝票の書き方」こそが、NGAPというプロトコルそのものなのです。

—

NGAPの足元を支える縁の下の力持ち:SCTPというトランスポート層

NGAPがどんな内容を話すのかを見る前に、この会話が「どんな封筒に入れて運ばれているのか」を知っておく必要があります。

通常、私たちがWebサイトを見る時は TCP や UDP という通信のきまり(トランスポート層)を使いますが、5Gの基地局とコアネットワークの制御には、SCTP(Stream Control Transmission Protocol) という、ちょっとマニアックだけど超タフなプロトコルが使われています。

なぜ普通のTCPじゃダメなの?

Web閲覧用の TCP は一本の道(ストリーム)でデータを運びますが、もし途中で通信が詰まると、後続のデータもすべて足止めされてしまいます。これを「ヘッド・オブ・ライン・ブロッキング」と呼びます。

一方、SCTPは、1つの接続の中に複数のレーン(マルチストリーム)を作ることができます。
例えば、あるスマホの「位置情報の更新」という連絡が少し遅れても、別のスマホの「これから電話をかけます」という緊急の連絡は、別のレーンをスイスイ通り抜けることができるのです。

基地局とコアネットワークの間では、何千、何万というスマホの制御信号が同時に飛び交います。だからこそ、渋滞に強いSCTPが選ばれているんですね。

—

NGAPの主要メッセージ:現場ではどんな会話がされているの?

それでは、NGAPの具体的な中身(メッセージ)を覗いてみましょう。現場のエンジニアがログを解析するときによく目にする、代表的なやり取りをいくつかピックアップしてご紹介します。

1. パスワード確認と初期設定:Initial UE Message

スマホの電源を入れたとき、あるいは新しく電波を掴んだとき、基地局(gNB)はAMF(コアネットワーク)に対してこう言います。

> 「ねえAMFさん、新しいお客さん(スマホ)がウチの窓口に来ましたよ!身分証明書(NASメッセージ)を預かったので確認してください!」

この第一声のメッセージを Initial UE Message と呼びます。これが5G通信のすべての始まりです。

2. 通信のパイプライン作成:Initial Context Setup Request / Response

AMFが「よし、このお客さんは登録済みだからOK!」と判断すると、今度はコアネットワークから基地局へ指示が飛びます。

> 「了解!じゃあ、このお客さんのために専用の通信レーン(無線ベアラ)を基地局側でも用意して、いつでもデータ通信できるようにセットアップしてあげて!」

これが Initial Context Setup Request です。基地局側が無事に準備を終えると、Initial Context Setup Response を返して「準備完了です!」と伝えます。

3. お引越し(ハンドオーバー):Handover Required / Request

新幹線や車で移動しているとき、スマホは別の基地局へと次々にバトンタッチ(ハンドオーバー)していきます。この時もNGAPが大活躍します。

移動元の基地局が「そろそろ電波が弱くなるので、隣の基地局へお引越しさせてあげてください」とAMFに頼むのが Handover Required。そして、AMFを経由して引越し先の基地局に「新しいお客さんがそっちに向かいます!」と伝えるのが Handover Request です。

—

現場で役立つ!NGAPパケット解析と設定のヒント

さて、ここからは少し実践的なお話をしましょう。プライベート5G(ローカル5G)の構築や、オープンRAN(O-RAN)の検証現場では、Wiresharkなどのパケットキャプチャツールを使ってNGAPのやり取りを覗き見ることがよくあります。

実際にオープンソースの5Gコア(Open5GSやfree5GCなど)や、シミュレータの設定ファイル(JSONやYAMLなど)を触るとき、SCTPやNGAPのポート番号が正しく設定されていないと、基地局とコアが永遠に握手を交わしてくれない(SCTPのAssociationが確立しない)というトラブルが起きがちです。

以下に、設定ファイルの一例と、トラブルシューティング時のポイントをご紹介します。

設定ファイル例(概念的なYAML設定のイメージ)

# 5Gコアネットワーク(AMF)側のSCTP/NGAPリスニング設定例
sctp_config:
  # AMFのIPアドレス(バインドするインターフェース)
  bind_ip: "192.168.100.10"
  # NGAPが標準で使用するSCTPポート番号(IANA標準は 38412)
  port: 38412
  # 同時接続を処理するためのストリーム数設定
  # インバウンド(受信)およびアウトバウンド(送信)のストリーム数を指定します
  ppi: 0
  num_ostreams: 30
  num_istreams: 30

ngap_config:
  # PLMN ID(Public Land Mobile Network ID: MCC + MNC)
  # 日本のキャリアやローカル5Gの事業者コードをここに記述します
  plmn_id:
    mcc: "440"
    mnc: "50"
  amf_name: "amf.local5g.lab"

現場のトラブルシューティング:パケットが見えないときのチェックポイント

もし、基地局(gNB)を立ち上げたのにAMFと接続できない(NGAPのメッセージが流れない)ときは、以下の順番で泥臭く確認してみてください。

1. SCTPのレイヤーで止まっていないか?

  • ping が通るかだけでなく、sctp_test コマンドや wireshark を使って、SCTPのハンドシェイク(INIT -> INIT-ACK -> COOKIE-ECHO -> COOKIE-ACK)が正常に完了しているかを確認します。ここが失敗している場合は、ファイアウォール(iptables / nftables / firewalld)がポート 38412 をブロックしている可能性大です。

2. PLMN IDが一致しているか?

  • 基地局側の設定ファイルとAMF側の設定ファイルで、MCC(移動体国コード)とMNC(移動体ネットワークコード)の数値が1文字たりとも違っていないか確認しましょう。ここがミスマッチだと、NGAPの初期段階で盛大に弾かれます。

3. パケットキャプチャのフィルターを使いこなそう

  • Wiresharkで大量のパケットからNGAPだけを抽出したいときは、フィルター欄に以下の式を入力すると一発で絞り込めます。
# WiresharkでNGAPのメッセージだけをフィルタリングするフィルター式
sctp.port == 38412 or ngap

このフィルターを使うだけで、雑多なパケットの海から、基地局とAMFが交わしている「業務連絡」だけを綺麗に抽出することができますよ。

—

まとめ:見えないネットワークの裏側に思いを馳せて

今回は、5Gの心臓部であるNGAPの基本構造と、トランスポート層を支えるSCTP、そして現場で役立つ視点についてお話ししました。

一見すると難解な「NGAP」という言葉も、「基地局という窓口と、コアネットワークという本局をつなぐ専用の伝票システム」だと捉えると、途端に親しみが湧いてきませんか?

私たちがスマホで何気なく動画を再生したり、テザリングで快適に仕事ができたりする背景には、こうした見えない場所で膨大なパケットたちが正確に、そしてタフに会話を繰り広げているドラマがあります。

今回の記事が、皆さんのインフラやネットワーク学習のちょっとした道しるべになれば幸いです。それではまた次回のマニアックなガジェット&ネットワークの世界でお会いしましょう!

コメント

タイトルとURLをコピーしました