сети мой последний курс в моей степени магистра. У меня есть вопрос о том, как рассчитать время приема-передачи http на непостоянном, постоянном и постоянном с конвейерной обработкой.
Проведя бесчисленное количество часов за чтением этой проблемы, загрузкой заметок из других юнитов и даже поиском видео на YouTube, я не смог разобраться в этом.
Чтобы понять, как рассчитывается RTT, давайте просто скажем, что клиент запрашивает HTML-страницу, содержащую 10 изображений. [Давайте сохраним задержку распространения на нуле.]
Пожалуйста, следуйте моей логике
Прежде всего, трехстороннее рукопожатие TCP-соединения считается за 1 RTT. То же самое происходит, когда TCP-соединение закрывается.
1) В непостоянном HTTP мы должны установить TCP-соединение, поэтому пока это 1 RTT. Поскольку у нас есть 10 объектов, у нас будет 2*10=20 RTT. Это приводит к 1RTT + 20 RTT = 21 RTT. [Это можно рассчитать по-другому, сказав, что, поскольку он каждый раз открывает новые соединения, для 10 объектов потребуется 3 RTT, поэтому будет 30 RTT.]
2) В персистентном HTTP нам нужен один 1RTT для соединения и 1 для каждого объекта. Это приводит к 1RTT+10RTT=11 RTT. [Должен ли я добавить RTT для закрытия соединения, что приведет к 12 RTT? Насколько я понимаю, через некоторое время он истечет сам по себе.]
3) В Persistent HTTP с конвейерной обработкой нам понадобится один RTT для открытия TCP-соединения, один RTT для отправки 10 объектов и один RTT для закрытия соединения. Это приводит к 1RTT+1RTT+1RTT=3 RTT.
Любая помощь в этом вопросе будет высоко оценена!