Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Фильтр по ip адрессу / 8 сообщений из 8, страница 1 из 1
25.10.2012, 18:58:14
    #38013665
KRED
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтр по ip адрессу
Привет,


пишу на яве некий сетевой сервис и вот потребовалось сделать быстрый и компактный поиск по спискам IP адрессов/сетей.
Таких списков планируется много, клиет может настроить множество правил на разные сущности.

Встал вопрос компактности хранения отдельных списков IP адресов, а так же поиска по ним если список вдруг станет достаточно большим (пару тысяч сетей/адресов).

Кто что может посоветовать ? Если уже готовые велосипеды ? или какие наработки для таких алгоритмов ?

Буду рад любому ... так как я пока ничего толкового не придумал:

Если список маленький то перебирать поочерёдно ....
Если большой то строить Мар по сетям , а адреса конвертировать в сеть с маской /32 ...
а алгоритм поиска довольно простой искать сетку с маской /32 потом /31 ... и так далее..

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

Есть у кого идеи ?
...
Рейтинг: 0 / 0
25.10.2012, 19:29:03
    #38013709
Usman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтр по ip адрессу
...
Рейтинг: 0 / 0
25.10.2012, 19:29:18
    #38013710
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтр по ip адрессу
KRED,
на что тратится у тебя рессурсы?
Если простой перебор, то пару тысяч элементов - это пустяк. Не усложняй.
...
Рейтинг: 0 / 0
25.10.2012, 19:50:37
    #38013729
KRED
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтр по ip адрессу
Usman,

Спасибо !
...
Рейтинг: 0 / 0
25.10.2012, 19:58:10
    #38013734
KRED
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтр по ip адрессу
Petro123KRED,
на что тратится у тебя рессурсы?
Если простой перебор, то пару тысяч элементов - это пустяк. Не усложняй.

Ты не повериш ... всё упирается в сетевой стек операционки :-) , но скоро будет все намного быстрее работать чем те жалкие 170к запросов в секунду что получается получить через ОС.

Но суть не в этом, а в том что мне нужно реализовать некую логику основаную на нахождении клиента в каком либо списке IP адресов.
Например GEO базаданных , например списки доступа ... например ещо что то связаное со списками Адрессов/сетей.

И так как такие операции будут очень частыыми (несколько проверок на один запрос) то я и задумался что будет лудше простого перебора.
...
Рейтинг: 0 / 0
25.10.2012, 20:25:33
    #38013746
Alex_1976
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтр по ip адрессу
для скорости IP сдвигом превращают в bigint
Как говориться все давно уже придумано.
Это примерно как логи ISA сервера, там в базе IP все bigint
...
Рейтинг: 0 / 0
28.10.2012, 19:10:22
    #38016255
KRED
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтр по ip адрессу
Alex_1976для скорости IP сдвигом превращают в bigint
Как говориться все давно уже придумано.
Это примерно как логи ISA сервера, там в базе IP все bigint

немоглибы вы уточнить Вашу идею ?
...
Рейтинг: 0 / 0
29.10.2012, 00:42:39
    #38016428
grasoff.net
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Фильтр по ip адрессу
KREDAlex_1976для скорости IP сдвигом превращают в bigint
Как говориться все давно уже придумано.
Это примерно как логи ISA сервера, там в базе IP все bigint

немоглибы вы уточнить Вашу идею ?
Преобразование ip address ... integer ->decimal dot notattion и обратно...
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Фильтр по ip адрессу / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]