Cellular(セルラー通信)— 基地局(BS)のネットワークを介した音声とデータの無線伝送技術であり、直径200メートル(マイクロセル)から50キロメートル(マクロセル)のセルでエリアをカバーします。モバイルアプリケーションでは、セルラーインターネットはWi-Fiエリア外でのコンテンツダウンロードの主要チャネルです。GSMAモバイルエコノミーレポート2025によると、世界には56億以上のユニークモバイルユーザーがおり、5Gネットワークの平均ダウンロード速度は240 Mbpsに達しています。
重要ポイント
セルラー通信— エリアをセルに分割し、各セルを基地局(BS)が担当するモバイル無線通信規格です。デバイスが移動すると、ハンドオーバーが発生します—接続を中断せずにセル間を自動的に切り替えます。セルのサイズはさまざまです:農村部向けマクロセル(10–50 km)、都市向けマイクロセル(200–2000 m)、屋内向けフェムトセル(最大50 m)。
セルラーネットワークのアーキテクチャには3つの主要コンポーネントがあります:User Equipment(UE)—スマートフォンまたはモデム;Radio Access Network(RAN)—アンテナ付き基地局の集合;Core Network—ルーティング、認証、課金、インターネット接続。異なる世代はCore Networkの構造と無線信号変調方式が異なります。
Wi-Fiとは異なり、セルラーネットワークはライセンスされた周波数を使用します—各キャリアはオークションで排他的な帯域を取得します。これによりキャリア間の干渉がないことが保証されますが、周波数の再割り当てが必要なため、新しい標準の展開速度が制限されます。
セルラー通信の各世代(N-G)は、速度の指数関数的な成長と新しいユースケースをもたらしました。2G(GSM)は初めて音声をデジタル化し、SMSを導入しました。3G(UMTS、HSDPA)は一般ユーザーにモバイルインターネットを開放しました。4G LTEは回線交換を廃止し、完全にIPパケットに移行しました。5G NRは超低レイテンシとネットワークの仮想セグメント分割に焦点を当てました。
| 世代 | 標準 | 最大速度 | レイテンシ | 年 |
|---|---|---|---|---|
| 2G | GSM / GPRS / EDGE | 384 kbps(EDGE) | ~300 ms | 1991 |
| 3G | UMTS / HSPA+ | 42 Mbps(HSPA+) | ~100 ms | 2001 |
| 4G | LTE-Advanced Pro | 3 Gbps | ~30 ms | 2009 |
| 5G | NR(New Radio) | 20 Gbps | <5 ms | 2019 |
| 6G | 開発中 | 1 Tbps(予測) | <0.1 ms | 2030(計画) |
モバイルOSは無線インターフェースを介して現在のネットワーク世代を判断します。AndroidではTelephonyManager.getDataNetworkType()が利用可能で、NETWORK_TYPE_LTEまたはNETWORK_TYPE_NR定数を返します。iOSはCTTelephonyNetworkInfoにserviceCurrentRadioAccessTechnologyプロパティを提供します。
4G LTEは、Evolved Packet Core(EPC)とEvolved Node B(eNB)に分割されたフラットなall-IPアーキテクチャに基づいています。eNBは無線通信と基本ルーティング機能を組み合わせた基地局です。EPCはMME(モビリティ管理)、SGW(eNBとのデータ交換用サービングゲートウェイ)、PGW(インターネットへのパケットゲートウェイ)で構成されます。
OFDMA(Orthogonal Frequency Division Multiple Access)— LTEの主要技術:周波数リソースはサブキャリアに分割され、各サブキャリアは特定のユーザーに割り当てられます。4×4 MIMOにより、1つの周波数で最大4つの独立したデータストリームを送信できます。Carrier Aggregationは最大5つのキャリア周波数を結合し、帯域幅を5倍に増やします。
オーバーレイネットワーク—LTE-AdvancedおよびLTE-Advanced Pro—は、CoMP(複数eNBからの協調送信)とLAA(非ライセンス5 GHz帯域でのLTE)を追加しました。開発者にとって、これらの改善は透過的です:モデムドライバーはアプリケーションコードを変更せずに利用可能な技術を自動的に使用します。
fun getCellularType(context: Context): String {
val tm = context.getSystemService(Context.TELEPHONY_SERVICE)
as TelephonyManager
return when (tm.dataNetworkType) {
TelephonyManager.NETWORK_TYPE_NR -> "5G"
TelephonyManager.NETWORK_TYPE_LTE -> "4G LTE"
TelephonyManager.NETWORK_TYPE_HSPAP -> "3G HSPA+"
else -> "2G/Unknown: ${tm.dataNetworkType}"
}
}
この関数はTelephonyManagerを取得し、アクティブなネットワークタイプを判定します。Android 10+では、dataNetworkTypeにアクセスするにはREAD_PHONE_STATE権限が必要で、Android 11以降は通話またはSMSハンドラーとしてインストールされたアプリのみがアクセスできます。
5G NR(New Radio)— LTEと比較して物理層の抜本的なアップグレードです。この標準は2つの周波数範囲で動作します:広範囲カバレッジ向けFR1(Sub-6、1–6 GHz)と、短距離での超高速向けFR2(mmWave、24–52 GHz)。mmWaveにはアンテナへの直接見通し線が必要です—木の葉でさえ最大30 dBの減衰を引き起こします。
2つの展開モード:NSA(Non-Standalone)— 5G NRがLTE Coreと連携して立ち上げを加速、SA(Standalone)— ネットワークスライシングをサポートする完全に自律的な5G Core Network。ネットワークスライシングは物理インフラを仮想セグメントに分割します:IoT用のスライス(低速、超低消費電力)、自動運転車用の別のスライス(レイテンシ1 ms未満)。
モバイルアプリにとって、5Gは速度だけでなく、新しい消費電力動作も意味します:mmWaveモジュールはアクティブモードで最大2 Wを消費します(LTEの0.5 Wに対して)。5G向け開発では、mmWaveでの頻繁なデータ送信がバッテリーを急速に消耗することを考慮する必要があります—データをバッファリングし、Sub-6範囲でバッチ送信するのが最適です。
import CoreTelephony
func check5GStatus() -> String {
let info = CTTelephonyNetworkInfo()
guard let tech = info.serviceCurrentRadioAccessTechnology
?.values.first else { return "No cellular" }
if tech == CTRadioAccessTechnologyNRNSA {
return "5G NSA"
} else if tech == CTRadioAccessTechnologyNR {
return "5G SA"
} else {
return "LTEまたは3G: \(tech)"
}
}
iOSはCoreTelephonyを介してアクティブな接続タイプを報告します:SA(純粋な5G)の場合はCTRadioAccessTechnologyNR、NSA(LTEコア付き5G)の場合はCTRadioAccessTechnologyNRNSA。この情報はアプリの動作を適応させるのに役立ちます—例えば、低レイテンシのSAモードでのみ重いコンテンツをロードするなど。
モバイルアプリはセルラー接続のタイプと品質に基づいて動作を適応させることができます。ConnectivityManager(Android)とNWPathMonitor(iOS)は、ネットワークの変更(Wi-FiからCellularへの切り替え、信号喪失、5Gの利用可能性)をアプリに通知します。
主要な処理シナリオ:
RSSI(Received Signal Strength Indicator)— セルラー信号品質の主要指標。値は-50 dBm(優れた信号)から-120 dBm(ほぼネットワークなし)まで。AndroidはSignalStrength.getLevel()を介してRSSIへのアクセスを提供、iOSはCTCarrierを介して(制限付きアクセス)。
import Network
let monitor = NWPathMonitor()
monitor.pathUpdateHandler = { path in
if path.usesInterfaceType(.cellular) {
print("セルラーネットワークアクティブ")
if path.isExpensive {
print("従量制接続 — トラフィックを制限")
}
}
}
monitor.start(queue: .main)
NetworkフレームワークのNWPathMonitorは、接続タイプ(cellular、wi-fi、wired)と従量制接続を示すisExpensiveフラグを監視します。iOSでは、無線インターフェースに直接アクセスせずに現在のネットワークタイプにアプリの動作を適応させる主要な方法です。
アプリはキャリアの選択を制御しませんが、さまざまなプランの特性を理解することは開発者の意思決定に役立ちます。APN(Access Point Name)— セルラーネットワークとインターネット間のゲートウェイ。異なるAPN(internet、ims、mms)は異なるQoSを提供します—音声APN(IMS)はインターネットトラフィックより優先されます。
現代のキャリアは5G SAでDNN(Data Network Name)を導入しています—要件に応じたセグメンテーション機能を持つAPNの類似物:ultra-reliable low-latency(URLLC)、enhanced mobile broadband(eMBB)、massive IoT(mMTC)。開発者はスライスを直接選択しませんが、アプリはNetwork Slicing使用時に5G QoS Identifier(5QI)を介して特定のQoSを要求できます。
開発者への推奨事項:データ送信前にNetworkInfo.isConnectedOrConnectingで接続可用性を確認;セルラーネットワークではリクエストタイムアウトを最低30秒に設定(弱信号下ではTCPセッションの確立が遅い);バックグラウンドタスク(WorkManager、BGTaskScheduler)はWi-Fiまたは無制限プラン接続時のみ同期に使用。
よくある質問
5G NSA(Non-Standalone)はデータ伝送に5G New Radioを使用し、接続管理とモビリティに4G LTE Coreを使用します。5G SA(Standalone)は独立した認証を持つ完全な5G Coreを使用します。SAはNetwork Slicingと10 ms未満のレイテンシに必須で、NSAは既存インフラでの早期5G立ち上げ用です。
Androidでは— ConnectivityManager.getActiveNetwork().getNetworkCapabilities()でhasTransport(TRANSPORT_CELLULAR)を確認。iOSでは— NWPathMonitorでusesInterfaceType(.cellular)を確認。さらにiOSは従量制接続を判断するためにisExpensiveを提供します。
Carrier Aggregation— 帯域幅を増やすために最大5つのコンポーネントキャリアを結合する技術。各キャリアが20 MHzの帯域幅を提供する場合、3つのキャリアの集約で60 MHz—最大450 Mbpsの速度を実現。アプリにとってCarrier Aggregationは透過的です:モデムが自動的に結合を管理します。
ミリ波(24–52 GHz)は非常に短い波長(5–12 mm)を持ち、壁、窓、さらには木の葉を通過する際に強く減衰します。mmWaveはアンテナへの直接見通し線が必要です—ガラス通過の損失は10–30 dB。そのためmmWaveはスタジアム、広場、透明なドームを持つショッピングセンターなどの開放空間で使用されます。
ConnectivityManager(Android)またはNWPathMonitor(iOS)の通知を購読することをお勧めします。信号喪失時、アプリは:現在のネットワークリクエストをキャンセル、ユーザーに接続なしインジケータを表示、ローカルストレージ(Room、CoreData)に状態を保存、指数バックオフ遅延で再接続をスケジュール(10秒、30秒、60秒、300秒後に再試行)。
まとめ
ターンキー方式のモバイルアプリケーションを開発します
IT Sectrは2017年からスタートアップや企業向けにiOS・Androidアプリケーションを開発しています。私たちがご相談に乗り、最適なソリューションをご提案します。