Path perception method, device and system
By introducing a path perception method that does not modify the message structure in the data center network, the existing solutions are complex and chip requirements are solved, and simple and efficient data flow path perception is achieved.
Patent Information
- Application Number
- CN202111434500.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-29
- Publication Date
- 2025-03-21
- Estimated Expiration
- 2041-11-29
AI Technical Summary
In the existing data center network, the data flow path perception scheme is complex and relies on modification of the message structure, resulting in an increase in the length of the message and high chip requirements.
By introducing a path-aware method into the communication network, the source node sends a request message including node identification, data flow identification and reserved information to the target node, and receives a reply message to determine whether the path passes through a specific node, without modifying the message structure.
It realizes simple data flow path perception, avoids increasing packet length and dependence on chip characteristics, reduces device requirements, and improves troubleshooting efficiency.
Smart Images

Figure CN116192721B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communications, and in particular to a path sensing method, device and system. Background Art
[0002] Today's data center network (DCN) 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.
[0003] Distributed services are characterized by large scale and multiple software systems to implement the distributed services, so a large number of components are required to implement the distributed services, and the coupling relationship between the components is very complex. Existing data flow path perception solutions are very complex. 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 and add its own identification in the detection message to indicate the intermediate nodes through which the path detected by the detection message passes.
[0004] For example, intermediate node 1 receives a detection message and encapsulates the identifier of intermediate node 1 into the message. The encapsulated message includes intermediate node 1. Intermediate node 2 receives a message forwarded by intermediate node 1 and encapsulates its own identifier into the message. The encapsulated message includes intermediate node 1 and intermediate node 2. And so on. When the path passes through a large number of intermediate nodes, the length of the detection message will be very long. In addition, the solution relies on modifying the structure of the message, which makes the solution very complex and has relatively high requirements on the chip. Summary of the invention
[0005] The present application provides a path perception method, device and system, which do not require modification of the structure of the message and can achieve data flow path perception through a simple solution.
[0006] In order to achieve the above objectives, this application adopts the following technical solutions:
[0007] In a first aspect, a path perception method is provided. The path perception method is applied to a source node in a communication network, where the communication network includes the source node, N intermediate nodes, and a target node, where N is an integer greater than 0.
[0008] 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 an identifier of the first node, an identifier of the first data flow, and first reservation information. The first data flow is a data flow between a source node and a target node, and the first data flow is transmitted on a first path. The first request message is used to request whether the first path passes through the first node. The first node is any one of N intermediate nodes, and the first reservation information is used to record the result of whether the first path passes through the first 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 after the first reservation information is recorded. The first indication information is used to indicate that the first path passes through the first node, or the first path does not pass through the first node. The first information includes that the first path passes through the first node, or the first path does not pass through the first node.
[0009] Based on the path perception method described in the first aspect, the source node sends a first request message including an identifier of the first node, an identifier of the first data stream, and first reservation information to the target node, receives a first response message including an identifier of the first data stream, an identifier of the first node, and first indication information, and obtains information that the first path passes through the first node or the first path does not pass through the first node according to the first response message. Among them, the first data stream 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 reservation information is used to record the result of whether the first path passes through the first node, and 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. In this way, there is no need to modify the structure of the message, the length of the message will not be increased, it does not rely on chip-specific characteristics, data flow path perception can be achieved through a simple solution, and the requirements for the device are not high.
[0010] In addition, the path can be sensed through data flow. In the process of sensing the path, if there is an abnormality (such as delay exceeding the threshold, no response, or abnormal notification of the source node by the intermediate node, etc.), the path can be accurately located (for example, the nodes and links involved in the path can be identified by combining the topological connection relationship), thereby reducing the troubleshooting cycle. In addition, the solution is simple, does not rely on a large amount of measurement data, and does not require reasoning and analysis of this data, which can reduce overhead.
[0011] In a possible design, the first information may also include an identifier of the first data stream and / or a delay of the first path.
[0012] In a possible design, 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, the second information may be obtained after iteratively updating the first information according to the first response message corresponding to the N intermediate nodes, and the first path may include the connection relationship 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 in sequence can be obtained.
[0013] In a possible design, the path perception method provided in the first aspect may further include: determining a first correlation value. The first correlation value indicates the correlation between the first request message and the second request message, the second request message includes an identifier of the second data stream, an identifier of the first node, and second reservation information, the second data stream is a data stream between a source node and a target node, the second data stream is transmitted on a second path, the second request message is a sent message, the second request message is used to request whether the second path passes through the first node, and the second reservation information is used to record the result of whether the second path passes through the first node. In this way, the coverage of the detection can be improved and the overhead of detecting the source node and the network overhead can be reduced.
[0014] In a possible design, the sending of the first request message to the target node may include: when the first correlation value is less than or equal to the correlation threshold, sending the first request message to the target node. In this way, if the correlation is high, the message may not be sent, but if the correlation is low, the message may be sent, which can improve the coverage of the detection and reduce the detection cost.
[0015] In a possible design, 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 an identifier of the second data stream and an identifier of the first data stream. In this way, the source node may be prevented from constructing and sending the first request message again, thereby reducing the detection cost.
[0016] In a possible design, the path perception method provided in the first aspect may also include: in the case of an abnormality in the first path, according to the correlation information and / or the abnormal node information, switching from communicating with the target node through the first path to communicating with the target node through the third path. Among them, the correlation information can be used to indicate the correlation of one or more fourth paths with the first path respectively, the path between the source node and the target node can include the first path and one or more fourth paths, and the abnormal node information can be used to indicate the intermediate node where the abnormality occurs. The third path is the path with the lowest correlation with the first path in one or more fourth paths, and / or the path in one or more fourth paths that does not pass through the intermediate node where the abnormality occurs. In this way, the reliability of multiple paths between the source node and the target node can be improved. In addition, the switching speed of the business flow can be improved, the impact of network failures on the business can be reduced, and the reliability of the system can be improved.
[0017] In a second aspect, a path perception method is provided. The path perception method is applied to an intermediate node in a communication network, the communication network including 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 a first path passes through a first node, and sending a third request message.
[0018] The first request message includes an identifier of the first node, an identifier of the first data flow, and first reservation information. The first data flow is a data flow between a source node and a target node. The first data flow is transmitted on a first path. The first request message is used to request whether the first path passes through the first node. The first node is any one of the N intermediate nodes. The third request message includes an identifier of the first data flow, an identifier of the first node, and first indication 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. The first reservation 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 first node is any one of the N intermediate nodes.
[0019] In addition, the technical effects of the path perception method described in the second aspect can refer to the technical effects of the path perception method described in any possible implementation method in the first aspect, and will not be repeated here.
[0020] In a third aspect, a path perception method is provided. The path perception method is applied to a target node in a communication network, the communication network including 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 the source node according to an identifier of the first data flow.
[0021] The third request message includes an identifier of the first data flow, an 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 the first path does not pass through the first node. The first data flow is a data flow between a source node and a 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, and the first indication information is used to indicate that the first path passes through the first node, or the first path does not pass through the first node.
[0022] In addition, the technical effects of the path perception method described in the third aspect can refer to the technical effects of the path perception method described in any possible implementation method in the first aspect, and will not be repeated here.
[0023] In a fourth aspect, a path sensing device is provided. The path sensing device is applied to a communication network including a path sensing device, N intermediate nodes, and a target node, where N is an integer greater than 0. The path sensing device includes: a transceiver module and a processing module.
[0024] The transceiver module is used to send a first request message to the target node. The first request message includes an identifier of the first node, an identifier of the first data stream, and first reservation information. The first data stream is a data stream between the path perception device and the target node. The first data stream 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 node is any one of the N intermediate nodes. The first reservation information is used to record the result of whether the first path passes through the first node.
[0025] The transceiver module is further used 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 reservation information, and the first indication information is used to indicate that the first path passes through the first node or the first path does not pass through the first node.
[0026] The processing module is configured to obtain first information according to the first response message, wherein the first information includes whether the first path passes through the first node or whether the first path does not pass through the first node.
[0027] In a possible design, the first information may also include an identifier of the first data stream and / or a delay of the first path.
[0028] In a possible design, the processing module is further used 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, the second information is obtained after iteratively updating the first information according to the first response messages corresponding to the N intermediate nodes, and the first path may include the connection relationship of Q intermediate nodes, where Q is an integer greater than 0 and less than or equal to N.
[0029] In a possible design, the processing module is also used to determine a first correlation value. The first correlation value indicates the correlation between the first request message and the second request message, the second request message includes an identifier of the second data flow, an identifier of the first node, and the second reservation information, the second data flow is a data flow between a source node and a target node, the second data flow is transmitted on a second path, the second request message is a sent message, the second request message is used to request to determine whether the second path passes through the first node, and the second reservation information is used to record the result of whether the second path passes through the first node.
[0030] In a possible design, when the first correlation value is less than or equal to the correlation threshold, the transceiver module is further used to send a first request message to the target node.
[0031] In a possible design, when the first correlation value is greater than the correlation threshold, the processing module is further used to generate mapping information, wherein the mapping information may include a mapping relationship between the identifier of the second data stream and the identifier of the first data stream.
[0032] In a possible design, when an abnormality occurs in the first path, the processing module is also used to switch from communicating with the target node through the first path to communicating with the target node through a third path according to the correlation information and / or the abnormal node information. The correlation information can be used to indicate the correlation of one or more fourth paths with the first path respectively, the path between the path perception device and the target node can include the first path and one or more fourth paths, and the abnormal node information can be used to indicate the intermediate node where the abnormality occurs. The third path is the path with the lowest correlation with the first path among the one or more fourth paths, and / or the path in the one or more fourth paths that does not pass through the intermediate node where the abnormality occurs.
[0033] It should be noted that the transceiver module described in the fourth aspect may include a receiving module and a sending module. The receiving module is used to receive data and / or signaling from the first node or the target node; the sending module is used to send data and / or signaling to the first node or the target node. This application does not specifically limit the specific implementation of the transceiver module.
[0034] Optionally, the path perception device described in the fourth aspect may further include a storage module, wherein the storage module stores a program or instruction. When the processing module executes the program or instruction, the path perception device described in the fourth aspect may execute the method described in the first aspect.
[0035] It should be noted that the path perception device described in the fourth aspect can be a source node, such as a server, or a chip (system) or other parts or components that can be set in the source node, and this application does not limit this.
[0036] In addition, the technical effects of the path perception device described in the fourth aspect can refer to the technical effects of the path perception method described in any possible implementation manner in the first aspect, and will not be repeated here.
[0037] In a fifth aspect, a path sensing device is provided. The path sensing 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.
[0038] The transceiver module is used to receive a first request message. The first request message includes an identifier of a first node, an identifier of a first data flow, and first reservation information. The first data flow is a data flow between a source node and a target node. The first data flow is transmitted on a first path. The first request message is used to request whether the first path passes through the first node. The first reservation information is used to record the result of whether the first path passes through the first node. The first node is any one of the N intermediate nodes.
[0039] The processing module is used to determine whether the first path passes through the first node.
[0040] The transceiver module is further used to send a third request message. The third request 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 reservation information, and the first indication information is used to indicate that the first path passes through the first node or the first path does not pass through the first node.
[0041] It should be noted that 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 a source node, a target node, or other intermediate nodes; the sending module is used to send data and / or signaling to a source node, a target node, or other intermediate nodes. This application does not specifically limit the specific implementation of the transceiver module.
[0042] Optionally, the path perception device described in the fifth aspect may further include a storage module, wherein the storage module stores a program or instruction. When the processing module executes the program or instruction, the path perception device described in the fifth aspect may execute the method described in the second aspect.
[0043] It should be noted that the path perception device described in the fifth aspect can be an intermediate node, such as a switch, or a chip (system) or other parts or components that can be set in the intermediate node, and this application does not limit this.
[0044] In addition, the technical effects of the path perception device described in the fifth aspect can refer to the technical effects of the path perception method described in any possible implementation manner in the second aspect, and will not be repeated here.
[0045] In a sixth aspect, 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.
[0046] The receiving module is used to receive a third request message. The third request message includes an identifier of the first data flow, an 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 the first path does not pass through the first node. The first data flow is a data flow between a source node and a path perception device, the first data flow is transmitted on a first path, and the first node is any one of the N intermediate nodes.
[0047] The sending module is used 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 the first path does not pass through the first node.
[0048] It should be noted that the receiving module and the sending module can be provided separately or integrated into one module, namely, the sending and receiving module. The present application does not specifically limit the specific implementation of the receiving module and the sending module.
[0049] Optionally, the path perception device described in the sixth aspect may further include a processing module and a storage module, wherein the storage module stores a program or instruction. When the processing module executes the program or instruction, the path perception device described in the sixth aspect may execute the method described in the third aspect.
[0050] It should be noted that the path perception device described in the sixth aspect can be a target node, such as a server, or a chip (system) or other parts or components that can be set in the target node, and this application does not limit this.
[0051] In addition, the technical effects of the path perception device described in the sixth aspect can refer to the technical effects of the path perception method described in any possible implementation manner in the third aspect, and will not be repeated here.
[0052] In a seventh aspect, a path sensing device is provided, wherein the path sensing device comprises: a processor coupled to a memory, and the memory is used to store a computer program.
[0053] The processor is used to execute the computer program stored in the memory so that the path perception method as described in any possible implementation manner of the first aspect to the third aspect is executed.
[0054] In a possible design, the path perception device described in the seventh aspect may further include a transceiver. The transceiver may be a transceiver circuit or an input / output port. The transceiver may be used for the path perception device to communicate with other devices.
[0055] It should be noted that the input port can be used to implement the receiving functions involved in the first to third aspects, and the output port can be used to implement the sending functions involved in the first to third aspects.
[0056] In the present application, the path perception 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 arranged inside the source node, the intermediate node or the target node.
[0057] In addition, the technical effect of the path perception device described in the seventh aspect can refer to the technical effect of the path perception method described in any implementation method of the first aspect to the third aspect, and will not be repeated here.
[0058] In an eighth aspect, a path perception system is provided, which comprises the path perception device as described in the fourth aspect, the path perception device as described in the fifth aspect, and the path perception device as described in the sixth aspect.
[0059] Alternatively, the path perception system includes a path perception device as described in the fourth aspect for implementing the method as described in the first aspect, a path perception device as described in the fifth aspect for implementing the method as described in the second aspect, and a path perception device as described in the sixth aspect for implementing the method as described in the third aspect.
[0060] Exemplarily, the path awareness system may include a source node, N intermediate nodes and a target node, where N is an integer greater than 0.
[0061] In the ninth aspect, a chip system is provided, which includes a logic circuit and an input / output port. The logic circuit is used to implement the processing functions involved in the first to third aspects, and the input / output port is used to implement the transceiver functions involved in the first to third aspects. Specifically, the input port can be used to implement the receiving function involved in the first to third aspects, and the output port can be used to implement the sending function involved in the first to third aspects.
[0062] In one possible design, the chip system also includes a memory, which is used to store program instructions and data for implementing the functions involved in the first to third aspects.
[0063] The chip system may be composed of chips, or may include chips and other discrete devices.
[0064] In a tenth aspect, a computer-readable storage medium is provided, which stores a computer program or instruction; when the computer program or instruction is run on a computer, the path perception method described in any possible implementation method of the first to third aspects is executed.
[0065] In an eleventh aspect, a computer program product is provided, comprising a computer program or instructions, which, when executed on a computer, enables the path perception method described in any possible implementation of the first to third aspects to be executed. BRIEF DESCRIPTION OF THE DRAWINGS
[0066] Figure 1a-Figure 1c Schematic diagram of some data center network architectures provided in embodiments of the present application;
[0067] Figure 2 A topological diagram provided for an embodiment of the present application;
[0068] Figure 3 A schematic diagram of the structure of a message provided for this application;
[0069] Figure 4 A schematic diagram of a flow chart of a path perception method provided in an embodiment of the present application;
[0070] Figure 5 A schematic diagram of a flow chart of another path sensing method provided in an embodiment of the present application;
[0071] Figure 6 A schematic diagram of path switching provided in an embodiment of the present application;
[0072] Figure 7 Another path switching schematic diagram provided in an embodiment of the present application;
[0073] Figure 8A schematic diagram of the structure of a path sensing device provided in an embodiment of the present application;
[0074] Fig. 9 A schematic diagram of the structure of another path sensing device provided in an embodiment of the present application;
[0075] Fig.10 A schematic diagram of the structure of another path sensing device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0076] The technical solution in this application will be described below in conjunction with the accompanying drawings.
[0077] The technical solutions of the embodiments of the present application can be applied to various communication networks, such as data center (DC) networks. Data center networks can be used in scenarios such as high-performance computing, high-performance distributed storage, big data, and artificial intelligence.
[0078] The present application will present various aspects, embodiments or features around a system that may include multiple devices, components, modules, etc. It should be understood and appreciated that each system may include additional devices, components, modules, etc., and / or may not include all of the devices, components, modules, etc. discussed in conjunction with the figures. In addition, combinations of these schemes may also be used.
[0079] In addition, in the embodiments of the present application, words such as "exemplarily" and "for example" are used to indicate examples, illustrations or explanations. Any embodiment or design described as "exemplary" in the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of the word "exemplary" is intended to present concepts in a concrete way.
[0080] The network architecture and business scenarios described in the embodiments of the present application are intended to more clearly illustrate the technical solutions of the embodiments of the present application, and do not constitute a limitation on the technical solutions provided in the embodiments of the present application. A person of ordinary skill in the art can appreciate that with the evolution of the network architecture and the emergence of new business scenarios, the technical solutions provided in the embodiments of the present application are also applicable to similar technical problems.
[0081] To facilitate understanding of the embodiments of the present application, first Figure 1a to Figure 1c The data center network shown in FIG. 1 is used as an example to describe in detail the data center network applicable to the embodiment of the present application. For example, Figure 1a to Figure 1c Schematic diagram of the architecture of several data center networks to which the path perception method provided in the embodiments of the present application is applicable.
[0082] Figure 1aThe schematic diagram of the architecture of a data center network for a large-scale Clos network architecture. A data center network may include: servers, switches, storage devices, computing networks, and storage networks, etc. Among them, switches can be divided into top of rack switches (ToR), leaf switches, and spine switches, etc. The top of rack switches are switches that are directly connected to servers. The point of delivery (POD) is the basic deployment unit of a data center network. In order to facilitate the resource pooling operation of the data center network, the resources of the entire data center network can be divided into one or more physical partitions. Each physical partition is a POD, and a physical device can only belong to one POD. One or more PODs and leaf switches constitute a distribution point set. One or more distribution point sets constitute a data center network.
[0083] Figure 1b This is a schematic diagram of the architecture of a data center network with a mesh topology. All nodes (such as switches or network devices) in the data center network are interconnected, and each switch is connected to at least two other switches, forming an integrated network between all switches. Routers that support mesh functions can generate a mesh network after networking, and different access points can be mixed in star, tree, series and bus modes.
[0084] Figure 1c The following is a schematic diagram of the architecture of a data center network with dragonfly topology. Dragonfly topology is a two-level hierarchical network. Any topology can be used within or between groups in the dragonfly topology. It has fewer global hops, lower latency, and is easier to expand.
[0085] It should be noted that the path perception method provided in the embodiment of the present application can be applied to Figure 1a to Figure 1c The data center network shown in the figure can also be applied to data center networks with other topologies. Figure 1a to Figure 1c These are just a few architectural diagrams of data center networks provided for this application.
[0086] It should be understood that Figure 1a to Figure 1c This is a simplified schematic diagram for ease of understanding only. The data center network may also include other network devices and / or other devices. Figure 1a to Figure 1c Not drawn in.
[0087] In order to make the embodiments of the present application clearer, some contents and concepts related to the embodiments of the present application are uniformly introduced below.
[0088] First, the path:
[0089] The typical feature of data center networks is multipathing, which can mainly ensure network reliability and traffic load balancing. Figure 2 As shown, there are two paths between server 1 and server 4, such as path 1 and path 2, and the traffic between the two servers can be shared on different paths. Exemplarily, path 1 between server 1 and server 4 includes switch 21, switch 11, and switch 24 in sequence, and path 2 between server 1 and server 4 includes switch 21, switch 12, and switch 24 in sequence.
[0090] Second, the HASH key:
[0091] The hash key can be used to select a path. After a node receives a 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.
[0092] Figure 3 A schematic diagram of the structure of a message provided for this application.
[0093] like Figure 3 As shown, the message may include equal cost multipath routing (ECMP) hash fields and a payload field.
[0094] Combination Figure 3 , the equal-cost multi-path hash field can include source IP, destination IP, layer 4 protocol, source port, and destination port. The equal-cost multi-path hash field can include source (media access control, MAC) and destination MAC. The payload refers to the data actually transmitted by the message.
[0095] It should be noted that Figure 3 This is only an example provided for this application and does not limit the format of the message in this application.
[0096] The following will be combined Figure 4-Figure 7 The path perception method provided in the embodiment of the present application is specifically described. The communication network includes a source node, N intermediate nodes, and a target node, where N is an integer greater than 0. The source node and the target node can both be servers. Figure 2, the source node can be any one of the servers 1 to 4, and the target node can be any one of the servers 1 to 4. For example, in a storage scenario, the source node and the target node can be storage service nodes, including storage clients, storage controllers, and storage arrays. Intermediate nodes can be switches, routers, etc. Figure 2 The N intermediate nodes may include one or more of the following: switches 21 to 24 , and switches 11 to 12 .
[0097] For example, Figure 4 A flowchart of a path perception method provided in an embodiment of the present application.
[0098] like Figure 4 As shown, the path perception method includes the following steps:
[0099] S401, a source node sends a first request message to a target node. Correspondingly, an intermediate node receives the first request message.
[0100] Exemplarily, the first request message may include an identifier of the first node, an identifier of the first data flow, and first reservation information.
[0101] For example, the first node is any one of the N intermediate nodes. Figure 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.
[0102] Optionally, the identifier of the first node may be encapsulated in the payload of the first request message. For example, the structure of the first request message may be as follows: Figure 3 shown.
[0103] For example, the first data flow is a data flow between a source node and a target node. Figure 2 , the first data flow may be a data flow between server 1 and server 4, and the target node may be server 4.
[0104] In some embodiments, the identifier of the first data flow may include: an Internet Protocol (IP) address of a source node, a first port of a target node, and an IP address of the target node.
[0105] Optionally, the identifier of the first data flow may further include one or more of the following: a port of a source node, a protocol field, a media access control (MAC) address of the source node, and a MAC address of a target node.
[0106] Exemplarily, the identifier of the first data stream may be a tuple, a tuple, a quadruple, a quintuple, a septuple, or the like.
[0107] Optionally, the first data stream is transmitted on a first path. Figure 2 , the first path can be path 1 or path 2.
[0108] Exemplarily, the first request message may be used to request whether the first path passes through the first node.
[0109] Exemplarily, the first reserved information may be used to record a result of whether the first path passes through the first node.
[0110] For example, 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".
[0111] For example, "1" is used to indicate that the first path passes through the first node, and "0" is used to indicate that the first path does not pass through the first node. The initial value of the first reserved information is "0", and the first path does not pass through the first node by default.
[0112] Taking the initial value of the first reserved information as "0" as an example, when the intermediate node receives the first request message and determines that the first path passes through the first node, the intermediate node may set the value of the first reserved information to "1" to indicate that the first path passes through the first node. Otherwise, the intermediate node may not operate on the first reserved information, and the value of the first reserved information is "0" to indicate that the first path does not pass through the first node.
[0113] It should be noted that "1" can also be used to indicate that the first path does not pass through the first node, and "0" can be used to indicate that the first path passes through the first node, and this application does not limit this. This application uses "1" to indicate that the first path passes through the first node, and "0" to indicate that the first path does not pass through the first node as an example for explanation.
[0114] Combination Figure 2, taking the first node as switch 21 and the first path as path 1 as an example, the first request message can be used to request to determine whether path 1 passes through switch 21, and set a mark at a specific position of the first request message (such as the position of the first reserved information) to indicate that the first path passes through the first node, or the first path does not pass through the first node. For example, switch 21 receives the first request message and determines that path 1 passes through switch 21, then sets the "0" of the first reserved information to "1"; switch 21 continues to forward the first request message to switch 11, and switch 11 can determine whether path 1 passes through switch 21, or, when switch 11 finds that the first reserved information is set to "1", it no longer makes a judgment; switch 11 continues to forward the first request message to switch 24, and the actions of switch 24 refer to switch 11, which will not be repeated here.
[0115] In this way, after receiving the first message, the intermediate node does not need to modify the structure of the message or increase the length of the message, and the message can carry the information of whether the first path passes through the first node, and the solution is simple.
[0116] Optionally, the first request message may be a detection message, a heartbeat message, or the like.
[0117] S402: The intermediate node determines whether the first path passes through the first node.
[0118] Optionally, the intermediate node may determine whether the first path passes through the first node by determining whether its own identifier matches the identifier of the first node in the first request message.
[0119] For example, if the identifier of the node 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.
[0120] Here, "match" may mean the same, or there is a corresponding relationship, or there is a mapping relationship, etc. For example, the identifier of switch 11 may be switch 11, or switch-11, etc. Switch 11 is the same as switch 11, and there is a corresponding relationship or mapping relationship between switch 11 and switch-11.
[0121] Exemplarily, the intermediate node identifies the first request message, and detects whether its own identifier matches the identifier of the first node in the first request message, and if so, marks it as passed.
[0122] For example, assuming that the first reserved information is "0", indicating that the first path does not pass through the first node, if a match is determined, "0" is set to "1", indicating that the first path passes through the first node; if a mismatch is determined, no operation is performed on "0".
[0123] S403: The intermediate node sends a third request message. Correspondingly, the target node receives the third request message.
[0124] Exemplarily, the third request message may include an identifier of the first data flow, an identifier of the first node, and first indication information.
[0125] Optionally, the first indication information is obtained after the intermediate node records the result of whether the first path passes through the first node after the first reservation information is recorded. The first indication information can be used to indicate that the first path passes through the first node, or the first path does not pass through the first node.
[0126] Exemplarily, when the intermediate node determines that the first path passes through the first node, the result is recorded in the first reserved information, for example, the initial value of the first reserved information is "0", and the intermediate node sets the value of the first reserved information to "1" to obtain the first indication information, indicating that the first path passes through the first node. When the intermediate node determines that the first path does not pass through the first node, for example, the initial value of the first reserved information is "0", the intermediate node may not operate on the first reserved information, and obtain the first indication information, indicating that the first path does not pass through the first node.
[0127] It should be noted that the present application does not limit the name of the first reserved information and the name of the first indication information, and can enable the source node to reserve a specific bit position in the first request message, and the specific bit position can be used to indicate whether the first path passes through the first node.
[0128] Optionally, 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 (DSCP) field of the third request message.
[0129] In some embodiments, the intermediate node may continue to forward the third request message, which may be forwarded by one or more other intermediate nodes, and the final target node receives the third request message.
[0130] Combination Figure 2, assuming that the first path is path 1, path 1 includes: switch 21-switch 11-switch 24, and 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 stream 1 and "0", data stream 1 corresponds to path 1, and requests to confirm whether path 1 passes through switch 11. Switch 21 receives the first request message, determines that its own identifier is different from that of switch 11, does not operate "0", and continues to forward the first request message to switch 11. Switch 11 determines that its own identifier is the same as that of switch 11, then modifies "0" to "1", indicating that path 1 passes through switch 11, and switch 11 forwards the message including switch 11, data stream 1 and "1" to switch 24. Switch 24 determines that its own identifier is different from that of switch 11, or, after finding "1", no longer determines whether its own identifier is the same as that of switch 11, and continues to forward the message including switch 11, data stream 1 and "1" to server 4.
[0131] S404: The target node sends a first response message to the source node according to the identifier of the first data flow. Correspondingly, the source node receives the first response message from the target node.
[0132] Exemplarily, the first response message includes an identifier of the first data flow, an identifier of the first node, and first indication information.
[0133] Optionally, the target node may encapsulate the identifier of the first data flow, the identifier of the first node and / or the first indication information in the payload of the first response message. For example, the structure of the first response message may be as follows: Figure 3 shown.
[0134] It should be noted that in this application, the structure of the message is not limited to Figure 3 In the structure shown, the identifier of the first data stream, the identifier of the first node and / or the first reservation information can be encapsulated in other fields (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 can be encapsulated in other fields.
[0135] S405: The source node obtains first information according to the first response message.
[0136] Exemplarily, 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.
[0137] Optionally, the first information may further include an identifier of the first data flow and / or a delay of the first path.
[0138] That is, 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 delay of the first path.
[0139] Exemplarily, 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.
[0140] In some embodiments, the source node traverses N intermediate nodes, executes S401, 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 the above S404, so that the source node obtains the first information corresponding to the N intermediate nodes respectively, and the source node iteratively updates the first information to obtain the second information.
[0141] For example, in combination Figure 2 , taking the first path as path 1 and the identifier of the first data flow as data flow 1 as an example, the N intermediate nodes include switches 21 to 24, and switches 11 to 12. The source node sends a first request message corresponding to switch 21, and the first request message corresponding to switch 21 includes switch 21, data flow 1, and first reservation information. Switch 21 receives the first request message, determines that it passes through path 1, and sends a third request message, and the third request message includes data flow 1, switch 21, and first indication information (indicating that path 1 passes through switch 21). After the third request message is forwarded by switches 11 and 24 in turn, the target node receives the third request message and sends the content of the third request message to the source node. The information (which can be called first information) of the first path (path 1) obtained by the source node includes: path 1 passes through switch 21, and the delay 21 of data flow 1 and / or path 1 can also be obtained.
[0142] The source node sends a first request message corresponding to switch 22, and the first request message corresponding to switch 22 includes switch 22, data flow 1, and first reservation information. The first request message can be forwarded to the target node through switch 21, switch 11, and switch 24 in sequence. Switch 21, switch 11, and switch 24 all determine that their own identifiers are different from switch 22, and then determine that path 1 does not pass through switch 22. The third request message received by the target node includes data flow 1, switch 22, and first indication information (indicating that path 1 does not pass through switch 22), and the content of the third request message is sent to the source node. The information of the first path obtained by the source node (which can be called the first information) includes: path 1 does not pass through switch 22, and the delay 22 of data flow 1 and / or path 1 can also be obtained.
[0143] The source node updates the information of the first path, obtains the path information of path 1 passing through switch 21 and path 1 not passing through switch 22, and can also obtain data flow 1, delay 21 of path 1, and delay 22 of path 1.
[0144] Similarly, traversing from switch 23 to switch 24, and from switch 11 to switch 12, the source node iteratively updates the first information, and the final information of the first path obtained (which may be referred to as 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 does not pass through switch 12, and may also include data flow 1, delay 21 of path 1, delay 22 of path 1, delay 23 of path 1, delay 24 of path 1, delay 11 of path 1, and delay 12 of path 1.
[0145] In a possible design, the path perception method provided in the present application may also include: S406, the source node determines the first path according to the topological connection relationship and the second information.
[0146] Optionally, the second information may be obtained by iteratively updating the first information according to the first response messages respectively corresponding to the N intermediate nodes. Figure 2 The explanation of the second information will not be repeated here.
[0147] Optionally, the topological connection relationship may include a topological relationship between a source node, N intermediate nodes, and a target node.
[0148] Combination Figure 2 The topological connection relationship may include the topological relationship between server 1 to server 4, switch 21 to switch 24, and switch 11 to switch 12.
[0149] Optionally, 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.
[0150] Combination Figure 2 , when the first path is path 1, 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 does not pass through switch 12. The source node determines that path 1 includes switch 21, switch 11, and switch 24 in sequence according to the topological connection relationship and the second information, and path 1 is a link composed of switch 21, switch 11, and switch 24 in sequence.
[0151] Optionally, the source node may also obtain the delay information of path 1. For example, the average of delay 21 of path 1, delay 22 of path 1, delay 23 of path 1, delay 24 of path 1, delay 11 of path 1, and delay 12 of path 1 is taken as the delay of path 1.
[0152] Optionally, whether the first path is abnormal can be identified based on the delay of the first path. For example, if the delay value of the first path is greater than a delay threshold, the first path is abnormal, otherwise, the first path is normal.
[0153] It should be noted that for the first path Figure 2 In the case of path 2, the specific implementation method for the source node to obtain the information of path 2 can refer to the specific implementation method for obtaining the information of path 1 mentioned above, which will not be repeated here.
[0154] based on Figure 4 In the path perception method shown, the source node sends a first request message including the identifier of the first node, the identifier of the first data stream and the first reservation information to the target node, the first data stream 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, and a first response message including the identifier of the first data stream, the identifier of the first node and the first indication information is received, and information that the first path passes through the first node or the first path does not pass through the first node is obtained according to the first response message. The scheme is simple, does not require the structure of the message to be modified, does not increase the length of the message, can realize path perception through a simple scheme, and has low requirements on the device.
[0155] In addition, the path can be sensed through data flow. In the process of sensing the path, if there is an abnormality (such as delay exceeding the threshold, no response, or the intermediate node abnormally notifying the source node, etc.), the path can be accurately located (for example, the nodes and links involved in the path can be identified in combination with the topological connection relationship), thereby reducing the troubleshooting cycle. In addition, the solution is simple and does not rely on a large amount of measurement data, which can reduce overhead.
[0156] For example, Figure 5 A flowchart of another path perception method provided in an embodiment of the present application. Figure 5 The path-aware approach shown can be used with Figure 4 The path perception methods shown can be used in combination or individually.
[0157] like Figure 5 As shown, the path perception method includes the following steps:
[0158] S501: A source node determines a first correlation value.
[0159] Optionally, the first correlation value may represent a correlation between the first request message and the second request message.
[0160] Exemplarily, the second request message may include an identifier of the second data flow, an identifier of the first node and the second reservation information. The second data flow may be a data flow between a source node and a target node. The second data flow is transmitted on a second path. The second request message may be a sent message. The second request message may be used to request whether the second path passes through the first node.
[0161] Exemplarily, the second reserved information may be used to record whether the second path passes through the first node. The specific implementation of the second reserved information may refer to the specific implementation of the first reserved information in S401 above, which will not be described in detail here.
[0162] Exemplarily, the first request message may be a message to be sent. The specific implementation of the first request message may refer to the above S401 and will not be described in detail here.
[0163] Combination Figure 2 and Table 1, assuming that the second path is Figure 2 Path 2 shown, 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 can be any one of message 1, message 3 to message 5 in Table 1, and path 1, path 3 to path 5 can refer to Table 1.
[0164] As shown in Table 1, 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 2. In other words, 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.
[0165] Table 1
[0166]
[0167] S502: When the first correlation value is less than or equal to the correlation threshold, the source node sends a first request message to the target node.
[0168] Optionally, the correlation threshold may be preset.
[0169] In some embodiments, the higher the correlation between the first request message and the second request message, the larger the first correlation value, and the closer, similar, or even identical the first request message and the second request message (or the first path and the second path) are.
[0170] In conjunction with Table 1, for example, the correlation threshold is 3, assuming that the first request message is message 1, and the first correlation value 1 is less than the correlation threshold 3, the source node sends 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 executed. Similarly, when the first request message is message 4 to message 5, the source node uses a similar method to determine whether to send the corresponding message.
[0171] In this way, whether to send the message to be sent is determined by the correlation threshold. If the correlation is high, it may not be sent, but if the correlation is low, it may be sent. This can improve the coverage of detection and reduce the detection cost. Figure 5 The concept of the method shown can also be used in the scenario of path establishment. By determining whether to establish the path to be established based on the relationship between the path to be established and the existing path, if the correlation is high, the path may not be established, but if the correlation is low, the path may be established. This can improve the reliability of the path between nodes.
[0172] and Figure 4 When used in combination, Figure 4 S401, sending a first request message to a target node, may include S502, when the first correlation value is less than or equal to a correlation threshold, the source node sending the first request message to the target node.
[0173] S503: When the first correlation value is greater than the correlation threshold, the source node generates mapping information.
[0174] Optionally, the mapping information may include a mapping relationship between an identifier of the second data stream and an identifier of the first data stream.
[0175] In conjunction with Table 1, the mapping information may include a mapping relationship between message 2 and message 3 (or path 2 and path 3). The source node may no longer construct message 3 (or path 3) based on the mapping information, thereby avoiding the source node from constructing and sending the first request message again, thereby reducing the detection cost. In the scenario of path establishment, the source node may avoid establishing the path again, thereby reducing the overhead.
[0176] It should be noted that S503 may be optional. When the first correlation value is greater than the correlation threshold, the source node may not send the first request message, but may generate and record the mapping information.
[0177] Optionally, when the first correlation value is greater than the correlation threshold, the source node may not establish the path, and may not use the identifier of the data flow corresponding to the path to send a detection message, detected data, business data, application data, etc.
[0178] In some embodiments, the source node may construct a new first request message again to improve the coverage of the detection.
[0179] based on Figure 5 In the path perception method shown, the source node determines the correlation between the first request message and the second request message, the second request message is a message that has been sent, and when the first correlation value is less than or equal to the correlation threshold, the first request message is sent to the target node, otherwise, the first request message is not sent. In this way, the coverage of the detection can be improved and the overhead of detecting the source node and the network overhead can be reduced.
[0180] In a possible design, the method provided by the embodiment of the present application may include: when an abnormality occurs in the first path, the source node switches from communicating with the target node through the first path to communicating with the target node through a third path according to the correlation information and / or abnormal node information. Figure 4 Used in conjunction with Figure 5 Used in conjunction with Figure 4 and Figure 5 Can be used in combination or individually.
[0181] Optionally, the correlation information may be used to indicate the correlation between one or more fourth paths and the first path respectively.
[0182] Optionally, the abnormal node information may be used to indicate an intermediate node where an abnormality occurs. For example, assume that path 1 includes: switch 1 - switch 2 - switch 3, wherein switch 2 is abnormal.
[0183] Exemplarily, the path between the source node and the target node may include a first path and one or more fourth paths. For example, the path between the source node and the target node includes path 1, path 2, path 3, and path 4.
[0184] In some embodiments, the third path is a path with the lowest correlation with the first path among the one or more fourth paths, and / or the third path is a path among the one or more fourth paths that does not pass through an intermediate node where an abnormality occurs.
[0185] For example, assuming that the first path is path 1, the source node and the target node are currently communicating through path 1, and the one or more fourth paths include path 2, path 3, and path 4. The correlation information may include the correlation between path 2 and path 1 (for example, a value of 2), the correlation between path 3 and path 1 (for example, 1), and the correlation between path 4 and path 1 (for example, 2). If the correlation between path 3 and path 1 is the lowest, then the third path may be path 3.
[0186] Assume that switch 2 is abnormal, 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, then the third path can be path 3 or path 4.
[0187] If the path with the lowest correlation with the first path and the path that does not pass through the intermediate node where the abnormality occurs is taken as the third path, the third path may be path 3.
[0188] Optionally, according to the delays corresponding to paths 2 to 4 respectively, a path with the smallest delay value may be selected as the third path.
[0189] In this way, when an abnormality occurs on a path, communication can be switched to a path with a lower correlation, or the faulty node can be bypassed and communication can be switched to a path that does not include the faulty node, which can improve the reliability of multiple paths between the source node and the target node. In addition, the switching speed of the service flow can be increased, the impact of network failures on the service can be reduced, and the reliability of the system can be improved.
[0190] Figure 6 and Figure 7 A schematic diagram of path switching provided in an embodiment of the present application. Assume that paths 1 to 4 are included between the source node and the target node, path 1 is abnormal, paths 1, 2 and 3 pass through the faulty node, and path 4 does not pass through the faulty node.
[0191] Figure 6 and Figure 7 FIG. 1 is a schematic diagram of path switching in a non-volatile memory expressover fabric (NoF) scenario based on network connection. For example, in a NoF scenario, it takes 1 second to switch from one path to another. Figure 6 As shown, the source node switches paths in sequence. After sensing the abnormality of path 1, it tries to switch to path 2; sensing the abnormality of path 2, it tries to switch to path 3; sensing the abnormality of path 3, it tries to switch to path 4. Path 4 has no abnormality, and the switching is successful, which takes a total of 3S.
[0192] like Figure 7 As shown, the source node switches the path according to the correlation information and / or abnormal node information. After sensing the abnormality of path 1, it determines that path 4 does not pass through the faulty node and directly switches to path 4, which takes a total of 1 second, which is shorter and improves the switching speed of the business flow.
[0193] In this application, unless otherwise specified, the same or similar parts between the various embodiments can refer to each other. In the various embodiments in this application, and the various implementation methods / implementation methods / implementation methods in each embodiment, if there is no special explanation and logical conflict, the terms and / or descriptions between different embodiments and the various implementation methods / implementation methods / implementation methods in each embodiment are consistent and can be referenced to each other. The technical features in different embodiments and the various implementation methods / implementation methods / implementation methods in each embodiment can be combined to form new embodiments, implementation methods, implementation methods, or implementation methods according to their inherent logical relationships. The implementation methods of this application described below do not constitute a limitation on the scope of protection of this application.
[0194] Combination of the above Figure 2-Figure 7 The path sensing method provided by the embodiment of the present application is described in detail. Figure 8-Figure 10 The path sensing device provided in the embodiment of the present application is described in detail.
[0195] Figure 8 Schematic diagram of a path sensing device that can be used to implement the embodiments of the present application. The path sensing device 800 can be a source node, any one of the N intermediate nodes, or a target node, or a chip or other component with corresponding functions applied to the source node, intermediate node, or target node. Figure 8 As shown, the path sensing device 800 may include a processor 801. Optionally, the path sensing device 800 may also 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 being connected via a communication bus, and the processor 801 may also be used alone.
[0196] Combine the following Figure 8 The components of the path sensing device 800 are described in detail:
[0197] The processor 801 is the control center of the path sensing device 800, and can be a processor or a general term for multiple processing elements. For example, the processor 801 is one or more central processing units (CPUs), or can be an application specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of the present application, such as one or more microprocessors (digital signal processors, DSPs), or one or more field programmable gate arrays (FPGAs).
[0198] The processor 801 may execute various functions of the path perception device 800 by running or executing software programs stored in the memory 802 and calling data stored in the memory 802 .
[0199] In a specific implementation, as an embodiment, the processor 801 may include one or more CPUs, such as Figure 8 CPU0 and CPU1 are shown in the figure.
[0200] In a specific implementation, as an embodiment, the path perception device 800 may also include multiple processors, such as Figure 8 801 and processor 804 are shown in FIG. Each of these processors may be a single-core processor (single-CPU) or a multi-core processor (multi-CPU). The processor here may refer to one or more communication devices, circuits, and / or processing cores for processing data (e.g., computer program instructions).
[0201] Optionally, the memory 802 may be a read-only memory (ROM) or other types of static storage communication devices that can store static information and instructions, a random access memory (RAM) or other types of dynamic storage communication devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical disc, laser disc, optical disc, digital versatile disc, Blu-ray disc, etc.), a magnetic disk storage medium or other magnetic storage communication device, or any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory 802 may be integrated with the processor 801, or may exist independently, and may be accessed through the input / output port ( Figure 8 (not shown) is coupled to the processor 801, which is not specifically limited in the embodiment of the present application.
[0202] Exemplarily, the input port may be used to implement the receiving function performed by the source node, intermediate node, or target node in any of the above method embodiments, and the output port may be used to implement the sending function performed by the source node, intermediate node, or target node in any of the above method embodiments.
[0203] The memory 802 may be used to store the software program for executing the solution of the present application, and the execution is controlled by the processor 801. The above specific implementation may refer to the following method embodiment, which will not be described in detail here.
[0204] Optionally, the transceiver 803 is used for communication with other path sensing devices. For example, when the path sensing device 800 is a source node, the transceiver 803 can be used to communicate with N intermediate nodes and / or a destination node. For another example, when the path sensing device 800 is an intermediate node, the transceiver 803 can be used to communicate with a source node, a destination node, and / or other intermediate nodes. In addition, the transceiver 803 may include a receiver and a transmitter ( Figure 8 The receiver is used to implement the receiving function, and the transmitter is used to implement the sending function. The transceiver 803 can be integrated with the processor 801, or can exist independently and communicate with the path sensing device 800 through the input / output port ( Figure 8 (not shown) is coupled to the processor 801, which is not specifically limited in the embodiment of the present application.
[0205] It should be noted that Figure 8 The structure of the path sensing device 800 shown in the figure does not constitute a limitation on the path sensing device. The actual path sensing device may include more or fewer components than those shown in the figure, or combine certain components, or arrange the components differently.
[0206] Among them, the above Figure 2-Figure 7 The action of the source node can be determined by Figure 8 The processor 801 in the path perception device 800 shown calls the application code stored in the memory 802 to instruct the source node to execute.
[0207] Above Figure 2-Figure 7 The actions of the intermediate nodes can be determined by Figure 8 The processor 801 in the path perception device 800 shown calls the application code stored in the memory 802 to instruct the intermediate node to execute, and this embodiment does not impose any limitation on this.
[0208] Above Figure 2-Figure 7 The action of the target node in can be determined by Figure 8 The processor 801 in the path perception device 800 shown calls the application code stored in the memory 802 to instruct the target node to execute, and this embodiment does not impose any limitation on this.
[0209] When the path perception device is a source node, the path perception device 800 can execute any one or more possible design methods involved in the source node in the above method embodiment; when the path perception device is an intermediate node, the path perception device 800 can execute any one or more possible design methods involved in the intermediate node in the above method embodiment; when the path perception device is a target node, the path perception device 800 can execute any one or more possible design methods involved in the target node in the above method embodiment.
[0210] It should be noted that all relevant contents of each step involved in the above method embodiment can be referred to the functional description of the corresponding functional module and will not be repeated here.
[0211] Fig. 9 This is a schematic diagram of the structure of another path sensing device provided in an embodiment of the present application. For ease of explanation, Fig. 9 Only the main components of the path sensing device are shown.
[0212] The path sensing device 900 includes a transceiver module 901 and a processing module 902. The path sensing device 900 may be a source node or an intermediate node in the aforementioned method embodiment. The transceiver module 901, which may also be referred to as a transceiver unit, is used to implement the transceiver function performed by the source node or the intermediate node in any of the aforementioned method embodiments.
[0213] It should be noted that the transceiver module 901 may include a receiving module and a sending module ( Fig. 9 The receiving module is used to receive data and / or signaling from other devices; the sending module is used to send data and / or signaling to other devices. The present application does not specifically limit the specific implementation of the transceiver module. The transceiver module can be composed of a transceiver circuit, a transceiver, a transceiver or a communication interface.
[0214] The processing module 902 may be used to implement the processing function performed by the source node or the intermediate node in any of the above method embodiments. The processing module 902 may be a processor.
[0215] In this embodiment, the path sensing device 900 is presented in the form of dividing various functional modules in an integrated manner. The "module" here may refer to a specific ASIC, a circuit, a processor and a memory that executes one or more software or firmware programs, an integrated logic circuit, and / or other devices that can provide the above functions. In a simple embodiment, a person skilled in the art can imagine that the path sensing device 900 can be used Figure 8 The form of the path perception device 800 is shown.
[0216] for example, Figure 8The processor 801 in the path perception device 800 shown can execute the path perception method in the above method embodiment by calling the computer execution instructions stored in the memory 802.
[0217] Specifically, Fig. 9 The functions / implementation processes of the transceiver module 901 and the processing module 902 can be Figure 8 The processor 801 in the path perception device 800 shown calls the computer execution instructions stored in the memory 802 to implement. Or, Fig. 9 The function / implementation process of the processing module 902 in Figure 8 The processor 801 in the path perception device 800 shown calls the computer execution instructions stored in the memory 802 to implement, Fig. 9 The function / implementation process of the transceiver module 901 can be Figure 8 It is implemented by the transceiver 803 in the path perception device 800 shown in FIG.
[0218] Since the path sensing device 900 provided in this embodiment can execute the above-mentioned path sensing method, the technical effects that can be obtained can refer to the above-mentioned method embodiments, which will not be described in detail here.
[0219] Fig.10 This is a schematic diagram of the structure of another path sensing device provided in an embodiment of the present application. For ease of explanation, Fig.10 Only the main components of the path sensing device are shown.
[0220] The path sensing device 1000 includes a sending module 1001 and a receiving module 1002. The path sensing device 1000 may be a target node in the aforementioned method embodiment. The sending module 1001, which may also be referred to as a sending unit, is used to implement the sending function performed by the target node in any of the aforementioned method embodiments. The receiving module 1001, which may also be referred to as a receiving unit, is used to implement the receiving function performed by the target node in any of the aforementioned method embodiments.
[0221] It should be noted that the sending module 1001 and the receiving module 1002 can be provided separately or integrated in one module, namely, a transceiver module. The present application does not specifically limit the specific implementation of the receiving module and the sending module. The transceiver module can be composed of a transceiver circuit, a transceiver, a transceiver or a communication interface.
[0222] Optionally, the path perception device 1000 may further include a processing module 1003 and a storage module, wherein the storage module stores a program or instruction. When the processing module 1003 executes the program or instruction, the path perception device 1000 may execute the method described in any of the above method embodiments.
[0223] The processing module 1003 may be used to implement the processing function executed by the target node in any of the above method embodiments. The processing module 1003 may be a processor.
[0224] In this embodiment, the path sensing device 1000 is presented in the form of dividing various functional modules in an integrated manner. The "module" here may refer to a specific ASIC, a circuit, a processor and a memory that executes one or more software or firmware programs, an integrated logic circuit, and / or other devices that can provide the above functions. In a simple embodiment, a person skilled in the art can imagine that the path sensing device 1000 can be used Figure 8 The form of the path perception device 800 is shown.
[0225] for example, Figure 8 The processor 801 in the path perception device 800 shown can execute the path perception method in the above method embodiment by calling the computer execution instructions stored in the memory 802.
[0226] Specifically, Fig.10 The functions / implementation processes of the processing module 1003 and the storage module in the embodiment can be realized by Figure 8 It is implemented by the transceiver 803 in the path perception device 800 shown in FIG. Fig.10 The function / implementation process of the processing module 1003 in Figure 8 The processor 801 in the path perception device 800 shown calls the computer execution instructions stored in the memory 802 to implement,
[0227] Since the path sensing device 1000 provided in this embodiment can execute the above-mentioned path sensing method, the technical effects that can be obtained can refer to the above-mentioned method embodiments, which will not be described in detail here.
[0228] In one possible design, Fig. 9 The path sensing device 900 shown may be suitable for Figure 1a-1b In the path awareness system shown, the function of the source node in any of the above method embodiments is performed.
[0229] The path sensing device 900 is applied to a communication network including the path sensing device 900, N intermediate nodes, and a target node, where N is an integer greater than 0.
[0230] The transceiver module 901 is used to send a first request message to the target node. The first request message includes an identifier of the first node, an identifier of the first data stream, and first reservation information. The first data stream is a data stream between the path sensing device 900 and the target node. The first data stream 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 node is any one of the N intermediate nodes. The first reservation information is used to record the result of whether the first path passes through the first node.
[0231] The transceiver module 901 is also used 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 reservation information, and the first indication information is used to indicate that the first path passes through the first node or the first path does not pass through the first node.
[0232] The processing module 902 is configured to obtain first information according to the first response message, wherein the first information includes whether the first path passes through the first node or whether the first path does not pass through the first node.
[0233] In a possible design, the first information may also include an identifier of the first data stream and / or a delay of the first path.
[0234] In a possible design, the processing module 902 is further used 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, the second information is obtained after iteratively updating the first information according to the first response messages corresponding to the N intermediate nodes, and the first path may include the connection relationship of Q first nodes, where Q is an integer greater than 0 and less than or equal to N.
[0235] In a possible design, the processing module 902 is also used to determine a first correlation value. The first correlation value indicates the correlation between the first request message and the second request message, the second request message includes an identifier of the second data flow, an identifier of the first node, and the second reservation information, the second data flow is a data flow between the path perception 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 first node, and the second reservation information is used to record the result of whether the second path passes through the node.
[0236] In a possible design, when the first correlation value is less than or equal to the correlation threshold, the transceiver module 901 is further used to send a first request message to the target node.
[0237] In a possible design, when the first correlation value is greater than the correlation threshold, the processing module 902 is further configured to generate mapping information, wherein the mapping information may include a mapping relationship between the identifier of the second data stream and the identifier of the first data stream.
[0238] In a possible design, when an abnormality occurs in the first path, the processing module 902 is also used to switch from communicating with the target node through the first path to communicating with the target node through the third path according to the correlation information and / or the abnormal node information. The correlation information can be used to indicate the correlation of one or more fourth paths with the first path respectively, the path between the path perception device 900 and the target node can include the first path and one or more fourth paths, and the abnormal node information can be used to indicate the intermediate node where the abnormality occurs. The third path is the path with the lowest correlation with the first path among the one or more fourth paths, and / or the path in the one or more fourth paths that does not pass through the intermediate node where the abnormality occurs.
[0239] Optionally, the path perception device 900 may further include a storage module ( Fig. 9 (not shown in the figure), the storage module stores a program or instruction. When the processing module 902 executes the program or instruction, the path perception device 900 can perform the function of the source node described in any of the above method embodiments.
[0240] It should be noted that the path perception device 900 can be a source node, or a chip (system) or other parts or components that can be set at the source node, and this application does not limit this.
[0241] In addition, the technical effects of the path perception device 900 can refer to the technical effects of the path perception method described in any of the above method embodiments, which will not be repeated here.
[0242] In one possible design, Fig. 9 The path sensing device 900 shown may be suitable for Figure 1a-1b In the path perception system shown, the function of the intermediate node in the path perception method described in any of the above method embodiments is executed.
[0243] 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.
[0244] The transceiver module 901 is used to receive a first request message. The first request message includes an identifier of a first node, an identifier of a first data flow, and first reservation information. The first data flow is a data flow between a source node and a target node. The first data flow is transmitted on a first path. The first request message is used to request whether the first path passes through the first node. The first reservation information is used to record the result of whether the first path passes through the first node.
[0245] The processing module 902 is used to determine whether the first path passes through the first node.
[0246] The transceiver module 901 is further used to send a third request message. The third request 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 reservation information, and the first indication information is used to indicate that the first path passes through the first node or the first path does not pass through the first node.
[0247] It should be noted that all relevant contents of each step involved in the above method embodiment can be referred to the functional description of the corresponding functional module and will not be repeated here.
[0248] Optionally, the path perception device 900 may further include a storage module ( Fig. 9 (not shown), the storage module stores a program or instruction. When the processing module 902 executes the program or instruction, the path perception device 900 can perform the function of the intermediate node described in any of the above method embodiments.
[0249] It should be noted that the path perception device 900 may be an intermediate node, or a chip (system) or other parts or components that can be set in the intermediate node, and this application does not limit this.
[0250] In addition, the technical effect of the path perception device 900 may be the technical effect of the path perception method described in any of the above method embodiments, which will not be repeated here.
[0251] In another possible design, Fig.10 The path sensing device 1000 shown may be applicable to Figure 1a-1b In the path perception system shown, the function of the target node in the path perception method described in any of the above method embodiments is executed.
[0252] The path perception device 1000 is applied to a communication network including a source node, N intermediate nodes, and the path perception device 1000, where N is an integer greater than 0.
[0253] The receiving module 1002 is used to receive a third request message. The third request message includes an identifier of the first data flow, an 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 the first path does not pass through the first node. The first data flow is a data flow between a source node and the path perception device 1000, the first data flow is transmitted on the first path, and the first node is any one of the N intermediate nodes.
[0254] The sending module 1001 is used 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 the first path does not pass through the first node.
[0255] It should be noted that all relevant contents of each step involved in the above method embodiment can be referred to the functional description of the corresponding functional module and will not be repeated here.
[0256] Optionally, the path perception device 1000 may further include a storage module ( Fig.10 ), the storage module stores a program or instruction. When the processing module 1002 executes the program or instruction, the path perception device 1000 can perform the function of the target node in any of the above method embodiments.
[0257] It should be noted that the path perception device 1000 may be a target node, or a chip (system) or other parts or components that can be set at the target node, and this application does not limit this.
[0258] In addition, the technical effects of the path perception device 1000 can refer to the technical effects of the path perception method shown in any of the above method embodiments, which will not be repeated here.
[0259] The 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 perform the action of the source node in the above method embodiment, the N intermediate nodes are used to perform the action of the intermediate node in the above method embodiment, and the target node is used to perform the action of the target node in the above method embodiment. The specific execution method and process can refer to the above method embodiment, which will not be repeated here.
[0260] The embodiment of the present application provides a chip system, which includes a logic circuit and an input / output port. The logic circuit can be used to implement the processing function involved in the path perception method provided in the embodiment of the present application, and the input / output port can be used for the transceiver function involved in the path perception method provided in the embodiment of the present application.
[0261] Exemplarily, the input port may be used to implement the receiving function involved in the path sensing method provided in the embodiment of the present application, and the output port may be used to implement the sending function involved in the path sensing method provided in the embodiment of the present application.
[0262] Exemplarily, the processor in the path sensing device 800 can be used to perform, for example, but not limited to, baseband-related processing, and the transceiver in the path sensing device 800 can be used to perform, for example, but not limited to, radio frequency transceiver. The above-mentioned devices can be respectively arranged on chips independent of each other, or at least partially or completely arranged on the same chip. For example, the processor can be further divided into an analog baseband processor and a digital baseband processor. Among them, the analog baseband processor can be integrated with the transceiver on the same chip, and the digital baseband processor can be arranged on an independent chip. With the continuous development of integrated circuit technology, more and more devices can be integrated on the same chip. For example, the digital baseband processor can be integrated with a variety of application processors (such as but not limited to graphics processors, multimedia processors, etc.) on the same chip. Such a chip can be called a system on chip. Whether each device is independently arranged on different chips or integrated 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 form of the above-mentioned devices.
[0263] In one possible design, the chip system also includes a memory, which is used to store program instructions and data for implementing the functions involved in the path perception method provided in the embodiment of the present application.
[0264] The chip system may be composed of chips, or may include chips and other discrete devices.
[0265] An embodiment of the present application provides a computer-readable storage medium, which stores a computer program or instruction. When the computer program or instruction runs on a computer, the path perception method provided by the embodiment of the present application is executed.
[0266] An embodiment of the present application provides a computer program product, which includes: a computer program or instructions, when the computer program or instructions are run on a computer, the path perception method provided by the embodiment of the present application is executed.
[0267] It should be understood that the processor in the embodiments of the present application may be a central processing unit (CPU), and the processor may also be other general-purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), field programmable gate arrays (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 also be any conventional processor, etc.
[0268] It should also be understood that the memory in the embodiments of the present application may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of random access memory (RAM) are available, such as static RAM (SRAM), dynamic random access memory (DRAM), synchronous DRAM (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct rambus RAM (DR RAM).
[0269] The above embodiments can be implemented in whole or in part by software, hardware (such as circuits), firmware or any other combination. When implemented using software, the above embodiments can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions or computer programs. When the computer instructions or computer programs are loaded or executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from one website site, computer, server or data center to another website site, computer, server or data center by wired (such as infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that contains one or more available media sets. The available medium can be a magnetic medium (for example, a floppy disk, a hard disk, a tape), an optical medium (for example, a DVD), or a semiconductor medium. The semiconductor medium can be a solid-state hard disk.
[0270] It should be understood that the term "and / or" in this article is only a description of the association relationship of associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. A and B can be singular or plural. In addition, the character " / " in this article generally indicates that the associated objects before and after are in an "or" relationship, but it may also indicate an "and / or" relationship. Please refer to the context for specific understanding.
[0271] In this application, "at least one" means one or more, and "more than one" means two or more. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can be represented by: a, b, c, ab, ac, bc, or abc, where a, b, c can be single or multiple.
[0272] It should be understood that in the various embodiments of the present application, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
[0273] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0274] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0275] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0276] 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 distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0277] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0278] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application can be essentially or partly embodied in the form of a software product that contributes to the prior art. The computer software product is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in the various embodiments of the present application. The aforementioned storage media include: various media that can store program codes, such as USB flash drives, mobile hard disks, read-only memories (ROM), random access memories (RAM), magnetic disks or optical disks.
[0279] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
[0280] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
Claims
1. A path perception method, characterized in that: Applied to a source node in a communication network, the communication network comprising the source node, N intermediate nodes, and a target node, N being an integer greater than 0, including: Sending a first request message to the target node; wherein the first request message includes an identifier of the first node, an identifier of a first data flow, and first reservation information, the first data flow is a data flow between the source node and the target node, the first data flow is transmitted on a 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, and the first reservation information is used to record a result of whether the first path passes through the first node; receiving a first response message from the target node; wherein 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 a result of whether the first path passes through the first node in the first reservation 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; First information is obtained according to the first response message; wherein 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.
2. The path perception method according to claim 1, characterized in that: The first information also includes an identifier of the first data flow and / or a delay of the first path.
3. The path perception method according to claim 1 or 2, characterized in that: The method further comprises: The first path is determined according to the topological connection relationship and the second information; wherein the topological connection relationship includes the topological relationship between the source node, the 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, and the first path includes the connection relationship of Q intermediate nodes, where Q is an integer greater than 0 and less than or equal to N.
4. The path perception method according to claim 1 or 2, characterized in that: The method further comprises: Determine a first correlation value; wherein the first correlation value represents the correlation between the first request message and the second request message, the second request message includes an identifier of a second data flow, an identifier of the first node and second reservation information, the second data flow is a data flow between the source node and the target node, the second data flow is transmitted on a second path, the second request message is a sent message, the second request message is used to request to determine whether the second path passes through the first node, and the second reservation information is used to record the result of whether the second path passes through the first node.
5. The path perception method according to claim 4, characterized in that: The sending a first request message to the target node includes: When the first correlation value is less than or equal to a correlation threshold, the first request message is sent to the target node.
6. The path perception method according to claim 4, characterized in that: The method further comprises: In the case that the first correlation value is greater than a correlation threshold, mapping information is generated; wherein the mapping information includes a mapping relationship between an identifier of the second data stream and an identifier of the first data stream.
7. The path perception method according to claim 1 or 2, characterized in that: The method further comprises: In the case where an abnormality occurs in the first path, communication with the target node through the first path is switched to communication with the target node through a third path according to correlation information and / or abnormal node information; wherein the correlation information is used to indicate the correlation of one or more fourth paths with the first path respectively, the path between the source node and the target node includes the first path and the one or more fourth paths, and the abnormal node information is used to indicate the intermediate node where the abnormality occurs; the third path is the path with the lowest correlation with the first path among the one or more fourth paths, and / or the path among the one or more fourth paths that does not pass through the intermediate node where the abnormality occurs.
8. A path perception method, characterized in that: Applied to an intermediate node in a communication network, the communication network comprising a source node, N intermediate nodes, and a target node, where N is an integer greater than 0 and includes: Receive a first request message; wherein the first request message includes an identifier of a first node, an identifier of a first data flow, and first reservation information, the first data flow is a data flow between the source node and the target node, the first data flow is transmitted on a first path, the first request message is used to request to determine whether the first path passes through the first node, the first reservation information is used to record a result of whether the first path passes through the first node, and the first node is any one of the N intermediate nodes; determining whether the first path passes through the first node; Send a third request message; wherein the third request 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 reservation information, and the first indication information is used to indicate that the first path passes through the first node, or the first path does not pass through the first node.
9. A path perception method, characterized in that: Applied to a target node in a communication network, the communication network comprising a source node, N intermediate nodes, and a target node, where N is an integer greater than 0, including: Receive a third request message; wherein the third request message includes an identifier of a first data flow, an identifier of a first node, and first indication information, wherein the first indication information is used to indicate that a 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 a first path, and the first node is any one of the N intermediate nodes; A first response message is sent to the source node according to the identifier of the first data flow; wherein 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 the first path does not pass through the first node.
10. A path sensing device, characterized in that: Applied to a communication network including the path sensing device, N intermediate nodes, and a target node, N being an integer greater than 0, the path sensing device includes: a transceiver module and a processing module; wherein, The transceiver module is used to send a first request message to the target node; wherein the first request message includes an identifier of the first node, an identifier of a first data flow, and first reservation information, the first data flow is a data flow between the path perception device and the target node, the first data flow is transmitted on a 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, and the first reservation information is used to record a result of whether the first path passes through the first node; The transceiver module is further used to receive a first response message from the target node; wherein 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 a result of whether the first path passes through the first node in the first reserved 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 processing module is used to obtain first information according to the first response message; wherein the first information includes whether the first path passes through the first node, or whether the first path does not pass through the first node.
11. The path sensing device according to claim 10, characterized in that: The first information also includes an identifier of the first data flow and / or a delay of the first path.
12. The path sensing device according to claim 10 or 11, characterized in that: The processing module is also used to determine the first path based on the topological connection relationship and the second information; wherein the topological connection relationship includes the topological relationship between the path perception device, the N intermediate nodes, and the target node, and the second information is obtained after iteratively updating the first information based on the first response messages corresponding to the N intermediate nodes, and the first path includes the connection relationship of Q intermediate nodes, and Q is an integer greater than 0 and less than or equal to N.
13. The path sensing device according to claim 10 or 11, characterized in that: The processing module is also used to determine a first correlation value; wherein the first correlation value represents the correlation between the first request message and the second request message, the second request message includes an identifier of a second data flow, an identifier of the first node and second reservation information, the second data flow is a data flow between the path perception device and the target node, the second data flow is transmitted on a second path, the second path is an established path, the second request message is used to request to determine whether the second path passes through the first node, and the second reservation information is used to record the result of whether the second path passes through the first node.
14. The path sensing device according to claim 13, characterized in that: When the first correlation value is less than or equal to a correlation threshold, the transceiver module is further configured to send the first request message to the target node.
15. The path sensing device according to claim 13, characterized in that: In the case that the first correlation value is greater than a correlation threshold, the processing module is further configured to generate mapping information; wherein the mapping information includes a mapping relationship between an identifier of the second data stream and an identifier of the first data stream.
16. The path sensing device according to claim 10 or 11, characterized in that: In the event that an abnormality occurs in the first path, the processing module is further used to switch, based on correlation information and / or abnormal node information, from communicating with the target node through the first path to communicating with the target node through a third path; wherein the correlation information is used to indicate the correlations of multiple fourth paths with the first path respectively, the path between the path sensing device and the target node includes the first path and the multiple fourth paths, and the abnormal node information is used to indicate the intermediate node where the abnormality occurs; the third path is the path among the multiple fourth paths that has the lowest correlation with the first path, and / or the path among the multiple fourth paths that does not pass through the intermediate node where the abnormality occurs.
17. A path sensing device, characterized in that: Applicable to a communication network including a source node, N intermediate nodes, and a target node, N is an integer greater than 0, the path sensing device is any one of the N intermediate nodes, and the path sensing device includes: a transceiver module and a processing module; wherein, The transceiver module is configured to receive a first request message; wherein the first request message includes an identifier of a first node, an identifier of a first data flow, and first reservation information, the first data flow is a data flow between the source node and the target node, the first data flow is transmitted on a first path, the first request message is used to request the first node to determine whether the first path passes through the first node, the first reservation information is used to record a result of whether the first path passes through the first node, and the first node is any one of the N intermediate nodes; The processing module is used to determine whether the first path passes through the first node; The transceiver module is also used to send a third request message; wherein the third request 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, and the first indication information is used to indicate that the first path passes through the first node, or the first path does not pass through the first node.
18. A path sensing device, characterized in that: Applicable to a communication network including a source node, N intermediate nodes, and the path perception device, N is an integer greater than 0, and the path perception device includes: a receiving module and a sending module; wherein, The receiving module is used to receive a third request message; wherein the third request message includes an identifier of a first data flow, an identifier of a first node, and first indication information, wherein the first indication information is used to indicate that a 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 perception device, the first data flow is transmitted on a first path, and the first node is any one of the N intermediate nodes; The sending module is used to send a first response message to the source node according to the identifier of the first data flow; wherein 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 the first path does not pass through the first node.
19. A path sensing device, characterized in that: The path perception device comprises: a processor; the processor is used to execute the path perception method as described in any one of claims 1-9.
20. A path perception system, characterized in that: The path perception system includes the path perception device according to any one of claims 10 to 16, the path perception device according to claim 17, and the path perception device according to claim 18.
21. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program or instruction, and when the computer program or instruction runs on a computer, the path perception method according to any one of claims 1 to 9 is executed.
22. A computer program product, characterized in that The computer program product comprises: a computer program or instructions, and when the computer program or instructions are run on a computer, the path perception method according to any one of claims 1 to 9 is executed.
Citation Information
Patent Citations
Network communication method and device
CN110581774A
Routing control method and device
CN112583714A