ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Настоящее изобретение относится к сетевой системе и, более конкретно, к способу обработки пакетов в сетевой системе.
ПРЕДШЕСТВУЮЩИЙ УРОВЕНЬ ТЕХНИКИ
В качестве одной из систем управления для сетевой системы предлагается сетевая система разделенного типа CU (C: плоскость управления/U: плоскость пользователя), в которой управление устройством узла (плоскостью пользователя) осуществляется с внешнего блока управления (плоскости управления).
В качестве примера сетевой системы разделенного типа CU известна сетевая система «открытый поток» (OpenFlow), использующая технологию «открытый поток», которая управляет коммутаторами с контроллера для осуществления управления маршрутизацией в сети. Подробности технологии «открытый поток» описаны в непатентной литературе 1. Следует отметить, что сетевая система «открытый поток» является исключительно примером.
ОБЪЯСНЕНИЕ СЕТЕВОЙ СИСТЕМЫ «ОТКРЫТЫЙ ПОТОК»
В сетевой системе «открытый поток» контроллер, такой как контроллер OFC (контроллер OpenFlow), управляет действиями коммутаторов посредством оперирования таблицами потоков коммутаторов, таких как коммутаторы OFS (коммутаторы OpenFlow). Контроллер соединяется с коммутаторами при помощи защищенного канала.
Коммутатор в сетевой системе «открытый поток» формирует сеть «открытый поток» и является граничным коммутатором или центральным коммутатором, который находится под управлением контроллера. Последовательность этапов обработки для пакета от приема (входящего потока) пакета на граничном коммутаторе, который находится на стороне ввода, и до передачи (выходящего потока) с граничного коммутатора, который находится на стороне вывода, в сети «открытый поток» называется потоком.
Пакет может быть рассмотрен в качестве кадра. Пакет и кадр отличаются только блоком данных протокола (PDU: блок данных протокола). Пакет является блоком PDU протокола «TCP/IP» (протокол управления передачей данных/протокол сети Интернет). В то же время, кадр является блоком PDU «Ethernet» (зарегистрированный товарный знак).
Таблица потоков является таблицей, в которой запись потока регистрируется для определения предварительно определенной операции (действия), которая должна быть выполнена применительно к пакету (данным передачи), который соответствует предварительно определенному условию соответствия (правилу). То есть таблица потоков сохраняет набор записей потоков.
Правило записи потока определяется на основе различных комбинаций всех или части из адреса назначения, адреса источника, порта назначения и порта источника, которые содержатся в поле заголовка пакета для каждого иерархического уровня протокола, и является идентифицируемым. Следует отметить, что предполагается, что вышеупомянутый адрес содержит MAC-адрес (адрес управления доступом к среде передачи) и IP-адрес (адрес протокола сети Интернет). Кроме того, данные на порте ввода (входной порт), в дополнение к вышеупомянутым данным, могут быть использованы для правила записи потока. Кроме того, в качестве правила записи потока, правило, которое имеет выраженную часть (или все) из значения поля заголовка пакета, которое показывает поток, может быть установлено при формировании нормального выражения и группового символа «*» и т.д.
Действие записи потока является операцией, такой как «вывод на конкретный порт», «отбрасывание» и «перезапись заголовка». К примеру, если идентификационные данные порта вывода (номер порта вывода и т.д.) отображаются в действии записи потока, то коммутатор выводит пакет на соответствующий им порт. Пакет отбрасывается, если идентификационные данные порта вывода не показаны. Или, когда данные заголовка показаны в действии записи потока, коммутатор перезаписывает заголовок пакета на основе данных заголовка.
Коммутатор в сетевой системе «открытый поток» выполняет действие записи потока применительно к группе пакетов (пакетам), которые соответствуют правилу записи потока.
МНОГОАДРЕСНАЯ ПЕРЕДАЧА В СУЩЕСТВУЮЩЕЙ СЕТЕВОЙ СИСТЕМЕ «ОТКРЫТЫЙ ПОТОК»
В сетевой системе «открытый поток» многоадресная передача пакета иногда выполняется как в традиционной сетевой системе.
Многоадресная передача является техникой для передачи пакета множеству получателей посредством задания одного места назначения. Посредством использования многоадресной передачи одни и те же данные могут быть переданы множеству пользователей в сети.
Для реализации этапов обработки для многоадресной передачи посредством коммутатора сетевой системы «открытый поток», заголовок пакета приема перезаписывается, а принятый пакет должен быть выведен на каждый порт назначения.
Однако в связи с тем, что коммутатор может выполнить действие преобразования пакета только единожды, когда в коммутаторе может быть выполнена многоадресная передача, существуют ограничения, что возможно осуществить передачу в одну сеть VLAN (виртуальная сеть LAN), но не предоставляется возможность передачи к набору сетей VLAN, которые отличаются друг от друга.
ПЕРЕЧЕНЬ ЛИТЕРАТУРЫ
Непатентная литература 1 - «OpenFlow switch Specification, версия 1.0.0», с которой можно ознакомиться в сети Интернет по адресу http://www.openflowswitch.org/documents/openflow-spec-v1.0.0.pdf)
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Задача настоящего изобретения состоит в обеспечении сетевой системы, в которой сетевой процессор инсталлируется в коммутаторе, а многоадресная передача и многократность действий могут быть реализованы посредством использования циклической функции.
Сетевая система, в соответствии с настоящим изобретением, включает в себя: блок обработки передачи пакета, сконфигурированный для обработки пакета приема на основе записи потока, определяющей правило и действие для однородного управления пакетами в качестве потока, и блок циклической обработки, сконфигурированный для реализации многоадресной передачи и многократности действий в сети «открытый поток» посредством выполнения циклической обработки применительно к пакету при приеме пакета от блока обработки передачи пакета, и передачи зацикленного пакета на блок обработки передачи пакета.
Коммутатор, в соответствии с настоящим изобретением, включает в себя: секцию обработки передачи пакета, сконфигурированную для обработки пакета приема на основе записи потока, определяющей правило и действие для однородного управления пакетами в качестве потока, и секцию циклической обработки, сконфигурированную для реализации многоадресной передачи и многократности действий в сети «открытый поток» посредством выполнения циклической обработки применительно к пакету при приеме пакета от блока обработки передачи пакета, и передачи зацикленного пакета на блок обработки передачи пакета.
Способ обработки пакетов, в соответствии с настоящим изобретением, выполняемый посредством коммутатора, включает в себя: обработку пакета приема на основе записи потока, определяющей правило и действие для однородного управления пакетами в качестве потока, этап вывода копии обработанного пакета на адрес место назначения для циклической обработки, этап приема зацикленного пакета, и этап повторной обработки зацикленного пакета в качестве пакета приема. Таким образом, способ обработки пакетов, в соответствии с настоящим изобретением, выполняется посредством коммутатора в сети «открытый поток». Циклическая обработка может быть выполнена в коммутаторе или во внешнем устройстве, которое имеет возможность установления связи или взаимодействия с коммутатором.
Программа, в соответствии с настоящим изобретением, предназначается для побуждения компьютера к выполнению обработки способа обработки пакетов. Следует отметить, что программа, в соответствии с настоящим изобретением, может быть сохранена на запоминающем устройстве или же на носителе записи.
Таким образом, в сетевой системе «открытый поток» один и тот же пакет может быть передан в набор сетей VLAN, которые отличаются друг от друга.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг. 1 изображает диаграмму, иллюстрирующую пример конфигурации сетевой системы, в соответствии с настоящим изобретением;
Фиг. 2 изображает блок-схему последовательности операций, иллюстрирующую операцию многоадресной передачи в настоящем изобретении; и
Фиг. 3 изображает диаграмму, иллюстрирующую пример конфигурации таблицы потоков в настоящем изобретении.
ОПИСАНИЕ ИЛЛЮСТРАТИВНЫХ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
Настоящее изобретение рассматривает сетевую систему раздельного типа CU. В данном случае, в качестве одной из сетевых систем раздельного типа CU, в качестве примера, должна быть описана сетевая система «открытый поток». Однако фактически настоящее изобретение не ограничивается сетевой системой «открытый поток».
ИЛЛЮСТРАТИВНЫЕ ВАРИАНТЫ ОСУЩЕСТВЛЕНИЯ
Далее, со ссылкой на прилагаемые чертежи, будут описаны иллюстративные варианты осуществления настоящего изобретения.
ОСНОВНАЯ СТРУКТУРА
Как изображено на Фиг. 1, сетевая система, в соответствии с настоящим изобретением, включает в себя коммутатор 1, сервер 100 многоадресного распределения и клиентов 200 (200-i, i= от 1 до n, где n - количество клиентов).
Коммутатор 1 является коммутатором, находящимся в сетевой системе «открытый поток». То есть коммутатор 1 выполняет обработку применительно к пакету приема, в соответствии с записью потока, определяющей правило и действие для осуществления однородного управления пакетами в качестве потока. Хотя не показано, контроллер, который находится в сетевой системе «открытый поток», может установить запись потока для коммутатора 1.
Сервер 100 многоадресного распределения является серверным устройством, которое передает многоадресный пакет.
Каждый из клиентов 200 (200-i, i= от 1 до n) является терминалом, который принимает многоадресный пакет, который передается с сервера 100 многоадресного распределения. Клиенты 200 (200-i, i= от 1 до n) группируются в соответствии с используемыми протоколами, при этом каждая из групп имеет идентичный адрес назначения. В данном случае каждый из клиентов 200 (200-i, i= от 1 до n) принадлежит одной из идентичных групп VLAN.
Исходя из вышесказанного, сервер 100 многоадресного распределения может передавать пакет всем клиентам 200 (200-i, i= от 1 до n) посредством задания одного адреса назначения.
КОММУТАТОР
Коммутатор 1 состоит из секции 10 обработки передачи пакета, сетевого процессора 20 (NP) и таблицы 30 потоков.
Секция 10 обработки передачи пакета имеет интерфейс «открытый поток», принимает пакет через интерфейс «открытый поток» и передает пакет в соответствии с содержимым хранения таблицы 30 потоков. То есть секция 10 обработки передачи пакета является эквивалентной блоку обработки передачи пакета. Интерфейс «открытый поток» является коммуникационным портом, служащим для передачи и приема пакета на основе протокола «открытый поток» к и от устройства связи вне коммутатора.
Сетевой процессор 20 (NP) имеет циклический интерфейс и выполняет циклическую обработку для пакета, который передается от секции 10 обработки передачи пакета. То есть сетевой процессор 20 (NP) является эквивалентным блоку циклической обработки. Циклический интерфейс является коммуникационным портом, служащим для передачи и приема пакета от секции 10 обработки передачи пакета. Сетевой процессор 20 (NP) дублирует пакет, принятый через циклический интерфейс от секции 10 обработки передачи пакета, на секции 10 обработки передачи пакета «как есть».
Таблица 30 потоков является базой данных (DB), которая сохраняет таблицы потоков, установленные посредством контроллера сетевой системы «открытый поток».
СЕРВЕР МНОГОАДРЕСНОГО РАСПРЕДЕЛЕНИЯ И КЛИЕНТЫ
Описание сервера 100 многоадресного распределения и клиентов 200 (200-i, i= от 1 до n) опущено в связи с тем, что они совпадают с таковыми в традиционной системе.
ОБРАБОТКА МНОГОАДРЕСНОЙ ПЕРЕДАЧИ
Далее, со ссылкой на Фиг. 2, в настоящем изобретении описана обработка многоадресной передачи.
(1) ЭТАП S101
Секция 10 обработки передачи пакета коммутатора 1 принимает пакет через интерфейс «открытый поток». Следует отметить, что запись потока, которая соответствует принятому пакету, предположительно уже задана в таблице 30 потоков коммутатора 1.
(2) ЭТАП S102
Секция 10 обработки передачи пакета коммутатора 1 определяет, является ли принятый пакет пакетом для многоадресной передачи. Секция 10 обработки передачи пакета коммутатора 1 проверяет, является ли адрес назначения пакета приема групповым адресом, при этом секция 10 обработки передачи пакета коммутатора 1 определяет, что принятый пакет предназначен для многоадресной передачи в случае, когда адрес назначения является групповым адресом.
(3) ЭТАП S103
Секция 10 обработки передачи пакета коммутатора 1 обрабатывает пакет в соответствии с содержанием таблицы 30 потоков в случае, когда принятый пакет не предназначается для многоадресной передачи. То есть секция 10 обработки передачи пакета коммутатора 1 выполняет обработку пакетов в традиционной сетевой системе «открытый поток».
(4) ЭТАП S104
Если принятый пакет предназначается для многоадресной передачи, то секция 10 обработки передачи пакета коммутатора 1 проверяет, все ли пакеты были переданы на порты, заданные для адресов назначения. К примеру, если принятый пакет предназначается для многоадресной передачи, то секция 10 обработки передачи пакета коммутатора 1 генерирует список портов, заданных для адресов назначения, и проверяет наличие порта, который не используется для передачи. Более подробно «процедура подтверждения завершения передачи на все порты назначения» описана ниже.
(5) ЭТАП S105
Если пакет не был полностью передан на все порты, заданные для адресов назначения, то секция 10 обработки передачи пакета коммутатора 1 выполняет действие преобразования пакета приема в соответствии с действием записи потока, соответствующей исходному принятому пакету, для перезаписи заголовка принятого пакета. В данном случае предполагается, что заголовок пакета после действия преобразования преобразован в «идентификатор (ID) VLAN» из заголовка пакета перед действием преобразования. «Идентификатор (ID) VLAN» является идентификационными данными, служащими для уникального задания группы VLAN.
(6) ЭТАП S106
Секция 10 обработки передачи пакета коммутатора 1 копирует пакет, который был подвержен действию преобразования. То есть секция 10 обработки передачи пакета коммутатора 1 копирует пакет, заголовок которого был перезаписан.
(7) ЭТАП S107
Секция 10 обработки передачи пакета коммутатора 1 выводит (передает) пакет, который был подвержен действию преобразования, на порт назначения. В данном случае секция 10 обработки передачи пакета коммутатора 1 выводит на порт назначения один из пакетов после копирования. К примеру, после вывода пакета, который был подвержен действию преобразования, на порт назначения, записанный в верхней части списка портов, которые заданы для адреса назначения, секция 10 обработки передачи пакета коммутатора 1 удаляет порт назначения из списка портов, заданных для адресов назначения. В противном случае секция 10 обработки передачи пакета коммутатора 1 записывает данные, указывающие, что пакет был передан на порт назначения, в список портов, заданных для адресов назначения.
(8) ЭТАП S108
Секция 10 обработки передачи пакета коммутатора 1 передает пакет, который был подвержен действию преобразования, на циклический интерфейс сетевого процессора 20 (NP). К примеру, секция 10 обработки передачи пакета коммутатора 1 передает пакет, который был подвержен действию преобразования, на циклический адрес. В данном случае секция 10 обработки передачи пакета коммутатора 1 передает один из пакетов, полученных в результате копирования, на циклический интерфейс сетевого процессора 20 (NP). То есть, если адрес назначения пакета приема является групповым адресом, то секция 10 обработки передачи пакета коммутатора 1 осуществляет передачу на циклический интерфейс сетевого процессора 20 (NP), в дополнение к порту вывода, заданному в действии.
(9) ЭТАП S109
Сетевой процессор 20 (NP) возвращает пакет, принятый посредством циклического интерфейса, на секцию 10 обработки передачи пакета.
(10) ЭТАП S110
Секция 10 обработки передачи пакета коммутатора 1 принимает пакет от циклического интерфейса сетевого процессора 20 (NP). После этого секция 10 обработки передачи пакета коммутатора 1 в очередной раз определяет, является ли принятый пакет пакетом, который должен быть подвергнут многоадресной передаче (возвращается на этап S102). В этот момент секция 10 обработки передачи пакета коммутатора 1 может автоматически определить, что пакет (зацикленный пакет), принятый от циклического интерфейса сетевого процессора 20 (NP), является пакетом, который должен быть подвержен многоадресной передаче.
(11) ЭТАП S111
Если пакет был передан на все порты, заданные для адресов назначения, то секция 10 обработки передачи пакета коммутатора 1 отбрасывает пакет, после чего обработка завершается.
Таким образом, пакеты, которые должны быть подвержены многоадресной передаче, могут быть переданы во множество различных VLAN.
ПРОЦЕДУРА ПРОВЕРКИ ТОГО, БЫЛ ЛИ ПАКЕТ ПЕРЕДАН НА ВСЕ ПОРТЫ НАЗНАЧЕНИЯ
Предполагается, что запись потока, как изображено на Фиг. 3, предварительно регистрируется в таблице 30 потоков коммутатора 1. Кроме того, предполагается, что секция 10 обработки передачи пакета коммутатора 1 снабжается счетчиком для подсчета количества записей потоков для переданных пакетов.
Секция 10 обработки передачи пакета коммутатора 1 осуществляет поиск в таблице 30 потоков, и в случае нахождения записей потоков, соответствующих адресу назначения, секция 10 обработки передачи пакета коммутатора 1 определяет, что пакет был передан на все порты назначения, когда значение счетчика достигает количества записей потоков, имеющих условие соответствия, идентичное таковому найденной записи потока.
Если пакет не был передан на все порты назначения, то пакет был передан согласно значению счетчика. Исходя из вышесказанного, «идентификатор (ID) VLAN» пакета перезаписывается на основе действия записи потока в числе записей потоков, имеющих условие соответствия, которые располагаются в позиции, смещенной на значение счетчика, и пакет копируется и передается на этот заданный порт и циклический интерфейс сетевого процессора (NP). После чего счетчик увеличивает свое значение на единицу.
ДОПОЛНЕНИЕ
Следует отметить, что в случае невыполнения многоадресной передачи, но с выполнением многократности действий, «порт, заданный для адреса назначения» в вышеупомянутом разъяснении рассматривается в качестве «заданного действия», а «выполнение действия преобразования (перезапись заголовка принятого пакета)» и «вывод на порт назначения» рассматриваются в качестве «выполнения заданного действия». «Выполнение действия преобразования (перезапись заголовка принятого пакета)» не является необходимым. То есть циклическая обработка выполняется для выполнения заданных действий одно за одним до тех пор, пока не будут выполнены все заданные действия.
ДРУГИЕ ИЛЛЮСТРАТИВНЫЕ ВАРИАНТЫ ОСУЩЕСТВЛЕНИЯ
Многоадресная передача и многократность действий могут быть реализованы при помощи циклического интерфейса коммутатора 1 вместо сетевого процессора 20 (NP), который изображен на Фиг. 1. То есть устройство, которое является эквивалентным сетевому процессору 20 (NP), может находиться за пределами коммутатора 1. К примеру, сетевой процессор 20 (NP) может являться контроллером, находящимся в сетевой системе «открытый поток».
Кроме того, коммутатор 1 может являться коммутирующей системой, конфигурируемой посредством объединения множества блоков, в дополнение к простому коммутирующему блоку. То есть секция 10 обработки передачи пакета, сетевой процессор 20 (NP) и таблица 30 потоков не всегда могут присутствовать в идентичном коммутирующем блоке, при этом они могут находиться в физически независимых блоках. К примеру, в качестве коммутатора 1 может быть использована коммутирующая система, полученная посредством объединения «блока обработки передачи пакета», который является эквивалентным секции 10 обработки передачи пакета, с «блоком циклической обработки», который является эквивалентным сетевому процессору 20 (NP).
Более того, несмотря на вывод пакета на все порты, заданные для адреса назначения в вышеупомянутом объяснении, имеется возможность установления порта таким образом, чтобы пакет не выводился на предварительно определенный порт из портов, заданных для адреса назначения. В данном случае, если на этапе S107, изображенном на Фиг. 2, установлен порт, скопированный пакет может быть отброшен без вывода на порт назначения. Таким образом, предоставляется возможность ограничения места назначения передачи на стороне коммутирующего блока даже в случае многоадресной передачи. Кроме того, таким же образом можно ограничить конкретное действие даже в случае многократности действий.
ИЛЛЮСТРАТИВНЫЙ ПРИМЕР АППАРАТНЫХ СРЕДСТВ
Далее описан пример конкретной конфигурации аппаратных средств для реализации сетевой системы в соответствии с настоящим изобретением.
В качестве примера коммутатора 1 приводится сетевой коммутатор, маршрутизатор, прокси-сервер, шлюз, брандмауэр, балансировщик нагрузки (устройство распределения нагрузки), устройство управления полосой частот (формирователь пакетов), оборудование для контроля и мониторинга безопасности (SCADA: Система диспетчерского управления и сбора данных), контроллер шлюза, базовая станция, точка доступа (АР), спутник связи (CS) и компьютер, имеющий набор коммуникационных портов. Следует отметить, что коммутатор 1 может являться платами расширения, такими как сетевая плата или виртуальный коммутатор, который реализуется посредством виртуальной машины (VM)), которая построена на физической машине.
В качестве примера сервера 100 многоадресного распределения и клиентов 200 (200-i, i= от 1 до n) приводятся компьютеры, такие как персональный компьютер (РС), прибор, автоматизированное рабочее место, универсальная ЭВМ и суперкомпьютер. Следует отметить, что клиентом 200 (200-i, i= от 1 до n) может являться портативный телефон, смартфон, смартбук, IP-телефон, автомобильная навигационная система, мобильная игровая машина, игровая машина для домашнего пользования, мобильный музыкальный проигрыватель, портативный терминал, гаджет (электронное оборудование), оборудование для интерактивного телевидения, цифровой тюнер, цифровое записывающее устройство, информационная бытовая электроника (информационная бытовая техника), оборудование OA (автоматизации делопроизводства), терминал электронной витрины и высококлассная копировальная техника, система цифровых табло (электронная вывеска) и т.д. Кроме того, клиент 200 (200-i, i= от 1 до n) может быть установлен в подвижных корпусах, таких как автомобиль, водное судно и самолет.
Каждый из коммутатора 1, сервера 100 многоадресного распределения и клиента 200 (200-i, i= от 1 до n) реализуется посредством процессора, который выполняет предварительно определенную обработку на основе программы, памяти, которая сохраняет программу и данные различных типов, и интерфейса, который используется для осуществления связи с сетью.
В качестве примера вышеупомянутого процессора приводится центральный процессор (CPU), сетевой процессор (NP), микропроцессор, микроконтроллер или полупроводниковая интегральная схема (LSI: Большая интегральная схема), которая имеет функцию специального назначения.
В качестве примера вышеупомянутой памяти приводится полупроводниковое запоминающее устройство, такое как память RAM (оперативная память), память ROM (постоянная память), память EEPROM (электрически стираемая программируемая память) и флэш-память, дополнительное запоминающее устройство, такое как диск HDD (жесткий диск) и накопитель SSD (твердотельный накопитель), сменные диски, такие как диск DVD (цифровой универсальный диск), карта памяти SD (карта памяти с цифровой защитой информации) и т.д. Кроме того, вышеупомянутая память может являться буфером и регистром. Помимо всего прочего, вышеупомянутая память может являться блоком памяти, использующим накопитель DAS (накопитель с прямым подключением), сеть FC-SAN (оптоволоконную сеть хранения данных), устройство NAS (сетевое устройство хранения данных), IP-SAN (IP-сеть хранения данных) и т.д.
Следует отметить, что вышеупомянутый процессор и вышеупомянутая память могут быть объединены. К примеру, на протяжении последних лет микрокомпьютер изготавливается в качестве устройства с одним кристаллом. Исходя из вышесказанного, существует случай, когда микрокомпьютер с одним кристаллом, который устанавливается в компьютер, состоит из процессора и памяти.
В качестве примера вышеупомянутого интерфейса приводится подложка (базовая подожка и плата ввода/вывода) и полупроводниковая интегральная схема, такая как кристалл, которые соответствуют сетевым средствам связи, сетевой адаптер, такой как плата NIC (плата сетевого интерфейса) и подобная плата расширения, устройство связи, такое как антенна, коммуникационный порт, такой как коммуникационный выход (соединительный разъем) и т.д.
Кроме того, в качестве примера сети приводится сеть Интернет, сеть LAN (локальная вычислительная сеть), беспроводная сеть LAN, сеть WAN (глобальная вычислительная сеть), опорная сеть, линия кабельного абонентского телевидения, фиксированная телефонная сеть, мобильная телефонная сеть, WiMAX (IEEE 802.16a), сеть 3G (проект партнерства третьего поколения), выделенная линия (арендованная линия), IrDA (Ассоциация передачи данных в инфракрасном диапазоне), Bluetooth (зарегистрированный товарный знак), линия последовательной связи, шина данных и т.д.
В качестве примера секции 10 обработки передачи пакета приводится вышеупомянутый интерфейс. Следует отметить, что секция 10 обработки передачи пакета может являться комбинацией вышеупомянутого процессора и вышеупомянутого интерфейса.
В качестве примера сетевого процессора 20 (NP) приводится вышеупомянутый процессор. Следует отметить, что сетевой процессор 20 (NP) может являться комбинацией вышеупомянутого процессора и вышеупомянутого интерфейса.
В качестве примера таблицы 30 потоков приводится вышеупомянутая память. Следует отметить, что таблица 30 потоков может являться комбинацией вышеупомянутого процессора и вышеупомянутой памяти.
Кроме того, каждое из секции 10 обработки передачи пакета, сетевого процессора 20 (NP) и таблицы 30 потоков может являться компьютерами, которые не зависят друг от друга.
Следует отметить, что компонент, который находится внутри коммутатора 1, может являться модулем, компонентом, устройством специального назначения и программами запуска (вызова) для них.
Однако фактически настоящее изобретение не ограничивается этими примерами.
РЕЗЮМЕ
Как было упомянуто выше, настоящее изобретение относится к технике реализации многоадресной передачи и многократности действий в сетевой системе «открытый поток».
Настоящее изобретение отличается тем, что сетевой процессор устанавливается в коммутаторе сетевой системы «открытый поток», а многоадресная передача и многократность действий реализуются при помощи циклической функции.
Кроме того, в настоящем изобретении циклической интерфейс основного блока коммутатора может быть использован в качестве замены сетевого процессора.
В настоящем изобретении, когда осуществляется прием пакета, который предназначен для многоадресной передачи, сначала применительно к принятому пакету выполняется действие преобразования, а после действия преобразования пакет копируется.
Скопированный пакет передается на циклический интерфейс сетевого процессора, а также на один из портов назначения, который предназначен для использования для многоадресной передачи, после чего от циклического интерфейса сетевого процессора возвращается ответ.
Действие преобразования повторно выполняется для пакета, принятого от циклического интерфейса сетевого процессора, а копия пакета после действия преобразования генерируется и передается на порт назначения и циклический интерфейс сетевого процессора.
Посредством повтора вышеупомянутых действий пакет, имеющий одинаковое содержание, может быть передан во множество VLAN, которые отличаются друг от друга.
ДОПОЛНЕНИЕ
В следующем дополнении может быть упомянута часть или целый вышеупомянутый иллюстративный вариант осуществления. Однако фактически настоящее изобретение не ограничено следующими конкретными примерами.
ДОПОЛНИТЕЛЬНОЕ ПРИМЕЧАНИЕ 1
Коммутатор включает в себя:
секцию обработки передачи пакета, сконфигурированную для обработки пакета приема в соответствии с записью потока, задающей правило и действие для осуществления однородного управления пакетами в качестве потока, и
секцию циклической обработки, сконфигурированную для выполнения циклической обработки применительно к принятому пакету при приеме пакета (обработанного пакета или обработанной копии и т.д.) от секции обработки передачи пакета, передачи пакета на секцию обработки передачи пакета и реализации многоадресной передачи и многократности действий в сети «открытый поток».
ДОПОЛНИТЕЛЬНОЕ ПРИМЕЧАНИЕ 2
Коммутатор, в соответствии с дополнительным примечанием 1, в котором секция обработки передачи пакета включает в себя:
функциональную секцию, сконфигурированную для передачи пакета на секцию циклической обработки при приеме пакета для многоадресной передачи; и
функциональную секцию, сконфигурированную для приема пакета, возвращаемого от блока циклической обработки.
ДОПОЛНИТЕЛЬНОЕ ПРИМЕЧАНИЕ 3
Коммутатор, в соответствии с дополнительным примечанием 2, в котором секция обработки передачи пакета включает в себя:
функциональную секцию, сконфигурированную для проверки того, является ли принятый пакет пакетом для многоадресной передачи;
функциональную секцию, сконфигурированную для выполнения действия преобразования применительно к принятому пакету, в соответствии с записью потока, и перезаписи заголовка пакета приема, когда пакет приема является пакетом для многоадресной передачи;
функциональную секцию, сконфигурированную для копирования пакета, в котором заголовок был перезаписан;
функциональную секцию, сконфигурированную для вывода одного из пакетов на один из портов, заданных в качестве места назначения;
функциональную часть, сконфигурированную для передачи других пакетов на секцию циклической обработки;
функциональную секцию, сконфигурированную для проверки того, был ли пакет передан на все порты, заданные для адреса назначения, при приеме пакета, возвращенного от блока циклической обработки;
функциональную секцию, сконфигурированную для отбрасывания пакета после передачи пакета на все порты, заданные для адреса назначения; и
функциональную секцию, сконфигурированную для выполнения повтора обработки до тех пор, пока пакет не будет передан на все порты, заданные для адреса назначения, если пакет не был передан на все порты, заданные для адреса назначения.
ДОПОЛНИТЕЛЬНОЕ ПРИМЕЧАНИЕ 4
Коммутатор, в соответствии с любым из дополнительных примечаний 1-3, в котором секция обработки передачи пакета включает в себя:
функциональную секцию, сконфигурированную для проверки того, является ли принятый пакет пакетом для многократности действий;
функциональную секцию, сконфигурированную для копирования пакета, когда принятый пакет является пакетом для многократности действий;
функциональную секцию, сконфигурированную для выполнения одного из действий, которые заданы в соответствии с записью потока, для одного из пакетов;
функциональную секцию, сконфигурированную для передачи других пакетов на секцию циклической обработки;
функциональную секцию, сконфигурированную для проверки того, были ли выполнены все заданные действия при приеме пакета, возвращенного от секции циклической обработки;
функциональную секцию, сконфигурированную для отбрасывания пакета, когда все заданные действия выполнены; и
функциональную секцию, сконфигурированную для выполнения повтора вышеупомянутой обработки до тех пор, пока не будут выполнены все заданные действия, если все заданные действия не были выполнены.
ЗАМЕЧАНИЯ
Выше были подробно описаны иллюстративные варианты осуществления настоящего изобретения, при этом фактически настоящее изобретение не ограничивается вышеупомянутыми иллюстративными вариантами осуществления. Настоящее изобретение учитывает возможность создания изменений в пределах объема, не выходящей за рамки объема настоящего изобретения.
Следует отметить, что по настоящей заявке испрашивается приоритет в соответствии с заявкой на патент Японии № 2011-048129. Раскрытие этой заявки полностью включено в настоящий документ посредством ссылки.
Изобретение относится к сетевой системе, носителю записи и способу обработки пакетов. Технический результат заключается в обеспечении многоадресной передачи пакетов за счет циклической обработки пакета. Система содержит таблицу потоков, блок обработки передачи пакета, сконфигурированный для приема пакета для многоадресной передачи, обработки пакета на основе таблицы потоков, включающей переписывание заголовка пакета и получение второго пакета посредством копирования переписанного пакета, и передачи переписанного пакета на порт назначения и передачи второго пакета на блок циклической обработки, и блок циклической обработки, сконфигурированный, при приеме второго пакета от блока обработки передачи пакета, для возврата второго пакета на блок обработки передачи пакета, при этом таблица потоков содержит множество записей потоков, причем каждая запись определяет условие соответствия, указывающее адрес многоадресной передачи в качестве адреса назначения, и действие, включающее в себя порт назначения. 3 н. и 2 з.п. ф-лы, 3 ил.
1. Сетевая система, содержащая:
таблицу (30) потоков;
блок (10) обработки передачи пакета, сконфигурированный для приема пакета для многоадресной передачи и обработки этого пакета на основе таблицы (30) потоков, и
блок (20) циклической обработки, сконфигурированный, при приеме пакета для многоадресной передачи от блока (10) обработки передачи пакета, для возврата упомянутого пакета на упомянутый блок (10) обработки передачи пакета,
при этом таблица (30) потоков содержит множество записей потоков, причем каждая определяет а) условие соответствия, указывающее адрес многоадресной передачи в качестве адреса назначения, и b) действие, включающее в себя порт назначения, причем упомянутое множество записей потоков является, по меньшей мере
первой записью потока, которая задает первое условие соответствия и первое действие, включающее в себя порт назначения,
второй записью потока, которая задает второе условие соответствия, которое идентично первому условию соответствия, и второе действие, включающее в себя второй порт назначения, который отличается от первого порта назначения,
причем блок (10) обработки передачи пакета выполнен с возможностью, когда адрес многоадресной передачи первого пакета совпадает с адресом многоадресной передачи первого условия соответствия, заданного первой записью потока, i) переписывать заголовок первого пакета на основании первого действия первой записи потока, ii) получать второй пакет посредством копирования переписанного первого пакета, iii) передавать переписанный первый пакет на первый порт назначения, и iv) передавать второй пакет на блок (20) циклической обработки,
упомянутый блок (20) циклической обработки выполнен с возможностью принимать второй пакет от блока (10) обработки передачи пакета и возвращать второй пакет на блок (10) обработки передачи пакета, и
упомянутый блок (10) обработки передачи пакета также выполнен с возможностью, когда адрес многоадресной передачи второго пакета от блока (20) циклической обработки совпадает с адресом многоадресной передачи второго условия соответствия, заданного второй записью потока, v) переписывать заголовок второго пакета на основании второго действия второй записи потока, и vi) передавать переписанный второй пакет на второй порт назначения.
2. Сетевая система по п. 1, в которой упомянутый блок (10) обработки передачи пакета снабжен счетчиком для проверки количества записей потоков по отношению к пакетам, которые уже были переданы на соответствующие порты назначения,
причем блок (10) обработки передачи пакета выполнен с возможностью vii) получать третий пакет посредством копирования переписанного второго пакета, и viii) передавать третий пакет на блок (20) циклической обработки, при этом операции v)-viii) повторяются до тех пор, пока блок (10) обработки передачи пакета не определит, что пакеты переданы на все порты назначения из записей потоков, указывающих условия соответствия, которые идентичны друг другу,
причем блок (10) обработки передачи пакета также выполнен с возможностью
проверки при приеме пакета, возвращенного от блока (20) циклической обработки, были ли пакеты переданы на все порты назначения из записей потоков, указывающих упомянутые идентичные условия соответствия,
определять, что пакеты переданы на все порты назначения из записей потоков, указывающих упомянутые идентичные условия соответствия, когда значение счетчика достигает количества всех записей потока, имеющих упомянутые идентичные условия соответствия, и
отбрасывать после упомянутого определения упомянутый пакет, возвращенный от блока (20) циклической обработки.
3. Способ обработки пакетов, выполняемый посредством коммутатора, содержащего:
таблицу (30) потоков;
блок (10) обработки передачи пакета, сконфигурированный для приема пакета для многоадресной передачи и обработки этого пакета на основе таблицы (30) потоков, и
блок (20) циклической обработки, сконфигурированный, при приеме пакета для многоадресной передачи от блока (10) обработки передачи пакета, для возврата упомянутого пакета на упомянутый блок (10) обработки передачи пакета,
при этом таблица (30) потоков содержит множество записей потоков, причем каждая определяет а) условие соответствия, указывающее адрес многоадресной передачи в качестве адреса назначения, и b) действие, включающее в себя порт назначения, причем упомянутое множество записей потоков является, по меньшей мере
первой записью потока, которая задает первое условие соответствия и первое действие, включающее в себя первый порт назначения,
второй записью потока, которая задает второе условие соответствия, которое идентично первому условию соответствия, и второе действие, включающее в себя второй порт назначения, который отличается от первого порта назначения,
причем способ обработки пакетов содержит этапы, на которых:
в блоке (10) обработки передачи пакета,
когда адрес многоадресной передачи первого пакета совпадает с адресом многоадресной передачи первого условия соответствия, заданного первой записью потока,
i) переписывают заголовок первого пакета на основании первого действия первой записи потока, ii) получают второй пакет посредством копирования переписанного первого пакета, iii) передают переписанный первый пакет на первый порт назначения, и iv) передают второй пакет на блок (20) циклической обработки,
в блоке (20) циклической обработки
принимают второй пакет от блока (10) обработки передачи пакета и возвращают второй пакет на блок (10) обработки передачи пакета, и
в блоке (10) обработки передачи пакета,
когда адрес многоадресной передачи второго пакета от блока (20) циклической обработки совпадает с адресом многоадресной передачи второго условия соответствия, заданного второй записью потока:
v) переписывают заголовок второго пакета на основании второго действия упомянутой второй записи потока, и vi) передают переписанный второй пакет на второй порт назначения.
4. Способ обработки пакетов по п. 3, причем упомянутый блок (10) обработки передачи пакета снабжен счетчиком для проверки количества записей потоков по отношению к пакетам, которые уже были переданы на соответствующие порты назначения,
причем способ обработки пакетов дополнительно содержит этапы, на которых
в блоке (10) обработки передачи пакета vii) получают третий пакет посредством копирования переписанного второго пакета, и viii) передают третий пакет на блок (20) циклической обработки, при этом этапы v)-viii) повторяются до тех пор, пока блок (10) обработки передачи пакета не определит, что пакеты переданы на все порты назначения из записей потоков, указывающих условия соответствия, которые идентичны друг другу,
в блоке (10) обработки передачи пакета
проверяют при приеме пакета, возвращенного от блока (20) циклической обработки, были ли пакеты переданы на все порты назначения из записей потоков, указывающих упомянутые идентичные условия соответствия,
определяют, что пакеты переданы на все порты назначения из записей потоков, указывающих упомянутые идентичные условия соответствия, когда значение счетчика достигает количества всех записей потока, имеющих упомянутые идентичные условия соответствия, и
отбрасывают после упомянутого определения упомянутый пакет, возвращенный от блока (20) циклической обработки.
5. Носитель записи, который хранит программу для вынуждения коммутатора выполнять способ обработки пакетов по любому из пп. 3 или 4.
EP 1672833 A1, 21.06.2006 | |||
US 7382787 B1, 03.06.2008 | |||
Приспособление для суммирования отрезков прямых линий | 1923 |
|
SU2010A1 |
JP 7123095 A, 12.05.1995 | |||
ФИЛЬТРАЦИЯ И МАРШРУТИЗАЦИЯ ФРАГМЕНТИРОВАННЫХ ДЕЙТАГРАММ В СЕТИ ПЕРЕДАЧИ ДАННЫХ | 2005 |
|
RU2363108C2 |
Авторы
Даты
2016-11-20—Публикация
2012-03-01—Подача