Ձեր ներբեռնումը արագ է, ապա ինչու՞ է ամեն սեղմում դանդաղ թվում
Մեծ փոխանցումը կարող է ընթանալ լրիվ արագությամբ, մինչ զանգերն ու սեղմումները հետ են մնում։ Չափեք գնալ-վերադարձի ժամանակը, կայուն արագությունը և ծանրաբեռնվածության տակ ուշացումը որպես երեք առանձին հարց։
Մեծ ֆայլ արագ ներբեռնելը և հետո ամեն սեղմում դանդաղ զգալը հակասություն չէ։ Թողունակությունը ասում է, թե վայրկյանում որքան կարող է շարժվել. գնալ-վերադարձի ժամանակը ասում է, թե որքան է տևում փոխանակումը, մինչև ինչ-որ օգտակար բան տեղի ունենա։ Առաջինը բարելավելը ոչինչ չի անում երկրորդի համար, և երկրորդն այն է, ինչ մարդը նկատում է մուտքագրելիս, սեղմելիս կամ խոսելիս։ Չափեք բողոքը, ոչ թե կապը։
Արագ ֆայլ, դանդաղ սեղմում. երկու տարբեր թիվ
Զանգվածային փոխանցումը տվյալները պահում է անընդհատ շարժման մեջ, ուստի կարող է հայտնել առողջ արագություն նույնիսկ այն ժամանակ, երբ յուրաքանչյուր առանձին հարցում սպասում է։ Շատ բենչմարքեր միաժամանակ բացում են նաև մի քանի կապ, ինչը բարձրացնում է ընդհանուր թիվը, մինչ մեկ հարցում մնում է դանդաղ։ Երկու արդյունքները համատեղելի են, և ավելի բարձր թիվը մեջբերելը ուշացումից բողոքող օգտատիրոջը վստահությունը կորցնելու ձևն է։
Էջի բեռնումը փոքր փոխանակումների շղթա է. անվան լուծում, կապի հաստատում, հարցում, պատասխան, ապա կախյալ հարցումներ։ Ամեն քայլ նորից վճարում է գնալ-վերադարձի ժամանակը, ուստի մեծ ուշացումով ուղին դանդաղ է թվում նույնիսկ առատ թողունակության դեպքում։
Թունելը ավելացնում է իր ճանապարհն ու մշակումը, և երթուղին ավելի կարևոր է, քան քարտեզի վրա եղած պիտակը։ Նույն երկրի երկու ելքերը կարող են շատ տարբեր ուղիներ ունենալ դեպի մեկ նպատակակետ։ Քսան միլիվայրկյանի տարբերությունը բավարար է էջի զգացողությունը փոխելու համար, թեև այն հազիվ է շարժում թողունակության թիվը։ Դրա համար ելքի ընտրությունը պետք է հետևի ուշացման նմուշին, ոչ թե դրոշի պատկերակին։
Չափեք բողոքը, ոչ թե կապը
Ընտրեք այն չափումը, որը համապատասխանում է օգտատիրոջ ասած նախադասությանը։ Դանդաղ ներբեռնումը ճիշտ ուղղությամբ կայուն արագություն է պահանջում. ուշացող զանգը պահանջում է այդ հավելվածի սեփական վիճակագրությունը. դանդաղ սկսվող էջը պահանջում է անվան լուծման և հաստատման ժամանակներ։
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 տևեց այս հոսթին, մինչ թողունակությունը լավ էր" չափում է, և ուղղակիորեն մատնանշում է ուշացումը, ոչ թե թողունակությունը։