Multikasting

Multikasting er en utvidelse av unikasting: Samme signal sendes ut til en rekke eksplisitt identifiserte mottakere, som ved tradisjonell ‘distribusjonsliste’, eller ‘gruppesamtale’ i telefoni-nettet. I noen systemer er mottakerne listet opp i adressefeltet, i andre systemer identifiserer senderen bare navnet på gruppen (gruppe-ID, ‘multikast-adresse’), og distribusjonsnettverket holder orden på hvem som er med i gruppen.

Signalet kan være kryptert, slik at bare de som har rette nøkkel for dekryptering kan gjøre seg nytte av det. Ofte er multikasting innført av andre årsaker: Mottakere som ikke er på lista, ser umiddelbart at de kan ignore trafikken (selv om de hører signalene) og ikke forstyrre lytteren med dem. Som ved unikast kan signalene distribueres kun der lytterne poå lista befinner seg. Befinner flere mottakere på lista seg innenfor samme celle, kan signalet sendes ut én eneste gang til samtlige mottakere under ett, og det spares ressurser i mobilnettet.

En-veis / to-veis

Som hovedregel må et multikastings-nett ha en toveis-forbindelse i bunnen: Mottakeren må kunne gi gi beskjed om at han vil melde seg på lista og åpne en forbindelse, eller at han melder seg av lista. Dette kan være en mer eller mindre ‘lokal’ dialog med en distribusjonssentral, som senderen ikke er involvert i.

Enkelte multikast-systemer er ‘symmetrisk’ to-veis, med likeverdige kanaler og kapasiteter i begge retninger, og at alle mottakere kan sende til alle andre mottakere. Dette er typisk i systemer for ‘gruppesamtaler’ der det ikke er én sentral sender, men likeverdige bidragsytere. I Internett og kringkastings-systemer er det mest vanlig at mottakerne ikke har noen mulighet for å sende noe ut på multikast-forbindelsen; den er mer som en styrt kringkasting enn som en samtale. Har en mottaker grunn til å kontakte senderen, gjøres det gjennom andre, uavhengige kanaler.

‘Distribusjons-tre’

Så snart vi beveger oss ut av lokalnettet må vi (om multikast skal ha noen verdi) begrense distribusjonen til der det faktisk finnes mottakere. Befinner en gruppe mottakere seg i Trondheim, sendes signalet én gang til knutepunktet (‘noden’) i Trondheim, og distribueres i ulike retninger derfra. Finnes en annen mottakergruppe i Namsos, sender Trondheims-noden signalet til Namsos én gang, og det spres ut lokalt der.

Tegner vi opp alle forbindelsene på et Norgeskart vil det se ut som en ‘stamme’ fra Marienlyst til Trondheim, med greiner ut til Namsos og Orkanger og Røros. Fra disse nodene kan det gå tynnere greiner videre utover. Hvis du slår på mobilradion din f.eks. i Hemne, må nettverket være i stand til å oppdage at ‘Vi har allerede en lytter i Orkanger – det mest effektive er å få Orkanger-noden til å sende sitt signal videre til Hemne’.

Hvis du sitter i en bil som beveger seg sørover kan denne greina bli forlenget: Først til Kristiansund, så til Molde, osv. Hva om det allerede finnes ei distrubusjonsgrein i Molde, som kommer opp fra Bergen? Da bør du kobles over til den. Kan vi da koble ned greina fra Orkanger til Hemne, og fra Hemne til Kristiansund, og fra Kristiansund til Molde? Det avhenger av om du var den eneste lytteren i disse områdene. Var det andre lyttere, må greinene opprettholdes, ihvertfall et stykke av veien. Eller de andre må kobles over til en ny grein sørfra.

Hvis det ikke var noen grein i Molde, og du fortsetter sørover: Hvor langt er det formålstjenelig å fortsette å forlenge denne greina? På et tidspunkt er det bedre å få en mer direkte forbindelse fra Bergen. Kanksje det da må bygges en rekke nye greiner, før du kan kobles over. Dette må skje uten at du merker det: Nettet er ansvarlig for å levere deg en kontinuerlig flytende 200 kbps datastrøm uten det minste lille hikk, mens det rives ned et antall greiner i distribusjonstreet og bygges opp andre.

Dette krever betydelig koordinerings-innsats mellom flere tusen distribusjonspunkter, for titusener eller hundretusener av mottakere. Det eksisterer fint lite praktis erfaring med multikasting til mobile mottakere som flytter seg mellom greiner i distribusjonstreet, og definitivt ikke på en skala med flere tusen noder og titusenvis av mottakere.

Erfaringer med distribusjon av multikast

Praktiske erfaringer med multikast er ganske begrenset:

Gruppesamtaler har vært tilbudt i telefoni-nettet i en generasjon. Her er antallet lyttere som regel under ti. En sentral setter opp ordinære telefonforbindelser direkte til hver enkelt, ‘blander’ alle innkommende signaler og sender blandingen ut til samtlige. Det er ingen endring i tilkoblingene under gruppesamtalen, ut over at deltakere kan forlate den, og nye komme til.

Internett har i alle år hatt særskilte adresser definert som ‘multikast-adresser’, i hovedsak for forhåndsdefinerte funksjoner / mottakergrupper. Hører du ikke til mottakergruppen, ignoererer du meldingen, ellers plukker du den opp. Internett multikast er i realiteten en ‘kringkasting til et subsett mottakere’, der adresseverdien også angir om meldingen skal kringkastes videre til andre nettverk. Protokoller er definert for at mottakere skal kunne be en distribusjonsnode om å begynne å lytte på en gitt multikast-adresse og videreformidle trafikken.

Internett-bruken har i all hovedsak vært begrenset til et relativt lite antall mottakere, ikke ti eller hundre tusen. Mottakerne har befunnet seg på faste plaser i nettverket; det har ikke vært nødvendig å omstrukturere distribusjonstreet dynamisk. Nettverkene har i hovedsak vært kablet; det betyr at det i praksis ikke har har oppstått feil under overføringen av data.

Multikasting og bufring

For de aller fleste trafikktyper har det ikke vært ‘sanntids-krav’ – en liten forsinkelse eller pause har ikke skadet trafikken. For lyd (eller bilde) er en forsinkelse eller et brudd på en halvt sekund nok til å skape stor irritasjon.

NRK (og enkelte andre) har tilbudt radio over multikasting, men da primært i kablede nettverk.  Dels har dette vært eksplisitt for brukeren – du kan gå til en webside for en multikast distribusjonsnode og be om å få videreformidlet en strøm.

Fordi NRKs mulikasting-tilbud har vært rettet mot kablede forbindelser, har det i praksis vært null tap av data. IP-pakkene kommer fram, om enn med litt ujamn fart – et rush nå, en liten pause da. Mottakeren må vente litt med å spille av pakkene, må legge seg litt på etterskudd, slik at hvis det blir et lite opphold i overføringen, har den fortsatt noe å spille av.

Men: Denne bufringen skjer kun i PCen; radiostasjonen vet ingenting om den. Dette er en vesentlig forskjell fra  mobilradio, der hver lytter har sin egen dialog med radiostasjonen og kan be om å få overført på nytt de deler av sendingen den gikk glipp av. Et vilkårlig antall andre mottakere får samme strømmen, og de har ikke bedt om, og er ikke forberedt på, at brokker lyd kommer ‘dobbelt opp’. Selv om radiospilleren skulle legge avspillingen ti minutter forsinket, for å ha noe å spille inne i den ti kilometer lange tunnelen: Etter tunnelen er det ingen mulighet for å spilt av det som ble multikastet da bilen var i tunnelen. Mottakeren må være innen dekningsområdet akkurat idet en pakke sendes ut, og får aldri noe ‘nytt forsøk’. Multikasting fungerer i så henseende identisk med kringkasting.

Internett multikasting og multikasting i mobilnettverk

Mobilnettene har multikast-funksjoner i sine protokoller. F.eks. kan SMS-meldinger sendes ut til mange mottakere i én operasjon. Kan denne mekansimen brukes for mobilradio?

Mobilnettene ser på Internett-trafikk som ‘data’, punktum! Nettet overfører IP-pakker uten å forholde seg til innholdet i dem. Først når mobilen mottar IP-pakkene og kikker på adressefeltet, vil appen oppdaget at ‘Heisann, dette var en multikast-pakke!’ Basestasjonen har ikke kikket på innhold og adressefelt i pakken, og aner ikke at det var en multikast-pakke; det vet ikke at det ville vært mulig å sende de fire identiske pakkene til de fire mottakerne i én operasjon.

Skulle basen visst at de fire lytterne på NRK P1 kunne klare seg med én overføring, måtte basen ‘spionert’ på pakkene til alle fire for å oppdage multikast-adressen. Dessuten måtte den spionert på alle mobiler innenfor cellen for å oppdage hvem som lytter på hvilken radiokanal, for å kunne ta ned distribusjonsgreina når det ikke lenger er aktive brukere.

Hvis en mottaker av en multikast bare stenger av (eller forsvinner ut av dekningsområdet) uten å varsle om det er det ingenting som automatisk forteller basestasjonen og programvaren som administrerer distribusjonstreet at en mottaker nå er borte, og kanskje ei grein kan kappes, hvis det var den siste. Slike ting vil skje ofte i et mobilt nett! Vi risikerer at det blir stående mange ‘døde greiner’ i treet, der multikasten sendes ut, og opptar plass i kanalene, men ingen lytter. For å unngå å blokkere store deler av kapasiteten må det innføres noe i retning av en dødmannsknapp: F.eks. hvert tiende sekund sender mottakeren (mobilen) en melding tilbake til basestasjonen: Fortsett å sende meg multikasting-kanalen! Forsvinner disse ‘tikkene’, vil basestasjonen konkludere at radio-appen har blitt slått av eller mobilen mistet dekningen, og avslutte distribusjonen hvis det var den siste lytteren. Slike mekanismer finnes ikke i dagens multikasting-løsninger; de må utvikles og integreres i de protokollene vi har, før produsentene kan lage mobiler som benytter dem.

På mottakersiden må radio-appen forholde seg til at IP-pakkene ikke leveres som ordinære IP-pakker – de kommer over en annen mekanisme: Mobilprotokollens multikast-mekansime. Det er naturligvis tenkelig at pakker over denne forbindelsen på mottakersiden kunne ‘oversettes’ til ordinære IP-pakker før de leveres til radio-appen, men det må i så fall gjøres identisk på alle mobiler og i alle operativsystemer. Å enes om hvordan dette skal gjøres vil trolig ta et antall år, og først etter det kan produsentene bygge det inn i sine nye modeller. Ingen av mobilene som er i bruk i dag vil kunne handtere multikasting etter den framtidige standarden.

Multikasting som erstatning for kringkasting

Når det reiser seg kritiske røster mot mobilradions unikasting, fordi det beslaglegger langt mer frekvenskapasitet enn kringkasting, blir ofte multikasting trukket fram som tilsvar. Det er et antall grunner til at dette neppe er særlig realistisk.

  • Det finnes ingen praktiske erfaringer på realistisk skala i å administrere et dynamisk skiftende distribusjonstre, der mottakere flyttter seg kontinuerlig.
  • Det finnes ingen praktiske erfaringer på å administrere multikasing med titusener eller hundretusener av skiftende mottaker-noder – selv ikke i ikke-mobile nettverk. (Det aller meste av multikasting har vært svært likt kringkasting der alle har kunnet motta pakkene, men de som ikke abonnerer har ignorert dem. Dessuten har videresending ut av lokalnettet vært kontrollert.)
  • En av mobilradioens store pre, titusenvis av kanaler, peker i retning av at det sjelden vil være mange lyttere på samme kanal innenfor en mobilcelle – de vil lytte til ulike kanaler. En vesentlig forutsetning for at multikasting skal ha noen verdi, at samme strøm sendes én gang til mange mottakere, er derfor borte.
  • Multikast fungerer bare dersom samtlige mottakere kan handtere samme melding. Hvis noen mottakere bare handterer 3G, andre 4G, må basen enten tvinge alle til å bruke 3G eller sende to ulike multikast-strimer, noe som kan halvere gevinsten ved multikasting. Vi kan ikke regne med at alle mobiler vil være i stand til å motta radio over en 3G-protokoll og samtidig kjøre annen trafikk over en 4G-protokoll.
  • I dag bryr ikke mobilprotokollene seg om forskjellen mellom IPv4 og IPv6 – ‘data er data’. Bruker noen lyttere IPv6-adresser, andre IPv4, vil det framstå som som ulike radiostasjoner, selv om innholdet er identisk, og nytteefekten av multikasting reduseres.
  • Selv innenfor én teknologi-generasjon (f.eks. 4G): Hvis (innenfor samme mobilcelle) én lytter ønsker høyest mulig lydkvalitet, en annen vil spare på datakvoten og ber om laveste kvalitet, må basestasjonen enten opprette to kanaler (og dermed redusere gevinsten av multikasting), pålegge den ene lytteren en større belastning på datakvoten enn han ønsker, eller avvise den andre lytterens ønske om god lydkvalitet. Ingen av alternativene kan betegnes som ‘gode’.
  • For å redusere risikoen for å forstyrre andre celler som benytter samme frekvens, styrer moderne basestasjoner senderstrålen i den retning den mottar signaler fra; signalene spres ikke unødig ut over hele cellen. Skal samme multikast sendes til to (tre, fire, …) mottakere i hver sin retning fra basestasjonen, må den samtidig kunne sende signaler i flere retninger – eller gå over til rundstråling i alle retninger, med øket risiko for å forstyrre andre celler. Dette kan vesentlig redusere gevinsten ved multikasting, særlig med mottakere i alle himmelretninger.
  • Et annet vesentlig pre ved mobilradio er muligheten for å kunne pause sendingen og spole tilbake, be om å få sendt blokker av lyd på nytt osv. I all hovedsak forsvinner disse mulighetene ved multikasting. ‘Brukeropplevelsen’ blir dårligere, tilsvarende kringkasting (DAB) der mottakingsforholdene er dårlige.
  • Det gjenstår mye arbeide på koordinering av mobil-protokoller og IP mulitikasting-protokoller, ‘dødmannsknapp’-mekansimer osv. Først når disse standardene er på plass kan produsentene begynne å utvikle mobiler som handterer det. Ingen av dagens mobiler vil fungere.
  • Som diskutert ovenfor: Skal det spares nett-kapasitet, må basestasjonene vite hva som er multikasting, og handtere dette spesielt. Dette er ikke på plass i dag, og vi må kassere samtlige av dagens mobiler og kjøpe nye for å få tilgang til denne muligheten.

Alt dette betyr at en eventuell bruk av multikasting for å redusere trafikkbelastningen i mobilenettene ligger mange år fram i tid.

Den mest trolige utviklingen er at innen det (eventuelt) ville vært aktuelt  er DAB-nettene så godt utbygget at det store flertall av radiolyttere foretrekker et stabilt og pålitelig DAB-mottak for all ‘normal’ lytting, framfor å lytte på de samme kanalene over et overbelastet, upålitelig mobilnett. Mobilradio blir først og fremst brukt for å lytte til kanaler som ikke er tilgjengelig over DAB, det vil si nisje-kanaler, gjerne fra utlandet, med et lavt lyttertall i Norge. Sjansene for at det skal være andre lyttere til samme kanal innenfor samme mobil-celle (og som dermed kan utnytte multikast) er svært liten. For å gi nok kapasietet i mobilnettene er det helt nødvendig i framtida å redusere størrelsen på mobil-cellene ytterligere, og da reduseres også sjansene for at det skal være flere innen samme celle som lytter til samme nisje-kanal.