Jump to content
Калькуляторы

Opensouece DPI

И так,знает ли кто нибодь нормальные решения под opensource.

 

http://devel.aanet.ru/ndpi/ - куррируется vel'ом на LOR

http://pastebin.com/CYeZGcUZ - патч на ядро

http://pastebin.com/DKsGmMXg - iptables

это улучшенный -m string

Share this post


Link to post
Share on other sites

И так,знает ли кто нибодь нормальные решения под opensource.

 

http://devel.aanet.ru/ndpi/ - куррируется vel'ом на LOR

http://pastebin.com/CYeZGcUZ - патч на ядро

http://pastebin.com/DKsGmMXg - iptables

это улучшенный -m string

 

тоже подключаюсь к тебе, нужность этой вещи растет .

Share this post


Link to post
Share on other sites

Ну так скат как я понял с них и начинал

Share this post


Link to post
Share on other sites

Студенты Луиджи подтянутся и лет через 5 будет на netmap каконить DPI.

Может быть.

Тема с одной стороны сложная, с другой оно мало кому нужно.

Те вилка: "сложно" vs "for fun"/"сильно надо" - не сходится, потому и нет и мало шансов что будет.

 

Даже при всей моей любви к нетграфу я бы на нетмапе демал как сделать.

Хотя там код для работы с принял/передал вообще самое лёгкое, сложность в построении гибкого фреймворка для разбора пакетов по очень гибким правилам.

Share this post


Link to post
Share on other sites

Вопрос лишь в том, что задача мерзковатенькая, чтобы ей заниматься :) Netmap'у нужен драчевый напильник, если не душит жаба на лицензию - PF_RING проще и предсказуемее себя ведет в разы.

 

По теме netmap, если есть желание, я его-таки собрал и сделал актуальный симбиоз с дровами ixgbe с сорсфоржа: http://www.stableit.ru/2014/10/netmap-debian-7-wheezy-intel-82599.html

Edited by pavel.odintsov

Share this post


Link to post
Share on other sites

Вопрос лишь в том, что задача мерзковатенькая, чтобы ей заниматься :) Netmap'у нужен драчевый напильник, если не душит жаба на лицензию - PF_RING проще и предсказуемее себя ведет в разы.

 

По теме netmap, если есть желание, я его-таки собрал и сделал актуальный симбиоз с дровами ixgbe с сорсфоржа: http://www.stableit....ntel-82599.html

 

Согласен, но если ты пров, а цена за инет падает, то надо что-то делать, чтобы уменьшить качальщиков и скэномить на канале

Share this post


Link to post
Share on other sites
Вопрос лишь в том, что задача мерзковатенькая, чтобы ей заниматься :)

Задача то обычная, и DPI нужен/полезен не только провайдерам, но и корпоратам.

Когда речь чисто о блокировках по цензуре - да, но это частный случай применения инструмента.

Говорю же, проблема в том что вилка мотивация-сложность не сходится для данной задачи.

Те у кого оно сошлось - понимают что это слишком круто чтобы быть бесплатным и жить так дальше, потому что DPI везде применяют для зарабатывания или как сопутствующий этому инструмент, дома его не применяют :)

 

Netmap'у нужен драчевый напильник, если не душит жаба на лицензию - PF_RING проще и предсказуемее себя ведет в разы. По теме netmap, если есть желание, я его-таки собрал и сделал актуальный симбиоз с дровами ixgbe с сорсфоржа: http://www.stableit....ntel-82599.html

Во фре он тоже есть.

В случае с нетмапом вообще разницы нет между фря/линух, проще брать то где уже есть нужные дрова.

Share this post


Link to post
Share on other sites

Ivan_83, я бы пошел вашим путем по аналогии с идеей про срез торрентов. Сделать малофункциональный DPI, который покрыл бы 90% трафика особо жручего до полосы.

Share this post


Link to post
Share on other sites

Кстати, вот крутая тема: http://cachevideos.com/

 

Это все можно сделать VideoCache is a Squid URL rewriter plugin . Однако все равно хочеться продетектить что там льется у юзверов

Share this post


Link to post
Share on other sites

А вот это разве не айс? http://www.ntop.org/products/ndpi/ Это от поцанов из PF_RING, они умеют лопатить десятки гигабит.

 

Ну тогда наверное ndpi )

Share this post


Link to post
Share on other sites
Ivan_83, я бы пошел вашим путем по аналогии с идеей про срез торрентов. Сделать малофункциональный DPI, который покрыл бы 90% трафика особо жручего до полосы.

Формально там не срез, а управление, те можно просто промаркировать или просто мониторить.

Вот, почитайте: http://habrahabr.ru/post/247743/

 

Вы наверное не представляете куда лезете :)

Когда тема с блокировками по спискам ещё только начиналась - я написал в топике как должен работать DPI чтобы совсем ничего не пропускать мимо.

uTP - это просто сказка и подарок, работать с ним на несколько порядков проще, чем с tcp+http: не нужно собирать пакеты, всё нужное всегда в одном пакете, не нужно лазать внутрь слишком глубоко, достаточно просто удостоверится что это uTP. На фрагментированные IP пакеты можно забить.

Короче, с http получается практически так же сложно как написать ядерный http прокси.

Тогда же я писал что https эту идею закопает.

И вот уже http2 готов чтобы закапывать, и ютуп на https шпарит, и много кто ещё.

 

С другой стороны, если не нужно ничего кроме как детектить какой у юзера протокол и может считать сколько прошло через каждое соединение/протокол, то сложность получается не сильно выше чем с uTP.

Share this post


Link to post
Share on other sites

Что еще веселее, у всех ведроид клиентов нет поддержки SNI.

И более того, юбтуб сервера вполне могут обслуживать другие виды траффика (т.е. по сертификату сервера тоже возможно бесполезно смотреть).

Share this post


Link to post
Share on other sites

Ivan_83, я читал статей, он очень и очень полезный! Как раз по её мотивам и предложил вычислять торрентовый трафик и работать с его деприоритизацией.

 

А вот https это огромный шаг вперед :) И гвоздь многим провайдерам в гроб, к сожалению. Обоюдноострое лезвие.

 

Кроме http/2 есть еще и SPDY, который тоже ой как не прост и зашифрован по самые-самые. Хоть и HTTP/2 умеет работать без шифрования, многие браузеры уже заявили, что этот режим тупо не будут поддерживать. А недавно на https полностью перешел mail.ru (а это немало трафика), yandex и прочие - скоро подтянутся. Google - как упоминали ранее - как всегда впереди планеты всей.

 

В DPI я лезть не хочу, в данном треде я теоретик-теоретик =) Я тут пытаюсь собрать TCP сессию руками, то еще развлечение. До http такими темпами я дойду через сотню лет :)

Share this post


Link to post
Share on other sites
А вот https это огромный шаг вперед :) И гвоздь многим провайдерам в гроб, к сожалению. Обоюдноострое лезвие.

Это нормально.

Когда провайдерам доверяли, они могли делать с трафом что угодно.

Они резали совсем зло и кешировали хттп.

Когда провайдеры начали смотреть что там внутри и резать то что нужно - получили по рукам, технологическим методом.

То что провайдерам стало хуже - их собственная заслуга.

 

Кроме http/2 есть еще и SPDY, который тоже ой как не прост и зашифрован по самые-самые.

Это почти одно и тоже.

Но SPDY уже похоронили, с месяц или больше как.

 

В DPI я лезть не хочу, в данном треде я теоретик-теоретик =) Я тут пытаюсь собрать TCP сессию руками, то еще развлечение.

А IP фрагментированные уже собрали?

Решили что делать с перекрывающимися сегментами?)

Share this post


Link to post
Share on other sites
Что еще веселее, у всех ведроид клиентов нет поддержки SNI.

Это не так, возможно в Android 2.3 и раньше не было, но у всех современных есть.

Share this post


Link to post
Share on other sites

Это не так, возможно в Android 2.3 и раньше не было, но у всех современных есть.

Формально есть, только большинство софта(по обьему) его не использует, скорее всего из-за backward compatibility.

 

https://developer.android.com/training/articles/security-ssl.html

Fortunately, HttpsURLConnection supports SNI since Android 2.3. Unfortunately, Apache HTTP Client does not, which is one of the many reasons we discourage its use. One workaround if you need to support Android 2.2 (and older) or Apache HTTP Client is to set up an alternative virtual host on a unique port so that it's unambiguous which server certificate to return.

И судя по всему его используют приложения facebook, youtube, и еще некоторые, которые например у меня составляют львиную долю траффика.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this