1 February 2010

Как устроена сеть сотовой связи GSM/UMTS

Cellular communication
В комментариях к постам про сеть WiMAX (1, 2) и про GPRS был выражен интерес к сетям сотовой связи, поэтому решил реализовать свою давнюю задумку и описать хабрасообществу как же устроены современные сети сотовой связи.

network structure

На приведённой картинке изображена общая структура сетей сотовой связи. Изначально сеть разделяется на 2 больших подсети — сеть радиодоступа (RAN — Radio Access Network) и сеть коммутации или опорную сеть (CN — Core Network).

Хочу подчеркнуть, что буду описывать именно существующие сети сотовой связи для СНГ, потому что в Европе, Америке и Азии сети более развиты и их структура несколько отличается от наших сетей, про это напишу как-нибудь позже, если будет интерес.

Сперва, хотелось бы рассказать в общих словах про сеть, а потом более подробно расскажу про функции каждого из элементов сети.

Сеть радиодоступа



Существующие сети радиодоступа у наших операторов — продукт долгой эволюции, поэтому они состоят из сети радиодоступа к GSM (GERAN — GSM EDGE Radio Access Network) и сеть радиодоступа к UMTS (UTRAN — UMTS Terrestrial Radio Access Network). Сверху слева на картинке вы видите GERAN, внизу слева, соответственно UTRAN. Наибольшие изменения при переходе от GSM к UMTS происходят как раз в сети радиодоступа — оператору нужно построить вторую сеть и заново покрыть уже имеющиеся территории.

Сеть радиодоступа — эта та паутина, которой охвачены огромные территории городов и открытых местностей, за счёт неё как раз и обеспечивается то огромное погрытие, которое предоставляют сети сотовой связи.

Опорная сеть



Опорная сеть — ядро сетей сотовой связи. Название опорная — мой вольный перевод, в GSM эту часть сети называют сетью коммутации, в UMTS — Core Network, что по сути можно перевести как ядро сети. К этому ядру, как периферийные устройства к системному блоку, могут подключаться различные сети радиодоступа. Опорная сеть мало эволюционирует в связи с эволюцией от GSM к UMTS, эта сильная эволюция происходит немного позже — её уже прошли западные и азиатские операторы, у нас же она только начинается.

Опорная сеть на приведённой выше картинке разделена на 2 части — верхняя правая часть отвечает за голосовые соединения, или CS-соединения (Circuit Switch), нижняя правая часть отвечает за пакетные соединения, или же PS-соединения (Packet Switch).

Опорная сеть сосредоточена в одном или нескольких зданий, принадлежащих оператору сотовой связи, в больших машинных залах — проще говоря огроменнейшая серверная, где стоит большое количество шкафов оборудования, их ещё холодильниками иногда называют, потому что с виду очень похожи :)

HLR



HLR — Home Location Register, Регистр положения домашних абонентов.
По сути это большая база данных, в которой хранится всё об абоненте данной сети. В крупных сетях, таких, как у операторов большой тройки, таких узлов несколько — они разбросаны по регионам. Их количество измеряется единицами штук. Для того, чтобы понимать порядки — в Питере такой узел один, в Москве другой, на Урале ещё один, ещё на Кавказе, в Сибири — 3-4 штучки… На практике это может быть распределённая БД, потому что ёмкости одного HLR может не хватить для хранения данных обо всех абонентах. Тогда оператор докупает ещё один HLR (физическое устройство) и организует распределённую БД.

Какая же информация там хранится? По большей части, это информация об услугах, подключенных у абонента:
— может ли абонент совершать исходящие звонки
— может ли абонент отправлять/принимать SMS
— разрешена ли услуга конференц-связи
— ну и все остальные возможные услуги
Также здесь хранится такая важная информация, как идентификатор того MSC, в зоне действия которого сейчас находится абонент. Позже мы увидим для чего это может быть нужно.

MSC/VLR



MSC — Mobile Switching Center, центр коммутации для мобильных абонентов;
VLR — Visitor Location Register, регистр положения гостевых абонентов.
Логически это 2 раздельных узла, но на практике, это реализовано в одном и том же устройстве.
VLR хранит в себе копию тех данных, которые записаны в HLR с той лишь разницей, что тут уже нет информации о том MSC, в зоне действия которого находится абонент. Здесь хранится информация о том, в зоне действия какого BSC находится данный абонент. Ну и здесь, естественно, хранятся данные только о тех абонентах, которые сейчас находятся в зоне действия того MSC, к которому подключен данный VLR.
switch

MSC — классический коммутатор (конечно, не такой классический, который можно увидеть в музеях, где сидели бабушки и перетыкали проводки). Основные его функции — для исходящего вызова — определить куда переключить вызов, для входящего же соединения — определить на какой BSC отправить вызов. Для выполнения этих то функций он и обращается в VLR за хранящейся там информацией. Здесь стоит заметить, что это плюс разнесения HLR и VLR — MSC не будет стучаться в HLR каждый раз, когда абоненту что-то нужно, а будет всё делать своими силами. Также MSC собирает данные для биллинга, далее эти данные скармливаются соответствующим системам.

AUC



AUC — AUthentication Center, центр аутентификации абонентов. Этот узел отвечает за то, чтобы злоумышленник не мог получить доступ к сети от вашего лица. Также этот узел генерирует ключи шифрования, с помощью которых шифруется ваше соединение с сетью в самом уязвимом месте — на радиоинтерфейсе.

GMSC



GMSC — Gateway MSC, шлюзовой коммутатор. Этот узел сети используется только при входящих вызовах. У операторов есть определённая номерная ёмкость, этой номерной ёмкости сопоставляются шлюзовые коммутаторы сетей связи (сотовых, фиксированных). Когда вы набираете номер друга, ваш звонок доходит до коммутатора (MSC) вашей сети и он определяет куда дальше отправить этот вызов на основе имеющихся у него соответствий между номерами и шлюзами сетей. Звонок отправляется на GMSC сотового оператора, которым пользуется ваш друг. Далее GMSC делает запрос в HLR и узнаёт в зоне действия какого MSC сейчас находится вызываемый абонент. Туда дальше и перенаправляется вызов.

SGSN



SGSN — Serving GPRS Support Node, обслуживающий узел поддержки GPRS. Этот узел отвечает за то, чтобы определить каким образом предоставлять услуги на основе запрошенной APN (Access Point Name, точки доступа, например, mms.beeline.ru). Также на этом узле осуществляется посчёт трафика.

GGSN



GGSN — Gateway GPRS Support Node, шлюзовой узел поддержки GPRS. Ну это шлюз, отвечает за правильную доставку пакетов до пользователя.

BSC



BSC — Base Station Controller, контроллер базовых станций. Узел, к которому подключаются базовые станции, дальше он осуществляет управление базовыми станциями — назначает какому абоненту где сколько ресурсов выделить, определяет каким образом осуществляются хэндоверы. Когда с MSC приходит сигнал о входящем соединении для абонента, контроллер осуществляет процедуру пейджинга — через все подчинённые ему базовые станции посылает вызов данному абоненту, который должен отозваться через одну из базовых станций.

TRC



TRC — TRansCoder, транскодер. Устройство, отвечающее за перекодирование речи из формата GSM в стандартный формат телефонии, используемый в фиксированных сетях связи и обратно. Таким образом, получается, что речь передаётся в формате сетей фиксированной связи в сети GSM на участке от GMSC до TRC.

BTS



BTS — Base Transceiver Station, базовая приёмопередающая станция. Это то, что непосредственно находится близко к самому пользователю. Именно базовые станции образуют ту самую паутину, которой накрывают операторы сотовой связи, именно от их количества зависит территория, на которой предоставляют услуги операторы сотовой связи. По сути — довольно глупое устройство, оно обеспечивает выделение пользователям отдельных каналов связи, преобразует сигнал в высокочастотный, который будет передаваться в эфир, ну и выдаёт этот самый высокочастотный сигнал на антенны. А вот антенны то мы и можем наблюдать каждый день.

Хочу заметить, что антеннки — это не есть базовая станция :) Базовая станция похожа на холодильник — шкафчик с модулями, который стоит в специальном месте. Это специальное место — например, синенькие вагончики, которые ставятся под красно-белыми вышками где-нибудь в пригороде.

Более подробно можно почитать в недавно опубликованной статье про базовые станции.

RNC



RNC — Radio Network Controller, контроллер сети радиодоступа. По сути выступает в той же роли, что BSC в GERAN.

NodeB



NodeB, базовая станция в UMTS. Аналог BTS в GSM.

В целом, здесь описаны все жизненно важные элементы сети GSM/UMTS. Здесь я не упоминал ещё некоторые узлы, такие как SMS-C (SMS-Center), MMS-C (MMS-Center), WAP-GW (WAP-Gateway).

Если статья вызовет интерес, то в дальнейшем могу рассказать более подробно про сети радиодоступа GERAN и UTRAN, потому что я занимаюсь по большей части именно радийными вещами.

Также уже есть идеи для ряда статей на основе вопросов, вызвавших интерес, в комментариях к статьям по телекоммуникациям, пока не буду раскрывать интригу — задавайте интересные вопросы — будут интересные статьи! ;)

UPD: в комментариях отписались эксперты в своих областях, что очень интересно почитать:
1. Ветка про ПО, устанавливаемом на оборудовании;
2. Ветка про отличия наших (СНГшных) сетей и сетей в Европе/США/Азии;
3. Комментрии от пользователя DeSh с поправлениями и уточнениями: тыц, тыц.
Да и вообще в комментариях довольно много всего интересного всплыло помимо выделенных мной комментариев.
Tags:gsmumtsсотовая связьмобильная связьсеть третьего поколения
Hubs: Cellular communication
+79
89.4k 235
Comments 86