Одним из основных компонентов сети является AAA-сервер. AAA-сервер обеспечивает аутентификацию, авторизацию и учёт, управление сессиями абонентов в режиме реального времени для обеспечения мобильности, роуминга, безопасности и контроля за используемыми услугами и сервисами. AAA-сервер поддерживает prepaid- и postpaid-схемы. В некоторых специализированных сценариях AAA-сервер выполняет функции proxy-сервера и предоставляет доступ к информации о сессиях абонента.
Решение AAA-сервер разработано в соответствии со следующими стандартами:
AAA-сервер поддерживает аутентификацию на основе одного или нескольких атрибутов (набор атрибутов настраивается), таких как IMSI, MSISDN, IMEI, NAI, Realm/Domain, имя пользователя и т. д.
Комбинации этих параметров настраиваются в Policy Engine, который определяет статические правила, применяемые при процедуре аутентификации.
AAA-сервер поддерживает несколько политик аутентификации, которые могут быть настроены в Policy Engine.
Упорядоченный список правил настраивается в Policy Engine. Каждое правило состоит из одного условия и одного действия.
AAA-сервер поддерживает следующие методы: CHAP, PAP, MSCHAPv1/v2, EAP (EAP-MD5), Microsoft PEAP, EAP-MSCHAP-v2 for PEAP, EAP-AKA, EAP-SIM, и EAP-TLS.
AAA-сервер поддерживает функцию «черный список». Если пользователь в ходе аутентификации вводит неправильные пароли, при достижении определенного количества неудачных попыток AAA-сервер может заблокировать пользователя. В течение определенного времени AAA-сервер будет отклонять аутентификацию пользователя даже в случае предоставления корректного пароля. Данная функция, допустимое количество попыток аутентификации и продолжительность блокировки являются полностью конфигурируемыми параметрами.
Функциональность «черный список» может быть конфигурируемой по APN, realm/domain, NAS и т. д.
AAA-сервер поддерживает следующие протоколы для реализации тарификации в режиме реального времени:
AAA-сервер поддерживает генерацию, доставку и хранение записей CDR для всех событий, которые необходимо протарифицировать.
Формат CDR и набор полей в записях может быть различным в зависимости от требований оператора. Например: CSV, ASN.1, XML, etc.
AAA-сервер поддерживает следующие интерфейсы (Billing Collection Interfaces): FTP, SFTP, FTPS, ssh, XML over HTTP(S), 3GPP API Charging Subset.Дополнительные интерфейсы могут быть разработаны в соответствии с требованиями заказчика.
В состав AAA-сервера входит база данных, которая используется для следующих целей:
AAA-сервер предоставляет интерфейс провижионинга (SOAP) для BSS/OSS систем для возможности управления абонентскими профилями. Дополнительные интерфейсы могут быть настроены/разработаны в соответствии с требованиями заказчика. База данных, список параметров и их значений могут быть настроены в соответствии с требованиями заказчика. Сервер AAA может быть интегрирован с внешней базой данных по стандартному протоколу LDAP (v3).
База данных по использованному трафику наполняется согласно аккаунтинговым сообщениям пользовательских сессий, в том числе сессий, которые были проксированы на внешние сервера.
База данных, содержащая активные сессии абонентов. После того как пользователь устанавливает соединение, AAA-сервер сохраняет информацию об открытой сессии. Информация о сессии включает в себя MSISDN, IP-адрес, IMSI и множество других параметров. Внешние системы, например такие как Call-центр, могут запрашивать информацию о сессиях через HTTP-интерфейс. При этом поиск может осуществляться по MSISDN, IMSI, IMEI или другому ID.
AAA-сервер включает в себя высокопроизводительный Proxy Engine.Proxy Engine поддерживает балансировку запросов, механизмы fault detection и failover. Proxy Engine может использовать различные сервера для проксирования аутентификационных и аккаунтинговых сообщений.
Взаимодействие между RADIUS-серверами осуществляется в соответствии с RFC 2865. Для аутентификации и шифрования используется разделяемый ключ (shared secret).
Условия, при которых AAA-сервер проксирует ACCESS или ACCOUNTING сообщения на внешний сервер, задаются в правилах Policy Engine. Условия проксирования могут быть заданы на основании любых атрибутов, присутствующих в ACCESS или ACCOUNTING сообщении, таких как domain, NAS, APN, subscriber id и т.д.
Несколько внешних AAA-серверов могут быть объединены в одну группу в режиме failover или балансировки нагрузки. Режим failover обеспечивает высокую степень доступности процесса аутентификации благодаря использованию альтернативных серверов из группы, в случае, если основной сервер недоступен или отвечает с задержками. Если первый сервер группы не отвечает в установленное время, AAA-сервер перепосылает запросы на следующий сервер в группе. Если ответ не получен ни от одного сервера в группе, то согласно настроенным правилам, в ответ на запрос может быть отправлен отрицательный ответ (reject) либо положительный (accept) с локальной авторизацией пользователя.
Объединение внешних серверов в группы в режиме балансировки нагрузки (load-sharing) позволяет распределять запросы ACCESS и ACCOUNTING между несколькими серверами по циклическому (round-robin) алгоритму.
Перед отправкой запроса на внешний AAA-сервер, AAA-сервер может модифицировать любой RADIUS-атрибут в запросе. Например, если значения определенных атрибутов удовлетворяют заданному условию, то AAA-сервер может включить в запрос новый атрибут, удалить из запроса существующий атрибут или изменить значение существующего атрибута.
AAA-сервер использует CoA сообщения для динамического изменения активной сессии пользователя. RADIUS атрибуты в CoA могут содержать инструкции для NAS создать, изменить или завершить сервис абонента. CoA сообщения содержат информацию для динамической реавторизации сессии абонента.
Для CoA сообщений используются следующие коды команд: CoA-Request (43), CoA-ACK (44), CoA-NAK (45).
Аналогичным образом AAA-сервер отправляет PoD сообщения на NAS по факту получения от OCS сообщений об удалении абонента, изменении статуса абонента и т. д. Правила формирования и отправки PoD и CoA сообщений настраиваются в Policy Engine.
AAA-сервер предоставляет механизм централизованного управления IP-адресами. Централизованный механизм упрощает процедуры управления пулами IP-адресов, например, исключая необходимость конфигурирования пулов адресов на каждом NAS. Пулы IP-адресов могут быть созданы для каждого отдельного NAS или для группы NAS. Когда абонент устанавливает соединение, для его сессии назначается IP-адрес. Абонент может иметь статический IP-адрес, либо IP-адрес может назначаться из пула адресов AAA-сервером или NAS. Пулы IP адресов могут быть определены в AAA-сервере для каждого NAS.
В состав AAA-сервера входит подсистема управления, выполняющая следующие функции:
Пользователи системы – внутренние пользователи, выполняющие операции в Системе AAA Сервер. Пользователи Системы могут иметь различные права и роли (Администратор, Оператор и т.д.).
Все действия пользователей в Системе логгируются. Информация в лог-файле включает такие параметры как имя пользователя, время соединения, IP адрес, выполненные операции, время отсоединения и т.д. AAA Сервер хранит лог-файлы как минимум 3 месяца (настраиваемый параметр). Могут быть заданы различные уровни логгирования.
Через графический интерфейс пользователя, операторы Системы могут управлять параметрами Системы, такими как: внутренние параметры Системы, шаблоны (преднастроенные политики и правила), политики аутентификации и авторизации, управление пулами IP адресов, управление режимом Proxy и т.д.
Профили абонентов хранятся во внутренней базе данных AAA Сервера. Через пользовательский интерфейс операторы могут управлять абонентскими профилями и выполнять следующие действия:
AAA Сервер поддерживает групповое управление абонентами. Если абонент включен в группу, то к нему будут применяться политики аутентификации и авторизации, назначенные на группу.
AAA Сервер поддерживает протокол SNMP V2. Через SNMP-трапы AAA Сервер может отправлять сообщения, включающие в себя информацию об авариях/предупреждениях, а также статистическую информацию, например, количество полученных access и accounting сообщений в единицу времени, количество отправленных access accept и reject сообщений, и т.д.
Высокая надежность компонент Решения, необходимая для обеспечения доступности систем уровня Mission Critical реализуется с помощью резервирования на следующих уровнях:
Резервирование серверов Системы
AAA Сервер устанавливается как минимум на двух серверах в режиме Active-Active или Active-Standby. Опционально AAA Сервер может быть развернут в кластерной конфигурации с использованием RHEL HA Cluster.
Для обеспечения высокой надежности и доступности данных в Решении используются внутренние диски в конфигурации RAID 1+0. RAID 1+0 – это комбинация RAID 0 и RAID 1. Данная конфигурация обеспечивает надежность хранения данных и высокую производительность одновременно. Процессы репликации используются для синхронизации данных на различных серверах. Опционально AAA Сервер может быть развернут на централизованном дисковом хранилище.
Блоки питания и сетевые карты на серверах Решения резервируются, чтобы гарантировать доступность Решения при сбоях на серверах.
Резервное копирование данных AAA Сервер выполняет резервное копирование необходимых данных, таких как файлы конфигураций, данных из БД и т.д. Автоматический скрипт, исполняемый на серверах AAA, копирует требуемые данные, выполняет их архивирование и отправку на сервера резервного копирования Заказчика.