WO2023093513A1 - 路径感知方法、装置及系统 - Google Patents

路径感知方法、装置及系统 Download PDF

Info

Publication number
WO2023093513A1
WO2023093513A1 PCT/CN2022/130384 CN2022130384W WO2023093513A1 WO 2023093513 A1 WO2023093513 A1 WO 2023093513A1 CN 2022130384 W CN2022130384 W CN 2022130384W WO 2023093513 A1 WO2023093513 A1 WO 2023093513A1
Authority
WO
WIPO (PCT)
Prior art keywords
path
node
information
data flow
identifier
Prior art date
Application number
PCT/CN2022/130384
Other languages
English (en)
French (fr)
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 华为技术有限公司
Publication of WO2023093513A1 publication Critical patent/WO2023093513A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data 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/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/26Route discovery packet

Definitions

  • the present application relates to the communication field, and in particular to a path perception method, device and system.
  • Today's data center network includes a large number of servers. Servers can be interconnected through network cards, switches, routers, cables, and optical fibers to form a super-large-scale intra-group and inter-group data center network. This large-scale data center network has become even larger under the trend of cloud computing. On the basis of the physical facilities of the data center are large-scale, distributed services, such as high-performance computing, distributed storage, and cloud services.
  • Distributed services are characterized by a large scale and many software systems to realize the distributed services, so a large number of components are required to realize the distributed services, and the coupling relationship between the components is very complicated.
  • the existing data flow path perception scheme is very complicated. For example, after the source node sends a detection message, each intermediate node that receives the detection message needs to modify the structure of the detection message. In the detection message Add its own identity in , to indicate the intermediate node that the path detected by the probe message passes through.
  • intermediate node 1 receives the detection message and encapsulates the identifier of intermediate node 1 into the message.
  • the encapsulated message includes intermediate node 1.
  • Intermediate node 2 receives the message forwarded by intermediate node 1 and encapsulates its own identity. To this message, the encapsulated message includes intermediate node 1 and intermediate node 2, and so on.
  • the present application provides a path perception method, device and system, which can realize data flow path perception through a simple solution without modifying the structure of the message.
  • a path perception method is provided.
  • the path perception method is applied to a source node in a communication network, and the communication network includes a source node, N intermediate nodes, and a target node, where N is an integer greater than 0.
  • the path perception method includes: sending a first request message to a target node, receiving a first response message from the target node, and obtaining first information according to the first response message.
  • the first request message includes the identifier of the first node, the identifier of the first data flow and the first reservation information
  • the first data flow is the data flow between the source node and the target node
  • the first data flow is in the first
  • the first request message is used to request to determine whether the first path passes through the first node.
  • the first node is any one of the N intermediate nodes.
  • the first reserved information is used to record whether the first path passes through the first node. The result of the node.
  • the first response message includes an identifier of the first data flow, an identifier of the first node and first indication information.
  • the first indication information is obtained after recording the result of whether the first path passes through the first node in the first reserved information.
  • the first indication information is used to indicate that the first path passes through the first node, or that the first path does not pass through the first node. node.
  • the first information includes that the first path passes through the first node, or that the first path does not pass through the first node.
  • the source node sends a first request message including the identifier of the first node, the identifier of the first data flow, and the first reservation information to the target node, and receives a message including the first data flow
  • the identifier, the identifier of the first node, and the first response message of the first indication information according to the first response message, information that the first path passes through the first node or that the first path does not pass through the first node is obtained.
  • the first data flow is transmitted on the first path
  • the first request message is used to request to determine whether the first path passes through the first node
  • the first reserved information is used to record the result of whether the first path passes through the first node
  • the first indication information is obtained after recording the result of whether the first path passes through the first node in the first reservation information.
  • the path can be perceived through the data flow.
  • the path can be accurately located (for example, combined with the topological connection Relationships identify the nodes and links involved on the path), reducing troubleshooting cycles.
  • the scheme is simple, does not depend on a large amount of measurement data, and does not require reasoning and analysis of these data, which can reduce overhead.
  • the first information may further include an identifier of the first data flow and/or a time delay of the first path.
  • the path perception method provided in the first aspect may further include: determining the first path according to the topological connection relationship and the second information.
  • the topological connection relationship may include the topological relationship between the source node, N intermediate nodes, and the target node, and the second information may be obtained after iteratively updating the first information according to the first response message corresponding to the N intermediate nodes
  • the first path may include connection relationships of Q intermediate nodes, where Q is an integer greater than 0 and less than or equal to N. In this way, the intermediate nodes that the first path passes through sequentially can be obtained.
  • the path perception method provided in the first aspect may further include: determining the first correlation value.
  • the first correlation value indicates the degree of correlation between the first request message and the second request message
  • the second request message includes the identifier of the second data flow, the identifier of the first node, and the second reserved information
  • the second data The flow is a data flow between the source node and the target node, the second data flow is transmitted on the second path, the second request message is a sent message, and the second request message is used to request to determine whether the second path passes through The first node, where the second reserved information is used to record a result of whether the second path passes through the first node. In this way, the detection coverage can be improved, and the detection source node overhead and network overhead can be reduced.
  • the above sending the first request message to the target node may include: sending the first request message to the target node when the first correlation value is less than or equal to a correlation threshold. In this way, if the correlation degree is high, it may not be sent, and if the correlation degree is low, it may be sent, which can improve the detection coverage and reduce the detection cost.
  • the path perception method provided in the first aspect may further include: generating mapping information when the first correlation value is greater than a correlation threshold.
  • the mapping information may include a mapping relationship between the identifier of the second data stream and the identifier of the first data stream.
  • the path perception method provided in the first aspect may further include: in the case of an abnormality in the first path, according to the correlation degree information and/or the abnormal node information, by the first path and the target The node performs communication switching to communicate with the target node through the third path.
  • the correlation information can be used to indicate the correlation between one or more fourth paths and the first path
  • the path between the source node and the target node can include the first path and one or more fourth paths
  • the abnormal node information Can be used to indicate an intermediate node where an exception occurred.
  • the third path is a path with the lowest degree of correlation with the first path among the one or more fourth paths, and/or a path that does not pass through the intermediate node where the abnormality occurs among the one or more fourth paths. In this way, the reliability of the multipath between the source node and the target node can be improved. In addition, it can increase the switching speed of business flow, reduce the impact of network failure on business, and improve the reliability of the system.
  • a path perception method is provided.
  • the path perception method is applied to an intermediate node in a communication network, and the communication network includes a source node, N intermediate nodes, and a target node, where N is an integer greater than 0.
  • the path perception method includes: receiving a first request message, determining whether the first path passes through the first node, and sending a third request message.
  • the first request message includes the identifier of the first node, the identifier of the first data flow and the first reservation information, the first data flow is the data flow between the source node and the target node, and the first data flow is in the first
  • the first request message is used to request to determine whether the first path passes through the first node, and the first node is any one of the N intermediate nodes.
  • the third request message includes the identifier of the first data flow, the identifier of the first node, and first indication information, where the first indication information is used to indicate that the first path passes through the first node, or that the first path does not pass through the first node, and that the first path does not pass through the first node.
  • One piece of reserved information is used to record the result of whether the first path passes through the first node.
  • the first indication information is obtained after recording the result of whether the first path passes through the first node in the first reserved information.
  • the first node is N any of the intermediate nodes.
  • a path perception method is provided.
  • the path perception method is applied to a target node in a communication network, and the communication network includes a source node, N intermediate nodes, and a target node, where N is an integer greater than 0.
  • the path perception method includes: receiving a third request message, and sending a first response message to a source node according to the identifier of the first data flow.
  • the third request message includes the identifier of the first data flow, the identifier of the first node and first indication information, and the first indication information is used to indicate that the first path passes through the first node, or that the first path does not pass through the first node .
  • the first data flow is a data flow between the source node and the target node, the first data flow is transmitted on the first path, and the first node is any one of the N intermediate nodes.
  • the first response message includes an identifier of the first data flow, an identifier of the first node, and first indication information, where the first indication information is used to indicate that the first path passes through the first node, or that the first path does not pass through the first node.
  • a path sensing device is provided.
  • the path sensing device is applied to a communication network including the path sensing device, N intermediate nodes, and target nodes, where N is an integer greater than 0.
  • the path sensing device includes: a transceiver module and a processing module.
  • the transceiver module is configured to send the first request message to the target node.
  • the first request message includes the identifier of the first node, the identifier of the first data flow and the first reservation information
  • the first data flow is the data flow between the path awareness device and the target node
  • the first data flow is at the Transmission on a path
  • the first request message is used to request to determine whether the first path passes through the first node
  • the first node is any one of the N intermediate nodes
  • the first reserved information is used to record whether the first path passes through the first node The result of a node.
  • the transceiver module is also used to receive the first response message from the target node.
  • the first response message includes an identifier of the first data flow, an identifier of the first node, and first indication information.
  • the first indication information is obtained after recording the result of whether the first path passes through the first node in the first reserved information.
  • the first indication information is used to indicate that the first path passes through the first node, or that the first path does not pass through the first node. node.
  • a processing module configured to obtain the first information according to the first response message.
  • the first information includes that the first path passes through the first node, or that the first path does not pass through the first node.
  • the first information may further include an identifier of the first data flow and/or a time delay of the first path.
  • the processing module is further configured to determine the first path according to the topological connection relationship and the second information.
  • the topological connection relationship may include the topological relationship between the path sensing device, N intermediate nodes, and the target node, and the second information is obtained after iteratively updating the first information according to the first response message corresponding to the N intermediate nodes,
  • the first path may include connection relationships of Q intermediate nodes, where Q is an integer greater than 0 and less than or equal to N.
  • the processing module is further configured to determine the first correlation value.
  • the first correlation value indicates the degree of correlation between the first request message and the second request message
  • the second request message includes the identifier of the second data flow, the identifier of the first node, and the second reserved information, and the second data
  • the flow is a data flow between the source node and the target node, the second data flow is transmitted on the second path, the second request message is a sent message, and the second request message is used to request to determine whether the second path passes through
  • the second reserved information is used to record a result of whether the second path passes through the first node.
  • the transceiver module when the first correlation value is less than or equal to the correlation threshold, the transceiver module is further configured to send the first request message to the target node.
  • the processing module when the first correlation value is greater than the correlation threshold, is further configured to generate mapping information.
  • the mapping information may include a mapping relationship between the identifier of the second data stream and the identifier of the first data stream.
  • the processing module when an abnormality occurs on the first path, is further configured to switch from communicating with the target node through the first path to communicating with the target node through the second path according to the correlation degree information and/or abnormal node information.
  • Three paths communicate with the target node.
  • the correlation information can be used to indicate the correlation between one or more fourth paths and the first path respectively
  • the path between the path sensing device and the target node can include the first path and one or more fourth paths
  • the abnormal node Information can be used to indicate the intermediate node where the exception occurred.
  • the third path is a path with the lowest degree of correlation with the first path among the one or more fourth paths, and/or a path that does not pass through the intermediate node where the abnormality occurs among the one or more fourth paths.
  • the transceiver module described in the fourth aspect may include a receiving module and a sending module.
  • the receiving module is used for receiving data and/or signaling from the first node or the target node;
  • the sending module is used for sending data and/or signaling to the first node or the target node. This application does not specifically limit the specific implementation manner of the transceiver module.
  • the path sensing device described in the fourth aspect may further include a storage module, where programs or instructions are stored in the storage module.
  • the processing module executes the program or instruction
  • the path perception device described in the fourth aspect can execute the method described in the first aspect.
  • the path sensing device described in the fourth aspect may be a source node, such as a server, or a chip (system) or other components or components that may be configured on the source node, which is not limited in this application.
  • a path sensing device is provided.
  • the path perception device is applied to a communication network including a source node, N intermediate nodes, and a target node, where N is an integer greater than 0.
  • the path sensing device is any one of the N intermediate nodes.
  • the path sensing device includes: a transceiver module and a processing module.
  • the transceiver module is configured to receive the first request message.
  • the first request message includes the identifier of the first node, the identifier of the first data flow and the first reservation information
  • the first data flow is the data flow between the source node and the target node
  • the first data flow is in the first
  • the first request message is used to request to determine whether the first path passes through the first node
  • the first reserved information is used to record the result of whether the first path passes through the first node.
  • the first node is the N intermediate any of the nodes.
  • a processing module configured to determine whether the first path passes through the first node.
  • the transceiver module is also used to send the third request message.
  • the third request message includes the identification of the first data flow, the identification of the first node and the first indication information, and the first indication information is to record the result of whether the first path passes through the first node after the first reserved information
  • the obtained first indication information is used to indicate that the first path passes through the first node, or that the first path does not pass through the first node.
  • the transceiver module described in the fifth aspect may include a receiving module and a sending module.
  • the receiving module is used to receive data and/or signaling from the source node, target node, or other intermediate nodes;
  • the sending module is used to send data and/or signaling to the source node, target node, or other intermediate nodes. This application does not specifically limit the specific implementation manner of the transceiver module.
  • the path sensing device may further include a storage module, where programs or instructions are stored in the storage module.
  • the processing module executes the program or instruction
  • the path perception device described in the fifth aspect can execute the method described in the second aspect.
  • the path sensing device described in the fifth aspect may be an intermediate node, such as a switch, or a chip (system) or other components or components that may be installed in the intermediate node, which is not limited in this application.
  • a path sensing device is provided.
  • the path sensing device is applied to a communication network including a source node, N intermediate nodes, and the path sensing device, where N is an integer greater than 0.
  • the path sensing device includes: a receiving module and a sending module.
  • the receiving module is configured to receive the third request message.
  • the third request message includes the identifier of the first data flow, the identifier of the first node and first indication information, and the first indication information is used to indicate that the first path passes through the first node, or that the first path does not pass through the first node .
  • the first data flow is a data flow between the source node and the path sensing device, the first data flow is transmitted on the first path, and the first node is any one of the N intermediate nodes.
  • a sending module configured to send a first response message to the source node according to the identifier of the first data flow.
  • the first response message includes the identifier of the first data flow, the identifier of the first node and first indication information, and the first indication information is used to indicate that the first path passes through the first node, or that the first path does not pass through the first node .
  • the receiving module and the sending module may be set separately, or may be integrated into one module, that is, a transceiver module. This application does not specifically limit the specific implementation manners of the receiving module and the sending module.
  • the path sensing device described in the sixth aspect may further include a processing module and a storage module, where the storage module stores programs or instructions.
  • the processing module executes the program or instruction
  • the path perception device described in the sixth aspect can execute the method described in the third aspect.
  • the path sensing device described in the sixth aspect may be a target node, such as a server, or a chip (system) or other components or components that may be set on the target node, which is not limited in this application.
  • a path sensing device in a seventh aspect, includes: a processor, the processor is coupled with a memory, and the memory is used to store computer programs.
  • the processor is configured to execute the computer program stored in the memory, so that the path awareness method described in any possible implementation manner of the first aspect to the third aspect is executed.
  • the path sensing device may further include a transceiver.
  • the transceiver can be a transceiver circuit or an input/output port.
  • the transceiver can be used for the path awareness device to communicate with other devices.
  • the input port can be used to realize the receiving function involved in the first aspect to the third aspect
  • the output port can be used to realize the sending function involved in the first aspect to the third aspect
  • the path sensing device described in the seventh aspect may be a source node, an intermediate node or a target node, or a chip or a chip system disposed inside the source node, intermediate node or target node.
  • a path perception system includes the path perception device according to the fourth aspect, the path perception device according to the fifth aspect, and the path perception device according to the sixth aspect.
  • the path perception system includes the path perception device for realizing the method described in the first aspect as described in the fourth aspect, and the path perception device for realizing the method described in the second aspect as described in the fifth aspect , and the path perception device according to the sixth aspect for implementing the method according to the third aspect.
  • the path awareness system may include a source node, N intermediate nodes and a target node, where N is an integer greater than 0.
  • a chip system in a ninth aspect, includes a logic circuit and an input/output port.
  • the logic circuit is used to realize the processing function involved in the first aspect to the third aspect
  • the input/output port is used to realize the sending and receiving function involved in the first aspect to the third aspect.
  • the input port can be used to realize the receiving function involved in the first aspect to the third aspect
  • the output port can be used to realize the sending function involved in the first aspect to the third aspect.
  • system-on-a-chip further includes a memory, which is used to store program instructions and data for realizing the functions involved in the first aspect to the third aspect.
  • the system-on-a-chip may consist of chips, or may include chips and other discrete devices.
  • a computer-readable storage medium stores computer programs or instructions; when the computer programs or instructions are run on a computer, any one of the first to third aspects The path awareness method described in the possible implementation manner is executed.
  • a computer program product including computer programs or instructions, when the computer program or instructions are run on a computer, the path described in any one of the possible implementations in the first aspect to the third aspect
  • the perception method is executed.
  • FIGS 1a-1c are schematic diagrams of the architecture of some data center networks provided by the embodiments of the present application.
  • FIG. 2 is a schematic topology diagram provided by an embodiment of the present application.
  • FIG. 3 is a schematic structural diagram of a message provided by the present application.
  • FIG. 4 is a schematic flowchart of a path perception method provided in an embodiment of the present application.
  • FIG. 5 is a schematic flow chart of another path perception method provided by an embodiment of the present application.
  • FIG. 6 is a schematic diagram of path switching provided by an embodiment of the present application.
  • FIG. 7 is a schematic diagram of another path switching provided by the embodiment of the present application.
  • FIG. 8 is a schematic structural diagram of a path sensing device provided by an embodiment of the present application.
  • FIG. 9 is a schematic structural diagram of another path perception device provided by an embodiment of the present application.
  • FIG. 10 is a schematic structural diagram of another path sensing device provided by an embodiment of the present application.
  • the technical solution of the embodiment of the present application can be applied to various communication networks, such as a data center (data center, DC) network, and the data center network can be used in scenarios such as high-performance computing, high-performance distributed storage, big data, and artificial intelligence.
  • DC data center
  • the present application presents various aspects, embodiments or features in terms of a system that can include a number of devices, components, modules and the like. It is to be understood and appreciated that the various systems may include additional devices, components, modules, etc. and/or may not include all of the devices, components, modules etc. discussed in connection with the figures. Additionally, combinations of these schemes can also be used.
  • the network architecture and business scenarios described in the embodiments of the present application are for more clearly illustrating the technical solutions of the embodiments of the present application, and do not constitute limitations on the technical solutions provided by the embodiments of the present application.
  • the technical solutions provided by the embodiments of this application are also applicable to similar technical problems.
  • FIG. 1a to FIG. 1c are architectural diagrams of several data center networks to which the path awareness method provided by the embodiment of the present application is applicable.
  • FIG. 1 a is a schematic diagram of a data center network of a large-scale Clos (CLOS) network architecture.
  • the data center network may include: servers, switches, storage devices, computing networks, and storage networks, etc.
  • the switch can be divided into a top of rack switch (top of rack, ToR), a leaf (leaf) switch, and a spine (spine) switch, etc., and the top of rack switch is a switch directly connected to the server.
  • Distribution point point of delivery, POD
  • POD point of delivery
  • the resources of the entire data center network can be divided into one or more physical partitions. Each physical A partition is a POD, and a physical device can only belong to one POD.
  • One or more PODs and leaf switches form a set of distribution points.
  • a collection of one or more distribution points makes up a data center network.
  • FIG. 1b is a schematic diagram of the architecture of a data center network in a mesh topology. All nodes (such as switches or network devices) in the data center network are connected to each other, and each switch is connected to at least two other switches, and all switches form an integral network.
  • a router that supports the mesh function can generate a mesh network after networking, and different access points can form a mixed network in the form of star, tree, series, and bus.
  • Fig. 1c is a schematic diagram of a data center network in a dragonfly topology.
  • Dragonfly topology is a two-level hierarchical network. Any topology can be used within and between groups of Dragonfly topology, with less global hops, low latency, and easier expansion of the network scale.
  • path perception method provided in the embodiment of the present application can be applied to the data center network shown in Figure 1a to Figure 1c, and can also be applied to data center networks using other topological structures, and Figure 1a to Figure 1c are only Several architectural diagrams of the data center network provided in this application.
  • Fig. 1a to Fig. 1c are only simplified schematic diagrams for easy understanding, and the data center network may also include other network devices, and/or, other devices, which are not shown in Fig. 1a to Fig. 1c.
  • a typical feature of a data center network is multipath, which mainly ensures network reliability and traffic load balancing.
  • server 1 and server 4 there are two paths between server 1 and server 4, such as path 1 and path 2, and traffic between the two servers can be shared on different paths.
  • path 1 between server 1 and server 4 includes switch 21 , switch 11 , and switch 24 in sequence
  • path 2 between server 1 and server 4 includes switch 21 , switch 12 , and switch 24 in sequence.
  • the hash key can be used to select a path. After the node obtains the message, it can obtain the hash key in the message, and obtain the next hop and interface through the hash algorithm, so that a path can be selected from multiple paths.
  • FIG. 3 is a schematic structural diagram of a message provided by the present application.
  • the packet may include equal cost multipath routing (ECMP) hash fields (HASH fields) and payload (payload) fields.
  • ECMP equal cost multipath routing
  • HASH fields hash fields
  • payload payload fields
  • the equivalent multipath hash domain may include source IP (source IP), destination IP (destination IP), layer 4 communication protocol (layer 4protocol), source port (source port), and destination port (destination port).
  • the equal-cost multipath hash domain may include source (media access control, MAC) and destination MAC. Payload refers to the data actually transmitted by the message.
  • FIG. 3 is only an example provided by this application, and does not limit the format of the message in this application.
  • the communication network includes a source node, N intermediate nodes, and a target node, where N is an integer greater than 0.
  • both the source node and the target node can be servers.
  • the source node can be any one of servers 1 to 4
  • the target node can be any one of servers 1 to 4.
  • the source Nodes and target nodes may be storage service nodes, including storage clients, storage controllers, and storage arrays.
  • Intermediate nodes can be switches, routers, etc.
  • the N intermediate nodes may include one or more of the following: switches 21 to 24 , and switches 11 to 12 .
  • FIG. 4 is a schematic flowchart of a path perception method provided in an embodiment of the present application.
  • the path perception method includes the following steps:
  • the source node sends a first request message to the target node.
  • the intermediate node receives the first request message.
  • the first request message may include an identifier of the first node, an identifier of the first data flow, and first reservation information.
  • the first node is any one of the N intermediate nodes. Referring to FIG. 2 , if the first node is the switch 21 , the identifier of the first node is 21 , the switch 21 , and/or the device number corresponding to the switch 21 .
  • the identifier of the first node may be encapsulated in the payload of the first request message.
  • the structure of the first request message may be as shown in FIG. 3 .
  • the first data flow is a data flow between the source node and the target node.
  • the first data flow may be a data flow between server 1 and server 4
  • the target node may be server 4 .
  • the identifier of the first data flow may include: an Internet protocol address (internet protocol, IP) address of the source node, a first port of the target node, and an IP address of the target node.
  • IP Internet protocol
  • the identifier of the first data flow may also include one or more of the following: port of the source node, protocol field, media access control (media access control, MAC) address of the source node, and MAC address of the target node.
  • the identifier of the first data stream may be a one-tuple, two-tuple, four-tuple, five-tuple, or seven-tuple.
  • the first data flow is transmitted on the first path.
  • the first path may be path 1 or path 2 .
  • the first request message may be used to request to determine whether the first path passes through the first node.
  • the first reservation information may be used to record a result of whether the first path passes through the first node.
  • the first reserved information may occupy one or more bit positions. Assuming that the length of the first reserved information is 1 bit, the initial value of the first reserved information may be "0" or "1".
  • first path passes through the first node
  • 0 is used to indicate that the first path does not pass through the first node.
  • the initial value of the first reservation information is "0". By default, the first path does not pass through the first node. node.
  • the intermediate node when the intermediate node receives the first request message and determines that the first path passes through the first node, the intermediate node can set the value of the first reserved information to is "1" to indicate that the first path passes through the first node, otherwise, the intermediate node may not operate on the first reservation information, and the value of the first reservation information is "0" indicating that the first path does not pass through the first node.
  • the first request message can be used to request to determine whether the path 1 passes through the switch 21, and in a specific position of the first request message (such as The position of the first reservation information) sets a flag to indicate that the first path passes through the first node, or that the first path does not pass through the first node.
  • switch 21 receives the first request message and determines that path 1 passes through switch 21, then sets "0" of the first reserved information as "1"; switch 21 continues to forward the first request message to switch 11, and switch 11 It can be determined whether the path 1 passes through the switch 21, or when the switch 11 finds that the first reserved information is set to "1", no further judgment is made; the switch 11 continues to forward the first request message to the switch 24, and the action of the switch 24 Refer to the switch 11, which will not be repeated here.
  • the intermediate node After the intermediate node receives the first message, it does not need to modify the structure of the message, and without increasing the length of the message, the message can carry the information of whether the first path passes through the first node, and the solution is simple.
  • the first request message may be a detection message, a heartbeat message, or the like.
  • the intermediate node determines whether the first path passes through the first node.
  • the intermediate node may determine whether the first path passes through the first node according to whether its own identifier matches the identifier of the first node in the first request message.
  • the own identifier matches the identifier of the first node, it is determined that the first path passes through the first node; otherwise, it is determined that the first path does not pass through the first node.
  • matching may refer to being identical, or having a corresponding relationship, or having a mapping relationship, and the like.
  • the identifier of the switch 11 may be the switch 11, or the switch-11, etc., the switch 11 is the same as the switch 11, and there is a corresponding relationship or a mapping relationship between the switch 11 and the switch-11.
  • the intermediate node identifies the first request packet, and detects whether its own identifier matches the identifier of the first node in the first request packet, and marks passing if they match.
  • the intermediate node sends a third request message.
  • the target node receives the third request message.
  • the third request packet may include an identifier of the first data flow, an identifier of the first node, and first indication information.
  • the first indication information is obtained after the intermediate node records the result of whether the first path passes through the first node in the first reserved information, and the first indication information may be used to indicate that the first path passes through the first node, or The first path does not pass through the first node.
  • the intermediate node determines that the first path passes through the first node
  • the result is recorded in the first reservation information
  • the initial value of the first reservation information is "0”
  • the intermediate node records the first reservation information
  • the value of the information is set to "1”
  • the first indication information is obtained, indicating that the first path passes through the first node.
  • the intermediate node may not operate on the first reservation information, obtain the first indication information, and indicate the first A path does not pass through the first node.
  • this application does not limit the name of the first reserved information and the name of the first indication information, so that the source node can reserve a specific bit position in the first request message, and the specific bit position can be used to It only needs to indicate whether the first path passes through the first node.
  • the first indication information when the first indication information indicates that the first path passes through the first node, the first indication information may occupy a differentiated services code point (differentiated services code point, DSCP) field of the third request message.
  • DSCP differentiated services code point
  • the intermediate node may continue to forward the third request message, which may be forwarded by one or more other intermediate nodes, and finally the target node receives the third request message.
  • the first path is path 1
  • path 1 includes: switch 21 -switch 11 -switch 24
  • the identifier of the first node is the identifier of switch 11 , for example, switch 11 .
  • the first request message sent by server 1 includes switch 11 , data flow 1 and “0”, data flow 1 corresponds to path 1 , and requests to confirm whether path 1 passes through switch 11 .
  • the switch 21 receives the first request message, determines that its own identity is different from that of the switch 11 , does not operate on “0”, and continues to forward the first request message to the switch 11 .
  • Switch 11 determines that its own identity is the same as switch 11, and then changes "0" to "1", indicating that path 1 passes through switch 11, and switch 11 forwards the message including switch 11, data flow 1 and "1" to switch 24.
  • the switch 24 determines that its own identification is different from the switch 11, or, after finding "1", no longer determines whether its own identification is the same as the switch 11, and continues to forward the message including the switch 11, data flow 1 and "1" to the server 4 .
  • the target node sends a first response message to the source node according to the identifier of the first data flow.
  • the source node receives the first response message from the target node.
  • the first response message includes an identifier of the first data flow, an identifier of the first node, and first indication information.
  • the target node may encapsulate the identifier of the first data stream, the identifier of the first node and/or the first indication information into the payload of the first response message.
  • the structure of the first response packet may be as shown in FIG. 3 .
  • the structure of the message is not limited to the structure shown in FIG. fields other than the payload), similarly, the identifier of the first data stream, the identifier of the first node and/or the first indication information may be encapsulated in other fields.
  • the source node obtains the first information according to the first response message.
  • the first information may include that the first path passes through the first node, or that the first path does not pass through the first node.
  • the first information may further include an identifier of the first data flow and/or a delay of the first path.
  • the source node may record the information of the first path, and may also record the identifier of the first data flow and/or the time delay of the first path.
  • the source node updates the information of the first path according to the identifier of the first data flow, the identifier of the first node, and the first indication information in the first response message.
  • the source node traverses N intermediate nodes, executes S401, and generates a first request message corresponding to each of the N intermediate nodes, each intermediate node executes the above S402 to S403, and the corresponding target node executes In the above S404, the source node obtains the first information respectively corresponding to the N intermediate nodes, and the source node iteratively updates the first information to obtain the second information.
  • the N intermediate nodes include switches 21 to 24 and switches 11 to 12 .
  • the source node sends a first request packet corresponding to the switch 21, and the first request packet corresponding to the switch 21 includes the switch 21, the data flow 1, and the first reservation information.
  • Switch 21 receives the first request message, and determines that it passes through path 1, and sends a third request message, which includes data flow 1, switch 21 and first indication information (indicating that path 1 passes through switch 21 ).
  • the target node After forwarding the third request message through the switch 11 and the switch 24 in sequence, receives the third request message and sends the content of the third request message to the source node.
  • the information (may be referred to as first information) of the first path (path 1) obtained by the source node includes: the path 1 passes through the switch 21, and the data flow 1 and/or the delay 21 of the path 1 may also be obtained.
  • the source node sends a first request packet corresponding to the switch 22, and the first request packet corresponding to the switch 22 includes the switch 22, the data flow 1, and the first reservation information.
  • the first request message can be forwarded to the target node through the switch 21, the switch 11 and the switch 24 in turn, and the switch 21, the switch 11 and the switch 24 all determine that their own identification is different from the switch 22, and then it is determined that the path 1 does not pass through the switch 22 .
  • the third request message received by the target node includes data stream 1, switch 22 and first indication information (indicating that path 1 does not pass through switch 22), and sends the content of the third request message to the source node.
  • the information of the first path (may be referred to as first information) obtained by the source node includes: the path 1 does not pass through the switch 22, and the data flow 1 and/or the delay 22 of the path 1 can also be obtained.
  • the source node updates the information of the first path, obtains path information of path 1 passing through the switch 21 and path 1 not passing through the switch 22, and can also obtain data flow 1, the delay 21 of the path 1, and the delay 22 of the path 1.
  • the source node iteratively updates the first information
  • the obtained final first path information (which may be referred to as second information) includes: path 1 passes through switches 21, Path 1 does not pass through switch 22, path 1 does not pass through switch 23, path 1 passes through switch 24, path 1 passes through switch 11, and path 1 does not pass through switch 12, and may also include data flow 1, delay 21 of path 1, and path 1
  • the path perception method provided in the present application may further include: S406, the source node determines the first path according to the topology connection relationship and the second information.
  • the second information may be obtained after iteratively updating the first information according to the first response messages respectively corresponding to the N intermediate nodes.
  • the second information may be obtained after iteratively updating the first information according to the first response messages respectively corresponding to the N intermediate nodes.
  • the topological connection relationship may include a topological relationship among the source node, N intermediate nodes, and the target node.
  • the topological connection relationship may include the topological relationship between the server 1 to the server 4 , the switch 21 to the switch 24 , and the switch 11 to the switch 12 .
  • the first path may include connection relationships of Q intermediate nodes, where Q is an integer greater than 0 and less than or equal to N.
  • the second information includes: path 1 passes through switch 21, path 1 does not pass through switch 22, path 1 does not pass through switch 23, path 1 passes through switch 24, path 1 passes through switch 11 , and path 1 do not pass through switch 12.
  • the source node determines that path 1 includes switch 21 , switch 11 and switch 24 in sequence, and path 1 is a link composed of switch 21 , switch 11 and switch 24 in sequence.
  • the source node may also obtain the delay information of path 1.
  • the average value of the delay 21 of path 1, the delay 22 of path 1, the delay 23 of path 1, the delay 24 of path 1, the delay 11 of path 1, and the delay 12 of path 1 is taken as the path 1 delay.
  • whether the first path is abnormal may be identified according to the time delay of the first path. For example, if the delay value of the first path is greater than the delay threshold, the first path is abnormal; otherwise, the first path is normal.
  • the specific implementation manner for the source node to obtain information about path 2 may refer to the specific implementation manner for obtaining information about path 1 above, which will not be repeated here.
  • the source node sends to the target node a first request message including the identifier of the first node, the identifier of the first data flow, and the first reservation information, and the first data flow is on the first path
  • the first request message is used to request to determine whether the first path passes through the first node, and the first response message including the identifier of the first data flow, the identifier of the first node and the first indication information is received, and according to the first
  • the response message obtains information that the first path passes through the first node, or that the first path does not pass through the first node.
  • the solution is simple, does not need to modify the structure of the message, does not increase the length of the message, can realize path perception through a simple solution, and does not have high requirements for equipment.
  • the path can be perceived through the data flow.
  • the path can be accurately located (for example, combined with the topological connection Relationships identify the nodes and links involved on the path), reducing troubleshooting cycles.
  • the solution is simple, does not depend on a large amount of measurement data, and can reduce overhead.
  • FIG. 5 is a schematic flowchart of another path perception method provided in an embodiment of the present application.
  • the path perception method shown in FIG. 5 can be used in combination with the path perception method shown in FIG. 4 , or can be used alone.
  • the path perception method includes the following steps:
  • the source node determines a first correlation value.
  • the first correlation value may represent the correlation between the first request packet and the second request packet.
  • the second request message may include the identifier of the second data flow, the identifier of the first node, and the second reservation information
  • the second data flow may be a data flow between the source node and the target node
  • the second data The stream is transmitted on the second path
  • the second request message may be a sent message
  • the second request message may be used to request to determine whether the second path passes through the first node.
  • the second reservation information may be used to record a result of whether the second path passes through the first node.
  • the second reserved information reference may be made to the specific implementation manner of the first reserved information in S401 above, which will not be repeated here.
  • the first request message may be a message to be sent, and for a specific implementation manner of the first request message, reference may be made to the above S401, which will not be repeated here.
  • path 2 includes switch 21-switch 12-switch 24, and the second request message is message 2 shown in Table 1.
  • the first request message may be any one of message 1, message 3 to message 5 in Table 1, and Table 1 may be referred to for path 1, path 3 to path 5.
  • the correlation between message 1 and message 2 is 1, the correlation between message 3 and message 2 is 2, the correlation between message 4 and message 2 is 0, and the correlation between message 5 and message 2 is 0.
  • the correlation degree of text 2 is 2. That is to say, the correlation between path 1 and path 2 is 1, the correlation between path 3 and path 2 is 2, the correlation between path 4 and path 2 is 0, and the correlation between path 5 and path 2 is 2.
  • the source node sends a first request message to the target node.
  • the correlation threshold may be preset.
  • the higher the correlation between the first request message and the second request message the greater the first correlation value, and the first request message and the second request message (or the first path and the second path) The more similar, similar, or even the same.
  • the correlation threshold is 3, assuming that the first request message is message 1, and the first correlation value 1 is smaller than the correlation threshold 3, then the source node sends the message 1 to the target node. Assuming that the first request message is message 3, the first correlation value 3 is equal to the correlation threshold 3, and message 3 is the same as message 2, the source node does not send message 3, and the following S503 can be performed. Similarly, when the first request message is message 4 to message 5, the source node determines whether to send the corresponding message in a similar manner.
  • the correlation threshold determines whether to send the current message to be sent. If the correlation is high, it may not be sent, and if the correlation is low, it will be sent. This can improve the detection coverage and reduce the detection cost.
  • the idea of the method shown in Figure 5 can also be used in the scenario of establishing a path. Through the relationship between the path to be established and the existing path, it is determined whether to establish the path to be established. This improves the reliability of paths between nodes.
  • S401 in FIG. 4 sends a first request message to the target node, which may include S502, when the first correlation value is less than or equal to the correlation threshold, the source node sends the first request to the target node message.
  • the source node When the first correlation value is greater than the correlation threshold, the source node generates mapping information.
  • the mapping information may include a mapping relationship between the identifier of the second data stream and the identifier of the first data stream.
  • the mapping information may include the mapping relationship between packet 2 and packet 3 (or path 2 and path 3).
  • the source node can no longer construct the message 3 (or path 3) according to the mapping information. In this way, the source node can avoid constructing and sending the first request message again, and the detection cost can be reduced. In the scenario where the path is established, the source node can avoid establishing the path again, which can reduce the overhead.
  • S503 may be optional.
  • the source node may not send the first request message, and may also generate and record mapping information.
  • the source node may not establish the path, and may not use the identifier of the data flow corresponding to the path to send the detection message, detected data, service data, and application data etc.
  • the source node may construct a new first request packet again to improve the detection coverage.
  • the source node determines the correlation between the first request message and the second request message, the second request message is a sent message, and the first correlation value is less than or equal to the correlation
  • the first request message is sent to the target node; otherwise, the first request message is not sent. In this way, the detection coverage can be improved, and the detection source node overhead and network overhead can be reduced.
  • the method provided by the embodiment of the present application may include: when an abnormality occurs on the first path, the source node connects the target The node performs communication switching to communicate with the target node through the third path.
  • This scheme can be used in combination with FIG. 4 , can be used in combination with FIG. 5 , can be used in combination with FIG. 4 and FIG. 5 , and can also be used alone.
  • the correlation information may be used to indicate the correlation between one or more fourth paths and the first path respectively.
  • the abnormal node information may be used to indicate an abnormal intermediate node.
  • path 1 includes: switch 1 - switch 2 - switch 3, where switch 2 is abnormal.
  • the path between the source node and the target node may include a first path and one or more fourth paths.
  • the paths between the source node and the target node include path1, path2, path3, and path4.
  • the third path is the path with the lowest correlation with the first path among the one or more fourth paths, and/or, the third path is one or more fourth paths that do not pass through the middle of the abnormality The path to the node.
  • the first path is path 1
  • the source node and the target node are currently communicating through path 1
  • one or more fourth paths include path 2, path 3, and path 4, and the correlation information may include path 2 and path 4.
  • the correlation degree of path 1 (for example, the value is 2)
  • the correlation degree of path 3 and path 1 (for example, 1)
  • the correlation degree of path 4 and path 1 (for example, 2).
  • Path 3 has the lowest correlation with path 1, so the third path may be path 3.
  • path 2 includes: switch 1-switch 2-switch 4-switch 5
  • path 3 includes: switch 1-switch 6-switch 4-switch 5
  • path 4 includes: switch 1-switch 7-switch 4- switch 5
  • the third path may be path 3 or path 4.
  • the third path may be path 3 .
  • the path with the smallest time delay may be selected as the third path.
  • FIG. 6 and FIG. 7 are schematic diagrams of path switching provided by the embodiment of the present application. Assume that the path 1 to path 4 is included between the source node and the target node, path 1 is abnormal, path 1, path 2 and path 3 pass through the faulty node, and path 4 does not pass through the faulty node.
  • Figure 6 and Figure 7 are schematic diagrams of path switching in a network-connected non-volatile storage (non-volatile memory express over fabric, NoF) scenario.
  • NoF non-volatile memory express over fabric
  • the source node switches paths in sequence. After sensing the abnormality of path 1, it tries to switch to path 2; when sensing the abnormality of path 2, Try to switch to path 3; sense the abnormality of path 3, try to switch to path 4, there is no abnormality in path 4, the switch is successful, and it takes 3 seconds in total.
  • the source node performs path switching according to the correlation information and/or abnormal node information. After sensing the abnormality of path 1, it judges that path 4 does not pass through the faulty node and directly switches to path 4. It takes a total of 1S and takes more time. Short, improving the switching speed of service flow.
  • the path perception method provided by the embodiment of the present application is described in detail above with reference to FIG. 2 to FIG. 7 .
  • the path sensing device provided by the embodiment of the present application will be described in detail below with reference to FIG. 8-FIG. 10 .
  • FIG. 8 is a schematic structural diagram of a path perception device that can be used to implement the embodiment of the present application.
  • the path perception apparatus 800 may be a source node, any one of the N intermediate nodes, or a target node, and may also be a chip or other components with corresponding functions applied in the source node, intermediate node, or target node.
  • the path perception apparatus 800 may include a processor 801 .
  • the path perception apparatus 800 may further include one or more of a memory 802 and a transceiver 803 .
  • the processor 801 may be coupled with one or more of the memory 802 and the transceiver 803, such as through a communication bus, or the processor 801 may be used alone.
  • the components of the path sensing device 800 are specifically introduced below in conjunction with FIG. 8 :
  • the processor 801 is the control center of the path sensing device 800, and may be one processor, or may be a general term for multiple processing elements.
  • the processor 801 is one or more central processing units (central processing unit, CPU), may also be a specific integrated circuit (application specific integrated circuit, ASIC), or is configured to implement one or more An integrated circuit, for example: one or more microprocessors (digital signal processor, DSP), or, one or more field programmable gate arrays (field programmable gate array, FPGA).
  • CPU central processing unit
  • ASIC application specific integrated circuit
  • An integrated circuit for example: one or more microprocessors (digital signal processor, DSP), or, one or more field programmable gate arrays (field programmable gate array, FPGA).
  • the processor 801 can execute various functions of the path perception apparatus 800 by running or executing software programs stored in the memory 802 and calling data stored in the memory 802 .
  • the processor 801 may include one or more CPUs, such as CPU0 and CPU1 shown in FIG. 8 .
  • the path perception apparatus 800 may also include multiple processors, for example, the processor 801 and the processor 804 shown in FIG. 8 .
  • processors can be a single-core processor (single-CPU) or a multi-core processor (multi-CPU).
  • a processor herein may refer to one or more communication devices, circuits, and/or processing cores for processing data (eg, computer program instructions).
  • the memory 802 may be a read-only memory (read-only memory, ROM) or other types of static storage communication devices that can store static information and instructions, or a random access memory (random access memory, RAM) that can store information and other types of dynamic storage communication devices for instructions, it can also be electrically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM) or Other optical disc storage, optical disc storage (including compact discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), magnetic disc storage media or other magnetic storage communication devices, or can be used to carry or store desired information in the form of instructions or data structures program code and any other medium that can be accessed by a computer, but not limited to.
  • the memory 802 can be integrated with the processor 801, or can exist independently, and is coupled with the processor 801 through the input/output port (not shown in FIG. 8 ) of the path perception device 800, which is not specifically limited in this embodiment of the present application. .
  • the input port can be used to implement the receiving function performed by the source node, the intermediate node, or the target node in any of the above method embodiments
  • the output port can be used to realize the receiving function performed by the source node, the intermediate node, or the target node in any of the above method embodiments.
  • the send function performed by the destination node can be used to implement the receiving function performed by the source node, the intermediate node, or the target node in any of the above method embodiments.
  • the memory 802 can be used to store a software program for executing the solution of the present application, and the execution is controlled by the processor 801 .
  • the processor 801 controls the execution of the solution of the present application.
  • the transceiver 803 is used for communication with other path awareness devices.
  • the transceiver 803 may be used to communicate with N intermediate nodes and/or target nodes.
  • the transceiver 803 may be used to communicate with the source node, the target node and/or other intermediate nodes.
  • the transceiver 803 may include a receiver and a transmitter (not separately shown in FIG. 8 ). Wherein, the receiver is used to realize the receiving function, and the transmitter is used to realize the sending function.
  • the transceiver 803 can be integrated with the processor 801, or can exist independently, and is coupled with the processor 801 through the input/output port (not shown in FIG. 8 ) of the path perception device 800, which is not specifically described in the embodiment of the present application. limited.
  • path sensing device 800 shown in FIG. 8 does not constitute a limitation to the path sensing device, and the actual path sensing device may include more or less components than shown in the figure, or combine some components, or different component arrangements.
  • the above-mentioned actions of the source node in FIGS. 2-7 can be executed by the processor 801 in the path perception device 800 shown in FIG. 8 calling the application program code stored in the memory 802 to instruct the source node to execute.
  • the above-mentioned actions of the target node in Figures 2-7 can be executed by the processor 801 in the path perception device 800 shown in Figure 8 by calling the application program code stored in the memory 802 to instruct the target node to execute, which is not limited in this embodiment .
  • the path sensing device 800 can implement any one or more possible design methods involved in the source node in the above method embodiments; when the path sensing device is an intermediate node, the path sensing device 800 Any one or more possible design methods involved in the intermediate nodes in the above method embodiments can be implemented; when the path awareness device 800 is a target node, the path awareness device 800 can implement the methods involved in the target node in the above method embodiments Any one or more possible designs.
  • FIG. 9 is a schematic structural diagram of another path sensing device provided by an embodiment of the present application. For ease of description, FIG. 9 only shows the main components of the path sensing device.
  • the path perception device 900 includes a transceiver module 901 and a processing module 902 .
  • the path perception apparatus 900 may be the source node or the intermediate node in the foregoing method embodiments.
  • the transceiving module 901, which may also be referred to as a transceiving unit, is configured to implement the transceiving function performed by the source node or the intermediate node in any of the above method embodiments.
  • the transceiver module 901 may include a receiving module and a sending module (not shown in FIG. 9 ). Wherein, the receiving module is used for receiving data and/or signaling from other devices; the sending module is used for sending data and/or signaling to other devices. This application does not specifically limit the specific implementation manner of the transceiver module.
  • the transceiver module may be composed of a transceiver circuit, a transceiver, a transceiver or a communication interface.
  • the processing module 902 may be configured to implement the processing function performed by the source node or the intermediate node in any of the foregoing method embodiments.
  • the processing module 902 may be a processor.
  • the path perception device 900 is presented in the form of dividing various functional modules in an integrated manner.
  • a “module” here may refer to a specific ASIC, a circuit, a processor and a memory executing one or more software or firmware programs, an integrated logic circuit, and/or other devices that can provide the above-mentioned functions.
  • the path sensing device 900 may take the form of the path sensing device 800 shown in FIG. 8 .
  • the processor 801 in the path perception apparatus 800 shown in FIG. 8 may invoke the computer-executed instructions stored in the memory 802, so that the path perception method in the above method embodiment is executed.
  • the functions/implementation process of the transceiver module 901 and the processing module 902 in FIG. 9 can be implemented by the processor 801 in the path perception device 800 shown in FIG. 8 invoking computer-executed instructions stored in the memory 802 .
  • the function/implementation process of the processing module 902 in FIG. 9 can be implemented by the processor 801 in the path perception device 800 shown in FIG. 8 calling the computer-executed instructions stored in the memory 802.
  • the function/implementation process can be implemented by the transceiver 803 in the path awareness device 800 shown in FIG. 8 .
  • the path sensing device 900 provided in this embodiment can execute the above path sensing method, the technical effect it can obtain can refer to the above method embodiment, and will not be repeated here.
  • FIG. 10 is a schematic structural diagram of another path sensing device provided by an embodiment of the present application. For ease of illustration, FIG. 10 only shows the main components of the path sensing device.
  • the path sensing device 1000 includes a sending module 1001 and a receiving module 1002 .
  • the path perception apparatus 1000 may be the target node in the foregoing method embodiments.
  • the sending module 1001 which may also be referred to as a sending unit, is configured to implement the sending function performed by the target node in any of the above method embodiments.
  • the sending module 1001 and the receiving module 1002 can be set separately, or can be integrated into one module, that is, a transceiver module.
  • the transceiver module may be composed of a transceiver circuit, a transceiver, a transceiver or a communication interface.
  • the path perception apparatus 1000 may further include a processing module 1003 and a storage module, where programs or instructions are stored in the storage module.
  • the processing module 1003 executes the program or instruction
  • the path perception device 1000 can execute the method described in any one of the above method embodiments.
  • the processing module 1003 may be configured to implement the processing function performed by the target node in any of the above method embodiments.
  • the processing module 1003 may be a processor.
  • the path perception device 1000 is presented in the form of dividing various functional modules in an integrated manner.
  • a "module” here may refer to a specific ASIC, a circuit, a processor and a memory executing one or more software or firmware programs, an integrated logic circuit, and/or other devices that can provide the above-mentioned functions.
  • the path sensing device 1000 may take the form of the path sensing device 800 shown in FIG. 8 .
  • the processor 801 in the path perception apparatus 800 shown in FIG. 8 may invoke the computer-executed instructions stored in the memory 802, so that the path perception method in the above method embodiment is executed.
  • the functions/implementation process of the processing module 1003 and the storage module in FIG. 10 may be implemented by the transceiver 803 in the path awareness apparatus 800 shown in FIG. 8 .
  • the function/implementation process of the processing module 1003 in FIG. 10 can be implemented by the processor 801 in the path perception device 800 shown in FIG. 8 calling the computer-executed instructions stored in the memory 802,
  • the path sensing device 1000 provided in this embodiment can execute the above path sensing method, the technical effect it can obtain can refer to the above method embodiment, and will not be repeated here.
  • the path awareness device 900 shown in FIG. 9 may be applicable to the path awareness system shown in FIGS. 1a-1b to perform the function of the source node in any of the above method embodiments.
  • the path sensing device 900 is applied to a communication network including the path sensing device 900 , N intermediate nodes, and target nodes, where N is an integer greater than 0.
  • the transceiver module 901 is configured to send the first request message to the target node.
  • the first request message includes the identifier of the first node, the identifier of the first data flow and the first reservation information
  • the first data flow is the data flow between the path awareness device 900 and the target node
  • the first data flow is in Transmitted on the first path
  • the first request message is used to request to determine whether the first path passes through the first node
  • the first node is any one of the N intermediate nodes
  • the first reserved information is used to record whether the first path passes through The result of the first node.
  • the transceiver module 901 is further configured to receive a first response message from the target node.
  • the first response message includes an identifier of the first data flow, an identifier of the first node, and first indication information.
  • the first indication information is obtained after recording the result of whether the first path passes through the first node in the first reserved information.
  • the first indication information is used to indicate that the first path passes through the first node, or that the first path does not pass through the first node. node.
  • a processing module 902 configured to obtain first information according to the first response packet.
  • the first information includes that the first path passes through the first node, or that the first path does not pass through the first node.
  • the first information may further include an identifier of the first data flow and/or a time delay of the first path.
  • the processing module 902 is further configured to determine the first path according to the topological connection relationship and the second information.
  • the topological connection relationship may include the topological relationship between the path sensing device 900, N intermediate nodes, and the target node, and the second information is obtained after iteratively updating the first information according to the first response messages corresponding to the N intermediate nodes
  • the first path may include connection relationships of Q first nodes, where Q is an integer greater than 0 and less than or equal to N.
  • the processing module 902 is further configured to determine the first correlation value.
  • the first correlation value indicates the degree of correlation between the first request message and the second request message
  • the second request message includes the identifier of the second data flow, the identifier of the first node, and the second reserved information
  • the second data A flow is a data flow between the path awareness device 900 and the target node
  • the second data flow is transmitted on the second path
  • the second path is an established path
  • the second request message can be used to request to determine whether the second path passes through
  • the second reserved information is used to record the result of whether the second path passes through the node.
  • the transceiving module 901 is further configured to send the first request message to the target node.
  • the processing module 902 when the first correlation value is greater than the correlation threshold, the processing module 902 is further configured to generate mapping information.
  • the mapping information may include a mapping relationship between the identifier of the second data stream and the identifier of the first data stream.
  • the processing module 902 when an abnormality occurs on the first path, the processing module 902 is further configured to switch from communicating with the target node through the first path to communicating with the target node through the The third path communicates with the target node.
  • the correlation information may be used to indicate the correlation between one or more fourth paths and the first path respectively, and the path between the path sensing device 900 and the target node may include the first path and one or more fourth paths, abnormal Node information can be used to indicate the intermediate node where the exception occurred.
  • the third path is a path with the lowest degree of correlation with the first path among the one or more fourth paths, and/or a path that does not pass through the intermediate node where the abnormality occurs among the one or more fourth paths.
  • the path perception device 900 may further include a storage module (not shown in FIG. 9 ), where programs or instructions are stored in the storage module.
  • the processing module 902 executes the program or instruction
  • the path awareness device 900 can execute the function of the source node described in any one of the foregoing method embodiments.
  • the path perception device 900 may be a source node, or may be a chip (system) or other components or components that may be configured on the source node, which is not limited in this application.
  • the path perception device 900 shown in FIG. 9 can be applied to the path perception system shown in FIGS.
  • the path sensing device 900 is applied to a communication network including a source node, N intermediate nodes, and a target node, where N is an integer greater than 0.
  • the path sensing device 900 is any one of the N intermediate nodes.
  • the transceiver module 901 is configured to receive the first request message.
  • the first request message includes the identifier of the first node, the identifier of the first data flow and the first reservation information
  • the first data flow is the data flow between the source node and the target node
  • the first data flow is in the first
  • the first request message is used to request to determine whether the first path passes through the first node
  • the first reserved information is used to record the result of whether the first path passes through the first node.
  • a processing module 902 configured to determine whether the first path passes through the first node.
  • the transceiver module 901 is further configured to send a third request message.
  • the third request message includes the identification of the first data flow, the identification of the first node and the first indication information, and the first indication information is to record the result of whether the first path passes through the first node after the first reserved information
  • the obtained first indication information is used to indicate that the first path passes through the first node, or that the first path does not pass through the first node.
  • the path perception apparatus 900 may further include a storage module (not shown in FIG. 9 ), where programs or instructions are stored in the storage module.
  • the processing module 902 executes the program or instruction
  • the path perception device 900 can execute the function of the intermediate node described in any one of the above method embodiments.
  • the path perception device 900 may be an intermediate node, or a chip (system) or other components or components that may be disposed on the intermediate node, which is not limited in this application.
  • the technical effect of the path sensing device 900 may be the technical effect of the path sensing method described in any of the above method embodiments, which will not be repeated here.
  • the path perception device 1000 shown in FIG. 10 can be applied to the path perception system shown in FIGS. 1a-1b, and execute the path perception method described in any of the above method embodiments. function of the target node in .
  • the path sensing device 1000 is applied to a communication network including a source node, N intermediate nodes, and the path sensing device 1000, where N is an integer greater than 0.
  • the receiving module 1002 is configured to receive the third request message.
  • the third request message includes the identifier of the first data flow, the identifier of the first node and first indication information, and the first indication information is used to indicate that the first path passes through the first node, or that the first path does not pass through the first node .
  • the first data flow is a data flow between the source node and the path sensing device 1000, the first data flow is transmitted on the first path, and the first node is any one of the N intermediate nodes.
  • a sending module 1001 configured to send a first response message to the source node according to the identifier of the first data flow.
  • the first response message includes the identifier of the first data flow, the identifier of the first node and first indication information, and the first indication information is used to indicate that the first path passes through the first node, or that the first path does not pass through the first node .
  • the path perception apparatus 1000 may further include a storage module (not shown in FIG. 10 ), where programs or instructions are stored in the storage module.
  • the processing module 1003 executes the program or instruction
  • the path perception device 1000 can execute the function of the target node in any of the above method embodiments.
  • the path perception device 1000 may be a target node, or a chip (system) or other components or components that may be configured on the target node, which is not limited in this application.
  • An embodiment of the present application provides a path perception system.
  • the path perception system includes: a source node, N intermediate nodes and a target node, where N is an integer greater than 0.
  • the source node is used to execute the actions of the source node in the above method embodiments
  • the N intermediate nodes are used to execute the actions of the intermediate nodes in the above method embodiments
  • the target node is used to execute the actions of the target nodes in the above method embodiments, specifically
  • An embodiment of the present application provides a chip system, and the chip system includes a logic circuit and an input/output port.
  • the logic circuit can be used to implement the processing function involved in the path sensing method provided by the embodiment of the present application
  • the input/output port can be used for the sending and receiving function involved in the path sensing method provided in the embodiment of the present application.
  • the input port can be used to implement the receiving function involved in the path awareness method provided in the embodiment of the present application
  • the output port can be used to implement the sending function involved in the path awareness method provided in the embodiment of the application.
  • the processor in the path sensing device 800 may be used to perform, for example but not limited to, baseband related processing, and the transceiver in the path sensing device 800 may be used to perform, for example but not limited to, radio frequency transceiving.
  • the above-mentioned devices may be respectively arranged on independent chips, or at least partly or all of them may be arranged on the same chip.
  • processors can be further divided into analog baseband processors and digital baseband processors.
  • the analog baseband processor can be integrated with the transceiver on the same chip, and the digital baseband processor can be set on an independent chip.
  • a digital baseband processor can be combined with a variety of application processors (such as but not limited to graphics processors, multimedia processors, etc.) integrated on the same chip.
  • application processors such as but not limited to graphics processors, multimedia processors, etc.
  • Such a chip can be called a system chip (system on chip). Whether each device is independently arranged on different chips or integrated and arranged on one or more chips often depends on the specific needs of product design.
  • the embodiment of the present invention does not limit the specific implementation forms of the foregoing devices.
  • the chip system further includes a memory, where the memory is used to store program instructions and data for implementing functions involved in the path perception method provided by the embodiments of the present application.
  • the system-on-a-chip may consist of chips, or may include chips and other discrete devices.
  • the embodiment of the present application provides a computer-readable storage medium, the computer-readable storage medium stores a computer program or instruction, and when the computer program or instruction is run on a computer, the path awareness method provided in the embodiment of the present application is executed.
  • An embodiment of the present application provides a computer program product, the computer program product including: a computer program or instruction, when the computer program or instruction is run on a computer, the path awareness method provided in the embodiment of the present application is executed.
  • the processor in the embodiment of the present application may be a central processing unit (central processing unit, CPU), and the processor may also be other general-purpose processors, digital signal processors (digital signal processor, DSP), dedicated integrated Circuit (application specific integrated circuit, ASIC), off-the-shelf programmable gate array (field programmable gate array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
  • a general-purpose processor may be a microprocessor, or the processor may be any conventional processor, or the like.
  • the memory in the embodiments of the present application may be a volatile memory or a nonvolatile memory, or may include both volatile and nonvolatile memories.
  • the non-volatile memory can be read-only memory (read-only memory, ROM), programmable read-only memory (programmable ROM, PROM), erasable programmable read-only memory (erasable PROM, EPROM), electrically programmable Erases programmable read-only memory (electrically EPROM, EEPROM) or flash memory.
  • Volatile memory can be random access memory (RAM), which acts as external cache memory.
  • RAM random access memory
  • static random access memory static random access memory
  • DRAM dynamic random access memory
  • DRAM synchronous dynamic random access memory Access memory
  • SDRAM synchronous dynamic random access memory
  • double data rate synchronous dynamic random access memory double data rate SDRAM, DDR SDRAM
  • enhanced synchronous dynamic random access memory enhanced SDRAM, ESDRAM
  • serial link DRAM SLDRAM
  • direct memory bus random access memory direct rambus RAM, DR RAM
  • the above-mentioned embodiments may be implemented in whole or in part by software, hardware (such as circuits), firmware, or other arbitrary combinations.
  • the above-described embodiments may be implemented in whole or in part in the form of computer program products.
  • the computer program product comprises one or more computer instructions or computer programs. When the computer instruction or computer program is loaded or executed on the computer, the processes or functions according to the embodiments of the present application will be generated in whole or in part.
  • the computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable devices.
  • the computer instructions may be stored in or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted from a website, computer, server or data center Transmission to another website site, computer, server or data center by wired (such as infrared, wireless, microwave, etc.).
  • the computer-readable storage medium may be any available medium that can be accessed by a computer, or a data storage device such as a server or a data center that includes one or more sets of available media.
  • the available media may be magnetic media (eg, floppy disk, hard disk, magnetic tape), optical media (eg, DVD), or semiconductor media.
  • the semiconductor medium may be a solid state drive.
  • At least one means one or more, and “multiple” means two or more.
  • At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items.
  • at least one item (piece) of a, b, or c can represent: a, b, c, a-b, a-c, b-c, or a-b-c, where a, b, c can be single or multiple .
  • sequence numbers of the above-mentioned processes do not mean the order of execution, and the execution order of the processes should be determined by their functions and internal logic, and should not be used in the embodiments of the present application.
  • the implementation process constitutes any limitation.
  • the disclosed systems, devices and methods may be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of the units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components can be combined or May be integrated into another system, or some features may be ignored, or not implemented.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or units may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or may be distributed to multiple network units. Part or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, each unit may exist separately physically, or two or more units may be integrated into one unit.
  • the functions described above are realized in the form of software function units and sold or used as independent products, they can be stored in a computer-readable storage medium.
  • the technical solution of the present application is essentially or the part that contributes to the prior art or the part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including Several instructions are used to make a computer device (which may be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the methods described in the various embodiments of the present application.
  • the aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (read-only memory, ROM), random access memory (random access memory, RAM), magnetic disk or optical disc and other media that can store program codes. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供一种路径感知方法、装置及系统,能够精确进行故障检测和故障定位。该方法包括:源节点向目标节点发送包括第一节点的标识、第一数据流的标识和第一预留信息的第一请求报文,接收包括第一数据流的标识、第一节点的标识和第一指示信息的第一应答报文,根据第一应答报文获得第一路径经过第一节点或第一路径不经过第一节点的信息。第一请求报文用于请求确定第一路径是否经过第一节点,第一预留信息用于记录第一路径是否经过第一节点的结果,第一指示信息是将第一路径是否经过第一节点的结果记录在第一预留信息后获得的。

Description

路径感知方法、装置及系统
本申请要求于2021年11月29日提交国家知识产权局、申请号为202111434500.2、申请名称为“路径感知方法、装置及系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信领域,尤其涉及一种路径感知方法、装置及系统。
背景技术
如今的数据中心网络(data center network,DCN)包括大量的服务器。服务器之间可通过网卡、交换机、路由器、电缆和光纤等互联,从而组成一个超大规模的组内和组间的数据中心网络。这种大级别的数据中心网络在云计算的趋势下变得更大。在数据中心物理设施的基础之上的是大规模、分布式业务,例如高性能计算、分布式存储、云业务等。
分布式业务具体有大规模、实现该分布式业务的软件系统多的特点,从而实现该分布式业务需要大量的组件,并且组件相互之间的耦合关系非常复杂。现有的数据流路径感知的方案非常复杂,示例性地,源节点发送探测报文后,每个接收到该探测报文的中间节点,均需要修改探测报文的结构,在该探测报文中增加自身的标识,以指示探测报文探测的路径经过的中间节点。
例如,中间节点1接收探测报文,并将中间节点1的标识封装至该报文,封装后的报文包括中间节点1,中间节点2接收中间节点1转发的报文,并封装自身的标识至该报文,封装后的报文包括中间节点1和中间节点2,以此类推,当路径经过大量的中间节点时,会导致探测报文的长度非常长,并且该方案依赖于对报文的结构的修改,使方案非常复杂,并且对芯片的要求比较高。
发明内容
本申请提供一种路径感知方法、装置及系统,不需要对报文的结构进行修改,能够通过简单的方案实现数据流路径感知。
为达到上述目的,本申请采用如下技术方案:
第一方面,提供一种路径感知方法。该路径感知方法应用于通信网络中的源节点,通信网络包括源节点、N个中间节点、以及目标节点,N为大于0的整数。
该路径感知方法包括:向目标节点发送第一请求报文,接收来自目标节点的第一应答报文,根据第一应答报文获得第一信息。其中,第一请求报文包括第一节点的标识、第一数据流的标识和第一预留信息,第一数据流为源节点与目标节点之间的数据流,第一数据流在第一路径上传输,第一请求报文用于请求确定第一路径是否经过第一节点,第一节点为N个中间节点中的任一个,第一预留信息用于记录第一路径是否经过第一节点的结果。第一应答报文包括第一数据流的标识、第一节点的标识和第一 指示信息。第一指示信息是将第一路径是否经过第一节点的结果记录在第一预留信息后获得的,第一指示信息用于指示第一路径经过第一节点、或第一路径不经过第一节点。第一信息包括第一路径经过第一节点、或第一路径不经过第一节点。
基于第一方面所述的路径感知方法,源节点向目标节点发送包括第一节点的标识、第一数据流的标识和第一预留信息的第一请求报文,接收包括第一数据流的标识、第一节点的标识和第一指示信息的第一应答报文,根据第一应答报文获得第一路径经过第一节点或第一路径不经过第一节点的信息。其中,第一数据流在第一路径上传输,第一请求报文用于请求确定第一路径是否经过第一节点,第一预留信息用于记录第一路径是否经过第一节点的结果,第一指示信息是将第一路径是否经过第一节点的结果记录在第一预留信息后获得的。如此,不需要对报文的结构进行修改,不会增加报文的长度,不依赖芯片特定的特性,能够通过简单的方案实现数据流路径感知,并且对设备的要求不高。
另外,可以通过数据流感知路径,在感知路径的过程中,若存在异常时(例如时延超阈值、没有响应、或中间节点异常通知源节点等),可以精准定位到路径(例如结合拓扑连接关系可识别到路径上涉及的节点和链路),从而降低故障排查周期。并且,方案简单,不依赖于大量的测量数据,也不需要对这些数据推理分析,可以降低开销。
在一种可能的设计方式中,第一信息还可以包括第一数据流的标识和/或第一路径的时延。
在一种可能的设计方式中,第一方面提供的路径感知方法,还可以包括:根据拓扑连接关系和第二信息,确定第一路径。其中,拓扑连接关系可以包括源节点、N个中间节点、和目标节点之间的拓扑关系,第二信息可以是根据N个中间节点对应的第一应答报文迭代更新第一信息后获得的,第一路径可以包括Q个中间节点的连接关系,Q为大于0且小于或等于N的整数。如此,可以获得第一路径依次经过的中间节点。
在一种可能的设计方式中,第一方面提供的路径感知方法,还可以包括:确定第一相关值。其中,第一相关值表示第一请求报文与第二请求报文的相关度,第二请求报文包括第二数据流的标识、第一节点的标识和第二预留信息,第二数据流为源节点与目标节点之间的数据流,第二数据流在第二路径上传输,第二请求报文为已发送的报文,第二请求报文用于请求确定第二路径是否经过第一节点,所述第二预留信息用于记录所述第二路径是否经过所述第一节点的结果。如此,可以提高探测的覆盖率,降低探测源节点的开销和网络开销。
在一种可能的设计方式中,上述向目标节点发送第一请求报文,可以包括:在第一相关值小于或等于相关度阈值的情况下,向目标节点发送第一请求报文。如此,相关度高可以不发送,相关度低则发送,这样可以提高探测的覆盖率,降低探测成本。
在一种可能的设计方式中,第一方面提供的路径感知方法,还可以包括:在第一相关值大于相关度阈值的情况下,生成映射信息。其中,映射信息可以包括第二数据流的标识与第一数据流的标识的映射关系。如此,可以避免源节点再次构造并发送该第一请求报文,可以降低探测成本。
在一种可能的设计方式中,第一方面提供的路径感知方法,还可以包括:在第一路径发生异常的情况下,根据相关度信息和/或异常节点信息,由通过第一路径与目标 节点进行通信切换为通过第三路径与目标节点进行通信。其中,相关度信息可用于指示一个或多个第四路径分别与第一路径的相关度,源节点与目标节点之间的路径可以包括第一路径和一个或多个第四路径,异常节点信息可用于指示发生异常的中间节点。第三路径为一个或多个第四路径中与第一路径的相关度最低的路径、和/或一个或多个第四路径中不经过发生异常的中间节点的路径。如此,可以提高源节点与目标节点间多路径的可靠性。此外,可以提高业务流的切换速度,减轻网络故障对业务的影响,提高系统的可靠性。
第二方面,提供一种路径感知方法。该路径感知方法应用于通信网络中的中间节点,通信网络包括源节点、N个中间节点、以及目标节点,N为大于0的整数。该路径感知方法包括:接收第一请求报文,确定第一路径是否经过第一节点,发送第三请求报文。
其中,第一请求报文包括第一节点的标识、第一数据流的标识和第一预留信息,第一数据流为源节点与目标节点之间的数据流,第一数据流在第一路径上传输,第一请求报文用于请求确定第一路径是否经过第一节点,第一节点为N个中间节点中的任一个。第三请求报文包括第一数据流的标识、第一节点的标识和第一指示信息,第一指示信息用于指示第一路径经过第一节点、或第一路径不经过第一节点,第一预留信息用于记录第一路径是否经过第一节点的结果,第一指示信息是将第一路径是否经过第一节点的结果记录在第一预留信息后获得的,第一节点为N个中间节点中的任一个。
此外,第二方面所述的路径感知方法的技术效果可以参考第一方面中任一种可能的实现方式所述的路径感知方法的技术效果,此处不再赘述。
第三方面,提供一种路径感知方法。该路径感知方法应用于通信网络中的目标节点,通信网络包括源节点、N个中间节点、以及目标节点,N为大于0的整数。该路径感知方法包括:接收第三请求报文,根据第一数据流的标识向源节点发送第一应答报文。
其中,第三请求报文包括第一数据流的标识、第一节点的标识和第一指示信息,第一指示信息用于指示第一路径经过第一节点、或第一路径不经过第一节点。第一数据流为源节点与目标节点之间的数据流,第一数据流在第一路径上传输,第一节点为N个中间节点中的任一个。第一应答报文包括第一数据流的标识、第一节点的标识和第一指示信息,第一指示信息用于指示第一路径经过第一节点、或第一路径不经过第一节点。
此外,第三方面所述的路径感知方法的技术效果可以参考第一方面中任一种可能的实现方式所述的路径感知方法的技术效果,此处不再赘述。
第四方面,提供一种路径感知装置。该路径感知装置应用于包括路径感知装置、N个中间节点、以及目标节点的通信网络,N为大于0的整数。该路径感知装置包括:收发模块和处理模块。
其中,收发模块,用于向目标节点发送第一请求报文。其中,第一请求报文包括第一节点的标识、第一数据流的标识和第一预留信息,第一数据流为路径感知装置与目标节点之间的数据流,第一数据流在第一路径上传输,第一请求报文用于请求确定第一路径是否经过第一节点,第一节点为N个中间节点中的任一个,第一预留信息用 于记录第一路径是否经过第一节点的结果。
收发模块,还用于接收来自目标节点的第一应答报文。其中,第一应答报文包括第一数据流的标识、第一节点的标识和第一指示信息。第一指示信息是将第一路径是否经过第一节点的结果记录在第一预留信息后获得的,第一指示信息用于指示第一路径经过第一节点、或第一路径不经过第一节点。
处理模块,用于根据第一应答报文获得第一信息。其中,第一信息包括第一路径经过第一节点、或第一路径不经过第一节点。
在一种可能的设计方式中,第一信息还可以包括第一数据流的标识和/或第一路径的时延。
在一种可能的设计方式中,处理模块,还用于根据拓扑连接关系和第二信息,确定第一路径。其中,拓扑连接关系可以包括路径感知装置、N个中间节点、和目标节点之间的拓扑关系,第二信息是根据N个中间节点对应的第一应答报文迭代更新第一信息后获得的,第一路径可以包括Q个中间节点的连接关系,Q为大于0且小于或等于N的整数。
在一种可能的设计方式中,处理模块,还用于确定第一相关值。其中,第一相关值表示第一请求报文与第二请求报文的相关度,第二请求报文包括第二数据流的标识、第一节点的标识和第二预留信息,第二数据流为源节点与目标节点之间的数据流,第二数据流在第二路径上传输,第二请求报文为已发送的报文,第二请求报文用于请求确定第二路径是否经过第一节点,第二预留信息用于记录第二路径是否经过第一节点的结果。
在一种可能的设计方式中,在第一相关值小于或等于相关度阈值的情况下,收发模块,还用于向目标节点发送第一请求报文。
在一种可能的设计方式中,在第一相关值大于相关度阈值的情况下,处理模块,还用于生成映射信息。其中,映射信息可以包括第二数据流的标识与第一数据流的标识的映射关系。
在一种可能的设计方式中,在第一路径发生异常的情况下,处理模块,还用于根据相关度信息和/或异常节点信息,由通过第一路径与目标节点进行通信切换为通过第三路径与目标节点进行通信。其中,相关度信息可用于指示一个或多个第四路径分别与第一路径的相关度,路径感知装置与目标节点之间的路径可以包括第一路径和一个或多个第四路径,异常节点信息可用于指示发生异常的中间节点。第三路径为一个或多个第四路径中与第一路径的相关度最低的路径、和/或一个或多个第四路径中不经过发生异常的中间节点的路径。
需要说明的是,第四方面所述的收发模块可以包括接收模块和发送模块。其中,接收模块用于接收来自第一节点或目标节点的数据和/或信令;发送模块用于向第一节点或目标节点发送数据和/或信令。本申请对于收发模块的具体实现方式,不做具体限定。
可选地,第四方面所述的路径感知装置还可以包括存储模块,该存储模块存储有程序或指令。当处理模块执行该程序或指令时,使得第四方面所述的路径感知装置可以执行第一方面所述的方法。
需要说明的是,第四方面所述的路径感知装置可以是源节点,例如服务器,也可以是可设置于源节点的芯片(系统)或其他部件或组件,本申请对此不做限定。
此外,第四方面所述的路径感知装置的技术效果可以参考第一方面中任一种可能的实现方式所述的路径感知方法的技术效果,此处不再赘述。
第五方面,提供一种路径感知装置。该路径感知装置应用于包括源节点、N个中间节点、以及目标节点的通信网络,N为大于0的整数。该路径感知装置为N个中间节点中的任一个。该路径感知装置包括:收发模块和处理模块。
其中,收发模块,用于接收第一请求报文。其中,第一请求报文包括第一节点的标识、第一数据流的标识和第一预留信息,第一数据流为源节点与目标节点之间的数据流,第一数据流在第一路径上传输,第一请求报文用于请求确定第一路径是否经过第一节点,第一预留信息用于记录第一路径是否经过第一节点的结果,第一节点为所述N个中间节点中的任一个。
处理模块,用于确定第一路径是否经过第一节点。
收发模块,还用于发送第三请求报文。其中,第三请求报文包括第一数据流的标识、第一节点的标识和第一指示信息,第一指示信息是将第一路径是否经过第一节点的结果记录在第一预留信息后获得的,第一指示信息用于指示第一路径经过第一节点、或第一路径不经过第一节点。
需要说明的是,第五方面所述的收发模块可以包括接收模块和发送模块。其中,接收模块用于接收来自源节点、目标节点、或其他中间节点的数据和/或信令;发送模块用于向源节点、目标节点、或其他中间节点发送数据和/或信令。本申请对于收发模块的具体实现方式,不做具体限定。
可选地,第五方面所述的路径感知装置还可以包括存储模块,该存储模块存储有程序或指令。当处理模块执行该程序或指令时,使得第五方面所述的路径感知装置可以执行第二方面所述的方法。
需要说明的是,第五方面所述的路径感知装置可以是中间节点,例如交换机,也可以是可设置于中间节点的芯片(系统)或其他部件或组件,本申请对此不做限定。
此外,第五方面所述的路径感知装置的技术效果可以参考第二方面中任一种可能的实现方式所述的路径感知方法的技术效果,此处不再赘述。
第六方面,提供一种路径感知装置。该路径感知装置应用于包括源节点、N个中间节点、以及路径感知装置的通信网络,N为大于0的整数。该路径感知装置包括:接收模块和发送模块。
其中,接收模块,用于接收第三请求报文。其中,第三请求报文包括第一数据流的标识、第一节点的标识和第一指示信息,第一指示信息用于指示第一路径经过第一节点、或第一路径不经过第一节点。第一数据流为源节点与路径感知装置之间的数据流,第一数据流在第一路径上传输,第一节点为N个中间节点中的任一个。
发送模块,用于根据第一数据流的标识向源节点发送第一应答报文。其中,第一应答报文包括第一数据流的标识、第一节点的标识和第一指示信息,第一指示信息用于指示第一路径经过第一节点、或第一路径不经过第一节点。
需要说明的是,接收模块和发送模块可以分开设置,也可以集成在一个模块中, 即收发模块。本申请对于接收模块和发送模块的具体实现方式,不做具体限定。
可选地,第六方面所述的路径感知装置还可以包括处理模块和存储模块,该存储模块存储有程序或指令。当处理模块执行该程序或指令时,使得第六方面所述的路径感知装置可以执行第三方面所述的方法。
需要说明的是,第六方面所述的路径感知装置可以是目标节点,例如服务器,也可以是可设置于目标节点的芯片(系统)或其他部件或组件,本申请对此不做限定。
此外,第六方面所述的路径感知装置的技术效果可以参考第三方面中任一种可能的实现方式所述的路径感知方法的技术效果,此处不再赘述。
第七方面,提供一种路径感知装置。该路径感知装置包括:处理器,该处理器与存储器耦合,存储器用于存储计算机程序。
处理器用于执行存储器中存储的计算机程序,以使得如第一方面至第三方面中任一种可能的实现方式所述的路径感知方法被执行。
在一种可能的设计中,第七方面所述的路径感知装置还可以包括收发器。该收发器可以为收发电路或输入/输出端口。所述收发器可以用于该路径感知装置与其他设备通信。
需要说明的是,输入端口可用于实现第一方面至第三方面所涉及的接收功能,输出端口可用于实现第一方面至第三方面所涉及的发送功能。
在本申请中,第七方面所述的路径感知装置可以为源节点、中间节点或目标节点,或者设置于源节点、中间节点或目标节点内部的芯片或芯片系统。
此外,第七方面所述的路径感知装置的技术效果可以参考第一方面至第三方面中任一种实现方式所述的路径感知方法的技术效果,此处不再赘述。
第八方面,提供一种路径感知系统。该路径感知系统包括如第四方面所述的路径感知装置、如第五方面所述的路径感知装置、和如第六方面所述的路径感知装置。
或者,该路径感知系统包括如第四方面所述的用于实现如第一方面所述方法的路径感知装置、如第五方面所述的用于实现如第二方面所述方法的路径感知装置、和如第六方面所述的用于实现如第三方面所述方法的路径感知装置。
示例性的,该路径感知系统可以包括源节点、N个中间节点和目标节点,N为大于0的整数。
第九方面,提供了一种芯片系统,该芯片系统包括逻辑电路和输入/输出端口。其中,逻辑电路用于实现第一方面至第三方面所涉及的处理功能,输入/输出端口用于实现第一方面至第三方面所涉及的收发功能。具体地,输入端口可用于实现第一方面至第三方面所涉及的接收功能,输出端口可用于实现第一方面至第三方面所涉及的发送功能。
在一种可能的设计中,该芯片系统还包括存储器,该存储器用于存储实现第一方面至第三方面所涉及功能的程序指令和数据。
该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。
第十方面,提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序或指令;当该计算机程序或指令在计算机上运行时,使得第一方面至第三方面中任意一种可能的实现方式所述的路径感知方法被执行。
第十一方面,提供一种计算机程序产品,包括计算机程序或指令,当该计算机程序或指令在计算机上运行时,使得第一方面至第三方面中任意一种可能的实现方式所述的路径感知方法被执行。
附图说明
图1a-图1c为本申请实施例提供的一些数据中心网络的架构示意图;
图2为本申请实施例提供的一种拓扑示意图;
图3为本申请提供的一种报文的结构示意图;
图4为本申请实施例提供的一种路径感知方法的流程示意图;
图5为本申请实施例提供的另一种路径感知方法的流程示意图;
图6为本申请实施例提供的一种路径切换示意图;
图7为本申请实施例提供的另一种路径切换示意图;
图8为本申请实施例提供的一种路径感知装置的结构示意图;
图9为本申请实施例提供的另一种路径感知装置的结构示意图;
图10为本申请实施例提供的又一种路径感知装置的结构示意图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
本申请实施例的技术方案可以应用于各种通信网络,例如数据中心(data center,DC)网络,数据中心网络可用于高性能计算、高性能分布式存储、大数据、人工智能等场景。
本申请将围绕可包括多个设备、组件、模块等的系统来呈现各个方面、实施例或特征。应当理解和明白的是,各个系统可以包括另外的设备、组件、模块等,并且/或者可以并不包括结合附图讨论的所有设备、组件、模块等。此外,还可以使用这些方案的组合。
另外,在本申请实施例中,“示例地”、“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用示例的一词旨在以具体方式呈现概念。
本申请实施例描述的网络架构以及业务场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
为便于理解本申请实施例,首先以图1a至图1c中示出的数据中心网络为例详细说明适用于本申请实施例的数据中心网络。示例性地,图1a至图1c为本申请实施例提供的路径感知方法所适用的几种数据中心网络的架构示意图。
图1a为大规模克洛斯(CLOS)网络架构的数据中心网络的架构示意图。数据中心网络可以包括:服务器、交换机、存储设备、计算网络、和存储网络等。其中,交换机可以分为柜顶交换机(top of rack,ToR)、叶(leaf)交换机、和脊(spine)交换机等,柜顶交换机为直接连接服务器的交换机。分发点(point of delivery,POD),是数据中心网络的基本部署单元,为了便于数据中心网络的资源池化操作,可以将整个数据中心网络的资源划分为一个或多个物理分区,每个物理分区就是一个POD,一台 物理设备只能属于一个POD。一个或多个POD和叶交换机组成分发点集合。一个或多个分发点集合组成数据中心网络。
图1b为网状(mesh)拓扑的数据中心网络的架构示意图。该数据中心网络中所有的节点(例如交换机、或网络设备)都互相连接,并且每一个交换机至少连接其他两个交换机,所有交换机之间形成一个整体的网络。支持mesh功能的路由器,组网后,可以生成一种网状网络,不同接入点可以以星状、树状、串联和总线方式,混合组网。
图1c为蜻蜓(dragonfly)拓扑的数据中心网络的架构示意图。蜻蜓拓扑是一种两级的层次式网络,蜻蜓拓扑的组内和组间可采用任何拓扑,全局跳步少,延迟低,并且网络规模更容易扩展。
需要说明的是,本申请实施例提供的路径感知方法,可以适用于图1a至图1c所示的数据中心网络,还可以应用于采用其他拓扑结构的数据中心网络,图1a至图1c仅为本申请提供的数据中心网络的几种架构示意图。
应理解,图1a至图1c仅为便于理解而示例的简化示意图,该数据中心网络中还可以包括其他网络设备,和/或,其他设备,图1a至图1c中未予以画出。
为了使得本申请实施例更加清楚,以下对与本申请实施例相关的部分内容以及概念作统一介绍。
第一,路径:
数据中心网络的典型特征是多路径,多路径主要可以保证网络的可靠性和流量负载均衡。如图2所示,服务器1和服务器4之间有两条路径,例如路径1和路径2,两个服务器之间的流量可以分担在不同的路径。示例性地,服务器1与服务器4之间的路径1依次包括交换机21、交换机11、和交换机24,服务器1与服务器4之间的路径2依次包括交换机21、交换机12、和交换机24。
第二,哈希密钥(HASH key):
哈希密钥可用于选择路径,节点获得报文后,可获取报文中的哈希密钥,通过哈希算法,获得下一跳及接口,从而可以从多条路径中选取一条路径。
图3为本申请提供的一种报文的结构示意图。
如图3所示,报文可以包括等价多路径(equal cost multipath routing,ECMP)哈希域(HASH fields)和有效载荷(payload)字段。
结合图3,等价多路径哈希域可以包括源IP(source IP)、目标IP(destination IP)、4层通信协议(layer 4protocol)、源端口(source port)、目标端口(destination port)。等价多路径哈希域可以包括源(media access control,MAC)和目标MAC。有效载荷指报文实际传输的数据。
需要说明的是,图3仅为本申请提供的一个示例,不对本申请中报文的格式进行限定。
下面将结合图4-图7对本申请实施例提供的路径感知方法进行具体阐述。通信网络包括源节点、N个中间节点、以及目标节点,N为大于0的整数。其中,源节点、目标节点均可以为服务器,结合图2,源节点可以为服务器1至服务器4中任一个,目标节点可以为服务器1至服务器4中任一个,例如,在存储场景中,源节点和目标节点可以为存储业务节点,包括存储客户端、存储控制器、和存储阵列等。中间节点 可以为交换机、路由器等。结合图2,N个中间节点可以包括如下一个或多个:交换机21至交换机24、以及交换机11至交换机12。
示例性地,图4为本申请实施例提供的一种路径感知方法的流程示意图。
如图4所示,该路径感知方法包括如下步骤:
S401,源节点向目标节点发送第一请求报文。相应地,中间节点接收第一请求报文。
示例性地,第一请求报文可以包括第一节点的标识、第一数据流的标识和第一预留信息。
例如,第一节点为N个中间节点中的任一个。结合图2,若第一节点为交换机21,则第一节点的标识为21、交换机21、和/或交换机21对应的设备编号。
可选地,可以将第一节点的标识封装在第一请求报文的有效载荷中。例如,第一请求报文的结构可以如图3所示。
例如,第一数据流为源节点与目标节点之间的数据流。例如,结合图2,第一数据流可以为服务器1与服务器4之间的数据流,目标节点可以为服务器4。
一些实施例中,第一数据流的标识可以包括:源节点的互联网协议地址(internet protocol,IP)地址、目标节点的第一端口、和目标节点的IP地址。
可选地,第一数据流的标识还可以包括如下一项或多项:源节点的端口、协议字段、源节点的媒体介入控制(media access control,MAC)地址、和目标节点的MAC地址。
示例性地,第一数据流的标识可以为一元组、二元组、四元组、五元组、或七元组等。
可选地,第一数据流在第一路径上传输。结合图2,第一路径可以为路径1或路径2。
示例性地,第一请求报文可用于请求确定第一路径是否经过第一节点。
示例性地,第一预留信息可用于记录第一路径是否经过所述第一节点的结果。
例如,第一预留信息可以占用一个或多个比特位置。假设第一预留信息的长度为1个比特,则第一预留信息的初始值可以为“0”或“1”。
例如,用“1”指示第一路径经过第一节点,用“0”指示第一路径不经过第一节点,第一预留信息的初始值为“0”,默认第一路径不经过第一节点。
以第一预留信息的初始值是“0”为例,在中间节点接收第一请求报文并确定第一路径经过第一节点的情况下,中间节点可将第一预留信息的值置为“1”,以指示第一路径经过第一节点,否则,中间节点可以不对第一预留信息进行操作,第一预留信息的值为“0”指示第一路径不经过第一节点。
需要说明的是,还可以用“1”指示第一路径不经过第一节点,用“0”指示第一路径经过第一节点,本申请对此不进行限定。本申请以用“1”指示第一路径经过第一节点,用“0”指示第一路径不经过第一节点为例进行阐述。
结合图2,以第一节点为交换机21、第一路径为路径1为例,第一请求报文可用于请求确定路径1是否经过交换机21,并在第一请求报文的特定的位置(例如第一预留信息的位置)设置标记,以指示第一路径经过第一节点、或第一路径不经过第一节 点。例如,交换机21接收第一请求报文,确定路径1经过交换机21,则将第一预留信息的“0”置为“1”;交换机21继续转发第一请求报文至交换机11,交换机11可以确定路径1是否经过交换机21,或者,交换机11发现第一预留信息置为“1”的情况下,不再进行判断;交换机11继续转发第一请求报文至交换机24,交换机24的动作参考交换机11,此处不再赘述。
如此,中间节点接收第一报文后,不需要对报文的结构进行修改,不增加报文的长度,便可以使报文携带第一路径是否经过第一节点的信息,方案简单。
可选地,第一请求报文可以为探测报文、或心跳报文等。
S402,中间节点确定第一路径是否经过第一节点。
可选地,中间节点可以通过自身的标识与第一请求报文中第一节点的标识是否匹配,确定第一路径是否经过第一节点。
例如,自身的标识与第一节点的标识匹配,则确定第一路径经过第一节点,否则,确定第一路径不经过第一节点。
其中,“匹配”可指相同、或存在对应关系、或存在映射关系等。例如,交换机11的标识可以为交换机11、或交换机-11等,交换机11与交换机11相同,交换机11与交换机-11之间存在对应关系或映射关系。
示例性地,中间节点识别第一请求报文,并检测自身的标识与第一请求报文中的第一节点的标识是否匹配,若匹配则标记经过。
例如,假设第一预留信息为“0”,指示第一路径不经过第一节点,若确定匹配,则将“0”置为“1”,指示第一路径经过第一节点;若确定不匹配,则不对“0”进行操作。
S403,中间节点发送第三请求报文。相应地,目标节点接收第三请求报文。
示例性地,第三请求报文可以包括第一数据流的标识、第一节点的标识和第一指示信息。
可选地,第一指示信息是中间节点将第一路径是否经过第一节点的结果记录在第一预留信息后获得的,第一指示信息可以用于指示第一路径经过第一节点、或第一路径不经过第一节点。
示例性地,在中间节点确定第一路径经过第一节点的情况下,将结果记录在第一预留信息,例如第一预留信息的初始值是“0”,中间节点将第一预留信息的值置为“1”,获得第一指示信息,指示第一路径经过第一节点。在中间节点确定第一路径不经过第一节点的情况下,例如第一预留信息的初始值是“0”,中间节点可以不对第一预留信息进行操作,获得第一指示信息,指示第一路径不经过第一节点。
需要说明的是,本申请不对第一预留信息的名称和第一指示信息的名称进行限定,能实现源节点在第一请求报文中预留特定的比特位置,可以通过该特定的比特位置指示第一路径是否经过第一节点即可。
可选地,在第一指示信息指示第一路径经过第一节点的情况下,第一指示信息可以占用第三请求报文的差分服务代码点(differentiated services code point,DSCP)字段。
一些实施例中,中间节点可以继续转发第三请求报文,可以经历一个或多个其他中间节点转发,最终目标节点接收到第三请求报文。
结合图2,假设第一路径为路径1,路径1包括:交换机21-交换机11-交换机24,第一节点的标识为交换机11的标识,例如交换机11。服务器1发送的第一请求报文包括交换机11、数据流1和“0”,数据流1对应路径1,请求确认路径1是否经过交换机11。交换机21接收该第一请求报文,确定自身的标识与交换机11不相同,不对“0”进行操作,继续转发该第一请求报文至交换机11。交换机11确定自身的标识与交换机11相同,则将“0”修改为“1”,指示路径1经过交换机11,交换机11转发包括交换机11、数据流1和“1”的报文至交换机24。交换机24确定自身的标识与交换机11不相同,或者,发现“1”后不再确定自身的标识与交换机11是否相同,继续转发包括交换机11、数据流1和“1”的报文至服务器4。
S404,目标节点根据第一数据流的标识向源节点发送第一应答报文。相应地,源节点接收来自目标节点的第一应答报文。
示例性地,第一应答报文包括第一数据流的标识、第一节点的标识和第一指示信息。
可选地,目标节点可以将第一数据流的标识、第一节点的标识和/或第一指示信息封装在第一应答报文的有效载荷中。例如,第一应答报文的结构可以如图3所示。
需要说明的是,本申请中,报文的结构不限于图3所示的结构,第一数据流的标识、第一节点的标识和/或第一预留信息可以封装在其他字段中(除有效载荷以外的字段),类似地,第一数据流的标识、第一节点的标识和/或第一指示信息可以封装在其他字段中。
S405,源节点根据第一应答报文获得第一信息。
示例性地,第一信息可以包括第一路径经过第一节点、或第一路径不经过第一节点。
可选地,第一信息还可以包括第一数据流的标识和/或第一路径的时延。
也就是说,源节点可以记录第一路径的信息、还可以记录第一数据流的标识和/或第一路径的时延。
示例性地,源节点根据第一应答报文中的第一数据流的标识、第一节点的标识和第一指示信息,更新第一路径的信息。
一些实施例中,源节点遍历N个中间节点,执行S401,生成N个中间节点的每个中间节点对应的第一请求报文,每个中间节点均执行上述S402至S403,对应的目标节点执行上述S404,从而源节点获得N个中间节点分别对应的第一信息,源节点迭代更新第一信息,获得第二信息。
示例性地,结合图2,以第一路径是路径1、第一数据流的标识为数据流1为例,N个中间节点包括交换机21至交换机24、和交换机11至交换机12。源节点发送交换机21对应的第一请求报文,交换机21对应的第一请求报文包括交换机21和数据流1和第一预留信息。交换机21接收该第一请求报文,并确定出自身经过路径1,发送第三请求报文,该第三请求报文包括数据流1、交换机21和第一指示信息(指示路径1经过交换机21)。依次经过交换机11和交换机24转发该第三请求报文后,目标节点接收第三请求报文,并将第三请求报文的内容发给源节点。源节点获得的第一路径(路径1)的信息(可称为第一信息)包括:路径1经过交换机21,还可以获得数据流1 和/或路径1的时延21。
源节点发送交换机22对应的第一请求报文,交换机22对应的第一请求报文包括交换机22和数据流1和第一预留信息。该第一请求报文可依次经过交换机21、交换机11和交换机24转发至目标节点,交换机21、交换机11和交换机24均确定自身的标识与交换机22不相同,则确定出路径1不经过交换机22。目标节点接收的第三请求报文包括数据流1、交换机22和第一指示信息(指示路径1不经过交换机22),并将第三请求报文的内容发给源节点。源节点获得的第一路径的信息(可称为第一信息)包括:路径1不经过交换机22,还可以获得数据流1和/或路径1的时延22。
源节点更新第一路径的信息,获得路径1经过交换机21、以及路径1不经过交换机22的路径信息,还可以获得数据流1、路径1的时延21、和路径1的时延22。
类似地,遍历交换机23至交换机24、以及交换机11至交换机12,源节点迭代更新第一信息,获得的最终的第一路径的信息(可称为第二信息)包括:路径1经过交换机21、路径1不经过交换机22、路径1不经过交换机23、路径1经过交换机24、路径1经过交换机11、和路径1不经过交换机12,还可以包括数据流1、路径1的时延21、路径1的时延22、路径1的时延23、路径1的时延24、路径1的时延11、和路径1的时延12。
在一种可能的设计方式中,本申请提供的路径感知方法,还可以包括:S406,源节点根据拓扑连接关系和第二信息,确定第一路径。
可选地,第二信息可以是根据N个中间节点分别对应的第一应答报文迭代更新第一信息后获得的。具体可参照上述结合图2对第二信息的阐述,此处不再赘述。
可选地,拓扑连接关系可以包括源节点、N个中间节点、和目标节点之间的拓扑关系。
结合图2,拓扑连接关系可以包括服务器1至服务器4、交换机21至交换机24、和交换机11至交换机12之间的拓扑关系。
可选地,第一路径可以包括Q个中间节点的连接关系,Q为大于0且小于或等于N的整数。
结合图2,对于第一路径为路径1的情况,第二信息包括:路径1经过交换机21、路径1不经过交换机22、路径1不经过交换机23、路径1经过交换机24、路径1经过交换机11、和路径1不经过交换机12。源节点根据拓扑连接关系和第二信息,确定出路径1依次包括交换机21、交换机11和交换机24,路径1为依次由交换机21、交换机11和交换机24组成的链路。
可选地,源节点还可以获得路径1的时延信息。例如,将路径1的时延21、路径1的时延22、路径1的时延23、路径1的时延24、路径1的时延11、和路径1的时延12的平均值作为路径1的时延。
可选地,可以根据第一路径的时延识别第一路径是否异常。例如,第一路径的时延的值大于时延阈值,则第一路径发生异常,否则,第一路径正常。
需要说明的是,对于第一路径为图2中路径2的情况,源节点获得路径2的信息的具体实现方式可参照上述获得路径1的信息的具体实现方式,此处不再赘述。
基于图4所示的路径感知方法,源节点向目标节点发送包括第一节点的标识、第 一数据流的标识和第一预留信息的第一请求报文,第一数据流在第一路径上传输,第一请求报文用于请求确定第一路径是否经过第一节点,接收包括第一数据流的标识、第一节点的标识和第一指示信息的第一应答报文,根据第一应答报文获得第一路径经过第一节点、或第一路径不经过第一节点的信息。该方案简单,不需要对报文的结构进行修改,不会增加报文的长度,能够通过简单的方案实现路径感知,并且对设备的要求不高。
另外,可以通过数据流感知路径,在感知路径的过程中,若存在异常时(例如时延超阈值、没有响应、或中间节点异常通知源节点等),可以精准定位到路径(例如结合拓扑连接关系可识别到路径上涉及的节点和链路),从而降低故障排查周期。并且,方案简单,不依赖于大量的测量数据,可以降低开销。
示例性地,图5为本申请实施例提供的另一种路径感知方法的流程示意图。图5所示的路径感知方法可以与图4所示的路径感知方法结合使用,也可以单独使用。
如图5所示,该路径感知方法包括如下步骤:
S501,源节点确定第一相关值。
可选地,第一相关值可表示第一请求报文与第二请求报文的相关度。
示例性地,第二请求报文可以包括第二数据流的标识、第一节点的标识和第二预留信息,第二数据流可以为源节点与目标节点之间的数据流,第二数据流在第二路径上传输,第二请求报文可以为已发送的报文,第二请求报文可用于请求确定第二路径是否经过第一节点。
示例性地,第二预留信息可用于记录第二路径是否经过第一节点的结果。关于第二预留信息的具体实现方式可参照上述S401中第一预留信息的具体实现方式,此处不再赘述。
示例性地,第一请求报文可以为将要发送的报文,关于第一请求报文的具体实现方式可参照上述S401,此处不再赘述。
结合图2和表1,假设第二路径为图2所示的路径2,路径2包括交换机21-交换机12-交换机24,第二请求报文为表1所示的报文2。第一请求报文可以为表1中的报文1、报文3至报文5中的任一项,路径1、路径3至路径5可参照表1。
如表1所示,报文1与报文2的相关度为1,报文3与报文2的相关度为2,报文4与报文2的相关度为0,报文5与报文2的相关度为2。也就是说,路径1与路径2的相关度为1,路径3与路径2的相关度为2,路径4与路径2的相关度为0,路径5与路径2的相关度为2。
表1
Figure PCTCN2022130384-appb-000001
S502,在第一相关值小于或等于相关度阈值的情况下,源节点向目标节点发送第 一请求报文。
可选地,相关度阈值可以为预设置的。
一些实施例中,第一请求报文与第二请求报文的相关度越高,第一相关值越大,第一请求报文与第二请求报文(或第一路径与第二路径)越相近、相似,甚至相同。
结合表1,例如相关度阈值为3,假设第一请求报文为报文1,第一相关值1小于相关度阈值3,则源节点向目标节点发送该报文1。假设第一请求报文为报文3,第一相关值3等于相关度阈值3,报文3与报文2相同,则源节点不发送报文3,并且可以执行下述S503。类似地,第一请求报文为报文4至报文5时,源节点采用类似的方式确定是否发送相应的报文。
如此,通过相关度阈值确定是否发送当前要发送的报文,相关度高可以不发送,相关度低则发送,这样可以提高探测的覆盖率,降低探测成本。图5所示的方法的构思还可用于路径建立的场景中,通过将要建立的路径与已有路径的关系,确定是否建立将要建立的路径,相关度高可以不建立,相关度低则建立,这样可以提高节点间路径的可靠性。
与图4结合使用时,图4中S401,向目标节点发送第一请求报文,可以包括S502,在第一相关值小于或等于相关度阈值的情况下,源节点向目标节点发送第一请求报文。
S503,在第一相关值大于相关度阈值的情况下,源节点生成映射信息。
可选地,映射信息可以包括第二数据流的标识与第一数据流的标识的映射关系。
结合表1,映射信息可以包括报文2与报文3(或路径2与路径3)的映射关系。源节点可以根据映射信息,不再构建该报文3(或路径3),如此,可以避免源节点再次构造并发送该第一请求报文,可以降低探测成本。用于路径建立的场景中,可以避免源节点再次建立路径,可以降低开销。
需要说明的是,S503可以为可选地,在第一相关值大于相关度阈值的情况下,源节点可以不发送第一请求报文,还可以生成并记录映射信息。
可选地,在第一相关值大于相关度阈值的情况下,源节点可以不建立该路径,可以不利用该路径对应的数据流的标识发送探测报文、检测的数据、业务数据、和应用数据等。
一些实施例中,源节点可以再次构建新的第一请求报文,提高探测的覆盖率。
基于图5所示的路径感知方法,源节点确定第一请求报文与第二请求报文的相关度,该第二请求报文为已发送的报文,在第一相关值小于或等于相关度阈值的情况下,向目标节点发送第一请求报文,否则,不发送第一请求报文。如此,可以提高探测的覆盖率,降低探测源节点的开销和网络开销。
在一种可能的设计方式中,本申请实施例提供的方法,可以包括:在第一路径发生异常的情况下,源节点根据相关度信息和/或异常节点信息,由通过第一路径与目标节点进行通信切换为通过第三路径与目标节点进行通信。该方案可以与图4结合使用,可以与图5结合使用,可以与图4和图5结合使用,也可以单独使用。
可选地,相关度信息可用于指示一个或多个第四路径分别与第一路径的相关度。
可选地,异常节点信息可用于指示发生异常的中间节点。例如,假设路径1包括:交换机1-交换机2-交换机3,其中交换机2异常。
示例性地,源节点与目标节点之间的路径可以包括第一路径和一个或多个第四路径。例如,源节点与目标节点之间的路径包括路径1、路径2、路径3、和路径4。
一些实施例中,第三路径为一个或多个第四路径中与第一路径的相关度最低的路径,和/或,第三路径为一个或多个第四路径中不经过发生异常的中间节点的路径。
例如,假设第一路径为路径1,源节点与目标节点之间当前通过路径1进行通信,一个或多个第四路径包括路径2、路径3、和路径4,相关度信息可以包括路径2与路径1的相关度(例如取值为2)、和路径3与路径1的相关度(例如为1)、和路径4与路径1的相关度(例如为2)。路径3与路径1的相关度最低,则第三路径可以为路径3。
假设交换机2异常,路径2包括:交换机1-交换机2-交换机4-交换机5,路径3包括:交换机1-交换机6-交换机4-交换机5,路径4包括:交换机1-交换机7-交换机4-交换机5,则第三路径可以为路径3或路径4。
若将与第一路径的相关度最低的路径且不经过发生异常的中间节点的路径作为第三路径,则第三路径可以为路径3。
可选地,还可以根据路径2至路径4分别对应的时延,选择时延取值最小的路径作为第三路径。
如此,当路径发生异常时,切换至相关度较低的路径上进行通信,或者绕过故障的节点,切换至不包括故障节点的路径上进行通信,可以提高源节点与目标节点间多路径的可靠性。此外,可以提高业务流的切换速度,减轻网络故障对业务的影响,提高系统的可靠性。
图6和图7为本申请实施例提供的路径切换示意图。假设源节点与目标节点之间包括路径1至路径4,路径1发生异常,路径1、路径2和路径3经过故障节点,路径4不经过故障节点。
图6和图7为在基于网络连接的非易失性存储(non-volatile memory express over fabric,NoF)场景下的路径切换示意图。例如,在NoF场景下,由一条路径切换至另一条路径需要1s,如图6所示,源节点按顺序切换路径,感知到路径1异常后,尝试切换至路径2;感知到路径2异常,尝试切换至路径3;感知到路径3异常,尝试切换至路径4,路径4无异常,切换成功,总共需要3S。
如图7所示,源节点根据相关度信息和/或异常节点信息进行路径切换,感知到路径1异常后,判断出路径4不经过故障节点,直接切换至路径4,总共需要1S,用时更短,提高了业务流的切换速度。
本申请中,除特殊说明外,各个实施例之间相同或相似的部分可以互相参考。在本申请中各个实施例、以及各实施例中的各个实施方式/实施方法/实现方法中,如果没有特殊说明以及逻辑冲突,不同的实施例之间、以及各实施例中的各个实施方式/实施方法/实现方法之间的术语和/或描述具有一致性、且可以相互引用,不同的实施例、以及各实施例中的各个实施方式/实施方法/实现方法中的技术特征根据其内在的逻辑关系可以组合形成新的实施例、实施方式、实施方法、或实现方法。以下所述的本申请实施方式并不构成对本申请保护范围的限定。
以上结合图2-图7详细说明了本申请实施例提供的路径感知方法。以下结合图8- 图10详细说明本申请实施例提供的路径感知装置。
图8为可用于执行本申请实施例提供的一种路径感知装置的结构示意图。路径感知装置800可以是源节点、N个中间节点中的任一个、或目标节点,也可以是应用于源节点、中间节点、或目标节点中的芯片或者其他具有相应功能的部件。如图8所示,路径感知装置800可以包括处理器801。可选地,路径感知装置800还可以包括存储器802和收发器803中的一个或多个。其中,处理器801可以与存储器802和收发器803中的一个或多个耦合,如可以通过通信总线连接,处理器801也可以单独使用。
下面结合图8对路径感知装置800的各个构成部件进行具体的介绍:
处理器801是路径感知装置800的控制中心,可以是一个处理器,也可以是多个处理元件的统称。例如,处理器801是一个或多个中央处理器(central processing unit,CPU),也可以是特定集成电路(application specific integrated circuit,ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路,例如:一个或多个微处理器(digital signal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA)。
其中,处理器801可以通过运行或执行存储在存储器802内的软件程序,以及调用存储在存储器802内的数据,执行路径感知装置800的各种功能。
在具体的实现中,作为一种实施例,处理器801可以包括一个或多个CPU,例如图8中所示的CPU0和CPU1。
在具体实现中,作为一种实施例,路径感知装置800也可以包括多个处理器,例如图8中所示的处理器801和处理器804。这些处理器中的每一个可以是一个单核处理器(single-CPU),也可以是一个多核处理器(multi-CPU)。这里的处理器可以指一个或多个通信设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
可选地,存储器802可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储通信设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储通信设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储通信设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器802可以和处理器801集成在一起,也可以独立存在,并通过路径感知装置800的输入/输出端口(图8中未示出)与处理器801耦合,本申请实施例对此不作具体限定。
示例性地,输入端口可用于实现上述任一方法实施例中由源节点、中间节点、或目标节点执行的接收功能,输出端口可用于实现上述任一方法实施例中由源节点、中间节点、或目标节点执行的发送功能。
其中,所述存储器802可用于存储执行本申请方案的软件程序,并由处理器801来控制执行。上述具体实现方式可以参考下述方法实施例,此处不再赘述。
可选地,收发器803,用于与其他路径感知装置之间的通信。例如,路径感知装置800为源节点时,收发器803可以用于与N个中间节点和/或目标节点通信。又例如, 路径感知装置800为中间节点时,收发器803可以用于与源节点、目标节点和/或其他中间节点通信。此外,收发器803可以包括接收器和发送器(图8中未单独示出)。其中,接收器用于实现接收功能,发送器用于实现发送功能。收发器803可以和处理器801集成在一起,也可以独立存在,并通过路径感知装置800的输入/输出端口(图8中未示出)与处理器801耦合,本申请实施例对此不作具体限定。
需要说明的是,图8中示出的路径感知装置800的结构并不构成对该路径感知装置的限定,实际的路径感知装置可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
其中,上述图2-图7中源节点的动作可以由图8所示的路径感知装置800中的处理器801调用存储器802中存储的应用程序代码以指令源节点执行。
上述图2-图7中中间节点的动作可以由图8所示的路径感知装置800中的处理器801调用存储器802中存储的应用程序代码以指令中间节点执行,本实施例对此不作任何限制。
上述图2-图7中目标节点的动作可以由图8所示的路径感知装置800中的处理器801调用存储器802中存储的应用程序代码以指令目标节点执行,本实施例对此不作任何限制。
当路径感知装置为源节点时,路径感知装置800可执行上述方法实施例中的源节点所涉及的任一种或多种可能的设计方式;当路径感知装置为中间节点时,路径感知装置800可执行上述方法实施例中的中间节点所涉及的任一种或多种可能的设计方式;当路径感知装置为目标节点时,路径感知装置800可执行上述方法实施例中的目标节点所涉及的任一种或多种可能的设计方式。
需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
图9为本申请实施例提供的另一种路径感知装置的结构示意图。为了便于说明,图9仅示出了该路径感知装置的主要部件。
该路径感知装置900包括收发模块901、和处理模块902。该路径感知装置900可以是前述方法实施例中的源节点、或中间节点。收发模块901,也可以称为收发单元,用以实现上述任一方法实施例中由源节点、或中间节点执行的收发功能。
需要说明的是,收发模块901可以包括接收模块和发送模块(图9中未示出)。其中,接收模块用于接收来自其他设备的数据和/或信令;发送模块用于向其他设备发送数据和/或信令。本申请对于收发模块的具体实现方式,不做具体限定。该收发模块可以由收发电路、收发机、收发器或者通信接口构成。
处理模块902,可以用于实现上述任一方法实施例中由源节点、或中间节点执行的处理功能。该处理模块902可以为处理器。
在本实施例中,该路径感知装置900以采用集成的方式划分各个功能模块的形式来呈现。这里的“模块”可以指特定ASIC,电路,执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。在一个简单的实施例中,本领域的技术人员可以想到该路径感知装置900可以采用图8所示的路径感知装置800的形式。
比如,图8所示的路径感知装置800中的处理器801可以通过调用存储器802中存储的计算机执行指令,使得上述方法实施例中的路径感知方法被执行。
具体的,图9中的收发模块901和处理模块902的功能/实现过程可以通过图8所示的路径感知装置800中的处理器801调用存储器802中存储的计算机执行指令来实现。或者,图9中的处理模块902的功能/实现过程可以通过图8所示的路径感知装置800中的处理器801调用存储器802中存储的计算机执行指令来实现,图9中的收发模块901的功能/实现过程可以通过图8中所示的路径感知装置800中的收发器803来实现。
由于本实施例提供的路径感知装置900可执行上述路径感知方法,因此其所能获得的技术效果可参考上述方法实施例,在此不再赘述。
图10为本申请实施例提供的又一种路径感知装置的结构示意图。为了便于说明,图10仅示出了该路径感知装置的主要部件。
该路径感知装置1000包括发送模块1001和接收模块1002。该路径感知装置1000可以是前述方法实施例中的目标节点。发送模块1001,也可以称为发送单元,用以实现上述任一方法实施例中由目标节点执行的发送功能。接收模块1001,也可以称为接收单元,用以实现上述任一方法实施例中由目标节点执行的接收功能。
需要说明的是,发送模块1001和接收模块1002可以分开设置,也可以集成在一个模块中,即收发模块。本申请对于接收模块和发送模块的具体实现方式,不做具体限定。该收发模块可以由收发电路、收发机、收发器或者通信接口构成。
可选地,路径感知装置1000还可以包括处理模块1003和存储模块,该存储模块存储有程序或指令。当处理模块1003执行该程序或指令时,使得路径感知装置1000可以执行上述任一方法实施例所述的方法。
处理模块1003,可以用于实现上述任一方法实施例中由目标节点执行的处理功能。该处理模块1003可以为处理器。
在本实施例中,该路径感知装置1000以采用集成的方式划分各个功能模块的形式来呈现。这里的“模块”可以指特定ASIC,电路,执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。在一个简单的实施例中,本领域的技术人员可以想到该路径感知装置1000可以采用图8所示的路径感知装置800的形式。
比如,图8所示的路径感知装置800中的处理器801可以通过调用存储器802中存储的计算机执行指令,使得上述方法实施例中的路径感知方法被执行。
具体地,图10中的处理模块1003和存储模块的功能/实现过程可以通过图8中所示的路径感知装置800中的收发器803来实现。图10中的处理模块1003的功能/实现过程可以通过图8所示的路径感知装置800中的处理器801调用存储器802中存储的计算机执行指令来实现,
由于本实施例提供的路径感知装置1000可执行上述路径感知方法,因此其所能获得的技术效果可参考上述方法实施例,在此不再赘述。
在一种可能的设计方案中,图9所示出的路径感知装置900可适用于图1a-图1b所示出的路径感知系统中,执行上述任一方法实施例中的源节点的功能。
该路径感知装置900应用于包括路径感知装置900、N个中间节点、以及目标节点的通信网络,N为大于0的整数。
其中,收发模块901,用于向目标节点发送第一请求报文。其中,第一请求报文包括第一节点的标识、第一数据流的标识和第一预留信息,第一数据流为路径感知装置900与目标节点之间的数据流,第一数据流在第一路径上传输,第一请求报文用于请求确定第一路径是否经过第一节点,第一节点为N个中间节点中的任一个,第一预留信息用于记录第一路径是否经过第一节点的结果。
收发模块901,还用于接收来自目标节点的第一应答报文。其中,第一应答报文包括第一数据流的标识、第一节点的标识和第一指示信息。第一指示信息是将第一路径是否经过第一节点的结果记录在第一预留信息后获得的,第一指示信息用于指示第一路径经过第一节点、或第一路径不经过第一节点。
处理模块902,用于根据第一应答报文获得第一信息。其中,第一信息包括第一路径经过第一节点、或第一路径不经过第一节点。
在一种可能的设计方式中,第一信息还可以包括第一数据流的标识和/或第一路径的时延。
在一种可能的设计方式中,处理模块902,还用于根据拓扑连接关系和第二信息,确定第一路径。其中,拓扑连接关系可以包括路径感知装置900、N个中间节点、和目标节点之间的拓扑关系,第二信息是根据N个中间节点对应的第一应答报文迭代更新第一信息后获得的,第一路径可以包括Q个第一节点的连接关系,Q为大于0且小于或等于N的整数。
在一种可能的设计方式中,处理模块902,还用于确定第一相关值。其中,第一相关值表示第一请求报文与第二请求报文的相关度,第二请求报文包括第二数据流的标识、第一节点的标识和第二预留信息,第二数据流为路径感知装置900与目标节点之间的数据流,第二数据流在第二路径上传输,第二路径为已被建立的路径,第二请求报文可用于请求确定第二路径是否经过第一节点,第二预留信息用于记录第二路径是否经过所述节点的结果。
在一种可能的设计方式中,在第一相关值小于或等于相关度阈值的情况下,收发模块901,还用于向目标节点发送第一请求报文。
在一种可能的设计方式中,在第一相关值大于相关度阈值的情况下,处理模块902,还用于生成映射信息。其中,映射信息可以包括第二数据流的标识与第一数据流的标识的映射关系。
在一种可能的设计方式中,在第一路径发生异常的情况下,处理模块902,还用于根据相关度信息和/或异常节点信息,由通过第一路径与目标节点进行通信切换为通过第三路径与目标节点进行通信。其中,相关度信息可用于指示一个或多个第四路径分别与第一路径的相关度,路径感知装置900与目标节点之间的路径可以包括第一路径和一个或多个第四路径,异常节点信息可用于指示发生异常的中间节点。第三路径为一个或多个第四路径中与第一路径的相关度最低的路径、和/或一个或多个第四路径中不经过发生异常的中间节点的路径。
可选的,路径感知装置900还可以包括存储模块(图9中未示出),该存储模块存 储有程序或指令。当处理模块902执行该程序或指令时,使得路径感知装置900可以执行上述任一方法实施例所述的源节点的功能。
需要说明的是,路径感知装置900可以是源节点,也可以是可设置于源节点的芯片(系统)或其他部件或组件,本申请对此不做限定。
此外,路径感知装置900的技术效果可以参考上述任一方法实施例所述的路径感知方法的技术效果,此处不再赘述。
在一种可能的设计方案中,图9所示出的路径感知装置900可适用于图1a-图1b所示出的路径感知系统中,执行上述任一方法实施例所述的路径感知方法中的中间节点的功能。
该路径感知装置900应用于包括源节点、N个中间节点、以及目标节点的通信网络,N为大于0的整数。该路径感知装置900为N个中间节点中的任一个。
其中,收发模块901,用于接收第一请求报文。其中,第一请求报文包括第一节点的标识、第一数据流的标识和第一预留信息,第一数据流为源节点与目标节点之间的数据流,第一数据流在第一路径上传输,第一请求报文用于请求确定第一路径是否经过第一节点,第一预留信息用于记录第一路径是否经过第一节点的结果。
处理模块902,用于确定第一路径是否经过第一节点。
收发模块901,还用于发送第三请求报文。其中,第三请求报文包括第一数据流的标识、第一节点的标识和第一指示信息,第一指示信息是将第一路径是否经过第一节点的结果记录在第一预留信息后获得的,第一指示信息用于指示第一路径经过第一节点、或第一路径不经过第一节点。
需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
可选的,路径感知装置900还可以包括存储模块(图9中未示出),该存储模块存储有程序或指令。当处理模块902执行该程序或指令时,使得路径感知装置900可以执行上述任一方法实施例所述的中间节点的功能。
需要说明的是,路径感知装置900可以是中间节点,也可以是可设置于中间节点的芯片(系统)或其他部件或组件,本申请对此不做限定。
此外,路径感知装置900的技术效果可以上述任一方法实施例所述的路径感知方法的技术效果,此处不再赘述。
在又一种可能的设计方案中,图10所示出的路径感知装置1000可适用于图1a-图1b所示出的路径感知系统中,执行上述任一方法实施例所述的路径感知方法中目标节点的功能。
该路径感知装置1000应用于包括源节点、N个中间节点、以及路径感知装置1000的通信网络,N为大于0的整数。
其中,接收模块1002,用于接收第三请求报文。其中,第三请求报文包括第一数据流的标识、第一节点的标识和第一指示信息,第一指示信息用于指示第一路径经过第一节点、或第一路径不经过第一节点。第一数据流为源节点与路径感知装置1000之间的数据流,第一数据流在第一路径上传输,第一节点为N个中间节点中的任一个。
发送模块1001,用于根据第一数据流的标识向源节点发送第一应答报文。其中, 第一应答报文包括第一数据流的标识、第一节点的标识和第一指示信息,第一指示信息用于指示第一路径经过第一节点、或第一路径不经过第一节点。
需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
可选的,路径感知装置1000还可以包括存储模块(图10中未示出),该存储模块存储有程序或指令。当处理模块1003执行该程序或指令时,使得路径感知装置1000可以执行上述任一方法实施例中目标节点的功能。
需要说明的是,路径感知装置1000可以是目标节点,也可以是可设置于目标节点的芯片(系统)或其他部件或组件,本申请对此不做限定。
此外,路径感知装置1000的技术效果可以参考上述任一方法实施例中所示的路径感知方法的技术效果,此处不再赘述。
本申请实施例提供一种路径感知系统。该路径感知系统包括:源节点、N个中间节点和目标节点,N为大于0的整数。其中,源节点用于执行上述方法实施例中源节点的动作,N个中间节点用于执行上述方法实施例中中间节点的动作,目标节点用于执行上述方法实施例中目标节点的动作,具体执行方法和过程可参照上述方法实施例,此处不再赘述。
本申请实施例提供一种芯片系统,该芯片系统包括逻辑电路和输入/输出端口。其中,逻辑电路可用于实现本申请实施例提供的路径感知方法所涉及的处理功能,输入/输出端口可用于本申请实施例提供的路径感知方法所涉及的收发功能。
示例性地,输入端口可用于实现本申请实施例提供的路径感知方法所涉及的接收功能,输出端口可用于实现本申请实施例提供的路径感知方法所涉及的发送功能。
示例性的,路径感知装置800中的处理器可用于进行,例如但不限于,基带相关处理,路径感知装置800中的收发器可用于进行,例如但不限于,射频收发。上述器件可以分别设置在彼此独立的芯片上,也可以至少部分的或者全部的设置在同一块芯片上。例如,处理器可以进一步划分为模拟基带处理器和数字基带处理器。其中,模拟基带处理器可以与收发器集成在同一块芯片上,数字基带处理器可以设置在独立的芯片上。随着集成电路技术的不断发展,可以在同一块芯片上集成的器件越来越多,例如,数字基带处理器可以与多种应用处理器(例如但不限于图形处理器,多媒体处理器等)集成在同一块芯片之上。这样的芯片可以称为系统芯片(system on chip)。将各个器件独立设置在不同的芯片上,还是整合设置在一个或者多个芯片上,往往取决于产品设计的具体需要。本发明实施例对上述器件的具体实现形式不做限定。
在一种可能的设计中,该芯片系统还包括存储器,该存储器用于存储实现本申请实施例提供的路径感知方法所涉及功能的程序指令和数据。
该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。
本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序或指令,当计算机程序或指令在计算机上运行时,使得本申请实施例提供的路径感知方法被执行。
本申请实施例提供一种计算机程序产品,该计算机程序产品包括:计算机程序或指令,当计算机程序或指令在计算机上运行时,使得本申请实施例提供的路径感知方 法被执行。
应理解,在本申请实施例中的处理器可以是中央处理单元(central processing unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
还应理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(random access memory,RAM)可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
上述实施例,可以全部或部分地通过软件、硬件(如电路)、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行所述计算机指令或计算机程序时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系,但也可能表示的是一种“和/或”的关系,具体可参考前后文进行理解。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或 a-b-c,其中a,b,c可以是单个,也可以是多个。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (22)

  1. 一种路径感知方法,其特征在于,应用于通信网络中的源节点,所述通信网络包括所述源节点、N个中间节点、以及目标节点,N为大于0的整数,包括:
    向所述目标节点发送第一请求报文;其中,所述第一请求报文包括第一节点的标识、第一数据流的标识和第一预留信息,所述第一数据流为所述源节点与所述目标节点之间的数据流,所述第一数据流在第一路径上传输,所述第一请求报文用于请求确定所述第一路径是否经过所述第一节点,所述第一节点为所述N个中间节点中的任一个,所述第一预留信息用于记录所述第一路径是否经过所述第一节点的结果;
    接收来自所述目标节点的第一应答报文;其中,所述第一应答报文包括所述第一数据流的标识、所述第一节点的标识和第一指示信息;所述第一指示信息是将所述第一路径是否经过所述第一节点的结果记录在所述第一预留信息后获得的,所述第一指示信息用于指示所述第一路径经过所述第一节点、或所述第一路径不经过所述第一节点;
    根据所述第一应答报文获得第一信息;其中,所述第一信息包括所述第一路径经过所述第一节点、或所述第一路径不经过所述第一节点。
  2. 根据权利要求1所述的路径感知方法,其特征在于,所述第一信息还包括所述第一数据流的标识和/或所述第一路径的时延。
  3. 根据权利要求1或2所述的路径感知方法,其特征在于,所述方法还包括:
    根据拓扑连接关系和第二信息,确定所述第一路径;其中,所述拓扑连接关系包括所述源节点、所述N个中间节点、和所述目标节点之间的拓扑关系,所述第二信息是根据所述N个中间节点对应的所述第一应答报文迭代更新所述第一信息后获得的,所述第一路径包括Q个所述中间节点的连接关系,Q为大于0且小于或等于N的整数。
  4. 根据权利要求1-3中任一项所述的路径感知方法,其特征在于,所述方法还包括:
    确定第一相关值;其中,所述第一相关值表示所述第一请求报文与第二请求报文的相关度,所述第二请求报文包括第二数据流的标识、所述第一节点的标识和第二预留信息,所述第二数据流为所述源节点与所述目标节点之间的数据流,所述第二数据流在第二路径上传输,所述第二请求报文为已发送的报文,所述第二请求报文用于请求确定所述第二路径是否经过所述第一节点,所述第二预留信息用于记录所述第二路径是否经过所述第一节点的结果。
  5. 根据权利要求4所述的路径感知方法,其特征在于,所述向所述目标节点发送第一请求报文,包括:
    在所述第一相关值小于或等于相关度阈值的情况下,向所述目标节点发送所述第一请求报文。
  6. 根据权利要求4所述的路径感知方法,其特征在于,所述方法还包括:
    在所述第一相关值大于相关度阈值的情况下,生成映射信息;其中,所述映射信息包括所述第二数据流的标识与所述第一数据流的标识的映射关系。
  7. 根据权利要求1-6中任一项所述的路径感知方法,其特征在于,所述方法还包括:
    在所述第一路径发生异常的情况下,根据相关度信息和/或异常节点信息,由通过所述第一路径与所述目标节点进行通信切换为通过第三路径与所述目标节点进行通信; 其中,所述相关度信息用于指示一个或多个第四路径分别与所述第一路径的相关度,所述源节点与所述目标节点之间的路径包括所述第一路径和所述一个或多个第四路径,所述异常节点信息用于指示发生异常的中间节点;所述第三路径为所述一个或多个第四路径中与所述第一路径的相关度最低的路径、和/或所述一个或多个第四路径中不经过所述发生异常的中间节点的路径。
  8. 一种路径感知方法,其特征在于,应用于通信网络中的中间节点,所述通信网络包括源节点、N个所述中间节点、以及目标节点,N为大于0的整数包括:
    接收第一请求报文;其中,所述第一请求报文包括第一节点的标识、第一数据流的标识和第一预留信息,所述第一数据流为所述源节点与所述目标节点之间的数据流,所述第一数据流在第一路径上传输,所述第一请求报文用于请求确定所述第一路径是否经过所述第一节点,所述第一预留信息用于记录所述第一路径是否经过所述第一节点的结果,所述第一节点为所述N个中间节点中的任一个;
    确定所述第一路径是否经过所述第一节点;
    发送第三请求报文;其中,所述第三请求报文包括所述第一数据流的标识、所述第一节点的标识和第一指示信息,所述第一指示信息是将所述第一路径是否经过所述第一节点的结果记录在所述第一预留信息后获得的,所述第一指示信息用于指示所述第一路径经过所述第一节点、或所述第一路径不经过所述第一节点。
  9. 一种路径感知方法,其特征在于,应用于通信网络中的目标节点,所述通信网络包括源节点、N个中间节点、以及目标节点,N为大于0的整数,包括:
    接收第三请求报文;其中,所述第三请求报文包括第一数据流的标识、所述第一节点的标识和第一指示信息,所述第一指示信息用于指示所述第一路径经过所述第一节点、或所述第一路径不经过所述第一节点;所述第一数据流为所述源节点与所述目标节点之间的数据流,所述第一数据流在第一路径上传输,所述第一节点为所述N个中间节点中的任一个;
    根据所述第一数据流的标识向所述源节点发送第一应答报文;其中,所述第一应答报文包括所述第一数据流的标识、所述第一节点的标识和第一指示信息,所述第一指示信息用于指示所述第一路径经过所述第一节点、或所述第一路径不经过所述第一节点。
  10. 一种路径感知装置,其特征在于,应用于包括所述路径感知装置、N个中间节点、以及目标节点的通信网络,N为大于0的整数,所述路径感知装置包括:收发模块和处理模块;其中,
    所述收发模块,用于向所述目标节点发送第一请求报文;其中,所述第一请求报文包括第一节点的标识、第一数据流的标识和第一预留信息,所述第一数据流为所述路径感知装置与所述目标节点之间的数据流,所述第一数据流在第一路径上传输,所述第一请求报文用于请求确定所述第一路径是否经过所述第一节点,所述第一节点为所述N个中间节点中的任一个,所述第一预留信息用于记录所述第一路径是否经过所述第一节点的结果;
    所述收发模块,还用于接收来自所述目标节点的第一应答报文;其中,所述第一应答报文包括所述第一数据流的标识、所述第一节点的标识和第一指示信息;所述第 一指示信息是将所述第一路径是否经过所述第一节点的结果记录在所述第一预留信息后获得的,所述第一指示信息用于指示所述第一路径经过所述第一节点、或所述第一路径不经过所述第一节点;
    所述处理模块,用于根据所述第一应答报文获得第一信息;其中,所述第一信息包括所述第一路径经过所述第一节点、或所述第一路径不经过所述第一节点。
  11. 根据权利要求10所述的路径感知装置,其特征在于,所述第一信息还包括所述第一数据流的标识和/或所述第一路径的时延。
  12. 根据权利要求10或11所述的路径感知装置,其特征在于,
    所述处理模块,还用于根据拓扑连接关系和第二信息,确定所述第一路径;其中,所述拓扑连接关系包括所述路径感知装置、所述N个中间节点、和所述目标节点之间的拓扑关系,所述第二信息是根据所述N个中间节点对应的所述第一应答报文迭代更新所述第一信息后获得的,所述第一路径包括Q个所述中间节点的连接关系,Q为大于0且小于或等于N的整数。
  13. 根据权利要求10-12中任一项所述的路径感知装置,其特征在于,
    所述处理模块,还用于确定第一相关值;其中,所述第一相关值表示所述第一请求报文与第二请求报文的相关度,所述第二请求报文包括第二数据流的标识、所述第一节点的标识和第二预留信息,所述第二数据流为所述路径感知装置与所述目标节点之间的数据流,所述第二数据流在第二路径上传输,所述第二路径为已被建立的路径,所述第二请求报文用于请求确定所述第二路径是否经过所述第一节点,所述第二预留信息用于记录所述第二路径是否经过所述第一节点的结果。
  14. 根据权利要求13所述的路径感知装置,其特征在于,
    在所述第一相关值小于或等于相关度阈值的情况下,所述收发模块,还用于向所述目标节点发送所述第一请求报文。
  15. 根据权利要求13所述的路径感知装置,其特征在于,
    在所述第一相关值大于相关度阈值的情况下,所述处理模块,还用于生成映射信息;其中,所述映射信息包括所述第二数据流的标识与所述第一数据流的标识的映射关系。
  16. 根据权利要求10-15中任一项所述的路径感知装置,其特征在于,
    在所述第一路径发生异常的情况下,所述处理模块,还用于根据相关度信息和/或异常节点信息,由通过所述第一路径与所述目标节点进行通信切换为通过第三路径与所述目标节点进行通信;其中,所述相关度信息用于指示多个第四路径分别与所述第一路径的相关度,所述路径感知装置与所述目标节点之间的路径包括所述第一路径和所述多个第四路径,所述异常节点信息用于指示发生异常的中间节点;所述第三路径为所述多个第四路径中与所述第一路径的相关度最低的路径、和/或所述多个第四路径中不经过所述发生异常的中间节点的路径。
  17. 一种路径感知装置,其特征在于,应用于包括源节点、N个中间节点、以及目标节点的通信网络,N为大于0的整数,所述路径感知装置为N个中间节点中的任一个,所述路径感知装置包括:收发模块和处理模块;其中,
    所述收发模块,用于接收第一请求报文;其中,所述第一请求报文包括第一节点 的标识、第一数据流的标识和第一预留信息,所述第一数据流为所述源节点与所述目标节点之间的数据流,所述第一数据流在第一路径上传输,所述第一请求报文用于请求所述第一节点确定所述第一路径是否经过所述第一节点,所述第一预留信息用于记录所述第一路径是否经过所述第一节点的结果,所述第一节点为所述N个中间节点中的任一个;
    所述处理模块,用于确定所述第一路径是否经过所述第一节点;
    所述收发模块,还用于发送第三请求报文;其中,所述第三请求报文包括所述第一数据流的标识、所述第一节点的标识和第一指示信息,所述第一指示信息是将所述第一路径是否经过所述第一节点的结果记录在所述第一预留信息后获得的,所述第一指示信息用于指示所述第一路径经过所述第一节点、或所述第一路径不经过所述第一节点。
  18. 一种路径感知装置,其特征在于,应用于包括源节点、N个中间节点、以及所述路径感知装置的通信网络,N为大于0的整数,所述路径感知装置包括:接收模块和发送模块;其中,
    所述接收模块,用于接收第三请求报文;其中,所述第三请求报文包括第一数据流的标识、所述第一节点的标识和第一指示信息,所述第一指示信息用于指示所述第一路径经过所述第一节点、或所述第一路径不经过所述第一节点;所述第一数据流为所述源节点与所述路径感知装置之间的数据流,所述第一数据流在第一路径上传输,所述第一节点为所述N个中间节点中的任一个;
    所述发送模块,用于根据所述第一数据流的标识向所述源节点发送第一应答报文;其中,所述第一应答报文包括所述第一数据流的标识、所述第一节点的标识和第一指示信息,所述第一指示信息用于指示所述第一路径经过所述第一节点、或所述第一路径不经过所述第一节点。
  19. 一种路径感知装置,其特征在于,所述路径感知装置包括:处理器;所述处理器,用于执行如权利要求1-9中任一项所述的路径感知方法。
  20. 一种路径感知系统,其特征在于,所述路径感知系统包括如权利要求10-16中任一项所述的路径感知装置、如权利要求17所述的路径感知装置、和如权利要求18所述的路径感知装置。
  21. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序或指令,当所述计算机程序或指令在计算机上运行时,使得如权利要求1-9中任一项所述的路径感知方法被执行。
  22. 一种计算机程序产品,其特征在于,所述计算机程序产品包括:计算机程序或指令,当所述计算机程序或指令在计算机上运行时,使得如权利要求1-9中任一项所述的路径感知方法被执行。
PCT/CN2022/130384 2021-11-29 2022-11-07 路径感知方法、装置及系统 WO2023093513A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202111434500.2 2021-11-29
CN202111434500.2A CN116192721A (zh) 2021-11-29 2021-11-29 路径感知方法、装置及系统

Publications (1)

Publication Number Publication Date
WO2023093513A1 true WO2023093513A1 (zh) 2023-06-01

Family

ID=86451075

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/130384 WO2023093513A1 (zh) 2021-11-29 2022-11-07 路径感知方法、装置及系统

Country Status (2)

Country Link
CN (1) CN116192721A (zh)
WO (1) WO2023093513A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116760761A (zh) * 2023-08-16 2023-09-15 摩尔线程智能科技(北京)有限责任公司 路径创建方法、数据处理系统、控制器、存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102217378A (zh) * 2011-05-27 2011-10-12 华为技术有限公司 探测路径信息的方法、设备及系统
CN104780095A (zh) * 2015-04-30 2015-07-15 杭州华三通信技术有限公司 一种sdn网络中的路径探测方法和装置
US20180359176A1 (en) * 2017-06-12 2018-12-13 Cisco Technology, Inc. Centralized segment routing dataplane based backup path validation
CN112350938A (zh) * 2020-10-28 2021-02-09 北京华夏创新科技有限公司 路径探测方法及装置
CN113206789A (zh) * 2019-09-12 2021-08-03 华为技术有限公司 路径探测方法、装置及计算机存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102217378A (zh) * 2011-05-27 2011-10-12 华为技术有限公司 探测路径信息的方法、设备及系统
CN104780095A (zh) * 2015-04-30 2015-07-15 杭州华三通信技术有限公司 一种sdn网络中的路径探测方法和装置
US20180359176A1 (en) * 2017-06-12 2018-12-13 Cisco Technology, Inc. Centralized segment routing dataplane based backup path validation
CN113206789A (zh) * 2019-09-12 2021-08-03 华为技术有限公司 路径探测方法、装置及计算机存储介质
CN112350938A (zh) * 2020-10-28 2021-02-09 北京华夏创新科技有限公司 路径探测方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116760761A (zh) * 2023-08-16 2023-09-15 摩尔线程智能科技(北京)有限责任公司 路径创建方法、数据处理系统、控制器、存储介质
CN116760761B (zh) * 2023-08-16 2023-10-13 摩尔线程智能科技(北京)有限责任公司 路径创建方法、数据处理系统、控制器、存储介质

Also Published As

Publication number Publication date
CN116192721A (zh) 2023-05-30

Similar Documents

Publication Publication Date Title
US11283707B2 (en) Segment routing with fast reroute for container networking
US9325609B2 (en) Segmented source routing in a network
CN110166568B (zh) 分布负载平衡器
US20210176168A1 (en) Advanced Preferred Path Route Graph Features in a Network
CN107078963B (zh) 虚拟可扩展局域网中的路由追踪
EP2987306B1 (en) Asymmetric packet flow in a distributed load balancer
US20160269298A1 (en) Traffic Engineering Feeder for Packet Switched Networks
US20180026878A1 (en) Scalable deadlock-free deterministic minimal-path routing for dragonfly networks
JP6364106B2 (ja) DiameterシグナリングルータにおいてDiameterメッセージをルーティングするための方法、システムおよびコンピュータ読取可能媒体
US20160112502A1 (en) Distributed computing based on deep packet inspection by network devices along network path to computing device
TWI759571B (zh) 基於流表的資料傳送方法
US20160380887A1 (en) Source imposition of network routes in computing networks
JP2018518925A (ja) パケット転送
US11632288B2 (en) Determining the impact of network events on network applications
EP3515018B1 (en) Method, apparatus and system for measuring network path
WO2023093513A1 (zh) 路径感知方法、装置及系统
WO2022121707A1 (zh) 报文传输方法、设备及系统
CN105812257A (zh) 业务链路由管理系统及其使用方法
CN114553699A (zh) 报文传输方法、装置、设备及计算机可读存储介质
WO2023273957A1 (zh) 算力发布方法、算力更新方法及装置
WO2015039616A1 (zh) 一种报文处理方法及设备
CN117176546A (zh) 故障处理方法、相关设备和系统
CN113411257B (zh) 传输报文的方法、装置、计算设备和存储介质
CN114793217B (zh) 智能网卡、数据转发方法、装置及电子设备
WO2022194193A1 (zh) 用于获取路径的方法和装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22897596

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2022897596

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2022897596

Country of ref document: EP

Effective date: 20240607