"Podpira multicast" odgovori na vprašanje protokola in pusti vprašanje zmogljivosti nedotaknjeno. Operativno je pomembno, koliko kopij strežnik odda za en skupinski paket in kateri tuneli jih prenašajo. Ena naročena aplikacija, ki prejme tok, dokaže le, da dostava nekje deluje. Ne dokaže, da so bili nezainteresirani odjemalci prihranjeni pasovne širine.

Tri vprašanja znotraj ene trditve o funkciji

Članstvo v skupini vpraša, ali se je prejemnik pridružil skupini. Dostava po tunelu vpraša, ali je paket tunel sploh prečkal. Politika replikacije vpraša, koliko kopij je strežnik naredil in komu. Izjava dobavitelja je lahko resnična za prvo in molčeča o tretjem, in prav tam živi strošek.

Držite jih ločeno, ko določate velikost povezave. Samo tretje vprašanje določa izhodni proračun na strani strežnika.

Kaj strežnik v uporabniškem prostoru počne s skupinskim paketom

V tradicionalnem strežniku v uporabniškem prostoru OpenVPN 2.6 se prihajajoči broadcast ali multicast paket klasificira na vhodni poti TUN/TAP in preda rutini razširjanja broadcast namesto iskanju po skupini. Ta rutina gre skozi primerke odjemalcev, preskoči pošiljatelja in vsak ustavljeni primerek, uporabi preverjanje VLAN tam, kjer je nastavljeno, in v čakalno vrsto postavi kopijo za vsakega preostalega odjemalca. Noben korak v tej zanki ne poseže v tabelo članstva. To je replikacija v slogu broadcasta, in to je celoten mehanizem.

Obravnavajte to kot lastnost te kodne poti, ne kot univerzalni zakon. Pospešene podatkovne poti, druge izvedbe in različne različice se lahko obnašajo drugače, in nič od tega ne naredi TAP zahteve ali popravka.

Načrtujte kopije, preden karkoli izmerite

Vzemite hitrost uporabne obremenitve in jo pomnožite s številom ustreznih odjemalcev. Tok, ki pošilja en megabit na sekundo dvajsetim odjemalcem, ustvari dvajset megabitov na sekundo uporabne obremenitve, ki zapusti strežnik, pred enkapsulacijo, ponovnim prenosom in kakršnim koli stroškom na odjemalca. Ta aritmetika je proračun, ne meritev vaše uvedbe.

ip -s link show tun0

Preberite števec poslanih bajtov pred in po fiksnem intervalu z enim znanim aktivnim pošiljateljem. Delite z intervalom in primerjajte s hitrostjo uporabne obremenitve, pomnoženo s številom odjemalcev. Število blizu hitrosti enega toka pomeni, da je replikacija omejena; število blizu pomnožene hitrosti pomeni, da vsak odjemalec prejme kopijo.

Števec vključuje tudi vaš lastni tunelski promet, zato naj bo testno okno kratko, gostitelj pa sicer tih. Natančnost je manj pomembna od reda velikosti, in to je vse, kar potrebujete za razlikovanje ene kopije od dvajsetih.

Preizkus z dvema odjemalcema, ki razreši vprašanje obsega

Povežite enega odjemalca, ki naj bi tok prejemal, in drugega, ki ne bi smel. Zaženite pošiljatelja in nato za isti interval opazujte števce tunela drugega odjemalca. Rast pri drugem odjemalcu je neposreden dokaz široke replikacije, karkoli je rekel seznam funkcij.

Filtrirajte zajem na naslov skupine, da ne berete nepovezanega prometa, in ga omejite na vmesnik tunela. Zajem fizičnega vmesnika na zasedenem gostitelju ustvari datoteko, ki je nihče ne more razložiti, in lahko obdrži uporabniške podatke, ki jih niste nameravali zbirati.

Nato zamenjajte vlogi. Če rezultat sledi prejemniku in ne skupini, gledate nekaj, kar upošteva članstvo, in prejšnja predpostavka je bila v vašo korist napačna.

Izbira omejene zasnove namesto odstranjevanja omejitev

Ko je razširjanje preširoko, je popravek podprta omejena razporeditev distribucije, ne brisanje vseh kontrol, ki jih imate. Možnosti vključujejo približanje distribucijske točke prejemnikom, uporabo modela naročnine, specifičnega za vir, ki nosi identiteto vira skupaj s skupino, ali razdelitev toka, da nezainteresirana mesta nikoli ne sedijo na isti distribucijski meji.

Identiteto vira in skupine držite ločeno od golega dejstva, da je cilj multicast. Prejemnik, ki prepozna skupino, a ne vira, je drugačen naročnik od tistega, ki je zahteval določen kanal. Mešanje obeh naredi poznejše načrtovanje zmogljivosti ugibanje.

Model multicast kanala, specifičen za vir, je referenca za to razlikovanje. Katero koli zasnovo izberete, zapišite množico ustreznih partnerjev, lastnika replikacije in števec, ki ga boste prebrali naslednjič; ta zapis je tisto, kar spremeni presenečenje pri pasovni širini v znan strošek.

Sorodni članki