En kort intro til IPv6-multicast

Som langt framme på IPv6, og del av UNINETTs nettverk (som igjen er del av M6bone) er IPv6-multicast en ting som er relativt naturlig for Samfundet å implementere, ikke minst ettersom det finnes interessant innhold på IPv4-multicast som kan være interessant å pumpe inn i kvadratsky-en. Det er imidlertid mange begreper som skal på plass og kan skape litt forvirring, så dette er en kort introduksjon til de viktigste akronymene.

Mye av det som sies gjelder også IPv4-multicast, men hovedfokuset er på IPv6.

Hovedtyper multicast

Det er to hovedtyper multicast:

Multicast-rutingprotokoller

Rendezvous Point (RP) og PIM-join

I ASM kan du ha flere sendere, og det er derfor ikke åpenbart hvor en mottaker skal melde sin interesse for en gitt gruppe. Man forenkler problemet ved å definere at all trafikken skal innom ett sted, altså et Rendezvous Point (RP), som identifiserer en fysisk host eller ruter som er villig til å ta på seg den oppgaven. Hver ASM-gruppe har sitt eget separate RP, men en host kan selvsagt være RP for så mange grupper man vil.

RPet kan enten settes manuelt i konfigurasjonen, velges i en protokoll som heter BSR (*Bootstrap Router*, evt. en eldre Cisco-proprietær protokoll kalt Auto-RP), eller være enkodet i multicastadressen (*Embedded-RP*). Det er selvsagt en fordel om RPet ligger et fornuftig sted nettverksmessig, gjerne nær kilden, så ikke trafikken må gå store omveier.

Klienter som vil melde sin interesse for en gitt gruppe, sender en PIM-join mot RP; hvilket interface dette skal ut på bestemmes av multicast-rutingtabellen (som inneholder unicastadresser!). Multicast-rutingtabellen er ofte identisk med den vanlige unicast-rutingtabellen, men kan være bygget opp helt separat, jfr. MBGP over.

I SSM er det bare én kilde, og alle vet hvilken den er. Derfor trenger man ikke noe RP; PIM-joinen sendes rett mot kilden.

Embedded-RP er en annen måte å slippe unna RP-konfigurering på, og spesifikk for IPv6. De laveste femten adressene i hvert /64 (xxxx::1 til. xxxx::f) er her spesielle, og er de eneste som kan være RP-adresser i Embedded-RP. Gruppeadressen konstrueres fra dette, slik at den inneholder informasjon om både prefiks og siste nibble, etter mønsteret ff7e:y40:aaaa:bbbb:cccc:dddd:gggg:hhhh, der RPet for gruppen implisitt blir aaaa:bbbb:cccc:dddd::y (gggg:hhhh kan brukes fritt til gruppe-ID). (Det er litt mer detaljer her, som scope og interface-ID, vi skal ignorere elegant i denne sammenhengen.) En multicastgruppe med Samfundets hovedruter 2001:700:300:1800::1 som implisitt RP kan med andre ord være f.eks. ff7e:140:2001:700:300:1800:dead:beef.

Lenker: Start

Epost: itk@samfundet.no | Telefon: 992 15 925 | Sist endret: 2011-06-18 12:23 | Revisjon: 4 (historie, blame) | Totalt: 1905 kB | Rediger