Dienstag, 30. Juli 2013

Swisscom Multicast im LAN

IP-Multicast

Wer Swisscom TV hat, stellt sich vielleicht die Frage welchen Switch man im LAN verwenden kann, damit das Fernsehen weiterhin ein Vergnügen bleibt. Wer sich diese Frage nicht stellt, der ist unter Umständen hier gelandet, weil das WLAN nicht funktioniert so lange man Swisscom TV schaut. Ziemlich sicher bist du über den Begriff Multicast oder IGMP Snooping gestossen...
Wie auch immer. Die Lösung oder Antwort ist relativ simpel. Hier versuche ich mit möglichst einfachen Worten, Multicast und IGMP im Bezug auf Swisscom TV zu erklären, damit jedermann mit einfachen Mitteln wieder Herr der Dinge wird.

"Kurzeinführung"

Es gibt verschiedene Methoden IP Daten zu übertragen. Die gängigste Methode nennt sich Unicast. Hier werden die Daten gezielt von Punkt A nach Punkt B gesendet und umgekehrt. Man könnte im übertragenem Sinne von einer Punkt zu Punkt Verbindung sprechen (auch wenn es im Internet über verschiedene Stationen geht). Im Allgemeinen ebenfalls bekannt ist die Broadcast Übertragung. Sicher kennt jeder das simultane Blinken aller Ports an einem Switch, wenn ein Gerät auf der Suche nach einem anderen oder nach gewissen Services ist. Beim Broadcast wird eine Nachricht an alle gesendet, zB. bei einem DHCP Request über IPv4. Da der DHCP Server noch nicht bekannt ist, wird in diesem Fall mal quasi in die Runde gerufen ob sich bitte ein solcher Server melden könnte.
Multicast ist ebenfalls eine Methode der Datenübertragung. Im Gegensatz zum Broadcast wo die Daten an alle gesendet wird und somit auch Ziele erreicht, welche eigentlich gar nicht daran interessiert sind, schränkt sich Multicast auf Empfänger bzw. Empfängergruppen ein welche explizit solchen Multicast Gruppen beitreten wollen oder beigetreten sind. Multicast ist also das Broadcast für interessierte Empfänger und schont somit das Netzwerk vor unnötigem Traffic.

Wie bei Broadcast muss der Sender seine Daten nur einmalig versenden. Die Vervielfältigung der Datenpakete auf einzelne Empfangsziele zB. IPTV Streams auf STB'en, findet dann jeweils nur bei den Routern und Switches statt. Würde man hier Unicast verwenden, so müsste für jede STB welche einen identischen Stream anschaut, nehmen wir mal die Tagesschau um halb acht an, eine separate Verbindung vom Server zur STB gemacht werden. Somit wäre IPTV in hoher Qualität und einer grossen Anzahl an Kunden gar nie möglich gewesen. Die Backbone sowie Server Infrastruktur wäre masselos überfordert. Die Kapazitäten auf dem Netz und die Fähigkeiten der Server und Software werden aber immer besser. So das ein grosser Teil der IPTV Streams nun nach und nach eigentlich in Unicast gesendet werden können. Somit ermöglichen sich auch ganz neue Services wie Replay TV. Was früher nur bei VoD der Fall war, ist bei Replay TV gar nicht anders zu lösen. Hier müssen die Streams in Unicast gesendet werden, da es praktisch unmöglich ist, dass 2 oder mehr Empfänger die genau gleiche Sendung mit dem genau gleichen Timestamp gleichzeitig anschauen, was die Anwendung von Multicast verunmöglicht. In einer Zukunft in der die STB'en  keine Harddisk mehr haben "könnten" und sämtliche Streams von der Cloud geliefert werden "würden", wird die Anzahl an Unicast Streams noch mehr zunehmen. Jeder Pausendruck, jede Aufnahme wird sofort als Unicast gesendet werden!
Nichts desto trotz bleibt Multicast ein wichtiges IPTV Mittel, um Bandbreite bei linearen TV Inhalten zu schonen.

Zur Steuerung und Organisation der der Multicast Gruppen wird das Netzwerkprotokoll IGMP verwendet. Im LAN melden die einzelnen Clients ihr Interesse an Multicast-Gruppen am sogenannten IGMP Proxy an oder wieder ab, sofern sie die Gruppe wieder verlassen möchten. Die Daten selber werden über die übliche Transportschicht abgewickelt. Im Falle von IPTV Streams zumeist als verschlüsselte UDP Pakete. Zumeist, weil ein Halunke wie Tux die unverschlüsselten Multicast Quellen nennen könnte, was er aber mit Garantie nicht macht :p so lange die Funktion noch gegeben ist. Danach könnte ich natürlich einen Nachtrags-Post schreiben... sofern es diese unverschlüsselten Streams auf dem BBCS Netz auch tatsächlich gibt :)

Damit Multicast vom Anfang bis zum Ende funktioniert, muss die ganze Kette IGMP fähig sein, also auch die Switches im LAN an welchen Swisscom TV Boxen hängen!

Komm zur Sache, wie ist das mit dem WLAN?

Jetzt könnte man natürlich fragen, was ich hier eigentlich labere? "Ich verwende seit Jahren einen Fr. 30.- Switch und habe keinerlei Probleme!"
Korrekt. Dies ist absolut möglich. Jeder Switch welcher Multicast nicht handeln kann, wandelt die Pakete in Broadcast um. Somit wird im Falle von Swisscom TV das ganze Netz mit IPTV Traffic "geflutet". Dies muss abgesehen von hässlichem Netzwerken und einem wie verrückt blinkendem Switch keinen grossen Einfluss haben. Hat man aber an solch einem gefluteten Switch einen Access Point in Betrieb, so kann der Traffic auch über dessen WLAN weiter verbreitet werden. Die im WLAN bereits schon knappe Bandbreite wird nun durch den eigentlich unangeforderten IPTV Traffic zugemüllt. Effekt ist, dass Wireless Clients keine oder nur eine stark eingeschränkte Bandbreite für den restlichen Traffic haben.

Die Lösung

Die Lösung ist einfach, verwende einen Switch welcher das IGMP Snooping korrekt handelt :)
Schaut man die Changelogs der Hersteller an und beobachtet die Probleme auf dem Markt, so scheint dies aber gar nicht so einfach zu sein. IGMP verwenden mittlerweile unzählige Anwendungen, die Hersteller scheinen so ihre liebe Mühe damit zu haben.
Im Falle von Swisscom TV ist die Lösung aber wirklich einfach. Mit ein klein wenig Stolz präsentiere ich die Netzwerk Verteiler Box von Swisscom, bekannt auch mit dem original Namen Netgear GS105E. Stolz bin ich ein wenig, weil Verantwortliche bei der Swisscom, nach diesem kleinen Thread in der Supportcommunity Kontakt zu mir aufnahmen und dieses Gerät tatsächlich ins Sortiment nahmen. Vermutlich hätten sie es früher oder später auch ohne diesen Thread gemacht. Ich gebe mir trotzdem den selbsternannten Titel " Godfather of the Network Distribution Box". Etwas Positives in der Zuckerbrot und Peitschen Beziehung welche ich mit der Swisscom pflege ;)

Mit dem Netgear GS105E war es erstmals möglich den IPTV Stream kostengünstig und mit Gigabit Speed zu handeln. Hast du dein LAN im Griff, ermöglicht dies in direkter Folge auch den Einsatz eigener Firewalls und Router mit einem IGMP Proxy wie ipfire, wrt oder pfsense um Swisscom TV sauber durchzuschleusen.

Die Konfiguration

Wer den Netgear GS105E via Swisscom Shop bestellt, bekommt schon seit längerer Zeit einen richtig vorkonfigurierten Switch. Bezieht man den Switch von einer anderen Quelle oder hat noch eine ältere Version muss diesen zunächst noch konfigurieren.
Dies geschieht bei der Netgear Prosafe Plus E Serie mit dem eigentlich unsäglichen Tool "Prosafe Plus Configuration Utility" . Dieses Tool und die jeweils aktuellste Firmware findet man auf dieser Seite.
Es empfiehlt sich hier die neueste Version zu verwenden.
Die eigentliche Konfiguration ist einfach und schnell gemacht. Unter System, Multicast, IGMP Snooping aktiviert man das IGMP Snooping. Deaktiviert das validieren des IGMPv3 Headers und das blockieren unbekannter Multicast Quellen, damit sich bei Multiroom Betrieb die Boxen mittels SSDP finden können.


Wer einen grösseren Switch als die 5 Port Variante braucht, kann sich mit derselben Konfiguration bei den Netgear Modellen 8-Port  GS108Ev2 und 16-Port GS116E bedienen.

Möchte man einen echten Smart Switch für relativ wenig Budget benutzen, kann man den Netgear GS108Tv2 oder GS716T verwenden.
Bei diesen Switches muss man zusätzlich zu den Prosafe Plus Versionen die Interfaces fürs IGMP Snooping aktivieren und da man die Möglichkeit schon hat, gleich noch das QoS auf DSCP stellen.





Als ebenfalls tauglich, sind die Switches der HP Pro Curve Serie 1910 und der SF/SG-300 Serie von Cisco Small Business, bekannt. 
Equipment welches ebenfalls IGMP Snooping für Swisscom TV macht, sind die Swisscom WLAN Magicbox und das Wireless Verbindungskit.
Weitere Ideen und Erfahrungen findet man in den Kommentaren des Schirmer-Blogs: http://www.schirmer-online.de/t-home/igmp-v3-switches/

Um mit Swisscom TV ein funktionierendes Netzwerk mit Switches zu haben, muss man wie im Falle der Netgear Prosafe Plus Serie nicht viel Geld ausgeben. Obendrein können die Switches noch für VLAN Konfigurationen gebraucht werden und besitzen die Funktion der Port Spiegelung für Monitoring Zwecken.

Für weitere Fragen bezüglich diesen Switches oder IGMP im Allgemeinen empfehle ich die Swisscom Support Community.

In dem Sinne: "Keep on switching"