Звучни поремећај и станка VPN-а падају у истих десет секунди, а услужни програм пријављује високу вредност означену као DPC латенција. Искушење је закључити да управљачки програм успорава тунел или да тунел оптерећује управљачки програм. Ниједан од тих закључака не следи из тог броја.

Овде су у игри три мерења и она не деле исту границу.

Три броја, три границе

Одложени позив процедуре је посао који управљачки програм одлаже из свог руковаоца прекидима, а време проведено унутар тих рутина је мерење локално за процесор, приписано модулима и функцијама. Ехо повратни пут је опажање времена на утичници, које стварају мрежни стек и удаљени одговарач. Догађај прекида везе је промена стања коју бележи клијент. Свако одговара на питање на које остала не могу, а исте јединице не чине их замењивим.

Корисна дисциплина је именовати границу пре читања вредности. Напишите јединицу и границу једну поред друге. Ако алат пријављује милисекунде, питајте милисекунде чега: времена унутар рутине, времена чекања на извршавање или времена до доласка одговора.

Висок број у једној категорији је траг, никада дијагноза.

Прочитајте дефиницију иза наслова

Услужни програми се разликују по томе што називају латенцијом. Неки пријављују трајање рутина управљачког програма, други пријављују кашњење заказивања, а те две величине могу се кретати у супротним смеровима на истом рачунару. Надзорна плоча која једну од њих назива само DPC латенцијом рекла вам је мање него што изгледа. Зато се две плоче могу не слагати о рачунару који се уопште није променио.

Исто упозорење важи унутар једног алата за анализу. Укључиво трајање прати рутину од улаза до излаза, док искључиво трајање сабира само делове у којима је та рутина сама извршавала. Избор погрешне колоне претвара позиваоца у кривца.

Локални рад управљачког програма и мрежно кашњење такође делују заједно, без стапања. Прекомерна активност повезана с прекидима може одложити рад осетљив на време на рачунару, а загушења пута може одложити пакете, и обоје може бити тачно током једне видљиве станке.

Ставите свако опажање у један прозор

Праћење је корисно само ако читате интервал који садржи симптом. Забележите праћење, догађај клијента и квар апликације с временским ознакама, па погледајте исте секунде у сва три. Максимум из једносатног праћења и прекид касније тог поподнева две су неповезане чињенице.

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

Затим отворите праћење у алату за анализу и сортирајте по трајању унутар тог прозора, а не по целом снимку. смернице за анализу процесора описује приказ трајања DPC/ISR који време приписује модулима и функцијама.

Потврдите шта се стварно догодило тунелу док сте тамо. Кратак губитак саобраћаја апликације не значи да је клијент започео ново преговарање, а успех малог теста не доказује да је све остало наставило да ради.

Промените компоненту на коју упућују докази

Заузет модул је место за истрагу, не пресуда. Можда обавља посао који је изазвала друга компонента или радно оптерећење које сте ви створили. Држите заједно назив модула, уређај, верзију управљачког програма и посматрани интервал, јер је то скуп на који добављач може да делује.

Једна промена по експерименту једини је начин да се научи из резултата. Жичано поређење сужава опсег, али истовремено мења радиопут и активност управљачког програма, па га третирајте као траг, а не као доказ.

Третирајте праћење као осетљиво. Оно може да садржи називе процеса и појединости окружења, па му је место у подржаном каналу за снимање, а не у јавном прилогу. Реците на које је опажање праћење требало да одговори.

Повезани чланци