Система связи и способ создания информации топологии

Иллюстрации

Показать все

Изобретение относится к системе связи, включающей в себя множество блоков передачи пакетов и блок управления для управления блоками передачи пакетов. Технический результат - использование одной коммуникационной сети для передачи пакетов посредством блоков передачи пакетов и для управления посредством блока управления блоками передачи пакетов. Система содержит множество блоков передачи пакетов и блок управления, который управляет каждым блоком передачи пакетов. Блок управления содержит средство передачи запроса ответа, средство приема ответа, средство создания информации топологии, средство определения канала управления и средство передачи уведомления о канале управления. Каждый блок передачи пакетов содержит средство передачи, средство передачи ответа и средство сохранения канала. 4 н. и 4 з.п. ф-лы, 28 ил.

Реферат

Область техники

[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 в качестве адресата специфического пакета, если