This application relates to the communication field, and more specifically, to a measurement reporting method and a network node.
With the development of the internet, internet protocol version 6 (Internet Protocol version 6, IPv6) is a next generation IP protocol designed by the Internet Engineering Task Force to replace internet protocol version 4 (Internet Protocol version 4, IPv4). Internet protocol version 6 segment routing (Internet Protocol version 6 Segment Routing, SRv6) is a method designed based on a concept of source routing to forward an IPv6 packet on a network. In segment routing SR based on an IPv6 forwarding plane, a segment routing header (Segment Routing Header, SRH) is inserted into an IPv6 packet, an explicit IPv6 address stack is pushed into the SRH, and transit nodes continuously update destination addresses and offset address stacks, to implement hop-by-hop forwarding. In SRv6, one tunnel may include a plurality of paths to expand network bandwidth, increase a throughput, and improve network flexibility and availability. In an actual network, congestion statuses of paths are different. When congestion statuses of corresponding paths are measured, for a plurality of paths of a same tunnel, measurement results cannot be reported in a timely manner. As a result, measurement reporting precision is low.
This application provides a measurement reporting method and a network node, to improve measurement reporting precision, so that a congestion degree of a corresponding path can be adjusted based on a measurement result of each path.
According to a first aspect, a measurement reporting method is provided. The method is performed in a communication system including a first network node and a second network node, a plurality of paths are configured for one tunnel between the first network node and the second network node, the method is applied to the first network node, and the method includes: receiving a first measurement packet, where the first measurement packet is used to indicate the first network node to report measurement results; and sending a first result packet to the second network node, where the first result packet includes a result packet corresponding to a measurement result of each of the plurality of paths in a first time interval, and the first result packet is used to indicate the measurement result of each of the plurality of paths in the first time interval.
After the first network node receives the first measurement packet, the first network node performs measurement, and sends the first result packet to the second network node, where the first result packet includes the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the first result packet is used to indicate the measurement result of each of the plurality of paths in the first time interval. This improves measurement reporting precision.
With reference to the first aspect, in a possible implementation, the method further includes: sending a second result packet to the second network node at a periodicity of the first time interval, where the second result packet includes the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the second result packet is used to indicate the measurement result of each of the plurality of paths in the first time interval.
The first network node may send the second result packet to the second network node at a periodicity of the first time interval, where the second result packet is used to indicate the measurement result of each of the plurality of paths in the first time interval. In addition, the first network node may send result packets to the second network node at equal time intervals. This can further improve the measurement reporting precision.
With reference to the first aspect, in a possible implementation, the first result packet further includes a sequence number of the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the sequence number of the result packet is used to indicate a ranking of the result packet generated by the first network node.
The first result packet further includes the sequence number of the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the sequence number of the result packet is used to indicate the ranking of the result packet generated by the first network node, so that after receiving the first result packet, the second network node adjusts a congestion degree of a corresponding path based on a measurement result of the corresponding path in result packets with a same sequence number, to improve the measurement reporting precision.
With reference to the first aspect, in a possible implementation, the first result packet includes a first-type result packet and a second-type result packet, or the first result packet includes a second-type result packet. A data field in the first-type result packet indicates a first threshold, and the first threshold is used to indicate that the first network node does not generate the measurement result of the corresponding path in the first time interval. A data field in the second-type result packet indicates data of the corresponding path measured by the first network node in the first time interval.
The first result packet includes a result packet indicating that the measurement result of the corresponding path is not generated in the first time interval and a result packet of the data of the corresponding path measured in the first time interval, or the first result packet includes a result packet of the data of the corresponding path measured in the first time interval. Therefore, the first network node can simultaneously report result packets corresponding to the plurality of paths, to improve the measurement reporting precision.
With reference to the first aspect, in a possible implementation, the second result packet includes a first-type result packet and a second-type result packet; or the second result packet includes a second-type result packet.
The second result packet includes a result packet indicating that the measurement result of the corresponding path is not generated in the first time interval and a result packet of the data of the corresponding path measured in the first time interval, or the second result packet includes a result packet of the data of the corresponding path measured in the first time interval. Therefore, the first network node can simultaneously report result packets corresponding to the plurality of paths at equal time intervals, to improve the measurement reporting precision.
With reference to the first aspect, in a possible implementation, the second result packet further includes a sequence number of the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the sequence number of the result packet is used to indicate a ranking of the result packet generated by the first network node.
The second result packet further includes the sequence number of the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the sequence number of the result packet is used to indicate the ranking of the result packet generated by the first network node, so that after receiving the second result packet, the second network node adjusts a congestion degree of a corresponding path based on a measurement result of the corresponding path in result packets with a same sequence number.
With reference to the first aspect, in a possible implementation, the first time interval is less than or equal to a first time offset, and the first time offset includes an offset between time at which the first network node generates measurement result packets with a same sequence number.
The first time interval is less than the first time offset, and the first time offset is the offset between time at which the first network node generates the measurement result packets with the same sequence number. Therefore, the second network node can obtain, in the first time offset, the result packets reported by the first network node, to satisfy a measurement reporting adjustment requirement.
With reference to the first aspect, in a possible implementation, the first measurement packet is a measurement packet first received by the first network node on the plurality of paths.
The first measurement packet is the measurement packet first received by the first network node on the plurality of paths. The first network node performs measurement after receiving the first received measurement packet on the plurality of paths, to improve congestion measurement efficiency.
With reference to the first aspect, in a possible implementation, the method further includes: setting a measurement time interval of each of the plurality of paths as the first time interval.
The measurement time interval of each of the plurality of paths is set as the first time interval. Therefore, it can be ensured that the first network node reports the result packets at equal time intervals, to satisfy the measurement reporting adjustment requirement.
With reference to the first aspect, in a possible implementation, the setting a measurement time interval of each of the plurality of paths as the first time interval includes: receiving a setting packet, where the setting packet is used to indicate the measurement time interval of each of the plurality of paths, and the setting packet includes the first time interval; and setting the measurement time interval of each of the plurality of paths as the first time interval based on the setting packet.
The first network node sets the measurement time interval of each of the plurality of paths as the first time interval based on the received setting packet, so that the measurement time interval of each of the plurality of paths of the first network node can be flexibly unified.
With reference to the first aspect, in a possible implementation, the setting packet is further used to indicate a quantity of paths. The method further includes: setting, based on the setting packet, the quantity of paths measured by the first network node.
When the setting packet includes the quantity of paths, the first network node may set, based on the setting packet, the quantity of paths that need to be measured, so that the first network node subsequently measures the corresponding path.
With reference to the first aspect, in a possible implementation, the setting a measurement time interval of each of the plurality of paths to the first time interval includes: setting the measurement time interval of each of the plurality of paths as the first time interval according to a communication protocol.
The first network node sets the measurement time interval of each of the plurality of paths as the first time interval according to a specification in the communication protocol, so that signaling overheads can be reduced.
With reference to the first aspect, in a possible implementation, the method further includes: setting, according to the communication protocol, the quantity of paths measured by the first network node.
The first network node sets, according to the specification in the communication protocol, the quantity of paths measured by the first network node, so that the signaling overheads can be reduced.
With reference to the first aspect, in a possible implementation, the method further includes: sending an acknowledgment packet, where the acknowledgment packet is used to indicate that the first network node has set the measurement time interval of each of the plurality of paths and the quantity of paths.
The first network node sends the acknowledgment packet to indicate that the first network node has set the measurement time interval of each of the plurality of paths and the quantity of paths, so that a subsequent measurement operation can be performed.
According to a second aspect, a measurement reporting method is provided. The method is performed in a communication system including a first network node and a second network node, a plurality of paths are configured for one tunnel between the first network node and the second network node, the method is applied to the second network node, and the method includes: sending a first measurement packet, where the first measurement packet is used to indicate the first network node to report measurement results; and receiving a first result packet sent by the first network node, where the first result packet includes a result packet corresponding to a measurement result of each of the plurality of paths in a first time interval, and the first result packet is used to indicate the measurement result of each of the plurality of paths in the first time interval.
The second network node sends the first measurement packet, where the first measurement packet is used to indicate measurement reporting. The second network node receives the first result packet sent by the first network node, where the first result packet is used to indicate the measurement result of each of the plurality of paths in the first time interval. Therefore, the second network node can receive the measurement results of the plurality of paths at a same moment, to improve congestion measurement precision.
With reference to the second aspect, in a possible implementation, the method further includes: receiving, at a periodicity of the first time interval, a second result packet sent by the first network node, where the second result packet includes the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the second result packet is used to indicate the measurement result of each of the plurality of paths in the first time interval.
The second network node receives the second result packet sent by the first network node, where the second result packet is used to indicate the measurement result of each of the plurality of paths in the first time interval. The result packet received by the second network node each time is used to indicate the measurement result of each of the plurality of paths in the first time interval, and the second network node may receive the measurement result of each of the plurality of paths in the first time interval at equal time intervals, to improve measurement reporting precision.
With reference to the second aspect, in a possible implementation, the first result packet includes a first-type result packet and a second-type result packet, or the first result packet includes a second-type result packet. A data field in the first-type result packet indicates a first threshold, and the first threshold is used to indicate that the first network node does not generate a measurement result of a corresponding path in the first time interval. A data field in the second-type result packet indicates data of the corresponding path measured by the first network node in the first time interval.
With reference to the second aspect, in a possible implementation, the first result packet further includes a sequence number of the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the sequence number of the result packet is used to indicate a ranking of the result packet generated by the first network node.
The first result packet further includes the sequence number of the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the sequence number of the result packet is used to indicate the ranking of the result packet generated by the first network node, so that after receiving the first result packet, the second network node adjusts a congestion degree of the corresponding path based on the measurement result of the corresponding path in result packets with a same sequence number, to improve the measurement reporting precision.
With reference to the second aspect, in a possible implementation, the second result packet includes a first-type result packet and a second-type result packet; or the second result packet includes a second-type result packet.
With reference to the second aspect, in a possible implementation, the second result packet further includes a sequence number of the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the sequence number of the result packet is used to indicate a ranking of the result packet generated by the first network node.
The second result packet further includes the sequence number of the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the sequence number of the result packet is used to indicate the ranking of the result packet generated by the first network node, so that after receiving the second result packet, the second network node adjusts a congestion degree of the corresponding path based on the measurement result of the corresponding path in result packets with a same sequence number, to improve the measurement reporting precision.
With reference to the second aspect, in a possible implementation, the first measurement packet is a measurement packet first received by the first network node on the plurality of paths.
With reference to the second aspect, in a possible implementation, the first time interval is less than or equal to a first time offset, and the first time offset includes an offset between time at which the first network node generates measurement result packets with a same sequence number.
With reference to the second aspect, in a possible implementation, the method further includes: sending a setting packet, where the setting packet is used to indicate a measurement time interval of each of the plurality of paths, and the setting packet includes the first time interval.
With reference to the second aspect, in a possible implementation, the setting packet is further used to indicate a quantity of paths.
With reference to the second aspect, in a possible implementation, the method further includes: receiving an acknowledgment packet, where the acknowledgment packet is used to indicate that the first network node has set the measurement time interval of each of the plurality of paths and the quantity of paths.
According to a third aspect, a network node is provided. A network includes a first network node and a second network node, a plurality of paths are configured for one tunnel between the first network node and the second network node, and the network node is the first network node. The network node includes: a receiving module, configured to receive a first measurement packet, where the first measurement packet is used to indicate the network node to report measurement results; and a sending module, configured to send a first result packet to the second network node, where the first result packet includes a result packet corresponding to a measurement result of each of the plurality of paths in a first time interval, and the first result packet is used to indicate the measurement result of each of the plurality of paths in the first time interval.
With reference to the third aspect, in a possible implementation, the sending module is further configured to: send a second result packet to the second network node at a periodicity of the first time interval, where the second result packet includes the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the second result packet is used to indicate the measurement result of each of the plurality of paths in the first time interval.
With reference to the third aspect, in a possible implementation, the first result packet includes a first-type result packet and a second-type result packet, or the first result packet includes a second-type result packet. A data field in the first-type result packet indicates a first threshold, and the first threshold is used to indicate that the first network node does not generate a measurement result of a corresponding path in the first time interval. A data field in the second-type result packet indicates data of the corresponding path measured by the first network node in the first time interval.
With reference to the third aspect, in a possible implementation, the first result packet further includes a sequence number of the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the sequence number of the result packet is used to indicate a ranking of the result packet generated by the first network node.
With reference to the third aspect, in a possible implementation, the second result packet includes a first-type result packet and a second-type result packet; or the second result packet includes a second-type result packet.
With reference to the third aspect, in a possible implementation, the second result packet further includes a sequence number of the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the sequence number of the result packet is used to indicate a ranking of the result packet generated by the first network node.
With reference to the third aspect, in a possible implementation, the first measurement packet is a measurement packet first received by the network node on the plurality of paths.
With reference to the third aspect, in a possible implementation, the first time interval is less than or equal to a first time offset, and the first time offset includes an offset between time at which the network node generates measurement result packets with a same sequence number.
With reference to the third aspect, in a possible implementation, the network node further includes a processing module, where the processing module is configured to set a measurement time interval of each of the plurality of paths as the first time interval.
With reference to the third aspect, in a possible implementation, the network node further includes the processing module. The receiving module is further specifically configured to receive a setting packet, where the setting packet is used to indicate the measurement time interval of each of the plurality of paths, and the setting packet includes the first time interval. The processing module is further specifically configured to set the measurement time interval of each of the plurality of paths as the first time interval based on the setting packet.
With reference to the third aspect, in a possible implementation, the setting packet is further used to indicate a quantity of paths. The processing module is further specifically configured to set, based on the setting packet, the quantity of paths measured by the network node.
With reference to the third aspect, in a possible implementation, the processing module is further specifically configured to set the measurement time interval of each of the plurality of paths as the first time interval according to a communication protocol.
With reference to the third aspect, in a possible implementation, the processing module is further specifically configured to set, according to the communication protocol, the quantity of paths measured by the network node.
With reference to the third aspect, in a possible implementation, the sending module is further configured to send an acknowledgment packet, where the acknowledgment packet is used to indicate that the network node has set the measurement time interval of each of the plurality of paths and the quantity of paths.
According to a fourth aspect, a network node is provided. The network node includes a first network node and a second network node, a plurality of paths are configured for one tunnel between the first network node and the second network node, and the network node is the second network node. The network node includes a sending module, configured to send a first measurement packet, where the first measurement packet is used to indicate the first network node to report measurement results; and a receiving module, configured to receive a first result packet sent by the first network node, where the first result packet includes a result packet corresponding to a measurement result of each of the plurality of paths in a first time interval, and the first result packet is used to indicate the measurement result of each of the plurality of paths in the first time interval.
With reference to the fourth aspect, in a possible implementation, the receiving module is further configured to: receive, at a periodicity of the first time interval, a second result packet sent by the first network node, where the second result packet includes the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the second result packet is used to indicate the measurement result of each of the plurality of paths in the first time interval.
With reference to the fourth aspect, in a possible implementation, the first result packet includes a first-type result packet and a second-type result packet, or the first result packet includes a second-type result packet. A data field in the first-type result packet indicates a first threshold, and the first threshold is used to indicate that the first network node does not generate a measurement result of a corresponding path in the first time interval. A data field in the second-type result packet indicates data of the corresponding path measured by the first network node in the first time interval.
With reference to the fourth aspect, in a possible implementation, the first result packet further includes a sequence number of the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the sequence number of the result packet is used to indicate a ranking of the result packet generated by the first network node.
With reference to the fourth aspect, in a possible implementation, the second result packet includes a first-type result packet and a second-type result packet; or the second result packet includes a second-type result packet.
With reference to the fourth aspect, in a possible implementation, the second result packet further includes a sequence number of the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the sequence number of the result packet is used to indicate a ranking of the result packet generated by the first network node.
With reference to the fourth aspect, in a possible implementation, the first measurement packet is a measurement packet first received by the first network node on the plurality of paths.
With reference to the fourth aspect, in a possible implementation, the first time interval is less than or equal to a first time offset, and the first time offset includes an offset between time at which the first network node generates measurement result packets with a same sequence number.
With reference to the fourth aspect, in a possible implementation, the sending module is further configured to send a setting packet, where the setting packet is used to indicate a measurement time interval of each of the plurality of paths, and the setting packet includes the first time interval.
With reference to the fourth aspect, in a possible implementation, when a measurement parameter further includes a quantity of paths, the setting packet further includes the quantity of paths.
With reference to the fourth aspect, in a possible implementation, the receiving module is further configured to receive an acknowledgment packet, where the acknowledgment packet is used to indicate that the first network node has set the measurement time interval of each of the plurality of paths and the quantity of paths.
According to a fifth aspect, a network node is provided. The network node includes a transceiver, a processor, and a memory. The processor is configured to control the transceiver to send and receive a signal. The memory is configured to store a computer program. The processor is configured to invoke the computer program from the memory and run the computer program, so that the network node performs the method according to any one of the first aspect or the possible implementations of the first aspect.
In a design, the network node is a communication chip, the receiving module may be an input circuit or an interface of the communication chip, and the sending module may be an output circuit or an interface of the communication chip.
According to a sixth aspect, a network node is provided. The network node includes a transceiver, a processor, and a memory. The processor is configured to control the transceiver to send and receive a signal. The memory is configured to store a computer program. The processor is configured to invoke the computer program from the memory and run the computer program, so that the network node performs the method according to any one of the second aspect or the possible implementations of the second aspect.
In a design, the network node is a communication chip, the receiving module may be an input circuit or an interface of the communication chip, and the sending module may be an output circuit or an interface of the communication chip.
According to a seventh aspect, a network system is provided. The network system includes the network node according to any one of the third aspect or the possible implementations of the third aspect and the network node according to any one of the fourth aspect or the possible implementations of the fourth aspect.
According to an eighth aspect, a computer program product including instructions is provided. When the computer program product runs on a computer, the computer is enabled to perform the methods according to the foregoing aspects.
According to a ninth aspect, a computer-readable storage medium is provided. The computer-readable storage medium stores instructions. When the instructions are run on a computer, the computer is enabled to perform the methods according to the foregoing aspects.
For ease of understanding embodiments of this application, the following several descriptions are provided before the embodiments of this application are described.
First, in the embodiments of this application, an “indication” may include a direct indication and an indirect indication, or may include an explicit indication and an implicit indication. Information indicated by a piece of information (for example, first indication information described below) is referred to as to-be-indicated information. In a specific implementation process, the to-be-indicated information may be indicated in a plurality of manners, for example, but not limited to, a manner of directly indicating the to-be-indicated information. For example, the to-be-indicated information is indicated by using the to-be-indicated information or an index of the to-be-indicated information. Alternatively, the to-be-indicated information may be indirectly indicated by indicating other information, and there is an association relationship between the other information and the to-be-indicated information. Alternatively, only a part of the to-be-indicated information may be indicated, and the other part of the to-be-indicated information may be known, or agreed upon in advance. For example, specific information may also be indicated by using a pre-agreed (for example, stipulated in a protocol) arrangement sequence of various pieces of information, to reduce indication overheads to some extent.
Second, in the embodiments shown below, “first”, “second”, and various numerical numbers are merely used for distinguishing for ease of description, and are not used to limit the scope of the embodiments of this application, for example, used for distinguishing different packets.
Third, a “protocol” in the embodiments of this application may be a standard protocol in the communication field, for example, may include an LTE protocol, an NR protocol, and a related protocol used in a future communication system. This is not limited in this application.
Fourth, “a plurality of” in the embodiments of this application means two or more. “One or more of the following items (pieces)” or a similar expression thereof refers to any combination of these items, including any combination of singular items (pieces) or plural items (pieces). For example, at least one (piece) or a plurality (pieces) of a, b, or c may indicate: a, b, c, a and b, a and c, b and c, or a, b, and c, where a, b, and c may be singular or plural.
Fifth, a “moment” in the embodiments of this application is at least accurate to millisecond, that is, the “moment” may be YYYY-MM-DD hh:mm:ss.ms, for example, 2018-08-29 09:30:18.11. The “moment” may alternatively be YYYY-MM-DD hh:mm:ss.ms.microseconds, for example, 2019-03-05 10:15:09.05.10.
The following describes the technical solutions of this application with reference to the accompanying drawings.
Therefore, a method for improving measurement packet reporting precision urgently needs to be provided.
The method provided in the embodiments of this application is described in detail below with reference to the accompanying drawings.
In the embodiments shown below, optionally, the first network node and the second network node may be router devices. The first network node may be a sink end (receive end), and the second network node may be a source end (transmit end).
The method is performed in a communication system including the first network node and the second network node, and a plurality of paths are configured for one tunnel between the first network node and the second network node.
The second network node continuously sends a measurement packet to the first network node on each of the plurality of paths at a periodicity of a first time interval. After receiving the measurement packet on each of the plurality of paths, the first network node generates a measurement result of each of the plurality of paths at a periodicity of the first time interval.
The following describes in detail the embodiments of this application by using interaction between the first network node and the second network node as an example.
Step 310: The first network node sets a measurement time interval of each of a plurality of paths as a first time interval.
The first network node may set the measurement time interval of each of the plurality of paths in the following two manners.
Manner 1
The first network node receives a setting packet sent by the second network node, where the setting packet is used to indicate the measurement time interval of each of the plurality of paths, and the setting packet includes the first time interval.
Optionally, that the measurement time interval of each of the plurality of paths is the first time interval may be understood as that measurement time intervals of the plurality of paths are a same time interval. For example, as shown in
The first network node sets the measurement time interval of each of the plurality of paths as the first time interval based on the setting packet. For example, when the first time interval in the setting packet may be 1 ms, the first network node sets the measurement time interval of each of the plurality of paths as 1 ms based on the first time interval in the setting packet. For another example, when the first time interval in the setting packet may be 2 ms, the first network node sets the measurement time interval of each of the plurality of paths as 2 ms based on the first time interval in the setting packet.
Optionally, the setting packet may be further used to indicate a quantity of paths, and the first network node sets the quantity of paths based on the setting packet.
Optionally, the measurement time interval of each of the plurality of paths and the quantity of paths may be indicated by using one setting packet. Alternatively, the measurement time interval of each of the plurality of paths and the quantity of paths may be indicated by using two setting packets. This application sets no limitation on whether the measurement time interval of each of the plurality of paths and the quantity of paths in measurement parameters are indicated by using one setting packet or two setting packets.
Optionally, the first network node sets, based on the setting packet, a quantity of paths measured by the first network node. For example, when the quantity of paths indicated by using the setting packet may be 4, the first network node sets, based on the quantity of paths in the setting packet, the quantity of paths that need to be measured by the first network node as 4. For another example, when the quantity of paths in the setting packet may be 6, the first network node sets, based on the quantity of paths in the setting packet, the quantity of paths that need to be measured by the first network node as 6. This application sets no limitation on the quantity of paths in the setting packet.
For example,
Optionally, the time interval of the result measurement indicated by the measurement interval time field may be understood as that the measurement time interval of each of the plurality of paths is set as the first time interval.
Optionally, the quantity of paths indicated by the tunnel path quantity field may be understood as the quantity of paths that need to be measured by the first network node.
Manner 2
A communication protocol specifies the measurement time interval of each of the plurality of paths and a quantity of paths.
Optionally, the communication protocol specifies that the measurement time interval of each of the plurality of paths is the first time interval. The first time interval may be 3 ms, or the first time interval may be 2 ms.
Optionally, the first network node sets the measurement time interval of each of the plurality of paths as the first time interval according to the specification in the communication protocol. For example, when the first time interval specified in the communication protocol may be 3 ms, the first network node sets the measurement time interval of each of the plurality of paths as 3 ms based on the first time interval specified in the communication protocol. For another example, when the first time interval specified in the communication protocol may be 2 ms, the first network node sets the measurement time interval of each of the plurality of paths as 2 ms based on the first time interval specified in the communication protocol.
Optionally, the communication protocol may further specify the quantity of paths, that is, the communication protocol specifies the quantity of paths that need to be measured by the first network node. The quantity of paths may be 3, or the quantity of paths may be 4.
Optionally, the first network node sets, according to the specification in the communication protocol, the quantity of paths that need to be measured by the first network node. For example, when the quantity, specified in the communication protocol, of paths that need to be measured by the first network node may be 3, the first network node sets, based on the quantity, specified in the communication protocol, of paths that need to be measured by the first network node, the quantity of paths that need to be measured by the first network node as 3. For another example, when the quantity, specified in the communication protocol, of paths that need to be measured by the first network node may be 4, the first network node sets, based on the quantity, specified in the communication protocol, of paths that need to be measured by the first network node, the quantity of paths that need to be measured by the first network node as 4.
After the first network node sets the measurement time interval of each of the plurality of paths and the quantity of paths that need to be measured by the first network node, step 320 may be performed.
Step 320: The second network node receives an acknowledgment packet sent by the first network node, where the acknowledgment packet is used to indicate that the first network node has set the measurement time interval of each of the plurality of paths and the quantity of paths that need to be measured by the first network node.
For example,
When the first network node successfully performs setting based on the acknowledgment packet, and the accept field in the acknowledgment packet indicates 0, step 330 is performed.
Step 330: The second network node sends a first measurement packet, where the first measurement packet is used to indicate the first network node to report measurement results. Correspondingly, the first network node receives the first measurement packet.
Optionally, the first measurement packet is sent by the second network node to the first network node on one of the plurality of paths.
Optionally, in addition to sending the first measurement packet, the second network node may further send a measurement packet of each of the plurality of paths to the first network node at a periodicity of the first time interval. For example, four paths are configured between the first network node and the second network node, that is, a path 1, a path 2, a path 3, and a path 4. The second network node correspondingly sends measurement packets to the first network node on the path 1, the path 2, the path 3, and the path 4 at the first time interval.
Optionally, the first measurement packet is a measurement packet first received by the first network node on the plurality of paths. That is, the first measurement packet may be understood as a measurement packet first received by the first network node in measurement packets sent by the second network node on the plurality of paths. For example, the second network node correspondingly sends the measurement packets to the first network node on the path 1, the path 2, the path 3, and the path 4 at the first time interval. If the first network node first receives a measurement packet sent on the path 1, the first measurement packet is the measurement packet sent on the path 1. If the first network node first receives a measurement packet sent on the path 3, the first measurement packet is the measurement packet sent on the path 3.
Optionally, a moment at which the second network node sends the first measurement packet is different from a moment at which the first network node receives the first measurement packet, and the moment at which the second network node sends the first measurement packet is earlier than the moment at which the first network node receives the first measurement packet. For example, the second network node sends the first measurement packet at a moment of 1 ms, and the first network node receives the first measurement packet at a moment of 2 ms. For example, the second network node sends the first measurement packet at a moment of 1 ms, and the first network node receives the first measurement packet at a moment of 1.8 ms.
For example,
For example, the first network node may receive the first measurement packet at a first moment. If four paths are configured between the second network node and the first network node, when the first measurement packet is a measurement packet sent by the first network node on the path 2, the first moment may be a moment at which the first network node receives the measurement packet sent by the second network node on the path 2. If the moment at which the first network node receives the measurement packet sent by the second network node on the path 2 is 8:10, the first moment is 8:10. For another example, when the first measurement packet is a measurement packet sent by the first network node on the path 4, the first moment may be a moment at which the first network node receives the measurement packet sent by the second network node on the path 4. If the moment at which the first network node receives the measurement packet sent by the second network node on the path 4 is 8:30, the first moment is 8:30.
Step 340: The first network node sends a first result packet to the second network node, where the first result packet includes a result packet corresponding to a measurement result of each of the plurality of paths in the first time interval, and the first result packet is used to indicate the measurement result of each of the plurality of paths in the first time interval. Correspondingly, the second network node receives the first result packet sent by the first network node.
For example, the first network node may send the first result packet to the second network node at a second moment. A time interval between the first moment and the second moment may be the first time interval, that is, the first network node receives the first measurement packet at the first moment, and does not send the result packet at the first moment, but sends the first result packet to the second network node at the first moment plus an end moment of the first time interval. For example, as shown in
Optionally, the first result packet may further include a sequence number of the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the sequence number of the result packet is used to indicate a ranking of the result packet generated by the first network node.
Optionally, the sequence number of the result packet corresponding to the measurement result may be understood as a sequence number of measurement performed by the first network node on a corresponding path to obtain a measurement result of the result packet. Optionally, the first time interval is less than or equal to a first time offset, and the first time offset includes an offset between time at which the first network node generates measurement result packets with a same sequence number.
The same sequence number may be understood as a same transaction number.
The offset between the time at which the first network node generates the measurement result packets with the same sequence number may be understood as an offset between time at which the first network node generates measurement result packets with a same sequence number for different paths. For example, three paths (for example, the path 1, the path 2, and the path 3) are configured between the first network node and the second network node. For the three paths, details are as follows: If the first network node receives the first measurement packet at 1 ms, and the first measurement packet is sent on the path 1, the first network node generates a measurement result packet corresponding to the path 1 for the first time at 1.1 ms. If the first network node receives the 1st measurement packet corresponding to the path 3 at 2 ms, the first network node generates a measurement result packet corresponding to the path 3 for the first time at 2.1 ms. If the first network node receives the 1st measurement packet corresponding to the path 2 at 3 ms, the first network node generates a measurement result packet corresponding to the path 2 for the first time at 3.1 ms. The first time offset may be an offset between time at which the measurement result packet corresponding to the path 1 is generated for the first time, time at which the measurement result packet corresponding to the path 2 is generated for the first time, and time at which the measurement result packet corresponding to the path 3 is generated for the first time. That is, the first time offset may be 2 ms.
For example, if the first time offset is 2 ms, the first time interval needs to be less than or equal to 2 ms. To be specific, if the second network node sends a measurement packet corresponding to one path every 2 ms at most, the first network node generates a measurement result packet corresponding to one path every 2 ms at most. For another example, if the first time offset is 1.5 ms, the first time interval needs to be less than or equal to 1.5 ms. To be specific, if the second network node sends a measurement packet corresponding to one path every 1.5 ms at most, the first network node generates a measurement result packet corresponding to one path every 1.5 ms at most.
Optionally, the first network node sends a second result packet to the second network node at a periodicity of the first time interval, where the second result packet includes a result packet corresponding to a measurement result of each of the plurality of paths in the first time interval, and the second result packet is used to indicate the measurement result of each of the plurality of paths in the first time interval. Correspondingly, the second network node receives, at a periodicity of the first time interval, the second result packet sent by the first network node.
Optionally, the second result packet may further include a sequence number of the result packet corresponding to the measurement result of each of the plurality of paths in the first time interval, and the sequence number of the result packet is used to indicate a ranking of the result packet generated by the first network node.
Optionally, the sequence number of the result packet corresponding to the measurement result may be understood as a sequence number of measurement performed by the first network node on a corresponding path to obtain a measurement result of the result packet.
Optionally, the first network node receives the first measurement packet at the first moment, and does not send the second result packet at the first moment plus an end moment of the first time interval, but periodically sends the second result packet to the second network node at the first moment plus an end moment of N first time intervals, where N is greater than or equal to 2. For example, as shown in
The offset between the time at which the first network node generates the measurement result packets with the same sequence number may be understood as an offset between time at which the first network node generates the measurement result packets with a same sequence number for different paths. For example, three paths (for example, the path 1, the path 2, and the path 3) are configured between the first network node and the second network node. For the three paths, details are as follows: If the first network node receives the first measurement packet at 1 ms, and the first measurement packet is sent on the path 1, the first network node generates the measurement result packet corresponding to the path 1 for the first time at 1.1 ms and generates the measurement result packet corresponding to the path 1 for the second time at 1.2 ms. If the first network node receives the 1st measurement packet corresponding to the path 3 at 2 ms, the first network node generates the measurement result packet corresponding to the path 3 for the first time at 2.1 ms and generates the measurement result packet corresponding to the path 3 for the second time at 2.2 ms. If the first network node receives the 1st measurement packet corresponding to the path 2 at 3 ms, the first network node generates the measurement result packet corresponding to the path 2 for the first time at 3.1 ms and generates the measurement result packet corresponding to the path 2 for the second time at 3.2 ms. The first time offset may be an offset between time at which the measurement result packet corresponding to the path 1 is generated for the first time, time at which the measurement result packet corresponding to the path 2 is generated for the first time, and time at which the measurement result packet corresponding to the path 3 is generated for the first time. The first time offset may alternatively be an offset between time at which the measurement result packet corresponding to the path 1 is generated for the second time, time at which the measurement result packet corresponding to the path 2 is generated for the second time, and time at which the measurement result packet corresponding to the path 3 is generated for the second time. That is, the first time offset may be 2 ms.
For example,
Optionally, the first result packet includes a first-type result packet and a second-type result packet, or the first result packet includes a second-type result packet. A data field in the first-type result packet indicates a first threshold, and the first threshold is used to indicate that the first network node does not generate a measurement result of a corresponding path in the first time interval. A data field in the second-type result packet indicates data of the corresponding path measured by the first network node in the first time interval.
Optionally, the second result packet includes a first-type result packet and a second-type result packet, or the second result packet includes a second-type result packet. A data field in the first-type result packet indicates a first threshold, and the first threshold is used to indicate that the first network node does not generate a measurement result of a corresponding path in the first time interval. A data field in the second-type result packet indicates data of the corresponding path measured by the first network node in the first time interval.
The first-type result packet may be understood as that the first network node does not generate a measurement result of a corresponding path in a corresponding time interval, and the data field in the first-type result packet indicates the first threshold. The second-type result packet may be understood as that the first network node generates a measurement result of a corresponding path in a corresponding time interval, and the data field in the second-type result packet indicates the data of the corresponding path measured by the first network node in the first time interval.
Optionally, the first threshold may be 0.
When the first threshold is 0, if the data field in the result packet indicates 0, the first network node does not generate the measurement result of the corresponding path in the corresponding time interval; if the data field in the result packet indicates other data, the first network node generates the measurement result of the corresponding path in the corresponding time interval. For example, as shown in
Optionally, in the method 300, step 350 may be further performed.
Step 350: The second network node adjusts bandwidth utilization of each path based on the result packet.
The second network node extracts, based on the result packet, the measurement result that is of each of the plurality of paths and that is in the result packets with the same sequence number. When measurement results corresponding to at least two of the plurality of paths include measurement data, the second network node adjusts bandwidth utilization of a corresponding path based on the measurement results corresponding to the at least two of the plurality of paths.
For example, as shown in
It should be understood that sequence numbers of the foregoing processes do not mean an execution sequence in the embodiments of this application. The execution sequence of the processes should be determined based on functions and internal logic of the processes, and should not be construed as any limitation on the implementation processes of the embodiments of this application.
The foregoing describes in detail the measurement reporting method in the embodiments of this application with reference to
An embodiment of this application provides a network node. The following describes a structure and functions of the network node with reference to
The transmitter 12 is configured to send a first result packet to a second network node, where the first result packet includes a result packet corresponding to a measurement result of each of a plurality of paths in a first time interval, and the first result packet is used to indicate the measurement result of each of the plurality of paths in the first time interval.
The processor 13 and the memory 14 may be combined into a processing apparatus. The processor 13 is configured to execute program code stored in the memory 14, to implement the foregoing functions. During specific implementation, the memory 14 may be integrated into the processor 13, or independent of the processor 13.
It should be understood that the network node 10 may correspond to the first network node in the network measurement reporting method 300 according to the embodiments of the present invention, and the network node 10 may include modules configured to perform the method performed by the first network node in the network measurement reporting method 300 in
An embodiment of this application further provides a network node. The following describes a structure and functions of the network node with reference to
Optionally, the network node 20 may further include a processing module 23.
The receiving module 21, the sending module 22, and the processing module 23 may be implemented by software, or may be implemented by hardware. When the receiving module 21, the sending module 22, and the processing module 23 are implemented by hardware, the receiving module 21 may be the receiver 11 in
An embodiment of this application further provides another network node. The following describes a structure and functions of the network node with reference to
The receiver 31 is configured to receive a first result packet sent by the first network node.
The first result packet includes a result packet corresponding to a measurement result of each of a plurality of paths in a first time interval, and the first result packet is used to indicate the measurement result of each of the plurality of paths in the first time interval.
The processor 33 and the memory 34 may be combined into a processing apparatus. The processor 33 is configured to execute program code stored in the memory 34, to implement the foregoing functions. During specific implementation, the memory 34 may be integrated into the processor 33, or independent of the processor 33.
It should be understood that the network node 30 may correspond to the second network node in the network measurement reporting method 300 according to the embodiments of the present invention, and the network node 30 may include modules configured to perform the method performed by the second network node in the network measurement reporting method 300 in
An embodiment of this application further provides a network node. The following describes a structure and functions of the network node with reference to
The receiving module 41 and the sending module 42 may be implemented by software, or may be implemented by hardware. When the receiving module 41 and the sending module 42 are implemented by hardware, the receiving module 41 may be the receiver 31 in
It should be understood that, the processor in the embodiments of this application may be a central processing unit (central processing unit, CPU). The processor may alternatively be another general-purpose processor, a digital signal processor (digital signal processor, DSP), an application-specific integrated circuit (application-specific integrated circuit, ASIC), a field programmable gate array (field programmable gate array, FPGA) or another programmable logical device, a discrete gate or transistor logical device, a discrete hardware component, or the like. The general-purpose processor may be a microprocessor, or the processor may be any conventional processor or the like.
It should be further understood that the memory in the embodiments of this application may be a volatile memory or a nonvolatile memory, or may include both a volatile memory and a nonvolatile memory. The nonvolatile memory may be a read-only memory (read-only memory, ROM), a programmable read-only memory (programmable ROM, PROM), an erasable programmable read-only memory (erasable PROM, EPROM), an electrically erasable programmable read-only memory (electrically EPROM, EEPROM), or a flash memory. The volatile memory may be a random access memory (random access memory, RAM), used as an external cache. By way of example and not limitation, many forms of random access memory (random access memory, RAM) may be used, for example, a static random access memory (static RAM, SRAM), a dynamic random access memory (DRAM), a synchronous dynamic random access memory (synchronous DRAM, SDRAM), a double data rate synchronous dynamic random access memory (double data rate SDRAM, DDR SDRAM), an enhanced synchronous dynamic random access memory (enhanced SDRAM, ESDRAM), a synchlink dynamic random access memory (synchlink DRAM, SLDRAM), and a direct rambus random access memory (direct rambus RAM, DR RAM).
An embodiment of this application further provides a network system.
It should be understood that the network node 51 may correspond to the first network node in the network measurement reporting method 300 according to the embodiments of the present invention, and the network node 51 may include modules configured to perform the method performed by the first network node in the network measurement reporting method 300 in
All or some of the foregoing embodiments may be implemented by software, hardware, firmware, or any combination thereof. When software is used to implement the embodiments, all or some of the foregoing embodiments may be implemented in a form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded or executed on a computer, all or some of the procedures or functions according to the embodiments of the present invention are generated. The computer may be a general-purpose computer, a dedicated computer, a computer network, or another programmable apparatus. The computer instructions may be stored in a computer-readable storage medium or may be transmitted from a computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from a website, computer, server, or data center to another website, computer, server, or data center in a wired (for example, infrared, radio, or microwave) manner. The computer-readable storage medium may be any usable medium accessible by a computer, or a data storage device, such as a server or a data center, integrating one or more usable media. The usable medium may be a magnetic medium (for example, a floppy disk, a hard disk, or a magnetic tape), an optical medium (for example, a DVD), or a semiconductor medium. The semiconductor medium may be a solid-state drive.
It should be understood that the term “and/or” in this specification describes only an association relationship for describing associated objects and represents that three relationships may exist. For example, A and/or B may indicate the following three cases: Only A exists, both A and B exist, and only B exists. In addition, the character “/” in this specification generally indicates an “or” relationship between the associated objects.
A person of ordinary skill in the art may be aware that units and algorithm steps in the examples described with reference to the embodiments disclosed in this specification can be implemented by electronic hardware or a combination of computer software and electronic hardware. Whether the functions are performed by hardware or software depends on a particular application and a design constraint condition of a technical solution. A person skilled in the art may use a different method to implement the described function for each particular application, but it should not be considered that the implementation goes beyond the scope of this application.
It may be clearly understood by a person skilled in the art that, for the purpose of convenient and brief description, for a detailed working process of the system, apparatus, and unit described above, refer to a corresponding process in the foregoing method embodiments. Details are not described herein again.
In the several embodiments provided in this application, it should be understood that the disclosed system, apparatus, and method may be implemented in other manners. For example, the apparatus embodiment described above is merely an example. For example, division into units is merely logical function division and may be another division manner in an actual implementation. For example, a plurality of units or components may be combined or integrated into another system, or some features may be ignored or not performed. In addition, displayed or discussed mutual couplings or direct couplings or communication connections may be indirect couplings or communication connections using some interfaces, apparatuses, or units, and may have an electrical form, a mechanical form, or another form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located at one position, or may be distributed on a plurality of network units. Some or all of the units may be selected according to an actual requirement to achieve the objectives of the solutions in the embodiments.
In addition, function units in the embodiments of this application may be integrated into one processing unit, or each of the units may exist alone physically, or two or more units may be integrated into one unit.
When the functions are implemented in the form of a software functional unit and sold or used as an independent product, the functions may be stored in a computer-readable storage medium. Based on such an understanding, the technical solutions of this application essentially, or the part contributing to the current technology, or some of the technical solutions may be implemented in a form of a software product. The software product is stored in a storage medium, and includes several instructions for instructing a computer device (which may be a personal computer, a server, a network device, or the like) to perform all or some of the steps of the methods described in the embodiments of this application. The foregoing storage medium includes: any medium that can store program code, such as a USB flash drive, a removable hard disk, a read-only memory (read-only memory, ROM), a random access memory (random access memory, RAM), a magnetic disk, or an optical disc.
The foregoing descriptions are merely specific implementations of this application, but are not intended to limit a protection scope of this application. Any variation or replacement readily figured out by a person skilled in the art within the technical scope disclosed in this application shall fall within the protection scope of this application. Therefore, the protection scope of this application shall be subject to the protection scope of the claims.
Number | Date | Country | Kind |
---|---|---|---|
201910586732.6 | Jul 2019 | CN | national |
This application is a continuation of International Application No. PCT/CN2020/097316, filed on Jun. 22, 2020, which claims priority to Chinese Patent Application No. 201910586732.6, filed on Jul. 1, 2019. The disclosures of the aforementioned applications are hereby incorporated by reference in their entirety.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/CN2020/097316 | Jun 2020 | US |
Child | 17564339 | US |