# TR-069

TR-069 ist ein durch das Broadband Forum definiertes Protokoll zum Datenaustausch zwischen dem Server eines Kommunikationsanbieters und einem damit verbundenen Endgerät beim Kunden. Ein typischer Anwendungsfall ist die Fernkonfiguration von DSL-Routern durch einen Breitbandanbieter. Technisch gesehen handelt es sich um ein bidirektionales SOAP-Protokoll für die HTTP-basierte Kommunikation zwischen Kundengeräten (engl. Customer Premises Equipment, kurz CPE) und Auto-Configuration-Servern (ACS). Es ist daher auch bekannt als CPE WAN Management Protocol (CWMP). Inzwischen wird das in die Jahre gekommene Protokoll durch die User Services Platform und den zugehörigen technischen Standard TR-369 abgelöst.

## Fernzugriff auf Konfiguration

Im DSL-Breitbandmarkt stellt TR-069 den dominierenden Anschaltstandard für Zugangsgeräte dar. Die technischen Spezifikationen (TR-069) werden vom Broadband Forum veröffentlicht.
Das Protokoll umfasst Methoden für die Autokonfiguration als auch zur (An-)Steuerung anderer CPE-Funktionen in einem einheitlichen Framework. Dabei werden verschiedene Arten von CPEs unterschieden. Beim Grundtyp handelt es sich um Breitband-/DSL-Ausrüstung, wie z. B. DSL-Router.
TR-069 im TCP/IP-Protokollstapel: :
| Anwendung | TR-069 | TR-069 | TR-069 | TR-069 | TR-069 |
| Anwendung | HTTP | HTTP | HTTPS | HTTPS | … |
| Transport | TCP | TCP | TCP | TCP | TCP |
| Internet | IP (IPv4, IPv6) | IP (IPv4, IPv6) | IP (IPv4, IPv6) | IP (IPv4, IPv6) | IP (IPv4, IPv6) |
| Netzzugang | Ethernet | Token Bus | Token Ring | FDDI | … |
Mit dem Markterfolg von Breitbandzugängen zum Internet steigt die Anzahl sonstiger Zugangsgeräte (z. B. neben Modems und Routern auch Residential Gateways, Set-Top-Boxen, Spielkonsolen, IP-Telefone und IP-TV-Streaminglösungen).
Da sich die Komplexität dieser Geräte erhöht, überfordert deren Konfiguration viele Benutzer. Daher wurde mit TR-069 ein Protokoll entworfen, das einem Zugangsprovider die Fernwartung dieser Geräte ermöglicht. Via TR-069 können Endgeräte Kontakt zum Auto-Configuration-Server (ACS) des Providers aufnehmen und automatisch konfiguriert werden.
Neben dem TR-069-Kernstandard für DSL-Router gibt es Nebenstandards für andere Endgeräte hinter der NAT/Firewall des DSL-Routers – und mit dem Zugriff auf diese. Das Broadband Forum möchte den Standard TR-069 auch auf Glasfaser-Technologien und Femtocell-Router ausdehnen.

## Sicherheit

TR-069 beschneidet die Privatsphäre und den Datenschutz der Endanwender. Es erlaubt dem Provider, automatische Aktualisierungen in DSL-Router einzuspielen. Diese können sogar zielgerichtet für bestimmte Benutzer oder Benutzergruppen eingerichtet werden. Insbesondere vor dem Hintergrund der „Online-Durchsuchungen“, von Abhörbefugnissen und ähnlichem kann das für den Benutzer gravierende Folgen haben. Um datenschutzrechtlich auf der sicheren Seite zu stehen, bieten DSL-Router deshalb in der Konfigurationsoberfläche die Möglichkeit, „Anbieterdienste“ zu aktivieren oder zu deaktivieren. Im Fall einer Deaktivierung ist der Kunde allerdings selbst dafür verantwortlich, seine CPE-Firmware stets aktuell zu halten (Schutz gegen Cyberangriffe).
Zudem ermöglicht es TR-069 auch, andere Geräte zu konfigurieren, die sich im „sicheren Bereich“ hinter der Box oder dem Modem befinden, also hinter der Firewall. Durch Fernzugriff könnten so auch Daten auf bestimmten Kundengeräten, auf die der Netzbetreiber Zugriff hat, geändert oder gelöscht werden. Durch sein Funktionsprinzip stellt TR-069 daher eine Backdoor dar, deren Existenz vielen Endkunden nicht bekannt ist und über deren Möglichkeiten sie sich nicht bewusst sind.
Auf der anderen Seite erlaubt das Protokoll dem Provider z. B. Sicherheitsupdates automatisch auf ein Gerät einzuspielen und so Sicherheitslücken auch für technisch nicht versierte Benutzer zu schließen, für die ein selbst durchgeführtes Firmwareupgrade zu kompliziert wäre.
Die TR-069-Spezifikation empfiehlt, die Verbindungen zwischen Provider und Endgerät per SSL/TLS zu sichern.

## Von TR-069 unterstützte Funktionen

* Autokonfiguration und dynamische Dienstaktivierung
** Initiale CPE-Konfiguration
** Remote-CPE-Konfiguration
* Firmware-Management
** Versionsverwaltung
** Aktualisierungsverwaltung
* Passwörter des Gerätes ändern/zurücksetzen
* Status- und Leistungskontrolle
** Logdateiauswertung und dynamische Mitteilungen
* Diagnose
** Konnektivität und Service-Kontrolle
** 100%ige Interoperabilität zwischen Management-Server und CPEs.
In Zukunft wird TR-069 über reine Anschaltstandards hinaus auch viele Zusatzfunktionen der CPEs steuern, wie zum Beispiel:
* Abfrage der Gerätefunktionen
* Informationsabfrage, Diagnose, Status und Leistungswerte
* Automatische Ereignis-getriggerte Alarmfunktionen
* Unabhängiges Gateway-Daten-Modell; in Verbindung mit TR-064 erweiterbar, um zusätzliche Geräte und Funktionen einzubinden
* Das Router-Frontend (die Bedienoberfläche) ist zur Konfiguration nicht unbedingt erforderlich, alle Funktionen können vom Management-Server überwacht und gesteuert werden.
Es gibt auch erste Ansätze, die die Funktion eines TR-069-Servers mit den Möglichkeiten von OSGi und/oder OMA-DM (beides sind bestimmte Softwarestandards) kombinieren. OSGi kann dabei z. B. als SOA dienen, die das Client-Framework auf dem Router bildet, auf dem TR-069 selbst, sowie andere – ggf. kostenpflichtige – (Mehrwert)dienste dynamisch installiert und administriert werden können. Das ist besonders dann interessant, wenn inkrementelle Aktualisierungen der Routersoftware möglich sein sollen oder wenn die Fernwartungsmöglichkeiten von TR-069 nicht ausreichen. Da es sich bei OSGi um ein Framework auf Java-Basis handelt, besteht auch ein natürlicher Bezug zum objektorientierten SOAP-Protokoll.

## Spezifikation

Das Broadband Forum veröffentlicht bereits verabschiedete Standards, sogenannte TRs (Technical Reports) auf seiner Webseite.
Die Entwürfe sind nicht öffentlich und werden als Working Text (WT) oder Proposed Draft (PD) bezeichnet. Working Texts sind Entwürfe zu Standards und werden in der Regel zu TRs. Proposed Drafts sind weitere Dokumente der Arbeitsgruppen, die interne Verwendung finden (z. B. PD-128, Interoperabilitäts-Testplan für TR-069-Plugtests), sie können aber auch eine Vorstufe zu Working Texts sein.
Die Nummerierung der Standards ist dreistellig und linear, d. h., sie beginnt bei 001 und wird fortlaufend hochgezählt. Wird ein WT zum TR, ändert sich die Nummerierung nicht. Zum Teil werden Nachträge (Amendments) unter der gleichen Nummer mit dem Zusatz „Amendment“ und einer weiteren Nummerierung (Amendment 1, …) versehen, die das vorherige Dokument ersetzen. Dafür können zum Beispiel, trotz verabschiedetem TR, WTs mit gleicher Nummer existieren (z. B. TR-106 Amendment 1 und WT-106 für ein Amendment 2 (geplant für November 2008)).