Das P2P Netz

Das P2P PrinzipKlick fuer Zoom
Das P2P Prinzip

Eine prinzipielle Darstellung

Neue Nutzer verbinden sich mit den äußeren Verzweigungen des Baumes. Jeder Nutzer stellt wiederum Bandbreite zur Weiterverteilung zur Verfügung. Dadurch gibt es theoretisch keine Beschränkung der Anzahl möglicher Teilnehmer. Ein Nutzer kann nur Stationen anhören die er auch fähig ist mit seiner Upstream-Bandbreite weiterzuleiten.

Je länger ein Nutzer (Client) verbunden ist (listening time) und umso höher seine Bandbreite desto näher rückt er an den Sender (Server). Jeder Nutzer schwimmt also im Netz und nimmt die optimale Position für sich ein. Nutzer mit hoher Bandbreite und/oder langer listening time rücken mit der Zeit näher an den Sender und bilden eine Art Backbone-Netz. Nutzer mit geringer Bandbreite siedeln sich eher weiter außen an. Nutzer die nur kurz "mal reinhören" sind so am Ende eines Zweiges und stören nicht wenn sie sich gleich wieder trennen.

Positionen nahe dem Sender bedeuten weniger Zwischenstationen (hops) und dadurch eine geringere Latenzzeit. Positionen weiter außen bedeuten eine geringfügig längere Laufzeit des Signals und dadurch eine zeitliche Verzögerung. Hörer weiter außen hören oder sehen also alles etwas später. Diese Latenzzeit kann wenige Sekunden bis zu etwa einer Minute betragen.

Schlechte Erreichbarkeit oder unzureichende Verbindungsqualität eines Clients beeinträchtigt also keinesfalls die Verfügbarkeit eines Senders im Verbund. Trennt sich ein Nutzer vom Sender, wartet er zunächst, bis alle über ihn Verbundenen Nutzer eine alternative Verbindung gefunden haben bevor er sich trennt. Der große Empfangspuffer verhindert dass die Musik dabei unterbrochen wird. Auch wenn die Upstream Quelle plötzlich getrennt wird, verhindert der Empfangspuffer eine Unterbrechung der Musik.

Jeder Streamer hält eine Liste von bis zu 1024 anderen Hosts vor. In zufälliger Abfolge sendet er Anfragen nach neuen Hosts, neue Stationen, Stationen die nicht mehr online sind an die Hosts in der Liste. Nicht antwortende Hosts werden nach einer Weile aus dieser Liste entfernt. Es gibt so genannte 'seeds', das sind permanente Netzknoten. Neue Nutzer verbinden sich am Anfang immer zu einem der seeds um die Adressen weiterer Hosts zu bekommen. Danach werden die seeds nicht mehr zum Betrieb des Netzes benötigt. Die Stationsliste baut sich passiv auf, indem andere Streamer Informationen von ihrer eigenen Liste senden. Die Information die gesendet wird ist zufällig, aber alle im Netz haben recht schnell die gesamte Stationsliste zur Verfügung.