Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Подключение библиотек для разбора протоколов  (Прочитано 7877 раз)
0 Пользователей и 1 Гость смотрят эту тему.
dimaslviv
Участник

ua
Offline Offline

« : 16-02-2012 12:56 » 

Всем доброго времени суток. Может кто-то знающий подсказать есть ли какие-то библиотеки, которые принимают пакеты на вход и обрабатывают их а результат можна передать в какую-то программу).
Тоисть для примера FTP - принимает файл, и чтоб он передавал сам файл и название; HTTP - страницу, и путь ко всем ее елементам...
Ведь не все пишут разборщики с нуля - люди уже давно подключают библиотеки...
Записан
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #1 : 16-02-2012 20:14 » 

Ничего не понял.
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
Вад
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #2 : 17-02-2012 11:58 » 

Присоединяюсь к непониманию: задача-то какая? Какие пакеты принимать, зачем?
Реализация ftp-протокола - это одно, разбор html документа - совсем другое. Разумеется, для стандартных задач есть какие-то готовые библиотеки.
Записан
dimaslviv
Участник

ua
Offline Offline

« Ответ #3 : 17-02-2012 14:37 » 

Прошу прощения за плохое изложения мысли. Попробую ещё раз обьяснить:

Я пишу парсер протоколов.
На вход мне подаются пакеты записанные в wireshark и на выходе должны получиться нормальный разобранные данные с дополнительными метками к примеру: что за протокол, куда данные сохранились...что-то в этом роде
Записан
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #4 : 17-02-2012 15:19 » 

dimaslviv, HTTP и FTP - это прикладные протоколы 7-го уровня. В них нет понятия "пакет", в них есть потоки символов в определённых кодировках. "Пакеты" определяются в протоколах 3-го уровня (IP).

Поэтому по-прежнему совершенно непонятно, о чём речь. Привязка протоколов к потокам символов возможна по номерам портов 4-го уровня (TCP, UDP - для HTTP 80, для FTP 20,21), но это ненадёжный метод, поскольку никто не запрещает использовать другие порты.

Если нужно определить, что трафик, как поток символов, является сообщением/запросом прикладного протокола, нужен парсер текстов, обученный разным протоколам, и пробующий разобрать поток символов с точки зрения разных протоколов. Разбор идёт последовательно по тексту, в котором ищутся синтаксические и семантические ошибки разных протоколов. Для каких протоколов найдены ошибки, те протоколы отсеиваются. В конце остаётся либо один искомый протокол, который текст не нарушает, либо сообщение, что протокол не опознан.
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
dimaslviv
Участник

ua
Offline Offline

« Ответ #5 : 23-04-2012 12:10 » 

Dimka, вот я и пишу такой парсер)
может подскажешь какой-то ресурс где можно почитать точнее как такая система реализуется.
Спасибо
Записан
darkelf
Молодой специалист

ua
Offline Offline

« Ответ #6 : 23-04-2012 14:15 » 

dimaslviv, По ссылке http://rfc2.ru/ приведены переводы описания официальных стандартов протоколов.
Записан
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #7 : 23-04-2012 14:30 » 

dimaslviv, я тут вижу противоречие в словах. Либо ты разрабатываешь парсер сам, либо берёшь готовый. Какой смысл кому-то описывать, как делаются такие парсеры? Парсер - он и в Африке парсер. Берёшь стандарты протоколов и сводишь воедино грамматики. Либо берёшь готовый, и тогда тут нет разработки.

Если ты не понимаешь, что такое грамматики, и как работает парсер вообще (чего угодно), то тебе ещё далеко до протоколов, сначала нужно разобраться с теорией синтаксического и семантического анализа.

Промежуточный вариант: взять готовые парсеры протоколов и придумать правило их последовательного перебора применительно к получаемым сообщениям.
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines