RU2651186C1 - Method of data exchange and network node control device - Google Patents

Method of data exchange and network node control device Download PDF

Info

Publication number
RU2651186C1
RU2651186C1 RU2017129249A RU2017129249A RU2651186C1 RU 2651186 C1 RU2651186 C1 RU 2651186C1 RU 2017129249 A RU2017129249 A RU 2017129249A RU 2017129249 A RU2017129249 A RU 2017129249A RU 2651186 C1 RU2651186 C1 RU 2651186C1
Authority
RU
Russia
Prior art keywords
packet
data
network
identifier
node
Prior art date
Application number
RU2017129249A
Other languages
Russian (ru)
Inventor
Нина Анатольевна Апостолова
Юрий Викторович Колобков
Максим Сергеевич Маслов
Антон Владимирович Пинчук
Владимир Анатольевич Фрейнкман
Original Assignee
Общество с ограниченной ответственностью "Научно-Технический Центр ПРОТЕЙ"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Общество с ограниченной ответственностью "Научно-Технический Центр ПРОТЕЙ" filed Critical Общество с ограниченной ответственностью "Научно-Технический Центр ПРОТЕЙ"
Priority to RU2017129249A priority Critical patent/RU2651186C1/en
Application granted granted Critical
Publication of RU2651186C1 publication Critical patent/RU2651186C1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal

Abstract

FIELD: information technology.
SUBSTANCE: invention relates to telecommunication technologies. Technical result is achieved by providing label in header of each data packet to be transmitted between specified part of network nodes, label that includes following fields: packet destination node identifier, packet data priority class identifier, identifier of packet sender-node, identifier of packet sequence number in corresponding data priority class, ensuring distribution of data packets between specified part of network nodes by sending each data packet along one or more routes between sending node and receiving node, creating, on each of specified part of network nodes, table of received packets containing records with information about each unique packet of data received by that node, and comparing information from header of each data packet to be transmitted between said part of network nodes, with entries of received network packet table of network node from specified part of network nodes and preventing transmission of packet by this node of network if information from specified header matches the received packet table record.
EFFECT: technical result consists in providing routing and classification of data packets in network.
18 cl, 6 dwg

Description

ОБЛАСТЬ ТЕХНИКИFIELD OF TECHNOLOGY

[0001] Настоящее изобретение относится к технологиям связи и, в частности к обмену данными в форме IP-пакетов в сети.[0001] The present invention relates to communication technologies and, in particular, to the exchange of data in the form of IP packets in a network.

УРОВЕНЬ ТЕХНИКИBACKGROUND

[0002] В ряде случаев при построении сети на каком-либо объекте есть необходимость адаптировать широко используемые технические решения под выполнение особых требований к надежности и работе некоторых важных программ и приложений. Например, на некоторых промышленных объектах, имеющих систему автоматизации, происходит непрерывная оценка, запись и передача измерительной и контрольной информации, и перебои или задержки в передаче и обработке такой информации могут нести опасность. [0002] In some cases, when building a network at an object, there is a need to adapt widely used technical solutions to fulfill special requirements for the reliability and operation of some important programs and applications. For example, at some industrial facilities with an automation system, there is a continuous assessment, recording and transmission of measurement and control information, and interruptions or delays in the transmission and processing of such information can be dangerous.

[0003] Как правило, в сетях на подобных объектах используют специальные технологии, позволяющие гарантировать повышенную надежность и отказоустойчивость построенной промышленной сети. [0003] As a rule, special technologies are used in networks at such facilities to ensure increased reliability and fault tolerance of the constructed industrial network.

[0004] В подобных сетях обмен информации на канальном уровне может быть организован за счет использования семейства протоколов STP (Spanning Tree Protocol). В отечественной технической литературе это словосочетание обычно переводится как "протокол связующего дерева" [Михлевич Д., Синицын А. Повышение надежности и производительности Ethernet-сети с помощью семейства протоколов STP. – Технологии и средства связи, 2015, №6]. [0004] In such networks, the exchange of information at the channel level can be organized through the use of the STP (Spanning Tree Protocol) family of protocols. In the domestic technical literature, this phrase is usually translated as "spanning tree protocol" [Mikhlevich D., Sinitsyn A. Improving the reliability and performance of an Ethernet network using the STP protocol family. - Technologies and means of communication, 2015, No. 6].

[0005] Один из самых существенных недостатков семейства протоколов STP – наличие принципиально отличного от нуля времени восстановления сети после отказа, необходимого для перестроения маршрутов доставки пакетов. Минимизация этого времени возможна только за счет повышения скорости обмена тестовыми сообщениями, что влечет за собой существенные непроизводительные расходы полосы пропускания и вычислительных ресурсов. Кроме того, указанное время восстановления не является детерминированным и может быть оценено только в вероятностном смысле. Все это не позволяет применять протоколы семейства STP на объектах, в сетях которых циркулируют критически важные данные, относящиеся к приложениям, перерывы обслуживания для которых принципиально недопустимы по ряду соображений [International Telecommunication Union. Recommendation F.746.1: Requirements for low-latency interactive multimedia streaming. – Geneva, 2014; International Telecommunication Union. The Tactile Internet. ITU-T Technology Watch Report. – Geneva, 2014]. [0005] One of the most significant drawbacks of the STP family of protocols is the presence of a fundamentally different non-zero network recovery time after a failure, necessary for rebuilding packet delivery routes. Minimizing this time is possible only by increasing the speed of the exchange of test messages, which entails significant overhead costs of bandwidth and computing resources. In addition, the indicated recovery time is not deterministic and can only be estimated in a probabilistic sense. All this does not allow the use of STP family protocols at facilities in which critical data related to applications circulate, service interruptions for which are fundamentally unacceptable for a number of reasons [International Telecommunication Union. Recommendation F.746.1: Requirements for low-latency interactive multimedia streaming. - Geneva, 2014; International Telecommunication Union. The Tactile Internet. ITU-T Technology Watch Report. - Geneva, 2014].

[0006] Для обеспечения детерминированного и минимального времени восстановления сети также может применяться протокол PRP (Parallel Redundancy Protocol), который изначально был разработан для сетей с топологией «кольцо», но может быть реализован в сетях произвольной топологии и описан в стандарте IEC 62439-3. Реализация обмена данными в соответствии с протоколом PRP описана, например, в патенте RU 2573753. [0006] To ensure a deterministic and minimum network recovery time, the Parallel Redundancy Protocol (PRP), which was originally developed for networks with a ring topology, but can be implemented in networks of arbitrary topology and described in IEC 62439-3, can also be used. . The implementation of data exchange in accordance with the PRP protocol is described, for example, in patent RU 2573753.

[0007] Однако в сущности протокол PRP представляет собой резервирование сети путем ее дублирования, для реализации которого требуются значительные затраты на оборудование, инфраструктуру и сетевые ресурсы. С этой точки зрения более выгодным оказывается протокол HSR, который разработан для топологии «кольцо» и, как и PRP, описан в стандарте IEC 62439-3. Описание реализации обмена данными с использованием протокола HSR можно найти во всемирной сети Интернет, например, на сайте компании Flexibilis (http://www.flexibilis.com/technology/high-availability-seamless-redundancy-hsr/). Способ обмена данными в сети с топологией «кольцо» согласно протоколу HSR описан, в частности, в патенте EP 2282452. [0007] However, in essence, the PRP protocol is a redundancy of the network by its duplication, the implementation of which requires significant costs for equipment, infrastructure and network resources. From this point of view, the HSR protocol, which was developed for the ring topology and, like PRP, is described in IEC 62439-3, is more advantageous. A description of the implementation of data exchange using the HSR protocol can be found on the World Wide Web, for example, on the Flexibilis website (http://www.flexibilis.com/technology/high-availability-seamless-redundancy-hsr/). A method for exchanging data on a network with a ring topology according to the HSR protocol is described, in particular, in patent EP 2282452.

[0008] Тем не менее, алгоритм протокола HSR реализуется только в топологиях, основанных на кольцевой и ячеистой структурах, и не применим для многих других топологий. Кроме того, оборудование, поддерживающее протокол HSR, не обеспечивает те высокие скорости обмена данных, которые необходимы для перспективных приложений, включая новые виды услуг для рассматриваемого класса объектов. При этом использование для оборудования с поддержкой протокола HSR кондуктивного охлаждения нецелесообразно, так как для реализации протокола необходимы передача и обработка больших массивов служебных данных узлами сети, что существенно изменяет требования к устройствам таких узлов. В частности, для таких устройств использование кондуктивного охлаждения оказывается недостаточным. [0008] However, the HSR protocol algorithm is implemented only in topologies based on ring and mesh structures, and is not applicable to many other topologies. In addition, equipment supporting the HSR protocol does not provide the high data exchange speeds that are necessary for promising applications, including new types of services for this class of objects. At the same time, the use of conductive cooling for equipment with HSR protocol support is impractical, since the protocol requires the transfer and processing of large arrays of service data by network nodes, which significantly changes the requirements for the devices of such nodes. In particular, for such devices, the use of conductive cooling is insufficient.

[0009] Однако на практике при проектировании и реализации современных промышленных сетей зачастую ставится задача обеспечения максимальных надежности и скорости при передаче определенного типа трафика, что связано с выполнением высоких требований к сети, включающих отказоустойчивость, максимально возможный уровень живучести сети, минимальное время восстановления, минимальную задержку доставки информации, информационно-защищенное исполнение. [0009] However, in practice, when designing and implementing modern industrial networks, the task is often set to ensure maximum reliability and speed when transmitting a certain type of traffic, which is associated with fulfilling high network requirements, including fault tolerance, the maximum possible survivability of the network, the minimum recovery time, and the minimum information delivery delay, information-protected execution.

[00010] Таким образом, исходя из известного уровня техники, существует необходимость обеспечении такого технического решения, которое позволило бы организовать отказоустойчивую сеть с нулевым временем восстановления и по меньшей мере частично реализовать проблемы известных технических решений. [00010] Thus, based on the prior art, there is a need to provide such a technical solution that would organize a fault-tolerant network with zero recovery time and at least partially implement the problems of known technical solutions.

РАСКРЫТИЕ СУЩНОСТИ ИЗОБРЕТЕНИЯSUMMARY OF THE INVENTION

[00011] Согласно первому аспекту настоящего изобретения предложен способ обмена данными в сети, согласно которому обеспечивают наличие сети, часть узлов которой поддерживает режим многонаправленного распространения пакетов (МРП) данных; задают классы приоритета данных в сети; задают таблицу маршрутизации для каждого из указанной части узлов сети для передачи пакетов данных остальным узлам сети; в заголовке каждого пакета данных, предназначенного для передачи между указанной частью узлов сети, обеспечивают наличие метки, включающей следующие поля: идентификатор узла назначения пакета, идентификатор класса приоритета данных пакета, идентификатор узла-отправителя пакета, идентификатор порядкового номера пакета в соответствующем классе приоритета данных; обеспечивают распространение пакетов данных между указанной частью узлов сети путем направления каждого пакета данных по одному или большему количеству маршрутов между узлом-отправителем и узлом-получателем, причём количество маршрутов определяют в зависимости от идентификатора класса приоритета; создают на каждом из указанной части узлов сети таблицу принятых пакетов, содержащую записи с информацией о каждом уникальном принятом этим узлом пакете данных; сравнивают информацию из заголовка каждого пакета данных, предназначенного для передачи между указанной частью узлов сети, с записями таблицы принятых пакетов узла сети из указанной части узлов сети и предотвращают передачу пакета этим узлом сети, если информация из указанного заголовка совпадает с записью таблицы принятых пакетов. [00011] According to a first aspect of the present invention, there is provided a method for exchanging data on a network, the method comprising: providing a network, some of the nodes of which support a multi-directional packet distribution (MCI) mode of data; Set data priority classes on the network set a routing table for each of the specified part of the network nodes to transmit data packets to the remaining network nodes; in the header of each data packet intended for transmission between the specified part of the network nodes, there is a label that includes the following fields: identifier of the destination node of the packet, identifier of the priority class of the packet data, identifier of the sending node of the packet, identifier of the packet sequence number in the corresponding data priority class; ensure the distribution of data packets between the indicated part of the network nodes by sending each data packet along one or more routes between the sending and receiving nodes, and the number of routes is determined depending on the identifier of the priority class; create on each of the specified part of the network nodes a table of received packets containing records with information about each unique data packet received by this node; compare the information from the header of each data packet intended for transmission between the specified part of the network nodes with the records of the table of received packets of the network node from the specified part of the network nodes and prevent the transmission of the packet by this node of the network if the information from the specified header matches the record of the table of received packets.

00012] Согласно второму аспекту настоящего изобретения предложено устройство управляющего узла сети, выполненное с возможностью кондуктивного охлаждения, имеющее блок портов магистрального назначения, выполненных с возможностью многонаправленного распространения пакетов, и блок портов локального назначения, и выполненное с возможностью: добавления в заголовок каждого пакета данных, предназначенного для передачи портами магистрального назначения, метки, содержащей по меньшей мере следующие поля: идентификатор узла назначения пакета; идентификатор класса приоритета данных; идентификатор узла-отправителя пакета; идентификатор порядкового номера пакета в соответствующем классе приоритета данных; создания таблицы принятых пакетов, содержащей записи с информацией о каждом уникальном принятом этим узлом пакете данных; сравнения информации из заголовка каждого пакета данных, предназначенного для передачи портами магистрального назначения, с записями таблицы принятых пакетов, а также предотвращения передачи пакета при совпадении информации из указанного заголовка с записью таблицы принятых пакетов; передачи пакетов данных через один или большее количество портов магистрального назначения с определением указанного количества на основании идентификатора класса приоритета данных пакета. 00012] According to a second aspect of the present invention, there is provided a network control node device configured for conductive cooling, having a block of trunk ports configured for multidirectional packet distribution, and a block of local destination ports, and configured to: add data packet to the header, intended for transmission by ports of the trunk destination, a label containing at least the following fields: identifier of the destination node of the packet; identifier of the data priority class; packet sender node identifier; packet sequence number identifier in the corresponding data priority class; creating a table of received packets containing records with information about each unique data packet received by this node; comparing the information from the header of each data packet intended for transmission by the trunk ports with the records of the table of received packets, as well as preventing the transmission of the packet when the information from the specified header matches the record of the table of received packets; transmitting data packets through one or more trunk ports with the determination of the specified number based on the identifier of the priority class of the packet data.

[00013] Предлагаемое изобретение обеспечивает выборочную приоритизацию трафика в соответствии с заданными классами приоритета циркулирующих в сети данных, минимизацию служебной информации, необходимой для непрерывного функционирования сети, и минимизацию циркулирующего в сети трафика. Кроме того, предлагаемое изобретение реализуемо в сетях произвольной топологии, обеспечивает возможность физической защиты устройств управляющих узлов сети от несанкционированного доступа, обеспечивает уменьшение времени восстановления по сравнению с известными из уровня техники решениями, не требует существенных затрат на оборудование сети, а также позволяет реализовать обмен данными на скоростях выше 100 Гбит/с.[00013] The present invention provides selective prioritization of traffic in accordance with predetermined priority classes of data circulating in the network, minimizing overhead information necessary for continuous operation of the network, and minimizing traffic circulating in the network. In addition, the present invention is implemented in networks of arbitrary topology, provides the ability to physically protect the devices of the control nodes of the network from unauthorized access, provides a reduction in recovery time compared to solutions known from the prior art, does not require significant costs for network equipment, and also allows for the exchange of data at speeds above 100 Gbit / s.

[00014] Используемый здесь и далее термин «многонаправленное распространение пакетов» в рамках сети означает возможность одновременного распространения пакета по нескольким маршрутам, имеющимся между узлом-отправителем и узлом-получателем. В рамках способа обмена данными в сети указанный термин означает возможность распространения пакетов данных между узлами сети, поддерживающими режим многонаправленного распространения пакетов, путем направления каждого пакета данных по нескольким маршрутам, в частности по максимально возможному количеству маршрутов между узлом-отправителем и узлом-получателем. В рамках устройства управляющего узла сети поддержка режима многонаправленного распространения пакетов обеспечивается за счет наличия у устройства управляющего узла сети возможности ставить пакет в очередь на передачу в один или большее количество портов в зависимости от идентификатора класса приоритета данных пакета, либо, согласно одному из вариантов реализации, в максимально возможное количество портов. [00014] As used hereinafter, the term "multidirectional packet distribution" within the network means the ability to simultaneously distribute the packet along several routes between the sending node and the receiving node. As part of the method of exchanging data on the network, this term means the possibility of distributing data packets between network nodes that support the multidirectional distribution of packets by sending each data packet along several routes, in particular along the maximum possible number of routes between the sending and receiving nodes. Within the control node device, the multidirectional packet distribution mode is supported by the ability of the control node device to queue the packet for transmission to one or more ports, depending on the identifier of the priority class of the packet data, or, according to one implementation option, in as many ports as possible.

[00015] Благодаря обеспечению многонаправленного распространения пакетов данных между частью узлов сети повышается вероятность доставки пакета, даже если некоторое количество узлов сети находится в состоянии отказа, повышается надежность сети, обеспечивается минимальное время восстановления за счет реализации так называемого бесшовного резервирования сети. [00015] Due to the multidirectional distribution of data packets between part of the network nodes, the probability of packet delivery increases, even if a certain number of network nodes is in a state of failure, network reliability is increased, and a minimum recovery time is achieved due to the implementation of the so-called seamless network redundancy.

[00016] Благодаря заданию классов приоритета данных в сети, обеспечению наличия в заголовке каждого пакета данных, предназначенного для передачи между указанной частью узлов сети, метки, включающей следующие поля: идентификатор узла назначения пакета, идентификатор класса приоритета данных пакета, идентификатор узла-отправителя пакета, идентификатор порядкового номера пакета в соответствующем классе приоритета данных,а также благодаря распространению пакетов данных между указанной частью узлов сети путем направления каждого пакета данных по одному или большему количеству маршрутов между узлом-отправителем и узлом-получателем, в зависимости от идентификатора класса приоритета обеспечивается однозначная идентификация пакетов данных, а также избыточность сети, оптимизированная с использованием принципа выборочной приоритизации трафика. [00016] By defining classes of data priority on the network, ensuring that each packet header contains a label with the following fields for identifying the following fields: packet destination node identifier, packet data priority class identifier, packet sender node identifier , the identifier of the serial number of the packet in the corresponding data priority class, and also due to the distribution of data packets between the indicated part of the network nodes by sending each packet yes GOVERNMENTAL according to one or more routes between sender node and receiver node, depending on the priority class identifier provided unequivocal identification of the data packets and network redundancy optimized using the principle of selective traffic prioritization.

[00017] Кроме того, обеспечивается оптимизация избыточности сети и минимизация циркулирующего в сети трафика благодаря тому, что, согласно предлагаемому способу, создают на каждом из указанной части узлов сети таблицу принятых пакетов, содержащую записи с информацией о каждом уникальном принятом этим узлом пакете данных, сравнивают информацию из заголовка каждого предназначенного для передачи пакета данных с записями таблицы принятых пакетов и предотвращают дальнейшую передачу пакета этим узлом сети, если информация из заголовка совпадает с записью таблицы. [00017] In addition, the network redundancy is optimized and the traffic circulating in the network is minimized due to the fact that, according to the proposed method, a table of received packets containing information about each unique data packet received by this node is created on each part of the network nodes, compare the information from the header of each data packet intended for transmission with the records of the table of received packets and prevent further transmission of the packet by this host if the information from the header matches with a table entry.

[00018] Согласно предлагаемому изобретению устройства узлов сети, поддерживающие режим многонаправленного распространения пакетов, выполняют с кондуктивным охлаждением. Такое исполнение обеспечивает возможность реализации предлагаемого способа в условиях недостаточного количества или полного отсутствия воздуха, в условиях расширенного температурного диапазона и при повышенных требованиях к надежности и защищенности устройств сети от несанкционированного доступа. При этом возможность кондуктивного исполнения устройств узла сети обеспечена благодаря заданию для каждого узла сети идентификатора, имеющего минимально возможный размер при условиях его уникальности в указанной сети. Такое задание идентификаторов узлам сети также обеспечивает наиболее оптимальную конфигурацию сети, в которой возможно достичь минимизации циркулирующего трафика, в том числе – существенно снизить объем служебной информации, за счет чего, в свою очередь, обеспечивается повышение скорости обработки и передачи данных в сети. Так, в сети сложной топологии с 256 узлами (размер идентификатора узла в этом случае 8 бит) авторам удалось реализовать предлагаемое техническое решение с обеспечением скорости передачи данных 100 Гбит/с и выше. [00018] According to the invention, host devices supporting multidirectional packet distribution are conducted with conductive cooling. This performance makes it possible to implement the proposed method in conditions of insufficient quantity or complete absence of air, in the conditions of an extended temperature range and with increased requirements for the reliability and security of network devices from unauthorized access. In this case, the possibility of conductive execution of the devices of the network node is ensured by setting for each network node an identifier having the smallest possible size under the conditions of its uniqueness in the specified network. Such assignment of identifiers to network nodes also provides the most optimal network configuration in which it is possible to minimize circulating traffic, including significantly reducing the amount of service information, which, in turn, ensures an increase in the processing and transmission of data in the network. So, in a network of complex topology with 256 nodes (the size of the node identifier in this case is 8 bits), the authors managed to implement the proposed technical solution with a data transfer rate of 100 Gbit / s and higher.

[00019] Согласно различным вариантам реализации предлагаемого изобретения, выборочную приоритизацию трафика осуществляют различными вариациями исполнения, которые могут быть скомбинированы с получением приоритизации за счет нескольких операций способа и/или за счет нескольких функциональных особенностей устройства узла сети. [00019] According to various embodiments of the present invention, selective prioritization of traffic is performed by various execution variations, which can be combined to obtain prioritization due to several method operations and / or due to several functional features of the network node device.

[00020] Согласно некоторым вариантам реализации предлагаемого изобретения указанное используемое количество маршрутов между узлом-отправителем и узлом-получателем определяют в зависимости от идентификатора класса приоритета данных пакета. Благодаря такой особенности предлагаемого способа и аналогичным особенностям предлагаемого устройства обеспечивают возможность передачи наиболее приоритетных данных с более высокой скоростью за счет реализации передачи пакетов с более высоким приоритетом по большему количеству маршрутов. [00020] According to some embodiments of the invention, the indicated number of routes between the sending node and the receiving node is determined depending on the identifier of the priority class of the packet data. Due to this feature of the proposed method and similar features of the proposed device, it is possible to transmit the highest priority data at a higher speed due to the implementation of the transmission of packets with a higher priority over a larger number of routes.

[00021] Согласно некоторым вариантам реализации предлагаемого изобретения таблицу маршрутизации для каждого из указанной части узлов сети задают на основе по меньшей мере трех из следующих полей указанной метки: идентификатора узла назначения пакета, идентификатора класса приоритета данных пакета, идентификатора узла-отправителя пакета, идентификатора порядкового номера пакета в соответствующем классе приоритета данных. Согласно некоторым вариантам реализации предлагаемого способа при задании класса приоритета данных в зависимости от состояния элементов сети и их загрузки задают также некоторое количество абсолютных и некоторое количество относительных уровней приоритета данных. Благодаря указанным особенностям предлагаемого способа обмена данными в сети и аналогичным функциональным особенностям предлагаемого устройства управляющего узла сети обеспечивается однозначная идентификация пакетов, эффективная обработка и передача пакетов данных, возможность передачи высокоприоритетных данных по максимальному количеству маршрутов, а значит, более надежный и отказоустойчивый обмен данными в сети. Указанные особенности предлагаемого способа и аналогичные особенности предлагаемого устройства обеспечивают реализацию так называемого принципа тяготения трафика, согласно которому обеспечивается выборочная приоритизация трафика исходя из идентификатора класса приоритета, присваиваемого тому или иному пакету данных. Так, для пакетов данных, имеющих высокий класс приоритета, возможно предусмотреть большее количество маршрутов, чем для пакетов данных с низким классом приоритета. [00021] According to some embodiments of the invention, a routing table for each of the indicated part of the network nodes is defined based on at least three of the following fields of the specified label: identifier of the destination node of the packet, identifier of the priority class of the packet data, identifier of the sender node of the packet, and ordinal identifier packet numbers in the corresponding data priority class. According to some embodiments of the proposed method, when setting the data priority class, depending on the state of the network elements and their loading, a certain number of absolute and a certain number of relative data priority levels are also set. Due to the indicated features of the proposed method for exchanging data on the network and similar functional features of the proposed device, the control node of the network provides unambiguous identification of packets, efficient processing and transmission of data packets, the ability to transmit high priority data over the maximum number of routes, and therefore, a more reliable and fault-tolerant data exchange on the network . These features of the proposed method and similar features of the proposed device provide the implementation of the so-called traffic gravity principle, according to which selective traffic prioritization is provided based on the identifier of the priority class assigned to a particular data packet. So, for data packets having a high priority class, it is possible to provide more routes than for data packets with a low priority class.

[00022] Согласно некоторым вариантам реализации предлагаемого изобретения перед передачей пакета данных от узла, поддерживающего режим многонаправленного распространения пакетов данных, на узел, не поддерживающий такой режим, указанную метку удаляют. Благодаря указанной операции способа и аналогичным функциональным особенностям устройства управляющего узла согласно настоящему изобретению обеспечивают прозрачность сети для уровней модели взаимодействия открытых систем, основанных на стеке протоколов TCP/IP. Таким образом, для устройств узлов сети, не поддерживающих многонаправленное распространение пакетов, обеспечены беспрепятственные чтение, обработка и передача пакетов данных так, как если бы в сети отсутствовал режим многонаправленного распространения пакетов. [00022] According to some embodiments of the present invention, before transmitting a data packet from a node supporting the multidirectional distribution of data packets to a node that does not support such a mode, the specified label is deleted. Due to the indicated method operation and similar functional features of the control node device according to the present invention, network transparency is provided for the levels of the interaction model of open systems based on the TCP / IP protocol stack. Thus, for host devices that do not support multidirectional packet distribution, unobstructed reading, processing and transmission of data packets are provided as if the network did not have multidirectional packet distribution.

[00023] Согласно некоторым вариантам реализации предлагаемого изобретения при задании классов приоритета данных задают также некоторое количество абсолютных уровней приоритета данных и некоторое количество относительных уровней приоритета данных внутри класса зависимости от состояния элементов сети и их загрузки. Указанная особенность предлагаемого способа обеспечивает более выгодное использование ресурсов сети при их загрузке низкоприоритетным трафиком, как и обеспечение возможности прерывания передачи пакетов данных с относительным уровнем приоритета для ускорения передачи пакетов данных с абсолютным классом приоритета согласно ещё одному варианту реализации предлагаемого способа. [00023] According to some embodiments of the invention, when defining data priority classes, a certain number of absolute data priority levels and a certain number of relative data priority levels within the class are also defined depending on the state of network elements and their loading. The indicated feature of the proposed method provides a more advantageous use of network resources when they are loaded with low priority traffic, as well as the possibility of interrupting the transmission of data packets with a relative priority level to accelerate the transmission of data packets with an absolute priority class according to another embodiment of the proposed method.

[00024] Согласно некоторым вариантам реализации предлагаемого изобретения очередь передачи пакетов данных формируют на основании по меньшей мере одного из следующих полей указанной метки: идентификатора узла назначения пакета, идентификатора класса приоритета данных пакета. Указанные особенности предлагаемого способа передачи данных и аналогичные особенности предлагаемого устройства управляющего узла обеспечивают приоритизацию передачи пакетов по соответствующим параметрам.[00024] According to some embodiments of the invention, a data packet transmission queue is formed based on at least one of the following fields of the specified label: packet destination node identifier, packet data priority class identifier. These features of the proposed method of data transfer and similar features of the proposed device of the control node provide prioritization of packet transmission by appropriate parameters.

[00025] Согласно некоторым вариантам реализации предлагаемого изобретения метка также содержит поле резерва для дополнительных нужд. Указанная особенность предлагаемого способа обеспечивает возможность реализации дополнительного функционала в рамках предложенной концепции. Согласно некоторым вариантам реализации логическая единица в поле резерва используется для приостановки обслуживания всех видов трафика кроме жизненно важных для того объекта, в границах которого создана сеть обмена данными. В таких примерах реализации логический ноль в поле резерва указывает на возобновление обслуживания всех видов трафика.[00025] According to some embodiments of the invention, the label also contains a reserve field for additional needs. The specified feature of the proposed method provides the possibility of implementing additional functionality in the framework of the proposed concept. According to some implementation options, the logical unit in the reserve field is used to suspend the maintenance of all types of traffic except for vital for the object within which a data exchange network has been created. In such implementation examples, a logical zero in the reserve field indicates the resumption of service for all types of traffic.

[00026] Варианты осуществления настоящего изобретения предусматривают способ обмена данными и устройство узла для сети с произвольной топологией, обеспечивающие технический результат в виде выборочной приоритизации трафика, высоких надежности и пропускной способности сети, её низкой латентности, нулевого времени восстановления, а также прозрачности для стека протоколов TCP/IP на сетевом и канальном уровнях модели взаимодействия открытых систем.[00026] Embodiments of the present invention provide a data exchange method and a node device for a network with an arbitrary topology, providing a technical result in the form of selective prioritization of traffic, high reliability and throughput of the network, its low latency, zero recovery time, and transparency for the protocol stack TCP / IP at the network and link layers of the open systems interaction model.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙBRIEF DESCRIPTION OF THE DRAWINGS

[00027] Ниже представлено более подробное описание предлагаемых технических решений в виде вариантов осуществления настоящего изобретения со ссылками на прилагаемые чертежи, необходимые для описания вариантов осуществления. Необходимо отметить, что фигуры далее демонстрируют лишь некоторые варианты осуществления настоящего изобретения.[00027] The following is a more detailed description of the proposed technical solutions in the form of embodiments of the present invention with reference to the accompanying drawings, necessary to describe embodiments. It should be noted that the figures further demonstrate only some embodiments of the present invention.

[00028] Фиг. 1 - сеть связи с топологией «закольцованная n-мерная решетка» в штатном состоянии согласно одному из вариантов реализации изобретения; [00028] FIG. 1 - communication network with the topology "ring n-dimensional lattice" in the normal state according to one embodiment of the invention;

[00029] Фиг. 2 – сеть связи с топологией «закольцованная n-мерная решетка» с потерей общности согласно одному из вариантов реализации изобретения; [00029] FIG. 2 - communication network with the topology "looped n-dimensional lattice" with loss of generality according to one embodiment of the invention;

[00030] Фиг. 3 – структура заголовка пакета согласно одному из вариантов предлагаемого способа обмена данными;[00030] FIG. 3 - structure of the packet header according to one of the options of the proposed method of data exchange;

[00031] Фиг. 4 - структурная блок-схема устройства узла коммутации согласно одному из вариантов осуществления настоящего изобретения; [00031] FIG. 4 is a structural block diagram of a switching node device according to one embodiment of the present invention;

[00032] Фиг. 5 - блок-схема работы предлагаемого устройства управляющего узла сети согласно одному из вариантов реализации изобретения, когда пакет приходит с узла сети, поддерживающего режим МРП; [00032] FIG. 5 is a block diagram of the operation of the proposed device of the control node of the network according to one embodiment of the invention, when the packet arrives from a node of the network supporting the MCI mode;

[00033] Фиг. 6 - блок-схема работы предлагаемого устройства управляющего узла сети согласно одному из вариантов реализации изобретения, когда пакет приходит с узла сети, не поддерживающего режим МРП. [00033] FIG. 6 is a block diagram of the operation of the proposed device of the control node of the network according to one embodiment of the invention when the packet arrives from a node of the network that does not support MCI mode.

ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯDETAILED DESCRIPTION OF THE INVENTION

[00034] Для лучшего понимания по меньшей мере некоторых из решаемых настоящим изобретением задач они далее объяснены на примере сети с топологией "закольцованная n-мерная решетка", модель которой показана на Фиг. 1. Сеть состоит из N узлов коммутации (далее - УК). В каждый УК включается несколько терминалов (оконечных устройств). Их количество для УК под номерами "1", "4" и "N" составляет K, L и M соответственно. Нумерация терминалов (оконечных устройств) основана на двух числах, разделенных запятой. Первое число соответствует порядковому номеру терминала (оконечного устройства). Второе число определяет номер того УК, в который включен терминал (оконечное устройство). Общее количество УК, равное N, в штатном режиме функционирования объекта, без потери общности, считается неизменным. В составе сети, в дополнение к набору естественно существующей совокупности колец, образуется два "крупных" кольца, пронумерованных римскими цифрами. [00034] For a better understanding of at least some of the problems solved by the present invention, they are further explained on the example of a network with a “n-dimensional ring lattice” topology, the model of which is shown in FIG. 1. The network consists of N switching nodes (hereinafter - CC). Each UK includes several terminals (terminal devices). Their number for the capital under the numbers "1", "4" and "N" is K, L and M, respectively. The numbering of terminals (terminals) is based on two numbers separated by a comma. The first number corresponds to the serial number of the terminal (terminal device). The second number determines the number of the criminal code in which the terminal (terminal device) is included. The total number of criminal codes equal to N in the normal mode of operation of the facility, without loss of generality, is considered unchanged. As part of the network, in addition to a set of naturally existing set of rings, two “large” rings are formed, numbered in Roman numerals.

[00035] Предлагаемое техническое решение, помимо построения отказоустойчивой сети для объектов, в которых применение сложной топологии обусловлено их стереометрическими параметрами (1-я задача), в различных вариантах реализации обеспечивает также решение других задач: обеспечение максимально возможного уровня живучести сети при характерных (для объекта) разрушающих воздействиях (2); отсутствие затрат времени на восстановление сети при повреждениях (3); минимизация избыточных объемов информации (количества IP-пакетов), циркулирующей в сети (4); прозрачность для уровней модели взаимодействия открытых систем, основанных на стеке протоколов TCP/IP (5); отсутствие недокументированных возможностей и защита от несанкционированного доступа (6). [00035] The proposed technical solution, in addition to building a fault-tolerant network for objects in which the application of complex topology is determined by their stereometric parameters (1st task), in various implementation options also provides the solution to other tasks: ensuring the highest possible level of network survivability with typical (for object) destructive effects (2); lack of time spent on network restoration in case of damage (3); minimization of excess volumes of information (the number of IP packets) circulating in the network (4); transparency for the levels of the interaction model of open systems based on the TCP / IP protocol stack (5); lack of undocumented capabilities and protection against unauthorized access (6).

[00036] Первая задача, поставленная перед настоящим изобретением, решается за счет организации по меньшей мере двух независимых (в базовых понятиях теории надежности) маршрутов между каждой парой узлов в границах одного кольца, которое на фигуре 1 изображено в виде квадрата с номерами УК, различающимися не более чем на 3. Для рассматриваемой модели показаны маршруты I и II, определяющие независимые пути обмена информацией между УК1 и УК4. Обозначив через pi вероятность нахождения i-го УК в работоспособном состоянии, а через qij – вероятность нахождения тракта обмена информацией между УК под номерами i и j в работоспособном состоянии, получаем значение коэффициента готовности КГ: [00036] The first problem posed by the present invention is achieved by organizing at least two independent (in the basic concepts of reliability theory) routes between each pair of nodes within the boundaries of one ring, which is shown in figure 1 as a square with CC numbers different no more than 3. For the model under consideration, routes I and II are shown, which determine independent ways of exchanging information between UK1 and UK4. Denoting by pi the probability of finding the i-th UK in a healthy state, and by qij the probability of finding the information exchange path between the UK under the numbers i and j in a healthy state, we obtain the value of the KG availability factor:

[00037] (1)[00037] (1)

[00038] Коэффициент готовности КГ определяет вероятность связности УК1 иУК4. Для реальных значений pi (не менее 0,99999) и qij (не хуже 0,9999) величина КГ оценивается на уровне примерно 0,9999999. Используя принцип "практической уверенности", можно полагать, что задача обеспечения отказоустойчивости сети, построенной на базе топологии "закольцованная n-мерная решетка", решена.[00038] The KG availability coefficient determines the likelihood of connectivity of UK1 and UK4. For real values of pi (not less than 0.99999) and qij (not worse than 0.9999), the value of the CG is estimated at about 0.9999999. Using the principle of "practical certainty", we can assume that the problem of ensuring the fault tolerance of a network built on the basis of the "ring n-dimensional lattice" topology is solved.

[00039] Фактически реализуется принцип параллельного бесшовного резервирования сети, который основан на одновременном использовании дополнительных маршрутов.[00039] In fact, the principle of parallel seamless network redundancy is implemented, which is based on the simultaneous use of additional routes.

[00040] Вторую задачу, поставленную перед настоящим изобретением, решают с учетом характерных видов разрушающих воздействий. В качестве примера такого вида разрушающих воздействий ниже рассматривается разрушение фрагмента сети по одной из сторон "закольцованной n-мерной решетки". Пример использующегося маршрута между УК1 и УКN при нарушении практически максимального (по размеру) фрагмента сети показан на фигуре 2. Предполагается, что в состоянии "отказ" находятся УК с четными номерами от "2" до "N2", а также тракты обмена информацией между ними. [00040] The second problem posed to the present invention is solved taking into account the characteristic types of destructive influences. As an example of this type of destructive action, we consider below the destruction of a network fragment along one of the sides of a “looped n-dimensional lattice”. An example of the used route between UK1 and UKN in case of violation of the almost maximum (in size) network fragment is shown in Figure 2. It is assumed that UKs with even numbers from "2" to "N2" are in a "denied" state, as well as information exchange paths between them.

[00041] На основании известных соотношений из теории вероятностей кольцевая структура может быть заменена топологией, изображенной на фигуре 2, но с повышенной связностью вершин графа. Этот факт подчеркивает утолщение соответствующих элементов рассматриваемой модели. [00041] Based on the known relationships from probability theory, the ring structure can be replaced by the topology depicted in Figure 2, but with increased connectivity of the vertices of the graph. This fact underlines the thickening of the corresponding elements of the model under consideration.

[00042] Для типичных значений N по формуле (1) несложно оценить вероятность работоспособного состояния самого "длинного" маршрута обмена информацией. Для всех других пар УК полученное значение КГ представляет собой нижнюю оценку вероятности наличия связности. При меньшем количестве отказавших элементов (по сравнению с ситуацией, показанной для рассматриваемой модели) величина КГ будет выше. [00042] For typical values of N by the formula (1), it is easy to estimate the probability of a working state of the longest information exchange route. For all other pairs of AC, the obtained value of CG represents a lower estimate of the probability of the presence of connectivity. With a smaller number of failed elements (compared with the situation shown for the model under consideration), the CG value will be higher.

[00043] Поставленные перед изобретением задачи 3-5 решают за счет разработки специализированного протокола канального уровня. Протокол в контексте настоящего изобретения также указан как режим многонаправленного распространения пакетов и далее обозначен аббревиатурой МРП. Протокол МРП является модификацией (дополнением функционала) стандарта Ethernet на канальном уровне. Предлагаемая модификация позволяет снизить непроизводительную загрузку каждого транзитного УК и сети в целом, свойственную классическому стандарту Ethernet. Схожим с протоколом МРП является упомянутый в уровне техники алгоритм HSR [Tien N.X, Nsaif S.A., Rhee J.M. A Comparison of Techniques for Reducing Unicast Traffic in HSR Networks. – Energies, 2015, №8; Kirrmann H. HSR – High Availability Seamless Redundancy. – Presentation of IEC, 2012]. Однако по сравнению с протоколом МРП применение протокола HSR ограничено сетями с кольцевой топологией, а также не обеспечивает высоких скоростей передачи данных. [00043] The tasks 3-5 set before the invention are solved by developing a specialized link layer protocol. The protocol in the context of the present invention is also indicated as a multidirectional packet distribution mode and is further indicated by the abbreviation MCI. The MCI protocol is a modification (addition of functionality) of the Ethernet standard at the data link layer. The proposed modification allows to reduce the unproductive load of each transit CC and the network as a whole, typical of the classic Ethernet standard. Similar to the MCI protocol is the HSR algorithm mentioned in the prior art [Tien N.X, Nsaif S.A., Rhee J.M. A Comparison of Techniques for Reducing Unicast Traffic in HSR Networks. - Energies, 2015, No. 8; Kirrmann H. HSR - High Availability Seamless Redundancy. - Presentation of IEC, 2012]. However, compared with the MCI protocol, the use of the HSR protocol is limited to networks with a ring topology, and also does not provide high data rates.

[00044] Пятая задача, кроме того, решается за счет реализации такого интерфейса между вторым и третьим уровнями модели взаимодействия открытых систем, который обеспечивает прозрачность для стека протоколов TCP/IP. В данном контексте согласно предлагаемому протоколу предлагается коммутация по меткам, которые при этом имеют малый размер и фиксированную длину, что позволяет обеспечить быструю обработку и передачу пакетов и легкое удаление метки для передачи на канальный уровень. При этом устройства канального уровня получают пакет без каких-либо модификаций. [00044] The fifth task, in addition, is achieved through the implementation of such an interface between the second and third levels of the open systems interaction model, which provides transparency for the TCP / IP protocol stack. In this context, according to the proposed protocol, label switching is proposed, which at the same time has a small size and a fixed length, which allows for fast processing and transmission of packets and easy removal of tags for transmission to the data link layer. At the same time, data link devices receive a packet without any modifications.

[00045] Суммируя вышесказанное, преимущества протокола МРП по сравнению с известным протоколом HSR обусловлены следующими аргументами: [00045] Summarizing the above, the advantages of the MCI protocol over the well-known HSR protocol are due to the following arguments:

•протокол HSR разрабатывался для кольцевой структуры, его применение для сетей с иной топологией неэффективно; • the HSR protocol was developed for a ring structure; its use for networks with a different topology is inefficient;

• протокол HSR не предусматривает обмен информацией на высоких скоростях, необходимых для рассматриваемого класса объектов;• the HSR protocol does not provide for the exchange of information at high speeds necessary for the class of objects under consideration;

•при большом количестве УК в составе сети со сложной топологией процесс обмена кадрами Ethernet по протоколу HSR зачастую становится похож на режим "вещание" (broadcasting), что повышает задержку доставки информации; • with a large number of ACs in a network with a complex topology, the process of exchanging Ethernet frames via the HSR protocol often becomes similar to the “broadcasting” mode, which increases the delay in information delivery;

•использование протокола МРП позволяет снизить объем передаваемой информации в сети с любым значением количества УК, но при условии, что топология сети заранее задана. Таким образом существенно сокращается задержка доставки информации. • Using the MCI protocol allows reducing the amount of information transmitted in the network with any value of the number of ACs, but provided that the network topology is predefined. This significantly reduces the delay in the delivery of information.

[00046] Таким образом, концепция настоящего изобретения предполагает реализацию протокола МРП в сети с произвольной топологией и заданными классами приоритета данных, циркулирующих в сети. [00046] Thus, the concept of the present invention involves the implementation of the MCI protocol in a network with an arbitrary topology and given priority classes of data circulating in the network.

[00047] Согласно предлагаемому изобретению реализуют так называемое многонаправленное распространение пакетов, которое обеспечивает рассылку пакетов данных по множеству маршрутов в сети без необходимости физической реализации резервных частей инфраструктуры сети. Таким образом, предлагаемые способ и устройство позволяют минимизировать затраты на дополнительное оборудование, инфраструктуру и сетевые ресурсы по сравнению с известным из уровня техники способом обмена данными по протоколу PRP. [00047] According to the invention, a so-called multidirectional packet distribution is implemented, which enables the distribution of data packets over multiple routes in a network without the need for physical implementation of redundant parts of the network infrastructure. Thus, the proposed method and device can minimize the cost of additional equipment, infrastructure and network resources in comparison with the prior art method for exchanging data via PRP.

[00048] В сети, где реализовано предлагаемое изобретение, возможно реализовать не только классификацию различных типов трафика по приоритету, но и существенно снизить нагрузку на полосу пропускания и в целом уменьшить объем передаваемой служебной информации, предназначенной для обработки и управления трафиком. Те же преимущества реализованы и благодаря тому, что предлагаемое устройство узла сети выполнено с возможностью добавления в заголовок каждого пакета данных, предназначенного для передачи портами магистрального назначения, метки, содержащей по меньшей мере следующие поля: идентификатор узла назначения пакета; идентификатор класса приоритета данных; идентификатор узла-отправителя пакета; идентификатор порядкового номера пакета в соответствующем классе приоритета данных. [00048] In a network where the present invention is implemented, it is possible to implement not only the classification of various types of traffic by priority, but also significantly reduce the bandwidth load and generally reduce the amount of transmitted overhead information intended for processing and traffic management. The same advantages are realized due to the fact that the proposed host device is capable of adding to the header of each data packet intended for transmission by trunk ports a label containing at least the following fields: identifier of the packet destination node; identifier of the data priority class; packet sender node identifier; identifier of the packet sequence number in the corresponding data priority class.

[00049] Сравнивая предлагаемое изобретение с известным из уровня техники решением для обмена данными по протоколу HSR, можно также говорить о возможностях более высокой скорости передачи информации, обеспечиваемой предлагаемыми способом и устройством. Согласно известному из уровня техники способу обмена данными по протоколу HSR, для определения и удаления дублей используются по меньшей мере идентификатор отправителя и идентификатор порядкового номера пакета в последовательности, причем поле идентификатора отправителя содержит MAC-адрес отправителя и имеет размер 48 бит (6 байтов), а поле идентификатора последовательности имеет размер 16 бит. Таким образом, для определения дубля необходимо накопить довольно большой объем данных и иметь большую по размеру таблицу MAC-адресов, а для внесения информации из заголовка пакета в таблицу дублей требуется большой объем памяти. Соответственно увеличивается и время обработки такого объема данных, и в таких обстоятельствах достижимую скорость передачи данных можно оценить примерно в 100 Мбит/с. В отличие от этого, в предлагаемых способе и устройстве фактически предлагается определение дублей пакета данных посредством сравнения идентификатора отправителя, содержащего идентификатор коммутатора назначения, имеющего, согласно некоторым вариантам реализации, минимально возможный размер при условии его уникальности в рамках данной сети, идентификатора порядкового номера пакета в соответствующем классе приоритета данных и идентификатора класса приоритета трафика. Это позволяет на несколько порядков увеличить скорость работы устройства узла коммутации и сети в целом, а также, что немаловажно, снизить стоимость такого устройства узла сети и другого оборудования, необходимого для реализации предлагаемого способа обмена данными. Дополнительно, за счет реализованного в предлагаемом способе и устройстве узла сети механизма классификации трафика по приоритету обеспечивается возможность передачи наиболее приоритетных данных на максимальной скорости. При этом по оценкам, основанным на реализованных авторами вариантах осуществления предлагаемого способа обмена данными и устройства узла сети (содержащей 256 узлов), предлагаемое изобретение позволяет реализовать обмен данными на сетевом уровне на скорости 100 Гбит/с и выше. [00049] Comparing the present invention with a solution known from the prior art for exchanging data via the HSR protocol, we can also talk about the possibilities of a higher information transfer rate provided by the proposed method and device. According to the prior art method of exchanging data via the HSR protocol, at least the sender identifier and the packet sequence number identifier in the sequence are used to determine and remove duplicates, the sender identifier field contains the sender MAC address and has a size of 48 bits (6 bytes), and the sequence identifier field is 16 bits in size. Thus, to determine the duplicate, it is necessary to accumulate a rather large amount of data and have a large table of MAC addresses, and to enter information from the packet header into the duplicate table, a large amount of memory is required. Accordingly, the processing time of such a volume of data also increases, and in such circumstances, the achievable data transfer rate can be estimated at about 100 Mbit / s. In contrast, the proposed method and device actually offers the definition of duplicates of a data packet by comparing the sender identifier containing the identifier of the destination switch, which, according to some implementation options, has the smallest possible size, provided it is unique within the given network, the identifier of the packet serial number in the corresponding data priority class and the identifier of the traffic priority class. This allows you to increase the operating speed of the device of the switching node and the network as a whole by several orders of magnitude, and also, importantly, to reduce the cost of such a device of the network node and other equipment necessary to implement the proposed method of data exchange. Additionally, due to the priority classification mechanism implemented in the proposed method and device of the network node, it is possible to transmit the highest priority data at maximum speed. Moreover, according to estimates based on the embodiments of the proposed method for exchanging data and the device of the network node (containing 256 nodes) implemented by the authors, the present invention allows for data exchange at the network level at a speed of 100 Gbit / s and higher.

[00050] Концепция предлагаемого изобретения основана на формировании и добавлении так называемой метки (части заголовка пакета) в заголовок пакета, при этом метка существует только на магистральном уровне узла коммутации, а при передаче на локальный уровень сети метку удаляют из заголовка пакета. Благодаря вышеуказанному механизму обработки данных на локальном уровне нет никаких следов метки в заголовке пакета: метка удаляется на устройстве коммутационного узла назначения, и конечное устройство не замечает никаких следов этих манипуляций, а значит, в качестве оконечного устройства не требуется использовать какое-либо специальное устройство, способное читать заголовок с метками. За счет того, что метка имеет фиксированную длину, а модификация заголовка пакета производится только внутри ядра сети, в рамках предлагаемого изобретения обеспечивается прозрачность для стека протоколов TCP/IP. Таким образом, предлагаемый способ обмена данными в сети с произвольной топологией обеспечивает надежность и не требует затрат времени на восстановление, минимизирует объем циркулирующей в сети информации и обеспечивает простоту конфигурирования сети на базе широко распространенного стека протоколов TCP/IP. [00050] The concept of the present invention is based on the formation and addition of the so-called label (part of the packet header) to the packet header, while the tag exists only at the backbone level of the switching node, and when transferred to the local network level, the tag is removed from the packet header. Thanks to the above data processing mechanism at the local level, there are no traces of a label in the packet header: the label is deleted on the device of the destination switching node, and the end device does not notice any traces of these manipulations, which means that no special device is required as the terminal device, able to read the headline with tags. Due to the fact that the label has a fixed length, and the modification of the packet header is carried out only inside the network core, transparency of the TCP / IP protocol stack is provided within the framework of the present invention. Thus, the proposed method for exchanging data in a network with an arbitrary topology ensures reliability and does not require time-consuming restoration, minimizes the amount of information circulating in the network and provides ease of network configuration based on the widespread TCP / IP protocol stack.

[00051] В рамках предлагаемого изобретения можно выделить два принципа – принцип многонаправленного распространения пакетов, обеспечивающий отказоустойчивость и надежность сети, и принцип тяготения трафика, обеспечивающий приоритизацию трафика. Оба указанных принципа реализованы в рамках настоящего изобретения совместно за счет общей совокупности существенных признаков изобретения. Согласно предпочтительному варианту реализации оба принципа используются совместно, однако возможны применения настоящего изобретения, реализующие только принцип многонаправленного распространения пакетов.[00051] In the framework of the present invention, two principles can be distinguished: the principle of multidirectional distribution of packets, providing fault tolerance and reliability of the network, and the principle of gravity of traffic, providing prioritization of traffic. Both of these principles are implemented in the framework of the present invention together due to the general combination of essential features of the invention. According to a preferred embodiment, both principles are used together, however, applications of the present invention that implement only the principle of multidirectional packet distribution are possible.

[00052] Вышеуказанное также справедливо и для предлагаемого согласно изобретению устройства узла сети в силу наличия у него общих со способом технических признаков.[00052] The above is also true for the proposed device of the network node due to the presence of technical common features with the method.

[00053] Предлагаемое изобретение применимо в сетях практически с любой топологией с произвольной связностью, при этом за любым узлом коммутации сети может находиться сеть с произвольной топологией, которая принимает пакеты без указанной части заголовка пакета и на работу которой эта часть никак не влияет.[00053] The present invention is applicable to networks with virtually any topology with arbitrary connectivity, while behind any network switching node there may be a network with an arbitrary topology that receives packets without a specified part of the packet header and which does not affect its operation.

[00054] Указанные в отношении предлагаемого изобретения преимущества тем существеннее, чем более чувствительные к скорости доставки информации задачи решает сеть. [00054] The advantages indicated in relation to the present invention are all the more significant, the more network solves the problems that are more sensitive to the speed of information delivery.

[00055] Структура заголовка пакета, в котором предусмотрены перечисленные выше возможности, приведена на Фиг. 3 и имеет место в одном из вариантов реализации настоящего изобретения. Перед отправкой пакета в порт УК формируется заголовок пакета. Согласно одному из вариантов реализации изобретения заголовок состоит из полей DIL, TC, "Резерв", SIL, "Протокол", Seq, END и TTL.[00055] The packet header structure in which the above features are provided is shown in FIG. 3 and takes place in one embodiment of the present invention. Before sending a packet to the UK port, a packet header is formed. According to one embodiment of the invention, the header consists of the fields DIL, TC, "Reserve", SIL, "Protocol", Seq, END and TTL.

[00056] DIL (destination ID label) – идентификатор назначения, номер коммутатора назначения.[00056] DIL (destination ID label) - destination identifier, destination switch number.

[00057] TC (traffic class) – идентификатор приоритета пакета данных, класс и/или уровень трафика, определяющий приоритет передачи и обработки. [00057] TC (traffic class) - identifier of the priority of the data packet, class and / or traffic level, which determines the priority of transmission and processing.

[00058] Резерв – резервное поле, один бит, который может понадобиться в будущем для введения дополнительных функциональных возможностей.[00058] A reserve is a reserve field, one bit that may be needed in the future to introduce additional functionality.

[00059] SIL (source ID label) – идентификатор отправителя пакета, номер УК, задаваемый статически. Такая возможность чаще всего обусловлена спецификой объекта, для которого создается промышленная сеть. [00059] SIL (source ID label) - identifier of the sender of the package, the number of the code, specified statically. This possibility is most often due to the specifics of the object for which an industrial network is being created.

[00060] Seq – идентификатор порядкового номера пакета данных в соответствующем классе приоритета данных, порядковый номер пакета. Согласно рассматриваемому варианту реализации счетчики пакетов ведутся для каждого из TC. Поле Seq формируется для каждого пакета согласно его TC.[00060] Seq - identifier of the sequence number of the data packet in the corresponding data priority class, sequence number of the packet. According to this embodiment, packet counters are maintained for each of the TCs. The Seq field is generated for each packet according to its TC.

[00061] Протокол – идентификатор управляющего пакета, типа данных или вида протокола.[00061] Protocol - identifier of the control packet, data type or type of protocol.

[00062] END – идентификатор последней метки. Ее значение указывает на тот факт, что вложенных меток больше нет.[00062] END is the identifier of the last tag. Its value indicates the fact that there are no more nested labels.

[00063] TTL (time to live) – идентификатор "времени жизни пакета". Согласно одному из вариантов реализации изобретения по этому полю подсчитывается количество коммутаторов на маршруте между УК SIL и DIL. Каждый УК, поучивший пакет, уменьшает значение поля на 1. Коммутатор, через который пакет попадает в магистральную сеть, выставляет максимально возможное значение.[00063] TTL (time to live) is the identifier of the "packet lifetime". According to one embodiment of the invention, this number is used to calculate the number of switches on the route between SIL and DIL. Each CC that has learned the packet reduces the field value by 1. The switch through which the packet enters the trunk network sets the maximum possible value.

[00064] Согласно одному из вариантов реализации изобретения для стандартного IP-пакета, если идентификатор назначения пакета не находится в рассматриваемом сегменте сети (пакет предназначен для передачи на сетевой порт рассматриваемого узла сети), формируется часть заголовка (МРП-метка): по заранее заданным данным определяют, какому узлу сети принадлежит адрес назначения в заголовке пакета и формируют поле DIL. Идентификатор SIL отправителя пакета в этом случае заранее известен самому узлу сети (заранее задан). В некоторых вариантах реализации предлагаемого технического решения узлам сети задают идентификаторы, имеющие минимально возможный размер при условии их уникальности в рамках данной сети. В рассматриваемом варианте реализации размер идентификатора сети предусмотрен для обмена данными в сети, имеющей не более 256 узлов. Однако специалисту в области техники понятно, что приведенный пример метки МРП является лишь иллюстративным и может быть изменен и оптимизирован для нужд конкретной сети. Идентификатор TC класса приоритета данных генерируется на основе оригинального заголовка пакета. Для корректной работы сети предварительно определяются приоритетные данные и классы трафика (правила интерпретации приоритета) – согласно предпочтительному варианту реализации, конфигурация и уровни приоритетов задаются предварительно с учетом специфики объекта. После определения класса трафика определяется, в какое количество и какие из магистральных портов необходимо поставить в очередь пакет.[00064] According to one embodiment of the invention for a standard IP packet, if the packet destination identifier is not in the considered network segment (the packet is intended for transmission to the network port of the considered network node), a part of the header is formed (MCI mark): according to the predefined the data determines which network node the destination address in the packet header belongs to and form the DIL field. In this case, the SIL identifier of the packet sender is known in advance to the host itself (predefined). In some embodiments of the proposed technical solution, network nodes are assigned identifiers having the smallest possible size, provided they are unique within the given network. In this embodiment, the size of the network identifier is provided for exchanging data in a network having no more than 256 nodes. However, one of ordinary skill in the art will understand that the example of the MCI label is illustrative only and can be modified and optimized for the needs of a particular network. The TC identifier of the data priority class is generated based on the original packet header. For the network to work correctly, priority data and traffic classes (priority interpretation rules) are preliminarily determined - according to the preferred embodiment, the configuration and priority levels are preliminarily determined taking into account the specifics of the object. After determining the class of traffic, it is determined how many and which of the trunk ports it is necessary to queue the packet.

[00065] Поля, используемые в заголовке пакета, существенно расширяют функциональные возможности протоколов, применяемых в настоящее время в сетях обмена данными. В частности, поддерживается механизм, позволяющий учитывать тяготение трафика различной природы: приоритетные данные направляются в несколько портов, более приоритетный класс трафика имеет больше направлений распространения. Согласно некоторым вариантам реализации изобретения для низкоприоритетного трафика может не быть резервного маршрута. Согласно одному из вариантов реализации для каждого класса приоритета задается некоторое количество альтернативных маршрутов. В этом смысле возможны различные варианты реализации изобретения, в которых могут вводиться абсолютные уровни приоритета и относительные уровни приоритета в дополнение к классам приоритета. В таких вариантах реализации абсолютный приоритет пакета означает, что передача и обработка менее приоритетного пакета прерывается для освобождения ресурсов под обработку и передачи пакета с абсолютным приоритетом. Менее приоритетный пакет при этом может быть отброшен (система с потерями низкоприоритетных данных), дообслужен или обслужен заново (системы без потерь низкоприоритетных данных). Согласно одному из вариантов осуществления изобретения, реализованных авторами, вводятся 4 уровня абсолютного приоритета и 4 уровня относительного приоритета трафика: пакеты с абсолютным приоритетом не задерживаются и подаются в очередь на передачу в соответствии с заданными 4 уровнями, а пакеты относительного приоритета передаются в соответствии с заданными согласно уровням весовыми коэффициентами. Например, у TC (классов приоритета) 3..0 заданы коэффициенты 16, 8, 4, 2. Это значит, что на 16 пакетов приоритета «3» будут переданы только 2 пакета приоритета «0». В таких вариантах реализации обозначение полей предпочтительно соответствует символам, принятым, в основном, для протоколов Ethernet и им подобных спецификаций. Таким образом, согласно предпочтительному варианту реализации изобретения приоритетные данные направляются в несколько портов, причем более приоритетный класс имеет больше направлений распространения, а в некоторых других вариантах реализации для низкоприоритетного трафика может не быть резервного маршрута. Для каждого класса приоритета данных путем задания количества копий для пакетов, относящихся к этому классу приоритета данных, определяется количество альтернативных маршрутов - чем выше класс приоритета, тем больше альтернативных маршрутов. Согласно одному из вариантов реализации устройства узла сети предлагаемого изобретения все порты магистрального уровня сконфигурированы в режим МРП, то есть на указанных портах осуществляется чтение МРП-метки заголовка пакета. [00065] The fields used in the packet header significantly expand the functionality of the protocols currently used in data communication networks. In particular, a mechanism is supported that allows one to take into account the gravity of traffic of various nature: priority data is sent to several ports, a higher priority traffic class has more distribution directions. According to some embodiments of the invention, there may not be a backup route for low priority traffic. According to one implementation variant, a certain number of alternative routes are specified for each priority class. In this sense, various embodiments of the invention are possible in which absolute priority levels and relative priority levels can be introduced in addition to priority classes. In such embodiments, absolute priority of a packet means that transmission and processing of a lower priority packet is interrupted to free resources for processing and transmission of a packet with absolute priority. In this case, a lower priority packet can be discarded (a system with loss of low priority data), re-serviced or serviced anew (systems without loss of low priority data). According to one embodiment of the invention, implemented by the authors, 4 levels of absolute priority and 4 levels of relative priority of traffic are introduced: packets with absolute priority are not delayed and are sent to the transmission queue in accordance with the specified 4 levels, and packets of relative priority are transmitted in accordance with the given according to levels by weighting factors. For example, TC (priority classes) 3..0 have coefficients of 16, 8, 4, 2. This means that for 16 priority packets “3” only 2 priority packets “0” will be transmitted. In such embodiments, the field designation preferably corresponds to characters generally accepted for Ethernet protocols and the like. Thus, according to a preferred embodiment of the invention, priority data is routed to several ports, the higher priority class having more propagation directions, and in some other embodiments there may not be a backup route for low priority traffic. For each data priority class, by setting the number of copies for packets belonging to this data priority class, the number of alternative routes is determined - the higher the priority class, the more alternative routes. According to one embodiment of the device of the network node of the invention, all the ports of the trunk level are configured in the MCI mode, that is, the MPC label of the packet header is read on the indicated ports.

[00066] Общая концепция изобретения заключается в многонаправленной передаче данных в зависимости от приоритета, причем более приоритетные данные таким образом дублируются (в различных направлениях) большее количество раз и соответственно передаются по большему, например максимальному, количеству направлений. Дополнительно передача менее приоритетных данных может быть реализована с возможностью прерывания и/или прекращения с обеспечением возможности передачи более приоритетных данных. [00066] The general concept of the invention is multidirectional data transmission depending on priority, with more priority data being thus duplicated (in different directions) more times and, accordingly, transmitted over a larger, for example, maximum, number of directions. Additionally, the transmission of less priority data can be implemented with the possibility of interruption and / or termination with the possibility of transmitting more priority data.

[00067] На Фиг. 4 показана структурная блок-схема устройства управляющего узла согласно одному из вариантов предлагаемого изобретения. Необходимо отметить, что некоторые не показанные на данном изображении элементы предлагаемого устройства (например, блок памяти) являются типичными для таких устройств управляющего узла, а некоторые являются дополнительными с точки зрения функционала, характерными именно для предлагаемого изобретения, и могут способствовать достижению каких-либо дополнительных преимуществ. Как показано на Фиг. 4, устройство (1) управляющего узла сети имеет блок (2) портов магистрального назначения, соединенный с магистральным уровнем (3) сети, и может иметь блок (4) портов локального назначения, посредством портов которого к устройству управляющего узла сети подключают различные устройства (5) локального уровня (6) сети. Как правило, устройства (5) локального уровня сети не обладают возможностью обрабатывать пакеты данных, имеющие различные нестандартные заголовки, в частности имеющие МРП-метку в заголовке. [00067] FIG. 4 shows a structural block diagram of a control unit device according to one embodiment of the invention. It should be noted that some elements of the proposed device (for example, a memory block) that are not shown in this image are typical for such devices of the control unit, and some are additional in terms of functionality, specific to the present invention, and can contribute to the achievement of any additional advantages. As shown in FIG. 4, the device (1) of the control node of the network has a block (2) of trunk ports connected to the trunk level (3) of the network, and may have a block (4) of ports of local destination, through the ports of which various devices are connected to the device of the control node of the network ( 5) local level (6) network. As a rule, devices (5) at the local network level do not have the ability to process data packets having various non-standard headers, in particular, those with an MPI label in the header.

[00068] Блок-схема работы устройства управляющего узла сети, согласно одному из вариантов реализации настоящего изобретения, показана на Фиг. 4 и 5 и основана на двух сценариях работы узла коммутации сети. [00068] A block diagram of an operation of a device of a control network node, according to one embodiment of the present invention, is shown in FIG. 4 and 5 and is based on two scenarios of the network switching node.

[00069] Рассмотрим подробнее Фиг. 5, на которой описана работа предлагаемого устройства узла сети в соответствии с предлагаемым способом обмена данными согласно одному из вариантов реализации изобретения, когда пакет данных поступает с узла сети, поддерживающего режим МРП. [00069] Consider in more detail FIG. 5, which describes the operation of the proposed device of the network node in accordance with the proposed method of exchanging data according to one embodiment of the invention, when the data packet comes from a network node supporting the MCI mode.

[00070] При начале работы сеть проходит этап конфигурации, на котором устройства узлов получают идентификаторы узла (этап 100) и параметры по классам приоритета в сети (этап 110) и получают таблицы маршрутизации на основании идентификаторов класса приоритета, идентификаторов узла-отправителя и идентификаторов узла назначения (этап 120). Когда пакет приходит от управляющего узла, работающего в режиме МРП (этап 130), на другой такой узел сети, в заголовке пакета уже есть метка МРП. Согласно рассматриваемому варианту реализации данная метка содержит следующие поля: идентификатор узла назначения пакета; идентификатор класса приоритета данных; идентификатор узла-отправителя пакета; идентификатор порядкового номера пакета в соответствующем классе приоритета данных. Согласно некоторым другим вариантам реализации метка также может включать и другие поля. После получения пакета устройство сохраняет его в памяти, читает его метку (этап 140) и определяет, принадлежит ли идентификатор узла назначения данному управляющему узлу (этап 150). Например, к управляющему узлу сети могут быть подключены несколько узлов локального уровня, которые не поддерживают режим МРП и не читают МРП-метку, если идентификатор узла назначения пакета совпадает с идентификатором одного из таких узлов, то устройство управляющего узла сети удаляет из заголовка пакета данных МРП-метку и ставит ссылку на сохраненный пакет данных в очередь на передачу через соответствующий узел локального назначения, который устройство определяет из таблицы маршрутизации. Согласно некоторым вариантам реализации предлагаемого технического решения в сети задаются относительные и абсолютные уровни приоритета, и устройство также может прерывать передачу пакетов данных, имеющих относительный уровень приоритета для передачи пакетов данных, имеющих абсолютный уровень приоритета. В случае если идентификатор назначения пакета не принадлежит данному управляющему узлу, это означает, что для доставки пакета узлу назначения пакет данных требуется передать другому управляющему узлу сети (поддерживающему режим МРП). Поскольку между управляющими узлами сети, поддерживающими режим МРП, возможно многонаправленное распространение пакетов, существует возможность, что один и тот же пакет данных может прийти к одному узлу различными маршрутами и быть принят узлом повторно. Для исключения повторной передачи таких пакетов устройство управляющего узла перед передачей пакета другому управляющему узлу сравнивает информацию из полей заголовка каждого принятого им пакета данных, предназначающегося другому управляющему узлу сети, с соответствующими полями таблицы принятых пакетов (этап 160). В случае если информация указанных полей совпадает, это означает, что данное устройство управляющего узла уже получило этот пакет данных ранее, а рассматриваемый пакет данных является его "дублем". Для предотвращения многократного распространения дублей (которое перегружает сеть и не несет пользы) передачу таких пакетов устройство управляющего узла не производит, а сам пакет удаляет из памяти (этап 180). В случае, когда принятый устройством управляющего узла пакет оказывается уникальным (информация из полей его заголовка не совпадает с соответствующими полями ни одной из записей таблицы принятых пакетов), информацию из полей заголовка такого пакета устройство вносит в таблицу принятых пакетов (этап 170). После этого на основании информации из заголовка пакета и таблицы маршрутизации, которая была получена устройством на этапе 120, устройство управляющего узла сети определяет порты, в очередь которых необходимо поставить ссылку на сохраненный пакет для его дальнейшей передачи, и ставит их в соответствующие очереди (этап 171). Затем согласно некоторым вариантам реализации осуществляется передача пакета согласно очереди, однако в рассматриваемом варианте реализации предусмотрен механизм дополнительной приоритизации трафика за счет прерывания передачи пакетов данных с более низким идентификатором класса приоритета (этап 172). Как правило, устройство одновременно выполняет этапы 171 и 172 при построении очереди на передачу пакетов на каждом из портов магистрального назначения. [00070] At the start of operation, the network goes through the configuration phase, where the node devices receive node identifiers (step 100) and parameters by priority classes in the network (step 110) and obtain routing tables based on priority class identifiers, sending host identifiers, and node identifiers destination (step 120). When a packet comes from a control node operating in MCI mode (step 130), to another such network node, there is already a MCI label in the packet header. According to the embodiment, this label contains the following fields: identifier of the packet destination node; identifier of the data priority class; packet sender node identifier; identifier of the packet sequence number in the corresponding data priority class. In some other embodiments, the label may also include other fields. After receiving the packet, the device stores it in memory, reads its label (step 140) and determines whether the identifier of the destination node belongs to this control node (step 150). For example, several local-level nodes that do not support MCI mode and do not read the MCI label can be connected to the control node of the network, if the identifier of the packet destination node matches the identifier of one of such nodes, the device of the control node of the network removes MCI data from the header of the packet -mark and puts the link to the saved data packet in the queue for transmission through the corresponding local destination node, which the device determines from the routing table. According to some embodiments of the proposed technical solution, relative and absolute priority levels are set in the network, and the device can also interrupt the transmission of data packets having a relative priority level for transmitting data packets having an absolute priority level. If the destination identifier of the packet does not belong to this control node, this means that in order to deliver the packet to the destination node, the data packet must be transferred to another control node of the network (supporting MCI mode). Since multidirectional distribution of packets between control nodes of the network supporting the MCI mode is possible, there is a possibility that the same data packet may arrive at the same node by different routes and be received by the node again. To prevent the retransmission of such packets, the device of the control node, before transmitting the packet to another control node, compares the information from the header fields of each received data packet destined for another control node of the network with the corresponding fields in the table of received packets (step 160). If the information of the indicated fields coincides, this means that this device of the control node has already received this data packet earlier, and the data packet in question is its “double”. To prevent multiple spreads of duplicates (which overloads the network and is of no use), the control unit device does not transfer such packets, but the packet itself is deleted from the memory (step 180). In the case when the packet received by the control node device is unique (the information from the fields of its header does not coincide with the corresponding fields of any of the entries in the table of received packets), the device enters the information from the header fields of such a packet into the table of received packets (step 170). After that, based on the information from the packet header and the routing table that was received by the device at step 120, the device of the controlling network node determines the ports in the queue of which you need to put a link to the saved packet for further transmission, and puts them in the appropriate queues (step 171 ) Then, according to some implementation options, the packet is transmitted according to the queue, however, in the considered embodiment, a mechanism is provided for additional prioritization of traffic by interrupting the transmission of data packets with a lower priority class identifier (step 172). Typically, the device simultaneously performs steps 171 and 172 when building a queue for packet transmission on each of the ports of the main destination.

[00071] В случае, если принятый пакет имеет идентификатор узла назначения, который относится к данному управляющему узлу, его предстоит передать на локальный уровень через порт локального назначения. Таким образом, пакет покидает магистральный уровень сети («ядро» сети) и переходит к устройствам локального уровня, которые необязательно выполнены с возможностью чтения заголовков пакетов, содержащих дополнительные метки. Для дальнейшей успешной передачи и обработки пакета данных в этом случае устройство управляющего узла сети удаляет из заголовка пакета МРП-метку (этап 190), а затем ставит ссылку на сохраненный пакет данных в соответствующий порт локального назначения (этап 191) и передает указанный пакет данных в соответствии с очередью порта локального назначения (этап 192). [00071] In the event that the received packet has an identifier of the destination node, which refers to this control node, it will be transmitted to the local level via the local destination port. Thus, the packet leaves the backbone layer of the network (the “core” of the network) and proceeds to devices of the local level, which are optionally configured to read packet headers containing additional labels. For further successful transmission and processing of the data packet in this case, the device of the control node of the network removes the MPP mark from the packet header (step 190), and then puts a link to the saved data packet in the corresponding local destination port (step 191) and transfers the specified data packet to according to the local port port queue (step 192).

[00072] Перейдём к рассмотрению Фиг. 6, где показана работа предлагаемого устройства узла сети в соответствии с предлагаемым способом обмена данными согласно одному из вариантов реализации изобретения, когда пакет данных поступает из узла сети, не поддерживающего режим МРП. [00072] Let us turn to the consideration of FIG. 6, where the operation of the proposed host device is shown in accordance with the proposed data exchange method according to one embodiment of the invention, when the data packet comes from a host that does not support MCI mode.

[00073] Как видно на Фиг. 6, для такого случая практически не отличается этап конфигурации сети (этапы 100-120) согласно рассматриваемому варианту реализации настоящего изобретения. На этапе 130 устройство управляющего узла получает пакет данных не от устройства, также поддерживающего режим МРП, а от устройства, не способного обеспечивать многонаправленное распространение пакетов данных, а также читать, обрабатывать и генерировать МРП-метки, то есть не поддерживающего такой режим. Понятно, что пакет, пришедший с такого устройства, может иметь разнообразные виды заголовка в зависимости от общего используемого в сети стека протоколов. Однако МРП-метки такой пакет не имеет. При получении такого пакета устройство управляющего узла сети прежде всего сохраняет его в памяти и читает его заголовок. В заголовке такого пакета, который устройство читает (этап 140), несмотря на отсутствие МРП-метки, есть информация об узле-получателе этого пакета данных. Устройство определяет, относится ли идентификатор узла назначения пакета к данному узлу (этап 150). В случае, если данный пакет предназначен для передачи к другому управляющему узлу сети и подключенного к нему узла локального уровня, пакет предстоит передать другому управляющему узлу сети через некоторое количество портов магистрального назначения (портов устройства управляющего узла сети, посредством которых осуществлено соединение этого управляющего узла сети и другими управляющими узлами сети (узлами магистрального уровня)). В случае, если пакет предстоит передать другому управляющему узлу сети, устройство управляющего узла сети формирует и добавляет в заголовок такого пакета МРП-метку (этап 160). Указанный этап производится именно при получении управляющим узлом сети пакета данных от узла локального уровня, поскольку в таком случае МРП-метка в заголовке этого пакета данных отсутствует, а для реализации режима МРП и соответствующих преимуществ согласно настоящему изобретению указанная метка должна иметься в заголовке пакета, передаваемого на магистральном уровне сети. Однако, как было пояснено выше, за счет обеспечения многонаправленного распространения пакетов между узлами магистрального назначения возможна передача копий одного и того же пакета. В контексте настоящего изобретения копиями (дублями) считаются те пакеты, которые приходят позже одного уже пришедшего на узел уникального пакета, а уникальными в терминологии настоящего изобретения названы пакеты, имеющие уникальные в рамках рассматриваемого управляющего узла заголовки. Для предотвращения загрузки ресурсов сети такими «дублями» устройство управляющего узла сети производит сравнение информации из полей заголовка каждого принятого им пакета данных, предназначающегося другому управляющему узлу сети, с соответствующими полями таблицы принятых пакетов (этап 170). По результатам этого сравнения устройство либо удаляет пакет из памяти (этап 190) – в случае, если информация из полей заголовка такого пакета совпала с полями одной из записей таблицы принятых пакетов, либо вносит в таблицу принятых пакетов информацию из соответствующих полей принятого пакета, если совпадающей с ними полей записи в таблице не найдено (этап 180). Здесь следует отметить, что совокупность полей, информация из которых вносится в таблицу принятых пакетов на каждом поддерживающем многонаправленное распространение пакетов узле, может, согласно различным вариантам реализации, быть разной, но предпочтительно её выбирают минимальной с обеспечением однозначной идентификации пакетов данных в рамках рассматриваемой сети. После того, как информация из заголовка пакета внесена в таблицу принятых пакетов устройства управляющего узла сети, устройство выполняет этапы 181 и 182, которые аналогичны этапам 171 и 172 на Фиг.5. [00073] As seen in FIG. 6, for such a case, the network configuration step is practically the same (steps 100-120) according to the considered embodiment of the present invention. At step 130, the device of the control node receives a data packet not from a device that also supports MCI mode, but from a device that is not able to provide multidirectional distribution of data packets, as well as read, process and generate MCI labels, that is, which does not support such a mode. It is understood that a packet arriving from such a device can have various types of headers, depending on the general protocol stack used on the network. However, such a packet does not have an MRI tag. Upon receipt of such a packet, the device of the controlling network node first of all saves it in memory and reads its header. The header of such a packet that the device reads (step 140), despite the absence of an MCI tag, contains information about the recipient node of this data packet. The device determines whether the identifier of the packet destination node belongs to this node (step 150). If this packet is intended to be transferred to another control node of the network and the local level node connected to it, the packet will be transmitted to another control node of the network through a number of trunk ports (device ports of the control network node, through which this control node of the network is connected and other managing network nodes (nodes of the trunk level)). If the packet is to be transferred to another control node of the network, the device of the control node of the network generates and adds an MPI mark to the header of such a packet (step 160). The indicated step is carried out precisely upon receipt by the control node of the network of a data packet from the local level node, since in this case there is no MCI label in the header of this data packet, and for the implementation of MCI mode and corresponding advantages according to the present invention, this label should be in the header of the packet transmitted at the backbone level of the network. However, as explained above, by providing multidirectional distribution of packets between the nodes of the main destination, it is possible to transmit copies of the same packet. In the context of the present invention, copies (duplicates) are considered to be packets that come later than one unique packet that has already arrived at the node, and packets having headers that are unique within the control node under consideration are called unique in the terminology of the present invention. To prevent the loading of network resources with such “takes”, the device of the control node of the network compares information from the header fields of each received data packet destined for another control node of the network with the corresponding fields of the table of received packets (step 170). Based on the results of this comparison, the device either deletes the packet from the memory (step 190) - in case the information from the header fields of such a packet coincides with the fields of one of the entries in the table of received packets, or enters information from the corresponding fields of the received packet into the table of received packets, if it matches no record fields were found with them in the table (step 180). It should be noted here that the set of fields from which information is entered into the table of received packets at each node supporting multidirectional packet distribution may, according to various implementation options, be different, but it is preferable to choose the minimum one to ensure unambiguous identification of data packets within the network under consideration. After the information from the packet header is entered into the table of received packets of the device of the control node of the network, the device performs steps 181 and 182, which are similar to steps 171 and 172 of FIG. 5.

[00074] В случае, если идентификатор узла назначения пакета относится к данному управляющему узлу сети, его не требуется передавать другим управляющим узлам сети, реализующим многонаправленное распространение пакетов, а значит, пакет уже находится в виде, который будет способно обработать следующее принимающее устройство. Устройство управляющего узла сети в этом случае ставит ссылку на такой пакет данных в очередь порта локального назначения согласно таблице маршрутизации (этап 200) и передает его в соответствии с очередью (этап 201). [00074] If the identifier of the destination node of the packet refers to this control node of the network, it does not need to be transferred to other control nodes of the network that implement multidirectional distribution of packets, which means that the packet is already in the form that the next receiving device will be able to process. In this case, the device of the controlling network node puts a link to such a data packet in the queue of the local port according to the routing table (step 200) and transmits it in accordance with the queue (step 201).

[00075] Согласно различным вариантам реализации предлагаемого изобретения приоритизация трафика осуществляется за счет задания уровней (абсолютного или относительного) и классов приоритета статически – например, по расписанию, составляемому администратором сети. Согласно другому варианту реализации предлагаемого изобретения эта процедура может осуществляться динамически, например, в зависимости от работоспособности элементов сети и показателей их загрузки. Согласно одному из вариантов реализации предлагаемого технического решения устройство управляющего узла сети выполнено с возможностью определять предпочтительные порты для постановки в них ссылок на пакеты данных на основании по меньшей мере загруженности узлов сети, например, на основании длины очереди на передачу. Согласно некоторым вариантам реализации выбор предпочтительного порта осуществляется на основании совместного анализа длины очереди из ожидающих пакетов и уровня загрузки узла.[00075] According to various embodiments of the invention, traffic prioritization is carried out by setting the levels (absolute or relative) and priority classes statically - for example, according to a schedule drawn up by the network administrator. According to another embodiment of the invention, this procedure can be carried out dynamically, for example, depending on the health of the network elements and their load indicators. According to one embodiment of the proposed technical solution, the control node of the network device is configured to determine preferred ports for linking to data packets based on at least the load on the network nodes, for example, based on the length of the transmission queue. In some embodiments, the preferred port is selected based on a joint analysis of the queue length from the waiting packets and the node load level.

[00076] Таким образом, все приведенные примеры реализации объединены общей концепцией, сущность которой определена приведенной формулой изобретения. [00076] Thus, all of the above examples of implementation are united by a common concept, the essence of which is defined by the claims.

[00077] Приведенные в описании примеры, а также их альтернативные признаки являются иллюстративными вариантами реализации настоящего изобретения и не призваны ограничивать объем защиты настоящего изобретения. Любые изменения или замены, очевидные специалисту в данной области техники, в объеме, определенном формулой настоящего изобретения, считаются включенными в объем защиты настоящего изобретения, определенный формулой изобретения.[00077] The examples described, as well as their alternative features, are illustrative embodiments of the present invention and are not intended to limit the scope of protection of the present invention. Any changes or substitutions that are obvious to a person skilled in the art, within the scope defined by the claims, are considered to be included in the scope of protection of the present invention defined by the claims.

Claims (29)

1. Способ обмена данными в сети, согласно которому 1. A method of exchanging data on a network, according to which обеспечивают наличие сети, часть узлов которой поддерживает режим многонаправленного распространения пакетов данных; provide a network, some of the nodes of which support the multidirectional distribution of data packets; задают классы приоритета данных в сети; Set data priority classes on the network задают таблицу маршрутизации для каждого из указанной части узлов сети для передачи пакетов данных остальным узлам сети; set a routing table for each of the specified part of the network nodes to transmit data packets to the remaining network nodes; в заголовке каждого пакета данных, предназначенного для передачи между указанной частью узлов сети, обеспечивают наличие метки, включающей следующие поля: идентификатор узла назначения пакета, идентификатор класса приоритета данных пакета, идентификатор узла-отправителя пакета, идентификатор порядкового номера пакета в соответствующем классе приоритета данных; in the header of each data packet intended for transmission between the specified part of the network nodes, there is a label that includes the following fields: identifier of the destination node of the packet, identifier of the priority class of the packet data, identifier of the sending node of the packet, identifier of the packet sequence number in the corresponding data priority class; обеспечивают распространение пакетов данных между указанной частью узлов сети путем направления каждого пакета данных по одному или большему количеству маршрутов между узлом-отправителем и узлом-получателем, причём количество маршрутов определяют в зависимости от идентификатора класса приоритета; ensure the distribution of data packets between the indicated part of the network nodes by sending each data packet along one or more routes between the sending and receiving nodes, and the number of routes is determined depending on the identifier of the priority class; создают на каждом из указанной части узлов сети таблицу принятых пакетов, содержащую записи с информацией о каждом уникальном принятом этим узлом пакете данных; create on each of the specified part of the network nodes a table of received packets containing records with information about each unique data packet received by this node; сравнивают информацию из заголовка каждого пакета данных, предназначенного для передачи между указанной частью узлов сети, с записями таблицы принятых пакетов узла сети из указанной части узлов сети и предотвращают передачу пакета этим узлом сети, если информация из указанного заголовка совпадает с записью таблицы принятых пакетов. compare the information from the header of each data packet intended for transmission between the specified part of the network nodes with the records of the table of received packets of the network node from the specified part of the network nodes and prevent the transmission of the packet by this node of the network if the information from the specified header matches the record of the table of received packets. 2. Способ обмена данными по п. 1, согласно которому узлы сети, поддерживающие режим многонаправленного распространения пакетов, выполнены с кондуктивным охлаждением.2. The method of exchanging data according to claim 1, according to which the network nodes supporting the multidirectional packet distribution mode are made with conductive cooling. 3. Способ обмена данными по любому из пп. 1, 2, согласно которому для каждого узла сети задают идентификатор, имеющий минимально возможный размер при условиях его уникальности в указанной сети. 3. The method of exchanging data according to any one of paragraphs. 1, 2, according to which for each network node an identifier is set that has the smallest possible size under the conditions of its uniqueness in the specified network. 4. Способ обмена данными по любому из пп. 1-3, согласно которому указанное количество маршрутов является максимально возможным.4. The method of exchanging data according to any one of paragraphs. 1-3, according to which the specified number of routes is the maximum possible. 5. Способ обмена данными по любому из пп. 1-4, согласно которому таблицу маршрутизации для каждого из указанной части узлов сети задают на основании по меньшей мере трех из следующих полей указанной метки: идентификатора узла назначения пакета, идентификатора класса приоритета данных пакета, идентификатора узла-отправителя пакета, идентификатора порядкового номера пакета в соответствующем классе приоритета данных. 5. A method of exchanging data according to any one of paragraphs. 1-4, according to which the routing table for each of the specified part of the network nodes is set based on at least three of the following fields of the specified label: the identifier of the destination node of the packet, the identifier of the priority class of the packet data, the identifier of the sender of the packet, the identifier of the packet sequence number in corresponding data priority class. 6. Способ обмена данными по любому из пп. 1-5, согласно которому перед передачей пакета данных от узла, поддерживающего режим многонаправленного распространения пакетов данных, на узел, не поддерживающий такой режим, указанную метку удаляют. 6. The method of exchanging data according to any one of paragraphs. 1-5, according to which, before transmitting a data packet from a node supporting the multidirectional distribution of data packets to a node that does not support such a mode, the specified label is deleted. 7. Способ обмена данными по любому из пп. 1-6, согласно которому при задании классов приоритета данных в зависимости от состояния элементов сети и их загрузки задают также некоторое количество абсолютных и некоторое количество относительных уровней приоритета данных, таких что для передачи пакетов данных с абсолютным уровнем приоритета прерывают передачу пакетов данных с относительным уровнем приоритета. 7. A method of exchanging data according to any one of paragraphs. 1-6, according to which, when defining data priority classes, depending on the state of network elements and their loading, a certain number of absolute and a certain number of relative data priority levels are also set, such that data packets with a relative level are interrupted for transmission of data packets with an absolute priority level priority. 8. Способ обмена данными по любому из пп. 1-7, согласно которому формируют очередь передачи пакетов данных на основании по меньшей мере одного из следующих полей указанной метки: идентификатора узла назначения пакета, идентификатора класса приоритета данных пакета.8. The method of exchanging data according to any one of paragraphs. 1-7, according to which a data packet transmission queue is formed based on at least one of the following fields of the specified label: identifier of the packet destination node, identifier of the priority class of packet data. 9. Способ обмена данными по любому из пп. 1-7, согласно которому указанная метка также содержит резервное поле. 9. The method of exchanging data according to any one of paragraphs. 1-7, according to which the specified label also contains a backup field. 10. Способ обмена данными по любому из пп. 1-7, согласно которому указанная метка также содержит по меньшей мере одно из следующих полей: идентификатор управляющего пакета, типа данных или вида протокола; идентификатор последней метки; идентификатор времени жизни пакета. 10. A method of exchanging data according to any one of paragraphs. 1-7, according to which the specified label also contains at least one of the following fields: identifier of the control packet, data type or protocol type; identifier of the last tag; packet lifetime identifier. 11. Устройство управляющего узла сети, выполненное с возможностью кондуктивного охлаждения, имеющее блок портов магистрального назначения, выполненных с возможностью многонаправленного распространения пакетов, и блок портов локального назначения и выполненное с возможностью: 11. The device of the control node of the network, made with the possibility of conductive cooling, having a block of ports of the main destination, made with the possibility of multidirectional distribution of packets, and a block of ports of local destination and made with the possibility of: добавления в заголовок каждого пакета данных, предназначенного для передачи портами магистрального назначения, метки, содержащей по меньшей мере следующие поля: идентификатор узла назначения пакета; идентификатор класса приоритета данных; идентификатор узла-отправителя пакета; идентификатор порядкового номера пакета в соответствующем классе приоритета данных; adding to the header of each data packet intended for transmission by the trunk ports, a label containing at least the following fields: identifier of the packet destination node; identifier of the data priority class; packet sender node identifier; packet sequence number identifier in the corresponding data priority class; создания таблицы принятых пакетов, содержащей записи с информацией о каждом уникальном принятом этим узлом пакете данных; creating a table of received packets containing records with information about each unique data packet received by this node; сравнения информации из заголовка каждого пакета данных, предназначенного для передачи портами магистрального назначения, с записями таблицы принятых пакетов, а также предотвращения передачи пакета при совпадении информации из указанного заголовка с записью таблицы принятых пакетов; comparing the information from the header of each data packet intended for transmission by the trunk ports with the records of the table of received packets, as well as preventing the transmission of the packet when the information from the specified header matches the record of the table of received packets; передачи пакетов данных через один или большее количество портов магистрального назначения с определением указанного количества на основании идентификатора класса приоритета данных пакета. transmitting data packets through one or more trunk ports with the determination of the specified number based on the identifier of the priority class of the packet data. 12. Устройство управляющего узла сети по п. 11, содержащее таблицу маршрутизации, заданную на основе по меньшей мере трех из следующих полей указанной метки: идентификатора узла назначения пакета, идентификатора класса приоритета данных пакета, идентификатора узла-отправителя пакета, идентификатора порядкового номера пакета в соответствующем классе приоритета данных.12. The device of the control node of the network according to claim 11, containing a routing table defined on the basis of at least three of the following fields of the specified label: identifier of the packet destination node, identifier of the priority class of packet data, identifier of the packet sending node, identifier of the packet sequence number in corresponding data priority class. 13. Устройство управляющего узла сети по любому из пп. 11, 12, выполненное с возможностью формировать указанную метку на основании имеющегося заголовка пакета данных и заданных параметров приоритетности данных в сети. 13. The device control node of the network according to any one of paragraphs. 11, 12, configured to generate the specified label based on the existing header of the data packet and the given parameters of data priority in the network. 14. Устройство управляющего узла сети по любому из пп. 11, 12, выполненное с возможностью формировать на каждом из портов очередь пакетов для передачи на основании по меньшей мере одного из следующих полей указанной метки: идентификатора узла назначения пакета, идентификатора класса приоритета данных пакета. 14. The device control node of the network according to any one of paragraphs. 11, 12, configured to form a queue of packets on each of the ports for transmission on the basis of at least one of the following fields of the specified label: identifier of the packet destination node, identifier of the priority class of packet data. 15. Устройство управляющего узла сети по любому из пп. 11, 12, выполненное с возможностью определения портов для осуществления передачи пакета данных на основании значений по меньшей мере одного из следующих полей указанной метки: идентификатора узла назначения пакета; идентификатора класса приоритета данных; идентификатора узла отправителя пакета; идентификатора порядкового номера пакета в соответствующем классе приоритета данных. 15. The device control node of the network according to any one of paragraphs. 11, 12, configured to determine ports for transmitting a data packet based on values of at least one of the following fields of the specified label: identifier of the packet destination node; identifier of the data priority class; packet sender node identifier; packet sequence number identifier in the corresponding data priority class. 16. Устройство управляющего узла сети по любому из пп. 11-15, выполненное с возможностью удаления указанной метки из заголовка пакета данных, предназначенного для передачи через порт локального назначения. 16. The device control node of the network according to any one of paragraphs. 11-15, configured to remove the specified label from the header of the data packet intended for transmission through the local port. 17. Устройство управляющего узла сети по п. 16, выполненное с возможностью прерывания передачи пакета данных с идентификатором более низкого класса приоритета для передачи пакета данных с идентификатором более высокого класса приоритета. 17. The control node of the network according to claim 16, configured to interrupt the transmission of a data packet with an identifier of a lower priority class for transmitting a data packet with an identifier of a higher priority class. 18. Устройство управляющего узла сети по п. 17, выполненное с возможностью определять предпочтительные порты для передачи через них трафика в данный момент времени.18. The control node of the network according to claim 17, configured to determine preferred ports for transmitting traffic through them at a given time.
RU2017129249A 2017-08-16 2017-08-16 Method of data exchange and network node control device RU2651186C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2017129249A RU2651186C1 (en) 2017-08-16 2017-08-16 Method of data exchange and network node control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2017129249A RU2651186C1 (en) 2017-08-16 2017-08-16 Method of data exchange and network node control device

Publications (1)

Publication Number Publication Date
RU2651186C1 true RU2651186C1 (en) 2018-04-18

Family

ID=61977130

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2017129249A RU2651186C1 (en) 2017-08-16 2017-08-16 Method of data exchange and network node control device

Country Status (1)

Country Link
RU (1) RU2651186C1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2678470C1 (en) * 2018-05-12 2019-01-29 Общество с ограниченной ответственностью "Центр инноваций ИСТ" Data blocks in the switched network multi-routing method
RU207676U1 (en) * 2021-06-10 2021-11-11 Общество С Ограниченной Ответственностью "Эмзиор" PACKET SWITCHING AND ROUTING DEVICE WITH ELBRUS PROCESSOR AND INTERFACES 100 GBE

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6781994B1 (en) * 1997-12-25 2004-08-24 Kabushiki Kaisha Toshiba Distributing ATM cells to output ports based upon destination information using ATM switch core and IP forwarding
US20150003283A1 (en) * 2013-06-28 2015-01-01 Cisco Technology, Inc. A multi-layer stateful path computation element architecture
US20160080221A1 (en) * 2014-09-16 2016-03-17 CloudGenix, Inc. Methods and systems for controller-based network topology identification, simulation and load testing
RU2598293C1 (en) * 2013-02-22 2016-09-20 Зте Корпорейшн Method and apparatus for transmitting standard configuration data of improved system of selecting a transmitting protocol
US20170126549A1 (en) * 2015-10-28 2017-05-04 Citrix Systems, Inc. System and method for customizing packet processing order in networking devices

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6781994B1 (en) * 1997-12-25 2004-08-24 Kabushiki Kaisha Toshiba Distributing ATM cells to output ports based upon destination information using ATM switch core and IP forwarding
RU2598293C1 (en) * 2013-02-22 2016-09-20 Зте Корпорейшн Method and apparatus for transmitting standard configuration data of improved system of selecting a transmitting protocol
US20150003283A1 (en) * 2013-06-28 2015-01-01 Cisco Technology, Inc. A multi-layer stateful path computation element architecture
US20160080221A1 (en) * 2014-09-16 2016-03-17 CloudGenix, Inc. Methods and systems for controller-based network topology identification, simulation and load testing
US20170126549A1 (en) * 2015-10-28 2017-05-04 Citrix Systems, Inc. System and method for customizing packet processing order in networking devices

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2678470C1 (en) * 2018-05-12 2019-01-29 Общество с ограниченной ответственностью "Центр инноваций ИСТ" Data blocks in the switched network multi-routing method
RU207676U1 (en) * 2021-06-10 2021-11-11 Общество С Ограниченной Ответственностью "Эмзиор" PACKET SWITCHING AND ROUTING DEVICE WITH ELBRUS PROCESSOR AND INTERFACES 100 GBE

Similar Documents

Publication Publication Date Title
US7362755B2 (en) Process for implementing a switched full-duplex ethernet type communication network with redundancy
US7075889B2 (en) Packet protection technique
US7675859B2 (en) Transmission apparatus and transmission system
CN101640703B (en) Layer two MAC removing/re-routing
US7710959B2 (en) Private VLAN edge across multiple switch modules
US10404773B2 (en) Distributed cluster processing system and packet processing method thereof
US8462804B2 (en) Self-cleaning mechanism for error recovery
JP5883743B2 (en) Method for reducing communication interruption time in packet communication networks
JP2016535904A (en) System and method for providing data services in engineered systems for execution of middleware and applications
CN103428060A (en) Seamless redundancy realization method of loop network
CN101471854A (en) Method and device for forwarding message
WO2016165142A1 (en) Preserving method and device for virtual network
RU2651186C1 (en) Method of data exchange and network node control device
RU2602333C2 (en) Network system, packet processing method and storage medium
JP4074310B2 (en) Traffic distributed control device, packet communication network, and program
US7733857B2 (en) Apparatus and method for sharing variables and resources in a multiprocessor routing node
CA2341939C (en) Label request packet transmission method, packet transfer network and method thereof, and packet transfer device
US20100246425A1 (en) Packet processing apparatus, interface unit and method thereof
WO2018004931A1 (en) Techniques for virtual ethernet switching of a multi-node fabric
CN105681223A (en) SDN data packet forwarding method and method
CN109286564B (en) Message forwarding method and device
CN108965013A (en) IP and the quick open system of optical network service and method
US20180069790A1 (en) Packet transfer device and packet transfer method
CN111510384A (en) Method, electronic device and computer-readable medium for processing data generated by a service
US7324438B1 (en) Technique for nondisruptively recovering from a processor failure in a multi-processor flow device