TR-069 (сокращение от англ. technical report 069) – спецификация, описывающая протокол CWMP (аббревиатура от англ. CPE WAN management protocol). Он позволяет корректно и экономически эффективно удаленно выделять и освобождать ресурсы, осуществлять мониторинг широкого спектра устройств и систем, установленных дома или в офисе, управлять ими и контролировать их работу. Согласно результатам исследования Ovum 2011 года, TR-069 получил широкое распространение на всех континентах: 150 млн устройств управляются по этому протоколу, и их количество быстро растет!
В настоящее время TR-069 — мировой стандарт, на который опираются многие отраслевые организации, включая 3GPP, ATIS, CCSA, ETSI и HGI. Недавно он получил официальную рекомендацию ITU-T Recommendation (G.9980), а в 2010 году был одобрен ETSI в качестве европейского стандарта. TR-069 используется также в архитектуре ETSI Machine-to-Machine (M2M) как протокол управления устройствами. В ноябре 2012 года Broadband Forum получил за TR-069 престижную награду InfoVision «За выдающийся вклад в обеспечение широкополосного доступа» (Outstanding Contribution to Broadband Success).
Домашние сети становятся все более масштабными и сложными. Они связывают разнообразные взаимодействующие между собой устройства: игровые консоли, телеприставки, телефоны VoIP и ПК. Учитывая то, что ежедневно в системе безопасности выявляется множество уязвимостей, наличие которых может повлиять на потоки передаваемого в домашней сети трафика, этими устройствами необходимо управлять, чтобы обеспечить надлежащее качество сервиса и повысить надежность сети. Эта задача упрощается за счет предоставления посредством TR-069 единой платформы для эффективного управления всеми сетевыми устройствами .
CPE (англ. customer premises equipment) — оборудование, установленное в помещении абонента/клиента.
WAN (англ.wide area network) — сеть, охватывающая большие территории и включающая в себя большое число компьютеров.
Стандарт TR-069 опубликован в мае 2004 года консорциумом «DSL Forum» (переименованным в 2008 году в «Broadband Forum» (англ.)).
История версий:
- май 2004 года: принятие TR-069;
- 2006 год: принятие поправок (англ. amendments);
- 2007 год: принятие поправок;
- 2010 год: принятие поправок;
- июль 2011 года: принятие поправок и выпуск стандарта версии 1.3;
- ноябрь 2013 года: принятие поправок и выпуск стандарта версии 1.4
Цель стандарта — стандартизация и унификация принципов и подходов к управлению оборудованием абонентов/клиентов, выпускаемым различными производителями.
CWMP — протокол прикладного уровня модели OSI.
CWMP передаёт данные с использованием протокола SOAP(англ. simple object access protocol) — надстройки над HTTP. В протоколе SOAP данные кодируются в формате XML.
Для защиты соединения используется протокол SSL или TLS.
Согласно спецификации на территории провайдера должен находиться сервер ACS (англ. auto configuration server, сервер автоконфигурации). Задачи сервера:
- организация взаимодействия с оборудованием абонентов/клиентов;
- обработка запросов от устройств;
- подключение дополнительных сервисов.
Сессия по протоколу CWMP может быть инициирована как со стороны оборудования абонентов/клиентов (CPE), так и со стороны сервера ACS (оператора/провайдера).
Чтобы протокол CWMP работал, устройства абонента/клиента (например, modem, bridge, gateway, router, IP-phone, set-top box и др.) должны иметь IP-адрес.
Взаимодействие STB – ACS-сервер организовано по технологии клиент-сервер. STB (клиент) автоматически подключается к ACS-серверу, как только появляется сетевое соединение. Далее подключение STB к серверу происходит с интервалом 60 секунд. При подключении через RPC-метод Inform на сервер передаются следующие данные: IP-адрес приставки в локальной сети, серийный номер, производитель, модель, Product class, версия программного обеспечения, версия аппаратного обеспечения, Ethernet MAC-адрес, реальный IP-адрес, название сети в случае подключения по Wi-Fi (WLAN SSID), логи устройства.
Возможности CWMP:
- начальная настройка устройства при его загрузке и внесение изменений в настройки уже работающего устройства;
- удалённое обновление ПО/прошивки;
- удалённый доступ к log-файлам и счётчикам производительности; удалённая диагностика состояния устройства;
- удалённое выполнение хранимых процедур.
Оператор/провайдер может выбрать оборудование абонентов/клиентов (СРЕ) для обслуживания по различным условиям, например:
- может выбрать конкретное устройство;
- может выбрать все устройства одного производителя;
- может выбрать все устройства одной модели;
- может выбрать все устройства с одной версией ПО/прошивки.
Возможность удалённого доступа имеется при любом способе приобретения устройств абонентами/клиентами:
- аренда оборудования при подписании договора;
- покупка оборудования абонентом/клиентом при подключении в виде комплекта у оператора/провайдера;
- самостоятельная покупка оборудования абонентом/клиентом (в этом случае оборудование изначально не настроено для работы в сети оператора/провайдера).
Конфигурация клиента TR-069 осуществляется путем добавления в build.prop файла следующих полей:
- ro.stb.management.s0 – поле содержащее ссылку на сервер. Ссылку на сервер можно указать как http-, https-ссылку, IP-адрес или hostname;
- ro.stb.management.s1 – логин, который используется для авторизации на сервере по стандарту TR-069;
- ro.stb.management.s2 – пароль, который используется для авторизации на сервере по стандарту TR-069;
- ro.stb.management.s3 – логин, который используется для авторизации на приставке по стандарту TR-069;
- ro.stb.management.s4 – пароль, который используется для авторизации на приставке по стандарту TR-069;
- ro.stb.management.s5 – логин, который используется для Basic или Digest аутентификации по http/https протоколу;
- ro.stb.management.s6 – пароль, который используется для Basic или Digest аутентификации по http/https протоколу;
- ro.stb.management.s7 – локальный полный путь к стороннему SSL сертификату, если таковой имеется;
Протокол CWMP обеспечивает высокую степень надежности операций по взаимодействию, которые его используют. Протокол CWMP позволяет обеспечить безопасность и конфиденциальность транзакций между STB и ACS, а также предоставляет возможность использования различных уровней аутентификации. Протокол поддерживает такие механизмы безопасности:
- SSL/TLS для защиты взаимодействий CPE и ACS на транспортном уровне. Это обеспечивает конфиденциальность транзакций, целостность данных и возможность аутентификации между CPE и ACS на основе сертификатов.
- Защиту на уровне HTTP.
Клиент TR-069 поддерживает защищенное соединение по SSL/TLS. В случае, если сертификат является самозаверенным (self-signed), его можно положить на устройство и указать к нему полный путь в поле “ro.stb.management.s7”. Таким образом, возможно использование защищенного соединения при помощи этого сертификата.
Клиент TR-069 поддерживает Basic и Digest аутентификацию на всех этапах соединения с сервером. Для этого используются поля “ro.stb.management.s5” и “ro.stb.management.s6”. Используемый тип аутентификации зависит от конфигурации сервера.
В полях “ro.stb.management.s3” и “ro.stb.management.s4” указываются логин и пароль для аутентификации сервера на устройстве. Если данные сервера неверные, устройство игнорирует это соединение.