LINUX.ORG.RU
ФорумAdmin

Шейперы провайдера. Как работают?


0

0

Сидят два человека на одном 4 мегабитном канале. Один берёт и начинает качать 5 файлов по 90 МБ каждый. Канал забивается под завязку, шейпер провайдера режет до 4 МБ/с, качалка пользователя вошла в уйстойчивый режим, установив TCP-окна некоторого размера для каждого соединения, всё качается.

Просыпается второй человек и ставит качать один файл на 90 МБ. Что будет в этом случае? От него улетит запрос. С какого TCP-окна начинается диалог? Сервер отправит первый ответ около килобайта или окно сразу будет 64 КБ и сервер зарядит 64 КБ? В таком случае, эта вереница пакетов на 64 килобайта частично побьётся шейпером провайдера, ввиду существующего шторма, дующего от 5 файлов в направлении первого пользователя. Долетит до него, скажем, 20 КБ из 64 КБ. Он почешет репу и поставит окно = 20 КБ, заставив сервер дуть слабее, решив, что это проблемы на линии (шейпер - это же искусственные проблемы на линии, правда же?). То есть, добровольно снизит своё рвение за долю в канале. Конечно ветер ко второму пользователю будет отражаться на ветрах первого. Какие приоритеты расставляет шейпер провайдера между установленными соединениями? Не равные ли? В таком случае второй пользователь спровоцирует увеличение числа убитых пакетов, летящих на первого пользователя и его TCP-окна начнут сокращаться. Так всё и уравновесиццо и второй пользователь заимеет 1/6, как я понимаю? Короче, делает ли шейпер провайдера различия между соединениями, СТАРАЯСЬ уравнять их в правах?

Что если я сидел и качал на 100 КБ/с один файлик (сервер быстрее не отдавал). Тут пришла Тётя Клава, нашла сервер, отдающий стопицот терабит/сек и зафигачила с него закачку. Будет ли справедливость, короче, со стороны шейпера? Или я пойду в сад и у меня всё упадёт до 500 байт/сек?

Второй вопрос - до каких пор шейперы буфферизуют непролезающие в пользовательский канал данные и когда начинают просто рубать их на корню, провоцируя юзверские TCP-стеки переспрашивать данные?

Почитай, например, про htb quantum и перечитай свой пост еще раз. Ответишь на все вопросы сам - и про tcp-окна и про тетю Клаву.

Chumka ★★★
()

Какие tcp окна, на кой их менять? это интимное дело твоей операционной системы... там очередь используется

а ю э факин алкоголик?

dimon555 ★★★★★
()
Ответ на: комментарий от gustavo

он ответил :). man tc, man altq ... Обычно шейперы на очередях основаны, они про существования tcp ничего не знают вообще.

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

Главное моё сомнение - где взять столько памяти под очереди, если юзеры сидят на толстых каналах и качают огромные фильмы? Допустим, у человека 200 КБпс, он качает 4 ГБ, а сервер отдаёт 400 КБпс.

gustavo
() автор топика
Ответ на: комментарий от gustavo

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

Jaizer
()
Ответ на: комментарий от gustavo

а какая связь между скоростью и длиной очереди? На гигабитном линке очередь в 100 пакетов отлично работала :)

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

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

Jaizer
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.