Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Управление bot-ом по HTTP (https://forum.antichat.xyz/showthread.php?t=134386)

VARVAR 11.08.2009 22:33

Управление bot-ом по HTTP
 
Возникло много вопросов по управлению bots.

Модель с центром управления.
Бот - клиент


Если взять одного бота, то бот должен:
1) проверить есть ли Интернет;
2) законнектиться на хостинг к php-скрипту;
3) передать свои параметры (id, IP-компа, время и др.);
4) записать их в БД;
5) получить новую комманду;
6) выполнить комманду;
7) цикл пп. 5-6 (или при выходе их инета 2-6)

Вопросы:

- Получается bot постоянно шлет GET-запросы через очень малые интервалы (т.е. большой трафик) и получает комманду на каждый запрос;
- Нельзя ли сделать, чтобы он просто ждал ? Но бот то клиент !!!

Что думаете Вы ???

bons 11.08.2009 23:11

Цитата:

- Получается bot постоянно шлет GET-запросы через очень малые интервалы (т.е. большой трафик) и получает комманду на каждый запрос;
а) если интервалы не малые то трафик норм.
б) Можно немного оптимизировать. Что-то вроде этого: после того как бот подключился несколько раз с интервалом в 20 сек и не получил новой команды, то он увеличивает интервал до 20 минут.
Цитата:

- Нельзя ли сделать, чтобы он просто ждал ? Но бот то клиент !!!
юзать не HTTP-протокол, а что-то свое, основанное на постоянном подключении. Но если это действительно ботнет то тогда возникнут другие проблемы.
Цитата:

Что думаете Вы ???
думаю писать ботов нехорошо;)

toby1980 11.08.2009 23:13

ICQ бот пеши

VARVAR 11.08.2009 23:35

Цитата:

думаю писать ботов нехорошо
это для пробы !

за советы спасибо

Цитата:

ICQ бот пеши
так вроде отжило уже

=Zeus= 12.08.2009 00:55

А на чем бот-то написан?

Jes 12.08.2009 01:14

а например (как вариант) Connection: Keep-Alive и асинхронный прием данных ?

VARVAR 12.08.2009 01:34

Цитата:

А на чем бот-то написан?
На С конечно. Размер 3КБ пока

VARVAR 12.08.2009 02:18

уточню вопрос:

Интересует именно управление конкретным ботом (с определенным id),
т.е. вышел на связь - управляем им конкретно !!!

Если делать большие интервалы для коннекта к центру управления, то мы его теряем в N-й момент времени при управлении центром

Получается надо делать высокую частоту запросов (секунды).
Бот на связи - > управляем им

Nightmarе 12.08.2009 05:20

Цитата:

Сообщение от Jes
а например (как вариант) Connection: Keep-Alive и асинхронный прием данных ?

Вот про этот способ хотелось бы поподробнее узнать.
То есть по HTTP протоколу теоретически возможно установить соединение в режиме ожидания без растрат траффига?

VARVAR 12.08.2009 14:07

Вот нашел

Цитата:

Connection (соединение)- может принимать значения Keep-Alive и close.
Keep-Alive ("оставить в живых") означает, что после выдачи данного документа соединение с сервером не разрывается, и можно выдавать еще запросы. Большинство браузеров работают именно в режиме Keep-Alive, так как он позволяет за одно соединение с сервером "скачать" html-страницу и рисунки к ней. Будучи однажды установленным, режим Keep-Alive сохраняется до первой ошибки или до явного указания в очередном запросе Connection: close.
close ("закрыть") - соединение закрывается после ответа на данный запрос.
А запрос GET все равно делать надо.


Время: 12:38