Echtzeitkommunikation: WebRTC ist offizieller Standard bei W3C und IETF

Gemeinsam erklären das W3C und der IETF die Kombination aus JavaScript-APIs und Kommunikationsprotokollen WebRTC zum Standard.

In Pocket speichern vorlesen Druckansicht 15 Kommentare lesen

(Bild: sdecoret/Shutterstock.com)

Lesezeit: 3 Min.
Von
  • Rainald Menge-Sonnentag
Inhaltsverzeichnis

Das Word Wide Web Consortium (W3C) und die Internet Engineering Task Force (IETF) haben in einer gemeinsamen Erklärung WebRTC zum Standard erhoben. Das Kürzel steht für Web Real-Time Communications, und die Umsetzung besteht aus JavaScript-APIs und einer Reihe von Kommunikationsprotokollen. Die Technik ermöglicht die Echtzeitommunikation zwischen Clients im Web.

Ein wesentlicher Anwendungsbereich für WebRTC sind Videokonferenzen, die im letzten Jahr gezwungenermaßen deutlich an Bedeutung gewonnen haben. Das Protokoll hat in dem Bereich seine Wurzeln: Google hatte 2010 die auf Videoconferencing ausgerichtete Firma Global IP Solutions beziehungsweise GIPS übernommen, die wesentliche RTC-Komponenten entwickelt hat.

Auf dem Weg zur Webtechnik WebRTC erkannte der Internetriese schnell, dass eine sinnvolle Kommunikation nur mit Standardisierung möglich sei. Daher bezog er das W3C und die IETF in die Standardisierung ein. Ein Jahr nach der GIPS-Übernahme veröffentlichte Google schließlich das Open-Source-Projekt WebRTC, und Ericsson Labs baute eine erste Implementierung mit einer modifizierten WebKit-Library. Ebenfalls bereits 2011 veröffentlichte das W3C den ersten Entwurf (Draft) für die Spezifikation.

WebRTC ist nicht auf Videokonferenzen beschränkt, sondern allgemein auf die Client-Kommunikation ausgelegt. Beispiele für weitere Anwendungen sind Datentransfer, Desktop-Sharing und Chat.

Ein wesentlicher Vorteil von WebRTC ist, dass der einheitliche, offene Standard Anwendungen ohne zusätzliche Plug-ins und den damit potenziell verbundenen Sicherheitslücken ermöglicht. Alle großen Browser unterstützen WebRTC. Neben Googles eigenem Chrome waren Opera und Mozilla Firefox früh dabei, und seit 2017 sind sowohl Microsoft Edge als auch Apples Safari-Browser im Boot.

Aus Entwicklersicht bringt WebRTC einen einfachen Weg, Anwendungen mit Echtzeitkommunikation zu bauen. Sie finden einheitliche APIs und müssen sich nicht in komplexe Protokolle und individuelle Schnittstellen einarbeiten. So können sie Datentransfer, Videostreams oder Datentransfer direkt über die JavaScript-APIs und den zugehörigen Realtime Media Stack nutzen.

Die API bietet spezialisierte Objekte wie RTCPeerConnection für die Peer-to-Peer-Verbindung zur Audio- und Videokombination, das sich selbsttätig um das Verwalten der Codecs und die verschlüsselte Kommunikation kümmert. Das Objekt RTCDataChannel verwaltet die bidirektionale Datenkommunikation zwischen zwei Peers.

Neben der JavaScript-API existiert in WebRTC eine C++-API, die aber nicht für Anwendungsentwickler, sondern für Browser-Hersteller gedacht ist.

(Bild: webrtc.github.io)

Im Unterschied zu anderen Kommunikationsansätzen wie dem von der Moving Picture Experts Group (MPEG) entwickelten Dynamic Adaptive Streaming over HTTP (DASH) zum Streaming von Medieninhalten gibt der WebRTC die Übertragung in Echtzeit vor. Der Standard setzt zudem auf sichere Übertragung mit DTLS (Datagram Transport Layer Security) und SRTP (Secure Real-Time Transport Protocol).

Das W3C und die IETF haben im Zuge der Standardisierung die Pläne für die Weiterentwicklung von WebRTC genannt. Unter anderem sollen künftig auch Server-vermittelte Videokonferenzen auf Ende-zu-Ende-Verschlüsselung setzen. Außerdem ist eine Schnittstelle zur Livebearbeitung von Audio- und Video-Feeds beispielsweise über Machine Learning geplant, und das WebRTC soll die Anforderungen im Internet der Dinge unter anderem durch stromsparende Maßnahmen berücksichtigen.

Details zur offiziellen W3C Recommendation und IETF-Standardisierung für WebRTC lassen sich der gemeinsamen Pressemitteilung der Organisationen entnehmen. Die Spezifikation zu WebRTC 1.0 findet sich ebenso beim W3C wie ein Dokument zu den Plänen für die nächste Version.

(rme)