تونل شما تمام شب باز بوده، چیزی پخش نشده و با این حال نمودار مصرف تکان خورده است. این عادی است: VPN یک گفت‌وگو را باز نگه می‌دارد نه این‌که بخشی از خط شما را رزرو کند، پس سهم رزروشده صفر است در حالی که بایت‌ها کوچک و واقعی‌اند. این دو تصور مدام جابه‌جا می‌شوند و به همین دلیل به پرسش «آیا VPN بیکار پهنای باند مصرف می‌کند» در هر دو جهت بد پاسخ داده می‌شود. اندازه‌گیری شمارندهٔ درست در یک پنجره که بتوانید توصیفش کنید، این را در یک بعدازظهر روشن می‌کند.

چرا یک تونل بیکار باز هم بایت جابه‌جا می‌کند

تونل یک نگاشت با عمر است و چیزی باید آن نگاشت را زنده نگه دارد. دست‌دادن‌ها منقضی می‌شوند، دستگاه‌های NAT ترجمه‌های بیکار را می‌اندازند و هم‌قرینی که به‌اندازهٔ کافی ساکت بماند می‌تواند بدون آن‌که در هیچ‌کدام از دو سر چیزی خراب شود، دست‌نیافتنی شود. پروتکل‌ها در آنچه وقتی چیزی برای فرستادن نیست می‌فرستند فرق دارند: WireGuard به‌طور پیش‌فرض پس از تثبیت دست‌دادن چیزی منتقل نمی‌کند و تنظیم اختیاری PersistentKeepalive بستهٔ دوره‌ای اضافه می‌کند تا هم‌قرین پشت یک ترجمه دست‌نیافتنی نماند. آن را آگاهانه روشن کنید و فاصله زمانی در شمارنده دیده می‌شود.

OpenVPN — کمک‌کنندهٔ نگه‌داشتش متفاوت کار می‌کند: بررسی‌هایی به سبک فراخوان تعریف می‌کند تا دو سر بتوانند نشست زنده را از مرده تشخیص دهند و کلاینت‌هایی که انتقال خودشان را می‌آورند تایمرهای هم‌ارز با نام‌های دیگر دارند. هیچ‌کدام از این‌ها در پنجرهٔ برنامه دیده نمی‌شود و به همین دلیل یک صفحهٔ خالی هیچ چیزی درباره‌ی آنچه روی سیم است نمی‌گوید.

برنامهٔ بیکار همان دستگاه بیکار نیست

تونل باز به هر کلاینتی که به آن وصل است خدمت می‌دهد و کلاینت‌ها به‌ندرت متوقف می‌شوند. هم‌گام‌سازی عکس، پرس‌وجوهای تحلیلگر، بررسی‌های به‌روزرسانی و یک عامل پایش از هر مسیری که پیش‌فرض باشد پیروی می‌کنند و در پروفایل تونل کامل آن مسیر همان تونل است. تلفنی که در جیب خوابیده باز هم می‌پرسد و یک کار پشتیبان‌گیری اهمیتی نمی‌دهد که کسی ویدیو تماشا نمی‌کند. تونل به این معنا بیکار است که شما از آن استفاده نمی‌کنید در حالی که دستگاه‌هایتان استفاده می‌کنند.

پروفایل‌های پل‌شده و مسیریابی‌شده ترافیک متفاوتی حمل می‌کنند، پس یک مشاهدهٔ یکسان می‌تواند در هرکدام پاسخ متفاوتی بدهد. پیش از اندازه‌گیری بنویسید چه کسی وصل بود، چون یک کلاینت هم‌گام‌سازی می‌تواند از همهٔ سیگنال‌های نگه‌داشت در آن فاصله سنگین‌تر باشد.

یک شمارنده انتخاب کنید و بگویید چه چیزی را می‌شمارد

سه جمع وجود دارد و هرکدام به پرسشی متفاوت پاسخ می‌دهد: آنچه از تونل گذشت، آنچه از پیوند فیزیکی گذشت و آنچه ارائه‌دهنده تصمیم گرفت صورت‌حساب کند. شمارش روی پیوند بالا نیز همه‌چیز را می‌شمارد که هرگز به تونل وارد نشد، از نوسان ARP تا جریان همسایه. شمارش روی واسط تونل سرآیند بیرونی، تلاش‌های دوبارهٔ دست‌دادن و سیگنال‌های نگه‌داشتی را که یک ترجمه را باز نگه می‌دارند از دست می‌دهد. خواندن هر دو ارزان است و تنها راه دیدن این است که یک بایت در کدام سمت تونل شمرده شده.

ip -s link show wg0
ip -s link show eth0

پیش از نقل هرکدام تصمیم بگیرید پرسش شما دربارهٔ کدام یک از این دو است، چون جمع کردنشان کار مرتبط را دو بار می‌شمارد. حسابداری ارائه‌دهنده می‌تواند در دوره‌ای دیرتر از دوره‌ای که اندازه گرفتید بسته شود، پس جمعی که با صورت‌حساب نمی‌خواند به‌طور خودکار غلط نیست. واسط، جهت و پنجره را به هر عددی که منتشر می‌کنید پیوست کنید.

یک اندازه‌گیری کوتاه زیر نظر انجام دهید

تونل و محافظتش را دقیقاً همان‌گونه که در یک روز عادی کار می‌کنند رها کنید، انتقال‌های اختیاری را رد کنید و بنویسید چه کسی وصل ماند. شمارنده‌ها را بخوانید، به‌اندازه‌ای صبر کنید که ارزش خواندن داشته باشد، دوباره بخوانید و زمان سپری‌شده را کنار تفاوت نگه دارید. یک آزمون سرعت بزرگ به پرسش دیگری پاسخ می‌دهد: پیوند را اشباع می‌کند و هیچ چیزی دربارهٔ هزینهٔ بیکاری نمی‌گوید.

اگر نتیجهٔ اول ناممکن به نظر می‌رسد پنجره را یک بار تکرار کنید، چون یک نمونه می‌تواند کاری زمان‌بندی‌شده را در میانه بگیرد. دو فاصله که هم‌خوان باشند شاهد است؛ یک فاصله حکایتی است با واحد.

یک صفر پاک‌تر را با تونلی بدتر نخرید

خاموش کردن یک سیگنال نگه‌داشت یا بررسی زنده‌بودن برای مرتب کردن نمودار، استقراری را که اندازه می‌گیرید تغییر می‌دهد و تونل ممکن است پس از دورهٔ بیکاری بعدی برنگردد. پیش از دست زدن به آن بپرسید که این سازوکار به دسترس‌پذیری خدمت می‌کند یا به نگهداری، و اگر خدمت می‌کند با روشن بودنش اندازه بگیرید، چون همان پیکربندی است که پشتیبانی خواهید کرد. صفری پاک‌تر که مسیر بازیابی خراب را پنهان کند گران‌ترین نتیجه در این تمرین است.

وقتی عدد واقعاً بزرگ است، فرایند یا کلاینتی را که آن را ساخته پیدا کنید نه این‌که فرض کنید پروتکل خط را پر می‌کند. شمارنده‌های درونی و بیرونی را مقایسه کنید تا ببینید بایت‌ها در کدام سمت هستند، سپس مصرف آن دوره را گزارش کنید نه ظرفیتی که فکر می‌کنید دارید.

مقالات مرتبط