Яндекс.Метрика

    Песочница

    О фиксации переговоров абонентов сотовой связи

    Все мы слышали о том, что переговоры по мобильному телефону могут записываться… Вот немного расчетов/размышлений по данному вопросу.

    Реально ли построить систему, записывающую и хранящую все разговоры всех абонентов конкретного оператора?

    Оборудование мобильной сети стандартна GSM позволяет организовать запись и прослушивание телефонных разговоров конкретного абонента — или нескольких десятков абонентов. Из этого факта очень часто делается далеко идущий вывод о том, что операторы используют подобную функциональность для того, чтобы записывать и хранить все разговоры своих абонентов за определенный период времени. В случае, если какой-то абонент становится объектом пристального внимания спецслужб, операторы, мол, могут по запросу предоставить имеющиеся записи разговоров чуть ли не полугодовой давности.

    Реально ли это?

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

    Таким образом, полная продолжительность разговоров всех абонентов за один месяц будет составлять:

    51,50 млн х 134 мин = 6,9 млрд мин

    После обработки и оцифровки в мобильном телефоне голосовой сигнал в сети GSM передается в виде цифрового потока со скоростью 9,6 Кбит/с. Таким образом, без дополнительной обработки все звонки абонентов за один месяц составляют довольно значительный объем информации:

    6,9 млрд мин х 60 с х 9,6 Кб/с / (8 б/Б) = 514 Б = 500 ТБ

    Теперь можно подумать о том, насколько сложно (и затратно) будет построение и обслуживание системы, которая:

    1. Записывает исходящие и входящие разговоры всех абонентов внутри конкретной сети;
    2. Делает это достаточно быстро;
    3. Позволяет легко найти любой разговор (по идентификатору абонента и дате, например);
    4. Позволяет хранить информацию в течении минимум трех месяцев;
    5. Работает с коммутационным оборудованием любого поставщика;
    6. Не создает значительной дополнительной нагрузки на сигнальные и голосовые каналы, процессоры коммутаторов и прочего сетевого оборудования, не влияет на способность сети обслуживать звонки;
    7. Достаточно надежна — например, записывает не менее 99% разговоров;
    8. Достаточно безопасна — не допускает утечки конфиденциальных сведений лицам, не имеющим специального разрешения (санкции прокурора, например).

    Что из этого следует:

    1. Записываются все разговоры => Система не должна бояться того, что абоненты — мобильны. То есть, она должна учитывать, что абоненты в процессе разговора перемещаются между базовыми станциями, могут даже перейти в зону обслуживания другого коммутатора, могут перенаправлять звонки, объединять их в конференции, отвечать на несколько звонков одновременно и так далее;
    2. Система работает достаточно быстро => Любая пост-обработка голоса, выполняемая перед записью для хранения должна успевать работать «на лету»;
    3. Возможность найти записанное => Система должна быть снабжена индексом/поисковым механизмом и интегрироваться с системой, хранящей основные данные об абоненте — чтобы учитывать смены номеров телефонов и SIM-карт. Данные о совершенных звонках должны появляться в системе без значительных задержек;
    4. Хранение записанного в течении трех месяцев => Исходя из приведенных ранее расчетов, необходимо минимум 1500 Тб дискового пространства (если не используется пост-обработка голосового сигнала);
    5. Совместимость с решениями разных производителей => Необходим специфицированный интерфейс, который гарантировано будет в наличии у всех ведущих производителей коммутационного оборудования;
    6. Отсутствие значительной нагрузки => Нельзя нагружать call processor-ы в коммутаторах или канальное оборудование нехарактерными для них задачами вроде компрессии голоса в MP3;
    7. Надежность => Необходимо резервирование для каналов связи, электропитания и жестких дисков;
    8. Безопасность => Необходим централизованный механизм управления и контроля за доступом к записанной информации.

    Чтобы быть в курсе перемещений мобильных абонентов и адекватно на них реагировать система должна подключаться к коммутаторам (а не к, скажем, контроллерам базовых станций), так как именно коммутаторы отвечают за всю функциональность, связанную с мобильностью абонентов. Сеть, способная обслужить 50 млн абонентов, будет иметь в своем составе около 50 среднестатистических коммутаторов.

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

    Сначала представим себе один несколько возможных сценариев обслуживания звонка абонента A абоненту B.

    Сценарий 1: На протяжении всего звонка абонент А находится в зоне обслуживания коммутатора X, а абонент B — в зоне обслуживания коммутатора Y. При этом разговор можно записать на любом из коммутаторов, по нашему выбору. Если запись ведется на обоих коммутаторах, то в результате будут получены две абсолютно идентичных записи и перед складированием в центральное хранилище одну из них можно (и нужно) выкинуть.

    Сценарий 2: На протяжении всего звонка абонент А находится в зоне обслуживания коммутатора X, а абонент B — в зоне обслуживания коммутатора Y, но при этом звонок проходит через промежуточный коммутатор Z. Сценарий очень похож на предыдущий, за исключением того, что идентичных копий записи будет три.

    Сценарий 3: В начале разговора абонент А находится в зоне обслуживания коммутатора X, а абонент B — в зоне обслуживания коммутатора Y, а в процессе разговора они перемещаются: абонент А переходит в зону обслуживания коммутатора T, а абонент — в зону обслуживания коммутатора S. В этом случае полную запись разговора придется собирать из частей. Всего частей будет четыре, и из них можно будет собрать две полных копии записи четырьмя возможными способами.

    Если у честь, что в ходе звонка оба абонента могут использовать услуги конференц-связи и удержания звонка, а промежуточных коммутаторов может быть более одного (причем, они могут меняться в процессе перемещения абонентов), то становится понятно, что в общем случае для сбора полной записи разговора надо решать задачу корреляции данных из разных источников. Похожую работу выполняют системы биллинга межоператорских расчетов, архитектуру которых можно взять в качестве отправной точки для проектирования нашей гипотетической системы глобального прослушивания. Необходимо сделать выбор между двумя вариантами:

    * Либо собирать все накопленные данные в какое-то общее централизованное хранилище и там выполнять их обработку. Это упрощает обработку и обслуживание, но требует значительных вычислительных мощностей в центре обработки;
    * Либо собирать в центральное хранилище только метаданные о звонке (кто, кому, когда звонил) и коррелировать их для того, чтобы понять, какие части звонка с каких коммутаторов дадут в сборе полную запись разговора. Сами записи разговоров при этом можно хранить распределенно. Результаты корреляцию используются для извлечения из распределенного хранилища частей конкретного разговора. Такой подход снижает требования к вычислительным мощностям в каждом конкретном узле системы, но значительно увеличивает ее сложность и затрудняет обслуживание и «поддержание на плаву».

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

    Для простоты предположим, что нагрузка на коммутаторы распределена равномерно и непрерывно. Соответственно, 500 Тб разговоров распределены между 50 коммутаторами, и на каждый приходится по 10 Тб голосового трафика в месяц. Чтобы забирать такое кол-во информации, нужно иметь канал пропускной способностью:

    10 * 10244 / (3600 с * 24 часа * 30 дней) * 8 бит в байте
    = 4241943 бит/сек
    = 32 мегабита в секунду


    Итого, записываем в смету 50 таких каналов.

    Далее, чтобы обеспечивать надлежащее качество хранения данных, нужно иметь запасные носители, в объеме минимум 5% от используемых носителей для замены вышедших из строя.

    Сколько же жестких дисков понадобится? От 3000 винчестеров по 500 Гб до 6000 (если мы пишем все подряд без предобработки и каждый разговор записываем по два раза — для звонящего и принимающего). Соответственно, запас — это еще 150-300 таких же винчестеров ежегодно.

    Кроме того, необходимо объединить такое количество винчестеров в индексируемое хранилище с каким-то пользовательским интерфейсом доступа. Хранилище должно обеспечивать бесперебойную запись разговоров со всех коммутаторов (со скоростью 1600 мегабит в секунду), обновление «на ходу» поисковых индексов и обслуживание запросов по поиску и извлечению записанных разговоров.

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

    * Носители: 3000-6000 винчестеров по 500 Гб, либо же в 3 раз (грубо) меньше винчестеров при условии сжатия голоса в 8 kbps mp3 — так как кодек GSM уже осуществляет компрессию голоса большего выигрыша достичь не удастся. Естественно, взамен «сэкономленных» винчестеров необходимо добавить процессоры для выполнения сжатия;
    * Инфраструктура для построения 50 каналов связи по 32 mbps;
    * Сервера, обеспечивающие интерфейс к хранилищу и его функционирование (индексация, поиск нужных записей, поиск и удаление старых записей, интеграция с системой управления абонентами);
    * Электропитание и климат-контроль для всего оборудования;
    * Место в серверны залах для размещения оборудования;
    * Инфраструктура для эксплуатации всей системы (обслуживающий персонал, склады, логистика ...)

    Понятное дело, что технически все это реализуемо. Вопрос лишь в экономической целесообразности.

    Какой уважающий себя оператор выложит деньги на всю эту «роскошь» просто потому, что его об этом настойчиво попросили — учитывая, что отдачи от подобных вложений не будет? Насколько мне известно, нигде нет законов, которые обязывали бы операторов обеспечивать такой «сервис», так что речь может идти только о «настойчивой просьбе» со стороны государства или правоохранительных органов, но не более того.

    У какого оператора хватит локальной технической экспертизы построить и поддерживать решение подобного масштаба силами исключительно своих сотрудников? Если вам кажется, что это очень просто и экономически выгодно, задумайтесь над тем, почему крупные операторы связи не занимаются поголовно созданием своих собственных биллинговых, финансовых и ERP систем.

    Где поставщики и производители подобных готовых решений для тех операторов, которые не могут разработать подобную систему самостоятельно? В конце концов, информация по реально существующим системам прослушивания не является тайной за семью печатями — чтобы в этом убедится, достаточно поискать в интернете по ключевым словам «СОРМ» или «lawful interception».


    Ответив для себя на эти вопросы, Вы сможете самостоятельно решить, возможно ли создание системы, записывающей все разговоры по мобильному телефону, или нет.