Mit der Version 2.0.0 von Icecast wurde das Master-Slave-Feature eingeführt:
Ein Icecast-Server (Slave) erhält die IP und das Admin-Passwort eines anderen Icecast-Servers (Master) und nutzt dies, um die Liste aller auf dem Master verfügbaren Streams zu erhalten. Diese Streams werden dann vom Slave angefordert und dort wiederum bereitgestellt.
Slaves können hierbei als Proxy verwendet werden, oder zur Erweiterung der Bandbreite des Masters. Es wird eine Art Cluster aufgebaut. Die Publizierung der Slaves geschieht jedoch über YP-Dienste und nötigt somit den Nutzer, einen Slave auszusuchen.
Mit diesem Patch ist es möglichen, dass der Master alle aktiven Slaves kennt, und sich der Streams bewusst ist, die jeder einzelne von ihm bezieht. Fordert ein Klient nun einen Stream vom Master ab, so wählt er aus der Liste der Slaves einen aus und sendet ein forwarding-Kommando an den Klienten.
Dadurch werden alle Slaves automatisch in den Dienst des Masters eingebunden.
Dieses System ermöglicht eine beliebige Kaskadierung, es können baumartige Cluster-Strukturen aufgebaut werden. Somit können leicht große Bandbreiten des Gesamtsystems erreicht werden.
Downloads:
Load-Balancing Patch für Icecast 2.0.0 (6,20 kByte)
Icecast 2.0.0 inkl. Load-Balancing Patch (673 kByte)