- Главная
- Форум
- Блог
- Статьи
- FeedDemon - чтение RSS
- GSM связь (Сотовая связь)
- SIM: что такое IMSI, и чем он отличается от серийного номера SIM-ки
- Аутентификация в GSM: как сеть узнает, что вы - это вы.
- Большой Брат подслушает вас даже через выключеный телефон?
- В продажу поступили фальшивые елочные игрушки ...
- Взаимодействие SIM-карты с внешним миром (SIM-ME interface, SIM-Toolkit API, JavaCard API)
- Как настраивают/программируют рейтинг и биллинг.
- Как работает "сохранение номера" (mobile number portability)
- Как устроен сервис realtime pre-paid связи изнутри (IN-платформы, SSP/SCP, ...)
- Как устроена услуга "Вам звонили"?
- Какое отношение верблюд имеет к услуге роуминга для pre-paid абонентов?
- Категории и приоритеты обслуживания абонентов
- Легенда о "триангуляции" в сети GSM и ее разоблачение
- Легко ли самому стать Большим Братом?
- Методы определения местоположения абонента сети GSM
- Можно ли использовать два телефонных номера на одной SIM-карте?
- Отключение шифрования: что означает "замочек" на экране сотового?
- Откуда берется название сети на экране телефона?
- Почему 160 символов SMS - это не то же самое, что и 160 байт, переданых по GPRS
- Почему биллинг делается так долго?
- Почему в смс влазит 160 символов, а не, скажем, 255?
- Реальное и кажущееся "воровство денег" мобильными операторами
- Регистрация телефона в сети. Location Update. "Тыгдым-тыгдым-тыгдым"
- Синхронизация часов и сигналы точного времени
- Стоимость системы Тотального Прослушивания Всего и Всех
- Тарифы на мобильную связь: откуда что берется
- Телефонные "разводы" с подменой номера звонящего.
- Успешная организация location-based services без участия оператора
- Что проще сделать в Новогоднюю ночь - дозвониться или прислать SMS?
- Что такое SIM-карта и зачем она нужна?
- Это "жжж" неспроста, или сколько же "ж" в 3G?
- WI-FI связь, правовые вопросы
- Администрирование и скрипты
- Веб платформы
- История техники
- Общие вопросы
- Россия, влажность, вентиляция. Или "все что нужно знать о влажности в серверной".
- Системы безопасности и замки
- Статьи по ИТ
- Статьи по электротехнике
- Телефония, связь, сети
- Штрих-кодирование и RFID
- Маленькие хитрости
- Ссылки
- Документация
- Справочники
Легенда о "триангуляции" в сети GSM и ее разоблачение
Источник: Про GSM из первых рук
Автор: Дмитрий Астапов
Автор: Дмитрий Астапов
Вопрос: "чисто теоретически, если можно стандартными средствами определить расстояние от БС до телефона, то по расстояниям от трех БС можно получить точные координаты аппарата, а во расстоянию от двух БС-2 точки, в одной из которых будет находиться телефон, так?".
Действительно, подобное мнение широко распространено на просторах интернета. Так как часть этого утверждения - сущая правда (стандартными средствами иногда можно определить расстояние от телефона до БС (тсс! ни слова о точности измерения!)), кажется, что все утверждение целиком - тоже правда. Так ли это? Давайте разберем его на части и исследуем подробнее.
Сразу оговорюсь. Я в курсе, что существуют A-GPS, TOA, AOA, и другие страшные слова. Я в курсе, что для ряда практических задач достаточно знать местоположение телефона с точностью до location area. Я в курсе, что можно послать на телефон SMS или позвонить, и при этом обновится информация о camped cell, что тоже может быть приемлимым способом "засечь" местоположение конкретного телефона для каких-то конкретных применений. Данный пост не ставит своей целью показать, что все эти способы - чушь и не могут существовать, в конце-концов - я сам писал о способах определения географического положения абонентов. Данная статья посвящена одной вполне конкретной легенде: что, мол, базовые станции GSM-сети триангулируют местоположение телефона (вариант - всех телефонов в зоне покрытия) и эта возможность является стандартной функцией любой BS/любой GSM сети.
Начнем с аналогии (кто же из нас не любит начать с аналогии?). Рассмотрим такое утверждение: "поскольку при помощи ping-а можно определить расстояние от одного компьютера до другого, то по расстояниям от трех компьютеров (зная их координаты), можно получить точные координаты искомого компьютера". Не торопитесь кричать: "Бред!".
А что если мы возьмем четыре компьютера, соединим их проводами (если надо - с репитерами) по схеме "звезда" (один - в центре, три - соединены с ним), причем провода проложим строго по прямой, и обеспечим такую длину проводов, чтобы ошибка измерения времени пинга не влияла существенно на вычисление расстояния?
Сможем ли мы в таком случае определить координаты центрального компьютера, зная координаты периферийных и пользуясь только ping-ом? Сможем. Означает ли это, что подобный способ можно использовать всегда? Безусловно, нет. Во-первых, провода редко соединяют два компьютера строго по прямой, во-вторых - мы, как правило, не знаем точных координат тех машин, с которых мы пингуем, и т.п. Думаю, вы сами сможете продолжить этот список.
Теперь вернемся к исходному утверждению. Можно ли "стандартными средствами определить расстояние от БС до телефона?". Короткий и ничего не объясняющий ответ - "можно". Зададимся дополнительными вопросами:
- Кто сказал, что это будет кратчайшее расстояние?
- Кто занимается измерениями - базовая или телефон?
- С какой точностью будет произведено измерение?
Ответы на эти вопросы будут такими: Действительно, базовая станция в процессе обслуживания разговора занимается расчетом величин т.н. timing advance и передает их телефону. Телефон использует их, чтобы корректировать ход своего clock timer-а так, чтобы у него и у базовой "часы тикали одинаково". Действительно, базовая "замеряет" время прохождения сигнала от базовой до телефона, но ей абсолютно пофиг, сколько раз по пути следования сигнал отразился от зданий и т.п.
Итак, вот первая ложка дегтя: несмотря на то, что базовая измеряет время прохождения сигнала от себя до телефона, делает она это только в процессе обслуживания звонка и мы не можем использовать это значение для рассчета расстояния от базовой до телефона по прямой. Плюс ко всему, даже в идеальных условиях TA дает точность измерения до 500 метров.
Едем дальше. Знает ли базовая, сколько телефонов находятся в зоне ее покрытия в режиме ожидания и каково время прохождения сигнала до них? Нет и нет. При выборе в качестве camped cell любой соты в пределах текущей location area телефон не должен (и не будет) уведомлять сеть о своем решении (см. статью про location update).
Знает ли телефон, какие базовые находятся в "зоне слышимости" и каково время прохождения сигнала до них? Да и нет. Телефон может измерить уровень сигнала базовой (и занимается этим все время), но он не знает/не может измерить величину затухания сигнала.
Даже если телефон мог бы измерить уровень затухания и/или время прохождения сигнала до соседних базовых, мог бы он сам вычислить свои координаты? Нет, т.к. он не знает координат базовых.
О! Идея! Раз базовые (или BSC - не суть важно) "знают" свои координаты и "знают", какова мощность их передатчиков, а телефон "знает", насколько хорошо он их "слышит", давайте каким-то образом сведем эти данные в одну точку, и там проведем расчет координат.
Допустим, в SIM-карте телефона будет специальный applet, которых по сигналу извне (или с какой-то периодичностью) будет передавать по RACH пакетик, в котором будут CellID и RxLevel соседних базовых, а BSC будет получать эти пакетики, и на их основании высчитывать координаты телефона и передавать их дальше, какому-то выделенному серверу (для простоты, назовем его LBS), который будет хранить координаты и при нужде отдавать другим системам. А если какой-то телефон надумает позвонить или принять звонок, BSC дополнительно скорректирует уже имеющиеся координаты с учетом TA.
Смотрите, мы построили систему, которая по запросу к LBS-серверу может отдать нам координаты произвольного телефона в этой GSM-сети (при условии наличия в его SIM-карте нужного нам applet-а). Казалось бы, победа?
А теперь давайте посчитаем, что нам пришлось (пусть и умозрительно) модифицировать в обычной GSM Phase 2+ сети, чтобы получить такой результат:
- Добавить в SIM-карту applet
- Модифицировать все BSC и/или BS
- Добавить LBS-сервер и обеспечить его каналами (физическими или логическими) связи с BSC.
Другими словами - мы разработали и "внедрили" на сети GSM-оператора решение для предоставление location-based services.
А теперь вернемся к начальному утверждению. Как видно, понадобилось существенно модифицировать сеть для того, чтобы превратить теоретическую возможность в возможность практическую. Очевидно, что далеко не все GSM-операторы проделали такую (или подобную описаной) работу и обладают возможностью определять местоположение вашего телефона.
Соответственно, если не тыкать пальцем в конкретного оператора, а говорить о GSM как о технологии вообще, то лучше ограничится тем, что "стандартные возможности сети GSM допускают построение системы определения местоположения абонента на основании измерения параметров прохождения радиосигнала, но стандарта GSM Phase 2+ на такие системы/технологии - нет". И не более того.
Литература:
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Последние комментарии
3 минуты 48 секунды назад
10 часа 18 минуты назад
3 дня 21 часа назад
4 дня 2 часа назад
6 дня 6 часа назад
6 дня 14 часа назад
1 неделя 16 часа назад
1 неделя 5 дня назад
2 недели 2 дня назад
2 недели 2 дня назад