СИСТЕМА СВЯЗИ И СПОСОБ СОЗДАНИЯ ИНФОРМАЦИИ ТОПОЛОГИИ
COMMUNICATION SYSTEM AND METHOD OF CREATING TOPOLOGY INFORMATION

Область техники
[0001] Настоящее изобретение относится к системе связи, включающей в себя множество блоков передачи пакетов и блоков управления для управления блоками передачи пакетов. Изобретение также относится к блоку передачи пакетов, блоку управления, способу создания информации топологии и программе, используемой блоком управления, относящейся к системе связи.
Уровень техники
[0002] Существует система связи, включающая в себя множество коммутаторов, каждый из которых передает пакет, и блок управления, который управляет каждым коммутатором, причем в этой системе связи блок управления устанавливает информацию о входе потока в каждом коммутаторе, и коммутатор передает принятый пакет в соответствии с информацией о входе потока. Информация о входе потока предусматривает тип обработки (например, передача, отклонение, обновление или другие), которому принятый пакет должен подвергнуться, в зависимости от заголовка пакета. Такая система связи требует, чтобы канал управления, используемый для блока управления, управлял коммутатором. Например, если коммутатор принимает пакет, не определенный в информации о входе потока, коммутатор уведомляет об этом блок управления, и затем блок управления передает соответствующую информацию о входе потока к коммутатору согласно специфическому пакету. Канал управления используется для целей, таких как уведомление от коммутатора к блоку управления и передача информации о входе потока от блока управления к коммутатору. Протокол, используемый для блока управления, чтобы управлять коммутатором, называют OpenFlow. Коммутатор можно рассматривать как блок передачи пакетов, который передает пакет. Канал управления эквивалентен "безопасному каналу" в протоколе OpenFlow. Кроме того, блок управления называют контроллером в OpenFlow.
[0003] Спецификации OpenFlow описаны в Непатентном документе 1. В спецификациях OpenFlow предусмотрено, что блок управления и коммутатор должны использовать SSL (Безопасный Уровень Сокетов), чтобы обмениваться информацией в TCP (протокол управления передачей) с номером порта 6633. Соответственно, системы связи, к которым протокол OpenFlow обычно применяется, включают в себя две независимые сети коммуникаций. Одна является сетью коммуникаций с множеством коммутаторов для передачи пакетов по порядку, и другая является сетью коммуникаций, которая работает в качестве канала управления между блоком управления и каждым коммутатором. Фиг. 20 является пояснительной диаграммой, которая показывает пример общей системы связи, к которой применен протокол OpenFlow. Каждый из коммутаторов 92, показанных на фиг. 20, использует коммуникационную сеть 94 с пакетной передачей, чтобы передавать принятый пакет другим коммутаторам в соответствии с информацией о входе потока. Кроме того, коммуникационная сеть 93 управления для служения в качестве канала управления предоставлена независимо от коммуникационной сети 94 с пакетной передачей, и блок управления 91 управляет каждым коммутатором 92 через коммуникационную сеть 93 управления. Коммуникационная сеть 93 управления использует протокол маршрутизации, такой как STP (протокол остовного дерева), TCP/IP (Протокол управления передачей/Интернет-протокол), RIP (протокол маршрутизации информации), или OSPF («открыть сначала самый короткий путь»).
[0004] Кроме того, в системе связи, показанной посредством примера на фиг. 20, когда топология коммутаторов изменяется, каждый коммутатор обменивается кадрами управления в системе связи и распознает новую топологию. Примеры кадра управления для распознавания топологии включают в себя, например, BPDU (протокольный блок данных моста) в STP, и другие.
Список цитат
Непатентная литература
[0005] Непатентный документ 1 "OpenFlow Switch Specification Version 0.9.0", "4.4 Encryption", July 20, 2009 (найден 06 октября 2011) в Internet <http://www.openflowswitch.org/documents/openflow-spec-v0.9.0.pdf>
Сущность изобретения
Техническая проблема
[0006] Основанная на OpenFlow обычная система связи на фиг. 20 использует коммуникационную сеть 93 управления и коммуникационную сеть 94 передачи пакетов. Однако в системе связи, включающей в себя множество устройств передачи пакетов и блок управления, который управляет каждым блоком передачи пакетов, предпочтительно, чтобы коммуникационная сеть, используемая для каждого блока передачи пакетов для передачи пакетов, и коммуникационная сеть, используемая для блока управления для управления каждым блоком передачи пакетов, были бы интегрированы в один вид.
[0007] Соответственно, настоящее изобретение предназначено, чтобы обеспечить систему связи, включающую в себя множество блоков передачи пакетов и блок управления, который управляет каждым блоком передачи пакетов, причем система связи сконфигурирована так, чтобы коммуникационная сеть, используемая для каждого блока передачи пакетов, чтобы передать пакеты, и коммуникационная сеть, используемая для блока управления для управления каждым блоком передачи пакетов, могли быть интегрированы в один вид; и блок передачи пакетов, блок управления, способ создания информации топологии, и программу, используемую блоком управления, применяемую к системе связи.
Решение проблемы
[0008] Система связи согласно настоящему изобретению включает в себя множество блоков передачи пакетов; и блок управления, который управляет каждым из блоков передачи пакетов, при этом блок управления включает в себя средство передачи запроса ответа, которое передает запрос ответа к блоку передачи пакетов, средство приема ответа, которое принимает ответ, включающий в себя информацию относительно портов, предоставленных в блоке передачи пакетов, от блока передачи пакетов, и средство создания информации топологии, которое создает информацию топологии на основании ответа, переданного от каждого блока передачи пакетов, причем информация топологии включает в себя информацию взаимосвязи портов относительно портов, предоставленных в блоке управления, и каждого порта блоков передачи пакетов; и блок передачи пакетов включает в себя средство передачи, которое передает запрос ответа из порта, отличного от того, через который был принят запрос ответа, когда запрос ответа принимается, и средство передачи ответа, которое возвращает ответ, включающей в себя информацию относительно портов локального блока передачи пакетов, причем ответ передается через путь для блока управления, когда запрос ответа принимается.
[0009] Блок управления согласно настоящему изобретению управляет множеством блоков передачи пакетов, причем блок управления включает в себя средство передачи, которое передает запрос ответа из порта, отличного от того, через который был принят запрос ответа, когда запрос ответа от блока управления принимается, и средство передачи ответа, которое возвращает ответ, включающей в себя информацию относительно портов локального блока передачи пакетов, причем ответ передается через путь для блока управления, когда запрос ответа от блока управления принимается.
[0010] Блоком передачи пакетов согласно еще одному аспекту настоящего изобретения управляет блок управления, причем блок передачи пакетов включает в себя средство, которое после приема запроса ответа, переданного от блока управления, передает запрос ответа из порта, отличного от того, через который был принят запрос ответа; и средство, которое после приема запроса ответа, переданного от блока управления, возвращает ответ, который включает в себя информацию относительно портов локального блока передачи пакетов, причем ответ посылается через путь для блока управления.
[0011] В способе создания информации топологии согласно настоящему изобретению блок управления, который управляет множеством блоков передачи пакетов, выполняет передачу запроса ответа к каждому блоку передачи пакетов; прием, от блока передачи пакетов, ответа, который включает в себя информацию относительно портов, предоставленных в блоке передачи пакетов; и создание информации топологии на основании ответа, переданного от каждого блока передачи пакетов, причем информация топологии включает в себя информацию взаимосвязи портов относительно портов, обеспеченных в блоке управления, и каждого порта блоков передачи пакетов.
[0012] Программа, используемая блоком управления, согласно настоящему изобретению предназначена, чтобы быть установленной на компьютере, который управляет множеством блоков передачи пакетов, причем программа вынуждает компьютер выполнять передачу запроса ответа к каждому блоку передачи пакетов; прием, от блока передачи пакетов, ответа, который включает в себя информацию относительно портов, предоставленных в блоке передачи пакетов; и создание информации топологии на основании ответа, переданного от каждого блока передачи пакетов, причем информация топологии включает в себя информацию взаимосвязи портов относительно портов, обеспеченных в блоке управления, и каждого порта блоков передачи пакетов.
Выгодные эффекты изобретения
[0013] Согласно настоящему изобретению, в системе связи, включающей в себя множество блоков передачи пакетов и блок управления, который управляет каждым блоком передачи пакетов, коммуникационная сеть, используемая для каждого блока передачи пакетов, чтобы передать пакеты, и коммуникационная сеть, используемая для блока управления, чтобы управлять каждым блоком передачи пакетов, могут быть интегрированы в один вид.
Краткое описание изобретения
[0014]
[Фиг. 1] - изображает пояснительную диаграмму, которая схематично показывает этапы процесса из состояния, при котором блок управления не хранит информацию топологии, пока блок управления не начнет основанную на туннелировании связь.
[Фиг. 2] - изображает блок-схему, иллюстрирующую пример конфигурации блока управления и коммутаторов, оборудованных в системе связи согласно настоящему изобретению.
[Фиг. 3] - изображает пояснительную диаграмму, показывающую пример маршрутизации источником.
[Фиг. 4] - изображает пояснительную диаграмму, показывающую пример изменений в состоянии списка портов вывода пакета запроса.
[Фиг. 5] - изображает пояснительную диаграмму, показывающую формат специфического пакета посредством примера.
[Фиг. 6] - изображает пояснительную диаграмму, показывающую пример информации, включенной в пакет запроса.
[Фиг. 7] - изображает пояснительную диаграмму, показывающую пример информации, включенной в пакет ответа.
[Фиг. 8] - изображает пояснительную диаграмму, показывающую пример информации, включенной в пакет установки.
[Фиг. 9] - изображает пояснительную диаграмму, показывающую пример информации, включенной в туннельный пакет.
[Фиг. 10] - изображает пояснительную диаграмму, показывающую пример передачи и приема специфических пакетов.
[Фиг. 11] - изображает последовательность операций, показывающую пример потока операций процесса в блоке управления.
[Фиг. 12] - изображает последовательность операций, показывающую пример создания информации топологии.
[Фиг. 13] - изображает пояснительную диаграмму, показывающую пример путей пакетов ответа, переданных из портов каждого коммутатора.
[Фиг. 14] - изображает пояснительную диаграмму, показывающую пакеты ответа, достигающие блока управления через путь s, показанный на фиг. 13.
[Фиг. 15] - изображает последовательность операций, показывающую пример потока операций процесса в одном коммутаторе.
[Фиг. 16] - изображает другую последовательность операций, показывающую пример потока процесса в одном коммутаторе.
[Фиг. 17] - изображает блок-схему, иллюстрирующую пример минимальной конфигурации системы связи согласно настоящему изобретению.
[Фиг. 18] - изображает блок-схему, иллюстрирующую пример минимальной конфигурации блока управления в настоящем изобретении.
[Фиг. 19] - изображает блок-схему, иллюстрирующую пример минимальной конфигурации блока передачи пакетов в настоящем изобретении.
[Фиг. 20] - изображает пояснительную диаграмму, показывающую пример общей системы связи, к которой применен OpenFlow.
Описание вариантов осуществления
[0015] Ниже примерные варианты осуществления настоящего изобретения описаны со ссылками на сопровождающие чертежи. Система связи согласно настоящему изобретению включает в себя множество блоков передачи пакетов, который каждый передает пакет, и блок управления, который управляет множеством коммутаторов (блоков передачи пакетов). Блок управления передает информацию о входе потока к каждому блоку передачи пакетов, и блок передачи пакетов, после приема этого пакета, обрабатывает этот пакет в соответствии с информацией о входе потока. После завершения этой последовательности терминальный блок, связанный с одним блоком передачи пакетов, может передать пакет к любому другому терминальному блоку, связанному с другим блоком передачи пакетов, через заданный путь, или передавать пакет к другим терминальным блокам, соединенным с другими блоками передачи пакетов, через соответствующие пути.
[0016] Блок передачи пакетов в настоящем изобретении является, например, коммутатором в OpenFlow, и блок управления в изобретении является, например, контроллером в OpenFlow. Нижеследующее описывает пример, в котором блок передачи пакетов и блок управления являются коммутатором и контроллером, соответственно, в OpenFlow. Изобретение, однако, может также быть применено к протоколам, отличным от OpenFlow; изобретение может быть применено к любой системе связи, построенной так, чтобы блок управления предпринимал централизованное управление каждым блоком передачи пакетов, имеющимся в коммуникационной сети.
[0017] Система связи согласно настоящему изобретению не включает в себя выделенную для управления коммуникационную сеть между блоком управления (контроллером) и коммутатором. Блок управления только должен быть связан с, по меньшей мере, одним коммутатором. Блок управления обеспечивает каналы управления между каждым коммутатором и непосредственно блоком управления, используя коммуникационную сеть, которую коммутаторы используют, чтобы передать пакеты. Более конкретно, блок управления использует линии связи этой коммуникационной сети, чтобы сформировать каналы управления между непосредственно блоком управления и каждым коммутатором, следующим за коммутатором, соединенным с непосредственно блоком управления, при рассмотрении от блока управления. После этого блок управления обменивается с каждым коммутатором посредством туннелирования через каналы управления и управляет коммутаторами. Другими словами, в настоящем изобретении блок управления можно рассматривать как формирующий перекрывающиеся сети структуры «звезда» между каждым коммутатором и непосредственно блоком управления при использовании коммуникационной сети, которую коммутаторы используют, чтобы передавать пакеты.
[0018] В системе связи согласно настоящему изобретению блок управления также хранит информацию топологии, которая включает в себя информацию относительно взаимосвязи между портами непосредственно блока управления и каждого коммутатора. Индивидуальные коммутаторы не должны хранить информацию топологии. Блок управления, в его начальном состоянии, не хранит информацию топологии, запрашивает коммутатор о состоянии соединения его портов и создает информацию топологии. После распознавания топологии коммутаторов блок управления определяет для каждого коммутатора путь, который функционирует как канал управления между коммутатором и непосредственно блоком управления, и передает пакет, чтобы уведомить коммутатор о пути, ведущем к блоку управления. Это позволяет блоку управления распознать канал управления, ведущий к коммутатору, и коммутатор аналогично распознает канал управления, ведущий к блоку управления. После этого коммутатор и блок управления обмениваются друг с другом через канал управления посредством туннелирования.
[0019] Фиг. 1 является пояснительной диаграммой, которая схематично показывает этапы процесса из состояния, в котором блок управления не хранит информацию топологии, пока блок управления и каждый коммутатор не начнут основанную на туннелировании связь. Фиг. 1 (a) схематично показывает начальное состояние системы связи согласно настоящему изобретению. В этом состоянии блок 10 управления, хотя соединен с, по меньшей мере, одним коммутатором группы коммутаторов, не распознает, к какому порту какого коммутатора блок управления подсоединен.
[0020] Блок 10 управления передает пакет запроса, запрашивающий коммутатор о порте, который является подсоединенным, из порта непосредственно блока управления, о котором неясно, к какому коммутатору блок управления соединен. Это состояние показано на фиг. 1(b). Порт, который подсоединен, является портом, соединенным с любым другим коммутатором.
[0021] Каждый коммутатор 20, который принял пакет запроса, возвращает пакет ответа из порта коммутатора 20, который использовался, чтобы принять пакет запроса, к блоку 10 управления. Это состояние показано на фиг. 1(c). Пакет ответа включает в себя три вида информации. Один вид информации указывает порт в состоянии соединения, один вид информации указывает порт коммутатора, который использовался, чтобы принять пакет запроса, и один вид информации указывает идентификационную информацию коммутатора 20 непосредственно.
[0022] В настоящем изобретении блок 10 управления генерирует информацию топологии на основании пакета ответа и сохраняет информацию топологии. Однако даже после генерирования информации топологии блок 10 управления еще раз передает другой пакет запроса, чтобы обновить информацию топологии согласно конкретному изменению в топологии коммутаторов. Таким образом, блок 10 управления повторяет передачу пакета запроса, чтобы найти топологию коммутаторов. Кроме того, блок 10 управления включает информацию для того, чтобы идентифицировать каждый отдельный поиск в пакет запроса. В настоящем примерном варианте осуществления пример различения каждого поиска по номерам описан ниже, и эти номера в дальнейшем упоминаются как порядковые номера. Во время одного поиска, когда блок 10 управления передает пакет запроса из множества портов, этот блок устанавливает одинаковый порядковый номер в каждом пакете запроса. После этого, когда передача пакета запроса должна быть повторена для другого поиска, блок 10 управления передает пакет запроса, включающий в себя порядковый номер, отличающийся от такового из предыдущего поиска. Однако порядковые номера в пакетах запроса, переданных из каждого порта во время поиска, являются теми же самыми как таковые из предыдущего поиска.
[0023] Коммутатор 20 после приема пакета запроса передает специфический пакет запроса из порта, отличного от того, через который был принят пакет запроса. Однако передача выполняется, с учетом факта, что порядковый номер, включенный в пакет запроса, является таким, который коммутатор не принимал прежде. Другими словами, волновое распространение пакетов запроса имеет место. Если условия волнового распространения определены, трафик пакетов запроса и таковой пакетов ответа из-за пакетов запроса может быть подавлен. Выполняя волновое распространение пакетов, каждый коммутатор 20 принимает дополнительный пакет запроса через порт, отличный от того, через который коммутатор принял предыдущий пакет запроса. В этом случае коммутатор 20 также возвращает пакет ответа к блоку 10 управления из порта, который коммутатор использовал для приема пакета запроса. В соответствии с пакетами ответа, принятыми от каждого коммутатора 20, блок 10 управления генерирует информацию топологии, представляющую отношения взаимосвязи между портами непосредственно блока 10 управления и каждым коммутатором, и сохраняет информацию топологии.
[0024] Блок 10 управления определяет путь, который работает как канал управления для каждого коммутатора в соответствии с информацией топологии. Таким образом, блок 10 управления распознает каналы управления для каждого коммутатора. Блок 10 управления затем передает пакет установки, чтобы уведомить каждый коммутатор о пути или канале управления (см. Фиг. 1(d)). Каждый коммутатор 20, который принял пакет установки, сохраняет путь, или канал управления, простирающийся от непосредственно коммутатора 20 к блоку 10 управления, в соответствии с пакетом установки. Это делает коммутаторы 20 способными распознать соответствующие каналы управления, приводящие к блоку 10 управления.
[0025] Затем связь для блока 10 управления, чтобы управлять коммутаторами 20, проводится посредством туннелирования через каналы управления, предписанные для каждого коммутатора 20, как показано на фиг. 1(e). Например, если коммутатор 20 принимает пакет, не определенный в информации о входе потока, коммутатор 20 уведомляет блок 10 управления об этом. В это время коммутатор 20 выполняет уведомление посредством туннелирования через канал управления. Кроме того, блок 10 управления, который принял уведомление, генерирует новую информацию о входе потока и передает эту информацию к коммутатору, в это время блок 10 управления передает информацию о входе потока посредством туннелирования через канал управления. Пакет, обмениваемый между блоком 10 управления и коммутатором 20 посредством туннелирования через канал управления, в дальнейшем упоминается как туннельный пакет.
[0026] Пакет запроса, пакет ответа, пакет установки и туннельный пакет называются специфическими пакетами. Обработка, которую коммутатор 20 выполняет над специфическими пакетами, отличается от таковой пакетов данных, переданных между коммутаторами. После приема пакета данных, обмениваемого между терминалами (не показано), коммутатор 20 передает пакет данных в соответствии с информацией о входе потока, и если поток пакета данных не определен в информации о входе потока, уведомляет блок 10 управления об этом факте. Коммутатор 20 не выполняет такой обработки над специфическими пакетами. Вместо этого коммутатор 20 выполняет различную обработку, в зависимости от того, является ли принятый пакет пакетом запроса, пакетом ответа, пакетом установки или туннельным пакетом. Каждый коммутатор назначает приоритет специфической для пакета обработке перед обработкой пакета данных. Установление приоритета специфической для пакета обработке гарантирует QoS (Качество обслуживания) системы связи.
[0027] Специфические пакеты также включают в себя соответствующее значение отсчета согласно конкретному количеству передач (переходов) из источника передачи пакета. Это значение отсчета упоминается как отсчет порта.
[0028] Фиг. 2 является блок-схемой, показывающей пример конфигурации блока управления и коммутаторов, оборудованных в системе связи согласно настоящему изобретению. В то время как Фиг. 2 показывает пример, в котором система связи имеет четыре коммутатора, 20a-20d, этот пример не ограничивает количество коммутаторов и их топологию. Кроме того, хотя два коммутатора, 20a и 20b, соединены с блоком 10 управления в примере согласно Фиг. 2, количество коммутаторов, соединенных с блоком 10 управления, может быть один или три или более; требуется только, чтобы блок 10 управления имел, по меньшей мере, один коммутатор, соединенный с ним.
[0029] Блок 10 управления включает в себя секцию 11 передачи/приема специфического пакета стороны блока управления, секцию 12 поиска топологии, секцию 13 хранения топологии, секция 14 определения пути канала управления и секцию 15 туннелирования сообщения управления стороны блока управления.
[0030] Секция 11 передачи/приема специфического пакета стороны блока управления (в дальнейшем упомянутая просто как секция 11 передачи/приема специфического пакета) передает и принимает специфические пакеты. Более конкретно, секция 11 передачи/приема специфического пакета передает пакет запроса и пакет установки и принимает пакет ответа. Секция 11 передачи/приема специфического пакета также передает и принимает туннельный пакет.
[0031] Секция 11 передачи/приема специфического пакета после приема пакета ответа от коммутатора выводит пакет ответа к секции 12 поиска топологии. Секция 11 передачи/приема специфического пакета после приема туннельного пакета от коммутатора выводит туннельный пакет к секции 15 туннелирования сообщения управления стороны блока управления.
[0032] Пакет установки и туннельный пакет, который передает секция 11 передачи/приема специфического пакета, последовательно передаются коммутаторам по каналу управления посредством маршрутизации источником и достигают коммутатора, которому адресован пакет. Секция 14 определения пути канала управления, которая генерирует пакет установки, определяет последовательно в пакете установки порт вывода непосредственно блока 10 управления и таковые каждого коммутатора в канале управления по пути к коммутатору-адресату, и секция 11 передачи/приема специфического пакета передает пакет установки из порта непосредственно блока 10 управления, который определен первым в списке портов вывода. Аналогично, секция 15 туннелирования сообщений управления стороны блока управления, которая генерирует туннельный пакет, который должен быть послан в коммутатор, определяет последовательно в туннельном пакете порт вывода непосредственно блока 10 управления и таковые каждого коммутатора в канале управления по пути к коммутатору-адресату, и секция 11 передачи/приема специфического пакета передает туннельный пакет из порта непосредственно блока 10 управления, который определен первым в списке портов вывода. Маршрутизация источником описана ниже в настоящем описании.
[0033] Кроме того, во время генерирования пакета запроса секция 12 поиска топологии определяет порт непосредственно блока 10 управления, который должен использоваться, чтобы вывести пакет запроса. Секция 11 передачи/приема специфического пакета передает пакет запроса из порта непосредственно блока 10 управления, который определен в пакете запроса.
[0034] Ниже описано для целей удобства, что порты были только что определены в специфическом пакете. Более конкретно, однако, информация, которая идентифицирует порты блока 10 управления и каждого коммутатора, определена в специфическом пакете, и идентификационные номера портов, например, являются этой информацией. Список портов вывода является поэтому списком идентификационных номеров портов. Пример использования номеров (идентификационных номеров портов) в качестве информации идентификации порта принят в следующем описании.
[0035] Секция 12 поиска топологии периодически генерирует пакет запроса и заставляет секцию 11 передачи/приема специфического пакета передать пакет запроса. В это время секция 12 поиска топологии определяет порт непосредственно блока 10 управления, который должен использоваться, чтобы вывести пакет запроса, в пакете запроса в качестве порта вывода. Секция 12 поиска топологии также определяет длину списка портов вывода (то есть количество определенных портов вывода) и начальное значение отсчета порта. В этом случае длина списка портов вывода равна 1, так как только порт непосредственно блока 10 управления является портом вывода. Если блок 10 управления имеет множество портов, секция 12 поиска топологии генерирует пакет запроса для каждого порта. Секция 11 передачи/приема специфического пакета передает каждый пакет запроса из портов, определенных в пакете запроса.
[0036] Секция 12 поиска топологии периодически генерирует пакет запроса, как описано выше. Каждый раз, когда секция 12 поиска топологии генерирует пакет запроса в фиксированных временных интервалах, секция 12 поиска топологии изменяет порядковый номер и определяет новый порядковый номер в пакете запроса. Генерирование независимого пакета запроса для каждого порта во время одного процесса генерирования пакета запроса включает генерирование множества пакетов запроса, в этом случае один и тот же порядковый номер определен во множестве пакетов запроса. В системе связи согласно Фиг. 2, секция 12 поиска топологии определяет, например, "1" как порядковый номер в некоторое время в пакетах запроса, выведенных из каждого порта, к которым подсоединены коммутаторы 20a, 20b. Пакеты запроса, каждый включающий в себя порядковый номер "1", последовательно передаются к коммутаторам 20a, 20b. После фиксированного периода секция 12 поиска топологии определяет порядковый номер "2" в пакетах запроса, выведенных из каждого порта. Пакеты запроса, каждый включающий в себя порядковый номер "2", последовательно передаются к коммутаторам 20a, 20b.
[0037] Кроме того, секция 12 поиска топологии генерирует информацию топологии на основании пакетов ответа, полученных из каждого коммутатора в качестве ответов на пакеты запроса. Каждый коммутатор после приема пакета запроса, имеющего определенный порядковый номер, который не был принят прежде, выполняет волновое распространение пакетов с пакетом запроса. Это позволяет блоку 10 управления получить пакеты ответа из каждого коммутатора, передавая только пакет запроса к коммутатору, непосредственно соединенному с блоком управления. Секция 12 поиска топологии генерирует информацию топологии на основании каждого пакета ответа и вынуждает секцию 13 хранения топологии сохранять информацию топологии.
[0038] Секция 13 хранения топологии является устройством хранения для того, чтобы хранить информацию топологии.
[0039] Секция 14 определения пути канала управления обращается к информации топологии и устанавливает канал управления для каждого коммутатора. Этот способ установки канала управления не ограничен. Например, секция 14 определения пути канала управления может использовать алгоритм Дийкстра (Dijkstra), чтобы вычислить самый короткий путь к коммутатору и установить этот путь в качестве канала управления. Секция 14 определения пути канала управления также генерирует пакет установки для каждого коммутатора. В это время секция 14 определения пути канала управления определяет последовательно в пакете установки порт вывода непосредственно блока 10 управления и таковые каждого коммутатора, присутствующего в канале управления к коммутатору-адресату пакета установки. Секция 14 определения пути канала управления далее определяет длину списка портов вывода (то есть количество определенных портов вывода) и начальное значение отсчета порта в пакете установки. После этого секция 14 определения пути канала управления заставляет секцию 11 передачи/приема специфического пакета передать пакет установки.
[0040] Секция 15 туннелирования сообщения управления стороны блока управления (в дальнейшем упомянутая просто как секция 15 туннелирования сообщения управления) передает и принимает посредством туннелирования сообщения управления, обмениваемые между блоком 10 управления и коммутаторами. То есть секция 15 туннелирования сообщения управления кодирует сообщение управления (например, информацию о входе потока), которая должна быть передана к коммутатору, и генерирует инкапсулированный туннельный пакет. В это время секция 15 туннелирования сообщения управления определяет порт вывода непосредственно блока 10 управления и таковые каждого коммутатора в канале управления для коммутатора-адресата туннельного пакета последовательно в туннельном пакете. Секция 15 туннелирования сообщения управления далее определяет длину списка портов вывода и начальное значение отсчета порта в туннельном пакете. После этого секция 15 туннелирования сообщения управления заставляет секцию 11 передачи/приема специфического пакета передать туннельный пакет.
[0041] Кроме того, если секция 11 передачи/приема специфического пакета принимает туннельный пакет от коммутатора и затем выводит туннельный пакет к секции 15 туннелирования сообщения управления, секция 15 туннелирования сообщения управления декапсулирует сообщение управления, включенное в туннельный пакет, и далее декодирует сообщение управления.
[0042] В то время как пример, имеющий начальное значение отсчета порта, равное 0, описан ниже в настоящем примерном варианте осуществления, начальное значение отсчета порта может быть отличным от 0.
[0043] Секция 11 передачи/приема специфического пакета, секция 12 поиска топологии, секция 13 хранения топологии, секция 14 определения пути канала управления и секция 15 туннелирования сообщения управления может каждая реализовываться независимо.
[0044] Секция 11 передачи/приема специфического пакета, секция 12 поиска топологии, секция 14 определения пути канала управления и секция 15 туннелирования сообщения управления могут аналогично реализовываться центральным процессором компьютера, работающего в соответствии с программой, используемой для блока управления. В этом случае устройство хранения программ (не показано) компьютера, например, может хранить программу, используемую блоком управления, и центральный процессор может загрузить программу и работать в качестве секции 11 передачи/приема специфического пакета, секции 12 поиска топологии, секции 14 определения пути канала управления и секции 15 туннелирования сообщения управления, в соответствии с этой программой.
[0045] Ниже описаны конфигурации коммутатора. Коммутаторы 20a-20d имеют по существу одинаковую конфигурацию. Нижеследующее описывает коммутатор 20a посредством примера.
[0046] Коммутатор 20a включает в себя секцию 21 передачи/приема специфического пакета стороны коммутатора, секцию 22 управления волновым распространением пакетов, секцию 23 доставки информации, секцию 24 сохранения пути и секцию 25 туннелирования сообщения управления стороны коммутатора.
[0047] Секция 21 передачи/приема специфического пакета стороны коммутатора (в дальнейшем упоминаемая просто как секция 21 передачи/приема специфического пакета) направляет, принимает и передает специфические пакеты.
[0048] Секция 21 передачи/приема специфического пакета после приема специфического пакета, не являющегося пакетом запроса, сравнивает длину списка портов вывода, определенных в специфическом пакете, с отсчетом порта, и определяет, является непосредственно ли коммутатор 20a адресатом специфического пакета. В настоящем примерном варианте осуществления, так как начальное значение отсчета порта равно 0, если значение, полученное добавлением 1 к отсчету порта в принятом специфическом пакете, является тем же самым как длина списка портов вывода, секция 21 передачи/приема специфического пакета может определить, что непосредственно коммутатор 20a является адресатом специфического пакета. Если значение, полученное добавлением 1 к отсчету порта в принятом специфическом пакете, меньше чем длина списка портов вывода, секция 21 передачи/приема специфического пакета может определить, что непосредственно коммутатор 20a не является адресатом специфического пакета. Длина списка портов вывода является количеством портов вывода, определенных в специфическом пакете. После определения, что непосредственно коммутатор 20a не является адресатом специфического пакета, секция 21 передачи/приема специфического пакета обновляет (устанавливает) из всех портов, определенных в списке портов вывода специфического пакета, только порт, который предписан из отсчета порта, равным порту непосредственно коммутатора 20a, который использовался, чтобы принять специфический пакет. В настоящем примерном варианте осуществления, если значение отсчета порта, определенного в специфическом пакете, равно "k", (k+1)-й порт, определенный в списке портов вывода, обновляется (устанавливается) равным порту непосредственно коммутатора 20a, который использовался, чтобы принять специфический пакет. Дополнительно, секция 21 передачи/приема специфического пакета идентифицирует (k+2)-й порт, определенный в списке портов вывода, то есть порт, следующий немедленно после обновленного. Этот порт является тем, где специфический пакет должен быть передан из непосредственно коммутатора 20a. Кроме того, секция 21 передачи/приема специфического пакета добавляет 1 к значению отсчета порта, определенного в специфическом пакете. Секция 21 передачи/приема специфического пакета затем передает специфический пакет из идентифицированного порта. Специфический пакет с увеличенным отсчетом порта последовательно передается.
[0049] После определения непосредственно коммутатора 20a в качестве адресата специфического пакета, если специфический пакет является пакетом установки, секция 21 передачи/приема специфического пакета выводит пакет установки к секции 24 сохранения пути; если специфический пакет является туннельным пакетом, секция 21 передачи/приема специфического пакета выводит туннельный пакет к секции 25 туннелирования сообщения управления стороны коммутатора.
[0050] Секция 21 передачи/приема специфического пакета после приема пакета запроса выводит пакет запроса к секции 22 управления волновым распространением пакетов. Секция 22 управления волновым распространением пакетов определяет, выполнить ли волновое распространение пакетов с пакетом запроса, затем после определения, что волновое распространение пакетов должно быть выполнено, определяет порт непосредственно коммутатора 20a в конечной позиции списка портов вывода в пакете запроса и обновляет длину списка портов вывода и отсчет порта. Секция 21 передачи/приема специфического пакета передает пакет запроса, обновленный секцией 22 управления волновым распространением пакетов, из порта непосредственно коммутатора 20a, который определен в конце списка портов вывода.
[0051] Кроме того, секция 21 передачи/приема специфического пакета передает пакеты ответа. Как описано ниже в настоящем описании, секция 23 доставки информации, которая генерирует пакет ответа, определяет последовательно в пакете ответа, порты вывода каждого коммутатора, имеющегося на пути от коммутатора непосредственно к блоку 10 управления. Секция 21 передачи/приема специфического пакета передает пакет ответа из порта непосредственно коммутатора 20a, который определен первым в списке портов вывода.
[0052] Секция 22 управления волновым распространением пакетов после приема пакета запроса от секции 21 передачи/приема специфического пакета определяет, выполнить ли волновое распространение пакетов с пакетом запроса. Секция 22 управления волновым распространением пакетов сохраняет порядковый номер, включенный в пакет запроса, который был введен от секции 21 передачи/приема специфического пакета. Если порядковый номер, включенный в новый введенный пакет запроса, является таким, который не был принят прежде, секция 22 управления волновым распространением пакетов определяет, что волновое распространение пакетов должно быть выполнено, или если порядковый номер является таким, который был принят прежде, секция 22 управления волновым распространением пакетов определяет, что волновое распространение пакетов не должно быть выполнено. То есть, если порядковый номер, включенный в новый введенный пакет запроса, не согласуется ни с одним из сохраненных порядковых номеров, секция 22 управления волновым распространением пакетов определяет, что волновое распространение пакетов должно быть выполнено, или если порядковый номер согласуется с любым из сохраненных порядковых номеров, секция 22 управления волновым распространением пакетов определяет, что волновое распространение пакетов не должно быть выполнено. После этого определения секция 22 управления волновым распространением пакетов также сохраняет порядковый номер, включенный в пакет запроса.
[0053] После определения, что волновое распространение пакетов с пакетом запроса должно быть выполнено для того, чтобы пакет запроса был передан из каждого порта, отличного от порта, через который был принят пакет запроса, секция 22 управления волновым распространением пакетов дополнительно создает копию пакета запроса для каждого порта, отличного от порта приема. Секция 22 управления волновым распространением пакетов затем определяет порты вывода, из которых нужно передать скопированный пакет запроса, в конце списка портов вывода в пакете запроса. Секция 22 управления волновым распространением пакетов также обновляет из всех портов, определенных в списке портов вывода, только порт, предписанный исходя из отсчета порта, равного порту непосредственно коммутатора 20a, который использовался, чтобы принять пакет запроса. В настоящем примерном варианте осуществления, если значение отсчета порта, определенного в пакете запроса, равно «k», (k+1)-й порт, определенный в списке портов вывода, обновляется в порт непосредственно коммутатора 20a, который использовался, чтобы принять пакет запроса. После завершения операции обновления другие коммутаторы, которые приняли пакет запроса в результате волнового распространения пакетов, становятся способными передать пакет ответа к блоку 10 управления посредством маршрутизации источником. Кроме того, секция 22 управления волновым распространением пакетов добавляет 1 к значениям длины списка портов вывода и отсчета порта, определенным в пакете запроса. Секция 22 управления волновым распространением пакетов выполняет этот процесс над каждым пакетом запроса, скопированным для каждого порта. Секция 22 управления волновым распространением пакетов заставляет секцию 21 передачи/приема специфического пакета передать пакет запроса, чей список портов вывода, длина списка портов вывода и отсчет порта были таким образом обновлены, из портов, соответствующих пакету запроса.
[0054] Независимо от того, должно ли волновое распространение пакетов быть выполнено, секция 22 управления волновым распространением пакетов выводит непосредственно к секции 23 доставки информации пакет запроса, который был введен от секции 21 передачи/приема специфического пакета. Таким образом, секция 22 управления волновым распространением пакетов выводит пакет запроса, который коммутатор принял, к секции 23 доставки информации неповрежденным.
[0055] После приема пакета запроса от секции 22 управления волновым распространением пакетов секция 23 доставки информации создает пакет ответа, который включает в себя информацию, касающуюся подсоединенного порта непосредственно коммутатора 20a, информацию, указывающую порт коммутатора 20a, который использовался, чтобы принять пакет запроса, и информацию идентификации относительно коммутатора 20a. Секция 23 доставки информации дополнительно определяет последовательно в пакете ответа порты вывода каждого коммутатора, имеющегося на пути от коммутатора непосредственно к блоку 10 управления. Нижеследующее описывает, как определяют список портов вывода. То есть секция 23 доставки информации обновляет последний порт в списке портов вывода, определенном в пакете запроса, который был введен, равным порту коммутатора, который использовался, чтобы принять пакет запроса. Кроме того, секция 23 доставки информации инвертирует порядок, в котором порты были перекомпонованы в обновленном списке портов вывода, и определяет перекомпонованный список портов вывода в пакете ответа. Секция 23 доставки информации далее определяет длину списка портов вывода и начальное значение отсчета порта в пакете ответа и затем заставляет секцию 21 передачи/приема специфического пакета передать пакет ответа. В результате коммутатор передает из порта, в котором пакет запроса был принят, пакет ответа в качестве ответа на пакет запроса.
[0056] Однако секция 23 доставки информации не генерирует пакет ответа в некотором случае, который описан ниже. Блок 10 управления периодически передает сообщение запроса. В прошлом после приема пакета запроса от блока 10 управления секция 23 доставки информации передавала пакет ответа, соответствующий этому кадру запроса. Пакет ответа, который секция 23 доставки информации должна передать на сей раз, может быть тем же самым, как тот, что передан после приема предыдущего пакета запроса во время прошлой периодической передачи пакетов запроса от блока 10 управления. Если это имеет место, секция 23 доставки информации не передает текущий пакет ответа. Более конкретно, после передачи пакета ответа в ответ на прошлый пакет запроса, только если коммутатор, в настоящее время связываемый с интересующим коммутатором, заменен любым другим коммутатором или разъединен, секция 23 доставки информации будет передавать пакет ответа, соответствующий пакету запроса, принятому недавно.
[0057] Секция 24 сохранения пути, после ввода пакета установки в него от секции 21 передачи/приема специфического пакета, сохраняет путь, который функционирует в качестве канала управления, простирающийся от пакета установки к блоку 10 управления. Более конкретно, секция 24 сохранения пути обновляет последний порт в списке портов вывода, определенном в пакете установки, который был введен, равным порту коммутатора, который использовался, чтобы принять пакет установки. Дополнительно, секция 24 сохранения пути инвертирует порядок, в котором порты были перекомпонованы в обновленном списке портов вывода, и сохраняет перекомпонованный список портов вывода как информацию, которая указывает информацию пути в качестве канала управления.
[0058] Секция 25 туннелирования сообщения управления стороны коммутатора (в дальнейшем упомянутая просто как секция 25 туннелирования сообщения управления) передает и принимает посредством туннелирования сообщения управления, обмениваемые между блоком 10 управления и коммутаторами. Другими словами, секция 25 туннелирования сообщения управления кодирует сообщение управления, которое должно быть передано к блоку 10 управления (например, сообщение, указывающее, что пакет, не определенный в информации о входе потока, был принят), и генерирует инкапсулированный туннельный пакет. В это время секция 25 туннелирования сообщения управления считывает из секции 24 сохранения пути список портов вывода, представляющий канал управления, в блок 10 управления, и определяет этот список портов вывода в туннельном пакете. Секция 25 туннелирования сообщения управления далее определяет длину списка портов вывода и начальное значение отсчета порта в туннельном пакете. После этого секция 25 туннелирования сообщения управления заставляет секцию 21 передачи/приема специфического пакета передать туннельный пакет.
[0059] Кроме того, после того как туннельный пакет введен в секцию 25 туннелирования сообщения управления от секции 21 передачи/приема специфического пакета, секция 25 туннелирования сообщения управления декапсулирует сообщение управления (например, информацию о входе потока), включенное в туннельный пакет, и декодирует сообщение управления.
[0060] Секция 21 передачи/приема специфического пакета, секция 22 управления волновым распространением пакетов, секция 23 доставки информации, секция 24 сохранения пути и секция 25 туннелирования сообщения управления могут каждая реализовываться независимо.
[0061] Секция 21 передачи/приема специфического пакета, секция 22 управления волновым распространением пакетов, секция 23 доставки информации, секция 24 сохранения пути и секция 25 туннелирования сообщения управления могут аналогично реализовываться центральным процессором компьютера, работающего в соответствии с программой, используемой для блоков передачи пакетов. В этом случае устройство хранения программ (не показано) компьютера, например, может хранить программу для блоков передачи пакетов, и центральный процессор может загрузить эту программу и работать как секция 21 передачи/приема специфического пакета, секция 22 управления волновым распространением пакетов, секция 23 доставки информации, секция 24 сохранения пути и секция 25 туннелирования сообщения управления, в соответствии с этой программой.
[0062] Ниже маршрутизация источником согласно настоящему изобретению описана ниже. Маршрутизация источником является способом передачи пакета, в котором узел для работы в качестве источника передачи определяет коммуникационный путь в пакете, и узел ретрансляции передает пакет в соответствии с коммуникационным путем, определенным в нем. При маршрутизации источником нет необходимости, чтобы узел ретрансляции сохранял ранее предоставленную информацию пути. Система связи согласно настоящему изобретению определяет в специфическом пакете список портов вывода, представляющий последовательное множество портов вывода, из которых индивидуальные узлы должны передать специфический пакет. Блок 10 управления и каждый коммутатор реализуют маршрутизацию источником, передавая специфические пакеты из портов, определенных в списке портов вывода. Блок 10 управления и каждый коммутатор определяют, в какой позиции в списке портов вывода порт вывода, касающийся локального узла, определен, с помощью отсчета порта. Нижеследующее описывает более конкретный пример маршрутизации источником.
[0063] Фиг. 3 является пояснительной диаграммой, показывающей пример маршрутизации источником, примененной, когда блок управления передает пакет установки к коммутаторам. Для простоты описания, однако, топология коммутаторов, показанных на фиг. 3, сделана отличающейся от топологии, показанной на фиг. 2. Коммутаторы 20A-20D на фиг. 3 имеют по существу ту же конфигурацию, как таковая коммутаторов 20a-20d на фиг. 2. Кроме того, ссылочные позиции, показанные около блока 10 управления и коммутаторов 20A-20D на фиг. 3, обозначают идентификационные номера портов, назначенные каждому блоку. Порт, идентификационный номер порта которого равен "n", выражен как "#n" в последующем описании.
[0064] В этом примере блок 10 управления передает пакет установки к коммутатору 20D, адресату. В этом примере блок 10 управления сначала устанавливает отсчет порта, чтобы он имел начальное значение 0, и передает пакет установки со списком портов вывода {2, 3, 2, 1}, определенных в нем. Так как первый номер порта в этом списке портов вывода равен "2", блок 10 управления передает пакет установки из порта #2 блока 10 управления. Это состояние показано на фиг. 3(a).
[0065] Коммутатор 20A использует порт #1, чтобы принять пакет установки. Так как значение отсчета порта равно 0, коммутатор 20A затем обновляет первый идентификационный номер порта в списке портов вывода равным идентификационному номеру порта порта #1, в котором пакет установки был принят. Кроме того, так как значение отсчета порта равно 0, коммутатор 20A также определяет, что порт, из которого нужно передать пакет установки, определен во второй позиции в списке портов вывода, и идентифицирует идентификационный номер "3" порта, определенный во второй позиции. После этого коммутатор 20A обновляет значение отсчета порта из 0 в 1 и передает пакет установки из порта #3 коммутатора 20A. Список портов вывода, который был, таким образом, определен в пакете установки, является {1, 3, 2, 1}. Это состояние показано на фиг. 3(b).
[0066] Коммутатор 20B использует порт #1, чтобы принять этот пакет установки. Так как значение отсчета порта равно 1, коммутатор 20B затем обновляет второй идентификационный номер порта в списке портов вывода равным идентификационному номеру порта порта #1, в котором пакет установки был принят. Кроме того, так как значение отсчета порта равно 1, коммутатор 20B также определяет, что порт, из которого нужно передать пакет установки, определен в третьей позиции в списке портов вывода, и идентифицирует идентификационный номер порта "2", определенный в третьей позиции. После этого коммутатор 20B обновляет значение отсчета порта из 1 в 2 и передает пакет установки из порта #2 коммутатора 20B. Списком портов вывода, который был таким образом определен в пакете установки, является {1, 1, 2, 1}. Это состояние показано на фиг. 3(c).
[0067] Коммутатор 20C использует порт #3, чтобы принять этот пакет установки. Так как значение отсчета порта равно 2, коммутатор 20C затем обновляет третий идентификационный номер порта в списке портов вывода равным идентификационному номеру порта порта #3, в котором пакет установки был принят. Кроме того, так как значение отсчета порта равно, коммутатор 20C также определяет, что порт, из которого нужно передать пакет установки, определен в четвертой позиции в списке портов вывода, и идентифицирует идентификационный номер порта "1", определенный в четвертой позиции. После этого коммутатор 20C обновляет значение отсчета порта из 2 в 3 и передает пакет установки из порта #1 коммутатора 20C. Список портов вывода, который был таким образом определен в пакете установки, является {1, 1, 3, 1}. Это состояние показано на фиг. 3(d).
[0068] Коммутатор 20D использует порт #2, чтобы принять этот пакет установки. Так как значение отсчета порта равно 3, и количество идентификационных номеров портов в списке портов вывода равно четырем, коммутатор 20D затем определяет, что непосредственно коммутатор 20D является адресатом. Коммутатор 20D также обновляет последний идентификационный номер порта "1" в списке {1, 1, 3, 1} портов вывода пакета установки, равным идентификационному номеру порта порта #2, в котором пакет установки был принят. Список портов вывода становится {1, 1, 3, 2} в результате. Коммутатор 20D перекомпоновывает список портов вывода в обратном порядке и сохраняет перекомпонованный список портов вывода {2, 3, 1, 1} в качестве списка портов вывода, который представляет канал управления, ведущий к блоку 10 управления.
[0069] Когда блок 10 управления передает туннельный пакет, адресованный коммутатору 20D и включающей в себя список портов вывода {2, 3, 2, 1}, коммутаторы 20A - 20C также работают аналогично коммутатору 20D, описанному выше. Коммутатор 20D принимает туннельный пакет в результате. Однако коммутатор 20D не должен проводить обработку списка портов вывода в туннельном пакете.
[0070] Примеры, в которых блок 10 управления передает пакет установки или туннельный пакет, адресованный коммутатору 20D, были описаны и показаны. Для передачи пакетов, адресованных другим коммутаторам, каждый коммутатор также работает в по существу таким же образом, как описало выше.
[0071] Кроме того, когда каждый коммутатор определяет в туннельном пакете список портов вывода, предварительно сохраненный в качестве канала управления, ведущий к блоку 10 управления, и передает этот туннельный пакет, другие коммутаторы работают аналогично вышеупомянутому и последовательно передают туннельный пакет блоку 10 управления.
[0072] Пример, в котором обновляется список портов вывода в пакете запроса, переданном от блока 10 управления, описан ниже. Фиг. 4 является пояснительной диаграммой, которая показывает изменения в состоянии списка портов вывода в пакете запроса. Нижеследующее описание относится, к примеру, в котором пакет запроса, который блок 10 управления передал из порта #2, проходит через коммутаторы 20A, 20B, 20C и достигает коммутатора 20D.
[0073] Блок 10 управления назначает начальное значение 0 отсчету порта и передает из порта #2 пакет запроса, имеющий список портов вывода {2}, определенных в нем, как показано на фиг. 4 (a). Блок 10 управления также выводит из порта #1 пакет запроса, имеющий список портов вывода {1}, определенных в нем, но описание этого пакета запроса опущено.
[0074] Коммутатор 20A принимает через порт #1 пакет запроса, переданный из порта #2 блока 10 управления. В коммутаторе 20A существуют два порта в дополнение к порту #1, таким образом коммутатор 20A создает две копии пакета запроса. Из двух копий только пакет запроса, который будет передан из порта #3, описан ниже. Коммутатор 20A добавляет идентификационный номер порта порта #3 к концу списка портов вывода в пакете запроса, который будет передан из порта #3. Кроме того, так как отсчет порта в пакете запроса равен 0, коммутатор 20A обновляет первый идентификационный номер порта в списке портов вывода равным идентификационному номеру порта #1, через который был принят пакет запроса. В результате список портов вывода изменяется на {1, 3}. Коммутатор 20A обновляет значение отсчета порта от 0 до 1 и передает из порта #3 пакет запроса, который включает в себя список портов вывода {1, 3}. Это состояние показано на фиг. 4 (b).
[0075] Коммутатор 20B принимает этот пакет запроса через порт #1. В коммутаторе 20B существуют два порта в дополнение к порту #1, таким образом коммутатор 20B создает две копии пакета запроса. Из двух копий только пакет запроса, который будет передан из порта #2, описан ниже. Коммутатор 20B добавляет идентификационный номер порта порта #2 к концу списка портов вывода в пакете запроса, который будет передан из порта #2. Кроме того, так как отсчет порта в пакете запроса равен 1, коммутатор 20B обновляет второй идентификационный номер порта в списке портов вывода равным идентификационному номеру порта порта #1, через который был принят пакет запроса. В результате список портов вывода изменяется на {1, 1, 2}. Коммутатор 20B обновляет значение отсчета порта от 1 до 2 и передает из порта #2 пакет запроса, который включает в себя список портов вывода {1, 1, 2}.
[0076] Коммутатор 20C принимает этот пакет запроса через порт #3. В коммутаторе 20C существуют два порта в дополнение к порту #3, таким образом коммутатор 20C создает две копии пакета запроса. Из двух копий только пакет запроса, который будет передан из порта #1, описан ниже. Коммутатор 20C добавляет идентификационный номер порта порта #1 к концу списка портов вывода в пакете запроса, который будет передан из порта #1. Кроме того, так как отсчет порта в пакете запроса равен 2, коммутатор 20C обновляет третий идентификационный номер порта в списке портов вывода равным идентификационному номеру порта порта #3, через который был принят пакет запроса. В результате список портов вывода изменяется на {1, 1, 3, 1}. Коммутатор 20C обновляет значение отсчета порта от 2 до 3 и передает из порта #1 пакет запроса, который включает в себя список портов вывода {1, 1, 3, 1}.
[0077] Коммутатор 20D принимает этот пакет запроса через порт #2. Коммутатор 20D обновляет последний идентификационный номер порта в списке портов вывода {1, 1, 3, 1}, определенный в пакете запроса, равным идентификационному номеру порта порта #2, через который был принят пакет запроса. В результате список портов вывода изменяется на {1, 1, 3, 2}. Коммутатор 20D перекомпоновывает порты вывода в списке портов вывода в обратном порядке, и после определения этого списка портов вывода {2, 3, 1, 1} в пакете ответа передает этот пакет ответа из порта #2, соответствующего первой позиции в {2, 3, 1, 1}. Работа других коммутаторов после приема пакета ответа является по существу такой, как после приема пакета установки или туннельного пакета. Пакет ответа в этом случае, наконец, достигает блока 10 управления.
[0078] Кроме того, блок 10 управления после приема пакета ответа обновляет последний идентификационный номер порта в списке портов вывода, определенном в пакете ответа, равным идентификационному номеру порта, через который был принят пакет ответа. После операции обновления блок 10 управления перекомпоновывает порты вывода в списке портов вывода в обратном порядке. Блок 10 управления затем обращается к этому списку порта вывода и генерирует информацию топологии.
[0079] В то время как была описана ситуация, в которой коммутаторы 20A-20C передают пакеты запроса, и коммутатор 20D передают пакет ответа, коммутатор 20D также передает пакет запроса аналогично другим коммутаторам. Наоборот, коммутаторы 20A-20C также передают пакеты ответа аналогично коммутатору 20D.
[0080] Описание было дано на фиг. 3 и 4, принимая начальное значение отсчета порта равным 0 посредством примера. Способ для каждого коммутатора, чтобы определить, что идентификационный номер порта номера в списке портов вывода должен быть обновлен, или способ для каждого коммутатора, чтобы определить, из какого порта специфический пакет должен быть передан, может быть заранее задан согласно специфическому начальному значению отсчета порта. Способ, в котором коммутатор, который принял специфический пакет, определяет, является ли сам коммутатор адресатом, может также быть задан согласно специфическому начальному значению отсчета порта.
[0081] Примеры формата специфических пакетов описаны ниже. Фиг. 5 показывает пример формата специфического пакета. Пример, показанный на фиг. 5, относится к реализации специфического пакета в формате кадра Ethernet (Ethernet: зарегистрированный товарный знак). Значения, показанные в скобках на фиг. 5, обозначают количество байтов. MAC адрес 51 адресата и MAC адрес 52 источника предоставлены в формате кадра Ethernet. Система связи согласно настоящему изобретению, однако, не использует эти адреса, чтобы послать/принять специфические пакеты. Вместо этого система связи изобретения передает специфические пакеты посредством маршрутизации источником, как описано в настоящем примерном варианте осуществления. В специфических пакетах формата кадра Ethernet значение, указывающее, что пакет является специфическим пакетом, сохранено в информации 53 идентификационной информации типа. Когда блок 10 управления или каждый коммутатор генерирует специфический пакет, значение, указывающее, что пакет является специфическим пакетом, сохраняется в информации 53 идентификационной информации типа. Кроме того, когда блок 10 управления или каждый коммутатор принимает пакет, каждый определяет принятый пакет как специфический пакет, с учетом того факта, что значение, указывающее, что пакет является специфическим пакетом, сохранено в информации 53 идентификационной информации типа.
[0082] Данные 54 из формата кадра Ethernet включают в себя код 61 типа, который идентифицирует вид специфического пакета. Данные 54 также включают в себя первую длину 62 данных, длину 63 списка портов вывода, отсчет 64 порта, список 65 портов вывода, вторую 66 длину данных и данные 67 специфического пакета. Чтобы отличить от информации 53 идентификационной информации типа в формате кадра Ethernet, код 61 типа, идентифицирующий вид специфического пакета, будет в дальнейшем упомянут просто как тип 61. Кроме того, чтобы отличить от данных 54 в формате кадра Ethernet, данные 67 специфического пакета будут упоминаться как данные 67 специфического пакета. Длина данных всей информации, следующей за первой длиной 62 данных (показана как "Длина" на фиг. 5), сохранена в первую длину данных 62. Длина данных всей информации, следующей за второй длиной данных 66 (показана как "Длина данных" на фиг. 5), сохранена во вторую длину данных 66.
[0083] Длина 63 (показанная как "PortsLength" на фиг. 5) списка портов вывода является количеством портов, включенных в список портов вывода. Более конкретно, длина 63 является количеством идентификационных номеров портов, включенных в список портов вывода.
[0084] Отсчет 64 порта (показанный как "PortsCount" на фиг. 5) является значением отсчета, определенным количеством переходов от источника передачи специфического пакета.
[0085] Идентификационные номера портов сохранены в скомпонованной форме в списке 65 портов вывода.
[0086] Данные 54 в формате кадра Ethernet могут включать в себя элементы, отличные от тех, что показаны на фиг. 5. Пакет запроса, например, включает в себя порядковый номер(а). Примеры информации, включенной в данные 54 формата кадра Ethernet, описаны ниже для каждого вида специфического пакета. Однако в описании опущены первая длина данных 62, длина 63 списка портов вывода, отсчет 64 порта, список 65 портов вывода и вторая длина данных 66.
[0087] Фиг. 6 является пояснительной диаграммой, показывающей пример информации, включенной в пакет запроса. Значение, указывающее, что пакет является пакетом запроса, сохранено в коде 61 типа. Блок 10 управления после генерирования пакета запроса сохраняет значение, указывающее, что пакет является пакетом запроса, в коде 61 типа. Кроме того, каждый коммутатор после приема пакета определяет, что принятый пакет является пакетом запроса, с учетом того факта, что значение, указывающее, что пакет является пакетом запроса, сохраняется в коде 61 типа.
[0088] Порядковый номер сохраняется в "SequenceNum" («порядковый номер») 68, показанном на фиг. 6. Блок 10 управления сохраняет значение порядкового номера в "SequenceNum" 68 во время генерирования пакета запроса.
[0089] Данные 67 специфического пакета являются пустыми (NULL) для пакетов запроса.
[0090] Фиг. 7 является пояснительной диаграммой, показывающей пример информации, включенной в пакет ответа. Значение, указывающее, что этот пакет является пакетом ответа, сохраняется в коде 61 типа. Каждый коммутатор после генерирования пакета ответа сохраняет значение, указывающее, что пакет является пакетом ответа, в коде 61 типа. Кроме того, блок 10 управления и каждый коммутатор после приема пакета определяет, что принятый пакет является пакетом ответа, с учетом того факта, что значение, указывающее, что этот пакет является пакетом ответа, сохранено в коде 61 типа.
[0091] Для пакета ответа информация, обозначающая порт, который подсоединен, информация, обозначающая порт коммутатора, который использовался, чтобы принять пакет запроса, и информация, идентифицирующая коммутатор, который должен передать пакет ответа, хранятся в данных 67 специфического пакета. Во время создания пакета ответа коммутатор, чтобы передать пакет ответа, сохраняет эти три вида информации в данных 67 специфического пакета. В примере согласно Фиг. 7, "DataPathID" соответствует информации идентификации коммутатора. Кроме того, "Requested_Port" соответствует порту приема пакета запроса. Кроме того, "Port#n_Status" представляет, соединен ли данный порт с идентификационным номером порта равным "n". Например, коммутатор может определить значение "Port#n_Status" для каждого порта так, чтобы "Port#n_Status" равнялся 1 для порта, который подсоединен, и так, чтобы "Port#n_Status" равнялся 0 для других портов, которые не подсоединены. Порт, который подсоединен, может затем быть определен из набора значений "Port#n_Status", определенных на основе порт-за-портом. Однако другие способы представления могут использоваться, чтобы определить порт, который подсоединен.
[0092] Фиг. 8 является пояснительной диаграммой, показывающей пример информации, включенной в пакет установки. Значение, указывающее, что пакет является пакетом установки, сохранено в коде 61 типа. Блок 10 управления после генерирования пакета установки сохраняет значение, указывающее, что пакет является пакетом установки, в код 61 типа. Кроме того, каждый коммутатор после приема пакета определяет, что принятый пакет является пакетом установки, с учетом того факта, что значение, указывающее, что пакет является пакетом установки, сохранено в коде 61 типа.
[0093] Данные 67 специфического пакета являются пустыми (NULL) для пакетов установки.
[0094] Фиг. 9 является пояснительной диаграммой, показывающей пример информации, включенной в туннельный пакет. Значение, указывающее, что пакет является туннельным пакетом, сохранено в коде 61 типа. Блок 10 управления и каждый коммутатор после генерирования туннельного пакета сохраняет значение, указывающее, что пакет является туннельным пакетом, в коде 61 типа. Кроме того, блок 10 управления и каждый коммутатор после приема пакета определяет принятый пакет как туннельный пакет, с учетом того факта, что значение, указывающее, что пакет является туннельным пакетом, сохранено в коде 61 типа.
[0095] Туннельный пакет имеет сообщение управления, сохраненное в данных 67 специфического пакета. Более конкретно, пакет управления, обмениваемый как сообщение управления в обычной системе связи схемы OpenFlow, сохраняется в пакетных данных 67. В системе связи согласно настоящему изобретению сообщение управления также обменивается между блоком управления и каждым коммутатором, как это сделано в обычной системе связи.
[0096] Нижеследующее описывает работу. Фиг. 10 является пояснительной диаграммой, показывающей пример передачи и приема специфических пакетов. В примере на Фиг. 10 система связи включает в себя блок 10 управления и коммутаторы B - E. Кроме того, цифры, показанные около блока 10 управления и коммутаторов B-E, показывают идентификационные номера портов.
[0097] Блок 10 управления передает пакет запроса из порта #1 и порта #2, как показано на фиг. 10(a). Порядковые номера, включенные в этот пакет запроса, являются теми же самыми, каким является "P" в примере здесь. Коммутаторы B, D оба принимают пакет запроса и затем передают пакет ответа к блоку 10 управления, как показано на фиг. 10(b). В это время коммутаторы B, D передают пакет ответа из портов, через которые эти коммутаторы приняли этот пакет запроса. Кроме того, после приема впервые пакета запроса, имеющего порядковый номер "P", определенный в нем, коммутаторы B, D каждый передает пакет запроса из порта, отличного от того, через который был принят этот пакет запроса. Это состояние передачи показано на фиг. 10(c).
[0098] Коммутатор C принимает пакет запроса от коммутаторов B, D. В ответ на пакет запроса, коммутатор C затем передает пакет ответа к блоку 10 управления из порта, через который был принят этот пакет запроса. Это состояние передачи показано на фиг. 10(d). После приема впервые пакета запроса, имеющего порядковый номер "P", определенный в нем, коммутатор C передает этот специфический пакет запроса из порта, отличного от того, через который был принят пакет запроса. То же самое также применяется к коммутатору E.
[0099] В этом способе каждый коммутатор после приема пакета запроса передает пакет ответа из порта приема пакета запроса к блоку 10 управления. Кроме того, каждый коммутатор после приема впервые пакета запроса, имеющего порядковый номер "P", определенный в нем, выполняет волновое распространение пакетов с этим специфическим пакетом запроса. Это вынуждает блок 10 управления принимать пакет ответа, переданный из каждого порта каждого коммутатора, и генерировать информацию топологии на основании пакета ответа. Блок 10 управления далее устанавливает каналы управления, ведущие к каждому коммутатору, в соответствии с информацией топологии. Это состояние передачи показано на фиг. 10(e). Хотя каналы управления, которые блок 10 управления установил для коммутаторов C, E, показаны посредством примера на фиг. 10(e), эти каналы управления для коммутаторов C, E не ограничены каналами управления, показанными на фиг. 10(e).
[0100] Работа блока управления и коммутаторов детализирована ниже. Фиг. 11 является последовательностью операций, показывающей пример потока процесса в блоке 10 управления. Сначала секция 12 поиска топологии блока 10 управления генерирует пакет запроса и заставляет секцию 11 передачи/приема специфического пакета передать пакет запроса (этап S1). На этапе S1 секция 12 поиска топологии генерирует пакет запроса для каждого порта блока 10 управления. Секция 12 поиска топологии затем определяет, в качестве списка портов вывода, в каждом генерируемом пакете запроса только идентификационные номера портов для портов, из которых должен быть передан специфический пакет запроса. Секция 12 поиска топологии также определяет 1 как длину списка портов вывода и 0 как начальное значение отсчета порта. Секция 12 поиска топологии далее определяет порядковый номер, общий для каждого пакета запроса, который должен быть передан из каждого порта. Секция 11 передачи/приема специфического пакета передает пакет запроса из портов, соответствующих идентификационным номерам порта, определенным в списке портов вывода.
[0101] Каждый коммутатор выполняет волновое распространение пакетов пакета запроса, с учетом того факта, что порядковый номер, включенный в принятый пакет запроса, является порядковым номером, который коммутатор не принимал прежде. Выполняя процесс волнового распространения пакетов, каждый коммутатор также принимает пакет запроса через не только один порт, но также и каждый порт, который подсоединен, и затем передает пакет ответа от каждого подсоединенного порта к блоку 10 управления.
[0102] После этого блок 10 управления принимает пакет ответа, переданный от подсоединенного порта каждого коммутатора (этап S2). На этапе S2 секция 11 передачи/приема специфического пакета обновляет последний идентификационный номер порта в списке портов вывода, определенном в принятом пакете, равным идентификационному номеру порта, через который был принят пакет ответа. После операции обновления секция 11 передачи/приема специфического пакета перекомпоновывает идентификационные номера портов в списке портов вывода в обратном порядке. Секция 11 передачи/приема специфического пакета затем выводит отредактированный пакет ответа к секции 12 поиска топологии.
[0103] Секция 12 поиска топологии обращается к пакетам ответа, таким образом переданным от соответствующих портов коммутаторов, и создает информацию топологии (этап S3). Так как списки порта вывода в каждом пакете ответа были обновлены или перекомпонованы на этапе S2, списки порта вывода представляют пути от блока 10 управления к исходным коммутаторам передачи пакета ответа. Секция 12 поиска топологии просматривает списки порта вывода и информацию, определенную в пакетах ответа коммутаторами, создает информацию топологии и вынуждает секцию 13 хранения топологии сохранить информацию топологии. Создание информации топологии описано в дальнейших деталях на следующих страницах данного описания.
[0104] После этапа S3 секция 14 определения пути канала управления обращается к информации топологии, хранящейся в секции 13 хранения топологии, и устанавливает каналы управления, приводящие к каждому коммутатору. Этот способ установки не ограничен. Например, секция 14 определения пути канала управления может вычислить самый короткий путь к каждому коммутатору и установить этот путь в качестве канала управления. Секция 14 определения пути канала управления генерирует для каждого коммутатора пакет установки, имеющий список портов вывода, определенных в нем, чтобы представить канал управления к коммутатору. Секция 14 определения пути канала управления также определяет в пакете установки начальное значение отсчета порта равным 0 и длину списка портов вывода. Секция 14 определения пути канала управления заставляет секцию 11 передачи/приема специфического пакета передать пакет установки, который сгенерирован для каждого коммутатора (этап S4). В это время секция 11 передачи/приема специфического пакета передает пакет установки из первого порта, определенного в списке портов вывода пакета установки.
[0105] Коммутатор после приема пакета установки использует пакет установки, чтобы идентифицировать канал управления к блоку 10 управления, и сохраняет этот канал. Это позволяет блоку 10 управления и каждому коммутатору распознать канал управления. Когда блок 10 управления передает сообщение управления, секция 15 туннелирования сообщения управления генерирует туннельный пакет, кодируя и инкапсулируя сообщение управления. В это время секция 15 туннелирования сообщения управления определяет список портов вывода, представляющий канал управления, длину списка портов вывода и начальное значение отсчета порта, равное 0, в туннельном пакете. После этого секция 15 туннелирования сообщения управления заставляет секцию 11 передачи/приема специфического пакета передать туннельный пакет. Секция 11 передачи/приема специфического пакета передает туннельный пакет из первого порта, определенного в списке портов вывода туннельного пакета. В случае, когда коммутатор передает сообщение управления, секция 25 туннелирования сообщения управления и секция 21 передачи/приема специфического пакета работают аналогично вышеупомянутому.
[0106] Кроме того, после того, как блок 10 управления принимает туннельный пакет от коммутатора, секция 15 туннелирования сообщения управления декапсулирует сообщение управления и декодирует декапсулированное сообщение управления. Блок 10 управления затем выполняет процесс, подходящий для декодированного сообщения управления.
[0107] Кроме того, блок 10 управления периодически выполняет этап процесса S1 последовательно. В это время секция 12 поиска топологии изменяет порядковый номер каждый раз, когда этап S1 выполняется, в фиксированных периодах. После этапа S1 второго и последующих циклов процесса только коммутаторы, которые имеют изменения в состоянии соединения, передают пакет ответа. Секция 12 поиска топологии создает информацию топологии на этапе S3 первого цикла. На этапе S3 второго и последующих циклов процесса секция 12 поиска топологии использует принятый пакет ответа, чтобы обновить информацию топологии, хранящуюся в секции 13 хранения топологии.
[0108] Затем, создание информации топологии (этап S3) описано ниже. Фиг. 12 является последовательностью операций, показывающей пример создания информации топологии. Этот пример предполагает, что блок 10 управления уже принял пакеты ответа, переданные от каждого подсоединенного порта каждого коммутатора, и что секция 11 передачи/приема специфического пакета уже выполнила операции обновления и перекомпоновки списка портов вывода для каждого пакета ответа.
[0109] Секция 12 поиска топологии присваивает 1 переменной "i" (этап S11). Переменная "i" используется, чтобы определить длину списка портов вывода.
[0110] Секция 12 поиска топологии извлекает один пакет ответа, равный "i" в длине списка портов вывода. Затем секция 12 поиска топологии идентифицирует, какой порт, какого узла последний идентификационный номер порта в списке портов вывода этого пакета ответа представляет (этап S12). Если i=1, секция 12 поиска топологии идентифицирует порт, соответствующий этому конкретному идентификационному номеру порта в блоке 10 управления. Если i>2, секция 12 поиска топологии отслеживает каждый коммутатор в порядке от первого идентификационного номера порта в списке портов вывода и идентифицирует коммутатор, которому принадлежит последний идентификационный номер порта в списке портов вывода. Секция 12 поиска топологии затем идентифицирует порт, соответствующий этому конкретному идентификационному номеру порта этого коммутатора. Секция 12 поиска топологии обращается к пакетам ответа в порядке убывания длины списка портов вывода и создает информацию топологии. Это позволяет секции 12 поиска топологии отследить каждый коммутатор в порядке от первого идентификационного номера портов в списке портов вывода.
[0111] Затем секция 12 поиска топологии идентифицирует коммутатор, который передал пакет ответа, извлеченный на этапе S12, и порт, который коммутатор использовал для передачи пакета ответа (этап S13). Порт, который коммутатор использовал для передачи пакета ответа, является тем же самым как порт, который коммутатор использовал, чтобы принимать пакет запроса, и идентификационный номер этого порта определен в пакете ответа. Информация, идентифицирующая коммутатор, который передал пакет ответа, также определена там. Считывая эти определения в пакете ответа, секция 12 поиска топологии может идентифицировать исходный коммутатор передачи пакета ответа и порт, который коммутатор использовал для передачи пакета ответа.
[0112] Затем секция 12 поиска топологии определяет, что порт, который был идентифицирован на этапе S12, и порт коммутатора, который был идентифицирован на этапе S13, соединены, и вынуждает секцию 13 хранения топологии сохранять отношение взаимосвязи (этап S14).
[0113] На следующем этапе S15 секция 12 поиска топологии определяет присутствие другого пакета ответа, равного "i" в длине списка портов вывода и не подвергнутого процессу этапов S12 - S14. Если такой пакет ответа существует ("Да" на этапе S15), секция 12 поиска топологии повторяет процесс этапа S12 последовательно.
[0114] Если такие пакеты ответа не существуют, секция 12 поиска топологии добавляет 1 к значению переменной "i" (этап S16) и повторяет процесс этапа S12 последовательно.
[0115] Создание информации топологии топологией секцией 12 поиска топологии завершается, например, когда процесс этапов S12 - S14 для всех пакетов ответа выполнен до завершения. Набор, сформированный посредством комбинирования множества отношений межпортовых соединений, таких как отношения взаимосвязи, между портами, идентифицированными на этапе S14, является информацией топологии.
[0116] На этапе S2 второго и последующих циклов процесса (см. Фиг. 11), блок 10 управления принимает пакет ответа только от коммутаторов, отношения, взаимосвязи которых изменились относительно соседнего коммутатора. В этом случае секция 12 поиска топологии обновляет информацию топологии таким образом, который описан ниже. Эта операция обновления предполагает, что секция 11 передачи/приема специфического пакета провела операции обновления и перекомпоновки списка портов вывода над каждым пакетом ответа.
[0117] Секция 12 поиска топологии сортирует пакеты ответа в порядке убывания длины списка портов вывода. После этого секция 12 поиска топологии выполняет процесс этапов S12 - S14 над пакетами ответа с пакетом самого короткого списка портов вывода первым.
[0118] В это время, если информация порта относительно других коммутаторов, которые должны быть соединены с портами, идентифицированными на этапе S12, включена в информацию топологии, секция 12 поиска топологии удаляет оттуда информацию, указывающую отношения взаимосвязи между коммутаторами, следующими за этими коммутаторами, и выполняет процесс этапов S13, S14. Это обновляет информацию топологии.
[0119] Более конкретный пример создания информации топологии описан ниже. Фиг. 13 показывает пример путей пакетов ответа, переданных из каждого порта каждого коммутатора. Пример на фиг. 13 показывает ту же самую топологию как таковая на Фиг. 10. Номера, показанные около блока 10 управления, например, показывают идентификационные номера порта. Кроме того, пути "a" - "h", отмеченные стрелкой, являются таковыми пакетов ответа, переданных из каждого порта каждого коммутатора.
[0120] Фиг. 14 показывает пакеты ответа, достигающие блока 10 управления через пути "a" - "h" на фиг. 13. На Фиг. 14 "src: # 2@B", например, представляет коммутатор, который передал пакет ответа, и порт, который использовал этот коммутатор. Номер, которое следует за "#", является идентификационным номером порта, и символ, который следует за «@», является информацией, идентифицирующей коммутатор. Например, "src:#2@B" означает, что пакет ответа был передан из порта #2 коммутатора B. Кроме того, "порты: ()", показывает список портов вывода. На этапе S2, однако, секция 11 передачи/приема специфического пакета обновляет последний идентификационный номер порта в списке портов вывода, определенном в принятом пакете, равным идентификационному номеру порта у порта, через который пакет ответа был принят, и далее перекомпоновывает идентификационные номера портов в списке портов вывода в обратном порядке. Список портов вывода, показанный на фиг. 14, является списком, существующим после того, как операции обновления и перекомпоновки были проведены. В дальнейшем, каждый пакет ответа, показанный на фиг. 14, будет выражен тем же самым символом как таковой пути, которому пакет ответа следует, чтобы достигнуть блока 10 управления. Например, пакет ответа, который проходил через путь "a", показанный на фиг. 13, будет назван пакетом "a" ответа.
[0121] Секция 12 поиска топологии устанавливает "i=1" (этап S11) и выполняет процесс этапов S12-S14 для пакетов "a", "b" ответа.
[0122] Секция 12 поиска топологии идентифицирует, что последний идентификационный номер порта "2" в списке портов вывода пакета «a» ответа является портом #2 блока 10 управления (этап S12). Секция 12 поиска топологии далее определяет пакет "a" ответа как переданный из порта #2 коммутатора B (этап S13). Секция 12 поиска топологии затем определяет, что порт #2 блока 10 управления и порт #2 коммутатора B соединены друг с другом (этап S14).
[0123] Аналогично, секция 12 поиска топологии использует пакет "b" ответа, чтобы определить, что порт #1 блока 10 управления и порт #1 коммутатора D соединены.
[0124] Затем секция 12 поиска топологии устанавливает "i=2" (см. этап S16) и выполняет процесс этапов S12-S14 для пакетов "c", "d", "e", "f" ответа.
[0125] Секция 12 поиска топологии идентифицирует, что последний идентификационный номер порта "3" в списке портов вывода пакета "c" ответа является портом #3 коммутатора B (этап S12). Так как списком портов вывода в пакете "c" ответ равен (#2, #3), секция 12 поиска топологии может выполнить эту идентификацию из известных отношений взаимосвязи. Секция 12 поиска топологии далее определяет пакет "c" ответа, как переданный из порта #2 коммутатора C (этап S13). Секция 12 поиска топологии затем определяет, что порт #3 коммутатора B и порт #2 коммутатора C соединены.
[0126] Аналогично, секция 12 поиска топологии использует пакет "d" ответа, чтобы определить, что порт #2 коммутатора D и порт #1 коммутатора C соединены. Секция 12 поиска топологии аналогично использует пакет "e" ответа, чтобы определить, что порт #1 коммутатора B и порт #2 коммутатора E соединены. Секция 12 поиска топологии аналогично использует пакет "f" ответа, чтобы определить, что порт #3 коммутатора D и порт #1 коммутатора E соединены.
[0127] Затем секция 12 поиска топологии устанавливает "i=3" (см. этап S16) и выполняет процесс этапов S12-S14 для пакетов "г", "h" ответа.
[0128] Секция 12 поиска топологии идентифицирует, что последний идентификационный номер порта "1" в списке портов вывода пакета "g" ответа является портом #1 коммутатора C (этап S12). Так как списком портов вывода в пакете "g" ответ является (#2, #3, #1), секция 12 поиска топологии может выполнить эту идентификацию из известных отношений взаимосвязи. Секция 12 поиска топологии далее определяет пакет "g" ответа как переданный из порта #2 коммутатора D. Секция 12 поиска топологии затем определяет, что порт #1 коммутатора C и порт #2 коммутатора D соединены (этап S14).
[0129] Секция 12 поиска топологии аналогично использует пакет "h" ответа, чтобы определить, что порт #2 коммутатора E и порт #1 коммутатора B соединены.
[0130] В существующем примере, хотя процесс этапов S12-S14 был также выполнен для пакетов "g", "h" ответа, секция 12 поиска топологии может закончить информацию топологии, используя только пакеты "a"-"f" ответа.
[0131] Фиг. 15 и 16 являюется последовательностью операций, которые показывают примеры потока процесса в одном коммутаторе. После того как коммутатор принял специфический пакет, секция 21 передачи/приема специфического пакета определяет, является ли этот специфический пакет пакетом запроса (этап S21). Если принятый специфический пакет является пакетом запроса ("Да" на этапе S21), секция 21 передачи/приема специфического пакета выводит пакет запроса к секции 22 управления с помощью волнового распространения пакетов.
[0132] Секция 22 управления волновым распространением пакетов определяет, согласуется ли порядковый номер в пакете запроса, который был введен от секции 21 передачи/приема специфического пакета, с любым из сохраненных порядковых номеров (этап S23). Если порядковый номер не согласуется, ни с каким сохраненным ("Нет" на этапе S23), секция 22 управления волновым распространением пакетов выполняет волновое распространение пакетов с этим пакетом запроса, выполняя этапы процесса S24 и S25, которые следуют далее. Более конкретно, секция 22 управления волновым распространением пакетов создает копию пакета запроса для каждого порта, отличного от того, через который пакет запроса был принят, и обновляет списки порта вывода, его длины, и отсчет порта в каждом пакете запроса (этап S24). Секция 22 управления волновым распространением пакетов добавляет к концу списка портов вывода идентификационный номер порта вывода, из которого пакет запроса, скопированный на этапе S24, должен быть передан. Секция 22 управления волновым распространением пакетов также заменяет из всех идентификационных номеров портов в списке портов вывода только идентификационный номер порта, соответствующий позиции, диктуемой из отсчета порта, идентификационным номером порта, через который был принят пакет запроса. Если начальное значение отсчета порта равно 0 и текущее значение отсчета порта равно "k", секция 22 управления волновым распространением пакетов обновляет (k+1)-й идентификационный номер порта. Дополнительно, секция 22 управления волновым распространением пакетов добавляет 1 к значению длины списка портов вывода и значению отсчета порта. Секция 22 управления волновым распространением пакетов затем заставляет секцию 21 передачи/приема специфического пакета передать пакет запроса (этап S25). Секция 21 передачи/приема специфического пакета передает пакет запроса из порта, соответствующего идентификационному номеру порта, который был добавлен к концу списка портов вывода. Процесс затем перемещается на этап S26.
[0133] Если порядковый номер в пакете запроса согласуется с любым из сохраненных порядковых номеров ("Да" на этапе S23), секция 22 управления волновым распространением пакетов не выполняет этапы S24, S25 процесса, и процесс затем перемещается на этап S26.
[0134] На этапе S26 секция 22 управления волновым распространением пакетов выводит принятый от коммутатора неповрежденный пакет запроса к секции 23 доставки информации.
[0135] Секция 23 доставки информации определяет, изменился ли сам коммутатор в отношениях соединения со времени, когда пакеты ответа были переданы, в ответ на пакеты запроса, переданные от блока 10 управления в прошлом (этап S27). Таким образом, секция 23 доставки информации определяет, заменен ли коммутатор, в настоящее время связанный с коммутатором секции 23 доставки информации, любым другим коммутатором или разъединен. Если нет изменения в отношениях соединения ("Нет" на этапе S27), пакет процесс приема запроса завершается.
[0136] Если есть изменения в отношениях соединения ("Да" на этапе S27), секция 23 доставки информации генерирует пакет ответа и заставляет секцию 21 передачи/приема специфического пакета передать пакет ответа (этап S28). Секция 23 доставки информации генерирует пакет ответа, который включает в себя информацию, указывающую подсоединенный порт коммутатора непосредственно, информацию, идентифицирующую коммутатор, и идентификационный номер порта, который коммутатор использовал, чтоб принять пакет запроса. Секция 23 доставки информации также обновляет последний идентификационный номер порта в списке портов вывода, определенном в пакете запроса, который был введен, равным идентификационному номеру порта приема пакета запроса, и далее обращает порядок компоновки идентификационных номеров портов в списке портов вывода. После этой перекомпоновки секция 23 доставки информации определяет список портов вывода в пакете ответа. Секция 23 доставки информации также определяет длину списка портов вывода и начальное значение отсчета порта в пакете ответа и затем заставляет секцию 21 передачи/приема специфического пакета передать этот пакет ответа. Секция 21 передачи/приема специфического пакета передает пакет ответа из порта, обозначенного первым идентификационным номером порта в списке портов вывода. Процесс приема пакета запроса заканчивается после завершения этапа S28.
[0137] Таким образом, ввиду того, что коммутатор изменен в отношениях соединения, пакет ответа генерируется и передается, посредством чего подавляется увеличение трафика, ассоциированного с передачей и приемом пакетов ответа, не затрагивая информацию топологии.
[0138] Если принятый специфический пакет не является пакетом запроса ("Нет" на этапе S21), секция 21 передачи/приема специфического пакета определяет, является ли коммутатор непосредственно, который принял специфический пакет, адресатом этого специфического пакета (этап S29). Если сам коммутатор является адресатом ("Да" на этапе S29), секция 21 передачи/приема специфического пакета отличает тип этого специфического пакета (этап S30).
[0139] Если специфический пакет является пакетом установки, секция 21 передачи/приема специфического пакета выводит пакет установки к секции 24 сохранения пути (этап S31). Секция 24 сохранения пути обновляет последний идентификационный номер порта в списке портов вывода, определенного в пакете установки, равным идентификационному номеру порта, через который был принят пакет установки. После этого секция 24 сохранения пути перекомпоновывает идентификационные номера портов в списке портов вывода в обратном порядке и сохраняет отредактированный список портов вывода как информацию, указывающую путь, который становится каналом управления (этап S32).
[0140] Если специфический пакет является туннельным пакетом, секция 21 передачи/приема специфического пакета выводит туннельный пакет к секции 25 туннелирования сообщения управления (этап S33). Секция 25 туннелирования сообщения управления декапсулирует сообщение управления от туннельного пакета и декодирует декапсулированное сообщение управления (этап S34). Коммутатор выполняет процесс, подходящий для сообщения управления.
[0141] Если непосредственно коммутатор, который принял специфический пакет, не является адресатом этого пакета ("Нет" на этапе S29), секция 21 передачи/приема специфических пакетов обновляет из всех идентификационных номеров портов в списке портов вывода только идентификационный номер порта, соответствующий позиции, диктуемой из отсчета порта, равным идентификационному номеру порта, через который был принят этот специфический пакет. Секция 21 передачи/приема специфического пакета также добавляет 1 к отсчету порта в специфическом пакете (этап S35). После этого секция 21 передачи/приема специфического пакета передает специфический пакет (этап S36).
[0142] Процесс приема специфического пакета завершается после того, как этап S32, S34 или S36 заканчивается.
[0143] Согласно настоящему изобретению каналы управления между блоком управления и каждым коммутатором устанавливаются через коммуникационная сеть, которую использует коммутаторы, чтобы передать пакеты данных. Другими словами, коммуникационная сеть, которая использует коммутаторы, чтобы передать пакеты данных, и каналы управления реализуется одним видом коммуникационной сети. Это, в свою очередь, приводит к следующим выгодным эффектам.
[0144] Во-первых, избыточность и устойчивость к ошибкам улучшаются. Это потому, что даже в случае отказа, происходящего в части коммуникационной сети, по которой коммутаторы передают пакеты данных, каналы управления могут быть установлены, если обеспечены пути от блока 10 управления к коммутаторам. Например, в топологии, показанной на фиг. 2, даже если ошибка линии связи происходит между блоком 10 управления и коммутатором 20b, пакет запроса, который блок 10 управления передал к коммутатору 20a, может достигнуть каждого коммутатора. Это, в свою очередь, разрешает установление каналов управления между блоком 10 управления и каждым коммутатором.
[0145] Сравнения с общей системой связи, показанной посредством примера на фиг. 20, описаны ниже. Как показано на фиг. 20, в конфигурации с коммуникационной сетью 93 управления, предоставленной независимо от коммуникационной сети 94 передачи пакетов, даже если пути существуют, которые позволяют пакету достигнуть коммутаторов 92 от блока 91 управления физически, эти пути не используются для управления. Соответственно, отказ в коммуникационной сети 93 управления вызывает отказ управления в блоке 91 управления, таким образом уменьшая устойчивость к ошибкам. Настоящее изобретение, напротив, улучшает избыточность и устойчивость к ошибкам по предшествующим причинам.
[0146] Во-вторых, из-за того, что нет необходимости обеспечивать специальную коммуникационную сеть для каналов управления, нет необходимости управлять такой специальной коммуникационной сетью, и таким образом система связи может быть уменьшена в затратах управления. Если количество коммутаторов увеличено или сокращено, передача пакета запроса блоком 10 управления также позволяет выполнить создание последней информации топологии и, следовательно, установление каналов управления, приводящих к каждому коммутатору.
[0147] Сравнения с обычной системой связи, показанной посредством примера на фиг. 20, описаны ниже. В системе связи, показанной посредством примера на фиг. 20, затраты на управление увеличиваются, так как коммуникационная сеть 93 управления и коммуникационная сеть 94 передачи пакетов оба требуют управления. Например, если топология группы коммутатора изменилась посредством добавления коммутаторов, возникает необходимость добавить линию связи к обеим из коммуникационной сети 93 управления и коммуникационной сети 94 передачи пакетов, чтобы удовлетворить/приспособиться к этому изменению. В настоящем изобретении, однако, использование предшествующей последовательности уменьшает затраты, требуемые для управления системой связи.
[0148] В-третьих, даже после того, как число коммутаторов было увеличено, блок 10 управления может создать последнюю информацию топологии, передавая пакет запроса, как описано выше. В это время, так как только блок 10 управления является источником передачи пакета запроса, трафик, ассоциированный с обменами специфического пакета при увеличении в количестве коммутаторов, может быть подавлен до более низкого уровня, чем в случаях, таких как принятие BPDU в STP. Это преимущество, в свою очередь, позволяет препятствовать тому, чтобы система связи провела слишком много времени прежде, чем начать создание информации топологии, и тяжелой загрузке линии связей.
[0149] Сравнения с обычной системой связи, показанной посредством примера на фиг. 20, описаны ниже. В системе связи, показанной посредством примера на фиг. 20, если топология коммутаторов изменяется, так как кадр управления (например, BPDU в STP), который система связи должна использовать, чтобы распознать новую топологию, обменивается среди коммутаторов, использование слишком многих коммутаторов приведет к частому генерированию такого кадра управления и приведет к большому количеству времени, требуемому для усовершенствования этого состояния, или в тяжело загруженной линии связи. В настоящем изобретении, однако, так как трафик, ассоциированный с обменами специфического пакета при увеличении в количестве коммутаторов, как описано выше, может быть понижен до более низкого уровня, чем в случаях, таких как принятие BPDU в STP, масштабируемость может быть достигнута относительно масштаба системы связи.
[0150] Кроме того, каждый коммутатор выполняет волновое распространение пакетов пакета запроса так, чтобы блок 10 управления, передавая один пакет запроса из одного порта, мог собрать пакет ответа, использованный, чтобы идентифицировать топологию цепи коммутаторов, соединенных с этим портом. Блоку 10 управления, поэтому, требуется только передать один пакет запроса от одного порта во время одного сеанса периодического поиска топологии. Это минимизирует время сбора пакетов ответа.
[0151] Затем примеры минимальных конфигураций настоящего изобретения описаны ниже. Фиг. 17 является блок-схемой, показывающей пример минимальной конфигурации системы связи согласно настоящему изобретению. Фиг. 18 является блок-схемой, показывающей пример минимальной конфигурации блока управления в настоящем изобретении. Фиг. 19 является блок-схемой, показывающей пример минимальной конфигурации блока передачи пакетов в настоящем изобретении.
[0152] Система связи согласно настоящему изобретению включает в себя множество блоков 90 передачи пакетов (например, коммутаторы 20a-20d) и блок 80 управления (например, блок 10 управления), который управляет каждым блоком 90 передачи пакетов.
[0153] Блок 80 управления включает в себя средство 81 передачи запроса ответа, средство 82 приема ответа и средство 83 создания информации топологии (см. фиг. 17, 18).
[0154] Средство 81 передачи запроса ответа (например, часть, которая включает в себя секцию 12 поиска топологии и секцию 11 передачи/приема специфического пакета стороны блока управления) передает запрос ответа (например, пакет запроса) к блоку передачи пакетов.
[0155] Средство 82 приема ответа (например, секция 11 передачи/приема специфического пакета стороны блока управления) принимает ответ (например, пакет ответа), который включает в себя информацию относительно портов, предоставленных в блоке передачи пакетов, от блока передачи пакетов.
[0156] Средство 83 создания информации топологии (например, секция 12 поиска топологии) использует ответы, переданные от каждого блока передачи пакетов, чтобы создать информацию топологии, которая включает в себя информацию относительно взаимосвязи между портом, предоставленным в блоке управления, и каждым портом блоков передачи пакетов.
[0157] Блок 90 передачи пакетов включает в себя средство 91 передачи и средство 92 передачи ответа (см. фиг. 17, 19).
[0158] Средство 91 передачи (например, часть, которая включает в себя секцию 22 управления волновым распространением пакетов и секцию 21 передачи/приема специфических пакетов) после приема запроса ответа передает запрос ответа из порта, отличного от того, через который был принят запрос ответа.
[0159] Средство 92 передачи ответа (например, часть, которая включает в себя секцию 23 поставки информации и секцию 21 передачи/приема специфического пакета стороны коммутатора) после приема запроса ответа возвращает ответ, который включает в себя информацию относительно портов локального блока передачи пакетов, причем ответ передается через путь для блока управления.
[0160] Вышеупомянутый примерный вариант осуществления включает в себя те характерные конфигурации системы связи, которые описаны в пунктах (1)-(10) ниже. Те характерные конфигурации блока управления, которые описаны в пунктах (11) - (13), которые следуют, также включены. Те характерный конфигурации блока передачи пакетов, которые описаны в пунктах (14)-(15), которые следуют, включены дополнительно.
[0161] (1) Система связи согласно настоящему изобретению включает в себя множество блоков передачи пакетов (например, коммутаторы 20a-20d) и блок управления (например, блок 10 управления), который управляет каждым блоком передачи пакетов, причем блок управления включает в себя средство передачи запроса ответа (например, часть, включающую в себя секцию 12 поиска топологии и секцию 11 передачи/приема специфического пакета стороны блока управления), которое передает запрос ответа (например, пакет запроса) к блоку передачи пакетов, средство приема ответа (например, секцию 11 передачи/приема специфического пакета стороны блока управления), которое принимает ответ (например, пакет ответа), включающий в себя информацию относительно портов, предоставленных в блоке передачи пакетов, от блока передачи пакетов, и средство создания информации топологии (например, секцию 12 поиска топологии), которое создает информацию топологии на основании ответа, переданного от каждого блока передачи пакетов, причем информация топологии включает в себя информацию взаимосвязи портов относительно портов, предоставленных в блоке управления и каждым портом блоков передачи пакетов; и блок передачи пакетов включает в себя средство передачи (например, часть, включающую в себя секцию 22 управления волновым распространением пакетов и секцию 21 передачи/приема специфических пакетов), которое после приема запроса ответа передает запрос ответа из порта, отличного от того, через который запрос ответа был принят, средство передачи ответа (например, часть, включающую в себя секцию 23 поставки информации и секцию 21 передачи/приема специфического пакета стороны коммутатора), которое после приема запроса ответа возвращает ответ, включающий в себя информацию относительно портов локального блока передачи пакетов, причем ответ передается через путь для блока управления.
[0162] (2) Также раскрыто, что система связи конфигурируется так, чтобы в дополнение к повторению передачи запроса ответа к блоку передачи пакетов периодически, каждый раз, когда средство передачи запроса ответа передает запрос ответа, средство передачи запроса ответа включает информацию идентификации отсчета передачи в запрос ответа, чтобы указать, запросом какого номера в отсчете передаче является этот запрос ответа; и ввиду того факта, что информация идентификации отсчета передачи, включенная в принятый запрос ответа, является первой информацией идентификации отсчета передачи, которая не была принята прежде, средство передачи передает запрос ответа из порта, отличного от того, через который средство передачи приняло запрос ответа. Эта конфигурация системы эффективна для того, чтобы подавлять трафик, ассоциированный с передачей запроса ответа, и трафик, ассоциированный с генерированием ответов из-за передачи запросов ответа.
[0163] (3) Кроме того, раскрытая система связи конфигурируется так, что средство передачи ответа возвращает ответ ввиду того факта, что после того как блок передачи пакета принял запрос ответа, отношения соединения непосредственно этого блока передачи пакетов, который принял запрос ответа, относительно любого другого блока передачи пакетов, изменились со времени, когда ответ был передан в ответ на запрос ответа, переданный от блока управления в прошлом. Эта конфигурация системы является эффективной для того, чтобы подавить увеличение трафика, ассоциированного с передачей и приемом ответов, не затрагивающих информацию топологии.
[0164] (4) Кроме того, раскрытая система связи конфигурируется так, чтобы информация топологии, создающая средство, после приема ответа из-за запроса ответа, переданного после создания информации топологии, обновила информацию топологии в соответствии с ответом. Эта конфигурация системы является эффективной для того, чтобы включить последнюю топологию в информацию топологии.
[0165] (5) Кроме того, раскрытая система связи конфигурируется так, чтобы блок управления включал в себя средство определения канала управления (например, секцию 14 определения пути канала управления), которое использует информацию топологии, чтобы определить канал управления, который является путем между блоком управления и каждым блоком передачи пакетов, и средство передачи уведомления о канале управления (например, секцию 11 передачи/приема специфического пакета стороны блока управления), которое передает уведомление о канале управления, чтобы уведомить блок передачи пакетов о канале управления, и так, чтобы блок передачи пакетов включал в себя средство хранения канала управления (например, секцию 24 сохранения пути), которое после приема уведомления о канале управления использует уведомление о канале управления, чтобы сохранить канал управления, сформированный между блоком управления и локальным блоком передачи пакетов.
[0166] (6) Система связи согласно настоящему изобретению может включать в себя множество блоков передачи пакетов и блок управления, который управляет каждым блоком передачи пакетов, в которой блок управления включает в себя секцию передачи запроса ответа, которая передает запрос ответа к блоку передачи пакетов, секцию приема ответа, которая принимает ответ, включающий в себя информацию относительно портов, предоставленных в блоке передачи пакетов, от блока передачи пакетов, и секцию создания информации топологии, которая создает информацию топологии на основании ответа, переданного от каждого блока передачи пакетов, причем информация топологии включает в себя информацию взаимосвязи портов относительно портов, предоставленных в блоке управления, и каждом порте блоков передачи пакетов; и блок передачи пакетов включает в себя секцию передачи, которая после приема запроса ответа передает запрос ответа из порта, отличного от того, через который запрос ответа был принят, и секцию передачи ответа, которая после приема запроса ответа возвращает ответ, включающий в себя информацию относительно портов локального блока передачи пакетов, причем ответ передается через путь для блока управления.
[0167] (7) Также раскрыто, что система связи конфигурируется так, чтобы в дополнение к повторяющейся передаче запроса ответа к блоку передачи пакетов периодически, каждый раз, когда секция передачи запроса ответа передает запрос ответа, секция передачи запроса ответа включает информацию идентификации отсчета передачи в запрос ответа, чтобы указать, запросом какого номера в отсчете передачи является этот запрос ответа; и с учетом факта, что информация идентификации отсчета передачи, включенная в принятый запрос ответа, является первой информацией идентификации отсчета передачи, которая не была принята прежде, секция передачи передает запрос ответа из порта, отличного от того, через который секция передачи приняла запрос ответа.
[0168] (8) Кроме того, раскрытая система связи конфигурируется так, что секция передачи ответа возвращает ответ, с учетом факта, что после того как блок передачи пакетов принял запрос ответа, отношение соединения непосредственно этого блока передачи пакетов, который принял запрос ответа, относительно любого другого блока передачи пакетов, изменились со времени, когда ответ был передан в ответ на запрос ответа, переданный от блока управления в прошлом.
[0169] (9) Кроме того, раскрытая система связи конфигурируется так, чтобы секция создания информации топологии после приема ответа из-за запроса ответа, переданного после создания информации топологии, обновила информацию топологии в соответствии с ответом.
[0170] (10) Кроме того, раскрытая система связи конфигурируется так, чтобы блок управления включал в себя секцию определения канала управления, которая использует информацию топологии, чтобы определить канал управления, который является путем между блоком управления и каждым блоком передачи пакетов, и секцию передачи уведомления о канале управления, которая передает уведомление о канале управления, чтобы уведомить блок передачи пакетов о канале управления, и так, чтобы блок передачи пакетов включал в себя секцию хранения канала управления, которая после приема уведомления о канале управления использует уведомление о канале управления, чтобы сохранить канал управления, сформированный между блоком управления и локальным блоком передачи пакетов.
[0171] (11) Блок управления согласно другому аспекту настоящего изобретения управляет множеством блоков передачи пакетов, причем блок управления включает в себя секцию передачи запроса ответа, которая передает запрос ответа к блоку передачи пакетов; секцию приема ответа, которая принимает ответ, включающий информацию относительно портов, предоставленных в блоке передачи пакетов, от блока передачи пакетов; и секцию создания информации топологии, которая создает информацию топологии на основании ответа, переданного от каждого блока передачи пакетов, причем информация топологии включает в себя информацию взаимосвязи портов относительно портов, предоставленных в блоке управления, и каждого порта блоков передачи пакетов.
[0172] (12) Также раскрыто, что система связи конфигурируется так, чтобы в дополнение к повторяющейся передаче запроса ответа к блоку передачи пакетов периодически, каждый раз, когда секция передачи запроса ответа передает запрос ответа, секция передачи запроса ответа включает информацию идентификации отсчета передачи в запрос ответа, чтобы указать, запросом какого номера в отсчете передачи является этот запрос ответа.
[0173] (13) Кроме того, блок управления в настоящем изобретении, сконфигурированном, чтобы управлять множеством блоков передачи пакетов, может включать в себя средство передачи запроса ответа, которое передает запрос ответа к блоку передачи пакетов, средство приема ответа, которое принимает ответ, включающий в себя информацию относительно портов, предоставленных в блоке передачи пакетов, от блока передачи пакетов, и средство создания информации топологии, которое создает информацию топологии на основании ответа, переданного от каждого блока передачи пакетов, причем информация топологии включает в себя информацию взаимосвязи портов относительно портов, предоставленных в блоке управления, и каждого порта блоков передачи пакетов.
[0174] (14) Блоком передачи пакетов согласно еще одному аспекту настоящего изобретения управляет блок управления, причем блок передачи пакетов включает в себя секцию передачи, которая после приема запроса ответа, переданного от блока управления, передает запрос ответа из порта, отличного от того, через который был принят запрос ответа; и секцию передачи ответа, которая после приема запроса ответа, переданного от блока управления, возвращает ответ, включающий в себя информацию относительно портов локального блока передачи пакетов, причем ответ передается через путь для блока управления.
[0175] (15) Кроме того, блоком передачи пакетов согласно настоящему изобретению может управлять блок управления, причем блок передачи пакетов включает в себя средство передачи, которое после приема запроса ответа, переданного от блока управления, передает запрос ответа из порта, отличного от того, через который был принят запрос ответа; и средство передачи ответа, которое после приема запроса ответа, переданного от блока управления, возвращает ответ, включающий в себя информацию относительно портов локального блока передачи пакетов, причем ответ передается через путь для блока управления.
[0176] В то время как настоящее изобретение было описано выше со ссылками к примерному варианту осуществления, изобретение не ограничено этим примерным вариантом осуществления. Различные изменения, понятные специалисту в данной области техники, могут быть сделаны в конфигурации и деталях изобретения в пределах его объема.
[0177] Настоящая заявка испрашивает приоритет на основании японской заявки на патент № 2009-298853, поданной 28 декабря 2009, все раскрытие которой тем самым включено ссылкой в настоящую заявку.
Промышленная применимость
[0178] Настоящее изобретение соответственно применимо к системе связи, которая включает в себя множество блоков передачи пакетов и блок управления, который управляет каждым блоком передачи пакетов.
Список ссылочных позиций
[0179]
10 блок управления
11 секция передачи/приема специфических пакетов стороны блока управления
12 секция поиска топологии
13 секция сохранения топологии
14 секция определения пути канала управления
15 секция туннелирования сообщения управления стороны блока управления
20, 20a-20d, 20A-20D Коммутаторы (блоки передачи пакетов)
21 секция передачи/приема специфических пакетов стороны коммутатора
22 секция управления волновым распространением пакетов
23 секция доставки информации
24 секция сохранения пути
25 секция туннелирования сообщения управления стороны коммутатора