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

فایل سریع، کلیک کند: دو عدد متفاوت

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

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

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

شکایت را اندازه بگیرید، نه اتصال را

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

ping -c 20 10.60.0.5
curl -sS -o /dev/null -w 'ttfb=%{time_starttransfer} rate=%{speed_download}\n' https://files.plant.example/1gb.bin
iperf3 -c 10.60.0.5 -t 10 -P 4

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

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

ICMP را سرنخ بدانید نه پاسخ. میزبان پاسخ‌دهنده ممکن است درخواست‌های پژواک را روی مسیری متفاوت از مسیری که برنامه شما استفاده می‌کند پردازش کند، و یک پاسخ گم‌شده شاهدی بر این نیست که هر برنامه‌ای بسته گم می‌کند.

تأخیر زیر بار مسئله صف است

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

ping -c 20 10.60.0.5 &
iperf3 -c 10.60.0.5 -t 20 -R -b 20M

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

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

یک چیز را تغییر دهید و مشابه را با مشابه مقایسه کنید

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

بنویسید چه چیزی را اندازه گرفتید، علیه کدام مقصد، در چه ساعتی و با چه تنظیماتی. مقایسه بدون این چهار واقعیت تکرارشدنی نیست، و نفر بعدی از صفر شروع می‌کند.

سپس ابزار را با ادعای درخواست تطبیق دهید. "اینترنت کند" اندازه‌گیری نیست؛ "اولین بایت 900 ms به این میزبان طول کشید در حالی که توان عبوری خوب بود" یک اندازه‌گیری است و مستقیماً به تأخیر اشاره می‌کند نه به ظرفیت.

مقالات مرتبط