RU2819422C1 - Способ и устройство для определения линии связи для переадресации потока услуг - Google Patents
Способ и устройство для определения линии связи для переадресации потока услуг Download PDFInfo
- Publication number
- RU2819422C1 RU2819422C1 RU2022123726A RU2022123726A RU2819422C1 RU 2819422 C1 RU2819422 C1 RU 2819422C1 RU 2022123726 A RU2022123726 A RU 2022123726A RU 2022123726 A RU2022123726 A RU 2022123726A RU 2819422 C1 RU2819422 C1 RU 2819422C1
- Authority
- RU
- Russia
- Prior art keywords
- row
- column
- link
- communication
- columns
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims abstract description 316
- 238000000034 method Methods 0.000 title claims abstract description 85
- 239000011159 matrix material Substances 0.000 claims abstract description 106
- 238000012545 processing Methods 0.000 claims description 26
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000004364 calculation method Methods 0.000 abstract description 2
- 230000000694 effects Effects 0.000 abstract description 2
- 239000000126 substance Substances 0.000 abstract 1
- 230000006870 function Effects 0.000 description 16
- 230000008569 process Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 238000004590 computer program Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 101100517651 Caenorhabditis elegans num-1 gene Proteins 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Abstract
Изобретение относится к области коммуникационных технологий и раскрывает способ и устройство для определения линии связи для переадресации потока услуг и носитель информации. Технический результат изобретения заключается в уменьшении объема вычислений и повышении эффективности. Технический результат достигается путем определения на основе матрицы пропускных способностей линий связи идентификационной информации первого потока услуги и статусов линий связи, соответствующих N линиям связи, первой линии связи для переадресации первого потока услуги из N линий связи. В вариантах осуществления изобретения операцию хеширования не нужно выполнять на основе идентификатора устройства каждого устройства переадресации, и конкретному устройству переадресации, которое выполняет переадресацию, не нужно определять множества хеш-значений путем сравнения. 2 н. и 24 з.п. ф-лы, 2 табл., 8 ил.
Description
Перекрестная ссылка на родственную заявку
Настоящая заявка испрашивает приоритет китайской патентной заявки № 202010082312.7, поданной в Национальное управление интеллектуальной собственности Китая 7 февраля 2020 года и озаглавленной «UNEQUAL LOAD SHARING BASED FORWARDING METHOD, APPARATUS, AND SYSTEM», и китайской патентной заявки № 202010364422.2, поданной в Национальное управление интеллектуальной собственности Китая 30 апреля 2020 года и озаглавленной «METHOD AND APPARATUS FOR DETERMINING LINK FOR FORWARDING SERVICE FLOW», каждое из которых включено в данный документ во всей своей полноте путем ссылки.
Область техники, к которой относится изобретение
Настоящая заявка относится, в общем, к области коммуникационных технологий и, в частности, к способу и устройству для определения линии связи для переадресации потока услуг.
Уровень техники
В настоящее время, в сценарии многоадресной передачи, приемная сторона данных многоадресной передачи может быть подключена к множеству устройств переадресации. Все множество устройств переадресации может принимать данные многоадресной передачи, отправленные источником многоадресной передачи. В этом случае в соответствии с алгоритмом хеширования каждое из множества устройств переадресации может определить то, следует ли переадресовать данные многоадресной передачи на приемную сторону. После того, как любое устройство переадресации из множества устройств переадресации примет данные многоадресной передачи, любое устройство переадресации может выполнить операцию хеширования с использованием алгоритма хеширования, такого же, как и у других устройств переадресации, и на основе идентификатора интерфейса любого устройства переадресации и информации о данных многоадресной передачи, чтобы получить первое хеш-значение. Любое устройство переадресации может дополнительно выполнить операцию хеширования на основе идентификатора интерфейса другого устройства и информации о данных многоадресной передачи для получения хеш-значения, соответствующего другому устройству. Любое устройство переадресации определяет наибольшее хеш-значение из всех полученных хеш-значений. Если непосредственно устройство переадресации соответствует наибольшему хеш-значению, устройство переадресации может служить выбранным устройством переадресации для переадресации данных многоадресной передачи на приемную сторону; или, если непосредственно устройство переадресации не соответствует наибольшему хеш-значению, устройство переадресации не переадресует данные многоадресной передачи. Количество устройств переадресации, подключенных к приемной стороне, определяет количество операций хеширования, которые необходимо выполнить, и каждое из устройств переадресации, подключенных к приемной стороне, должно сравнивать хеш-значения, полученные путем вычислений. Это приводит к большому объему вычислений и низкой эффективности.
Сущность изобретения
Настоящая заявка предоставляет способ и устройство для определения линии связи для переадресации потока услуг с целью уменьшения количества вычислений и повышения эффективности. Технические решения состоят в следующем:
Согласно первому аспекту настоящая заявка предусматривает способ определения линии связи для переадресации потока услуг и применяется в первом устройстве переадресации. Способ включает в себя: получение идентификационной информации о первом потоке услуг; и определение, на основе матрицы пропускных способностей линий связи, идентификационной информации первого потока услуги и статусов линий связи, соответственно, соответствующих N линиям связи, первой линии связи для переадресации первого потока услуги из N линий связи, где матрица пропускных способностей линий связи указывает пропускные способности линий связи из N линий связи, и N не меньше 2.
В вариантах осуществления настоящей заявки первое устройство переадресации может получить идентификационную информацию первого потока услуг; и определить, на основе идентификационной информации о первом потоке услуг, матрицы пропускных способностей линий связи и статусов линий связи, соответственно, соответствующих N линий связи, первую линию связи для переадресации первого потока услуг. Можно понять, что в вариантах осуществления настоящей заявки операцию хеширования не нужно выполнять на основе идентификатора устройства каждого устройства переадресации, и конкретному устройству переадресации, которое выполняет переадресацию, не нужно определять путем сравнения множества хеш-значений. Таким образом, объем вычислений является маленьким, а эффективность высокой.
В реализации способ определения линии связи для переадресации потока услуг, предусмотренный в вариантах осуществления настоящей заявки, может дополнительно включать в себя: получение идентификационной информацией второго потока услуг; и определение, на основе идентификационной информацией второго потока услуг, матрицы пропускных способностей линий связи и статусов линий связи, соответственно, соответствующих N линиям связи, второй линии связи для переадресации второго потока услуг из N линий связи. В вариантах осуществления настоящей заявки для принятого потока услуг первое устройство переадресации может определить линию связи для переадресации потока услуг с использованием способа, представленного в вариантах осуществления настоящей заявки. Первое устройство переадресации может выбрать для переадресации линии связи, основанный на потоке услуг, тем самым реализуя балансировку нагрузки множества потоков услуг.
В реализации процесс реализации определения, на основе матрицы пропускных способностей линий связи, идентификационной информации первого потока услуг и статусов линий связи, соответственно, соответствующих N линиям связи, первой линии связи для переадресации первого потока услуг из N линий связи может включать в себя: выполнение хеш-операции над идентификационной информацией первого потока услуг для получения первого хеш-значения; и определение первой линии связи из N линий связи на основе матрицы пропускных способностей линий связи, первого хеш-значения и статусов линий связи, соответственно, соответствующих N линиям связи.
В возможной реализации матрица пропускных способностей линий связи является матрицей Mx(N+3), где M не меньше 1, i-я строка в M строках соответствует i-му типу пропускной способности линии связи, диапазон значений i составляет от 1 до M, j-й столбец в N столбцах соответствует j-й линии связи, количество x первых элементов, включенных в j-й столбец, используется для указания того, что j-я линии связи использует x-й тип линии связи пропускная способность, диапазон значений x составляет от 1 до M, (N+3)-й столбец представляет собой разность пропускных способностей, (N+2)-й столбец представляет собой накопленную сконфигурированную пропускную способность, и (N+1)-й столбец представляет собой накопленную фактическую пропускную способность. Элемент в (i+1)-й строке (N+3)-го столбца представляет собой разность между пропускной способностью линии связи, соответствующей (i+1)-й строке, и пропускной способностью линии связи, соответствующей i-й строке, и элемент в 1-й строке (N+3)-го столбца является значением первого типа пропускной способности линии связи. Элемент в (i+1)-й строке (N+2)-го столбца представляет собой сумму элемента в i-й строке (N+2)-го столбца и произведения элемента в (i+1)-й строке (N+3)-го столбца на количество первых элементов, включенных в (i+1)-ю строку в N столбцах, и элемент в 1-й строке (N+2)-го столбца представляет собой количество первых элементов, включенных в 1-ю строку N столбцов. Элемент в (i+1)-й строке (N+1)-го столбца представляет собой сумму элемента в i-й строке (N+1)-го столбца и произведения элемента в (i+1)-й строке (N+3)-го столбца на количество первых элементов, включенных в (i+1)-ю строку N–Y столбцов N столбцов, где Y – количество линий связи, чьи статусы представляют собой неисправное состояние, и диапазон значений Y составляет от 0 до N–1; и элемент в 1-й строке (N+3)-го столбца представляет собой количество первых элементов, включенных в 1-ю строку N–Y столбцов N столбцов.
В реализации (N+1)-й столбец, (N+2)-й столбец и (N+3)-й столбец матрицы пропускных способностей линий связи также могут храниться отдельно в виде вектора.
Когда матрица пропускных способностей линий связи представляет собой вышеупомянутую матрицу пропускных способностей линий связи, процесс реализации определения первой линии связи из N линий связи на основе матрицы пропускных способностей линий связи, первого хеш-значения и статусов линий связи, соответствующих N линиям связи может включать в себя: определение первого значения k1 на основе элемента в M-й строке (N+2)-го столбца и первого хеш-значения; определение, начиная с элемента в 1-й строке (N+2)-го столбца, номера Z строки элемента, чье значение больше k1; определение второго значения k2 на основе k1, элемента в (Z-1)-й строке (N+2)-го столбца и элемента в Z-й строке (N+3)-го столбца; и определение первой линии связи на основе элемента в Z-й строке N столбцов, k2 и статусов линий связи, соответственно, соответствующих N линиям связи.
В реализации процесс реализации определения первой линии связи на основе элемента в Z-й строке N столбцов, k2 и статусов линий связи, соответствующих N линиям связи, может включать в себя: поиск элементов в Z-й строке N столбцов для столбца, в котором расположен k2-й первый элемент; и, если статус линии связи, соответствующий столбцу, в котором расположен k2-й первый элемент, представляет собой нормальное состояние, определение линии связи, соответствующей столбцу, в котором расположен k2-й первый элемент, в качестве первой линии связи.
В реализации, если статус линии связи, соответствующий найденному столбцу, в котором расположен k2-й первый элемент, представляет собой неисправное состояние, способ может дополнительно включать в себя: определение третьего значения k3 на основе первого хеш-значения и элемента в P-й строке (N+1)-го столбца, где P – количество типов пропускных способностей линий связи, соответствующих оставшимся N–Y линиям связи, за исключением Y линий связи, чьи статусы представляют собой неисправное состояние; определение, начиная с элемента в 1-й строке (N+1)-го столбца, номера Z’ строки элемента, чье значение больше k3; определение четвертого значения k4 на основе k3, элемента в (Z'–1)-й строке (N+1)-го столбца и элемента в Z'-й строке (N+3)-го столбца; и поиск элементов в Z'-й строке N–Y столбцов для столбца, в котором расположен k4-й первый элемент, и определение линии связи, соответствующей столбцу, в котором расположен k4-й первый элемент, в качестве первой линии связи.
В вариантах осуществления настоящей заявки линия связи для переадресации потока услуг может быть определена путем выполнения операции хеширования над идентификационной информацией потока услуг и путем поиска матрицы пропускных способностей линий связи без необходимости выполнения операции хеширования над идентификационной информацией каждой линии связи или каждого устройства переадресации. Это позволяет уменьшить объем вычислений и повышает эффективность балансировки нагрузки. В вариантах осуществления настоящей заявки, когда определенная линия связи является неисправной, может быть определена другая нормальная линия связи путем выполнения второй операции для обхода неисправной линии связи для переадресации потока услуг. Это позволяет повысить стабильность переадресации услуг и эффективность балансировки нагрузки.
В другой возможной реализации матрица пропускных способностей линий связи является матрицей Mx(N+2), где M не меньше 1, i-я строка в M строках соответствует i-му типу пропускной способности линии связи, диапазон значений i составляет от 1 до M, j-й столбец в N столбцах соответствует j-й линии связи, количество x первых элементов, включенных в j-й столбец, используется для указания того, что j-я линии связи использует x-й тип пропускной способности линии связи, диапазон значений x составляет от 1 до M, (N+2)-й столбец представляет собой сконфигурированную пропускную способность, и (N+1)-й столбец представляет собой фактическую пропускную способность. Элемент в i-й строке (N+2)-го столбца представляет собой количество первых элементов, включенных в i-ю строку N столбцов. Элемент в i-й строке (N+1)-го столбца представляет собой количество первых элементов, включенных в i-ю строку N–Y столбцов N столбцов, где Y – количество линий связи, чьи статусы представляют собой неисправное состояние, и диапазон значений Y составляет от 0 до N–1.
Когда матрица пропускных способностей линий связи является матрицей пропускных способностей линий связи второго типа, процесс реализации определения первой линии связи из N линий связи на основе матрицы пропускных способностей линий связи, первого хеш-значения и статусов линий связи, соответственно, соответствующих N линий связи, может включать в себя: определение пятого значения t1 на основе М и первого хеш-значения, где t1 находится в диапазоне от 1 до М; определение шестого значения t2 на основе 1-го элемента с 1-й строки по M-ю строку (N+2)-го столбца и первого хеш-значения; и определение первой линии связи на основе t1, t2, матрицы пропускных способностей линий связи и статусов линий связи, соответственно, соответствующих N линиям связи.
В реализации процесс реализации определения первой линии связи на основе t1, t2, матрицы пропускных способностей линий связи и статусов линий связи, соответствующих N линиям связи, может включать в себя: поиск, в соответствии с заданным направлением, t1-й строки N столбцов для столбца, в котором расположен t2-й первый элемент; и, если статус линии связи, соответствующий столбцу, в котором расположен t2-й первый элемент, представляет собой нормальное состояние, определение линии связи, соответствующей столбцу, в котором расположен t2-й первый элемент, в качестве первой линии связи.
В реализации, если статус линии связи, соответствующий столбцу, в котором расположен t2-й первый элемент, представляет собой неисправное состояние, процесс реализации может дополнительно включать в себя: определение седьмого значения t3 на основе первого хеш-значения и P, где P – количество типов пропускных способностей линий связи, соответствующих оставшимся N–Y линиям связи, за исключением Y линий связи, чьи статусы представляют собой неисправное состояние; определение восьмого значения t4 на основе t3-го элемента с 1-й строки по M-ю строку (N+1)-го столбца и первого хеш-значения; поиск t3-й строки N–Y столбцов для столбца, в котором расположен t4 первый элемент; и определение линии связи, соответствующей столбцу, в котором расположен t4-й первый элемент, в качестве первой линии связи.
В реализации, для вышеупомянутых двух матриц пропускных способностей линий связи, матрица пропускных способностей линий связи может дополнительно включать в себя (M+1)-ю строку, и элемент в j-ом столбце (M+1)-й строки используется для указания статуса линии связи, соответствующего j-й линии связи. То есть (M+1)-я строка матрицы пропускных способностей линий связи может использоваться для хранения статуса линии связи, соответствующего каждой линии связи.
В реализации первый поток услуг может быть потоком услуг многоадресной передачи. В этом случае, после определения, на основе матрицы пропускных способностей линий связи, идентификационной информации первого потока услуг и статусов линий связи, соответственно, соответствующих N линиям связи, первой линии связи для переадресации первого потока услуг из N линий связи, первое устройство переадресации переадресует первый поток услуг через первую линию связи, если первая линия связи является линией связи, соответствующей первому устройству переадресации, и пропускает переадресацию первого потока услуг, если первая линия связи не является линией связи, соответствующей первому устройству переадресации.
Способ определения линии связи для переадресации потока услуг, предусмотренный в вариантах осуществления настоящей заявки, может быть применен к сценарию многоадресной передачи. В этом сценарии N линий связи могут быть линиями связи в множестве устройств переадресации, и каждое из множества устройств переадресации может определить, в соответствии с вышеизложенным способом, первую линию связи для переадресации первого потока услуг. Таким образом, после определения первой линии связи первое устройство переадресации может определить то, является ли первая линия связи линией связи первого устройства переадресации. Если первая линия связи является линией связи первого устройства переадресации, то первое устройство переадресации выполняет переадресацию; или, если первая линия связи не является линией связи первого устройства переадресации, то первое устройство переадресации не выполняет переадресацию. Таким образом, в сценарии многоадресной передачи реализуется балансировка нагрузки множества потоков услуг в множестве устройств переадресации.
В реализации в сценарии многоадресной передачи, перед определением линии связи для переадресации потока услуг, первое устройство переадресации может дополнительно получить информацию о конфигурации как первого устройства переадресации, так и другого устройства переадресации, где информация о конфигурации включает в себя информацию о группе балансировки нагрузки, к которой принадлежат первое устройство переадресации и другое устройство переадресации, и пропускную способность N линий связи, включенных в группу балансировки нагрузки. Первое устройство переадресации генерирует матрицу пропускных способностей линий связи на основе информации о конфигурации.
Информация о конфигурации другого устройства переадресации отправляется другим устройством переадресации в первое устройство переадресации. В качестве альтернативы, информация о конфигурации другого устройства переадресации может быть статически сконфигурирована в первом устройстве переадресации.
В реализации первый поток услуг в вариантах осуществления настоящей заявки альтернативно может быть потоком услуг одноадресной передачи. В этом случае, после определения, на основе матрицы пропускных способностей линий связи, идентификационной информации первого потока услуг и статусов линий связи, соответственно, соответствующих N линиям связи, первой линии связи для переадресации первого потока услуг в N линиях связи, первое устройство переадресации может переадресовать первый поток услуг по первой линии связи.
Способ определения линии связи для переадресации потока услуг, предусмотренный в вариантах осуществления настоящей заявки, может быть дополнительно применен к сценарию услуги одноадресной передачи. В этом случае в первом устройстве переадресации может быть N линий связи. После приема потока услуг первое устройство переадресации может определить, в соответствии со способом, предусмотренным в вариантах осуществления настоящей заявки, конкретную линию связи в N линиях связи для отправки потока услуг. Это позволяет реализовать балансировку нагрузки множества потоков услуг в множестве линий связи одного устройства переадресации.
В реализации сценария услуг одноадресной передачи, перед определением линии связи для переадресации потока услуги, первое устройство переадресации может дополнительно получить идентификаторы линий связи и пропускные способности линий связи для N линий связи и сгенерировать матрицу пропускных способностей линий связи на основе идентификаторов линий связи и пропускных способностей N линий связи. Идентификаторы линий связи и пропускные способности линии связи N линий связи могут быть статически сконфигурированы в первом устройстве переадресации.
Согласно второму аспекту настоящая заявка дополнительно предоставляет устройство для определения линии связи для переадресации потока услуг, где устройство для определения линии связи для переадресации потока услуг имеет соответствующие функции реализации способа определения линии связи для переадресации потока услуг, предусмотренного в первом аспекте. Устройство для определения линии связи для переадресации потока услуг включает в себя по меньшей мере один модуль, и по меньшей мере один модуль выполнен с возможностью реализации способа определения линии связи для переадресации потока услуг, предусмотренного в первом аспекте.
Согласно третьему аспекту настоящая заявка дополнительно предусматривает сетевое устройство. Структура сетевого устройства включает в себя процессор и память. Память выполнена с возможностью хранения программы, которая поддерживает сетевое устройство при выполнении способа определения линии связи для переадресации потока услуг, предусмотренного в первом аспекте, и хранения данных, используемых для реализации способа определения линии связи для переадресации потока услуг, предусмотренного в первом аспекте. Процессор выполнен с возможностью исполнения программы, хранящейся в памяти. Операционное устройство запоминающего устройства может дополнительно включать в себя коммуникационную шину, и коммуникационная шина выполнена с возможностью установления соединения между процессором и памятью.
Согласно четвертому аспекту предусмотрен машиночитаемый носитель информации. На машиночитаемом носителе информации хранятся инструкции. Когда инструкции исполняются на компьютере, компьютер выполняет способ определения линии связи для переадресации потока услуг согласно первому аспекту.
Согласно пятому аспекту предоставляется компьютерный программный продукт, включающий в себя инструкции. Когда компьютерный программный продукт запускается на компьютере, компьютер выполняет способ определения линии связи для переадресации потока услуг согласно первому аспекту.
Технические эффекты, достигаемые во втором аспекте, третьем аспекте, четвертом аспекте и пятом аспекте, аналогичны тем, которые достигаются соответствующими техническими средствами в первом аспекте. В данном документе подробности повторно не описываются.
Положительные эффекты, обеспечиваемые техническими решениями, представленными в настоящей заявке, включают в себя по меньшей мере следующее: В вариантах осуществления настоящей заявки нет необходимости выполнять операцию хеширования на основе идентификатора устройства каждого устройства переадресации, и устройство переадресации, которое выполняет переадресацию, не нужно определять путем сравнения множества хеш-значений. Таким образом, объем вычислений является маленьким, а эффективность высокой.
Краткое описание чертежей
Фиг. 1 – схематичное представление среды реализации, в которой способ определения линии связи для переадресации потока услуг применяется к сценарию услуги многоадресной передачи согласно варианту осуществления настоящей заявки;
фиг. 2 – схематичное представление среды реализации, в которой способ определения линии связи для переадресации потока услуг применяется к сценарию услуги одноадресной передачи согласно варианту осуществления настоящей заявки;
фиг. 3 – схематичное представление структуры сетевого устройства согласно варианту осуществления настоящей заявки;
фиг. 4 – схематичное представление структуры согласно варианту осуществления согласно варианту осуществления настоящей заявки;
фиг. 5 – схематичное представление структуры еще одного сетевого устройства согласно варианту осуществления настоящей заявки;
фиг. 6 – блок-схема последовательности операций способа определения линии связи для переадресации потока услуг согласно варианту осуществления настоящей заявки;
фиг. 7 – блок-схема последовательности операций другого способа определения линии связи для переадресации потока услуг согласно варианту осуществления настоящей заявки; и
фиг. 8 – схематичное представление структуры устройства для определения линии связи для переадресации потока услуг согласно варианту осуществления настоящей заявки.
Подробное описание изобретения
Чтобы сделать цели, технические решения и преимущества настоящей заявки более понятными, ниже дополнительно описаны реализации настоящей заявки в деталях со ссылкой на сопроводительные чертежи.
На фиг. 1 показано схематичное представление среды реализации, в которой способ определения линии связи для переадресации потока услуг применяется к сценарию услуги многоадресной передачи согласно варианту осуществления настоящей заявки. Как показано на фиг. 1, среда реализации может включать в себя первое устройство 101 переадресации, второе устройство 102 переадресации, передающую сторону 103 многоадресной передачи и приемную сторону 104 многоадресной передачи. И первое устройство 101 переадресации, и второе устройство 102 переадресации устанавливают коммуникационное соединение с приемной стороной 104 многоадресной передачи. В дополнение к этому, как первое устройство 101 переадресации, так и второе устройство 102 переадресации могут устанавливать коммуникационное соединение с передающей стороной 103 многоадресной передачи.
В возможной реализации первое устройство переадресации 101 и второе устройство 102 переадресации могут обмениваться данными с приемной стороной 104 многоадресной передачи через коммутатор 105. После приема потока услуг многоадресной передачи, отправленного передающей стороной 103 многоадресной передачи, первое устройство 101 переадресации и второе устройство 102 переадресации могут определить, в соответствии со способом определения линии связи для переадресации потока услуг, предусмотренным в данном варианте осуществления настоящей заявки, линию связи для переадресации потока услуг многоадресной передачи. После определения того, что линия связи является линией связи, соответствующей первому устройству 101 переадресации или второму устройству 102 переадресации, соответствующее устройство переадресации переадресует поток услуг многоадресной передачи по линии связи, и другое устройство переадресации не переадресует поток услуг многоадресной передачи. Таким образом, реализуется балансировка нагрузки для различных потоков услуг многоадресной передачи. Первое устройство 101 переадресации и второе устройство 102 переадресации по отдельности обмениваются данными с приемной стороной 104 многоадресной передачи через интерфейс уровня 2. В качестве альтернативы, первое устройство переадресации 101 и второе устройство 102 переадресации могут по отдельности взаимодействовать с приемной стороной 104 многоадресной передачи через интерфейс агрегирования линий связи Ethernet (Eth-trunk).
В дополнение к этому, в данном варианте осуществления настоящей заявки первое устройство 101 переадресации и второе устройство 102 переадресации могут быть подключены к передающей стороне 103 многоадресной передачи с использованием независимой от протокола многоадресной передачи (protocol independent multicast, PIM). В качестве альтернативы, первое устройство 101 переадресации и второе устройство 102 переадресации могут быть подключены к передающей стороне 103 многоадресной передачи через виртуальную частную сеть Ethernet (ethernet virtual private network, EVPN). Кроме того, первое устройство 101 переадресации и второе устройство 102 переадресации могут быть подключены к передающей стороне 103 многоадресной передачи с использованием виртуальной частной сети многоадресной передачи (multicast virtual private network, MVPN).
Первое устройство 101 переадресации и второе устройство 102 переадресации могут быть маршрутизаторами или могут быть другими сетевыми устройствами, имеющими функцию маршрутизации и переадресации. Это не ограничивается данным вариантом осуществления настоящей заявки. В дополнение к этому, на фиг. 1, только два устройства переадресации используются в качестве примера для описания среды реализации данного варианта осуществления настоящей заявки. При реальном применении может быть более двух устройств переадресации, например, может быть три, четыре или более устройств переадресации. В этом случае каждое устройство переадресации может использовать способ, предусмотренный в данном варианте осуществления настоящей заявки, для определения линии связи, соответствующей каждому принятому потоку услуг многоадресной передачи, и переадресации каждого соответствующего потока услуг многоадресной передачи, чтобы реализовать балансировку нагрузки для потоков услуг многоадресной передачи.
На фиг. 2 показано схематичное представление среды реализации, в которой способ определения линии связи для переадресации потока услуг применяется в сценарии услуги одноадресной передачи согласно варианту осуществления настоящей заявки. Как показано на фиг. 2, среда реализации может включать в себя первое устройство 101 переадресации, второе устройство 102 переадресации, множество первых клиентов 103 и множество вторых клиентов 104. Все множество первых клиентов 103 может взаимодействовать с первым устройством 101 переадресации, первое устройство 101 переадресации может взаимодействовать со вторым устройством 102 переадресации, и второе устройство 102 переадресации может взаимодействовать с множеством вторых клиентов 104.
Как показано на фиг. 2, интерфейс Eth-Trunk A может быть сконфигурирован как в первом устройстве 101 переадресации, так и во втором устройстве 102 переадресации. Интерфейс Eth-Trunk A может включать в себя множество интерфейсов-участников, например, может включать в себя три интерфейса-участника: интерфейсы-участники 1-3. Интерфейсы-участники 1-3 в первом устройстве 101 переадресации, соответственно, соответствуют интерфейсам-участникам 1-3 во втором устройстве 102 переадресации, образуя три линии связи.
Когда какой-либо первый клиент 103 отправляет поток услуг одноадресной передачи в качестве передающей стороны, первое устройство переадресации 101 может определить, в соответствии со способом, предусмотренным в данном варианте осуществления настоящей заявки, линию связи для переадресации потока услуг одноадресной передачи, и затем переадресовать поток услуг одноадресной передачи через соответствующий интерфейс-участник. Соответственно, второе устройство 102 переадресации может принимать поток услуг одноадресной передачи через соответствующий интерфейс-участник и переадресовать поток услуг одноадресной передачи соответствующему второму клиенту. Когда какой-либо второй клиент 104 отправляет поток услуг одноадресной передачи в качестве передающей стороны, в предыдущей реализации первого устройства 101 переадресации второе устройство 102 переадресации может переадресовать поток услуг одноадресной передачи. Первое устройство 101 переадресации и второе устройство 102 переадресации могут быть сетевыми устройствами, которые имеют функцию переадресации данных, такую как функция маршрутизации и функция коммутации.
На фиг. 3 показано схематичное представление структуры сетевого устройства согласно варианту осуществления настоящей заявки. Сетевое устройство имеет функции, реализованные первым устройством переадресации и вторым устройством переадресации, показанными на фиг. 1 или фиг. 2. Функции могут быть реализованы на основе аппаратных средств или могут быть реализованы путем выполнения соответствующего программного обеспечения на основе аппаратных средств. Аппаратные средства или программное обеспечение включают в себя один или несколько модулей, соответствующих функциям.
На фиг. 3, сетевое устройство включает в себя по меньшей мере один процессор 301, коммуникационную шину 302, память 303 и по меньшей мере один интерфейс 304 связи.
Процессор 301 может быть сетевым процессором (network processing unit, NPU), центральным процессором общего назначения (central processing unit, CPU), микропроцессором, специализированной интегральной схемой (application-specific integrated circuit, ASIC) или одной или нескольким интегральными схемами, выполненными с возможностью управления исполнения программы решений в настоящей заявке.
Коммуникационная шина 302 может включать в себя линию связи и передавать информацию между вышеупомянутыми компонентами.
Память 303 может быть постоянной памятью (read-only memory, ROM) или другим типом статического запоминающего устройства, которое может хранить статическую информацию и инструкции, оперативной памятью (random access memory, RAM) или другим типом динамического запоминающего устройства, которое может хранить информацию и инструкции, или может представлять собой электрически стираемое программируемое постоянное запоминающее устройство (electrically erasable programmable read-only memory, EEPROM), постоянное запоминающее устройство на компакт-диске (compact disc read-only memory, CD-ROM) или другой накопитель на компакт-диске, накопитель на оптических дисках (включая оптический компакт-диск, лазерный диск, оптический диск, универсальный цифровой диск, диск Blu-ray и т.п.), носитель информации на магнитном диске или другое магнитное запоминающее устройство или любой другой носитель информации, который можно использовать для переноса или хранения необходимого программного кода в виде инструкций или структуры данных и к которому может получить доступ компьютер. Однако память не ограничивается вышеперечисленным. Память 303 может существовать независимым образом и может быть подключена процессору 301 через коммуникационную шину 302. В качестве альтернативы, память 303 может быть интегрирована с процессором 301.
Интерфейс 304 связи выполнен с возможностью поддержания связи с другим устройством или сетью связи с использованием любого устройства приемопередающего типа, например, Ethernet, сети радиодоступа (radio access network, RAN) или беспроводной локальной сети (wireless local area network, WLAN).
Во время конкретной реализации, в варианте осуществления, процессор 301 может включать в себя один или несколько CPU, например, CPU 0 и CPU 1, которые показаны на фиг. 2.
Во время конкретной реализации, в варианте осуществления, сетевое устройство может включать в себя множество процессоров, например, процессор 301 и процессор 305, показанные на фиг. 3. Каждый из процессоров может быть одноядерным (однопроцессорным) процессором или многоядерным (многопроцессорным) процессором. В данном документе процессор может быть одним или несколькими устройствами, схемами и/или процессорными ядрами, выполненными с возможностью обработки данных (например, инструкций компьютерной программы).
Память 303 выполнена с возможностью хранения программного кода, используемого для выполнения решения настоящей заявки, где программный код исполняется под управлением процессора 301. Процессор 301 выполнен с возможностью исполнения программного кода 306, хранящегося в памяти 303. Программный код 306 может включать в себя один или несколько программных модулей. Сетевое устройство может реализовать способ в любой возможной реализации следующих способов с использованием процессора 301 и одного или нескольких программных модулей в программном коде 306 в памяти 303.
Согласно фиг. 4, в другой возможной конструкции сетевое устройство может включать в себя процессор 401, передатчик 402, приемник 403, оперативную память 404, постоянную память 405 и шину 406. Процессор 401 подключен к передатчику 402, приемнику 403, оперативной памяти 404 и постоянной памяти 405 через шину 406. Когда сетевое устройство необходимо запустить, сетевое устройство запускается с использованием базовой системы ввода/вывода, встроенной в постоянную память или загрузчик операционной системы во встроенной системе, чтобы загрузить сетевое устройство для перехода в нормальное рабочее состояние. После того, как сетевое устройство переходит в нормальное рабочее состояние, прикладная программа и операционная система запускаются в оперативной памяти, чтобы позволить процессору выполнять способ в любой возможной реализации следующих способов, представленных в следующих вариантах осуществления.
Согласно фиг. 5, в другом возможном исполнении сетевое устройство включает в себя главную плату 501 управления и интерфейсную плату 502 и может дополнительно включать в себя коммутационную плату 503. Сетевое устройство выполнено с возможностью выполнения способа в любой возможной реализации следующих способов. В частности, сетевое устройство включает в себя модуль, выполненный с возможностью выполнения способа в любой возможной реализации следующих способов.
В другом возможном исполнении сетевое устройство включает в себя контроллер и первое подустройство переадресации. Первое подустройство переадресации включает в себя интерфейсную плату и может дополнительно включать в себя коммутационную плату. Первое подустройство переадресации выполнено с возможностью выполнения функции интерфейсной платы и может дополнительно выполнить функцию вышеупомянутой коммутационной платы. Контроллер включает в себя приемник, процессор, передатчик, оперативную память, постоянную память и шину. Процессор подключен к приемнику, передатчику, оперативной памяти и постоянной памяти через шину. Когда контроллер необходимо запустить, он запускается с помощью базовой системы ввода-вывода, встроенной в постоянную память, или загрузчика операционной системы во встроенной системе, чтобы загрузить контроллер и перейти в нормальное рабочее состояние. После того, как контроллер переходит в нормальное рабочее состояние, прикладная программа и операционная система запускаются в оперативной памяти, чтобы позволить процессору исполнять функцию главной платы управления, представленную в предыдущем аспекте.
Ниже представлено описание способов определения линии связи для переадресации потока услуг, предусмотренных в вариантах осуществления настоящей заявки.
На фиг. 6 и фиг. 7 показаны блок-схемы последовательностей операций двух способов определения линии связи для переадресации потока услуг согласно вариантам осуществления настоящей заявки. Фиг. 6 используется в случае, когда одна линия связи выбирается из множества линий связи на одном устройстве переадресации для выполнения балансировки нагрузки, например, в Eth-магистральном сценарии услуги многоадресной передачи, показанном на фиг. 2. Фиг. 7, используется в случае, когда одна линия связи выбирается из множества линий связи, соответствующих множеству устройств переадресации, для выполнения балансировки нагрузки, например, в сценарии услуги многоадресной передачи, показанном на фиг. 1. Способы могут быть применены к любому устройству переадресации, показанному на фиг. 1 или фиг. 2. В вариантах осуществления используется пример, в котором способы применяются в первом устройстве переадресации с тем, чтобы описать процесс реализации способов. Согласно фиг. 6 и фиг. 7, способы включают в себя следующие этапы.
Этап 601: первое устройство переадресации получает идентификационную информацию первого потока услуг.
В данном варианте осуществления настоящей заявки первое устройство переадресации может принимать первый поток услуг и получать идентификационную информацию первого потока услуг. В соответствии с различными сценариями применения первый поток услуг может быть потоком услуг многоадресной передачи или потоком услуги многоадресной передачи.
Идентификационная информация первого потока услуг может быть информацией, которая может однозначно идентифицировать поток услуг. Например, идентификационная информация первого потока услуг может представлять собой информацию из 5 кортежей в полученном пакете первого потока услуг или исходный адрес IPv6 и метку потока заголовка IPv6 в полученном пакете первого потока услуг. В качестве альтернативы, метка потока заголовка IPv6 в полученном пакете первого потока услуг может быть непосредственно использована в качестве идентификационной информации первого потока услуг.
Этап 602: первое устройство переадресации определяет, на основе матрицы пропускных способностей линий связи, идентификационной информации первого потока услуг и статусов линий связи, соответствующих N линиям связи, первую линию связи для переадресации первого потока услуг из N линий связи, где матрица пропускных способностей линий связи указывает пропускную способность линии связи, соответствующую N линиям связи, и N не меньше 2.
После получения идентификационной информации первого потока услуг первое устройство переадресации может выполнить хеш-операцию над идентификационной информацией первого потока услуг, чтобы получить первое хеш-значение, и определить первую линию связи из N линий связи на основе матрицы пропускных способностей линий связи, первого хеш-значения и статусов линий связи, соответствующих N линиям связи.
Матрица пропускных способностей линий связи может быть реализована по-разному, и способы определения первой линии связи соответственно, различаются на основе матрицы пропускных способностей линий связи, первого хеш-значения и статусов линий связи, соответствующих N линиям связи. Далее подробно описаны две возможные реализации, представленные в данном варианте осуществления настоящей заявки.
Реализация 1
В этой реализации матрица пропускных способностей линий связи является матрицей Mx(N+3), где M не меньше 1. M может быть равно 1 или может иметь другое значение не меньше 2. i-я строка в M строках соответствует i-му типу пропускной способности линии связи. Значение i представляет собой целое число, большее или равное 1 и меньшее или равное M, то есть диапазон значений i представляет собой диапазон целочисленных значений, определяемый от 1 до M. j-й столбец в N столбцах соответствует j-ой линии связи и, количество x первых элементов, включенных в j-й столбец, используется для указания того, что j-я линия связи использует x-й тип пропускной способности линии связи. Диапазон значений x составляет от 1 до M. (N+3)-й столбец представляет собой разность пропускных способностей, (N+2)-й столбец представляет собой накопленную сконфигурированную пропускную способность, и (N+1)-й столбец представляет собой накопленную фактическую пропускную способность.
Элемент в (i+1)-й строке (N+3)-го столбца представляет собой разность между пропускной способностью линии связи, соответствующей (i+1)-й строке, и пропускной способностью линии связи, соответствующей i-й строке. Элемент в 1-й строке (N+3)-го столбца представляет собой значение первого типа пропускной способности линии связи.
Элемент в (i+1)-й строке (N+2)-го столбца представляет собой сумму элемента в i-й строке (N+2)-го столбца и произведения элемента в (i+1)-й строке (N+3)-го столбца на количество первых элементов, включенных в (i+1)-ю строку в N столбцах. Элемент в 1-й строке (N+2)-го столбца представляет собой количество первых элементов, включенных в 1-ю строку N столбцов.
Элемент в (i+1)-й строке (N+1)-го столбца представляет собой сумму элемента в i-й строке (N+1)-го столбца и произведения элемента в (i+1)-й строке (N+3)-го столбца на количество первых элементов, включенных в (i+1)-ю строку N–Y столбцов N столбцов, где Y – количество связей статусы представляют собой неисправное состояние, и диапазон значений Y составляет от 0 до N–1. Элемент в 1-й строке (N+3)-го столбца представляет собой количество первых элементов, включенных в 1-ю строку N–Y столбцов N столбцов.
Как показано в приведенной ниже матрице в таблице 1, предполагается, что N равно 16, то есть имеется 16 линий связи, и М равно 7, то есть существует 7 типов пропускной способности линии связи. В этом случае матрица пропускных способностей линий связи является матрицей 7x(16+3).
Таблица 1. Схематичное представление матрицы пропускных способностей линий связи
Ном.0 | Ном.1 | Ном.2 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
\\ | 7 | 5 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 1 | 1 | 1 | LsBs |
60 | 267 | \\ | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | BwBs6( bw =100) |
20 | 147 | \\ | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | BwBs5 (чт = 40) |
10 | 107 | 67 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | BwBs4( чб = 20) |
6 | 77 | 57 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | BwBs3 (чт = 10) |
2 | 47 | 39 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | BwBs2(чб = 4) |
1 | 27 | 23 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | BwBs1 (чт = 2) |
1 | 16 | 14 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | BwBs0( bw =1) |
i-я строка в семи строках, включенных в матрицу, соответствует i-му типу пропускной способности линии связи. Значение i представляет собой целое число, большее или равное 1 и меньшее или равное 7, то есть диапазон значений i представляет собой диапазон целочисленных значений, определяемый от 1 до 7. Когда i=1, 1-я строка соответствует первому типу пропускной способности линии связи. Когда i=2, 2-я строка соответствует второму типу пропускной способности линии связи и т.д. В примере, представленном в таблице 1, BwBs(i–1) используется для представления i-го типа пропускной способности линии связи. В частности, в таблице 1 пропускная способность, представленная BwBs0, является пропускной способностью первого типа, пропускная способность, представленная BwBs1, является пропускной способностью второго типа, и, по аналогии, пропускная способность, представленная BwBs6, является пропускной способностью седьмого типа. В приведенном выше примере первый тип пропускной способности линии связи равен 1, второй тип пропускной способности линии связи равен 2, третий тип пропускной способности линии связи равен 4, четвертый тип пропускной способности линии связи равен 10, пятый тип пропускной способности линии связи равен 20, шестой тип пропускной способности линии связи равен 40, и седьмой тип пропускной способности линии связи равен 100.
j-й столбец в 16 столбцах, включенных в матрицу, соответствует j-й линии связи. Значение j представляет собой целое число, большее или равное 1 и меньшее или равное 16, то есть диапазон значений j представляет собой диапазон целочисленных значений, определяемый от 1 до 16. Когда j=1, элементы в 1-ом столбце соответствуют 1-й линии связи. Когда j=2, элементы во 2-ом столбце соответствуют 2-й линии связи и т.д. В примере, представленном в таблице 1, столбец, обозначенный j–1, соответствует j-й линии связи. Например, столбец, обозначенный 0 в таблице 1, соответствует 1-й линии связи, столбец, обозначенный 1 в таблице 1, соответствует 2-й линии связи, и, по аналогии, столбец, обозначенный 15 в таблице 1, соответствует 16-й линии связи.
В дополнение к этому, количество x первых элементов, включенных в j-й столбец из 16-ти столбцов, используется для указания того, что j-я линия связи использует x-й тип пропускной способности линии связи. Значение x представляет собой целое число, большее или равное 1 и меньшее или равное 7, то есть диапазон значений x является диапазоном целочисленных значений, определяемым от 1 до 7. Первые элементы могут включать в себя 1. Соответственно, оставшийся элемент в j-ом столбце может включать в себя элемент, отличный от первого элемента, например, может включать в себя 0. Разумеется, первые элементы могут альтернативно включать в себя другое значение при условии, что это значение отличается от значения другого элемента. Это не ограничивается данным вариантом осуществления настоящей заявки.
В таблице 1 в качестве примера используется первый элемент 1. В элементы 1-го столбца, соответствующего 1-й линии связи, которые обозначены 0, включены два первых элемента с 1-й строки по 7-ю строку. Таким образом, видно, что 1-я линия связи использует второй тип пропускной способности линии связи. В элементы 2-го столбца, соответствующего 2-й линии связи, которые обозначены 1, включены три первых элемента с 1-й строки по 7-ю строку. Таким образом, 2-я линия связи использует третий тип пропускной способности линии связи. Аналогичным образом, видно, что 3-я линия связи использует четвертый тип пропускной способности линии связи, 4-я линия связи и 5-я линия связи используют седьмой тип пропускной способности линии связи, и 6-я линия связи – 10-я линия связи используют первый тип пропускной способности линии связи. 11-я линия связи с 14-й линией связи использует третий тип пропускной способности линии связи. 15-я линия связи использует четвертый тип пропускной способности линии связи. А 16-я линия связи использует пятый тип пропускной способности линии связи.
Как показано в таблице 1, (N+3)-й столбец, то есть 19-й столбец, является столбцом, указывающим разность пропускных способностей, и представлен Num0. Элемент в 1-й строке 19-го столбца представляет собой значение первого типа пропускной способности линии связи, и элемент в (i+1)-й строке 19-го столбца представляет собой разность между пропускной способностью линии связи, соответствующей (i+1)-я строка и пропускной способностью линии связи, соответствующей i-й строке. Как показано в таблице 1, элемент во 2-й строке 19-го столбца представляет собой разность между пропускной способностью линии связи, соответствующей 2-й строке, и пропускной способностью линии связи, соответствующей 1-й строке, то есть 2–1=1. Элемент в 3-й строке 19-го столбца представляет собой разность между пропускной способностью линии связи, соответствующей 3-й строке, и пропускной способностью линии связи, соответствующей 2-й строке, то есть 4–2=2. Элемент в 4-й строке 19-го столбца представляет собой разность между пропускной способностью линии связи, соответствующей 4-й строке, и пропускной способностью линии связи, соответствующей 3-й строке, то есть 10–4=6. По аналогии видно, что элемент 5-й строки 19-го столбца равен 20–10=10, элемент 6-й строки равен 40–20=20, и элемент 7-й строки равен 100–40=60.
Как показано в таблице 1, (N+2)-й столбец, то есть 18-й столбец, представляет собой накопленную сконфигурированную пропускную способность линии связи и представлен Num1. Элемент в 1-й строке 18-го столбца представляет собой количество первых элементов, включенных в 1-ю строку из 16-ти столбцов, соответствующих 16-ти линиям связи. В примере, представленном в таблице 1, первый элемент равен 1. Как показано в таблице 1, количество единиц, включенных в 1-ю строку в 16 столбцах, равно 16. Таким образом, видно, что элемент в 1-й строке 18-го столбца равен 16. Элемент в (i+1)-й строке 18-го столбца является суммой произведения элементов в (i+1)-й строке (N+3)-го столбца на количество первых элементов, включенных в (i+1)-ю строку N столбцов и элемента в i-й строке (N+2)-го столбца. Как видно из таблицы 1, количество первых элементов, включенных во 2-ю строку 16 столбцов, соответствующих 16 линиям связи, равно 11, элемент во 2-й строке 19-го столбца равен 1, и элемент в 1-й строке 18-го столбца равен 16. Таким образом, элемент во 2-й строке 18-го столбца равен: 1x11+16=27. Аналогичным образом, элемент 3-й строки 18-го столбца представляет собой сумму произведения элемента 3-й строки 19-го столбца на количество первых элементов, включенных в 3-ю строку 16-го столбца, и элемента во 2-й строке 18-го столбца, то есть 2x10+27=47. Аналогичным образом, элемент в 4-й строке 18-го столбца равен 6x5+47=77, элемент в 5-й строке равен 10x3+77=107, элемент в 6-й строке равен 20x2+107=147, и элемент в 7-й строке равен 60x2+147=267.
Как показано в таблице 1, (N+1)-й столбец, то есть 17-й столбец, представляет собой накопленную фактическую пропускную способность и представлен Num2. Элемент в 1-й строке 17-го столбца представляет собой количество первых элементов, включенных в 1-ю строку 16–Y столбцов из 16-ти столбцов. Y – количество линий связи, чьи статусы представляют собой неисправное состояние.
В данном варианте осуществления настоящей заявки статус линии связи может быть представлен элементом, включенным в (M+1)-ю строку матрицы пропускных способностей линий связи. В частности, матрица пропускных способностей линий связи может дополнительно включать в себя (M+1)-ю строку, и элемент в j-ом столбце (M+1)-й строки может использоваться для указания статуса линии связи, соответствующего j-й линии связи. Как показано в таблице 1, элемент в 1-ом столбце 8-й строки матрицы пропускных способностей линий связи используется для указания статуса 1-й линии связи, элемент во 2-ом столбце 8-й строки используется для указания статуса второй линии связи и т.д. Элемент 1 указывает, что статус соответствующей первой линии связи представляет собой нормальное состояние, и элемент 0 указывает, что статус соответствующей первой линии связи представляет собой неисправное состояние. В качестве альтернативы, элемент, используемый для указания статуса линии связи, может иметь другое значение. Это не ограничивается в данном документе.
В примере, представленном в таблице 1, из элементов в 8-й строке матрицы пропускных способностей линий связи видно, что элементы в 4-ом столбце и 5-ом столбце 8-й строки равны 0. Таким образом, можно выяснить, что статусы 4-й первой линии связи и 5-й линии связи представляют собой неисправное состояние. То есть две из 16-ти линий связи являются неисправными. Соответственно, за исключением двух столбцов, соответствующих двум неисправным линиям связи из 16 столбцов, соответствующих 16 линиям связи, количество первых элементов, включенных в 1-ю строку оставшихся 14 столбцов, равно 14. Таким образом, элемент в 1-й строке 17-го столбца равен 14.
Элемент в (i+1)-й строке 17-го столбца представляет собой сумму произведения элемента в (i+1)-й строке (N+3)-го столбца на количество первых элементов, включенных в (i+1)-ю строку N–Y столбцов из N столбцов, и элемента в i-й строке (N+1)-го столбца. Как показано в таблице 1, элемент во 2-й строке 19-го столбца равен 1, за исключением двух столбцов, соответствующих неисправным линиям связи из 16 столбцов, соответствующих 16 линиям связи, количество первых элементов, включенных во 2-ю строку оставшихся 14 столбцов равно 9, и элемент в 1-й строке 17-го столбца равен 14. Таким образом, элемент во 2-й строке 17-го столбца равен 1x9+14=23. Аналогичным образом, элемент 3-й строки 17-го столбца представляет собой сумму элемента 2-й строки 17-го столбца и произведения элемента 3-й строки 19-го столбца на количество первых элементов, включенных в 3-ю строку оставшихся 14 столбцов, за исключением двух столбцов, соответствующих неисправным линиям связи. То есть значение равно 2x8+23=39. По аналогии элемент в 4-й строке 17-го столбца равен 6x3+39=57, элемент в 5-й строке равен 10x1+57=67, элемент в 6-й строке равен 20x0+67=67, и элемент в 7-й строке равен 60x0+67=67.
В приведенном выше примере имеется всего семь типов сконфигурированных пропускных способностей линии связи. Элемент в 8-й строке 18-го столбца может использоваться для указания того, что имеется семь типов сконфигурированных пропускных способностей линии связи, то есть элемент в 8-й строке 18-го столбца может быть равен 7. Имеется шесть типов пропускной способности линии связи, соответствующих 16 линиям связи: 1, 2, 4, 10, 20 и 100. После удаления пропускной способности bw=100 линии связи, соответствующей двум неисправным линиям связи в 16 линиях связи, имеется пять типов пропускной способности линии связи, соответствующих остальным 14 линиям связи, то есть 1, 2, 4, 10 и 20. Элемент в 8-й строке 17-го столбца может использоваться для представления количества типов пропускной способности линии связи, соответствующих линиям связи в статусе нормального состояния. Соответственно, в данном варианте осуществления настоящей заявки могут быть вычислены элементы в строках с1-ю по 5-ю 17-го столбца, и элементы в оставшихся двух строках могут не вычисляться.
В некоторых возможных реализациях статус каждой линии связи также может храниться отдельно в виде вектора статусов линий связи. В этом случае матрица пропускных способностей линий связи может не включать в себя (M+1)-ю строку. Таблица 1 используется в качестве примера. Матрица пропускных способностей линий связи может не включать в себя 8-ю строку, и 8-я строка может храниться отдельно в виде вектора статусов линий связи. Таким образом, при использовании статуса линии связи первое устройство переадресации может определить статус линии связи для каждой первой линии связи непосредственно с использованием вектора статусов линий связи.
В некоторых других возможных реализациях каждый из (N+1)-го столбца, (N+2)-го столбца и (N+3)-го столбца в матрице пропускных способностей линий связи может храниться в виде вектора. Это не ограничивается данным вариантом осуществления настоящей заявки.
Когда матрица пропускных способностей линий связи является матрицей пропускных способностей линий связи в реализации 1, процесс, в котором первое устройство переадресации определяет первую линию связи для переадресации первого потока услуг, может включать в себя: определение первого значения k1 на основе элемента в M-й строке (N+2)-го столбца и первого хеш-значения; определение, начиная с элемента в i-й строке (N+2)-го столбца, номера Z строки элемента, чье значение больше k1; определение второго значения k2 на основе k1, элемента в (Z-1)-й строке (N+2)-го столбца и элемента в Z-й строке (N+3)-го столбца; и определение первой линии связи на основе элемента в Z-й строке N столбцов, k2 и статусов линий связи, соответственно, соответствующих N линиям связи.
Например, первое устройство переадресации может получить первое хеш-значение путем выполнения операции хеширования над идентификационной информацией первого потока услуг. Первое устройство переадресации может выполнять операцию по модулю над первым хеш-значением и элементом в M-й строке (N+2)-го столбца и добавлять 1 к значению, полученному в ходе операции по модулю, для получения k1. Затем первое устройство переадресации может определить, начиная с элемента в 1-й строке (N+2)-го столбца, номер Z строки элемента, чье значение больше k1. После определения Z первое устройство переадресации может вычислить разность между k1 и элементом в (Z–1)-й строке (N+2)-го столбца, вычислить отношение разности к элементу в Z-й строке (N+3)-го столбца и округлить отношение, чтобы получить второе значение k2. Если Z=1, непосредственно определяется то, что k2 =Z=1.
Таблица 1 используется в качестве примера. Элемент в M-й строке (N+2)-го столбца является элементом 267 в 7-й строке 18-го столбца. Предполагается, что первое устройство переадресации выполняет операцию по модулю над первым хеш-значением и элементом 267 и получает k1 =100. Первое устройство переадресации может отыскивать, начиная с элемента в 1-й строке 18-го столбца, строку, в которой находится элемент, чье значение больше 100. Из таблицы 1 видно, что значение элемента в 5-й строке больше 100 и, следовательно, Z=5. Первое устройство переадресации может вычислить разность между k1 и элементом в 4-й строке 18-го столбца, где разность составляет 100–77=23. Затем первое устройство переадресации может вычислить отношение разности 23 к элементу 10 в 5-й строке 19-го столбца и округлить это отношение, чтобы получить второе значение k2, равное 2.
После определения второго значения k2 первое устройство переадресации может отыскать элементы в Z-й строке N столбцов для столбца, в котором расположен k2-й первый элемент. Если статус линии связи, соответствующий столбцу, представляет собой нормальное состояние, первое устройство переадресации может определить линию связи, соответствующую столбцу, как первую линию связи.
Если статус линии связи, соответствующий найденному столбцу, в котором расположен k2-й первый элемент среди элементов в Z-й строке, представляет собой неисправное состояние, первое устройство переадресации может определить третье значение k3 на основе первого хеш-значения и элемента в P-й строке (N+1)-го столбца, где P – количество типов пропускной способности линии связи, соответствующих оставшимся N–Y линиям связи, за исключением Y линий связи, чьи статусы представляют собой неисправное состояние. Затем первое устройство переадресации определяет, начиная с элемента в 1-й строке (N+1)-го столбца, номер Z’ строки элемента, чье значение больше k3; определяет четвертое значение k4 на основе k3, элемента в (Z'–1)-й строке (N+1)-го столбца и элемента в Z'-й строке (N+3)-го столбца; отыскивает элементы в Z'-й строке N–Y столбцов для столбца, в котором расположен k4-й первый элемент; и определяет линию связи, соответствующую столбцу, в котором расположен k4-й первый элемент, в качестве первой линии связи.
Первое устройство переадресации может выполнять операцию по модулю над первым хеш-значением и элементом в M-й строке (N+1)-го столбца для получения k3. Затем первое устройство переадресации может определить, начиная с элемента в 1-й строке (N+1)-го столбца, номер Z’ строки элемента, чье значение больше k3. После определения Z' первое устройство переадресации может вычислить разность между k3 и элементом в (Z'–1)-й строке (N+1)-го столбца, вычислить отношение разности к элементу в Z'-й строки (N+3)-го столбца и округлить отношение, чтобы получить k4. Затем первое устройство переадресации отыскивает столбец k4-го первого элемента из элементов в Z'-й строке N–Y столбцов, соответствующих оставшимся N–Y линиям связи, за исключением Y неисправных линий связи, и определяет линию связи, соответствующую столбцу, в котором расположен k4-й первый элемент, в качестве первой линии связи.
Приведенная выше таблица 1 и Z=5 и k2=2 используются в качестве примера. Первое устройство переадресации может найти столбец, в котором расположен 2-й первый элемент из элементов в 5-й строке 16 столбцов, соответствующих 16 линиям связи. При поиске столбца, в котором расположен 2-й первый элемент из элементов в 5-й строке, первое устройство переадресации можно найти в порядке от 1-го столбца до 16-го столбца или в порядке от 16-го столбца до 1-го столбца. В этом случае найденный столбец, в котором расположен 2-й первый элемент, является 5-м столбцом. Затем первое устройство переадресации может определить статус линии связи, соответствующий 5-й линии связи. Так как элемент в 8-й строке 5-го столбца равен 0, статус 5-й линии связи представляет собой неисправное состояние. Таким образом, 5-ю линию связи нельзя использовать в качестве первой линии связи для переадресации первого потока услуг. В этом случае первое устройство переадресации может выполнить операцию по модулю над первым хеш-значением и элементом в P-й строке 17-го столбца. В этом примере, за исключением двух неисправных линий связи, имеется пять типов пропускных способностей линий связи, соответствующих оставшимся 14-ти линиям связи. Таким образом, P=5, и элемент в P-й строке 17-го столбца равен 67. Первое устройство переадресации может выполнить операцию по модулю над первым хеш-значением и 67 для получения k3. Предполагается, что k3=32. Первое устройство переадресации может определить, начиная с элемента в 1-й строке 17-го столбца, номер строки элемента, чье значение больше 32. Из таблицы 1 видно, что значение элемента в 3-й строке больше 32, поэтому Z'=3. Затем первое устройство переадресации вычисляет разность между k3 и элементом во 2-й строке 17-го столбца, и эта разность составляет 32–23=9. Первое устройство переадресации вычисляет отношение 9 к элементу 2 в 3-й строке 19-го столбца и округляет отношение. Таким образом, k4=4. Затем первое устройство переадресации отыскивает столбец, в котором расположен 4-й первый элемент из элементов в 3-й строке в 14 столбцах, соответствующих оставшимся 14-ти линиям связи, за исключением двух неисправных линий связи. Поиск может выполняться в порядке от 1-го столбца до 16-го столбца. В этом случае найденный столбец является 12-м столбцом. Так как статус линии связи, соответствующий 12-му столбцу, представляет собой нормальное состояние, 12-я линия связи может использоваться в качестве первой линии связи для переадресации первого потока услуг. Конечно, альтернативно поиск может выполняться в порядке от 16-го столбца к 1-му столбцу. В этом случае найденный столбец является 13-м столбцом. Так как статус линии связи, соответствующий 13-му столбцу, представляет собой нормальное состояние, 13-я линия связи может использоваться в качестве первой линии связи для переадресации первого потока услуг.
Реализация 2
В этой реализации матрица пропускных способностей линий связи является матрицей Mx(N+2), где M представляет собой целое число, большее или равное 1. M может быть равно 1 или может включать в себя другое значение, большее или равное 2. i-я строка в M строках соответствует i-му типу пропускной способности линии связи. Значение i представляет собой целое число, большее или равное 1 и меньшее или равное M, то есть диапазон значений i является диапазоном целочисленных значений, определяемым от 1 до M. j-й столбец в N столбцах соответствует j-й линии связи, и количество x первых элементов, включенных в j-й столбец, используется для указания того, что j-я линия связи использует x-й тип пропускной способности линии связи. Диапазон значений x составляет от 1 до M. (N+2)-й столбец представляет собой сконфигурированную пропускную способность, и (N+1)-й столбец представляет собой фактическую пропускную способность.
Элемент в i-й строке (N+2)-го столбца представляет собой количество первых элементов, включенных в i-ю строку в N столбцах.
Элемент в i-й строке (N+1)-го столбца представляет собой количество первых элементов, включенных в i-ю строку N–Y столбцов N столбцов, где Y – количество линий связи, чьи статусы представляют собой неисправное состояние, и диапазон значений Y составляет от 0 до N–1.
Как показано в таблице 2, предполагается, что N равно 16, то есть имеется 16 линий связи, и М равно 7, то есть имеется 7 типов пропускной способности линии связи. В этом случае матрица пропускных способностей линий связи является матрицей 7x(16+2).
Таблица 2. Схематичное представление матрицы пропускных способностей линий связи
Номер 1 | Номер 2 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
7 | 5 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 1 | 1 | 1 | LsBs7 |
2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | BwBs6 |
2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | BwBs5 |
3 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | BwBs4 |
5 | 3 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | BwBs3 |
10 | 8 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | BwBs2 |
11 | 9 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | BwBs1 |
16 | 14 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | BwBs0 |
i-я строка в семи строках матрицы соответствует i-му типу пропускной способности линии связи, и значение i представляет собой целое число, большее или равное 1 и меньшее или равное 7, то есть диапазон значений i является диапазоном целочисленных значений, определяемым от 1 до 7. Когда i=1, 1-я строка соответствует первому типу пропускной способности линии связи. Когда i=2, 2-я строка соответствует второму типу пропускной способности линии связи и т.д. В примере, представленном в таблице 2, BwBs(i–1) используется для представления i -го типа пропускной способности линии связи. В частности, в таблице 2 пропускная способность, представленная BwBs0, является пропускной способностью линии связи первого типа, пропускная способность, представленная BwBs1, является пропускной способностью второго типа, и, по аналогии, пропускная способность, представленная BwBs6, является пропускной способностью линии связи седьмого типа.
j-й столбец в 16 столбцах, включенных в матрицу, соответствует j-й линии связи. Значение j представляет собой целое число, большее или равное 1 и меньшее или равное 16, то есть диапазон значений j является диапазоном целочисленных значений, определяемым от 1 до 16. Когда j=1, элементы в 1-ом столбце соответствуют 1-й линии связи. Когда j=2, элементы во 2-ом столбце соответствуют 2-й линии связи и т.д. В примере, представленном в таблице 2, столбец, обозначенный j-1, соответствует j-й линии связи. Например, столбец, обозначенный 0 в таблице 2, соответствует 1-й линии связи, столбец, обозначенный 1 в таблице 2, соответствует 2-й линии связи, и, по аналогии, столбец, обозначенный 15 в таблице 2, соответствует 16-й линии связи.
В реализации матрица может дополнительно включать в себя (M+1)-ю строку, и элемент в j-ом столбце (M+1)-й строки используется для указания статуса j-й линии связи. Когда элемент в j-ом столбце (M+1)-й строки является первым элементом указания, статус j-й линии связи представляет собой нормальное состояние; или, когда элемент в j-ом столбце (M+1)-й строки является вторым элементом указания, статус j-й линии связи представляет собой неисправное состояние. В примере, представленном в таблице 2, (M+1)-я строка является 8-й строкой, первый элемент указания равен 1, и второй элемент указания равен 0. В качестве альтернативы, первый элемент указания может быть равен 0, и второй элемент указания может быть равен 1.
В варианте реализации матрица пропускных способностей линий связи может альтернативно не включать в себя (M+1)-ю строку. Вместо этого (M+1)-я строка может непосредственно использоваться в качестве вектора статуса линии связи для отдельного хранения. Например, в примере, представленном в таблице 2, элементы в 8-й строке могут быть сохранены в виде вектора статуса линии связи. При использовании статуса линии связи первое устройство переадресации может определить статус линии связи для каждой первой линии связи с использованием вектора статуса линии связи.
Количество x первых элементов, включенных в j-й столбец из 16-ти столбцов, используется для указания того, что j-я линия связи использует x-й тип пропускной способности линии связи. Значение x представляет собой целое число, большее или равное 1 и меньшее или равное 7, то есть диапазон значений x является диапазоном целочисленных значений, определяемым от 1 до 7. Первые элементы могут включать в себя 1. Соответственно, оставшийся элемент в j-ом столбце может включать в себя элемент, отличный от первого элемента, например, может включать в себя 0. Разумеется, первые элементы могут альтернативно включать в себя другое значение при условии, что это значение отличается от значения другого элемента. Это не ограничивается данным вариантом осуществления настоящей заявки.
В таблице 2 в качестве примера используется первый элемент 1. В элементы 1-го столбца, соответствующего 1-й линии связи, которые обозначены 0, включены два первых элемента с 1-й строки по 7-ю строку. Таким образом, видно, что 1-я линия связи использует второй тип пропускной способности линии связи. В элементы 2-го столбца, соответствующего 2-й линии связи, которые обозначены 1, включены три первых элемента с 1-й строки по 7-ю строку. Таким образом, 2-я линия связи использует третий тип пропускной способности линии связи. Аналогичным образом, видно, что 3-я линия связи использует четвертый тип пропускной способности линии связи, 4-я линия связи и 5-я линия связи используют седьмой тип пропускной способности линии связи, и 6-я линия связи – 10-я линия связи используют первый тип пропускной способности линии связи. 11-я линия связи с 14-й линией связи использует третий тип пропускной способности линии связи. 15-я линия связи использует четвертый тип пропускной способности линии связи, и 16-я линия связи использует пятый тип пропускной способности линии связи.
(N+2)-й столбец, то есть 18-й столбец, в матрице пропускных способностей линий связи представляет собой столбец, указывающий сконфигурированную пропускную способность, и представлен Num1. Элемент в i-й строке 18-го столбца представляет собой количество первых элементов, включенных в i-ю строку 16 столбцов, соответствующих 16 линиям связи. Например, элемент в 1-й строке 18-го столбца представляет собой количество первых элементов, включенных в 1-ю строку 16 столбцов, соответствующих 16 линиям связи. Как показано в таблице 2, 16 первых элементов включены в 1-ю строку 16 столбцов, соответствующих 16-ти линиям связи. Таким образом, элемент в 1-й строке 18-го столбца равен 16. Аналогичным образом, элемент во 2-й строке 18-го столбца представляет собой количество первых элементов, включенных во 2-ю строку 16 столбцов, соответствующих 16 линий связи, и количество, как показано в таблице 2, равно 11. Аналогичным образом, элемент в 3-й строке 18-го столбца равен 10, элемент в 4-й строке 18-го столбца равен 5, элемент в 5-й строке 18-го столбца равно 3, и элементы в 6-й строке и 7-й строке 18-го столбца равны 2.
(N+1)-й столбец, то есть 17-й столбец, в матрице пропускных способностей линий связи представляет собой столбец, указывающий фактическую пропускную способность, и представлен Num2. Элемент в i-й строке 17-го столбца представляет собой количество первых элементов, включенных в i-ю строку N–Y столбцов, соответствующих оставшимся N–Y нормальным линиям связи, за исключением Y неисправных линий связи из 16 линий связи. В таблице 2 4-я линия связи и 5-я линия связи в 16 линиях связи являются неисправными. Таким образом, элемент в i-й строке 17-го столбца представляет собой количество первых элементов, включенных в i-ю строку 14 столбцов, соответствующих оставшимся 14 нормальным линиям связи, за исключением двух неисправных линий связи в 16 линиях связи. Например, элемент в 1-й строке 17-го столбца представляет собой количество первых элементов, включенных в 1-ю строку из 14 столбцов, соответствующих 14 нормальным линиям связи, и, следовательно, количество равно 14. Элемент в 2-й строке 17-го столбца представляет собой количество первых элементов, включенных в 1-ю строку из 14 столбцов, соответствующих 14 нормальным линиям связи, и, следовательно, количество равно 9. Аналогичным образом, видно, что элемент в 3-й строке 17-го столбца равна 8, элемент 4-й строки равен 3, элемент 5-й строки равен 1, и элементы в 6-й строке и 7-й строке равны 0.
В дополнение к этому, когда матрица пропускных способностей линий связи включает в себя (M+1)-ю строку, элемент в (N+2)-ом столбце (M+1)-й строки может использоваться для указания количества типов сконфигурированной пропускной способности линии связи. В примере, представленном в таблице 2, количество типов сконфигурированных пропускных способностей линии связи равно 7. Таким образом, элемент в 18-ом столбце 8-й строки равен 7. Элемент в (N+1)-ом столбце (M+1)-й строки может использоваться для указания количества типов пропускной способности линии связи, соответствующих оставшимся N–Y линиям связи, за исключением Y неисправных линий связи в N линиях связи. В примере, представленном в таблице 2, 4-я линия связи и 5-я линия связи в 16 линиях связи являются неисправными, и количество типов пропускных способностей линий связи, соответствующих оставшимся 14 линиям связи, равно 5. Таким образом, элемент в 17-ом столбце 8-й строки равен 5.
В качестве альтернативы, (N+1)-й столбец и (N+2)-й столбец в приведенной выше матрице пропускных способностей линий связи каждый может быть сохранен в виде вектора. Это не ограничивается данным вариантом осуществления настоящей заявки.
Когда матрица пропускных способностей линий связи является матрицей пропускных способностей линий связи в реализации 2, процесс, в котором первое устройство переадресации определяет первую линию связи для переадресации первого потока услуг, может включать в себя: определение пятого значения t1 на основе M и первого хеш-значения, где значение t1 представляет собой целое число, большее или равное 1 и меньшее или равное М, или диапазон значений t1 представляет собой целочисленный интервал, определяемый от 1 до М; определение шестого значения t2 на основе t1-го элемента с 1-й строки по M-ю строку (N+2)-го столбца и первого хеш-значения; и определение первой линии связи на основе t1, t2, матрицы пропускных способностей линий связи и статусов линий связи, соответственно, соответствующих N линиям связи.
Из предыдущего содержания можно узнать, что первое устройство переадресации может получить первое хеш-значение путем выполнения операции хеширования над идентификационной информацией первого потока услуг. Первое устройство переадресации может выполнить операцию по модулю над первым хеш-значением и М, и затем добавить 1 к значению, полученному в ходе операции по модулю, чтобы получить t1. Затем первое устройство переадресации может выполнить операцию по модулю над первым хеш-значением и t1-м элементом из 1-й строки в M-ю строку (N+2)-го столбца, и затем добавить 1 к полученному с помощью операции по модулю, чтобы получить t2.
Таблица 2 используется в качестве примера. Предполагая, что M=7, и первое хеш-значение равно 23, t1=3. То есть после выполнения операции по модулю над первым хеш-значением и третьим элементом в 18-ом столбце, выполняется операция по модулю над 23 и 10, для получения 3. Таким образом, видно, что t2=4.
После определения t1 и t2 первое устройство переадресации может найти в 1-й строке N столбцов в соответствии с заданным направлением столбец, в котором расположен t2-й первый элемент. Если статус линии связи, соответствующий столбцу, в котором расположен t2-й первый элемент, представляет собой нормальное состояние, линии связи, соответствующая столбцу, в котором расположен t2-й первый элемент, может быть определена в качестве первой линии связи. Если статус линии связи, соответствующий столбцу, в котором расположен t2-й первый элемент, представляет собой неисправное состояние, определяется седьмое значение t3 на основе первого хеш-значения и P, где P – количество типов пропускных способностей линии связи, соответствующих оставшимся N–Y линиям связи, за исключением Y линий связи, чьи статусы представляют собой неисправное состояние. Затем первое устройство переадресации определяет восьмое значение t4 на основе t3-го элемента с 1-й строки по M-ю строку (N+1)-го столбца и первого хеш-значения, выполняет поиск t3-й строки N–Y столбцов для столбца, в котором расположен t4-й первый элемент, и определяет линию связи, соответствующую столбцу, в котором расположен t4-й первый элемент, в качестве первой линии связи. Заданное направление может начинаться с 1-го столбца по N-й столбец или может начинаться с N-го столбца по 1-й столбец.
Таблица 2, и t1=3 и t2=4 используются в качестве примера. Первое устройство переадресации может осуществлять поиск в соответствии с заданным направлением в 3-й строке 16 столбцов, соответствующих 16 линиям связи, для столбца, в котором расположен 4-й первый элемент. Заданное направление может начинаться с 1-го столбца по 16-й столбец или может начинаться с 16-го столбца по 1-й столбец. В качестве примера используется заданное направление с 16-го столбца по 1-й столбец, и столбец, в котором расположен 4-й первый элемент в 3-й строке 16 столбцов, является 12-м столбцом. Так как статус 13-й линии связи, соответствующий 13-му столбцу, представляет собой нормальное состояние, 13-я линии связи может быть непосредственно использована в качестве первой линии связи для переадресации первого потока услуг.
Если задано направление с 1-го столбца по 16-й столбец, столбец, в котором расположен 4-й первый элемент в 3-й строке 16 столбцов, является 5-м столбцом. Так как статус 5-й линии связи, соответствующей 5-му столбцу, представляет собой неисправное состояние, 5-ю линию связи нельзя использовать в качестве линии связи для переадресации первого потока услуг. В этом случае первое устройство переадресации может выполнить операцию по модулю над первым хеш-значением и P и добавить 1 к значению, полученному в ходе операции по модулю, чтобы получить t3. В этом примере P=5 и, следовательно, t3=4. Затем первое устройство переадресации может выполнить операцию по модулю над первым хеш-значением и 3-им элементом с 1-й строки до M-й строки (N+1)-го столбца и добавить 1 к значению, полученному в ходе операции по модулю для получения t4. В этом примере 4-й элемент в 17-ом столбце равен 3. Таким образом, t4=3. Затем первое устройство переадресации может найти 4-ю строку в 14 столбцах, соответствующих оставшимся 14 линиям связи, за исключением двух неисправных линий связи, для столбца, в котором расположен 3-й первый элемент. Аналогичным образом, поиск может выполняться с 1-го столбца по 16-й столбец. В этом случае 16-й столбец является столбцом, в котором 3-й первый элемент расположен в 4-й строке в 14 столбцах. Таким образом, 16-я линия связи, соответствующая 16-му столбцу, может использоваться в качестве первой линии связи для переадресации первого потока услуг. В качестве альтернативы, поиск может выполняться от 16-го столбца до 1-го столбца. В этом случае 3-ий столбец является столбцом, в котором 3-й первый элемент расположен в 4-й строке в 14 столбцах. Таким образом, 3-я линия связи, соответствующая 3-му столбцу, может использоваться в качестве первой линии связи для переадресации первого потока услуг.
После того, как определена первая линия для переадресации первого потока услуг, может быть выполнен этап 603, если первый поток услуг является потоком услуг одноадресной передачи, как показано на фиг. 6. Конечно, если первый поток услуг является потоком услуг многоадресной передачи, первое устройство переадресации может выполнить этап 604 или 605, как показано на фиг. 7.
Этап 603: Первое устройство переадресации переадресует первый поток услуг по первой линии связи.
В сценарии услуг одноадресной передачи первое устройство переадресации может включать в себя N линий связи, и N линий связи могут использоваться в качестве группы балансировки нагрузки для балансировки нагрузки. В этом сценарии после определения первой линии связи путем выполнения предыдущих этапов 601 и 602 первое устройство переадресации может напрямую переадресовать первый поток услуг через порт, соответствующий первой линии связи.
Этап 604: Если первая линия связи является линией связи, соответствующей первому устройству переадресации, первое устройство переадресации переадресует первый поток услуг через первую линию связи.
В сценарии услуг многоадресной передачи множество устройств переадресации может использоваться в качестве группы балансировки нагрузки. В этом случае N линий связи могут быть линиями связи в множестве устройств переадресации. В этом сценарии после получения потока услуг многоадресной передачи группа балансировки нагрузки, соответствующая потоку услуг многоадресной передачи, определяется из таблицы переадресации в соответствии с адресом источника многоадресной передачи и адресом назначения потока услуг многоадресной передачи. Первое устройство переадресации в группе балансировки нагрузки определяет первую линию связи, выполняя предыдущие этапы 601 и 602; и затем может определить, на основе идентификатора первой линии связи, то, является ли первая линия связи линией связи в первом устройстве переадресации. Если первая линия связи является линией связи в первом устройстве переадресации, то первое устройство переадресации может переадресовать первый поток услуг по первой линии связи.
Аналогичным образом, другое устройство переадресации помимо первого устройства переадресации из множества устройств переадресации также выполняет вышеуказанные этапы 601 и 602, и определяет то, является ли определенная первая линия связи линией связи, соответствующей другому устройству переадресации. Если да, то другое устройство переадресации переадресует первый поток услуг; в противном случае другое устройство переадресации выполняет этап 605.
Этап 605: Если первая линия связи не является линией связи, соответствующей первому устройству переадресации, первое устройство переадресации не переадресует первый поток услуг.
Если на основе идентификатора первой линии связи определено то, что первая линия связи не является линией связи, соответствующей первому устройству переадресации, первый поток услуг не переадресуется первым устройством переадресации. Вместо этого первый поток услуг переадресуется по линии связи другого устройства переадресации. В этом случае первое устройство переадресации не переадресует первый поток услуг.
Процесс, в котором первое устройство переадресации в предыдущем варианте осуществления определяет первую линию связи для переадресации первого потока услуг, применяется к каждому потоку услуг, проходящему через первое устройство переадресации. Первое устройство переадресации может определить линию связи каждого потока услуг, используя способ, представленный в предыдущих вариантах осуществления, чтобы реализовать балансировку нагрузки для множества потоков услуг.
В данном варианте осуществления настоящей заявки первое устройство переадресации может получить идентификационную информацию первого потока услуг; выполнить хеш-операцию над идентификационной информацией первого потока услуг, чтобы получить первое хеш-значение; и определить, на основе первого хеш-значения, матрицы пропускных способностей линий связи и статусов линий связи, соответственно, соответствующих N линиям связи, первую линию связи для переадресации первого потока услуг путем выполнения операции по модулю и операции деления. Можно понять, что в данном варианте осуществления настоящей заявки операцию хеширования не нужно выполнять на основе идентификатора устройства каждого устройства переадресации, и конкретному устройству переадресации, которое выполняет переадресацию, не нужно определять путем сравнения множества хеш-значений. Таким образом, объем вычислений является маленьким, а эффективность высокой.
Следует отметить, что в предыдущих вариантах осуществления балансировка нагрузки в сценарии услуг одноадресной передачи может быть реализована с использованием этапов 601-603, и балансировка нагрузки в сценарии услуг многоадресной передачи может быть реализована с использованием этапов 601, 602, 604 и 605. Матрица пропускных способностей линий связи получается посредством конфигураций линии связи независимо от сценариев обслуживания для балансировки нагрузки. Исходя из этого, далее отдельно описаны способы конфигурирования для устройств переадресации в двух сценариях обслуживания.
1. Сценарий услуг многоадресной передачи
В сценарии услуг многоадресной передачи каждое из множества устройств переадресации может получить информацию о конфигурации. В качестве примера используется первое устройство переадресации. Первое устройство переадресации может получить информацию о конфигурации как первого устройства переадресации, так и другого устройства переадресации, которое принадлежит к той же группе балансировки нагрузки, что и первое устройство переадресации. Информация о конфигурации может включать в себя информацию о группе балансировки нагрузки и пропускной способности линии связи соответствующего устройства. Информация о группе балансировки нагрузки может включать в себя идентификационную информацию группы балансировки нагрузки, линию связи, включенную в группу балансировки нагрузки и количество линий связи.
При необходимости информация о конфигурации может дополнительно включать в себя количество линий связи в группе балансировки нагрузки и другую информацию о протоколе.
Информация о конфигурации первого устройства переадресации может быть статически сконфигурирована в первом устройстве переадресации, и информация о конфигурации другого устройства переадресации может быть отправлена другим устройством переадресации в первое устройство переадресации. В качестве альтернативы, в другой возможной реализации информация о конфигурации как первого устройства переадресации, так и другого устройства переадресации может быть статически сконфигурирована в первом устройстве переадресации.
Два устройства переадресации, показанные на фиг. 1, используются в качестве примера. Предполагая, что первым устройством переадресации является R1, и вторым устройством переадресации является R2, информация о конфигурации R1 и информация о конфигурации R2 могут быть следующими:
Multicast forwarding-load- balance- ucmp (Multicast forwarding-load- balance- ucmp) grpxxx [номер 2] указывает группу балансировки нагрузки с именем grpxxx. Балансировка нагрузки выполняется между R1 и R2, где R1 идентифицируется как 192.168.1.11, и R2 – как 192.168.1.12. [number 2] – дополнительная конфигурация, которая может быть автоматически выработана на основе их конфигураций и указывает, что количество линий связи в группе балансировки нагрузки равно 2. Interface gi1/0/1 указывает то, что пропускная способность интерфейса составляет 1 Гбит /с. Interface 10gi1/0/1 указывает то, что пропускная способность интерфейса составляет 10 Гбит /с. Ip addr 192.168.1.11 и Ip addr 192.168.1.12 указывают адреса интерфейсов, где Ip addr указывает адрес интернет-протокола (Internet protocol address). pim sm указывает то, что протокол PIM разрешен на интерфейсе. После запуска команды Pim sm, пакет PIM Hello может быть отправлен в интерфейс, и пакет PIM Hello может быть принят из интерфейса. Pim force-dr указывает то, что интерфейс находится в состоянии назначенного маршрутизатора (designated router, DR). После приема сообщения для нисходящего устройства для присоединения к группе многоадресной передачи вырабатывается нисходящий статус многоадресной передачи, и сообщение о присоединении к группе многоадресной передачи отправляется в восходящей источник многоадресной передачи. forwarding-load-balance-ucmp grpxxx указывает то, что интерфейс использует группу grpxxx балансировки нагрузки для балансировки нагрузки.
На основе вышеизложенных конфигураций R1 и R2 устанавливают состояние PIM DR интерфейса на DR после получения пакетов PIM Hello. После приема сообщения о присоединении к многоадресной рассылке протокола управления группами Интернета (internet group management protocol, IGMP), R1 и R2 создают нисходящие исходящие интерфейсы записи многоадресной передачи и отправляют сообщение о присоединении к многоадресной передачи в восходящий источник многоадресной передачи. R1 и R2 могут генерировать матрицу пропускных способностей линий связи на основе вышеизложенной информации о конфигурации, чтобы выполнять балансировку нагрузки для принятого потока услуг многоадресной передачи с использованием вышеизложенного способа.
В приведенном выше примере информация о каждом устройстве переадресации и информация о другом устройстве переадресации статически сконфигурированы на каждом устройстве переадресации. В другой реализации на соответствующем устройстве переадресации может быть сконфигурирована только информация о каждом устройстве переадресации, и информация о другом устройстве переадресации может быть отправлена другим устройством переадресации в устройство переадресации. Если на соответствующем устройстве переадресации сконфигурирована только информация о каждом устройстве переадресации, каждое устройство переадресации может отправить информацию о конфигурации устройства переадресации в устройство, отличное от устройства переадресации, с использованием разных пакетов в соответствии с разными сценариями.
В сценарии PIM множество устройств переадресации подключается к передающей стороне 103 многоадресной передачи с использованием протокола PIM, каждое устройство переадресации может отправлять информацию о конфигурации устройства переадресации в другое устройство с использованием пакета PIM Hello. Если множество устройств переадресации подключено к передающей стороне 103 многоадресной передачи через EVPN, каждое устройство переадресации может отправлять информацию о конфигурации устройства переадресации в другое устройство переадресации с использованием сообщения EVPN протокола пограничного шлюза (border gateway protocol, BGP).
2. Сценарий услуги одноадресной передачи
В сценарии услуг одноадресной передачи в качестве примера используются два устройства переадресации, показанные на фиг. 2. Предполагая, что первым устройством переадресации является R1, и вторым устройством переадресации является R2, информация о конфигурации R1 и информация о конфигурации R2 могут быть следующими:
ucmp enable this_method указывает то, что способ, предусмотренный в вариантах осуществления настоящей заявки, используется для балансировки нагрузки. Имеется три интерфейса-участника на Eth-Trunk 1 R1. Имеется также три интерфейса-участника на Eth-Trunk 1 R2.
R1 и R2 могут генерировать матрицу пропускных способностей линий связи на основе вышеизложенной информации о конфигурации, чтобы выполнять балансировку нагрузки для принятого потока услуг одноадресной передачи с использованием вышеизложенного способа.
Как показано на фиг. 8 вариант осуществления настоящей заявки предусматривает устройство 800 для определения линии связи для переадресации потока услуг. Устройство 800 может быть интегрировано в вышеупомянутое устройство переадресации. Устройство 800 включает в себя модуль 801 получения и модуль 802 обработки. Модуль 801 получения может быть выполнен с возможностью выполнения этапа 601 в предыдущем варианте осуществления, и модуль 802 обработки может быть выполнен с возможностью выполнения этапа 602 и этапа 605 в предыдущем варианте осуществления.
В реализации модуль 801 получения дополнительно выполнен с возможностью получения идентификационной информацией второго потока услуг; и модуль 802 обработки дополнительно выполнен с возможностью определения, на основе идентификационной информацией второго потока услуг, матрицы пропускных способностей линий связи и статусов линий связи, соответственно, соответствующих N линиям связи, второй линии связи для переадресации второго потока услуг из N линий связи.
В реализации модуль 802 обработки специально выполнен с возможностью: выполнения хеш-операции над идентификационной информацией первого потока услуг для получения первого хеш-значения; и определения первой линии связи из N линий связи на основе матрицы пропускных способностей линий связи, первого хеш-значения и статусов линий связи, соответственно, соответствующих N линиям связи.
В реализации матрица пропускных способностей линий связи является матрицей Mx(N+3), где M не меньше 1, i-я строка в M строках соответствует i-му типу пропускной способности линии связи, диапазон значений i составляет от 1 до M, j-й столбец в N столбцах соответствует j-й линии связи, количество x первых элементов, включенных в j-й столбец, используется для указания того, что j-я линия связи использует x-й тип пропускной способности линии связи, диапазон значений x составляет от 1 до M, (N+3)-й столбец представляет собой разность пропускных способностей, (N+2)-й столбец представляет собой накопленную сконфигурированную пропускную способность, и (N+1)-й столбец представляет собой накопленную фактическую пропускную способность. Элемент в (i+1)-й строке (N+3)-го столбца представляет собой разность между пропускной способностью линии связи, соответствующей (i+1)-й строке, и пропускной способностью линии связи, соответствующей i-й строке, и элемент в 1-й строке (N+3)-го столбца является значением первого типа пропускной способности линии связи. Элемент в (i+1)-й строке (N+2)-го столбца представляет собой сумму элемента в i-й строке (N+2)-го столбца и произведения элемента в (i+1)-й строке (N+3)-го столбца на количество первых элементов, включенных в (i+1)-ю строку в N столбцах, и элемент в 1-й строке (N+2)-го столбца представляет собой количество первых элементов, включенных в 1-ю строку N столбцов. Элемент в (i+1)-й строке (N+1)-го столбца представляет собой сумму элемента в i-й строке (N+1)-го столбца и произведения элемента в (i+1)-й строке (N+3)-го столбца на количество первых элементов, включенных в (i+1)-ю строку N–Y столбцов N столбцов, где Y – количество линий связи, чьи статусы представляют собой неисправное состояние, и диапазон значений Y составляет от 0 до N–1; и элемент в 1-й строке (N+3)-го столбца представляет собой количество первых элементов, включенных в 1-ю строку N–Y столбцов N столбцов.
В реализации модуль 802 обработки специально выполнен с возможностью: определения первого значения k1 на основе элемента в M-й строке (N+2)-го столбца и первого хеш-значения; определения, начиная с элемента в первой строке (N+2)-го столбца, номера Z строки элемента, чье значение больше k1; определения второго значения k2 на основе k1, элемента в (Z-1)-й строке (N+2)-го столбца и элемента в Z-й строке (N+3)-го столбца; и определения первой линии связи на основе элемента в Z-й строке N столбцов, k2 и статусов линий связи, соответственно, соответствующих N линиям связи.
В реализации модуль 802 обработки специально выполнен с возможностью: поиска элементов в Z-й строке N столбцов для столбца, в котором расположен k2-й первый элемент; и, если статус линии связи, соответствующий столбцу, в котором расположен k2-й первый элемент, представляет собой нормальное состояние, определения линии связи, соответствующей столбцу, в котором расположен k2-й первый элемент, в качестве первой линии связи.
В реализации модуль 802 обработки дополнительно и специально выполнен с возможностью: если статус линии связи, соответствующий найденному столбцу, в котором расположен k2-й первый элемент, представляет собой неисправное состояние, определения третьего значения k3 на основе первого хеш-значения и элемента в P-й строке (N+1)-го столбца, где P – количество типов пропускных способностей линии связи, соответствующих оставшимся N–Y линиям связи, за исключением Y линий связи, чьи статусы представляют собой неисправное состояние; определения, начиная с элемента в 1-й строке (N+1)-го столбца, номера Z’ строки элемента, чье значение больше k3; определения четвертого значения k4 на основе k3, элемента в (Z'–1)-й строке (N+1)-го столбца и элемента в Z'-й строке (N+3)-го столбца; и поиска элементов в Z'-й строке N–Y столбцов для столбца, в котором расположен k4-й первый элемент, и определение линии связи, соответствующей столбцу, в котором расположен k4-й первый элемент, в качестве первой линии связи.
В реализации матрица пропускных способностей линий связи является матрицей Mx(N+2), где M не меньше 1, i-я строка в M строках соответствует i-му типу пропускной способности линии связи, диапазон значений i составляет от 1 до M, j-й столбец в N столбцах соответствует j-й линии связи, количество x первых элементов, включенных в j-й столбец, используется для указания того, что j-я линия связи использует x-й тип пропускной способности линии связи, диапазон значений x составляет от 1 до M, (N+2)-й столбец представляет собой сконфигурированную пропускную способность, и (N+1)-й столбец представляет собой фактическую пропускную способность. Элемент в i-й строке (N+2)-го столбца представляет собой количество первых элементов, включенных в i-ю строку в N столбцах. Элемент в i-й строке (N+1)-го столбца представляет собой количество первых элементов, включенных в i-ю строку N–Y столбцов N столбцов, где Y – количество линий связи, чьи статусы представляют собой неисправное состояние, и диапазон значений Y составляет от 0 до N–1.
В реализации модуль 802 обработки специально выполнен с возможностью: определения пятого значения t1 на основе М и первого хеш-значения, где t1 находится в диапазоне от 1 до М; определения шестого значения t2 на основе 1-го элемента с 1-й строки по M-ю строку (N+2)-го столбца и первого хеш-значения; и определения первой линии связи на основе t1, t2, матрицы пропускных способностей линий связи и статусов линий связи, соответственно, соответствующих N линиям связи.
В реализации модуль 802 обработки специально выполнен с возможностью: поиска в соответствии с заданным направлением в 1-й строке N столбцов для столбца, в котором расположен t2-й первый элемент; и, если статус линии связи, соответствующий столбцу, в котором расположен t2-й первый элемент, представляет собой нормальное состояние, определения линии связи, соответствующей столбцу, в котором расположен t2-й первый элемент, в качестве первой линии связи.
В реализации модуль 802 обработки дополнительно и специально выполнен с возможностью того, чтобы: если статус линии связи, соответствующий столбцу, в котором расположен t2-й первый элемент, представляет собой неисправное состояние, определения седьмого значения t3 на основе первого хеш-значения и P, где P – количество типов пропускных способностей линий связи, соответствующих оставшимся N–Y линиям связи, за исключением Y линий связи, чьи статусы представляют собой неисправное состояние; определения восьмого значения t4 на основе t3-го элемента с 1-й строки по M-ю строку (N+1)-го столбца и первого хеш-значения; отыскивать в 3-й строке N–Y столбцов столбец, в котором расположен t4–й первый элемент; и определения линии связи, соответствующей столбцу, в котором расположен t4–й первый элемент, в качестве первой линии связи.
В реализации матрица пропускных способностей линий связи дополнительно включает в себя (M+1)-ю строку, и элемент в j-ом столбце (M+1)-й строки используется для указания статуса линии связи j-й линии связи.
В реализации первый поток услуг является потоком услуг многоадресной передачи, и устройство 800 дополнительно включает в себя модуль 803 отправки. Модуль 803 отправки выполнен с возможностью: если первая линия связи является линией связи, соответствующей первому устройству переадресации, переадресации первого потока услуг по первой линии связи, и модуль 802 обработки дополнительно выполнен с возможностью: если первая линия связи не является линией связи, соответствующей первому устройству переадресации, пропуска переадресации первого потока услуг.
В реализации модуль 802 обработки дополнительно выполнен с возможностью:
получения информации о конфигурации как первого устройства переадресации, так и другого устройства переадресации, где информация о конфигурации включает в себя информацию о группе балансировки нагрузки, к которой принадлежат первое устройство переадресации и другое устройство переадресации, и пропускную способность N линий связи, включенных в группу балансировки нагрузки; и
генерирования матрицы пропускных способностей линий связи на основе информации о конфигурации.
В реализации информация о конфигурации другого устройства переадресации отправляется другим устройством переадресации в первое устройство переадресации.
В реализации первый поток услуг является потоком услуг одноадресной передачи, и устройство 800 дополнительно включает в себя модуль 803 отправки. Модуль 803 отправки выполнен с возможностью переадресации первого потока услуг по первой линии связи.
В реализации модуль 802 обработки дополнительно выполнен с возможностью: получения идентификаторов линий связи и пропускных способностей линий связи для N линий связи и генерирования матрицы пропускных способностей линий связи на основе идентификаторов линий связи и пропускных способностей линий связи для N линий связи.
В заключение, в вариантах осуществления настоящей заявки первое устройство переадресации может получить идентификационную информацию первого потока услуг, выполнить операцию хеширования над идентификационной информацией первого потока услуг для получения первого хеш-значения; и определить, на основе первого хеш-значения, матрицы пропускных способностей линий связи и статусов линий связи, соответственно, соответствующих N линиям связи, первую линию связи для переадресации первого потока услуг путем выполнения операции по модулю и операции деления. Можно понять, что в вариантах осуществления настоящей заявки операцию хеширования не нужно выполнять на основе идентификатора устройства каждого устройства переадресации, и конкретному устройству переадресации, которое выполняет переадресацию, не нужно определять путем сравнения множества хеш-значений. Таким образом, объем вычислений является маленьким, а эффективность высокой.
Следует отметить, что разделение на вышеупомянутые функциональные модули используется просто в качестве примера для описания того, как устройство для определения линии связи для переадресации потока услуг, предусмотренное в вышеизложенных вариантах осуществления, определяет линию связи для переадресации потока услуг. Во время фактического применения вышеупомянутые функции могут быть выделены различным функциональным модулям для их реализации по мере необходимости, то есть внутренняя структура устройства разделена на различные функциональные модули для реализации всех или некоторых функций, описанных выше. В дополнение к этому, устройство для определения линии связи для переадресации потока услуг, предусмотренное в предыдущих вариантах осуществления, и варианты осуществления способа для определения линии связи для переадресации потока услуг принадлежат к одной и той же концепции. Конкретный процесс его реализации смотри в вариантах осуществления способа, и в данном документе подробности повторно не описываются.
Все или некоторые из вышеизложенных вариантов осуществления могут быть реализованы посредством программного обеспечения, аппаратных средств, программно-аппаратных средств или любой их комбинации. Когда программное обеспечение используется для реализации вариантов осуществления, все или некоторые из вариантов осуществления могут быть реализованы в виде компьютерного программного продукта. Компьютерный программный продукт включает в себя одну или несколько компьютерных инструкций. Когда компьютерные инструкции загружаются и исполняются на компьютере, полностью или частично вырабатываются процедуры или функции согласно вариантам осуществления настоящей заявки. Компьютер может быть компьютером общего назначения, специализированным компьютером, компьютерной сетью или другим программируемым устройством. Компьютерные инструкции могут храниться на машиночитаемом носителе информации или могут быть переданы с машиночитаемого носителя информации на другой машиночитаемый носитель информации. Например, компьютерные инструкции могут передаваться с веб-сайта, компьютера, сервера или центра обработки данных на другой веб-сайт, компьютер, сервер или центр обработки данных по проводным способам (например, по коаксиальному кабелю, оптоволоконному кабелю или цифровой абонентской линии (digital subscriber line, DSL)) или беспроводным способом (например, с помощью инфракрасных волн, радио волн или микроволн). Машиночитаемый носитель информации может быть любым пригодным для использования носителем информации, доступным для компьютера, или устройством хранения данных, таким как сервер или центр обработки данных, объединяющим один или несколько пригодных для использования носителей информации. Используемым носителем информации может быть магнитный носитель информации (например, гибкий диск, жесткий диск или магнитная лента), оптическим носителем информации (например, цифровым универсальным диском (digital versatile disc, DVD)), полупроводниковым носителем информации (например, твердотельным диском (solid state disk, SSD)) и т.п.
Специалисту в данной области техники может быть понятно, что все или некоторые этапы вариантов осуществления могут быть реализованы аппаратными средствами или программой, инструктирующей соответствующие аппаратные средства. Программа может храниться на машиночитаемом носителе информации. Носителем информации может быть постоянное запоминающее устройство, магнитный диск, оптический диск и т.п.
Вышеприведенные описания являются просто вариантами осуществления настоящей заявки, но не предназначены для ограничения настоящей заявки. Любая модификация, эквивалентная замена или усовершенствование, сделанные без отступления от сущности и принципа настоящей заявки, должны подпадать под объем защиты настоящей заявки.
Claims (93)
1. Способ определения линии связи для переадресации потока услуг, применяемый в первом устройстве переадресации, причем способ содержит:
получение идентификационной информации о первом потоке услуг; и
определение, на основе матрицы пропускных способностей линий связи, идентификационной информации первого потока услуги и статусов линий связи, соответственно, соответствующих N линиям связи, первой линии связи для переадресации первого потока услуги из N линий связи, причем матрица пропускных способностей линий связи указывает пропускную способность линии связи, соответствующую N линиям связи, и N не меньше 2, и причем матрица пропускных способностей линий связи содержит по меньшей мере M строк и N столбцов, и матрица пропускных способностей линий связи дополнительно содержит (М+1)-ю строку, и элемент в j-м столбце (М+1)-й строки используется для указания статуса линии связи, соответствующего j-й линии связи.
2. Способ по п. 1, дополнительно содержащий:
получение идентификационной информации второго потока услуг; и
определение, на основе идентификационной информации второго потока услуг, матрицы пропускных способностей линий связи и статусов линий связи, соответственно, соответствующих N линиям связи, второй линии связи для переадресации второго потока услуг из N линий связи.
3. Способ по п. 1 или 2, в котором определение, на основе матрицы пропускных способностей линий связи, идентификационной информации первого потока услуг и статусов линий связи, соответствующих N линиям связи, первой линии связи для переадресации первого потока услуг из N линий связи содержит:
выполнение хеш-операции над идентификационной информацией первого потока услуг для получения первого хеш-значения; и
определение первой линии связи из N линий связи на основе матрицы пропускных способностей линий связи, первого хеш-значения и статусов линий связи, соответственно, соответствующих N линиям связи.
4. Способ по п. 3, в котором матрица пропускных способностей линий связи является матрицей Mx(N+3), M не меньше 1, i-я строка в M строках соответствует i-му типу пропускной способности линии связи, диапазон значений i составляет от 1 до M, j-й столбец в N столбцах соответствует j-й линии связи, количество x первых элементов, содержащихся в j-м столбце, указывает, что j-я линия связи использует x-й тип пропускной способности линии связи, диапазон значений x составляет от 1 до M, (N+3)-й столбец представляет собой разность пропускных способностей, (N+2)-й столбец представляет собой накопленную сконфигурированную пропускную способность и (N+1)-й столбец представляет собой накопленную фактическую пропускную способность;
элемент в (i+1)-й строке (N+3)-го столбца представляет собой разность между пропускной способностью линии связи, соответствующей (i+1)-й строке, и пропускной способностью линии связи, соответствующей i-й строке, и элемент в 1-й строке (N+3)-го столбца представляет собой значение первого типа пропускной способности линии связи;
элемент в (i+1)-й строке (N+2)-го столбца представляет собой сумму элемента в i-й строке (N+2)-го столбца и произведения элемента в (i+1)-й строке (N+3)-го столбца на количество первых элементов, содержащихся в (i+1)-й строке N столбцов, и элемент в 1-й строке (N+2)-й столбец представляет собой количество первых элементов, содержащихся в 1-й строке N столбцов; и
элемент в (i+1)-й строке (N+1)-го столбца является суммой элемента в i-й строке (N+1)-го столбца и произведения элемента в (i+1)-й строке (N+3)-го столбца на количество первых элементов, содержащихся в (i+1)-й строке N–Y столбцов в N столбцах, где Y – количество линий связи, чьи статусы представляют собой неисправное состояние, и диапазон значений Y составляет от 0 до N–1; и элемент в 1-й строке (N+3)-го столбца представляет собой количество первых элементов, содержащихся в 1-й строке N–Y столбцов в N столбцах.
5. Способ по п. 4, в котором определение первой линии связи из N линий связи на основе матрицы пропускных способностей линий связи, первого значения хеш-функции и статусов линий связи, соответствующих N линиям связи, содержит:
определение первого значения k1 на основе элемента в M-й строке (N+2)-го столбца и первого хеш-значения;
определение, начиная с элемента в 1-й строке (N+2)-го столбца, номера Z строки элемента, чье значение больше k1;
определение второго значения k2 на основе k1, элемента в (Z-1)-й строке (N+2)-го столбца и элемента в Z-й строке (N+3)-го столбца; и
определение первой линии связи на основе элемента в Z-й строке N столбцов, k2 и статусов линий связи, соответственно, соответствующих N линиям связи.
6. Способ по п. 5, в котором определение первой линии связи на основе элемента в Z-й строке N столбцов, k2 и статусов линий связи, соответствующих N линиям связи, содержит:
поиск элементов в Z-й строке N столбцов для столбца, в котором расположен k2-й первый элемент; и
если статус линии связи, соответствующий столбцу, в котором расположен k2-й первый элемент, представляет собой нормальное состояние, определение линии связи, соответствующей столбцу, в котором расположен k2-й первый элемент, в качестве первой линии связи.
7. Способ по п. 6, в котором способ дополнительно содержит:
если статус линии связи, соответствующий найденному столбцу, в котором расположен k2-й первый элемент, представляет собой неисправное состояние, определение третьего значения k3 на основе первого хеш-значения и элемента в P-й строке (N+1)-го столбца, где P – количество типов пропускных способностей линий связи, соответствующих оставшимся N–Y линиям связи, за исключением Y линий связи, чьи статусы представляют собой неисправное состояние;
определение, начиная с элемента в 1-й строке (N+1)-го столбца, номера Z’ строки элемента, чье значение больше k3;
определение четвертого значения k4 на основе k3, элемента в (Z'–1)-й строке (N+1)-го столбца и элемента в Z'-й строке (N+3)-го столбца; и
поиск элементов в Z'-й строке N–Y столбцов для столбца, в котором расположен k4-й первый элемент, и определение линии связи, соответствующей столбцу, в котором расположен k4-й первый элемент, в качестве первой линии связи.
8. Способ по п. 3, в котором матрица пропускных способностей линий связи является матрицей Mx(N+2), где M не меньше 1, i-я строка в M строках соответствует i-му типу пропускной способности линии связи, диапазон значений i составляет от 1 до M, j-й столбец в N столбцах соответствует j-й линии связи, количество x первых элементов, содержащихся в j-м столбце, указывает, что j-я линия связи использует x-й тип пропускной способности линии связи, диапазон значений x составляет от 1 до M, (N+2)-й столбец представляет собой сконфигурированную пропускную способность и (N+1)-й столбец представляет собой фактическую пропускную способность;
элемент в i-й строке (N+2)-го столбца представляет собой количество первых элементов, содержащихся в i-й строке N столбцов; и
элемент в i-й строке (N+1)-го столбца представляет собой количество первых элементов, содержащихся в i-й строке N–Y столбцов в N столбцах, где Y – количество линий связи, чьи статусы представляют собой неисправное состояние, и диапазон значений Y составляет от 0 до N–1.
9. Способ по п. 8, в котором определение первой линии связи из N линий связи на основе матрицы пропускных способностей линий связи, первого значения хеш-функции и статусов линий связи, соответствующих N линиям связи, содержит:
определение пятого значения t1 на основе М и первого хеш-значения, где t1 находится в диапазоне от 1 до М;
определение шестого значения t2 на основе 1-го элемента с 1-й строки по M-ю строку (N+2)-го столбца и первого хеш-значения; и
определение первой линии связи на основе t1, t2, матрицы пропускных способностей линий связи и статусов линий связи, соответственно, соответствующих N линиям связи.
10. Способ по п. 9, в котором определение первой линии связи на основе t1, t2, матрицы пропускных способностей линий связи и статусов линий связи, соответствующих N линиям связи, содержит:
поиск, в соответствии с заданным направлением, t1-й строки N столбцов для столбца, в котором расположен t2-й первый элемент; и
если статус линии связи, соответствующий столбцу, в котором расположен t2-й первый элемент, представляет собой нормальное состояние, определение линии связи, соответствующей столбцу, в котором расположен t2-й первый элемент, в качестве первой линии связи.
11. Способ по п. 10, в котором способ дополнительно содержит:
если статус линии связи, соответствующий столбцу, в котором расположен t2-й первый элемент, представляет собой неисправное состояние, определение седьмого значения t3 на основе первого хеш-значения и P, где P – количество типов пропускных способностей линии связи, соответствующих оставшимся N–Y линий связи, за исключением Y линий связи, чьи статусы представляют собой неисправное состояние;
определение восьмого значения t4 на основе 3-го элемента с 1-й строки по M-ю строку (N+1)-го столбца и первого хеш-значения;
поиск t3-й строки N–Y столбцов для столбца, в котором расположен t4-й первый элемент; и
определение линии связи, соответствующей столбцу, в котором расположен t4-й первый элемент, в качестве первой линии связи.
12. Способ по любому из пп. 1-11, в котором первый поток услуг представляет собой многоадресный поток услуг, и после определения, на основе матрицы пропускных способностей линий связи, идентификационной информации первого потока услуг и статусов линий связи, соответственно, соответствующих N линиям связи, первой линии связи для переадресации первого потока услуг в N линиях связи, причем способ дополнительно содержит:
после определения того, что первая линия связи является линией связи, соответствующей первому устройству переадресации, переадресацию, первым устройством переадресации, первого потока услуг по первой линии связи.
13. Способ по любому из пп. 1-12, в котором способ дополнительно содержит:
получение информации о конфигурации как первого устройства переадресации, так и другого устройства переадресации, причем информация о конфигурации содержит информацию о группе балансировки нагрузки, к которой принадлежат первое устройство переадресации и другое устройство переадресации, и пропускные способности линии связи N линий связи, содержащиеся в группе балансировки нагрузки; и
генерирование матрицы пропускных способностей линий связи на основе информации о конфигурации.
14. Устройство для определения линии связи для переадресации потока услуг, развернутой в первом устройстве переадресации, причем устройство содержит:
модуль получения, выполненный с возможностью получения идентификационной информации о первом потоке услуг; и
модуль обработки, выполненный с возможностью определения, на основе матрицы пропускных способностей линий связи, идентификационной информации первого потока услуг и статусов линий связи, соответственно, соответствующих N линиям связи, первой линии связи для переадресации первого потока услуг из N линий связи, причем матрица пропускных способностей линий связи указывает пропускную способность линии связи, соответствующую N линиям связи, и N не меньше 2, и причем матрица пропускных способностей линий связи содержит по меньшей мере M строк и N столбцов, и матрица пропускных способностей линий связи дополнительно содержит (М+1)-ю строку, и элемент в j-м столбце (М+1)-й строки используется для указания статуса линии связи, соответствующего j-й линии связи.
15. Устройство по п. 14, в котором
модуль получения дополнительно выполнен с возможностью получения идентификационной информации второго потока услуг; и
модуль обработки дополнительно выполнен с возможностью определения, на основе идентификационной информации второго потока услуг, матрицы пропускных способностей линий связи и статусов линий связи, соответственно, соответствующих N линиям связи, второй линии связи для переадресации второго потока услуг из N линий связи.
16. Устройство по п. 14 или 15, в котором модуль обработки специально выполнен с возможностью:
выполнения хеш-операции над идентификационной информацией первого потока услуг для получения первого хеш-значения; и
определения первой линии связи из N линий связи на основе матрицы пропускных способностей линий связи, первого хеш-значения и статусов линий связи, соответственно, соответствующих N линиям связи.
17. Устройство по п. 16, в котором матрица пропускных способностей линий связи является матрицей Mx(N+3), где M не меньше 1, i-я строка в M строках соответствует i-му типу пропускной способности линии связи, диапазон значений i составляет от 1 до M, j-й столбец в N столбцах соответствует j-й линии связи, количество x первых элементов, содержащихся в j-м столбце, указывает, что j-я линия связи использует x-й тип пропускной способности линии связи, диапазон значений x составляет от 1 до M, (N+3)-й столбец представляет собой разность пропускных способностей, (N+2)-й столбец представляет собой накопленную сконфигурированную пропускную способность и (N+1)-й столбец представляет собой накопленную фактическую пропускную способность;
элемент в (i+1)-й строке (N+3)-го столбца представляет собой разность между пропускной способностью линии связи, соответствующей (i+1)-й строке, и пропускной способностью линии связи, соответствующей i-й строке, и элемент в 1-й строке (N+3)-го столбца представляет собой значение первого типа пропускной способности линии связи;
элемент в (i+1)-й строке (N+2)-го столбца представляет собой сумму элемента в i-й строке (N+2)-го столбца и произведения элемента в (i+1)-й строке (N+3)-го столбца на количество первых элементов, содержащихся в (i+1)-й строке N столбцов, и элемент в 1-й строке (N+2)-го столбца представляет собой количество первых элементов, содержащихся в 1-й строке N столбцов; и
элемент в (i+1)-й строке (N+1)-го столбца является суммой элемента в i-й строке (N+1)-го столбца и произведения элемента в (i+1)-й строке (N+3)-го столбца на количество первых элементов, содержащихся в (i+1)-й строке N–Y столбцов в N столбцах, где Y – количество линий связи, чьи статусы представляют собой неисправное состояние, и диапазон значений Y составляет от 0 до N–1; и элемент в 1-й строке (N+3)-го столбца представляет собой количество первых элементов, содержащихся в 1-й строке N–Y столбцов в N столбцах.
18. Устройство по п. 17, в котором модуль обработки специально выполнен с возможностью:
определения первого значения k1 на основе элемента в M-й строке (N+2)-го столбца и первого хеш-значения;
определения, начиная с элемента в 1-й строке (N+2)-го столбца, номера Z строки элемента, чье значение больше k1;
определения второго значения k2 на основе k1, элемента в (Z-1)-й строке (N+2)-го столбца и элемента в Z-й строке (N+3)-го столбца; и
определения первой линии связи на основе элемента в Z-й строке N столбцов, k2 и статусов линий связи, соответственно, соответствующих N линиям связи.
19. Устройство по п. 18, в котором модуль обработки специально выполнен с возможностью:
поиска элементов в Z-й строке N столбцов для столбца, в котором расположен k2-й первый элемент; и
если статус линии связи, соответствующий столбцу, в котором расположен k2-й первый элемент, представляет собой нормальное состояние, определения линии связи, соответствующей столбцу, в котором расположен k2-й первый элемент, в качестве первой линии связи.
20. Устройство по п. 19, в котором модуль обработки специально выполнен с возможностью:
если статус линии связи, соответствующий найденному столбцу, в котором расположен k2-й первый элемент, представляет собой неисправное состояние, определения третьего значения k3 на основе первого хеш-значения и элемента в P-й строке (N+1)-го столбца, где P – количество типов пропускных способностей линий связи, соответствующих оставшимся N–Y линиям связи, за исключением Y линий связи, чьи статусы представляют собой неисправное состояние;
определения, начиная с элемента в 1-й строке (N+1)-го столбца, номера Z’ строки элемента, чье значение больше k3;
определения четвертого значения k4 на основе k3, элемента в (Z'–1)-й строке (N+1)-го столбца и элемента в Z'-й строке (N+3)-го столбца; и
поиска элементов в Z'-й строке N–Y столбцов для столбца, в котором расположен k4-й первый элемент, и определение линии связи, соответствующей столбцу, в котором расположен k4-й первый элемент, в качестве первой линии связи.
21. Устройство по п. 16, в котором матрица пропускных способностей линий связи является матрицей Mx(N+2), где M не меньше 1, i-я строка в M строках соответствует i-му типу пропускной способности линии связи, диапазон значений i составляет от 1 до M, j-й столбец в N столбцах соответствует j-й линии связи, количество x первых элементов, содержащихся в j-м столбце, указывает, что j-я линия связи использует x-й тип пропускной способности линии связи, диапазон значений x составляет от 1 до M, (N+2)-й столбец представляет собой сконфигурированную пропускную способность и (N+1)-й столбец представляет собой фактическую пропускную способность;
элемент в i-й строке (N+2)-го столбца представляет собой количество первых элементов, содержащихся в i-й строке N столбцов; и
элемент в i-й строке (N+1)-го столбца представляет собой количество первых элементов, содержащихся в i-й строке N–Y столбцов в N столбцах, где Y – количество линий связи, чьи статусы представляют собой неисправное состояние, и диапазон значений Y составляет от 0 до N–1.
22. Устройство по п. 21, в котором модуль обработки специально выполнен с возможностью:
определения пятого значения t1 на основе М и первого хеш-значения, где t1 находится в диапазоне от 1 до М;
определения шестого значения t2 на основе 1-го элемента с 1-й строки по M-ю строку (N+2)-го столбца и первого хеш-значения; и
определения первой линии связи на основе t1, t2, матрицы пропускных способностей линий связи и статусов линий связи, соответственно, соответствующих N линиям связи.
23. Устройство по п. 21, в котором модуль обработки специально выполнен с возможностью:
поиска, в соответствии с заданным направлением, t1-й строки N столбцов для столбца, в котором расположен t2-й первый элемент; и
если статус линии связи, соответствующий столбцу, в котором расположен t2-й первый элемент, представляет собой нормальное состояние, определения линии связи, соответствующей столбцу, в котором расположен t2-й первый элемент, в качестве первой линии связи.
24. Устройство по п. 23, в котором модуль обработки специально выполнен с возможностью:
если статус линии связи, соответствующий столбцу, в котором расположен t2-й первый элемент, представляет собой неисправное состояние, определения седьмого значения t3 на основе первого хеш-значения и P, где P – количество типов пропускных способностей линии связи, соответствующих оставшимся N–Y линий связи, за исключением Y линий связи, чьи статусы представляют собой неисправное состояние;
определения восьмого значения t4 на основе 3-го элемента с 1-й строки по M-ю строку (N+1)-го столбца и первого хеш-значения;
поиска t3-й строки N–Y столбцов для столбца, в котором расположен t4-й первый элемент; и
определения линии связи, соответствующей столбцу, в котором расположен t4-й первый элемент, в качестве первой линии связи.
25. Устройство по любому из пп. 14-24, в котором первый поток услуг является потоком услуг многоадресной передачи, и устройство дополнительно содержит модуль отправки;
модуль отправки выполнен с возможностью: если первая линия связи является линией связи, соответствующей первому устройству переадресации, переадресации первого потока услуг через первую линию связи;
модуль обработки дополнительно выполнен с возможностью: если первая линия связи не является линией связи, соответствующей первому устройству переадресации, пропуска переадресации первого потока услуг.
26. Устройство по п. 25, в котором модуль обработки дополнительно выполнен с возможностью:
получения информации о конфигурации как первого устройства переадресации, так и другого устройства переадресации, причем информация о конфигурации содержит информацию о группе балансировки нагрузки, к которой принадлежат первое устройство переадресации и другое устройство переадресации, и пропускные способности линии связи N линий связи, содержащиеся в группе балансировки нагрузки; и
генерирования матрицы пропускных способностей линий связи на основе информации о конфигурации.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010082312.7 | 2020-02-07 | ||
CN202010364422.2 | 2020-04-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2819422C1 true RU2819422C1 (ru) | 2024-05-21 |
Family
ID=
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102761479A (zh) * | 2012-06-28 | 2012-10-31 | 华为技术有限公司 | 链路选择方法和装置 |
CN103236986A (zh) * | 2013-04-07 | 2013-08-07 | 杭州华三通信技术有限公司 | 负载分担方法及装置 |
RU2660494C2 (ru) * | 2014-05-09 | 2018-07-06 | Телефонактиеболагет Лм Эрикссон (Пабл) | Способ и устройство для переадресации измерений ue |
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102761479A (zh) * | 2012-06-28 | 2012-10-31 | 华为技术有限公司 | 链路选择方法和装置 |
CN103236986A (zh) * | 2013-04-07 | 2013-08-07 | 杭州华三通信技术有限公司 | 负载分担方法及装置 |
RU2660494C2 (ru) * | 2014-05-09 | 2018-07-06 | Телефонактиеболагет Лм Эрикссон (Пабл) | Способ и устройство для переадресации измерений ue |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10938748B2 (en) | Packet processing method, computing device, and packet processing apparatus | |
KR102162730B1 (ko) | 분산형 라우팅 테이블 탐색 기술 | |
CN108768866B (zh) | 组播报文跨卡转发方法、装置、网络设备及可读存储介质 | |
US9319299B2 (en) | Method and apparatus for link aggregation using links having different link speeds | |
US10135736B1 (en) | Dynamic trunk distribution on egress | |
CN108123901B (zh) | 一种报文传输方法和装置 | |
Cheng et al. | Application-aware SDN routing for big data networking | |
EP2880550A1 (en) | Connection mesh in mirroring asymmetric clustered multiprocessor systems | |
CN109120556B (zh) | 一种云主机访问对象存储服务器的方法及系统 | |
CN112968843B (zh) | 基于sdn的多路径传输控制系统及方法 | |
RU2819422C1 (ru) | Способ и устройство для определения линии связи для переадресации потока услуг | |
CN116094987A (zh) | 转发路径的确定方法及装置 | |
CN113259248B (zh) | 用于确定转发业务流的链路的方法及装置 | |
US11962485B2 (en) | Selecting and deduplicating forwarding equivalence classes | |
US7792020B2 (en) | Admission control utilizing backup links in an ethernet-based access network | |
WO2023093513A1 (zh) | 路径感知方法、装置及系统 | |
CN101699821B (zh) | 一种分布式多核网络系统中地址解析协议实现的方法 | |
CN112187642B (zh) | 自适应路由的加权带宽分配 | |
CN112104566B (zh) | 一种负载均衡的处理方法和装置 | |
US11876680B2 (en) | Method and apparatus for determining link for forwarding service flow | |
CN116800606A (zh) | 网络变更方法、网络控制设备及存储介质 | |
CN113411257B (zh) | 传输报文的方法、装置、计算设备和存储介质 | |
CN117176546A (zh) | 故障处理方法、相关设备和系统 | |
CN103370910A (zh) | 利用链路聚合进行下一跳缩放的方法、系统和计算机可读介质 | |
CN113965471A (zh) | 基于RoCEv2协议的网络构建方法及系统 |