Форум: "Сети";
Текущий архив: 2003.07.28;
Скачать: [xml.tar.bz2];
ВнизКакие есть идеи, как ограничивать TCP траффик программы? Найти похожие ветки
← →
Zelius (2003-05-14 17:49) [0]Это делается искуственно задержками в программе или с помощью WinSock API? Спасибо!
← →
Malder (2003-05-14 19:10) [1]>искуственно задержками
← →
servs (2003-05-14 19:25) [2]Програма твоя?
Тогда делаешь буфер. И в функции FlushBuffer искуственно ограцичиваешь.
Но насколько я помню, задача не тривиальная. Сам не делал, друг маялся, но помню что не все гладко было.
← →
leonidus (2003-05-14 22:53) [3]Но ведб FlashGet и ReGet как-то умеют ограничивать трафик, или они используют просто искусственные приемы?
← →
Reindeer Moss Eater (2003-05-15 09:24) [4]FlashGet и Reget знают страшную тайну, что если количество считанных байт разделить на время, то получится скорость.
← →
Zelius (2003-05-15 10:32) [5]А можно ли к этой теме прикрутить QoS из WinSock2 ? И если нет, то тогда зачем оно нужно :)
← →
leonidus (2003-05-17 23:21) [6]>Reindeer Moss Eater не понял мысль?
← →
Zelius (2003-05-18 20:32) [7]
> Reindeer Moss Eater (15.05.03 09:24)
А если скачивать в несколько потоков и у каждого потока своя скорость? Причем она неравномерная...
← →
Reindeer Moss Eater (2003-05-19 09:00) [8]А если скачивать в несколько потоков и у каждого потока своя скорость? Причем она неравномерная...
И что это меняет?
← →
Zelius (2003-05-19 11:20) [9]
> Reindeer Moss Eater (19.05.03 09:00)
Определение скорости простым делением скаченного на время будет сильно прыгать и показывать какой угодно результат кроме реального, покажет только порядок! А если еще и идет ограничение траффика, то есть Sleep(), то цифры ыообще буду плясать...
← →
Reindeer Moss Eater (2003-05-19 13:15) [10]...будет сильно прыгать...
С чего бы вдруг?
...и показывать какой угодно результат кроме реального ...
Ну это зависит от собственных навыков в простых арифметических действиях
← →
Zelius (2003-05-19 13:20) [11]
> Reindeer Moss Eater (19.05.03 13:15)
а ты попробуй, а то я тебе говорю как есть на самом деле, а ты мне не веришь...
← →
Reindeer Moss Eater (2003-05-19 13:20) [12]Загляни лучше внутрь модуля IdIOHandlerThrottle.
← →
Reindeer Moss Eater (2003-05-19 13:21) [13]а ты попробуй
Я пробовал делить еще в средней школе.
Помню получалось неплохо.
← →
leonidus (2003-05-20 12:02) [14]Так какже РЕАЛЬНО а не для виду, ограничить трафик?
← →
Zelius (2003-05-20 12:56) [15]Проблема не в том, как вычислить задержку, на которую поток заснет, а в том как правильно показывать скорость закачки и сколько осталось времени, тем более в многопоточном скачивании... Я так и не придумал нормального способа, бум думать дальше...
← →
Reindeer Moss Eater (2003-05-20 13:07) [16]Задача для школьников младших классов:
Дано : файл длиной N мб.
Требуется : принять/передать файл со средней скоростью X байт/сек
Решение :
1. Выбираем блок небольшой длины. Например Y байт.
2. Вычисляем сколько миллисекунд долже приниматься передаваться блок со скоростью X байт/сек
3. Делаем GetTickCount, передаем/принимаем блок, Делаем GetTickCount еще раз
4. Сравниваем расчетное время передачи с реальным
5. Если расчетное время передачи/приема блока превышает реальное, делаем Sleep(Разница_Расчетного_и_Реального_времени)
6. Передаем/принимаем следующий блок.
← →
Reindeer Moss Eater (2003-05-20 13:26) [17]как правильно показывать скорость закачки и сколько осталось времени, тем более в многопоточном скачивании...
"Многопоточное скачивание" и "сколько осталось времени" - значит речь идет о закачке одного файла несколькими потоками? Зачем тогда ограничивать трафик?
Сразу вспомнил своего водителя-инструктора из автошколы ДОСААФ, который матерился, если обучаемый жал на тормоз, не снимая ноги с педали газа. :)
← →
Zelius (2003-05-20 17:09) [18]
> "Многопоточное скачивание" и "сколько осталось времени"
> - значит речь идет о закачке одного файла несколькими потоками?
> Зачем тогда ограничивать трафик?
А хрен его знает! Юзер говорит, что хочет :) Причем, ограничение на весь траффик программы, а не на один поток...
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2003.07.28;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.011 c