Passa al contenuto principale

3.2. Phase Two: Register-Stop (Fase Due: Register-Stop)

L'incapsulamento Register dei pacchetti di dati è inefficiente per due motivi:

  • L'incapsulamento e il de-incapsulamento possono essere operazioni relativamente costose per un router da eseguire, a seconda che il router abbia o meno hardware appropriato per questi compiti.

  • Viaggiare fino all'RP, e poi tornare indietro lungo l'albero condiviso può far sì che i pacchetti viaggino per una distanza relativamente lunga per raggiungere ricevitori vicini al mittente. Per alcune applicazioni, questo aumento della latenza o del consumo di banda è indesiderabile.

Sebbene l'incapsulamento Register possa continuare indefinitamente, per questi motivi, l'RP normalmente sceglierà di passare all'inoltro nativo. Per fare ciò, quando l'RP riceve un pacchetto di dati incapsulato in Register dalla sorgente S sul gruppo G, normalmente avvierà un Join (S,G) specifico della sorgente verso S. Questo messaggio Join viaggia hop-by-hop verso S, istanziando lo stato dell'albero multicast (S,G) nei router lungo il percorso. Lo stato dell'albero multicast (S,G) viene utilizzato solo per inoltrare i pacchetti per il gruppo G se quei pacchetti provengono dalla sorgente S. Alla fine il messaggio Join raggiunge la subnet di S o un router che ha già lo stato dell'albero multicast (S,G), e poi i pacchetti da S iniziano a fluire seguendo lo stato dell'albero (S,G) verso l'RP. Questi pacchetti di dati possono anche raggiungere router con stato (*,G) lungo il percorso verso l'RP; se lo fanno, possono prendere una scorciatoia verso l'albero RP in questo punto.

Mentre l'RP è nel processo di unirsi all'albero specifico della sorgente per S, i pacchetti di dati continueranno ad essere incapsulati verso l'RP. Quando i pacchetti da S iniziano anche ad arrivare nativamente all'RP, l'RP riceverà due copie di ciascuno di questi pacchetti. A questo punto, l'RP inizia a scartare la copia incapsulata di questi pacchetti, e invia un messaggio Register-Stop al DR di S per impedire al DR di incapsulare inutilmente i pacchetti.

Alla fine della fase due, il traffico fluirà nativamente da S lungo un albero specifico della sorgente verso l'RP, e da lì lungo l'albero condiviso verso i ricevitori. Dove i due alberi si intersecano, il traffico può trasferirsi dall'albero specifico della sorgente all'albero RP ed evitare così di fare una lunga deviazione via RP.

Si noti che un mittente può iniziare a inviare prima o dopo che un ricevitore si unisca al gruppo, e quindi la fase due può verificarsi prima che l'albero condiviso verso il ricevitore sia costruito.