В данной статье я кратко расскажу о последних двух способах управления нагрузкой в сети LTE — DDN Throttling и PGW Overload Control. Для начала немного теории
Состояния мобильной станции
Каждая мобильная в определенный момент времени находится в определенном состоянии по отношению к сети. Различают два типа состояний:
- EMM (EPS Mobility Management) состояние — состояние мобильной станции, связанное с ее перемещением в сети
- ECM (EPS Connection Management) состояние — состояние мобильной станции по отношению к ее сессиям
Существует два EMM состояния:
- EMM-DEREGISTERED — грубо говоря, когда мобильная станция к сети не подключена вообще. Например, в таком состоянии находятся мобильные станции при первом включении или после выполнения процедуры отключения от сети (Detach)
- EMM-REGISTERED — состояние, когда мобильная станция подключена к сети. Например, в таком состоянии мобильная находится после успешного подключения к сети (Attach)
Существует два ECM состояния:
- ECM-IDLE — состояние, когда мобильная станция уже подключена в сети, но не имеет активных сессий
- ECM-CONNECTED — состояние, когда мобильная станция подключена и имеет активные сессии
Эти состояния взаимосвязаны, т.е в определенный момент мобильная станция находится в определенных EMM и ECM состояниях. Например, при включении мобильной станции, она находится в состоянии ECM-DEREGISTERED и ECM-IDLE. После успешного подключения мобильная станция переходит в состояние — ECM-REGISTERED и ECM-CONNECTED. В каждом состояния мобильная станция может выполнять определенные операции, которые, например, переводят ее в другое состояние.
Описывать все процедуры не буду — о них можно прочитать в соответствующей спецификации. С точки зрения управления нагрузкой нас интересуют состояния ECM-CONNECTED и ECM-IDLE.
Downlink Data Notification (DDN) Throttling
После успешного подключения мобильной станции к сети, она переходит в состояние ECM-CONNECTED, т.е для нее между eNodeB и MME создано S1-MME подключение для сигнальных процедур, между eNodeB и Serving GW, а также между SGW и PGW, созданы GTP туннели для передачи данных. Напомню, что MME является чисто «сигнальным» элементом и пользовательские данные идут мимо него.
Т.е в данном состоянии мобильная станция может начать обмен данными с сетью. Бывают моменты, когда мобильная станция, подключена к сети, но при этом не передает никаких данных. Для экономии ресурсов сеть переводит мобильную станцию в состояние ECM-IDLE. При этом освобождаются ресурсы, выделенные для обработки трафика этой мобильной станции — удаляются GTP туннель между SGW и eNodeB и подключение между eNodeB и MME. При этом данные подключения мобильной станции на MME, SGW и PGW остаются
Что происходит, если сеть отправляет данные мобильной станции, которая находится в состоянии ECM-IDLE. Пакет прилетает из внешней сети на PGW, который ретранслирует его в SGW. SGW видя, что GTP туннель между ним и eNodeB для отправки пакета данной мобильной станции отсутствует, отправляет специальное сообщение Downlink Data Notification в сторону MME, которое говорит о том, что для данной мобильной станции пришли данные. MME инициирует процедуру Paging и пытается найти мобильную станцию.
Мобильная станция, получив Paging сообщение, шлет сообщение Service Request в сторону MME. После этого сеть заново создает необходимые GTP туннели, и пакет данных, который все это время находится в буфере SGW, отправляется мобильной станции. Мобильная станция снова переходит в состояние ECM-CONNECTED.
Что же такое DDN Throttling? В случае перегрузки MME, он в ответ на сообщение Downlink Data Notification (DDN) Request отправляет сообщение DDN Acknowledgment, в которое добавляет поле Throttling, которое включает в себя следующие параметры:
- Throttling Factor — процент подключений, для которых не надо генерировать DDN сообщения
- Throttling Delay — промежуток времени, в течение которого для указанного количества соединений не надо генерировать DDN сообщения
Получив такое сообщение, SGW активирует процедуру DDN Throttling, которая запрещает генерацию DDN сообщений для указанного количества соединений в течение указанного промежутка времени. Следует отметить, что DDN Throttling применяется для так называемых «сессий с низким приоритетом». Приоритет сессии определяется параметром ARP. На SGW создается специальная таблица, которая содержит список ARP с соответствующими приоритетами.
Например:
- ARP = 1 -> High Priority
- ARP = 2 -> High Priority
- ARP = 3… 10 > Low Priority
В случае, если ARP сессии соответствует High Priority, то к этой сессии DDN Throttling применяться не будет. Используя процедуру DDN Throttling MME также может управлять нагрузкой в сети
PGW Overload Control
Помимо MME, управлять нагрузкой также может управлять элемент PGW. Как это работает?
Если PGW обнаруживает, что количество активных подключений к определенному APN, или количество подключений за определенный промежуток времени к определенному APN, превысили установленный порог, то PGW активирует процедуру PGW Overload Control. После ее активации все новые запрос на подключение (Create Session Request) будут отбиваться по причине "APN Congestion". PGW также может указать, в течение какого промежутка времени, он будет блокировать все попытки подключения. Для этого в сообщение Create Session Response он добавляет поле PGW Back-Off timer. Это сообщение (Create Session Response c Cause="APN Congestion" и полем Back-Off Timer) SGW ретранслирует в сторону MME, который в свою очередь активирует процедуру NAS Congestion Control (более подробно см. здесь).
Спасибо за внимание
Ссылки
ссылка на оригинал статьи http://habrahabr.ru/post/187524/
Добавить комментарий