VPN prievado žymėjimas nesuteikia balsiniams skambučiams prioriteto
VPN prievado žymėjimas prioritetiniu iškelia skambutį ir atsarginę kopiją tame pačiame tunelyje. Balsui reikia klasifikacijos prieš šifravimą ir eilės, kurią valdote.
VPN UDP prievado žymėjimas aukštu prioritetu yra dažniausias balso QoS pakeitimas, ir jis neatskiria skambučio nuo to paties tunelio besidalijančio failų perdavimo. Abu srautai išeina per tą patį šifruotą lizdą. Žyma pasako kitam šuoliui, kad viskas vienodai svarbu, o tai tas pats, kas nieko nepasakyti. Skambutį saugo patikima klasifikacija prieš šifravimą ir eilė, kurią iš tikrųjų valdote.
Tunelis paslepia srautą, kurį norėjote klasifikuoti
Šifravimas pakeičia vidinius antraštes viena išorine antrašte kiekvienam tuneliui. Po to balsas ir atsarginės kopijos srautas rodo tą patį šaltinį, paskirties vietą ir transporto prievadą, todėl klasifikatorius, pagrįstas tunelio prievadu, negali jų atskirti. Ką beatneštumėte, atnešate viską kartu.
Šaltinio programos nustatyta DSCP reikšmė išlieka tik jei kažkas ją nukopijuoja į išorę. OpenVPN 2.6 turi passtos, dokumentuotą su IPv4 apimtimi; IPsec taiko savo kopijavimo arba susiejimo politiką tunelio riboje. Be šio veiksmo išorinis paketas pažymimas bet kokia numatytąja reikšme, kurią naudoja tunelio sąsaja, o eilė toliau niekada nesužino, kad viduje yra skambutis.
Nukopijuotos žymos nusipelno tokio pat įtarumo kaip bet kuri kliento pateikta reikšmė. Darbo stotis gali reikalauti pagreitinto persiuntimo atsarginės kopijos užduočiai, todėl priėmimas ir peržymėjimas pasitikėjimo riboje turi būti projekte prieš tikint žyma.
Prioritetas skaičiuojamas tik ten, kur susidaro eilė
Prisotintas išorinis kanalas paverčia gerą kodeką robotišku balsu, o besipildanti eilė paprastai būna prieigos įrenginyje arba tiekėjo buferyje. Išeinančio kelio formavimas iki naudojamo greičio, atėmus tunelio ir linijos sąnaudas, laiko tą eilę jūsų administruojamoje techninėje įrangoje, o ne kieno nors kito buferyje.
Sąžininga eilė ir aktyvus eilių valdymas padeda net be balso klasės, nes neleidžia vienam dideliam srautui užpildyti buferio. CAKE Linux sistemoje sujungia formavimą, sąžiningumą pagal srautą ir pasirenkamas Diffserv klases į vieną qdisc, o diegtas tinklo valdytojas turėtų valdyti tą konfigūraciją, o ne antrą konkuruojantį eilės nustatymą. Be formavimo klasė, kuri lenkia didelį srautą, vis tiek laukia už jau pilno buferio.
Įeinančio srauto apdorojimas nėra bevertis, bet jis veikia po to, kai paketas perėjo priėmimo liniją. Jis gali paveikti reaguojantį siuntėją ir negali grąžinti vėlavimo, jau išleisto aukščiau, todėl tai švelninimas, o ne garantija.
| Stage | What you can control | What to verify |
|---|---|---|
| Application to client | Which flows are trusted for marking | The marked packets are the ones you intended |
| Tunnel boundary | Whether the inner mark is copied outward | Outer header carries the expected value |
| Your uplink | Shaping rate and class treatment | Queue counters move for the voice class |
| Provider path | Almost nothing | Whether the service enforces the marking at all |
| Receiving side | Local policy after arrival | Delay that is already in the past |
Kas išlieka viešajame internete
Diffserv architektūra aprašo tvarkymą administracinių domenų viduje, todėl tiekėjas gali nepaisyti žymos arba ją perrašyti prie ribos. Priešingas teiginys, kad kiekvienas tinklas ją visada pašalina, yra lygiai taip pat nepagrįstas. Sąžiningas klausimas yra, ką šis konkretus kelias įsipareigojęs ir prižiūrimas daryti. Išbandykite tai pažymėtu zondu, o ne kartodami taisyklę, kurią kažkur skaitėte.
Paklauskite, ką tiekėjas daro su klase, tada išmatuokite. Žyma, kuri išsaugoma, bet neplanuojama, yra dekoracija; kelias, kuris planuoja nematydamas žymos, yra kita problema, ir abiem reikia skirtingų pataisų.
Matavimo planas, kuris išskiria etapą
Atlikite vieną įprastą skambutį su kontroliuojamu konkuruojančiu įkėlimu, tada pakartokite jį laidinėje linijoje. Pažiūrėkite, ką skambutis prarado, ką užfiksavo klasės skaitikliai ir kaip arti sąsaja dirba savo tikrosios ribos, o ne plano skelbiamo greičio.
tc -s qdisc show dev eth0
tc -s class show dev eth0
mtr -rwzbc 50 voice.example.net
Jei balso klasės skaitiklis lieka nulyje, klasifikacija arba žymos kopijavimas sugedęs ir joks prioritetas nepadės. Jei klasės skaitiklis juda vietoje, o vėlavimas toliau auga, susiaurėjimas yra už jūsų tinklų sietuvo. Nė vieno rezultato nepataiso prioriteto reikšmės padidinimas.