Ceva este marcat, o coadă este configurată, iar apoi cineva întreabă ce calitate garantează de fapt proiectul. Răspunsul onest este că ați descris două jumătăți ale unui contract care se întâlnesc la o graniță. Până când nu puteți numi clasa pe care furnizorul o acceptă și tratamentul pe care îl aplică, configurația locală este o intenție, nu o promisiune. Ambele jumătăți contează și niciuna nu poate fi dedusă din cealaltă.

local match → queue and marking → provider classifier
  → provider treatment → destination

Unde o marcare corectă poate muri în liniște

Începeți prin a nota, pentru fiecare sarcină de lucru, condiția locală de potrivire, orice marcare care are loc într-un tunel, valoarea pe care o acceptă furnizorul și clasa de serviciu pe care o selectează acea valoare. Patru coloane, iar defecțiunile locuiesc de obicei între a doua și a treia.

Comportamentul de marcare de la interior spre exterior este problema clasică. Un pachet dintr-o cale criptată sau tunelată poartă un antet interior pe care clasificatorul dumneavoastră îl vede și un antet exterior pe care echipamentul furnizorului îl vede, iar copierea unuia în celălalt este o decizie de configurare, nu o proprietate automată. Marcați doar antetul interior și furnizorul îl clasifică pe cel exterior, de obicei ca implicit, motiv pentru care un flux marcat corect poate ajunge în clasa greșită fără o singură linie configurată greșit de partea dumneavoastră.

O clasă numită local poate rămâne și goală pentru că condiția ei de potrivire nu se declanșează niciodată pe pachete reale. Porturile se mută, aplicațiile folosesc mai multe fluxuri, iar o potrivire pe un port cunoscut pe care furnizorul a încetat să îl folosească cu două versiuni în urmă produce o coadă cu contoare la zero și o politică ce pare perfectă în configurația curentă.

Decideți explicit unde marcările sunt de încredere. Promovarea a tot ce împarte un tunel promovează și transferurile mari împreună cu apelurile, iar un furnizor care acceptă marcarea dumneavoastră fără validare vă oferă o cale de a vă face rău. Dacă contractul permite gateway-ului să remarkeze la predare, spuneți-o în scris, pentru că exact în acel punct presupunerile a două echipe diverg de obicei.

Ce împarte de fapt planificatorul

Politica locală are propria semantică, iar cea care provoacă cele mai multe neînțelegeri este cuvântul “remaining”. Pe platformele descrise de ghidul de planificare IOS XE, bandwidth remaining percent stabilește o greutate în exces, nu un pas într-o secvență în care fiecare clasă ia o parte din ce a lăsat clasa anterioară. Procentele neatribuite sunt distribuite între cozile eligibile neconfigurate în loc să fie rezervate pentru ultima clasă din fișier.

Această distincție contează pentru că modelul mental secvențial produce predicții care nu se potrivesc niciodată cu contoarele. Inginerii reordonează clasele pentru a schimba un rezultat, nu văd diferență și concluzionează că platforma este defectă, deși configurația nu a însemnat niciodată ce presupuneau ei.

Modelatorul părinte este cealaltă surpriză obișnuită. Modelarea unei cozi controlate până la rata de serviciu utilizabilă este adesea deliberată, pentru că mută punctul de congestie pe un dispozitiv pe care îl administrați dumneavoastră în loc de o coadă din amonte pe care nu o administrați. Eliminarea modelatorului pentru că modelarea adaugă întârziere poate muta pierderea în loc să o înlăture, iar contabilizarea suprasarcinii sau un policer al furnizorului pot face rata efectivă mai mică decât sugerează interfața.

Contoarele arată care jumătate a eșuat

Comparați patru numere în direcția afectată: ce a fost oferit, ce a potrivit clasa, ce a intrat în coadă sau a fost aruncat și ce a livrat de fapt serviciul. Păstrați descrierea sarcinii de lucru și versiunea politicii lângă observație, pentru că o captură de ecran a contoarelor fără ele nu poate fi reprodusă.

Ramurile sunt probleme diferite cu proprietari diferiți. O clasă locală care nu potrivește nimic este o eroare de clasificare de partea dumneavoastră. O clasă care potrivește, intră în coadă și aruncă în timp ce furnizorul raportează livrare curată indică propriul dumneavoastră planificator sau modelator. O clasă care pare corectă local în timp ce pierderea apare dincolo de predare indică maparea operatorului și granița măsurată în contract. Niciuna dintre cele trei nu se rezolvă editând-o pe alta, de aceea numerele trebuie colectate împreună.

RFC 2475 încadrează clasificarea și condiționarea ca muncă efectuată în domenii administrative și tocmai de aceea o marcare nu poate rezerva cozi de la un capăt la altul. Ghidul de planificare IOS XE este referința pentru comportamentul greutății în exces descris mai sus, iar comparațiile sale între platforme merită citite înainte de a muta o rată calculată între modele.

Scrieți contractul într-un singur loc

Puneți potrivirea locală, granița de încredere, clasa furnizorului și nivelul de serviciu măsurat într-un singur document semnat de ambele părți. Atunci o modificare de procent are context, iar o reclamație de calitate are proprietar.

Modificarea unui procent local nu poate repara garanția altei cozi, iar nicio schemă de marcare nu supraviețuiește unei mapări pe care furnizorul nu o respectă. Comparați jumătățile, numiți granița și abia apoi citați un număr.

Articole similare