’n Klankglits en ’n VPN-pouse val in dieselfde tien sekondes, en ’n nutsmiddel rapporteer ’n hoë syfer gemerk DPC-latensie. Die versoeking is om af te lei dat die drywer die tonnel vertraag, of dat die tonnel die drywer onder druk plaas. Geen van die twee gevolgtrekkings volg uit daardie syfer nie.

Drie metings is hier in die spel, en hulle deel nie dieselfde grens nie.

Drie nommers, drie grense

’n Uitgestelde prosedure-oproep is werk wat ’n drywer uit sy onderbrekingshanteerder uitstel, en die tyd wat binne daardie roetines deurgebring word, is ’n verwerker-plaaslike meting wat aan modules en funksies toegeskryf word. ’n Eggo-heen-en-weer is ’n tydsberekening by die socket, geproduseer deur ’n netwerkstapel en ’n afgeleë beantwoorder. ’n Ontkoppelingsgebeurtenis is ’n toestandsoorgang wat deur die kliënt aangeteken word. Elkeen beantwoord ’n vraag wat die ander nie kan nie, en ooreenstemmende eenhede maak hulle nie uitruilbaar nie.

Die nuttige dissipline is om die grens te noem voordat jy die waarde lees. Skryf die eenheid en die grens langs mekaar. As ’n hulpmiddel millisekondes rapporteer, vra millisekondes van wat: tyd binne ’n roetine, tyd wat wag om te loop, of tyd totdat ’n antwoord opgedaag het.

’n Hoë syfer in een kategorie is ’n leidraad, nooit ’n diagnose nie.

Lees die definisie agter die opskrif

Nutsmiddels verskil in wat hulle latensie noem. Sommige rapporteer die duur van drywerroetines, ander rapporteer skeduleringvertraging, en die twee hoeveelhede kan in teenoorgestelde rigtings beweeg op dieselfde masjien. ’n Paneelbord wat een daarvan bloot DPC-latensie noem, het jou minder vertel as wat dit lyk. Twee paneelborde kan dus verskil oor ’n masjien wat glad nie verander het nie.

Dieselfde versigtigheid geld binne ’n enkele analise-instrument. Inklusiewe duur volg ’n roetine van binnekoms tot uitgang, terwyl eksklusiewe duur slegs die fragmente optel waar daardie roetine self besig was om uit te voer. Om die verkeerde kolom te kies, maak van ’n oproeper ’n skuldige.

Plaaslike drywerwerk en netwerkvertraging werk ook saam sonder om te versmelt. Oormatige onderbrekingsverwante aktiwiteit kan tydgevoelige werk op die masjien vertraag, en ’n oorlaaide pad kan pakkette vertraag, en beide kan waar wees tydens een sigbare pouse.

Plaas elke waarneming in een venster

’n Spoorsnit is net nuttig as jy die interval lees wat die simptoom bevat. Teken die spoor, die kliënt se gebeurtenis en die toepassing se fout met tydstempels aan, en kyk dan na dieselfde sekondes in al drie. ’n Maksimum uit ’n uur lange spoor en ’n ontkoppeling later daardie middag is twee onverwante feite.

wpr -start CPU -filemode
wpr -stop vpn-trace.etl
xperf -i vpn-trace.etl -a dpcisr -o dpc.txt

Maak dan die spoor in die analise-instrument oop en sorteer volgens duur binne daardie venster, eerder as volgens die hele opname. Die riglyne vir CPU-analise beskryf die DPC/ISR-duuraansig wat tyd aan modules en funksies toeskryf.

Bevestig wat werklik met die tonnel gebeur het terwyl jy daar is. Om toepassingsverkeer kortstondig te verloor beteken nie dat die kliënt ’n nuwe onderhandeling begin het nie, en ’n suksesvolle klein toets bewys nie dat alles anders aanhou werk het nie.

Verander die komponent wat die bewyse aanwys

’n Besige module is ’n plek om te ondersoek, nie ’n uitspraak nie. Dit doen moontlik werk wat deur ’n ander komponent veroorsaak word, of deur die werklaag wat jy gegenereer het. Hou die modulenaam, die toestel, die drywerweergawe en die waargenome interval saam, want daardie stel is waarop ’n verskaffer kan handel.

Een verandering per eksperiment is die enigste manier om uit die resultaat te leer. ’n Bedrade vergelyking vernou die omvang, maar dit verander die radiobaan en die dryweraktiwiteit op dieselfde tyd, so behandel dit as ’n leidraad eerder as ’n bewys.

Behandel die spoor as sensitief. Dit kan prosesname en omgewingsbesonderhede bevat, so dit hoort in die ondersteunde vasvangskanaal eerder as in ’n openbare aanhegsel. Sê watter waarneming die spoor moes beantwoord.

Verwante artikels