Cellular (стільниковий зв'язок) — технологія бездротової передачі голосу та даних через мережу базових станцій (BS), що покривають територію стільниками діаметром від 200 метрів (мікростільники) до 50 кілометрів (макростільники). У мобільних додатках стільниковий інтернет — основний канал для завантаження контенту за межами Wi-Fi-зон. За даними Звіту GSMA Mobile Economy, 2025, понад 5.6 мільярда унікальних користувачів мобільного зв'язку у світі, а середня швидкість завантаження в мережах 5G досягла 240 Мбіт/с.
Головне
Стільниковий зв'язок — стандарт мобільного радіозв'язку, заснований на розбитті території на стільники, кожен з яких обслуговується базовою станцією (BS). Під час переміщення пристрою відбувається хендовер — автоматичне перемикання між стільниками без розриву з'єднання. Стільники мають різний розмір: макростільники (10–50 км) для сільської місцевості, мікростільники (200–2000 м) для міст, фемтостільники (до 50 м) для приміщень.
Архітектура стільникової мережі включає три основні компоненти: 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 кбіт/с (EDGE) | ~300 мс | 1991 |
| 3G | UMTS / HSPA+ | 42 Мбіт/с (HSPA+) | ~100 мс | 2001 |
| 4G | LTE-Advanced Pro | 3 Гбіт/с | ~30 мс | 2009 |
| 5G | NR (New Radio) | 20 Гбіт/с | <5 мс | 2019 |
| 6G | У розробці | 1 Тбіт/с (прогноз) | <0.1 мс | 2030 (план) |
Мобільні ОС визначають поточне покоління мережі через радіоінтерфейс. На Android доступний TelephonyManager.getDataNetworkType(), що повертає константу NETWORK_TYPE_LTE або NETWORK_TYPE_NR. iOS надає CTTelephonyNetworkInfo із властивістю serviceCurrentRadioAccessTechnology.
4G LTE базується на плоскій all-IP архітектурі з розподілом на Evolved Packet Core (EPC) та Evolved Node B (eNB). eNB — базова станція, що поєднує функції радіозв'язку та базової маршрутизації. EPC складається з MME (управління мобільністю), SGW (шлюз обміну даними з eNB) та PGW (шлюз до інтернету).
OFDMA (Orthogonal Frequency Division Multiple Access) — ключова технологія LTE: частотний ресурс ділиться на піднесучі, кожна з яких призначається конкретному користувачеві. MIMO 4×4 дозволяє на одній частоті надсилати до 4 незалежних потоків даних. Carrier Aggregation об'єднує до 5 несучих частот, збільшуючи пропускну здатність у 5 разів.
Оверлейні мережі — LTE-Advanced та LTE-Advanced Pro — додали CoMP (координована передача з кількох eNB) та LAA (LTE в неліцензованому діапазоні 5 ГГц). Для розробника ці покращення прозорі: драйвер модема автоматично використовує доступні технології без зміни прикладного коду.
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. Стандарт працює у двох частотних діапазонах: FR1 (Sub-6, 1–6 ГГц) — для масового покриття та FR2 (mmWave, 24–52 ГГц) — для надвисоких швидкостей на коротких дистанціях. mmWave вимагає прямої видимості антени — навіть листя дерев викликає загасання до 30 дБ.
Два режими розгортання: NSA (Non-Standalone) — 5G NR працює спільно з LTE Core для прискорення запуску, та SA (Standalone) — повністю автономна 5G Core Network з підтримкою Network Slicing. Network Slicing ділить фізичну інфраструктуру на віртуальні сегменти: один зріз для IoT (низька швидкість, наднизьке енергоспоживання), інший для автономних автомобілів (затримка < 1 мс).
Для мобільного додатка 5G означає не тільки швидкість, але й нову поведінку енергоспоживання: ммХвильові модулі споживають до 2 Вт в активному режимі (проти 0.5 Вт у LTE). Під час розробки додатків для 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 повідомляє тип активного підключення: CTRadioAccessTechnologyNR для SA (чистий 5G) та CTRadioAccessTechnologyNRNSA для NSA (5G з LTE-ядром). Ця інформація допомагає адаптувати поведінку додатка — наприклад, завантажувати важкий контент тільки в режимі SA з низькою затримкою.
Мобільний додаток може адаптувати свою поведінку залежно від типу та якості стільникового з'єднання. ConnectivityManager (Android) та NWPathMonitor (iOS) сповіщають додаток про зміни мережі — перемикання з Wi-Fi на Cellular, втрату сигналу або появу 5G.
Ключові сценарії обробки:
RSSI (Received Signal Strength Indicator) — основний показник якості стільникового сигналу. Значення від -50 дБм (відмінний сигнал) до -120 дБм (майже немає мережі). Android надає доступ до RSSI через SignalStrength.getLevel(), iOS — через CTCarrier (обмежений доступ).
import Network
let monitor = NWPathMonitor()
monitor.pathUpdateHandler = { path in
if path.usesInterfaceType(.cellular) {
print("Стільникова мережа активна")
if path.isExpensive {
print("Тарифіковане з'єднання — обмежити трафік")
}
}
}
monitor.start(queue: .main)
NWPathMonitor з фреймворку Network відстежує тип підключення (cellular, wi-fi, wired) та прапорець isExpensive, що вказує на тарифіковане з'єднання. На iOS це основний спосіб адаптації поведінки додатка до поточного типу мережі без прямого доступу до радіоінтерфейсу.
Хоча додаток не керує вибором оператора, знання характеристик різних тарифів допомагає розробнику приймати рішення. APN (Access Point Name) — шлюз між стільниковою мережею та інтернетом. Різні APN (internet, ims, mms) надають різний QoS — APN для голосу (IMS) має пріоритет над інтернет-трафіком.
Сучасні оператори впроваджують DNN (Data Network Name) у 5G SA — аналог APN з можливістю сегментації за вимогами: ultra-reliable low-latency (URLLC), enhanced mobile broadband (eMBB), massive IoT (mMTC). Розробник не вибирає зріз безпосередньо, але додаток може запитувати певний QoS через 5G QoS Identifier (5QI) при використанні Network Slicing.
Рекомендації для розробника: перевіряти наявність з'єднання через 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 мс, NSA — для раннього запуску 5G на існуючій інфраструктурі.
На Android — ConnectivityManager.getActiveNetwork().getNetworkCapabilities() з перевіркою hasTransport(TRANSPORT_CELLULAR). На iOS — NWPathMonitor з перевіркою usesInterfaceType(.cellular). Додатково iOS надає isExpensive для визначення тарифікованого з'єднання.
Carrier Aggregation — технологія об'єднання до 5 частотних несучих (component carriers) для збільшення пропускної здатності. Якщо кожна несуча дає 20 МГц смуги, агрегація 3 несучих забезпечує 60 МГц — швидкість до 450 Мбіт/с. Для додатка Carrier Aggregation прозора: модем керує об'єднанням автоматично.
Міліметрові хвилі (24–52 ГГц) мають дуже коротку довжину хвилі (5–12 мм) і сильно загасають при проходженні через стіни, вікна та навіть листя дерев. mmWave вимагає прямої видимості антени — втрати на проходження через скло становлять 10–30 дБ. Тому mmWave використовується на відкритих просторах: стадіони, площі, ТЦ з прозорими куполами.
Рекомендується підписатися на сповіщення ConnectivityManager (Android) або NWPathMonitor (iOS). При втраті сигналу додаток повинен: скасувати поточні мережеві запити, показати користувачеві індикатор відсутності мережі, зберегти стан у локальне сховище (Room, CoreData) та запланувати повторне підключення з експоненціальним збільшенням затримки (повтор через 10 с, 30 с, 60 с, 300 с).
Підсумки
Ми розробимо мобільний застосунок під ключ
IT Sectr створює застосунки для iOS та Android для стартапів і бізнесу з 2017 року. Ми проконсультуємо вас і запропонуємо найкраще рішення.
Читайте також