Всем привет! Мы занимается разработкой программного обеспечения для 5G сетей. Хотим рассказать про то, какие новшества в 5G сетях позволят пользователю самому управлять собственными устройствами и трафиком. Про то, что такое control and user plane separation (CUPS), network slicing, user plane function (UPF), и почему это всё может стать подходящими инструментами при взаимодействии с вашими собственными устройствами в мобильной сети.

Третья статья про то, что такое user plane function (UPF), и каким образом пользователь может управлять обработкой трафика своих мобильных устройств.

5G — разделяй и управляй. Сам.

Технические детали

Путь трафика от пользовательского устройства до выхода из мобильной сети

Мобильная сеть связи обеспечивает доступ от устройства пользователя до выхода во внешние сети (Интернет). Через 5G сеть пользовательский трафик проходит в специальных туннелях:

  • Data radio bearer (DRB) между пользовательским устройством и базовой станцией,

  • GPRS Transport Protocol — User plane tunnel (GTP‑U tunnel) между базовой станцией и UPF.

Пользовательский трафик попадает в туннель на базовой станции, а выходит из туннеля на «маршрутизаторе», который «снимает» GTP‑обертку и передает трафик дальше во внешнюю сеть.

Схема туннелей между пользовательским устройством (UE), базовой станцией (gNB) и UPF.

Использование GTP‑U туннеля для передачи пользовательского трафика внутри операторской сети необходимо для следующего::

  • Бесшовный переход при перемещении пользовательского устройства между базовыми станциями.

  • С точки зрения ядра мобильной сети весь трафик пользователя — это один или несколько туннелей. Соответственно, внутри сети все политики управления качеством сервисов (quality of service, QoS), приоритезации, маршрутизации и т. п. применяется к GTP‑U туннелю, а не к каждому соединению каждого приложения в отдельности.

На схеме ниже зеленой линией выделен участок, на котором пользовательский трафик проходит, будучи инкапсулированным в GTP.

Элементы 4G ядра (голубым) и функций 5G (оранжевым) на одной схеме. PDN / DN - public data network / data network. Иллюстрация из презентаций ETSI workshops. 

Хорошая теоретическая выкладка о пакетной передаче данных в мобильных сетях представлена в этой серии статей на хабре: раз, два, три, четыре.

Поверх DRB и GTP‑U tunnel между пользовательским устройством (UE) и UPF устанавливается Packet data unit session (PDU Session). PDU сессия используется для передачи трафика конкретной услуги или приложения. Она определяет требования QoS, использование слайсинга, информацию о дальнейшей маршрутизации пользовательских данных.

Стек протоколов между пользовательским устройством (UE), сетью радиодоступа (5G AN) и UPF. Иллюстрация из статьи 5G Core Part 1 — Architecture Overview.

UPF — “маршрутизатор” пользовательского трафика в 5G сети

User plane function (UPF) — элемент и функция 5G сети, которая работает с пользовательским трафиком и обеспечивает его передачу наружу из мобильной сети. Соответственно, UPF расположен на стыке мобильной сети оператора и внешних сетей. Сам UPF делает буквально следующее:

  1. Пропускает пользовательский трафик: маршрутизирует пакеты, применяет политики, обеспечивает качество обслуживания (QoS), выполняет фильтрацию, маркировку и шейпинг трафика, буферизирует downlink трафик.

  2. Работает как шлюз в сторону внешних сетей и Интернет.

  3. Поддерживает работу GTP‑U туннелей до базовых станций.

  4. Работает с PDU сессиями: взаимодействует с Session management function (SMF) для получения информации о параметрах сессии для каждого конкретного пользователя и его приложений, а также устанавливает PDU сессии с мобильными устройствами.

  5. Поддерживает слайсинг: распределяет пользовательский трафик по различным виртуальным сетевым сегментам, обеспечивает индивидуальное применение политик.

  6. Ведет учет, собирает и передает данные о трафике для биллинга или других нужд.

Для взаимодействия с другими функциями используются стандартизованные интерфейсы:

  • N3 интерфейс между UPF и сетью радиодоступа (базовыми станциями, gNB).

  • N4 интерфейс между UPF и SMF. Не передает трафик пользователей, а используется только для сигнального трафика и взаимодействия с SMF.

  • N6 интерфейс в сторону внешних сетей: IMS‑платформы для голосового трафика, CG‑NAT перед выходом в Интернет, VPN для корпоративных пользователей и т.п.

  • N9 интерфейс между несколькими UPF.

Схема интерфейсов UPF

Несколько UPF в пределах одной сети или слайса 

В 5G сетях трафик может проходить через несколько UPF, у каждого из которых может быть разная роль:

  • Uplink Classifier / Branching point UPF (ULCL/BP UPF) — распределяет трафик по нескольким вышестоящим UPF в зависимости от типа трафика.

  • Intermediate UPF (i‑UPF) — «транзитный» UPF, обслуживающий определенный сегмент сети.

  • PDU session anchor UPF (PSA‑UPF) — является конечным в цепочке UPF и управляет PDU‑сессией до устройства пользователя.

  • Multicast and broadcast services UPF (MB‑UPF) — используется для широковещательного трафика.

Использование нескольких UPF в одной 5G сети

Последовательное подключение UPF

Несколько UPF могут быть иерархически связаны между собой. Цепочка UPF предназначена для гибкой обработки трафика в соответствии с конкретными требованиями предоставляемой услуги. Каждый UPF в цепочке может применять политики по безопасности, фильтрации, качеству обслуживания, а также может иметь собственный N6 интерфейс для соединения с внешними сетями. Таким образом, на каждом участке от первого и до крайнего UPF в цепочке пользовательский трафик может быть декапсулирован из GTP и передан какому‑либо локальному получателю. В результате:

  • сокращение нагрузки на транспортную сеть оператора;

  • сокращение времени отклика за счет расположения ресурсов ближе к мобильным устройствам пользователя;

  • повышение безопасности и исключение внешних сегментов сети на пути от мобильного устройства до локального ресурса.

Цепочка UPF. Изображение из материалов ZTE.

Вынос обработки пользовательского трафика за пределы сети оператора связи

В предыдущей статье про слайсинг мы допустили предположение, что настало будущее, в котором вы можете заказать и начать использовать собственный слайс.

Если вы используете слайс, в котором все ресурсы полностью размещены на стороне оператора связи, то тот минимум в части обработки трафика, который вам даст использование слайса, это конфигурирование индивидуальных политик и доступ к N6 интерфейсу. Ограничение одного трафика, приоритезация другого, маршрутизация в корпоративный VPN — новые пункты меню в вашем личном кабинете.

Но предположим, что по соображениям безопасности, ради сокращения задержек или по какой‑либо другой причине вы решили перенести часть функций слайса на свою сторону. Запуск UPF на стороне пользователя — один из возможных сценариев работы пользователя со своим слайсом. UPF будет первой и, возможно, единственной функцией 5G ядра, которую вы захотите забрать.

Перед вами как пользователем встанут вопросы:

  • Выбор между операторским и сторонним UPF Какой из них совместим с вашим ИТ‑ландшафтом? Насколько функционал UPF может быть доработан под ваши нужды, насколько UPF может быть встроен в ваш корпоративный пайплайн обработки трафика? Какой UPF более выгоден в CAPEX и OPEX? Если принято решение использовать собственный UPF, то насколько будут совпадать представления о стандартах 3GPP у поставщика вашего UPF и у поставщика 5G ядра оператора связи?

  • Точка присоединения к транспортной сети и доступ к vRAN. Каким образом получить доступ к транспорту не только базовых станций, расположенных непосредственно в внутри кампуса, на крышах складов и цехов, но и к «первой линии» вокруг ваших объектов? Где ближайшая основная и резервная точки, откуда вы сможете забрать виртуализированный сегмент транспорта вашего слайса? Где наилучшие точки, если вы покупаете слайс на весь регион или страну?

  • Обеспечение безопасности и доверия при соединении с 5G ядром оператора связи для обмена сигнальным трафиком.

Размещение UPF вне операторской сети

Развитие UPF на рынке

В сторону решений для 5G SA в целом и UPF в частности идут не только классические поставщики решений для мобильной связи. Ниже несколько ссылок вразнобой для создания представления о развитии рынка:

OpenSource UPF

Для тех, кто захочет позаниматься с UPF своими руками, несколько ссылок на github. В первую очередь стоит начать с UPF из состава Free5GC или Open5GS - это два популярных 5G ядра с открытым исходным кодом, внутри которых лежат вполне рабочие и готовые к использованию UPF.

Резюме:

  1. User plane function (UPF) - функция 5G ядра и “маршрутизатор” трафика, через который мобильное устройство получает доступ к внешним сетям. 

  2. С развитием 5G сетей, control and user plane separation (CUPS) и слайсинга у пользователя появляется возможность управлять трафиком своих мобильных устройств путём индивидуальных настроек своего UPF в слайсе. 

  3. При использовании слайсинга пользователь может выбрать тот или иной UPF, настройки и место размещения. Этот выбор не будет затрагивать работу всей остальной сети оператора связи. 

  4. В ряде сценариев UPF может быть целесообразно перенести на сторону пользователя.