Форум: "Сети";
Текущий архив: 2003.09.18;
Скачать: [xml.tar.bz2];
Внизping! Найти похожие ветки
← →
and_2 (2003-07-15 08:44) [0]Здравствуйте мастера, такой вопрос как пингнуть диапазон IP адресов ??? а лучше если это сделать одновременно! то есть послать по одному пакетику каждой машине и все это одновременно.
заранее спасибо
← →
Digitman (2003-07-15 09:15) [1]
> и все это одновременно
для этой цели следует использовать доп.код.потоки, в каждом из которых пингуется отдельный хост (см. IcmpSendEcho)
← →
Snap (2003-07-15 13:41) [2]Eсли так хочется возиться, можно попробовать намутить бродцастовые или мультиадресные пакеты, только так можно добиться настоящей одновременности, но по моему дело того не стоит.
← →
and_2 (2003-07-15 17:27) [3]Мне подсказали что надо будет создать пару потоков thread"ов и запустить их синхронно! а как ?
← →
Gigabyte (2003-07-15 21:33) [4]Да ладно "синхронно"...
можно и не синхронно...
можно просто организовать массив а потом
For i:=0 to Threads.Count-1 do Threads[i].Resume;
они (Threads) даже не заметят что были запущены несинхронно т.к. будут заняты пингом
← →
Digitman (2003-07-16 10:02) [5]
> and_2
почему "пару"-то ? если, как ты говоришь, "одновременно", то - столько потоков, сколько адресов пингуется в дан.момент времени !
← →
Gigabyte (2003-07-16 15:23) [6]> Digitman
столько потоков, сколько адресов пингуется в дан.момент времени !
Комп может не выдержать. По себе знаю
← →
Anatoly Podgoretsky (2003-07-16 15:31) [7]Известны случаи одновременной работы свыше 10000 потоков. Ты наверно что то не так делал.
← →
Digitman (2003-07-16 15:34) [8]
> Gigabyte
при чем здесь комп ? если уж на то пошло, кол-во тредов процесса в принципе ограничено !
но ничто не мешает организовать тред-пул
← →
and_2 (2003-07-16 16:00) [9]да не!
допустим 2500 ипов значит 2500 потоков! по 1 пакету, который вести 1 байт! эт разве нагррузка ?
← →
Fay (2003-07-16 16:43) [10]>> да не!
>> допустим 2500 ипов значит 2500 потоков! по 1 пакету, который >> вести 1 байт! эт разве нагррузка ?
????????????????
← →
and_2 (2003-07-16 17:15) [11]ну так может кто нить выложит что нибудь ценное по делу?
у мя проблема с кодингом а с теорией все ок!
← →
sergey2 (2003-07-16 20:05) [12]
> and_2 © (16.07.03 16:00)
> да не!
> допустим 2500 ипов значит 2500 потоков! по 1 пакету, который
> вести 1 байт! эт разве нагррузка ?
А зачем сразу 2500 потоков? Думаешь от этого быстрее будет?
← →
Anatoly Podgoretsky (2003-07-16 20:34) [13]and_2 © (16.07.03 16:00)
Зачем же 2500 поток, рациональнее сканировать по сетя класса С, а это всего 256 потоков.
← →
Morfein (2003-07-17 02:41) [14]В данном случае потоков может быть и тысяча, и пять тысяч, и больше, без большой нагрузки на сеть... Потому как каждый поток большее кол-во времени проводит в ожидании ответа на пинг.
>>and_2
ICMP-пакет таки не один байт весит, а 28 + данные...
← →
nikus (2003-07-17 19:05) [15]Система больше тормозит при создании/высвобождении потоков, чем при выполнении (в данном случае). Предпочтительней, я считаю, ограничиться 50-ю потоками.
← →
Anatoly Podgoretsky (2003-07-17 23:22) [16]2^N
← →
Gigabyte (2003-07-18 10:06) [17]Короче напиши мне, я тебе вышлю пример пинга через WinAPI и помогу организовать потоки
← →
Verg (2003-07-18 16:20) [18]
> то есть послать по одному пакетику каждой машине и все это
> одновременно.
Одновременно? Ух ты!
Среднестатистическая сетевая карта одновременно может посылать только один пакет - и тут хоть 50 млн. потоков на нее навалятся - ответ один: "В очередь, сукины дети, в очередь!" (C) "Собачье сердце".
Другое дело бродкастовые пакеты - типа один реквест послал - жди тепереь N секунд все респонсы, через N секунд подсчитывай сколь получилось.
В ICMP по-моему нет способа послать широковещательный ECHO_REQUEST, хотя .... можно попробовать.
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2003.09.18;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.009 c