Яка різниця між "затримкою" та "часом подорожі"?


14

Співтовариство Golang надає демонстраційний веб-сайт HTTP / 2 для порівняння продуктивності між HTTP 1.1 та HTTP / 2.

Ми можемо вибрати різні latency, наприклад, затримка 0 с, затримка 30 мс, затримка 200 мс.

  1. Чи latencyє термінологія інформатики?
  2. Що це означає?
  3. Яка різниця між latencyі Round Trip Time?

введіть тут опис зображення


Це питання та відповідь можуть допомогти вам зрозуміти.
Рон Моупін

Чи допомогла вам якась відповідь? якщо так, то слід прийняти відповідь, щоб питання не з’являлося вічно, шукаючи відповідь.
Рон Моупін

Відповіді:


20

Затримка в мережі - це скільки часу потрібно, щоб щось, надіслане від вихідного хоста, дісталося до хоста призначення. Існує багато компонентів для затримки, і затримка може насправді бути різною від А до В і В до А.

Час подорожі в обидва кінці - це тривалість запиту, відправленого від джерела до пункту призначення, і для відповіді, щоб повернутися до початкового джерела. В основному, затримка в кожному напрямку плюс час обробки.


10

"Затримка" може означати різні речі. Як правило, це певна затримка - затримка програми - це час реакції програми (від введення до виводу), затримка в мережі затримка для отримання пакету від точки А до В тощо.

"Час обертання" в більшій чи меншій мірі добре визначається як затримка мережі від точки А до В і назад. Це сума всіх затримок кодування, черги, обробки, декодування та затримки розповсюдження в обох напрямках. По суті, це затримка, коли А може чекати відповіді від В на запит, який вимагає дуже малої обробки.

Дуже часто час у зворотному напрямку порівнюється з часом пінг-сигналу між A і B. Час ping може забезпечити хороше значення для ефективної RTT, але це може бути і чимось іншим, через потенційні відмінності маршрутизації та обробки між використовуваними пакетами ICMP за допомогою ping та тих, що фактично використовуються пакетами протоколів.

У вашому випадку "затримка" означає штучну затримку всередині HTTP-сервера, яку додають поверх уже наявних затримок. Отже, якщо у вас є ефективний час зворотного шляху 50 мс до сервера і виберіть "затримка 200 мс", ви можете очікувати відповіді на запит протягом 250 мс (плюс обробка накладних витрат на сервері).


4

Щоб додати трохи фону до інших відповідей, потрібно пам’ятати, що затримка в мережі може істотно відрізнятися і може впливати на досвід користувача.

Одне з найбільш очевидних джерел затримки мережі - відстань: сигнали, які переносять ваші дані, подорожують з більшою або меншою швидкістю світла, тому чим довше пройдена відстань від клієнта до сервера, тим вище затримка. Зв'язок між двома комп'ютерами, підключеними кабелем Ethernet, займе кілька мілісекунд. Спілкування з сервером через океан займе десятки чи сотні мілісекунд. Зв'язок, який проходить через геостаціонарний супутник, займе сотні мілісекунд.

Це добре видно при виконанні пінгу, який вимірює час у зворотному напрямку, що в даному випадку дуже близьке до суми затримки в обох напрямках.

Ще кілька речей, які впливають на затримку:

  • кількість посилань / переходів: у більшості випадків пакет повинен бути повністю отриманий, перш ніж він може бути відправлений на наступне посилання. Це додає трохи затримки на кожен хміль;
  • пропускна здатність цих посилань: чим повільніше посилання, тим довше потрібно пройти повний пакет, і, таким чином, бути переадресованим на наступне посилання;
  • завантаження цих посилань: якщо посилання заповнене, пакет, можливо, доведеться чекати в черзі, поки його не можна буде надіслати;
  • для посилань з локальною повторною передачею, коефіцієнт помилок у посиланні: чим вище показник помилок, тим вище шанси, що пакет може знадобитися повторно.

Затримка може мати сильний вплив на користувацький досвід (чи ні):

  • найвідоміший випадок - це затримка, що впливає на гравців MMORPG та інших онлайн-ігор.
  • затримка впливає на будь-що інтерактивне, де взаємодія контролюється з іншого боку. На затримку впливає Telnet / ssh, віддалений робочий стіл.
  • на голосовий зв’язок впливає затримка, і з високою затримкою ви, нарешті, постійно перебиваєте один одного.
  • старіші протоколи передачі файлів також страждали від затримки, оскільки вони не реалізували розсувні вікна, і відправник повинен був зачекати, коли пакет прибуде до пункту призначення, і підтвердження повернеться, перш ніж надсилати наступний.

Навіть у неінтерактивних випадках затримка може мати ефект (що проілюстровано в прикладі ОП): коли є багато невеликих файлів для завантаження, затримка може призвести до більшого загального часу завантаження, якщо протокол повинен чекати одного файлу бути повністю завантаженим перед початком завантаження наступного, порівняно з протоколом, який дозволить одразу надсилати кілька запитів, а відповіді надсилаються без перерви між послідовними файлами.


4

Час зворотного шляху (RTT) - це час, необхідний для переходу пакета від кінцевої точки відправки до кінцевої точки прийому та назад. Є багато факторів, які впливають на RTT, включаючи затримку поширення, затримку обробки, затримку в черзі та затримку кодування. Ці фактори, як правило, постійні для даної пари кінцевих точок зв'язку. Крім того, перевантаженість мережі може додати динамічний компонент до RTT.

РТТ та пінг однакові?

Час в обидва кінці і час пінг часто вважаються синонімами. Хоча час ping може забезпечити хорошу оцінку RTT, він відрізняється тим, що більшість тестів ping виконується в транспортному протоколі з використанням пакетів ICMP. Навпаки, RTT вимірюється на рівні програми і включає додаткову затримку обробки, що виробляється протоколами та програмами вищого рівня (наприклад, HTTPS).

Що з RTT та мережевою затримкою?

Затримка в мережі тісно пов'язана, але відрізняється від RTT. Затримка - це час, необхідний для переходу пакета від кінцевої точки відправки до приймальної кінцевої точки. На затримку послуги може впливати багато факторів. Затримка явно не дорівнює половині RTT, оскільки затримка може бути асиметричною між будь-якими двома заданими кінцевими точками. RTT включає затримку обробки в кінцевій точці, що лунає.

Подивіться цю публікацію в блозі на RTT для отримання додаткової інформації.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.