Katta faylni tunnel orqali o’tkazing va interfeys hisoblagichi fayl hajmiga qadar oshadi. Bu raqamda aynan shu hajm diskka yetib kelganini bildiradigan hech narsa yo’q. Bu munozaralarda uch xil o’lchov solishtiriladi va ular uch xil savolga javob beradi: qancha trafik tarmoq qatlamidan o’tdi, jarayon tizim chaqiruvlari orqali qancha bayt o’qidi va yozdi, va qancha ish saqlash qatlamiga yetdi.

Birinchisini uchinchisi bilan solishtirish odatiy xato bo’lib, u yo xayoliy disk muammosini, yo haqiqatda bo’layotgan yozishlarni e’tiborsiz qoldiradigan sig’im rejasini keltirib chiqaradi. Uchtasi ajratiladi va har birining to’g’ri qo’llanishi bor.

Bir-biriga aralashtiriladigan uch raqam

Interfeys hisoblagichlari tarmoq qatlamida ishlanadigan trafikni tasvirlaydi. Ular o’tkazish qobiliyati, tunnel o’lchami va tranzitga narx qo’yadigan billing modellari uchun to’g’ri raqam.

Jarayonning belgi hisoblagichlari quvurlar, terminallar va belgi qurilmalarini qo’shgan holda har qanday deskriptordagi o’qish va yozish chaqiruvlari orqali ko’chirilgan baytlarni tasvirlaydi. Jarayon tizim chaqiruvi chegarasida qanchalik band ekanini so’rash uchun bu to’g’ri raqam, va ular saqlash hisobi emas.

Saqlash hisoblagichlari yadro blok qurilmasiga yoki undan ko’chirishga urinagan baytlarni tasvirlaydi. Sig’imni rejalashtirish uchun bu to’g’ri raqam, ammo yadro o’zining hisob chegaralarini hujjatlashtiradi: keshlangan o’qishlar saqlash o’qishlariga aylanmaydi, va keyin bekor qilingan yozish tugallangan qurilma yozishiga aylanmaydi.

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

Nega fayl deskriptori diskka yozish emas

Foydalanuvchi makonidagi VPN yadro bilan paketlarni TUN qurilmasi orqali almashadi, u oddiy fayl emas, belgi qurilmasi. Undan o’qish paketni topshiradi; unga yozish paketni kiritadi. Saqlash uchun tayyorlanadigan fayl mazmuni sahifasi yo’q va fayl tizimi yo’li ham ishtirok etmaydi.

Shuning uchun band tunnel deyarli saqlash hisoblagichlarisiz ulkan belgi hisoblagichlarini ko’rsatishi mumkin. Jarayon o’sha baytlarni haqiqatan ko’chirdi va yadro buni qilish uchun haqiqatan diskka muhtoj bo’lmadi.

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

Birinchi chiqishni jarayon boshlanganidan beri to’plangan deb o’qing, tezlik deb emas. Ikkinchisi o’sha trafikning interfeys ko’rinishini beradi. Ikkisi orasidagi katta tafovut kutilgan va u oqish, navbat yoki noto’g’ri konfiguratsiyani bildirmaydi.

Baytlar haqiqatan qayerdan keladi

Doimiy chiqishning o’z byudjeti bor, va uni yuk emas, operatsiyalar boshqaradi. Batafsil log darajasi, tez-tez o’zgaradigan mijozlar ro’yxati yoki tor siklda takrorlanadigan xato tunnel juda kam tashiyotganda ham sezilarli yozishlar yaratishi mumkin.

Holat fayli ma’lum oraliqda qayta yoziladigan surat bo’lib, uning narxi oraliqqa va undagi yozuvlar soniga bog’liq. Bu har bir mijoz trafigining ishlab turgan nusxasi emas, va oraliqni qisqartirish trafik hajmini o’zgartirmasdan yozish hajmini o’zgartiradi.

O’sha yozishlarni qidirayotganda egalik muhim. Agar xizmat xabarlarni log demoniga topshirsa, jurnal yoki log faylini o’sha demon yozadi, va baytlar VPN jarayonining o’z hisoblagichlarida emas, demonning hisobida ko’rinadi. Faqat VPN jarayoniga qarash disk faolligini ham, uning yo’qligini ham tushuntirmaydi.

Boshqa hissa qo’shuvchilarni sezmay qolish oson: ishga tushishda sertifikat va konfiguratsiyani o’qish, o’z yozuvlarini yozadigan ilgaklar, hisobga olish plaginlari, halokat damplari va o’sha hostdagi aloqasiz ish yuklamalari. Ularning hech birini tunnel trafigini yozilgan baytlarga tenglashtirib baholamaslik kerak.

Har bir hisoblagichni to’g’ri o’qish

Uch tafsilot solishtirishning ma’nosi bor-yo’qligini hal qiladi. Jarayonning o’ziga xosligi muhim, chunki qayta ishga tushirilgan xizmat hisoblagichlarini nolga qaytaradi. Vaqt oralig’i muhim, chunki to’plangan raqam va sekundiga grafik turli o’lchovlar. Va birlik ham muhim, chunki log faylining joriy hajmi ham tezlik emas.

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

Agar haqiqiy yuk yozishlariga shubha qilsangiz, vazifasi yukni saqlash bo’lgan komponentni qidiring: paketlarni tutish vositasi, tanalarni keshlovchi proksi, arxivlovchi plagin. Ular qancha yozish talab qilinsa, shunga mos o’sadigan saqlash trafigini yaratadi va saqlash hamda kirish haqidagi alohida siyosat qaroriga tegishli.

Sig’imni to’g’ri raqam bilan rejalashtirish

Paket yo’lini tarmoq raqamlari bilan o’lchang: o’tkazuvchanlik, kriptografik ishlov va xotira harakati. Saqlashni siz haqiqatan qabul qilgan kuzatuvchanlik qarorlari bilan o’lchang: log darajasi, saqlash muddati, holat oralig’i va ataylab yoqilgan har qanday tutish.

Bu ikki byudjetni alohida saqlash hodisalarni o’qishni ham osonlashtiradi. O’rtacha tunnel trafigi bilan to’lgan disk loglar, tutishlar yoki aloqasiz narsaga ishora qiladi, va interfeys hisoblagichi buni hech qachon tushuntirmaydi. Tinch log bilan to’yingan aloqa qarama-qarshi tomonga ishora qiladi.

Qilishga arziydigan solishtirish bir xil turdagi o’lchovlar orasida. Vaqt bo’yicha interfeys baytlari interfeys baytlariga qarshi yo’l haqida gapiradi. Saqlash yozishlari saqlash sig’imiga qarshi saqlash muddati haqida gapiradi. Ko’ndalang solishtirish, trafik diskka qarshi, faqat mazmunli ko’rinadi va hech qachon unday bo’lmaydi.

O'xshash maqolalar