Новые инициативы провайдеров
- Meloun
- Сообщения: 79
- Зарегистрирован: 19 окт 2011, 19:35
- Хаб: dchub://dc.sungate.su
По поводу борьбы с порнографическими и экстремистскими материалами идею полностью поддерживаю. Это реально нужно.
Самый простой способ профилактики распространения это действительно фильтр по текстовому поиску. Такую штуку внедрял, но привело это к тому, что пронеры стали имена файлов менять на совсем безобидные. Вот сейчас помню года 2 назад переписку с одной мамашей, которая скачала ребёнку фильм с именем "В ГОСТЯХ У СКАЗКИ.avi" там такая "немецкая сказка" оказалась что ололо. Пришлось убирать этот фильтр дабы уж шарили с названиями описывающими содержимое. И я пришел к выводу, что фильтровать надо не только текстовые запросы, но и поиск по TTH, а для этого нужна база с запрещенными хэшами, которой нет в природе нигде(( Т.е. нужен комплексный подход.
Если уж действительно провайдеры в купе с отделом "К" решили всерьез взяться за борьбу с распространением. То как вариант, это создание онлайн-базы где будут храниться нежелательные шаблоны имён файлов, а также хеши запрещенных файлов в md5, TTH, ссылки на запрещенные файлы в разных файловых хостингах, хэши торрент-файлов и т.п. уникальные сигнатуры (с удобоваримым интерфейсом, например простенькие запросы по HTTP) куда скрипты буду отправлять на проверку сообщения из чатов (ссылки), текстовые поисковые запросы и запросы на поиск по TTH.
Если провайдеры объединятся и будет персонал который базу в актуальном состоянии поддерживать начнет, вот тогда дело реально сдвинется с мёртвой точки.
Су довольствием поучаствовал бы в развитии этого проекта. Уже размышлял неоднократно о построении такой системы.
Технически реализовать очень просто:
-Несколько баз данных с системой репликации для балансировки нагрузки (oracle, mysql, pgsql).
-Несколько WEB фронтэндов для обработки запросов (nginx)
-Несколько наипростейших скриптов (python или php)
Формат передачи данных: HTTP запросы.
Формат сообщений: json или yaml ну или xml
Вообще уже давно пора эту тему самим двигать. Можно также покумекать на предмет того что помогать поддерживать базу будут сами пользователи, отправляя на рассмотрение хэши файлов или ссылки. На хабах вообще просто делать. Скрипт хаба и пункт в меню поиска "пожаловаться на файл" вообще элементарно.
Кто может предоставить хостинг-площадку? Провайдеры аууу!!???
Самый простой способ профилактики распространения это действительно фильтр по текстовому поиску. Такую штуку внедрял, но привело это к тому, что пронеры стали имена файлов менять на совсем безобидные. Вот сейчас помню года 2 назад переписку с одной мамашей, которая скачала ребёнку фильм с именем "В ГОСТЯХ У СКАЗКИ.avi" там такая "немецкая сказка" оказалась что ололо. Пришлось убирать этот фильтр дабы уж шарили с названиями описывающими содержимое. И я пришел к выводу, что фильтровать надо не только текстовые запросы, но и поиск по TTH, а для этого нужна база с запрещенными хэшами, которой нет в природе нигде(( Т.е. нужен комплексный подход.
Если уж действительно провайдеры в купе с отделом "К" решили всерьез взяться за борьбу с распространением. То как вариант, это создание онлайн-базы где будут храниться нежелательные шаблоны имён файлов, а также хеши запрещенных файлов в md5, TTH, ссылки на запрещенные файлы в разных файловых хостингах, хэши торрент-файлов и т.п. уникальные сигнатуры (с удобоваримым интерфейсом, например простенькие запросы по HTTP) куда скрипты буду отправлять на проверку сообщения из чатов (ссылки), текстовые поисковые запросы и запросы на поиск по TTH.
Если провайдеры объединятся и будет персонал который базу в актуальном состоянии поддерживать начнет, вот тогда дело реально сдвинется с мёртвой точки.
Су довольствием поучаствовал бы в развитии этого проекта. Уже размышлял неоднократно о построении такой системы.
Технически реализовать очень просто:
-Несколько баз данных с системой репликации для балансировки нагрузки (oracle, mysql, pgsql).
-Несколько WEB фронтэндов для обработки запросов (nginx)
-Несколько наипростейших скриптов (python или php)
Формат передачи данных: HTTP запросы.
Формат сообщений: json или yaml ну или xml
Вообще уже давно пора эту тему самим двигать. Можно также покумекать на предмет того что помогать поддерживать базу будут сами пользователи, отправляя на рассмотрение хэши файлов или ссылки. На хабах вообще просто делать. Скрипт хаба и пункт в меню поиска "пожаловаться на файл" вообще элементарно.
Кто может предоставить хостинг-площадку? Провайдеры аууу!!???
Последний раз редактировалось Meloun 30 окт 2011, 01:36, всего редактировалось 1 раз.
- mariner
- Сообщения: 336
- Зарегистрирован: 30 май 2010, 19:27
- Хаб: dchub://dc.klan-hub.ru
- Откуда: Королев
- Контактная информация:
Ты опоздал. У нас уже все есть и все работает.
Вот тут только ты немного не прав. Надо все-таки реализовать протокол DC++, да еще и обеспечить пассивный и активный поиск. Я сейчас как раз пишу подобное, но как надстройку над EiskaltDCPP-Daemon. А сейчас подобное реализовано как скрипты-плагины для Русхаба и Птоки.-Несколько наипростейших скриптов (python или php)
Последний раз редактировалось mariner 30 окт 2011, 10:14, всего редактировалось 1 раз.
- Meloun
- Сообщения: 79
- Зарегистрирован: 19 окт 2011, 19:35
- Хаб: dchub://dc.sungate.su
Аэм я имел ввиду не скрипты на стороне хаба, а единую базу запрещенного контента в виде отдельного проекта с помощью которого можно чекать ссылки и хеши. Скрипты хабов это уже другая история и тут единого подхода нет. Я вот например чужого бота с правами раздачи банов не стал бы пускать на свой хаб, но вот своего бота (скрипт, плагин) который бы сам запросы к базе делал и далее бананы раздавал, напилил ручками с удовольствием.
То что у вас уже всё это реализовано вообще прекрасно! А можно воспользоваться вашей базой для чеканья без запуска ваших ботов у себя? Есть ли возможность самостоятельно пополнять базу хешами новых порно файлов которые вычислил у себя на хабе?
То что у вас уже всё это реализовано вообще прекрасно! А можно воспользоваться вашей базой для чеканья без запуска ваших ботов у себя? Есть ли возможность самостоятельно пополнять базу хешами новых порно файлов которые вычислил у себя на хабе?
- mariner
- Сообщения: 336
- Зарегистрирован: 30 май 2010, 19:27
- Хаб: dchub://dc.klan-hub.ru
- Откуда: Королев
- Контактная информация:
Можно. Тем долее у скриптов и ботов открытый код. Смотри сколько хочешь.
Но именно самой базой нельзя. Только своя, стоящая локально.
Но именно самой базой нельзя. Только своя, стоящая локально.
Последний раз редактировалось mariner 30 окт 2011, 11:24, всего редактировалось 1 раз.
- Meloun
- Сообщения: 79
- Зарегистрирован: 19 окт 2011, 19:35
- Хаб: dchub://dc.sungate.su
Своя локальная база у каждого это как раз и есть то чему не рад. Каждому владельцу хаба приходится повторять одну и ту же работу по прочёсыванию просторов файлопомойки хаба.
Вынести бы базочку как отдельный даемон, разработать единый API запросов, напилисть скриптов под разные хабы и радоваться жизни. Причем даемон базы сделать по иерархии с кешированием на нижних узлах. Т.е. есть несколько глобальных узлов которые реплицируются между собой как мастер-мастер и есть локальные слэйв-узлы (по сути те же самые даемоны только запущенные у владельцев хаба или у провайдера), которые тянут базу к себе в кэш.
Где можно с твоими наработками ознакомиться?
Вынести бы базочку как отдельный даемон, разработать единый API запросов, напилисть скриптов под разные хабы и радоваться жизни. Причем даемон базы сделать по иерархии с кешированием на нижних узлах. Т.е. есть несколько глобальных узлов которые реплицируются между собой как мастер-мастер и есть локальные слэйв-узлы (по сути те же самые даемоны только запущенные у владельцев хаба или у провайдера), которые тянут базу к себе в кэш.
Где можно с твоими наработками ознакомиться?
Последний раз редактировалось Meloun 30 окт 2011, 11:38, всего редактировалось 1 раз.
- mariner
- Сообщения: 336
- Зарегистрирован: 30 май 2010, 19:27
- Хаб: dchub://dc.klan-hub.ru
- Откуда: Королев
- Контактная информация:
- Meloun
- Сообщения: 79
- Зарегистрирован: 19 окт 2011, 19:35
- Хаб: dchub://dc.sungate.su
мускуль это скажем-так универсальная реляционная база данных. непосредственно использовать ее API для этой задачи неразумно ибо усложняет скрипты, да и кроме мускуэля есть ряд других замечательных реляционных баз, и в общем даже объектных. нужно универсальную обёрточку сделать со своим API заточенным под конкретную задачу. Скриптики станут проще, народ потянется.
- mariner
- Сообщения: 336
- Зарегистрирован: 30 май 2010, 19:27
- Хаб: dchub://dc.klan-hub.ru
- Откуда: Королев
- Контактная информация:
- Meloun
- Сообщения: 79
- Зарегистрирован: 19 окт 2011, 19:35
- Хаб: dchub://dc.sungate.su
Я не про библиотеку говорю а про отдельного даемона который постоянно будет болтаться отдельно от хаба держать в базе кеша кусок базы с хешами и слушать свой порт. Режим работы асинхронный клиент-сервер, удобно использовать HTTP протокол. Данные в виде строкового JSON. Одним запросом можно скажем массив
из 20 хэшей отправлять и затем массив ответов получать.
Скрипты хаба упрощаются во много раз, любой мало мальски умеющий кодить сможет без труда сам написать скрипт или плагин для хаба, который будет общаться с даемоном не нагружая хаб лишней работой. Даемон можно вообще вынести на отдельную машину или сделать единым для группы хабов. Разделяй и властвую))
из 20 хэшей отправлять и затем массив ответов получать.
Скрипты хаба упрощаются во много раз, любой мало мальски умеющий кодить сможет без труда сам написать скрипт или плагин для хаба, который будет общаться с даемоном не нагружая хаб лишней работой. Даемон можно вообще вынести на отдельную машину или сделать единым для группы хабов. Разделяй и властвую))
- mariner
- Сообщения: 336
- Зарегистрирован: 30 май 2010, 19:27
- Хаб: dchub://dc.klan-hub.ru
- Откуда: Королев
- Контактная информация:
Как?) Если поиск реализован на стороне хаба? Смысл тогда вообще ускользает. Кроме того, в том же lua сокеты не могут быть многопоточными, так уж реализованы. Поэтому 2 хаба на одной машине будут падать при использовании этого расширения.нагружая хаб лишней работой.
Вэбпрограммист головного мозга? Зачем http если есть удобный xml-rpcудобно использовать HTTP протокол.
- Meloun
- Сообщения: 79
- Зарегистрирован: 19 окт 2011, 19:35
- Хаб: dchub://dc.sungate.su
Мдаа)))
Поиск-то на стороне хаба, а верификация и валидация поисковых запросов может быть вынесена куда угодно. Можно конечно дополнительно в функционал даемона добавить бота, который будет цепляться к хабу как обычный клиент и ловить поисковые запросы и далее бананить пользователей, но во-первых бананить не всегда удобно, во-вторых если даемон-верификатор запущен у кого-то еще не многие рискнут давать ему такие полномочия на хабе.
Более гибко создать скрипт или плагин который будет частью хаба он будет перенаправлять пакеты с хешами к даемону с кешем или базой и смотреть ответ, разрешенные они или нет, ну а далее принимать действия к тем кто шлет такие поисковые запросы на хаб или просто их фильтровать.
Что у всех по два хаба на машине запущено? Это частный и относительно редкий случай. Луа это вообще то еще поделие.
НаСИльник? Или наСЯльник?))
Я пример привёл что достаточно хорошо подходит как тривиальный асинхронный протокол, готовые библиотеки для работы с которым помоему есть уже везде. XML мне не нравится в принципе, перегружен тегами, существенная избыточность по трафику получается. JSON подходит много лучше.
И вообще как-бе чужое мнение надо уважать, ну и стремиться понять собеседника. Уподобляться "красноглазым" субъектам с ЛОРа не айс. Опыт в прикладном кодинге у меня тоже имеется
Поиск-то на стороне хаба, а верификация и валидация поисковых запросов может быть вынесена куда угодно. Можно конечно дополнительно в функционал даемона добавить бота, который будет цепляться к хабу как обычный клиент и ловить поисковые запросы и далее бананить пользователей, но во-первых бананить не всегда удобно, во-вторых если даемон-верификатор запущен у кого-то еще не многие рискнут давать ему такие полномочия на хабе.
Более гибко создать скрипт или плагин который будет частью хаба он будет перенаправлять пакеты с хешами к даемону с кешем или базой и смотреть ответ, разрешенные они или нет, ну а далее принимать действия к тем кто шлет такие поисковые запросы на хаб или просто их фильтровать.
Что у всех по два хаба на машине запущено? Это частный и относительно редкий случай. Луа это вообще то еще поделие.
НаСИльник? Или наСЯльник?))
Я пример привёл что достаточно хорошо подходит как тривиальный асинхронный протокол, готовые библиотеки для работы с которым помоему есть уже везде. XML мне не нравится в принципе, перегружен тегами, существенная избыточность по трафику получается. JSON подходит много лучше.
И вообще как-бе чужое мнение надо уважать, ну и стремиться понять собеседника. Уподобляться "красноглазым" субъектам с ЛОРа не айс. Опыт в прикладном кодинге у меня тоже имеется
- mariner
- Сообщения: 336
- Зарегистрирован: 30 май 2010, 19:27
- Хаб: dchub://dc.klan-hub.ru
- Откуда: Королев
- Контактная информация:
Окей. Но видимо ты не видел xml-rpc. Вот примерXML мне не нравится в принципе, перегружен тегами
Код: Выделить всё
xmlrpc http://localhost:8080/eiskaltdcpp hub.say s/"hub.mydc.ru" s/"Hello"
Не нужно этого. У нас ищется напрямую TTH. Она берется из проверенной базы, это означает , что не нужна верификация и валидация, т.к. надо уже банить "клиентов" и возвращать список забаненных.Поиск-то на стороне хаба, а верификация и валидация поисковых запросов может быть вынесена куда угодно.
Это уже из разряды "highload". Это приведет к усложнению демона. Обработка самим хабом удобнее. Но вообще, как я писал выше, у нас "адресные" выезды.перенаправлять пакеты с хешами к даемону с кешем или базой и смотреть ответ, разрешенные они или нет,
Последний раз редактировалось mariner 30 окт 2011, 13:02, всего редактировалось 1 раз.
- Meloun
- Сообщения: 79
- Зарегистрирован: 19 окт 2011, 19:35
- Хаб: dchub://dc.sungate.su
С xmlrpc действительно не работал ибо не вэб программер. Но что-то мне подсказывает, что за кажущейся простотой вызова, кроется скрытый от программиста протокол, в котором сообщения всервно передаются по сети в xml-формате.))
Ясно, это локальная реализация исключительно под вас заточено.
Вот как раз и хочется сделать универсальное решение и доступную базу для всех желающих с открытым API. Усложнить даемон, но разгрузить хаб, дабы не в ущерб производительности. Надо заинтересовать владельцев сотрудничеством, а не угрожать: либо ставите скрипт или бота, который будет кушать память сервера под базу, либо "адресный" выезд.
Ясно, это локальная реализация исключительно под вас заточено.
Вот как раз и хочется сделать универсальное решение и доступную базу для всех желающих с открытым API. Усложнить даемон, но разгрузить хаб, дабы не в ущерб производительности. Надо заинтересовать владельцев сотрудничеством, а не угрожать: либо ставите скрипт или бота, который будет кушать память сервера под базу, либо "адресный" выезд.
Последний раз редактировалось Meloun 30 окт 2011, 13:21, всего редактировалось 1 раз.
- mariner
- Сообщения: 336
- Зарегистрирован: 30 май 2010, 19:27
- Хаб: dchub://dc.klan-hub.ru
- Откуда: Королев
- Контактная информация:
Вот, кстати, пример
Вот как работаем с xml-rpc в питоне. В результате получаем сразу клиента-бота.
Код: Выделить всё
#!/usr/bin/env python2.6
# -*- coding: utf-8 -*-
import xmlrpclib
server = xmlrpclib.ServerProxy("http://localhost:8080/eiskaltdcpp")
server.show.version()
Но в конечном счете какая разница - это удобный интерефейс. Стандартизированный и рабочий. Почему бы его не использовать. Конечно, ямл дергать удобнее,но там надо писать геты, посты и прочее-прочее. Тут же все реализается заметно проще.С xmlrpc действительно не работал ибо не вэб программер. Но что-то мне подсказывает, что за кажущейся простотой вызова, кроется скрытый от программиста протокол, в котором сообщения всервно передаются по сети в xml-формате.))
Последний раз редактировалось mariner 30 окт 2011, 13:25, всего редактировалось 1 раз.
- Meloun
- Сообщения: 79
- Зарегистрирован: 19 окт 2011, 19:35
- Хаб: dchub://dc.sungate.su
- mariner
- Сообщения: 336
- Зарегистрирован: 30 май 2010, 19:27
- Хаб: dchub://dc.klan-hub.ru
- Откуда: Королев
- Контактная информация:
- Meloun
- Сообщения: 79
- Зарегистрирован: 19 окт 2011, 19:35
- Хаб: dchub://dc.sungate.su
Интерфейс это конечно хорошо. Но вот в питоне интерфейс удобен, а вот в других скриптовых языках не удобен, в некоторых его вообще нет)
В схеме которую я описал трафик к даемону будет достаточно большой, если несколько хабов будут обслуживаться. Зачем избыточность? Кстати json много шустрее парсится, чем хмл ИМХО. Более того не просто так сейчас стало популярным АПИ к базам данных делать как раз по HTTP протоколу в json формате (или другом подмножестве языка yaml). Питон с ямлом вообще замечательно дружит.
Для рассматриваемой схемы более чем достаточно GET и POST Усё.
В схеме которую я описал трафик к даемону будет достаточно большой, если несколько хабов будут обслуживаться. Зачем избыточность? Кстати json много шустрее парсится, чем хмл ИМХО. Более того не просто так сейчас стало популярным АПИ к базам данных делать как раз по HTTP протоколу в json формате (или другом подмножестве языка yaml). Питон с ямлом вообще замечательно дружит.
Для рассматриваемой схемы более чем достаточно GET и POST Усё.
- mariner
- Сообщения: 336
- Зарегистрирован: 30 май 2010, 19:27
- Хаб: dchub://dc.klan-hub.ru
- Откуда: Королев
- Контактная информация:
Это немного не то. Важна, в данном случае, скорость обработки. DC++ интерактивный протокол.даемону будет достаточно большой
А yaml и того быстрее. Yaml и xml-rpc в питоне, кстати, либами идут сишными, а json- просто как *.py модуль.Кстати json много шустрее парсится
Я в теме, на работе сейчас как раз пишем подобную штуку. Но тут скорее дело в том, что многие фрэймворки в php и ruby имеют для этого строенные средства, а вот языках типо си этого нет и удобно использовать xml-rpc по той же принине. Проблема еще в том,что xml-rpc удобнее использовать. Для конечного пользователя он лаконичнее + встроенные средства авторизации, поддержка "вложенности". Но тут, в общем то, каждому своё.популярным АПИ к базам данных делать как раз по HTTP протоколу в json формате (или другом подмножестве языка yaml)
Последний раз редактировалось mariner 30 окт 2011, 13:46, всего редактировалось 1 раз.
- Meloun
- Сообщения: 79
- Зарегистрирован: 19 окт 2011, 19:35
- Хаб: dchub://dc.sungate.su
Ну скажем любой интерпретируемый язык "не быстрый", но во всех популярных хабах скрипты-то как раз на на них, соотв будь хаб написаным хоть на ассемблере выигрыша много не будет если юзать скрипты. Соотв я пришел к выводу, что всякие холивары о том на чем лучше писать хаб можно свести к тому, что берите тот язык на котором проще разрабатывается и пишите. Время это деньги))
Кстати у меня при ~700 пользователях на хабе, процессора кушается где-то 1-2 % (машина - один из таких юнитов, фотки которого выкладывал) хаб полностью на питоне.
К хайлоаду ради прикола готовлюсь. хаб изначально разрабатывался для работы в облаке. потихоньку допиливаю функционал. набиваю руку на новых технологиях. Разработка на питоне одно удовольствие.
М.б. когда-нбудь и наберётся достаточно юзеров чтобы проверить свою работу на хороших нагрузках.
Кстати у меня при ~700 пользователях на хабе, процессора кушается где-то 1-2 % (машина - один из таких юнитов, фотки которого выкладывал) хаб полностью на питоне.
К хайлоаду ради прикола готовлюсь. хаб изначально разрабатывался для работы в облаке. потихоньку допиливаю функционал. набиваю руку на новых технологиях. Разработка на питоне одно удовольствие.
М.б. когда-нбудь и наберётся достаточно юзеров чтобы проверить свою работу на хороших нагрузках.
- mariner
- Сообщения: 336
- Зарегистрирован: 30 май 2010, 19:27
- Хаб: dchub://dc.klan-hub.ru
- Откуда: Королев
- Контактная информация:
- Meloun
- Сообщения: 79
- Зарегистрирован: 19 окт 2011, 19:35
- Хаб: dchub://dc.sungate.su
Протокол-то интерактивный, НО! во всех нормальных хабах поисковые запросы сразу не шлются юзерам, а периодически высылаются порциями и плюс жмутся. Уйма времени есть.
Настоящих джедаев которые всё пилят на Сях меньше и меньше Процессорные мощности дешевеют и растут. Много быстрее и качественнее всё разрабатывается на .NET, Java и Питоне.
Си это постоянная головная боль с поиском мемликов. Объектно-ориентированный кодинг там вообще жесть. иногда неделями ищешь источник мемликов((
Настоящих джедаев которые всё пилят на Сях меньше и меньше Процессорные мощности дешевеют и растут. Много быстрее и качественнее всё разрабатывается на .NET, Java и Питоне.
Си это постоянная головная боль с поиском мемликов. Объектно-ориентированный кодинг там вообще жесть. иногда неделями ищешь источник мемликов((
Если не трудно. Самому интересноmariner писал(а):М.б. когда-нбудь и наберётся достаточно юзеров чтобы проверить свою работу на хороших нагрузках.
Это несложно устроить хоть сейчас. У нас есть стрэсс-тест для хабов.
- mariner
- Сообщения: 336
- Зарегистрирован: 30 май 2010, 19:27
- Хаб: dchub://dc.klan-hub.ru
- Откуда: Королев
- Контактная информация:
Только благодаря им существуют эти ваши бсд, линуксы, венды и ваши скриптовые язычки. Совтвенно если надо сделать мощно и на веки - пишу на си, если быстро слабать за 2-3 часа - то питон.Настоящих джедаев которые всё пилят на Сях меньше и меньше
Чаще наоборот, спасает от мемликов. Все от стиля написания зависит.Объектно-ориентированный кодинг там вообще жесть. иногда неделями ищешь источник мемликов((
На счет тестов, то тебе
- Meloun
- Сообщения: 79
- Зарегистрирован: 19 окт 2011, 19:35
- Хаб: dchub://dc.sungate.su
- mariner
- Сообщения: 336
- Зарегистрирован: 30 май 2010, 19:27
- Хаб: dchub://dc.klan-hub.ru
- Откуда: Королев
- Контактная информация:
Вообще-то данный тест эмитирует вполне себе полноценного клиента. Для синтетики - достаточно.
Последний раз редактировалось mariner 30 окт 2011, 14:04, всего редактировалось 1 раз.