УЗЕЛ СВЯЗИ, СИСТЕМА СВЯЗИ, УСТРОЙСТВО УПРАВЛЕНИЯ, СПОСОБ ПЕРЕСЫЛКИ ПАКЕТА И ПРОГРАММА
COMMUNICATION UNIT, COMMUNICATION SYSTEM, CONTROL DEVICE, PACKET FORWARDING METHOD AND PROGRAM

Область техники, к которой относится изобретение
[0001]
Ссылка на родственную заявку
Настоящее изобретение основано на заявке на патент Японии № 2012-224713, поданной 10 октября 2012, и испрашивает ее приоритет, раскрытие которой включено в данный документ во всей своей полноте посредством ссылки.
Настоящее изобретение относится к узлу связи, системе связи, устройству управления, способу пересылки пакета и программе, и к узлу связи, системе связи, устройству управления, способу пересылки пакета и программе, центрально управляемыми устройством управления.
Уровень техники
[0002]
В последние годы была предложена технология под названием OpenFlow (открытый поток) (см. непатентные источники 1 и 2). В OpenFlow связь интерпретируется в качестве сквозного потока, а также осуществляется управление трактом, восстановление после неисправностей, балансировка нагрузки и оптимизация для каждого потока. Коммутатор OpenFlow, описанный в непатентном источнике 2, содержит защищенный канал для осуществления связи с контроллером OpenFlow и функционирует согласно таблице потоков, надлежащим образом пополняемой или переписываемой контроллером OpenFlow. В таблице потоков набор условий соответствия (Полей Соответствия (Match Fields)), соответствующих заголовку пакета, статистика по потокам (Счетчики (Counters)) и Команды (Instructions), задающие содержимое обработки, задаются для каждого потока (см. раздел «4.1 Таблица потоков» («4.1 Flow Table») в непатентном источнике 2).
[0003]
Например, после приема пакета, коммутатор OpenFlow осуществляет поиск записи, имеющей условие соответствия (см. «4.3 Поля Соответствия» («4.3 Match Fields») в непатентном источнике 2), которое соответствует информации заголовка принятого пакета в таблице потоков. Когда запись, соответствующая принятому пакету, найдена в результате поиска, коммутатор OpenFlow обновляет статистику по потокам (Счетчики (Counters)) и выполняет содержимое обработки (передачу пакета из обозначенного порта, лавинную рассылку, отбрасывание и т.д.), записанное в поле команды записи, над принятым пакетом. С другой стороны, когда запись, соответствующая принятому пакету, не найдена в результате поиска, то коммутатор OpenFlow запрашивает у контроллера OpenFlow установку записи через защищенный канал, передавая запрос (сообщение Packet-In (Входящего Пакета)) для передачи информации управления для обработки принятого пакета. Коммутатор OpenFlow принимает запись потока, которая задает содержимое обработки и обновляет таблицу потоков. Как уже описано, коммутатор OpenFlow пересылает пакеты с использованием записей, сохраненных в таблице потоков в качестве информации управления.
[0004]
Непатентный источник 1
Ник Маккиоун и другие: «OpenFlow: Внедрение инноваций в университетских сетях» (Nick McKeown, et. al. «OpenFlow: Enabling Innovation in Campus Networks»), [находится в сети Интернет], [найдено 4 октября 2012], адрес в Интернете <URL: http://www.openflow.org/documents/openflow-wp-latest.pdf>
Непатентный источник 2
«Спецификация коммутатора OpenFlow», Реализованная версия 1.1.0 (Проводной Протокол 0x02) («OpenFlow Switch Specification,» Version 1.1.0 Implemented (Wire Protocol 0x02)), [находится в сети Интернет], [найдено 4 октября 2012], адрес в Интернете <URL: http://www.openflow.org/documents/openflow-spec-v1.1.0.pdf>.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
[0005]
Посредством настоящего изобретения выполняется следующий анализ. Дополнительно, каждое раскрытие процитированных литературных источников включено в данный документ посредством ссылки на них. В сети централизованного управления, представленной технологией OpenFlow в непатентных источниках 1 и 2, для каждого дополнительного потока в узле связи, таком как коммутатор на тракте, должна быть установлена запись. В результате существует проблема, заключающаяся в том, что количество записей для потоков увеличивается в ответ на увеличение соединительных выводов и получателей сообщений, увеличивая нагрузку на устройство 20 управления.
[0006]
В дополнение к увеличению нагрузки на контроллер (устройство управления) увеличение количества записей, хранимых в каждом узле связи, увеличивает количество времени, которое требуется для поиска записи в узле связи, влияя на скорость реагирования. Схожим образом увеличение количества записей, хранимых в каждом узле связи, увеличивает нагрузку на устройство 20 управления, которое управляет узлами связи. Поэтому, существует потребность в сведении количества записей, хранимых в узле связи, к минимуму.
[0007]
Задача настоящего изобретения состоит в предоставлении узла связи, системы связи, устройства управления, способа пересылки пакета и программы, способствующих уменьшению количества записей, хранимых в узле связи, и уменьшению нагрузки на устройство управления в сети централизованного управления.
[0008]
Согласно первому варианту выполнения предложен узел связи, содержащий первую таблицу, в которой сохранена первая запись, в которой условие соответствия, которое включает в себя по меньшей мере адрес получателя, соотнесено с получателем вывода пакета, соответствующего условию соответствия; вторую таблицу, в которой сохранена вторая запись, имеющая условие соответствия, установленное предварительно определенным устройством управления; блок изучения получателя, который регистрирует набор из источника и порта приема принятого пакета в качестве условия соответствия и получателя вывода, соответственно, в первой таблице; и блок обработки пакета, который пересылает пакет получателю вывода, определенному в первой таблице, когда запись, имеющая условие соответствия, соответствующее принятому пакету, найдена в каждой из первой и второй таблиц, и который широковещательно передает принятый пакет согласно третьей записи, установленной устройством управления, когда запись, имеющая условие соответствия, соответствующее принятому пакету, не найдена по меньшей мере в одной из упомянутых первой и второй таблиц.
[0009]
Согласно второму варианту выполнения предложена система связи, включающая в себя множество узлов связи, которые содержат первую таблицу, в которой сохранена первая запись, в которой условие соответствия, которое включает в себя по меньшей мере адрес получателя, соотнесено с получателем вывода пакета, соответствующего условию соответствия; вторую таблицу, в которой сохранена вторая запись, имеющая предварительно определенное условие соответствия; блок изучения получателя, который регистрирует набор из источника и порта приема принятого пакета в качестве условия соответствия и получателя вывода, соответственно, в первой таблице; и блок обработки пакета, который пересылает пакет получателю вывода, определенному в первой таблице, когда запись, имеющая условие соответствия, соответствующее принятому пакету, найдена в каждой из первой и второй таблиц, и который широковещательно передает принятый пакет согласно третьей записи, когда запись, имеющая условие соответствия, соответствующее принятому пакету, не найдена по меньшей мере в одной из упомянутых первой и второй таблиц; и устройство управления, которое рассчитывает тракт широковещательной передачи в сети, составленной множеством узлов связи, и которое устанавливает записи, по меньшей мере, во вторых таблицах узлов связи согласно тракту широковещательной передачи.
[0010]
Согласно третьему варианту выполнения предложено устройство управления, устанавливающее записи в таблицах узлов связи.
[0011]
Согласно четвертому варианту выполнения предложен способ пересылки пакета, включающий в себя этап, на котором обеспечивают узел связи, который содержит первую таблицу, в которой сохранена первая запись, в которой условие соответствия, которое включает в себя по меньшей мере адрес получателя, соотнесено с получателем вывода пакета, соответствующего условию соответствия; вторую таблицу, в которой сохранена вторая запись, имеющая предварительно определенное условие соответствия; блок изучения получателя, который регистрирует набор из источника и порта приема принятого пакета в качестве условия соответствия и получателя вывода, соответственно, в первой таблице; и блок обработки пакета, который пересылает пакет получателю вывода, определенному в первой таблице, когда запись, имеющая условие соответствия, соответствующее принятому пакету, найдена в каждой из первой и второй таблиц; и этап, на котором предписывают узлу связи широковещательно передавать принятый пакет согласно третьей записи, когда запись, имеющая условие соответствия, соответствующее принятому пакету, не найдена по меньшей мере в одной из упомянутых первой и второй таблиц. Способ привязан к конкретной машине, которая является упомянутым узлом связи, который обрабатывает принятый пакет согласно записи, имеющей условие соответствия, которое соответствует принятому пакету.
[0012]
Согласно пятому варианту выполнения предложена программа, предписывающая компьютеру, встроенному в узел связи, который содержит первую таблицу, в которой сохранена первая запись, в которой условие соответствия, которое включает в себя по меньшей мере адрес получателя, соотнесено с получателем вывода пакета, соответствующего условию соответствия; вторую таблицу, в которой сохранена вторая запись, имеющая предварительно определенное условие соответствия; блок изучения получателя, который регистрирует набор из источника и порта приема принятого пакета в качестве условия соответствия и получателя вывода, соответственно, в первой таблице; и блок обработки пакета, исполнять процесс передачи пакета получателю вывода, определенному в первой таблице, когда запись, имеющая условие соответствия, соответствующее принятому пакету, найдена в каждой из первой и второй таблицах; и процесс широковещательной передачи принятого пакета согласно третьей записи, когда запись, имеющая условие соответствия, соответствующее принятому пакету, не найдена по меньшей мере в одной из упомянутых первой и второй таблицах. Дополнительно, данная программа может быть сохранена в считываемом компьютером (постоянном) носителе информации. Другими словами, настоящее изобретение может быть реализовано в качестве компьютерного программного продукта.
[0013]
Согласно настоящему изобретению может быть уменьшено количество записей, хранимых в узле связи, и нагрузка на устройство управления в сети централизованного управления.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0014]
На Фиг. 1 показана схема, изображающая конфигурацию примерного варианта осуществления.
На Фиг. 2 показана схема для объяснения процесса функционирования примерного варианта осуществления.
На Фиг. 3 показана схема, изображающая конфигурацию системы связи первого примерного варианта осуществления.
На Фиг. 4 показана блок-схема, изображающая подробную конфигурацию узла связи первого примерного варианта осуществления.
На Фиг. 5 показана схема для объяснения процесса (поиск топологии) в первом примерном варианте осуществления.
На Фиг. 6 показана схема для объяснения процесса (расчета тракта) в первом примерном варианте осуществления.
На Фиг. 7 показана схема для объяснения процесса (изучение получателя) в первом примерном варианте осуществления.
На Фиг. 8 показана схема для объяснения процесса (пересылка пакета) в первом примерном варианте осуществления.
На Фиг. 9 показана схема для объяснения процесса (восстановление после неисправности) в первом примерном варианте осуществления.
ПРЕДПОЧТИТЕЛЬНЫЕ ВАРИАНТЫ ОСУЩЕСТВЛЕНИЯ
[0015]
Прежде всего, со ссылкой на чертежи будет предоставлено краткое изложение существа примерного варианта осуществления настоящего изобретения. Следует отметить, что ссылочные обозначения на чертежах по сути даны каждому элементу исключительно в качестве примера для содействия удобному пониманию и не предназначены ограничивать настоящее изобретение до вариантов, изображенных на чертежах.
[0016]
Как показано на Фиг. 1, примерный вариант осуществления, раскрытый в настоящей заявке, может быть реализован с конфигурацией, которая включает в себя узел 10 связи, который содержит первую и вторую таблицы 11 и 12, блок 13 изучения получателя и блок 14 обработки пакета, и устройство 20 управления.
[0017]
В первой таблице 11 сохранена первая запись, в которой условие соответствия, которое включает в себя по меньшей мере адрес получателя, соотнесено с получателем вывода пакета, соответствующего условию соответствия. Во второй таблице 12 сохранена вторая запись, имеющая адрес источника в качестве условия соответствия. В данном случае предполагается, что устройство 20 управления обнаруживает то, что терминалы с A по C подсоединены, и что вторая запись, имеющая адреса терминалов с A по C в качестве адресов источников, установлена во второй таблице 12.
[0018]
Блок 13 изучения получателя регистрирует набор из источника и порта приема принятого пакета в качестве первой записи, в которой условие соответствия соотнесено с получателем вывода, в первой таблице 11.
[0019]
Блок 14 обработки пакета пересылает пакет получателю вывода, определенному в первой таблице, когда запись, имеющая условие соответствия, соответствующее принятому пакету, найдена в каждой из первой и второй таблиц 11 и 12, и широковещательно передает принятый пакет согласно третьей записи, установленной устройством 20 управления, когда запись, имеющая условие соответствия, соответствующее принятому пакету, не найдена по меньшей мере в одной из упомянутых первой и второй таблицах. Дополнительно, третья запись может быть сохранена во второй таблице 12 таким образом, что к ней применим более низкий приоритет по сравнению со второй записью, или она может быть сохранена в третьей таблице, к которой следует обращаться после второй таблицы 12.
[0020]
Например, как показано на Фиг. 2, в случае, при котором терминалы с A по C соединены с сетью, составленной множеством узлов 10 связи, терминал C передает пакет в терминал A. Пунктирные линии на Фиг. 2 обозначают тракты широковещательной передачи/многоадресной передачи (упоминаемые далее в качестве трактов BCMC), рассчитанные устройством 20 управления.
[0021]
Узел 10 связи принимает пакет от терминала C, но так как первая таблица 11 не имеет какой-либо записи, имеющей условие соответствия, соответствующее пакету от терминала C (поскольку пакет еще не был изучен), то узел 10 связи пересылает принятый пакет согласно третьей записи, которая реализует тракт широковещательной передачи, изображенный на Фиг. 2.
[0022]
При приеме пакета от терминала C в терминал A, который пересылается согласно тракту широковещательной передачи, блок 13 изучения получателя узла 10 связи на данном тракте пересылки регистрирует набор из источника (терминал C) и порта приема (порт приема пакета от терминала C) принятого пакета в качестве первой записи, имеющей данный набор в качестве условия соответствия и получателя вывода, в первой таблице 11.
[0023]
Затем, когда терминал, который принял широковещательный пакет, передает ответный пакет в терминал C, узел 10 связи определяет, что найдена первая запись, поскольку первая запись, имеющая адрес получателя терминала C в качестве условия соответствия и порт, который принял пакет от терминала C в качестве получателя вывода, зарегистрирована в первой таблице 11 осуществляющего связь устройства 10 в упомянутом тракте. Дополнительно, как уже описано, поскольку вторая запись, имеющая терминал A, источник, в качестве условия соответствия, зарегистрирована устройством 20 управления во второй таблице узла 10 связи, то осуществляющее связь устройство 10 определяет, что найдена вторая запись. В результате ответный пакет от терминала A в терминал C пересылается одноадресным образом в терминал C.
[0024]
В процессе пересылки блок 13 изучения получателя узла 10 связи регистрирует набор из источника (терминал A) и порта приема (порт приема пакета от терминала A) ответного пакета в качестве первой записи, имеющей данный набор в качестве условия соответствия и получателя вывода, в первой таблице 11. В результате последующие пакеты от терминала C в терминал A будут соответствовать первой и второй записям и будут пересылаться одноадресным образом.
[0025]
Как уже описано, процесс пересылки, такой как коммутация уровня 2, реализуется с использованием сети централизованного управления, и уменьшается как количество записей, хранимых в пересылающем узле в тракте, так и нагрузка на устройство 20 управления.
[0026]
1-ый примерный вариант осуществления
Далее со ссылкой на чертежи будет описан первый примерный вариант осуществления. На Фиг. 3 показана схема, изображающая конфигурацию системы связи первого примерного варианта осуществления. На Фиг. 3 изображена конфигурация, которая включает в себя узлы 1021-1024 связи, соединенные через линии связи передачи данных, и устройство 101 управления, которое управляет этими узлами 1021-1024 связи через линии управления. Дополнительно, терминал 1031 соединен с узлом 1021 связи, а терминал 1032 соединен с узлом 1024 связи.
[0027]
Устройство 101 управления рассчитывает тракт BCMC на основе топологии сети, составленной узлами 1021-1024 связи. Дополнительно, устройство 101 управления устанавливает запись, реализующую рассчитанные тракты BCMC, для узлов 1021-1024 связи с использованием протокола OpenFlow в непатентном источнике 2. Устройство 101 управления регистрирует запись для несовпадений в первых таблицах узлов 1021-1024 связи и регистрирует записи для распознавания известных источников передачи (записи с MAC источников) и записи для широковещательной передачи во второй таблице узлов 1021-1024 связи. Их содержимое будет описано более подробно совместно с подробной конфигурацией узлов 1021-1024 связи. Дополнительно, устройство 20 управления, описанное выше, может быть реализовано посредством использования в качестве основы контроллера OpenFlow в непатентных источниках 1 и 2 и с добавлением в него функций обработки записей, описанных далее.
[0028]
Терминалы 1031 и 1032 являются персональными компьютерами и различными мобильными терминалами, которые осуществляют связь через сеть, составленную узлами 1021-1024 связи.
[0029]
На Фиг. 4 показана блок-схема, изображающая подробную конфигурацию узла связи первого примерного варианта осуществления. Далее узлы 1021-1024 связи упоминаются в качестве «узла 102 связи», когда между ними не проводится различий.
[0030]
Как показано на Фиг. 4, узел 102 связи содержит блок 103 протокольного управления, который обменивается сообщениями управления с устройством 101 управления, порт 104 ввода, блок 105 хранения таблиц и порт 112 вывода. Следует отметить, что блок 13 изучения получателя и блок 14 обработки пакета, изображенные на Фиг. 1, опущены на Фиг. 4 с целью упрощения объяснения, а обработка пакета в узле 102 связи определяется результатами поиска в двух таблицах (Таблица 0 (обозначение 106), и Таблица 1 (обозначение 109)), хранимых в блоке 105 хранения таблиц. Дополнительно, узел 102 связи содержит функцию изучения при регистрации записи (запись MAC получателя), в которой адрес получателя соотнесен с портом вывода в Таблице 0 (обозначение 106) согласно принятому пакету.
[0031]
Блок 105 хранения таблиц хранит Таблицу 0 (обозначение 106), и Таблицу 1 (обозначение 109), которые обрабатываются конвейерным образом. При конвейерной обработке ко множеству таблиц обращение осуществляется в предварительно определенном порядке, условия соответствия записей в каждой таблице приводятся в соответствие, в то время как пакетные данные и метаданные переписываются по мере необходимости, и определяется по меньшей мере некоторое действие обработки (см «4.1.1 Конвейерная обработка» («4.1.1 Pipeline Processing») в непатентном источнике 2).
[0032]
В настоящем примерном варианте осуществления сначала перед Таблицей 1 (обозначение 109) осуществляется обращение к Таблице 0 (обозначение 106). Поэтому, когда порт 104 ввода принимает пакет, то поиск записи, имеющей условие соответствия, соответствующее принятому пакету, производится сначала в Таблице 0 (обозначение 106).
[0033]
В примере на Фиг. 4 Таблица 0 (обозначение 106) хранит запись 107 Dst MAC (MAC получателя) и запись 108 Miss-hit (Несовпадение).
[0034]
Запись 107 Dst MAC соответствует первой записи, описанной выше, и устанавливается блоком изучения получателя (не изображен на данном чертеже) узла 102 связи в течение процесса функционирования. Например, когда пакет, имеющий X в качестве MAC (Media Access Control (управление доступом к среде)) адреса (Src MAC) источника, Y в качестве MAC-адреса (Dst MAC) получателя, и Z в качестве VLAN ID (Virtual Local Area Network ID (идентификатор виртуальной локальной сети)) (упоминаемые далее в качестве {Src MAC: X, Dst MAC: Y, VID: Z}), принят портом A ввода, то блок изучения получателя узла связи добавляет следующую запись в Таблицу 0 (обозначение 106).
[0035]
Match condition:
Dst MAC=X and VID=Z
Instruction:
Write-Metadata=1
Write-Action=(OUTPUT=A)
Goto Table=1
(Условие соответствия:
Dst MAC=X и VID=Z)
Команда:
Записать - Метаданные=1)
Записать - Действие=(ВЫВОД=A))
Перейти к Таблице=1)
[0036]
В данном случае, в качестве метаданных, «Write - Metadata» («Записать - Метаданные») предписывает обработку по установлению флага «1», указывающего, что произошло совпадение с условием соответствия записи Dst MAC. Дополнительно, «Write-Action=(OUTPUT=A)» («Записать - Действие (ВЫВОД=A)») предписывает пересылку надлежащих пакетов с порта A в порт 112 вывода. Дополнительно, «Goto Table 1» («Перейти к Таблице=1») предписывает обратиться к Таблице 1 (обозначение 109) и произвести поиск записей.
[0037]
Запись 108 Miss-hit (Несовпадение) является записью (четвертая запись), установленной контроллером в начале процесса функционирования. Запись предписывает обращение к Таблице 1 (обозначение 109) и поиск записей, когда принятый пакет не совпадает ни с одной из изученных записей 107 Dst MAC.
[0038]
Дополнительно, в примере на Фиг. 4, Таблица 1 (обозначение 109) хранит запись 110 Src MAC и запись 111 широковещательной передачи.
[0039]
Запись Src MAC соответствует второй записи, описанной выше, и устанавливается устройством 101 управления в течение упомянутого процесса функционирования. Например, когда устройство 101 управления распознает местоположение пользователя (терминала) {пользователь, имеющий MAC-адрес Y и VID Z, соединен с портом B узла связи}, устройство 101 управления устанавливает следующую запись в узле 102 связи в качестве записи 110 Src MAC.
[0040]
Match condition: Metadata=1 and Inport=B and Src MAC=Y and VID=Z
Instruction: None
(Условие соответствия: Метаданные=1 и Порт ввода=B и Src MAC=Y и VID=Z
Команда: Нет)
[0041]
Как уже описано, вследствие установки записи 107 Dst MAC и записи 110 Src MAC узел 102 связи выполняет процесс одноадресной пересылки над пакетами, совпадающими с записью 107 Dst MAC и записью 110 Src MAC, с порта А, установленного в качестве «Write - Action» («Записать - Действие») в записи 107 Dst MAC.
[0042]
Дополнительно, любое одно или более из условий соответствия (Src MAC, Inport (порт ввода) и VID) записи 110 Src MAC может быть опущено. Когда ни одно из этих состояний не рассматривается в качестве условия соответствия, то устанавливается следующая запись 110 Src MAC.
[0043]
Match condition: Metadata=1
Instruction: None
(Условие соответствия: Метаданные=1
Команда: Нет)
[0044]
В данном случае, лишь факт того, что произошло совпадение с записью 107 Dst MAC, запускает одноадресную пересылку с порта А, установленного в записи 107 Dst MAC в качестве «Write - Action» («Записать - Действие»).
[0045]
Запись 111 широковещательной передачи является записью (третья запись), установленной контроллером в начале процесса функционирования. Запись 111 широковещательной передачи пересылает пакеты, которые не совпадают с записью 110 Src MAC, по тракту широковещательной передачи, установленному устройством 101 управления (включая случай, при котором не происходит совпадения с записью 107 Dst MAC, и флаг «1» не взведен в Metadata (Метаданных)).
[0046]
Как уже описано выше, блок обработки пакета (не изображен на данном чертеже) узла 102 связи продолжает обращаться по порядку к Таблице 0 (обозначение 106) и Таблице 1 (обозначение 109) блока 105 хранения таблиц и выводит пакет в определенный порт.
[0047]
Процесс функционирования блока обработки пакета (не изображен) узла 102 связи будет описан на конкретном примере. Ниже предполагается, что запись 107 Dst MAC и запись 110 Src MAC устанавлены в Таблице 0 (обозначение 106) и Таблице 1 (обозначение 109), следующим образом.
[0048]
Запись Dst MAC
Match condition:
Dst MAC=X and VID=Z
Instruction:
Write-Metadata=1
Write-Action=(OUTPUT=A)
Goto Table=1
(Условие соответствия:
Dst MAC=X и VID=Z)
Команда:
Записать - Метаданные=1)
Записать - Действие=(ВЫВОД=A))
Перейти к Таблице=1)
[0049]
Запись Src MAC
Match condition: Metadata=1 and Inport=B and Src MAC=Y and VID=Z
Instruction: None
(Условие соответствия: Метаданные=1 и Порт ввода=B и Src MAC=Y и VID=Z
Команда: Нет)
[0050]
(1) Когда не происходит совпадения ни с записью 107 Dst MAC, ни с записью 110 Src MAC, то:
Блок обработки пакета (не изображен на данном чертеже) узла 102 связи осуществляет поиск записи, имеющей условие соответствия, которое соответствует пакету, принятому с порта B ввода в Таблице 0 (обозначение 106). Так как записи 107 Dst MAC не существует, то происходит совпадение с записью 108 Miss-hit, и поиск в Таблице 1 (обозначение 109) начинается без установления флага в Metadata (Метаданных). Поскольку запись 110 Src MAC, имеющая условие соответствия, которое соответствует принятому пакету, не присутствует в поиске в Таблице 1 (обозначение 109), то происходит совпадение с записью 111 широковещательной передачи, и пакет передается широковещательно.
[0051]
(2) Когда происходит совпадение с записью 107 Dst MAC, а совпадения с записью 110 Src MAC не происходит, то:
Блок обработки пакета (не изображен на данном чертеже) узла 102 связи осуществляет поиск записи, имеющей условие соответствия, которое соответствует пакету, принятому с порта B ввода в Таблице 0 (обозначение 106). Поскольку запись 107 Dst MAC, соответствующая принятому пакету, найдена, то блок обработки пакета (не изображен на данном чертеже) начинает поиск в Таблице 1 (обозначение 109) после исполнения содержимого поля команды (Write - Metadata=1, Write - Action (OUTPUT=A) (Записать - Метаданные=1, Записать - Действие (ВЫВОД=A))). Однако, в результате поиска в Таблице 1 (обозначение 109) не существует какой-либо записи 110 Src MAC, имеющей условие соответствия, которое соответствует принятому пакету, происходит совпадение с записью 111 широковещательной передачи, и пакет передается широковещательно.
[0052]
(3) Когда не происходит совпадения с записью 107 Dst MAC, а совпадение с записью 110 Src MAC происходит, то:
Блок обработки пакета (не изображен на данном чертеже) узла 102 связи осуществляет поиск записи, имеющей условие соответствия, которое соответствует пакету, принятому с порта B ввода, в Таблице 0 (обозначение 106). Так как записи 107 Dst MAC не существует, то происходит совпадение с записью 108 Miss-hit, и поиск в Таблице 1 (обозначение 109) начинается без установления флага в Metadata (Метаданных). Несмотря на то, что Таблица 1 (обозначение 109) имеет запись 110 Src MAC, имеющую условие соответствия, которое соответствует Src MAC-адресу (MAC-адресу источника) принятого пакета, они не рассматриваются в качестве соответствия, так как в Metadata (Метаданных) флаг не установлен. В конечном счете, происходит совпадение с записью 111 широковещательной передачи, и пакет передается широковещательно.
[0053]
(4) Когда происходит совпадение как с записью 107 Dst MAC, так и с записью 110 Src MAC, то:
Блок обработки пакета (не изображен на данном чертеже) узла 102 связи осуществляет поиск записи, имеющей условие соответствия, которое соответствует пакету, принятому с порта B ввода в Таблице 0 (обозначение 106). Так как запись 107 Dst MAC, соответствующая принятому пакету, найдена, то блок обработки пакета (не изображен на данном чертеже) начинает поиск в Таблице 1 (обозначение 109) после исполнения содержимого поля команды (Write - Metadata=1, Write - Action (OUTPUT=A) (Записать - Метаданные=1, Записать - Действие (ВЫВОД=A))). В результате поиска в Таблице 1 (обозначение 109) запись 110 Src MAC, имеющая условия соответствия, которые соответствуют Src MAC-адресу принятого пакета и содержимому Metadata (Метаданных), найдена, и пакет, в конечном счете, выводится (одноадресным образом) из порта A вывода.
[0054]
Дополнительно, описанные функции (соответствующий блоку 13 изучения получателя и блоку 14 обработки пакета на Фиг. 1) узла связи могут быть реализованы посредством компьютерной программы, при этом имеется компьютер, встроенный в узел связи, для исполнения каждой описанной обработки с использованием своего аппаратного обеспечения.
[0055]
Далее со ссылкой на чертежи будет описан подробно весь процесс функционирования настоящего примерного варианта осуществления. Сначала будет объяснен процесс поиска топологии, выполняемый устройством 101 управления. В объяснении ниже предполагается, что записи Src MAC, устанавливающие MAC-адреса терминалов 1031 и 1032 в качестве условия соответствия для MAC-адресов источников, зарегистрированы в Таблицах 1 (обозначение 109) узлов 1021-1024 связи.
[0056]
Поиск топологии
На Фиг. 5 показана схема для объяснения процесса (поиск топологии) первого примерного варианта осуществления. Прежде всего, устройство 101 управления имеет пакеты для определения топологии, передаваемые со всех портов узлов 1021-1024 связи. (Например, может использоваться сообщение Packet-Out (Исходящего Пакета) в непатентном источнике 2.) Стрелки на Фиг. 5 указывают потоки пакетов для определения топологии, передаваемые в узел 1021 связи (поток пакета, передаваемого в узел 1023 связи, не показан). Пакеты для определения топологии включают в себя информацию для однозначной идентификации узла связи - источника.
[0057]
Пакет для определения топологии, пересланный от узла 1021 связи в узел 1022 связи, пересылается узлом 1022 связи в устройство 101 управления (сообщаемый, например, посредством сообщения Packet-In (Входящего пакета) в непатентном источнике 2). Устройство 101 управления узнает из информации (информация для однозначной идентификации узла связи), содержащейся в пакете для определения топологии, принятом от узла 1022 связи, что присутствует соединение линии связи между узлом 1021 связи и узлом 1022 связи. Устройство 101 управления запоминает порты узлов связи, соединенные с линией связи между узлами связи, в качестве внутренних портов (порты, не соединенные с внешней стороной).
[0058]
При этом, узел 1021 связи также передает пакет для определения топологии в терминал 1031, но данный пакет не возвращается в устройство 101 управления. Устройство 101 управления узнает, что используемый порт узла 1021 связи соединен с внешней стороной сети, при отсутствии возможности приема пакета для определения топологии от другого узла связи за предварительно определенный промежуток времени, как в данном случае. Устройство 101 управления запоминает порты, соединенные с внешней стороной сети, в качестве наружных портов (порты, соединенные с внешней стороной).
[0059]
Топология сети, составленной узлами 1021-1024 связи, может быть выяснена посредством выполнения обработки, описанной для собора информации о портах всех узлов связи, соединенных с устройством 101 управления.
[0060]
Дополнительно, вместо описанной выше процедуры может использоваться способ определения топологии, такой как Протокол Обнаружения Канального Уровня (Link Layer Discovery Protocol, LLDP).
[0061]
Расчет тракта
После выяснения топологии сети, как описано выше, устройство 101 управления рассчитывает тракты широковещательной передачи/многоадресной передачи (тракты BCMC) в сети. На Фиг. 6 показана схема для объяснения процесса (расчета тракта) первого примерного варианта осуществления. Сначала, устройство 101 управления рассчитывает тракты BCMC пакета на основе топологии сети, которая выяснена, как описано выше.
[0062]
Затем, устройство 101 управления генерирует запись широковещательной передачи (третья запись), которая имеет узлы связи на трактах BCMC, пересылающие пакет, принимаемый внутренним портом от других внутренних портов и наружных портов на трактах BCMC, и устанавливает данную запись в Таблицах 1 (обозначение 109) узлов связи на данном тракте (пунктирные стрелки на Фиг. 6).
[0063]
Дополнительно, устройство 101 управления генерирует запись широковещательной передачи (третья запись), которая имеет пакет, принятый наружными портами узлов 1021-1024 связи и пересылаемый в наружные порты и порты на трактах BCMC, и устанавливает данную запись в Таблицах 1 (обозначение 109) узлов связи на тракте.
[0064]
В результате вышеупомянутого происходит установление записей для пересылки пакетов, как указано стрелками на Фиг. 6.
[0065]
Обнаружение терминалов (Изучение Записи Dst MAC)
Затем, когда терминал 1031 передает пакет в узел 1021 связи в любое время в течение процесса функционирования, узел 1021 связи генерирует запись 107 Dst MAC, имеющую MAC-адрес источника пакета в качестве условия соответствия и задающую обработку по установлению флага в Metadata (Метаданных) в качестве команды, обработку пересылки с порта приема пакета, и обработку поиска в Таблице 1 (обозначение 109) в блоке изучения получателя, и регистрирует данную запись в Таблице 0 (обозначение 106).
[0066]
Дополнительно, узел 1021 связи обращается по порядку к Таблице 0 (обозначение 106) и Таблице 1 (обозначение 109) и определяет получателя пересылки. В данной случае, так как нет никакой записи 107 Dst MAC, записи, соответствующей пакету от терминала 1031, то узел 1021 связи пересылает данный пакет в тракт BCMC и наружный порт (если таковой имеется) согласно записи 111 широковещательной передачи.
[0067]
Затем, узлы связи 1022-1024, которые приняли пакет со своих внутренних портов на тракте BCMC, генерируют запись 107 Dst MAC, имеющую MAC-адреса источника пакета в качестве условия соответствия и задающую обработку по установлению флага в Metadata (Метаданных) в качестве команды, обработку по пересылке с порта приема пакета и обработку по поиску в Таблице 1 (обозначение 109), и регистрируют данную запись в Таблице 0 (обозначение 106) подобно узлу 1021 связи.
[0068]
В узлах 1022-1024 связи, также, происходит обращение по порядку к Таблицам 0 (обозначение 106) и Таблицам 1 (обозначение 109), и определяется получатель пересылки. Так как узлы 1022-1024 связи тоже не имеют записи 107 Dst MAC, записи, соответствующей пакету от терминала 1031, то узлы 1022-1024 связи пересылают пакет в тракт BCMC и наружный порт (если таковой имеется) согласно записи 111 широковещательной передачи.
[0069]
В результате вышеупомянутого, пакет, переданный от терминала 1031 в узел 1021 связи, пересылается в терминал 1032 согласно стрелкам на Фиг. 6.
[0070]
Пересылка ответного пакета (Пересылка Изученному Получателю)
Затем, когда терминал 1032, который принял пакет от терминала 1031, передает пакет, предназначенный для терминала 1032, в узел 1024 связи, узел 1024 связи пересылает пакет с порта, обозначенного записью 107 Dst MAC, так как MAC-адрес терминала 1031 оказался изучен (запись 107 Dst MAC зарегистрирована), и Таблица 1 (обозначение 109) имеет зарегистрированную запись Src MAC, устанавливающую MAC-адреса терминалов 1031 и 1032 в качестве условия соответствия для MAC-адреса источника.
[0071]
Узлы 1022 и 1021 связи пересылают пакет с порта, обозначенного записью 107 Dst MAC, так как узлы 1022 и 1021 связи также изучили MAC-адрес терминала 1031 (запись 107 Dst MAC зарегистрирована), и Таблицы 1 (обозначение 109) имеют зарегистрированную запись Src MAC, устанавливающую MAC-адреса терминалов 1031 и 1032 в качестве условия соответствия для MAC-адрес источника.
[0072]
В результате вышеупомянутого, пакет, переданный из терминала 1032 в узел 1024 связи, пересылается терминалом 1032 вдоль стрелок на Фиг. 8.
[0073]
Как уже описано, согласно настоящему примерному варианту осуществления пересылка пакета, эквивалентная коммутации L2, реализуется с использованием сети централизованного управления. Дополнительно, в настоящем примерном варианте осуществления предотвращается возникновение контура, так как неизученные пакеты пересылаются через тракты BCMC, рассчитанные устройством 101 управления на основе топологии сети, в отличие от коммутации L2, при которой пакеты лавинно рассылаются с не предназначенных для приема портов. Дополнительно, хотя и не было объяснено в примерном варианте осуществления выше, оказывается возможным минимизировать увеличение количества записей посредством установки подходящего значения лимита времени в записи 107 Dst MAC и выполнения обработки на предмет устаревания.
[0074]
Дополнительно, согласно настоящему примерному варианту осуществления, когда возникает неисправность на линии связи между любым из узлов связи, возможно установить и изучить альтернативный тракт. Процесс этого будет описан ниже.
[0075]
Обработка обхода
Сейчас будет объяснен случай, при котором возникает неисправность на линии связи между узлами 1021 и 1022 связи на Фиг. 9. Сначала, узлы 1021 и 1022 связи уведомляют устройство 101 управления о неисправном состоянии порта и запрашивают у устройства 101 управления пересчет тракта широковещательной передачи и переустановку необходимых записей.
[0076]
После приема уведомления, устройство 101 управления обновляет топологию сети, выясненную посредством процесса, описанного выше (Поиск Топологии), на основе содержимого уведомления.
[0077]
Затем, устройство 101 управления пересчитывает тракты BCMC с использованием того же самого процесса (Расчет Тракта), описанного выше.
[0078]
Далее, как и в процессе (Расчет Тракта), описанном выше, устройство 101 управления генерирует запись широковещательной передачи (третья запись), которая пересылает пакеты, принятые с наружных портов узлов 1021-1024 связи, в наружные порты и порты на трактах BCMC, и устанавливает данную запись в Таблицах 1 (обозначение 109) узлов связи на трактах (пунктирные стрелки на Фиг. 9).
[0079]
Наконец, устройство 101 управления предписывает узлам 1021-1024 связи удалить запись Dst MAC, хранящую изученный MAC-адрес (штрихпунктирные стрелки на Фиг. 9).
[0080]
В результате вышеупомянутого, когда терминал 1031 впоследствии передает пакет, MAC-адрес изучается, как описано выше (Обнаружение терминала (Изучение Записи Dst MAC)) (Пересылка ответного пакета (Пересылка изученному получателю)), и пакет пересылается по тракту через узлы 1021, 1023 и 1024 связи.
[0081]
Выше был описан примерный вариант осуществления настоящего изобретения, однако, настоящее изобретение не ограничивается описанным примерным вариантом осуществления, и в пределах объема основной технологической концепции настоящего изобретения дополнительно могут быть внесены модификации, замены и регулировки. Например, конфигурация сети и конфигурация элементов, изображенных на каждом чертеже, являются всего лишь примерными для содействия пониманию настоящего изобретения, которое не ограничивается этими конфигурациями, изображенными на чертежах.
[0082]
Дополнительно, например, в примерном варианте осуществления, описанном выше, MAC-адреса используются в качестве условий соответствия в первой таблице (Таблица 0 (обозначение 106)) и второй таблице (Таблица 1 (обозначение 109)), однако, в качестве условий соответствия могут использоваться и другие адреса, такие как IP-адрес. Дополнительно, несмотря на то, что VLAN ID и порты ввода используются в качестве условий соответствия в примерном варианте осуществления выше, эти элементы могут быть опущены, и в качестве условий соответствия могут быть добавлены другие объекты. Дополнительно, возможно устанавливать только «Metadata=1» («Метаданные=1») (то есть, происходит совпадение в первой таблицей), в качестве условия соответствия во второй таблице (Таблица 1 (обозначение 109)), как описано в первом примерном варианте осуществления.
[0083]
Дополнительно, в примерном варианте осуществления, описанном выше, переписывание Metadata (Метаданных), Action (Действия) (пересылка с обозначенного порта) и обращение к следующей таблице посредством команды Goto (Прейти к) устанавливаются в качестве Instructions (Команд) для случая, когда происходит совпадение в первой таблице (Таблица 0 (обозначение 106)), однако перезапись заголовка может быть предписана в качестве Instruction (Команды). Например, становится возможным записывать информацию, соответствующую типу пакета в первой таблице (Таблица 0 (обозначение 106)), и назначать обработку согласно типу пакета во второй таблице (Таблица 1 (обозначение 109)).
[0084]
В заключении будут вкратце перечислены предпочтительные варианты осуществления настоящего изобретения.
Вариант 1
(См. узел связи согласно первому варианту выполнения)
Вариант 2
В Варианте 1 узел связи имеет адрес терминала, соединенного с сетью, установленный в качестве условия соответствия второй записи.
Вариант 3
В Варианте 1 или 2 узел связи имеет третью запись, которая предписывает осуществление поиска во второй таблице, когда первая таблица не имеет зарегистрированной первой записи, имеющей условие соответствия, которое соответствует принятому пакету.
Вариант 4
В любом из Вариантов 1-3 узел связи запрашивает у устройства управления пересчет тракта широковещательной передачи и переустановку второй и четвертой записи, когда возникает неисправность на линии связи к другому узлу связи.
Вариант 5
В любом из Вариантов 1-4 узел связи выполняет обработку на предмет устаревания по меньшей мере над первой записью на основе предварительно определенного значения лимита времени.
Вариант 6
(См. систему связи согласно второму варианту выполнения)
Вариант 7
(См. устройство управления согласно третьему варианту выполнения)
Вариант 8
(См. способ пересылки пакета согласно четвертому варианту выполнения)
Вариант 9
(См. программу согласно пятому варианту выполнения)
Дополнительно, Варианты 6-9 могут быть преобразованы в Варианты 2-5 подобно Варианту 1.
[0085]
Дополнительно, раскрытие каждого упомянутого выше непатентного источника полностью включено в данный документ посредством ссылки на данный источник. Следует отметить, что другие задачи, признаки и варианты выполнения настоящего изобретения станут очевидными во всем раскрытии, и что могут осуществляться модификации без отступления от сущности и объема настоящего изобретения, раскрытого в данном документе и заявляемого в прилагаемой формуле изобретения. Также следует отметить, что любое сочетание раскрытых и/или заявляемых элементов, объектов и/или пунктов может охватываться вышеупомянутыми модификациями. В частности, диапазоны числовых значений, используемые в настоящем описании, должны быть интерпретированы в качестве конкретного числового значения или малого диапазона, содержащегося в упоминаемых диапазонах, даже в случаях, когда это так не указано.
СПИСОК ССЫЛОЧНЫХ ОБОЗНАЧЕНИЙ
[0086]
10, 102, 1021-1024: узел связи
11: первая таблица
12: вторая таблица
13: блок изучения получателя
14: блок обработки пакета
20, 101: устройство управления
103: блок протокольного управления
104: порт ввода
105: блок хранения таблицы
106: Таблица 0
107: Запись Dst MAC (первая запись)
108: Запись Miss-hit (четвертая запись)
109: Таблица 1
110: Запись Src MAC (вторая запись)
111: Запись широковещательной передачи (третья запись)
112: порт вывода
A-C, 1031, 1032: терминал