Trapasu grandan dosieron tra tunelo kaj la interfaca nombrilo altiĝas je la grandeco de la dosiero. Nenio en tiu nombro implicas, ke la sama volumo atingis diskon. En tiuj diskutoj oni komparas tri malsamajn mezurojn, kaj ili respondas al tri malsamaj demandoj: kiom da trafiko transiris retan tavolon, kiom da bajtoj procezo legis kaj skribis per sistemaj vokoj, kaj kiom da laboro atingis la stokan tavolon.

Kompari la unuan kun la tria estas la kutima eraro, kaj ĝi produktas aŭ fantoman diskproblemon aŭ kapacitan planon, kiu ignoras la skribadojn, kiuj vere okazas. La tri estas apartigeblaj, kaj ĉiu havas ĝustan uzon.

Tri nombroj, kiuj konfuziĝas

Interfacaj nombriloj priskribas trafikon traktatan je reta tavolo. Ili estas la ĝusta nombro por bendolarĝo, por la grandeco de tunelo kaj por fakturaj modeloj, kiuj prezigas transiton.

Signonombriloj de procezo priskribas bajtojn movitajn per vokoj de legado kaj skribado sur iu ajn priskribilo, inkluzive de tuboj, terminaloj kaj signaj aparatoj. Ili estas la ĝusta nombro por demandi, kiom okupata estas procezo ĉe la limo de sistema voko, kaj ili ne estas stoka fakturo.

Stokaj nombriloj priskribas bajtojn, kiujn la kerno provis movi al aŭ el bloka aparato. Ili estas la ĝusta nombro por kapacita planado, kun la averto, ke la kerno dokumentas siajn proprajn limojn de kalkulado: kaŝmemoraj legadoj ne fariĝas stokaj legadoj, kaj skribado, kiu poste estas nuligita, ne fariĝas finita aparata skribado.

MeasurementQuestion it answers
Interface bytesHow much traffic crossed this layer
rchar and wcharHow much data the process moved through system calls
read_bytes and write_bytesHow much work reached the storage layer

Kial dosiera priskribilo ne estas diska skribado

Uzantspaca VPN interŝanĝas pakaĵojn kun la kerno per aparato TUN, kiu estas signa aparato, ne ordinara dosiero. Legado el ĝi transdonas pakaĵon; skribado en ĝin enĵetas unu. Neniu paĝo de dosiera enhavo estas preparata por stokado, kaj neniu dosiersistema vojo estas implikita.

Tial okupata tunelo povas montri enormajn signonombrilojn preskaŭ sen stokaj nombriloj. La procezo vere movis tiujn bajtojn, kaj la kerno vere ne bezonis diskon por fari tion.

cat /proc/$(pgrep -n openvpn)/io
ip -s link show tun0

Legu la unuan eligon kiel akumulitan ekde la starto de la procezo, ne kiel rapidon. La dua donas la interfacan vidon de la sama trafiko. Granda breĉo inter la du estas atendata kaj ne indikas likadon, atendovicon aŭ malĝustan agordon.

De kie la bajtoj vere venas

Daŭra eligo havas sian propran buĝeton, kaj ĝin pelas operacioj, ne la utilaĵo. Detala protokolnivelo, klientlisto, kiu ofte ŝanĝiĝas, aŭ eraro, kiu ripetiĝas en densa buklo, povas generi konsiderindajn skribadojn dum la tunelo portas tre malmulte.

Stata dosiero estas momenta bildo, kiun oni reskribas je intervalo, do ĝia kosto dependas de la intervalo kaj de kiom da rikordoj ĝi enhavas. Ĝi ne estas kuranta kopio de la trafiko de ĉiu kliento, kaj mallongigi la intervalon ŝanĝas la skriban volumon sen ŝanĝi la trafikan volumon.

Posedo gravas, kiam vi serĉas tiujn skribadojn. Se la servo transdonas mesaĝojn al protokola demono, la ĵurnalo aŭ protokola dosiero estas skribata de tiu demono, kaj la bajtoj aperas en la kalkulado de la demono, ne en la propraj nombriloj de la VPN-procezo. Rigardi nur la VPN-procezon klarigas nek la diskan aktivecon nek ĝian foreston.

Aliajn kontribuantojn facilas preteratenti: legado de atestiloj kaj agordo ĉe starto, hokoj, kiuj skribas proprajn rikordojn, kalkulaj kromprogramoj, kraŝaj elsalvoj kaj nerilataj laborŝarĝoj sur la sama gastiganto. Neniun el ili oni estimu per egaligo de tunela trafiko al skribitaj bajtoj.

Legi ĉiun nombrilon ĝuste

Tri detaloj decidas, ĉu komparo signifas ion. La identeco de la procezo gravas, ĉar restarigita servo nuligas siajn nombrilojn. La tempa intervalo gravas, ĉar akumulita cifero kaj grafikaĵo por sekundo estas malsamaj mezuroj. Kaj la unuo gravas, ĉar la nuna grandeco de protokola dosiero ankaŭ ne estas rapido.

grep -E 'rchar|wchar|read_bytes|write_bytes' /proc/$(pgrep -n openvpn)/io
du -sh /var/log/openvpn 2>/dev/null
journalctl --disk-usage

Se vi suspektas verajn skribadojn de utilaĵo, serĉu komponanton, kies tasko estas stoki utilaĵon: ilo por kapti pakaĵojn, prokurilo, kiu kaŝmemorigas korpojn, kromaĵo, kiu arkivas. Tiuj produktas stokan trafikon, kiu skaliĝas kun tio, kion oni petas ilin registri, kaj ili apartenas al aparta politika decido pri retenado kaj aliro.

Planado de kapacito per la ĝusta nombro

Dimensionu la pakaĵan vojon per retaj nombroj: trairo, kriptografia prilaboro kaj memormovado. Dimensionu stokadon per la observeblaj elektoj, kiujn vi efektive faris: protokola nivelo, retenado, stata intervalo kaj iu ajn kaptado, kiu estas intence ebligita.

Teni tiujn du buĝetojn apartaj ankaŭ faciligas legi incidentojn. Plena disko ĉe modesta tunela trafiko montras al protokoloj, kaptadoj aŭ io nerilata, kaj la interfaca nombrilo neniam klarigos ĝin. Satuŝarĝita ligilo kun kvieta protokolo montras la alian direkton.

La komparo inda estas inter mezuroj de la sama speco. Interfacaj bajtoj kontraŭ interfacaj bajtoj laŭ tempo diras al vi pri la vojo. Stokaj skribadoj kontraŭ stoka kapacito diras al vi pri retenado. La kruca komparo, trafiko kontraŭ disko, nur ŝajnas senchava kaj neniam estas.

Rilataj artikoloj