The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Управление входящим TCP потоком"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Управление входящим TCP потоком"  
Сообщение от jz email on 16-Окт-07, 23:32 
Знаю, что существует способ управлять входящим (на сервер) TCP потоком (от клиентов) путем изменения размера окна перегрузки (cwnd). Удастся ли такое же действие реализовать путем задержки подтверждений (ACK)?
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Управление входящим TCP потоком"  
Сообщение от Alu email on 17-Окт-07, 09:19 
>Удастся ли такое же действие реализовать путем задержки подтверждений (ACK)?

Существует несколько стратегий управления TCP-потоком. Одной из самых распостраненных  является стратегия "медленного старта - устранения затора".
В фазе медленного старта при получении каждого ACK отправитель увеличивает значение своего окна переполнения, что приводит к росту скорости передачи. Т.е. задерживая отправку ACK Вы замедляете рост скорости(ускорение) передачи данных, но не саму скорость.
Фаза устранения затора наступает по тайм-ауту получения ACK и приводит к сбросу размера окна переполнения(и, соответственно, снижению скорости передачи). После чего снова запускается алгоритм медленного старта.
Т.е в Вашем случае решение(ИМХО) выглядит следующим образом: при достижении отравителем некой пороговой скорости, нужно не посылать ACK в течении тайм-аута, что приведёт к сбросу скорости.И повторять эти действия циклично.
Подробнее об алгоритмах управления TCP-потоком можно почитать тут:
http://www.opennet.me/docs/RUS/inet_book/4/44/tcp_443.html
RFC-793,1323
ОС Unix(А. Робачевский)


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру