Source specific multicast
Source Specific Multicast (SSM) è un modello per il multicast in Internet definito nell'RFC 4607. Estende il modello di base Any-Source Multicast (ASM) permettendo ad un'applicazione host di specificare da quali sorgenti di un gruppo ricevere e ad esso si sono adattati alcuni dei protocolli standard in Internet per la membership (come IGMP nella versione 3) e per il routing multicast (come PIM-SM). SSM ha queste caratteristiche:
- Le sorgenti del gruppo non sono a conoscenza dei riceventi, inviano semplicemente all'indirizzo multicast di classe D al quale gli host interessati sono in ascolto;
- I riceventi non sanno a quale gruppo appartengono e non si conoscono tra di loro, però possono conoscere le sorgenti;
- I riceventi possono invocare procedure di join (con le quali chiedono di voler iniziare a ricevere) e di leave (con le quali chiedono di smettere di ricevere) dinamicamente e in qualunque momento;
- Non dice nulla di come il servizio multicast è fornito.
Il fatto che sorgenti e riceventi non si conoscano è importante altrimenti se la sorgente dovesse essere a conoscenza di tutti i riceventi si avrebbe il problema dell'ack-implosion, tipico dei modelli source-driven: la sorgente deve tenere traccia dello stato di ricezione e delle eventuali perdite di ogni ricevente diventando un collo di bottiglia per l'intera architettura. Questo svincolo permette quindi il passaggio al modello receiver-driven dove sono le destinazioni che si devono attivare per recuperare le perdite in una maniera cooperativa, simile ai modelli peer-to-peer.