Я исследовал скорость передачи пакетов и был сбит с толку общей пропускной способностью от одной конечной системы к другой. Например: скажем, сервер отправляет пакет клиенту с промежуточным маршрутизатором. Мой учебник « Компьютерные сети » Куросе и Росса говорит, что конечная система с более низкой скоростью передачи определяет скорость передачи всей передачи файла. Почему это?

Разве две скорости пропускной способности не будут добавлены вместе, чтобы составить полную пропускную способность передачи файлов? Например: пропускная способность сервера выдает биты со скоростью 1 Мбит / с, а маршрутизатор выдает биты со скоростью 2 Мбит / с. Скажите также, что размер файла составлял 10 миллионов бит. От сервера к маршрутизатору потребуется 10 секунд, чтобы добраться до сервера, а затем потребуется около 5 секунд, чтобы добраться до клиента, в результате чего взаимодействие по общей пропускной способности займет 15 секунд. Это то, что я думаю, но используя логику учебника, это займет 10 секунд. Почему это?

2 ответа2

2

Конец с самой низкой скоростью будет определять общую скорость соединения, потому что он буквально не может получать данные быстрее, иначе это приведет к ошибкам.

Не думайте о потраченном времени, думайте о том, как быстро кто-то может слушать.

Скажем так: у вас есть человек, который читает книгу вслух, но он может говорить очень быстро, а у вас есть человек, который слушает. Человек, который слушает, может понимать только с низкой скоростью, поэтому либо быстрый читатель должен замедлиться до скорости, которую слушатель может понять, либо слушатель должен постоянно повторять «подожди, ты можешь повторить это». Это определяет пропускную способность.

Вы также делаете критическую ошибку, предполагая, что маршрутизатор удерживает весь блок данных для передачи перед передачей, и, хотя это происходит с крошечными блоками данных, это не так, как работает вся система.

Есть два выхода, которые вы смотрите здесь. Пропускная способность отправителя к маршрутизатору и от маршрутизатора к получателю. Маршрутизатор хранит только небольшое количество данных в любой данный момент и не будет хранить весь большой блок перед его повторной передачей, таким образом, у вас фактически есть самое медленное соединение в системе, ограничивающее общую скорость, с которой может работать сквозное соединение. в.

0

Представьте себе линию муравьев, движущихся от Листа к своей норе, но есть палка на пути, по которой им нужно перелезть:

<Leaf> ------ <stick> ------ <hole>

Муравью требуется 3 секунды, чтобы добраться до клюшки (этап 1 пути), 10 секунд, чтобы перелезть через клюшку (этап 2), и затем 2 секунды, чтобы перейти от клюшки к отверстию (этап 3). Общая полоса пропускания leg1 равна 3 муравьям, полоса пропускания флешки равна одному муравью, а полоса leg3 равна 3 муравьям.

Таким образом, ant0 покидает лист и отправляется на палку. он перелезает через палку и идет к дыре. Общее время = 15 секунд.

Ant1 оставляет 1 секунду позади ant0 и пересекает leg1 через три секунды. Он попадает в флешку, но пропускная способность флешки полна, потому что Ant0 использует его. поэтому Ant1 должен подождать 9 секунд, прежде чем он сможет начать пересекать палку. Когда Ant0 сделан на палке, Ant1 пересекает его и продолжает на дыру. Общее время прохождения составляет 3 с + 9 с (ожидание) + 10 с, пересекая палку + 2 секунды до отверстия => 24 секунд.

Ant2 оставляет 1 секунду позади ant1, и ему требуется три секунды, чтобы достичь палки. затем ему нужно подождать как Ant0, так и Ant1, чтобы очистить флешку, прежде чем она сможет пересечь. Общее время = 3 с + 10 с (ожидание муравья 1) + 8 с (ожидание муравья 0) + 10 с (пересечение палки) + 2 с, чтобы добраться до дыры => 33 секунды.

Итак, если бы мы измерили пропускную способность этого пути, это было бы 3/(15+24+33) => 0,0416 муравьев в секунду.

допустим, мы ускорили этап 1 до 1 секунды (в 3 раза быстрее). мы получаем 3/(13+22+31) => 0,454 муравья в секунду. очень небольшое увеличение для увеличения скорости в 3 раза на одной ноге.

Допустим, мы ускорили этап 3 до 1 секунды (в 2 раза быстрее). мы получаем 3/(12+21+30) => 0,0476 муравьев в секунду. еще раз очень мало влияния.

Однако если мы увеличим скорость leg2, возможно, на 2x-5 секунд, мы получим совсем другое число 3/(7 + 11 + 17) => 0,085 муравьев в секунду.

Таким образом, увеличение любой из более быстрых ветвей сделало очень мало, но удвоение скорости самого медленного компонента фактически удвоило пропускную способность пути.

Итак, вы заметили, что, хотя Leg3 имеет достаточную пропускную способность и высокую скорость передачи, это не влияет на скорость, с которой муравьи достигают дыры, потому что скорость, с которой муравьи входят в Leg3, является узким местом палки, поэтому большинство из полосы пропускания на Leg3 не может использоваться. Вы могли бы увеличить его в 100 раз и не иметь ни малейшего влияния на скорость, с которой муравьи достигают дыры. В этой ситуации единственное, что вы можете сделать, чтобы вообще изменить уравнение, это увеличить скорость, с которой муравьи пересекают палку. все остальное бессмысленно.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .