Изобретение относится к аппаратно-программным комплексам для осуществления беспроводной связи, а именно к способам разбора сетевых протоколов семиуровневой модели OSI для анализа и фильтрации их содержимого.
Модель OSI была известна ещё в 1970-х [Zimmermann H. OSI reference model–The ISO model of architecture for open systems interconnection //Communications, IEEE Transactions on. – 1980. – Т. 28. – №. 4, . 425-432 с.] и является классикой в области построения сети «Интернет». Также сетевая модель OSI подробно описана в ГОСТ Р ИСО/МЭК 7498-1-99.
Способ высокоскоростного анализа сетевых протоколов 7-го уровня модели OSI (глубокого разбора) требует ЭВМ, содержащую, по меньшей мере, одну сетевую карту для приёма и передачи данных 2-го уровня модели OSI, снабжённую, по меньшей мере, двумя сетевыми интерфейсами (физическими портами). Каждый сетевой интерфейс предоставляет возможность чтения, записи и удаления из его платы памяти, а также возможность передачи данных в другой сетевой интерфейс. Перечисленные действия осуществляются программами, работающими на ЭВМ, где расположен сетевой интерфейс. Каждый сетевой интерфейс обладает устройством кодирования/декодирования сигнала, передающегося по среде передачи посредством радиосигналов либо электрических сигналов для передачи, к примеру, в среде Ethernet (по проводнику), Wi-Fi.
Декодированный сигнал представляет из себя последовательность цифровых пакетов – наборов байт, сохранённых на плате памяти сетевого интерфейса. Аналогично цифровые пакеты, сохранённые в памяти сетевого интерфейса, могут быть закодированы в виде сигнала (радиоволн, электрического сигнала) и переданы по среде передачи другой ЭВМ.
Стандартный способ разбора сетевых пакетов предполагает последовательный разбор от 1-го уровня к 7-му. Сетевой пакет представляет собой множество вложенных друг в друга пакетов, каждый из которых обладает заголовком. Например, переданный по среде передачи Ethernet сетевой пакет содержит заголовок с адресами сетевого интерфейса отправителя и получателя, типом вложенного в него пакета более высокого уровня, после чего – сам пакет более высокого уровня. Сам пакет более высокого уровня также состоит из адреса отправителя и адреса получателя (к примеру, IP-адресов), прочей служебной информации, после чего – сам пакет более высокого уровня.
Вложенная структура обусловлена вложенностью технологий, используемой в сети Интернет, которая требует кодирования и обеспечения помехоустойчивости, реализации адресации внутри локальных сетей, реализации адресации внутри глобальных сетей, реализации адресации для разбора пришедших данных на ЭВМ и т.д. Каждая подобная вложенность требует отдельного разбора каждого вложенного пакета. В рамках модели OSI используется 7 уровней.
Последовательный разбор пакетов уровень за уровнем является стандартным современным способом глубокого разбора сетевых пакетов (ГЕТЬМАН А. И. и др. Модель представления данных при проведении глубокого анализа сетевого трафика //Труды Института системного программирования РАН. – 2015. – Т. 27. – №. 4).
Вместе с тем, известные способы не обеспечивают высокоскоростной технологии разбора пакетов для анализа и фильтрации их содержимого.
Высокоскоростной способ глубокого разбора сетевого трафика обеспечивается, как правило, путем математического ускорения разбора каждого уровня в отдельности, т.е. на ускорение самих вычислений и на новые средства обработки информации (Bitar A., Abdelfattah M., Betz V. Bringing Programmability to the Data Plane: Packet Processing with a NoC-Enhanced FPGA //Field-Programmable Technology (FPT), 2015 International Conference on. – 2015). Действительно, технологии FPGA позволяют делать вычисления ещё быстрее, но не исчерпывают возможности повышения производительности технологий высокоскоростного глубокого разбора сетевых протоколов.
Известен способ, реализуемый межсетевым экраном с фильтрацией трафика по мандатным меткам, который решает задачу разбора пакетов сетевого трафика с точки зрения сетевой безопасности, а именно известный межсетевой экран предусматривает разбор сетевого пакета в соответствии со спецификацией протокола IP (патент на полезную модель RU №159041, 2015). Следуя спецификации вышеупомянутого ГОСТ Р ИСО/МЭК 7498-1-99 протокол IP находится на 3-м уровне модели OSI. Способ, реализуемый известной межсетевой картой, теряет время на разбор пакета на уровне IP, что не обеспечивает существенного увеличения производительности процесса разбора сетевых пакетов.
Наиболее близким к предлагаемому является способ для обработки услуги передачи данных, содержащий следующие этапы: прием пакета услуг передачи данных; идентификация информации протокола и/или информации услуги упомянутого пакета услуг передачи данных; отображение информации протокола и/или информации услуги в соответствующее поле типа услуги (ToS) и изменение значения типа услуги упомянутого пакета согласно отображенному полю типа услуги и выполнение планирования очередности для пакета согласно значению типа услуги упомянутого пакета. Идентификация информации протокола и/или информации услуги упомянутого пакета содержит идентификацию информации протокола и/или информации услуги упомянутого пакета посредством использования технологии глубокой инспекции пакетов (DPI), при этом информация протокола содержит тип протокола, а информация услуги содержит, по меньшей мере, информацию качества обслуживания, информацию имени точки доступа, информацию отрезка времени, информацию объема накопленного трафика, информацию накопленной длительности, тип однонаправленного канала и тип услуги. Изменение значения типа услуги упомянутого пакета согласно отображенному полю типа услуги, в частности, содержит создание таблицы переходов согласно отображенному полю типа услуги; запись значения типа услуги, соответствующего потоку данных в элементе таблицы переходов; и изменение значения типа услуги упомянутого пакета, соответствующего потоку данных, на соответствующее значение типа услуги. Перед идентификацией информации протокола и/или информации услуги упомянутого пакета способ содержит запрашивание таблицы переходов согласно информации пятерки элементов IP у пакета данных; и если в таблице переходов находят соответствующий элемент таблицы переходов, то изменение полей типа услуги всех пакетов, соответствующих потоку, на соответствующее значение типа услуги (заявка на изобретение RU 2012157264, 2014).
Известный способ обработки и разбора сетевых пакетов позволяет использовать информацию, полученную в результате обработки данных проходящего трафика, программой для разбора 7-го уровня модели OSI, однако в нем не усматривается оптимизаций на уровне получения данных трафика и не предполагается повышение скорости анализа и фильтрации содержимого сетевых пакетов.
Задачей настоящего изобретения является повышение производительности высокоскоростного глубокого разбора сетевых протоколов путем уменьшения количества вычислений при одновременном получении данных, эквивалентных стандартному способу разбора.
Технический результат – повышение скорости анализа и фильтрации содержимого сетевых пакетов с сохранением качества глубокого разбора сетевых протоколов.
Поставленная задача решается тем, что заявляется способ глубокого разбора сетевых протоколов для анализа и фильтрации их содержимого путем прохождения сигнала по среде передачи с первого физического уровня семиуровневой модели OSI на второй уровень, где расположены первый и второй сетевые интерфейсы сетевой карты ЭВМ, в каждом из которых средствами микросхемы сетевого интерфейса осуществляется декодирование сигналов в последовательность байт, представляющую собой на логическом уровне множество сетевых пакетов, которые записывают и хранят в памяти первого и второго сетевых интерфейсов, каждый из сетевых интерфейсов имеет регистр управления и по две области памяти, одна область памяти каждого интерфейса предназначена для буферизации входящих пакетов, а вторая область памяти каждого интерфейса предназначена для исходящих пакетов, хранящихся до их кодирования в сигнал и отправки в среду передачи, регистры управления и области памяти каждого интерфейса отображаются в оперативной памяти седьмого уровня, на котором посредством управляющих регистров производится отбор очередей входящих пакетов путем анализа длины заголовков и их фильтрации путем принятия решения пропустить пакет в среду передачи или заблокировать его дальнейшую передачу, управляющая команда с седьмого уровня подается на регистры управления сетевых интерфейсов второго уровня, которые взаимодействуют друг с другом, осуществляя передачу пакетов.
Для осуществления заявляемого способа требуются сетевые карты ЭВМ с как минимум двумя сетевыми интерфейсами и поддержкой программ, обеспечивающих прямой доступ к памяти сетевых интерфейсов. Сетевые карты установлены в компьютере с доступом к сети Интернет, который снабжен операционной системой и прикладными программными средствами (приложениями). Заявляемый способ применим для семиуровневой модели OSI на платформах Linux и FreeBSD. В качестве регистров управления используют процессоры ЭВМ с поддержкой технологии MTRR или его аналога – PAT.
Технология MTRRs (Memory type range registers — Диапазонные регистры типа памяти) используются для назначения типа (политики кеширования) участкам памяти. Регистры MTRR предоставляют механизм, связывающий типы памяти с физическими адресными диапазонами системной памяти. Они позволяют процессору оптимизировать операции для разных типов памяти, таких как ПЗУ, ОЗУ, кадровый буфер и, отображаемые в памяти устройства ввода-вывода. Они также упрощают разработку системного оборудования, уменьшая количество контактов управляющих памятью, которые использовались для этой цели в ранних процессорах и внешних логических устройствах.
Заявляемый способ по сравнению с известными стандартными способами разбора сетевых протоколов не задействуются уровни 3, 4, 5 и 6, что значительно повышает скорость глубокого разбора полезной части сетевых протоколов, осуществляя необходимый уровень фильтрации и анализа.
Сравнение заявляемого способа с известными позволяет сделать вывод о новой совокупности существенных признаков, которая приводит к достижению нового технического результата. Это позволяет сделать вывод о соответствии заявляемого решения критериям «новизна» и «изобретательский уровень».
Формула заявляемого способа представлена без выделения ограничительной части для лучшего понимания технической сущности и последовательности операций.
Заявляемый способ осуществляется следующим образом и иллюстрируется следующими схемами:
На Фиг. 1 представлена схема передачи сетевых пакетов из 1-го сетевого интерфейса во 2-й сетевой интерфейс;
На Фиг. 2 представлена схема чтения данных до 7-го уровня;
На Фиг. 3 представлено примерное содержание одного уровня данных.
Сигнал, переданный по среде передачи на физическом уровне, приходит на первый сетевой интерфейс (СИ1) сетевой карты ЭВМ. Средствами микросхемы сетевого интерфейса сигнал декодируется в последовательность байт, представляющую собой на логическом уровне – множество сетевых пакетов. Эти пакеты сохраняются в память первого сетевого интерфейса (СИ1). Память сетевого интерфейса представляет собой две области памяти, структурой данных «очередь» – первый порядок добавления пакетов в «очередь» совпадает с порядком извлечения пакетов из неё. Одна «очередь» используется для буферизации входящих пакетов, вторая «очередь» хранит пакеты до их кодирования в сигнал и отправки в среду передачи. На Фиг.1 они обозначены как «Очередь исходящих» и «Очередь входящих». Области памяти первого сетевого интерфейса, отвечающие за хранение очередей входящей и исходящей, отображаются в оперативную память средствами MTRRs (диапазонных регистров типа памяти) типом fixed range – отображение области данных фиксированного размера. Аналогично – для второго сетевого интерфейса (СИ2) уже в другую область памяти. Регистры управления первым сетевым интерфейсом обеспечивают возможность выполнения команд на первом сетевом интерфейсе: удаление пакета из очереди входящих пакетов, копирование пакета из очереди входящих пакетов первого сетевого интерфейса в очередь исходящих пакетов указанного сетевого интерфейса. Регистры управления вторым сетевым интерфейсом обеспечивают возможность выполнения команд на втором сетевом интерфейсе: удаление пакета из очереди входящих пакетов, копирование пакета из очереди входящих пакетов второго сетевого интерфейса в очередь исходящих пакетов указанного сетевого интерфейса.
Регистры управления всех сетевых интерфейсов отображаются в оперативную память ЭВМ средствами MTRRs типом variable range – указатели на произвольные участки памяти для соответствующего сетевого интерфейса. Прикладные программные средства, обеспечивающие исполнение заявляемого способа, выполнены с функцией обеспечения доступа к оперативной памяти, используя её области как общую память (shared memory). Таким образом, программа анализа и фильтрации, анализирующая данные 7-го уровня, имеет возможность распознавать данные, находящиеся в памяти, отображающей очередь входящих пакетов сетевого интерфейса. Программа анализа данных 7-го уровня при распознавании «сырого» пакета из очереди входящих пакетов сетевой карты первого интерфейса разбирает пакет и получает данные 7-го уровня следующим образом: распознает данные из пакета 2-го уровня о его длине и сдвигает указатель (по которому производится распознавание) на эту длину. Аналогично происходит далее, пока указатель не дойдёт до содержимого пакета 7-го уровня. Механизм распознавания передаваемых данных уровень за уровнем иллюстрируется на Фиг.2. Каждый уровень состоит из данных об адресе отправителя, получателя, длины, служебных флагов, управляющих соединением и контрольной суммы. Заявляемый способ пропускает операции проверки правильности адресов, подсчета контрольной суммы для проверки целостности, не обрабатывает служебные флаги и состояние соединения, сокращая тем самым время на обработку данных каждого уровня. Вместе с тем, для обработки данных при разборе сетевых пакетов, необходимо сохранять информацию о состоянии соединения и проверять, возможен ли данный пакет при данном состоянии соединения. В заявляемом способе разбор и проверка служебной информации каждого уровня не производится, тогда как производится распознавание длины пакета, описанной в заголовке, и игнорирование остальной информации. Содержимое пакета 7-го уровня – это и есть пользовательская информация, которая анализируется прикладными программными средствами (приложениями) глубокого разбора и анализа. В результате проведенного анализа прикладными программными средствами принимается решение: пропустить пакет либо заблокировать и подается соответствующая команда на регистры управления. Для выполнения команды используется область оперативной памяти, отображающая регистры управления из первого сетевого интерфейса, описанные выше. Регистры управления, исходя из команды, записанной в них, либо копируют внутри сетевой карты пакет в очередь исходящих пакетов другого сетевого интерфейса (из первого во второй) и удаляют пакет из своей очереди входящих пакетов (команда «пропустить пакет»), либо просто удаляют пакет из своей очереди входящих пакетов (команда «заблокировать пакет»). Второй интерфейс кодирует пакеты в сигнал по мере появления их в своей очереди исходящих пакетов. Сигнал передаётся в его среду передачи.
Таким образом, при использования заявляемого способа, исключаются накладные расходы на разбор сетевых пакетов с 3-го по 6-й уровень, не требуется множественное копирование данных о сетевых пакетах, не производится проверка правильности заголовков с 3-го по 6-й уровень, но при этом осуществляется глубокая инспекция пакетов и уделяется внимание именно полезному содержимому пакетов (контенту) пользовательской информации, которая находится на последнем 7-м уровне.
Скорость фильтрации при использовании средств сетевого стека Linux/FreeBSD достигает 100 Мегабит в секунду. В случае использования заявляемого способа высокоскоростного глубокого разбора сетевых протоколов скорость фильтрации достигает 10 Гигабит в секунду.
название | год | авторы | номер документа |
---|---|---|---|
Способ определения типа сетевого трафика для фильтрации и управления сетевыми соединениями | 2016 |
|
RU2644537C2 |
Система и способ анализа входящего потока трафика | 2023 |
|
RU2812087C1 |
Способ выявления нормальных реакций узлов компьютерной сети на сетевые пакеты, относящиеся к неизвестному трафику | 2022 |
|
RU2802164C1 |
БЕСПРОВОДНОЕ УСТРОЙСТВО ИНИЦИАЛИЗАЦИИ | 2001 |
|
RU2269873C2 |
Система межсетевого экранирования | 2017 |
|
RU2691192C1 |
Способ обработки сетевого трафика с использованием межсетевого экранирования | 2017 |
|
RU2697698C2 |
СПОСОБ ЗАЩИТЫ КОРПОРАТИВНОЙ ВИРТУАЛЬНОЙ ЧАСТНОЙ КОМПЬЮТЕРНОЙ СЕТИ ОТ НЕСАНКЦИОНИРОВАННОГО ОБМЕНА ИНФОРМАЦИЕЙ С ПУБЛИЧНОЙ ТРАНСПОРТНОЙ СЕТЬЮ И СИСТЕМА ДЛЯ ЕГО ОСУЩЕСТВЛЕНИЯ | 2001 |
|
RU2182355C1 |
СИСТЕМА АГРЕГАЦИИ СЕТЕВЫХ ДАННЫХ В КОМПЬЮТЕРНЫХ СЕТЯХ | 2019 |
|
RU2694025C1 |
Способ фильтрации защищенных сетевых соединений в цифровой сети передачи данных | 2018 |
|
RU2695983C1 |
УСТРОЙСТВО ДЛЯ ПРИЕМА И ПЕРЕДАЧИ ДАННЫХ С ВОЗМОЖНОСТЬЮ ОСУЩЕСТВЛЕНИЯ ВЗАИМОДЕЙСТВИЯ С OpenFlow КОНТРОЛЛЕРОМ | 2014 |
|
RU2584471C1 |
Изобретение относится к технологиям сетевой связи. Технический результат заключается в повышении скорости анализа и фильтрации содержимого сетевых пакетов. В способе осуществляется декодирование сигналов в последовательность байт, представляющих на логическом уровне множество входящих сетевых пакетов, которые записываются и хранятся в памяти первого и второго сетевых интерфейсов, каждый из сетевых интерфейсов имеет регистр управления и по две области памяти, одна область памяти каждого интерфейса предназначена для буферизации входящих пакетов, а вторая область памяти каждого интерфейса предназначена для исходящих пакетов, хранящихся до их кодирования в сигнал и отправки в среду передачи, регистры управления и области памяти каждого интерфейса отображаются в оперативной памяти ЭВМ, выполняющей функцию общей памяти сетевых интерфейсов и программ для глубокого разбора трафика, на уровне программных средств производится отбор пакетов из очередей входящих пакетов путем анализа длины заголовков и заголовка 7-го уровня и их фильтрация путем принятия решения пропустить пакет в среду передачи или заблокировать его дальнейшую передачу посредством передачи команд через управляющие регистры. 3 з.п. ф-лы, 3 ил.
1. Способ глубокого разбора сетевых протоколов для анализа и фильтрации их содержимого путем прохождения сигнала по среде передачи с первого (физического) уровня семиуровневой модели OSI на второй уровень, где расположены первый и второй сетевые интерфейсы сетевой карты ЭВМ, в каждом из которых средствами микросхемы сетевого интерфейса осуществляется декодирование сигналов в последовательность байт, представляющих на логическом уровне множество входящих сетевых пакетов, которые записываются и хранятся в памяти первого и второго сетевых интерфейсов, каждый из сетевых интерфейсов имеет регистр управления и по две области памяти, одна область памяти каждого интерфейса предназначена для буферизации входящих пакетов, а вторая область памяти каждого интерфейса предназначена для исходящих пакетов, хранящихся до их кодирования в сигнал и отправки в среду передачи, регистры управления и области памяти каждого интерфейса отображаются в оперативной памяти ЭВМ, выполняющей функцию общей памяти сетевых интерфейсов и программ для глубокого разбора трафика, на уровне программных средств производится отбор пакетов из очередей входящих пакетов путем анализа длины заголовков и заголовка 7-го уровня и их фильтрация путем принятия решения пропустить пакет в среду передачи или заблокировать его дальнейшую передачу посредством передачи команд через управляющие регистры, управляющая команда из программы анализа данных пакета седьмого уровня подается на регистры управления сетевых интерфейсов, которые взаимодействуют друг с другом, осуществляя передачу сетевых пакетов между областью памяти для приема сетевых пакетов из среды передачи первого сетевого интерфейса в область памяти для отправки сетевых пакетов в среду передачи второго сетевого интерфейса.
2. Способ глубокого разбора сетевых протоколов для анализа и фильтрации их содержимого по п. 1, отличающийся тем, что используются платформы Linux и FreeBSD.
3. Способ глубокого разбора сетевых протоколов для анализа и фильтрации их содержимого по п. 1, отличающийся тем, что в качестве регистров управления используют процессоры с поддержкой технологии MTRR или PAT.
4. Способ глубокого разбора сетевых протоколов для анализа и фильтрации их содержимого по п. 1, отличающийся тем, что оперативная память выполняет функцию общей памяти сетевых интерфейсов и программ для глубокого разбора сетевых протоколов до седьмого уровня с использованием программных средств.
RU 2012157264 A, 20.07.2014 | |||
Станок для изготовления деревянных ниточных катушек из цилиндрических, снабженных осевым отверстием, заготовок | 1923 |
|
SU2008A1 |
Колосоуборка | 1923 |
|
SU2009A1 |
0 |
|
SU159041A1 |
Авторы
Даты
2017-12-27—Публикация
2016-06-30—Подача