WO2022007653A1 - 一种端到端路径发现和使用方法及装置 - Google Patents

一种端到端路径发现和使用方法及装置 Download PDF

Info

Publication number
WO2022007653A1
WO2022007653A1 PCT/CN2021/102608 CN2021102608W WO2022007653A1 WO 2022007653 A1 WO2022007653 A1 WO 2022007653A1 CN 2021102608 W CN2021102608 W CN 2021102608W WO 2022007653 A1 WO2022007653 A1 WO 2022007653A1
Authority
WO
WIPO (PCT)
Prior art keywords
discovery request
path discovery
path
request messages
sink device
Prior art date
Application number
PCT/CN2021/102608
Other languages
English (en)
French (fr)
Inventor
王锦
李东锋
程亮
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2022007653A1 publication Critical patent/WO2022007653A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/121Shortest path evaluation by minimising delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/70Routing based on monitoring results

Definitions

  • the present invention relates to the field of communication technologies, and in particular, to an end-to-end path discovery and use method and device.
  • an aggregated flow (all data traffic from the source device to the sink device is called an aggregated flow) can be forwarded from the source device to the sink device through multiple forwarding paths.
  • different services have different requirements for path quality in the network topology. For example, some services (such as games) on terminal devices (mobile phones, computers, or iPads, etc.) require low path delay in the network topology. . If the data traffic is just randomly distributed to different paths, some paths may be congested, reducing the network throughput.
  • the embodiments of the present invention provide an end-to-end path discovery and use method and device, which can share data traffic loads on different paths according to path quality information, so as to improve network throughput.
  • the technical solution is as follows:
  • an embodiment of the present invention provides an end-to-end path discovery and use method, the method is applied to a source device, and the method includes sending M path discovery request messages to the sink device; wherein, different path discovery The request message carries different labels; the label is used as a factor for the path discovery request message and the data message to select the path; the path discovery response message sent by the sink device is received; wherein, the path discovery response message Including path quality information corresponding to at least one label in the M labels; sending a data message to the sink device; wherein, the data message includes a path discovery request message whose path quality information meets the data message quality requirements. Label.
  • the path quality information includes a receiving timestamp when the sink device receives the corresponding path discovery request message
  • the method includes determining the transmission time of the path discovery request message from the source end device to the sink end device according to the sending time stamp and the receiving time stamp of the path discovery request message sent by the source end device.
  • the path quality information includes a receiving timestamp when the sink device receives the corresponding path discovery request message
  • the sending of M path discovery request messages to the sink device includes:
  • the method includes determining the transmission time of the path discovery request message from the source device to the sink device according to the equal time interval and the reception timestamp.
  • the M labels carried in the M path discovery request packets can cover all route selection results.
  • the M path discovery request packets also carry a sequence number
  • the sending the M path discovery request packets to the sink device includes sending the M paths to the sink device in the sequence of the sequence numbers discovery request message
  • the path quality information includes the sequence in which the sink device receives the M path discovery request messages
  • the method further includes judging whether the order is out of order according to the order in which the sink device receives the M path discovery request messages.
  • the M path discovery request packets also carry a sequence number
  • the sending the M path discovery request packets to the sink device includes sending the M paths to the sink device in the sequence of the sequence numbers discovery request message
  • the path quality information includes the sequence in which the sink device receives the M path discovery request messages/reception timestamps and sequence numbers;
  • the method further includes judging whether the order is out of order according to the order in which the M path discovery request messages are received by the sink device/reception timestamp and sequence number.
  • the M path discovery request messages include indication information, and the indication information instructs the source-end device to record its own exit information in the M path discovery request messages, representing the source device.
  • the unique identifier of the end device, the intermediate device records its own ingress information, egress information, and the unique identifier representing the intermediate device in the M path discovery request messages, and the sink device records the M path discovery request messages in the M path discovery request messages It records its own entry information, the unique identifier representing the sink device, and the number of hops after the M path discovery request packets reach the sink device.
  • the method before the sending the data packet to the sink device, the method further includes:
  • the unique identifier representing the source device According to the egress information of the source device, the unique identifier representing the source device, the entry information of the intermediate device, the egress information, the unique identifier representing the intermediate device, the unique identifier representing the intermediate device, the The entry information, the unique identifier representing the sink device, and the number of hops after the M path discovery request messages reach the sink device determine that there are N paths in the network topology.
  • the method further includes:
  • an embodiment of the present invention further provides an end-to-end path discovery and use method, the method is applied to a sink device, and the method includes:
  • the path discovery response message includes path quality information corresponding to at least one label in the M labels
  • the data packet includes a label of a path discovery request packet whose path quality information meets the quality requirements of the data packet.
  • the path discovery request message includes a sending timestamp when the source device sends the path discovery request message
  • the method includes determining the transmission time of the path discovery request message from the source device to the sink device according to the sending time stamp and the receiving time stamp of the sink device receiving the corresponding path discovery request message;
  • the path quality information includes the transmission time.
  • the receiving M path discovery request messages sent by the source device include:
  • the method includes determining the transmission time of the path discovery request message from the source end device to the sink end device according to the equal time interval and the reception timestamp of the corresponding path discovery request message received by the sink end device;
  • the path quality information includes the transmission time.
  • the M labels carried in the M path discovery request packets can cover all route selection results.
  • the M path discovery request packets also carry a sequence number
  • the M path discovery request packets sent by the receiving source device include the M path discovery request packets sent by the receiving source device in the sequence of the sequence numbers. path discovery request messages; the sink device determines whether the M path discovery request messages are out of order according to the order in which the M path discovery request messages are received; the path quality information includes out of order.
  • the M path discovery request packets also carry a sequence number
  • the M path discovery request packets sent by the receiving source device include the M path discovery request packets sent by the receiving source device in the sequence of the sequence numbers. path discovery request messages; the method further includes judging whether the M path discovery request messages are out of order according to the order of receiving the M path discovery request messages/reception timestamps and sequence numbers; the path quality information includes out of order.
  • the M path discovery request messages include indication information, and the indication information instructs the source-end device to record its own exit information in the M path discovery request messages, representing the source device.
  • the unique identifier of the end device, the intermediate device records its own ingress information, egress information, and the unique identifier representing the intermediate device in the M path discovery request messages, and the sink device records the M path discovery request messages in the M path discovery request messages It records its own entry information, the unique identifier representing the sink device, and the number of hops after the M path discovery request packets reach the sink device.
  • the method before the receiving the data packet sent by the source device, the method further includes:
  • the unique identifier representing the source device According to the egress information of the source device, the unique identifier representing the source device, the entry information of the intermediate device, the egress information, the unique identifier representing the intermediate device, the unique identifier representing the intermediate device, the The entry information, the unique identifier representing the sink device, and the number of hops after the M path discovery request messages reach the sink device determine that there are N paths in the network topology.
  • the method further includes:
  • an embodiment of the present invention provides an apparatus for discovering and using an end-to-end path, including at least one processor, where the processor is configured to execute an instruction stored in a memory, so that the source device performs the following steps:
  • the sink device receiving a path discovery response message sent by the sink device; wherein the path discovery response message includes path quality information corresponding to at least one label among the M labels;
  • the sink device Sending a data message to the sink device; wherein the data message includes a label of a path discovery request message whose path quality information meets the data message quality requirements.
  • an embodiment of the present invention further provides an end-to-end path discovery and use apparatus, including at least one processor, where the processor is configured to execute instructions stored in the memory, so that the sink device performs the following steps:
  • the path discovery response message includes path quality information corresponding to at least one label in the M labels
  • the data packet includes a label of a path discovery request packet whose path quality information meets the quality requirements of the data packet.
  • an embodiment of the present invention provides a computer program product containing instructions, when the computer program product runs on a computer, the computer is caused to perform the following steps:
  • the sink device receiving a path discovery response message sent by the sink device; wherein the path discovery response message includes path quality information corresponding to at least one label among the M labels;
  • the sink device Sending a data message to the sink device; wherein the data message includes a label of a path discovery request message whose path quality information meets the data message quality requirements.
  • an embodiment of the present invention further provides a computer program product containing instructions, when the computer program product is run on a computer, the computer is caused to perform the following steps:
  • the path discovery response message includes path quality information corresponding to at least one label in the M labels
  • the data packet includes a label of a path discovery request packet whose path quality information meets the quality requirements of the data packet.
  • an embodiment of the present invention provides a computer-readable storage medium, where a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the following steps are implemented:
  • the sink device receiving a path discovery response message sent by the sink device; wherein the path discovery response message includes path quality information corresponding to at least one label among the M labels;
  • the sink device Sending a data message to the sink device; wherein the data message includes a label of a path discovery request message whose path quality information meets the data message quality requirements.
  • an embodiment of the present invention further provides a computer-readable storage medium, where a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the following steps are implemented:
  • the path discovery response message includes path quality information corresponding to at least one label in the M labels
  • the data packet includes a label of a path discovery request packet whose path quality information meets the quality requirements of the data packet.
  • the source end device sends a path discovery request message carrying different labels to the sink end device; the sink end device sends a path discovery response message including path quality information to the source end device; the source end device; The device sends data packets to the sink device according to the path quality information.
  • the source device can forward the data traffic to different paths according to the path quality information, so as to improve the network throughput.
  • FIG. 1 is each forwarding path of an aggregated flow provided by an embodiment of the present invention
  • FIG. 2 is a schematic diagram of communication between a terminal device and a server according to an embodiment of the present invention
  • FIG. 3 is each forwarding path of an aggregated flow in the presence of a hash polarization phenomenon according to an embodiment of the present invention
  • FIG. 4 is an architectural diagram of a communication network provided by an embodiment of the present invention.
  • FIG. 5 is a schematic diagram of distinguishing different paths in a network topology according to an embodiment of the present invention.
  • FIG. 6 is a schematic flowchart of a method for discovering and using an end-to-end path according to an embodiment of the present invention
  • FIG. 7 is a schematic diagram of determining a path existing in a network topology according to time delay and disorder according to an embodiment of the present invention.
  • FIG. 8 is a network topology diagram of an end-to-end path discovery and usage method provided by an embodiment of the present invention.
  • FIG. 9 is a schematic diagram of an implementation result of an end-to-end path discovery and use method provided by an embodiment of the present invention.
  • FIG. 10 is a network topology diagram of an end-to-end path discovery and usage method for an anycast scenario provided by an embodiment of the present invention.
  • the source device first sends three UDP packets whose TTL fields are all 1 to the sink device.
  • a UDP packet with a value of 1 in the TTL field times out immediately after reaching an intermediate device, that is, the value of the TTL field is decremented by 1 and becomes 0, the UDP packet is no longer sent backwards, and the intermediate device responds to the source device with an ICMP (Internet Control Message Protocol (Internet Control Message Protocol) timeout message; then the source device sends three UDP messages with the TTL field value of 2 to the sink device.
  • ICMP Internet Control Message Protocol (Internet Control Message Protocol) timeout message
  • the sink device After receiving the packet, the sink device will send a response packet to the source device. Since there is no destination port for the application packet on the sink device, the sink device will respond to the ICMP port unreachable message to the source device, indicating that the destination port is unreachable, and at the same time indicating the Tracert (used to test the arrival of UDP packets from the source device) The path traversed by the sink device) is executed. Therefore, the path taken to reach the sink device can be seen from the result displayed by the source device.
  • the maximum TTL value of UDP packets sent by Tracert can be up to 30. If there is no response packet within the specified time, the sender will display timeout. The test fails when reaching the sink device.
  • the above technical solution needs to send UDP packets multiple times to detect the path. To reach 30 hops, it needs to send 30 times at most, and the performance is very low; each detection can only detect a limited number of paths, at most three paths.
  • UDP detection packet sent by Tracert only the port number field affects the hash result, and can only be hashed to three different paths at most. As long as one path is successfully detected, the detection process will end immediately; it is impossible to distinguish between different paths. path quality.
  • the above technical solution cannot identify how many forwarding paths exist from the source device to the sink device in the network topology shown in FIG. 1 .
  • the path quality of different paths cannot be distinguished, and high-quality paths cannot be selected for use by different services.
  • the source device is the mobile phone and the sink device is the server of the game service.
  • the above technical solution cannot select a path with the lowest delay for the game on the mobile phone. business use.
  • the above hash polarization phenomenon refers to the phenomenon that the load sharing is extremely uneven after the data traffic is hashed.
  • the purpose of hashing the data traffic is to hash the data traffic on different paths through hashing, so as to avoid the concentration of data traffic on a certain path and cause the path to be overloaded. If hash polarization occurs, the hashed data traffic may still be concentrated on certain paths.
  • the above technical solution cannot identify the hash polarization phenomenon, and traffic may be forwarded to certain paths in a concentrated manner, causing congestion of several paths. As shown in Figure 3, 10 data flows are aggregated at the source device (Source device) and sent from the sink device (Destination device). There are 3 forwarding paths on the network for this aggregated flow.
  • the embodiments of the present invention provide an end-to-end path discovery and use method, so as to solve the technical problems existing in the above technical solutions.
  • FIG. 4 is an architectural diagram of a communication network provided by an embodiment of the present invention.
  • the communication network may be a communication network supporting a fourth generation (4G) access technology, for example, a long term evolution (LTE) access technology; or, the communication network may also be a communication network supporting a fifth generation ( fifth generation (5G) access technology communication network, for example, new radio (NR) access technology; alternatively, the communication network may also be a communication network supporting third generation (3G) access technology, For example, the universal mobile telecommunications system (UMTS) access technology, the 3rd Generation Partnership Project (3GPP); or the communication network may also be a second generation (2G) access technology.
  • 4G fourth generation
  • LTE long term evolution
  • 5G fifth generation
  • NR new radio
  • 3G third generation
  • UMTS universal mobile telecommunications system
  • 3GPP 3rd Generation Partnership Project
  • 2G second generation
  • a communication network that supports access technologies such as global system for mobile communications (GSM) access technology
  • GSM global system for mobile communications
  • the communication network can also be a communication network that supports multiple wireless technologies, such as communication that supports LTE technology and NR technology The internet.
  • the communication network can also be adapted to future-oriented communication technologies.
  • the source device 401 may be a user equipment (User Equipment, UE), such as a mobile phone, an iPad, or a router, which is not specifically limited in this embodiment of the present invention.
  • the sink device 403 may be a server or a router, which is not specifically limited in this embodiment of the present invention.
  • the communication network includes a source device 401 , an intermediate device 402 and a sink device 403 .
  • the source device 401 , the intermediate device 402 and the sink device 403 communicate with each other.
  • the source device 401 sends M path discovery request messages carrying different tags to the sink device 403; the tags are used as a factor for selecting paths for the path discovery request message and the data message.
  • a path discovery request message carrying tags tag3, tag6, tag9, tag16, and tag25 is sent from the source device 401.
  • the above path discovery request message carrying different labels includes indication information, which is used to instruct the source device 401 to record the exit information of the source device 401 and represent the source device 401 in the path discovery request message carrying different labels. unique identifier. Since the label field in the path discovery request message is different, after hashing this field and other fields, the obtained hash results are different. Therefore, the path discovery request message carrying different labels will choose different paths.
  • the route discovery request message carrying tags tag3 and tag25 will choose to go to the middle device m1, and the route discovery request message carrying the labels tag6, tag9 and tag16 will choose to go to the middle device m2.
  • the indication information included in the path discovery request message will instruct the intermediate device m1 to record the entry information, exit information of m1 and the unique identifier representing m1 in the path discovery request message carrying tags tag3 and tag25;
  • the device m2 records the entry information and exit information of m2 and the unique identifier representing m2 in the path discovery request message carrying tags tag6, tag9 and tag16.
  • a path is selected again to reach the sink device 403 .
  • the path discovery request message carrying the tag tag25 will choose to go to the intermediate device m3.
  • the indication information in the path discovery request message will instruct m3 to record in the path discovery request message carrying the tag tag25.
  • the entry information, exit information of m3 and the unique identifier representing m3; the path discovery request message carrying the tag tag3 will choose to go to the intermediate device m4, and at the same time, the indication information in the path discovery request message will indicate that m4 is in the path carrying the tag tag3.
  • the entry and exit information of m4 and the unique identifier representing m4 are recorded in the discovery request message; the route discovery request message carrying the tag tag9 will choose to go to the intermediate device m5, and the indication information in the route discovery request message will indicate that m5 is in
  • the path discovery request message carrying the tag tag9 records the entry information of m5, the exit information and the unique identifier representing m5; the path discovery request message carrying the tag tag16 will choose to go to the intermediate device m6, and the instructions in the path discovery request message
  • the information will instruct m6 to record the entry information, exit information and the unique identifier of m6 in the path discovery request message carrying the tag16; the path discovery request message carrying the tag tag6 will choose to go to the intermediate device m7, and at the same time, the path
  • the indication information in the discovery request message will instruct m7 to record the entry information of m7, the exit information and the unique identifier representing m7 in the path discovery request message carrying the tag6.
  • all path discovery request messages are sent to the sink device 403, and at the same time, the indication information in the path discovery request message instructs the sink device 403 to record its own entry information, the unique identifier representing the sink device, and each path. The number of hops after the discovery request packet reaches the sink device. It should be noted that, by selecting enough labels, different labels carried in the path discovery request message can cover all route selection results.
  • the above-mentioned related information recorded in determine the paths that exist in the network topology. As shown in Figure 4, it is determined that there are 5 paths in the network topology. In a possible implementation, after it is determined that there are 5 paths in the network topology as shown in Figure 4, if the number of labels in a certain path is greater than the preset number threshold, it is determined that the path has a hash pole phenomenon.
  • the source device, the intermediate device, and the sink device respectively record the source device's exit information, the unique identifier representing the source device, and the entry of each intermediate device in the path discovery request message.
  • the sink device 403 receives each path discovery request message sent by the source device 401 in sequence of serial numbers. After each path discovery request message is received, a path discovery response message is sent to the source device 401 .
  • the source device 401 may send a data message in a targeted manner according to the path quality information included in the path discovery response message, wherein the data message carries the path quality information.
  • the label of the path discovery request packet that meets the quality requirements of the data packet. For example, for a mobile game service that requires a low-latency path, data packets can be sent to a path with a shorter transmission time.
  • the path discovery request packet carries the same label. For another example, for a large number of data packets, the data packets can be forwarded to different idle paths respectively to prevent path congestion. In this case, it is only necessary to make the label carried in the data packets and the path discovery request of the idle path.
  • the tags carried by the packets are the same.
  • the above-mentioned path discovery request message may be sent at certain sending timestamps, or the above-mentioned path discovery request message may be sent at equal time intervals and sent to the sink device 403
  • the path discovery request message includes the above-mentioned sending timestamp.
  • each path discovery request message sent by the source device 401 to the sink device 403 carries a sequence number, and each path discovery request message is sent in the sequence of the sequence numbers. After the path discovery request message reaches the sink device 403, there will be a receiving time stamp corresponding to the above-mentioned sending time stamp or equal time interval.
  • the transmission time of the path discovery request message from the source device 401 to the sink device 403 can be determined according to the above-mentioned sending time stamp or equal time interval and the corresponding receiving time stamp.
  • the path quality information may include transmission time.
  • the sink device judges whether it is out of order according to the sequence of the received path discovery request packets or according to the sequence/reception timestamp and serial number of the received path discovery request packets.
  • the path quality information may include out-of-order information.
  • the path quality information corresponding to at least one of all the tags will be included in the path discovery response packet and sent to the source device 401 .
  • the source end device 401 determines the transmission time from the source end device 401 to the sink end device 403 according to the sending time stamp or equal time interval and the receiving time stamp of the path discovery request message.
  • the order in which the sink device 403 receives the path discovery request message needs to be included in the path quality information and fed back to the source device 401.
  • the order of the path discovery request packets is judged to be out of order; or the order in which the sink device receives the path discovery request packets/reception timestamp and sequence number are included in the path quality information and fed back to the source device 401.
  • the source device The device 401 determines whether the order is out of order according to the order in which the path discovery request message is received by the sink device 403/reception timestamp and serial number.
  • An embodiment of the present invention provides a schematic flowchart of an end-to-end path discovery and usage method as shown in FIG. 6 .
  • the schematic flowchart includes: S601-S606, as follows: S601: The source device sends a message to the sink device. M path discovery request messages; wherein, different path discovery request messages carry different labels; the label is used as a factor for path discovery request messages and data messages to select paths.
  • the source-end device sends M path discovery request messages carrying different labels to the sink-end device. Different labels are used as a factor for path selection for path discovery request packets and data packets.
  • the M labels carried in the M path discovery request packets can cover all route selection results. It should be noted that, in order to traverse all forwarding paths as much as possible, on the source device, a set of continuous tags ⁇ tag1, tag2, . Label is a general term. The specified label is different according to different tunnel types. For example, for SegmentRouting IPv6 tunnel, the label can be flowlabel in ipv6 packets. For IPv4 packets, the label can be the source port number Sport in the UDP packet. The label is a field in the packet. In the forwarding of the packet, this field will be used as a key value of the hash, which affects the hash result of the packet. Path discovery request packets carry these different labels, which will affect the result of the forwarding hash and make the forwarding paths inconsistent. The more scattered the forwarding paths that the path discovery request packets take, the more all forwarding paths can be discovered.
  • a tunnel from a source device to a sink device is called a tunnel, and all data traffic entering this tunnel is called an aggregated flow.
  • path detection is performed based on this tunnel.
  • the source-end device sends M+N path discovery request packets to the sink-end device, wherein the labels of the M route discovery request packets are different, and the labels of the N route discovery request packets are different. Can be the same as M tags.
  • the sink device receives M path discovery request packets sent by the source device.
  • the sink device sends a path discovery response message to the source device, wherein the path discovery response message includes path quality information corresponding to at least one label among the M labels.
  • the sink device after receiving the path discovery request message sent by the source device, the sink device will respond with a path discovery response message to the source device.
  • the source device receives the path discovery response message.
  • the path discovery response message includes path quality information corresponding to at least one label among the M labels.
  • the path quality information includes a receiving timestamp when the sink device receives the corresponding path discovery request message.
  • the transmission time of the path discovery request message from the source end device to the sink end device may be determined according to the sending time stamp of the path discovery request message sent by the source end device and the above receiving time stamp.
  • the transmission time of the path discovery request message from the source device to the sink device may also be determined according to the equal time interval and the above-mentioned reception timestamp.
  • the path quality information includes the sink end device receiving M path discovery request packets or include the order in which the sink device receives M path discovery request packets/reception timestamp and sequence number.
  • the path quality information includes the order in which the sink device receives M path discovery request packets
  • the path quality information includes the order in which the sink device receives M path discovery request packets
  • the sequence/reception timestamp and serial number of the M path discovery request packets whether the order is out of order is determined according to the sequence/reception timestamp and sequence number of the M path discovery request packets received by the sink device. If so, it is determined that the out-of-order path discovery request message and the out-of-order path discovery request message take different paths. Because different paths have different delay times, out-of-order is caused.
  • the labels carried in out-of-order path discovery request packets and the labels carried in out-of-order path discovery request packets are divided into two groups of different paths.
  • the path in order to improve the load sharing effect as much as possible, the path should be refined as much as possible, and the path with the smallest granularity should be refined.
  • the time interval between two path discovery request messages must be greater than the time interval between two path discovery request messages that travel on the same path.
  • the two paths that follow the same path find that the delay of request packets is small, and the two paths that follow different paths find that the delay of request packets is large. If the time interval is within the preset time range, the two path discovery request packets take the same path; otherwise, they take different paths.
  • the jitter time for a router to process a path discovery request message is 800-900us. Detect the time interval between each path discovery request message received. If the error range is less than 10us, it is considered that the path discovery request message travels the same path, otherwise it travels a different path. When the path is busy, the time interval between the arrival of path discovery request packets traveling the same path may be relatively large, that is, the source device detects that the time interval between the receipt of two path discovery request packets traveling the same path is not within the preset time. Within the range, the two path discovery request packets are treated as coming from different paths, and the paths of the two path discovery request packets are automatically corrected after the paths are free.
  • the path discovery request packets t4 and t5 belong to a path
  • the path discovery request packet t3 belongs to a path
  • the path discovery request packets t0 and t1 belong to a path
  • the path discovery request packet t2 is related to the path discovery.
  • the time interval for receiving the request packet t1 is too large (in this embodiment of the present invention, the preset time value is 10us, and the time interval between t2 and t1 is 500us, which is much larger than 10us), although it is not out of order, it is still separate belongs to a path. In this way, we have detected that path1 can be further divided into 4 different paths.
  • the M path discovery request messages in S601 may further include indication information, instructing the source end device to record its own exit information in the M path discovery request messages, representing the source end device’s own exit information.
  • Unique identifier the intermediate device records its own entry information, exit information, and a unique identifier representing the intermediate device in the M path discovery request messages
  • the sink device records its own entry information in the M path discovery request messages , representing the unique identifier of the sink device and the number of hops after M path discovery request packets reach the sink device.
  • the paths existing in the network topology can be determined according to the contents of the above records.
  • the technical solution of the present invention can identify the hash polarization phenomenon in the network topology.
  • the source end device receives the path discovery response message sent by the sink end device.
  • S605 the source device sends a data packet to the sink device; wherein the data packet includes a label of a path discovery request packet whose path quality information meets the data packet quality requirements.
  • the source device sends a data packet to the sink device; wherein, the label of the data packet needs to meet certain requirements, that is, the label of the data packet is a path whose path quality information meets the quality requirements of the data packet Discover the label of the request message.
  • the label of the data packet is a path whose path quality information meets the quality requirements of the data packet Discover the label of the request message.
  • a path with low latency is required to forward data packets.
  • the label carried in the data packet corresponds to the path discovery request packet of the path with low latency. Label.
  • the sink device receives the data packet sent by the source device.
  • M path discovery request messages may be sent to the sink device at equal time intervals.
  • the path discovery request message may carry a sequence number.
  • M path discovery request messages may be sent to the sink device in the sequence of the serial numbers.
  • the technical solution of the present invention requires the joint participation of the control plane and the forwarding plane, takes effect on the forwarding plane, and the functions are implemented on the CPU and np (Network Processor, network processor).
  • the CPU is located on the control plane
  • the np is located on the forwarding plane
  • the forwarding plane also includes the switching network.
  • the control plane is used to deliver configuration, specify the IP addresses of the source device and sink device of the path, and enable/disable the path discovery function.
  • relevant table entries required by the forwarding plane are delivered to the forwarding plane, and the path discovery request message and path discovery response message sent by the forwarding plane are processed.
  • the forwarding plane enables path discovery request packets and data packets to follow the same forwarding path.
  • the device information of the passed device is written into the path discovery request message.
  • the source device, the intermediate device, and the sink device respectively have a control plane and a forwarding plane, and the control plane and the forwarding plane work together.
  • the forwarding plane records the outgoing timestamp and device information in the path discovery request packet.
  • the forwarding plane will send the path discovery request packet with the outgoing timestamp and device information recorded to the control plane.
  • the control plane determines the transmission time of the path discovery request message from the source device to the sink device according to the sending time stamp and the receiving time stamp of the receiving path discovery request message; and determines whether the order is out of order according to the order in which the path discovery request message is received .
  • the transmission time and/or out-of-order information are included in the path quality information and fed back to the source device. It should be noted here that if the transmission time is determined by the sink device, the sending time stamp needs to be recorded in the path discovery request message and sent to the sink device. The sink device determines the transmission time from the source device to the sink device according to the sending time stamp or equal time interval and the receiving time stamp of the receiving path discovery request message. At this time, the path quality information includes the transmission time.
  • the sink device determines whether it is out-of-order according to the order of receiving the path discovery request packets; or determines whether it is out of order according to the order of the received path-discovery request packets/reception timestamp and serial number. .
  • the path quality information includes out-of-order information.
  • FIG. 8 is a network topology diagram of an end-to-end path discovery and usage method according to an embodiment of the present invention.
  • the source device is M2H8
  • the sink device is M2H11
  • service traffic enters from M2H8, and flows from M2H11
  • the Vxlan tunnel is forwarded between M2H8 and M2H11.
  • background traffic enters from port 0 and port 2 of M2H9, and exits from M2H11.
  • FIG. 9 is a schematic diagram of an implementation result of the technical solution of the present invention provided in an embodiment of the present invention.
  • outPort is the source device exit
  • inPort is the sink device entrance
  • Path num refers to the number of labels that take the path.
  • FIG. 10 is a network topology diagram of an end-to-end path discovery and usage method for an anycast scenario provided by an embodiment of the present invention.
  • the anycast scenario that is, the IP addresses of spine1 and spine2 of the servers are the same, and the traffic is sent from the edge node leaf to reach the server.
  • the link between M4 and spine2 carries congested background traffic.
  • the tag is still the port number of the UDP source device.
  • the edge node leaf1 receives the path discovery response message, and organizes the information in the path discovery response message.
  • the path delay is relatively large.
  • the source device After multiple traffic flows into the source leaf1, the source device automatically labels the traffic with tag49153, tag49154, and tag49155 according to the route selection result. After checking the statistics of each port of m3 and m4, it is confirmed that the traffic has indeed taken three different paths. , and the delay is very low, within 1ms. The congested path path4 is deprecated.
  • the embodiment of the present invention provides an end-to-end path discovery and use device, which can be used to perform the following steps:
  • the embodiment of the present invention provides another apparatus for discovering and using an end-to-end path, which can be used to perform the following steps:
  • the source end device sends a path discovery response message; wherein the path discovery response message includes path quality information corresponding to at least one label among the M labels; receives the data message sent by the source end device; wherein the The data packet includes the label of the path discovery request packet whose path quality information meets the quality requirements of the data packet.
  • An embodiment of the present invention provides a computer program product containing instructions, when the computer program product runs on a computer, the computer is caused to perform the following steps:
  • An embodiment of the present invention provides another computer program product containing instructions, when the computer program product runs on a computer, the computer is caused to perform the following steps:
  • the source end device sends a path discovery response message; wherein the path discovery response message includes path quality information corresponding to at least one label among the M labels; receives the data message sent by the source end device; wherein the The data packet includes the label of the path discovery request packet whose path quality information meets the quality requirements of the data packet.
  • An embodiment of the present invention provides a computer-readable storage medium, where a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the following steps are implemented:
  • An embodiment of the present invention provides another computer-readable storage medium, where a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the following steps are implemented:
  • the source end device sends a path discovery response message; wherein the path discovery response message includes path quality information corresponding to at least one label among the M labels; receives the data message sent by the source end device; wherein the The data packet includes the label of the path discovery request packet whose path quality information meets the quality requirements of the data packet.

Landscapes

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

Abstract

本发明实施例公开了一种端到端路径发现和使用方法及装置,方法包括:源端设备向宿端设备发送携带不同标签的M个路径发现请求报文;其中,标签作为路径发现请求报文及数据报文选择路径的一个因子;宿端设备接收到M个路径发现请求报文后,向源端设备发送路径发现响应报文;其中,路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息;源端设备接收到路径发现响应报文后,向宿端设备发送数据报文;其中,数据报文包括路径质量信息符合数据报文质量要求的路径发现请求报文的标签;宿端设备接收数据报文。上述技术方案中的源端设备可以根据接收的路径质量信息将数据流量转发到不同的路径上,以提高网络吞吐量。

Description

一种端到端路径发现和使用方法及装置
本申请要求于2020年07月06日提交中国国家知识产权局、申请号为202010642489.8、申请名称为“一种端到端路径发现和使用方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及通信技术领域,尤其涉及一种端到端路径发现和使用方法及装置。
背景技术
随着通信技术的发展,使用网络的用户越来越多。在当前网络中,为扩展网络带宽、满足高吞吐率等需求、提高网络的灵活性和可用性,需要更好地提升负载分担的效果。
在网络拓扑中,可以通过多条转发路径将聚合流(从源端设备通往宿端设备的所有数据流量称为一条聚合流)从源端设备转发到宿端设备。然而,在当前网络中,不同的业务对于网络拓扑中路径质量有不同的需求,如终端设备(手机、电脑或iPad等)上的部分业务(如游戏)要求网络拓扑中的路径时延较低。如果只是将数据流量随意分担到不同的路径上,可能导致某些路径出现拥塞,降低网络吞吐量。
发明内容
本发明实施例提出一种端到端路径发现和使用方法及装置,可以根据路径质量信息将数据流量负载分担到不同的路径上,以提高网络吞吐量。该技术方案如下:
第一方面,本发明实施例提出一种端到端路径发现和使用方法,该方法应用于源端设备,该方法包括向宿端设备发送M个路径发现请求报文;其中,不同的路径发现请求报文携带不同的标签;所述标签作为路径发现请求报文及数据报文选择路径的一个因子;接收所述宿端设备发送的路径发现响应报文;其中,所述路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息;向所述宿端设备发送数据报文;其中,所述数据报文包括路径质量信息符合数据报文质量要求的路径发现请求报文的标签。
在另一个可能的实现中,所述路径质量信息包括所述宿端设备接收对应路径发现请求报文的接收时间戳;
所述方法包括根据所述源端设备发送路径发现请求报文的发出时间戳和所述接收时间戳确定所述路径发现请求报文从所述源端设备到所述宿端设备的传送时间。
在另一个可能的实现中,所述路径质量信息包括所述宿端设备接收对应路径发现请求报文的接收时间戳;
所述向宿端设备发送M个路径发现请求报文,包括:
以等时间间隔向宿端设备发送M个路径发现请求报文;
所述方法包括根据等时间间隔和所述接收时间戳确定所述路径发现请求报文从所述源端设备到所述宿端设备的传送时间。
在另一个可能的实现中,所述M个路径发现请求报文携带的M个标签能够覆盖所有选路结果。
在另一个可能的实现中,所述M个路径发现请求报文还携带序列号,所述向宿端设备发送M个路径发现请求报文包括按序列号的顺序向宿端设备发送M个路径发现请求报文;
所述路径质量信息包括所述宿端设备接收所述M个路径发现请求报文的顺序;
所述方法还包括根据所述宿端设备接收所述M个路径发现请求报文的顺序判断是否乱序。
在另一个可能的实现中,所述M个路径发现请求报文还携带序列号,所述向宿端设备发送M个路径发现请求报文包括按序列号的顺序向宿端设备发送M个路径发现请求报文;
所述路径质量信息包括所述宿端设备接收所述M个路径发现请求报文的顺序/接收时间戳和序列号;
所述方法还包括根据所述宿端设备接收所述M个路径发现请求报文的顺序/接收时间戳和序列号判断是否乱序。
在另一个可能的实现中,所述M个路径发现请求报文包括指示信息,所述指示信息指示源端设备在所述M个路径发现请求报文中记录下自身的出口信息、代表该源端设备的唯一标识、中间设备在所述M个路径发现请求报文中记录下自身的入口信息、出口信息、代表该中间设备的唯一标识、宿端设备在所述M个路径发现请求报文中记录下自身的入口信息、代表该宿端设备的唯一标识及M个路径发现请求报文到达宿端设备后的跳数。
在另一个可能的实现中,所述向宿端设备发送数据报文之前,所述方法还包括:
根据在M个路径发现请求报文中记录下的源端设备的出口信息、代表该源端设备的唯一标识、中间设备的入口信息、出口信息、代表该中间设备的唯一标识、宿端设备的入口信息、代表该宿端设备的唯一标识及M个路径发现请求报文到达宿端设备后的跳数,确定网络拓扑中存在N条路径。
在另一个可能的实现中,所述确定网络拓扑中存在N条路径之后,所述方法还包括:
若所述网络拓扑中存在标签数量占比大于预设数量阈值的路径,则确定所述网络拓扑中存在哈希极化问题。
第二方面,本发明实施例还提出一种端到端路径发现和使用方法,该方法应用于宿端设备,该方法包括:
接收源端设备发送的M个路径发现请求报文;其中,不同的路径发现请求报文携带不同的标签;所述标签作为路径发现请求报文及数据报文选择路径的一个因子;
向所述源端设备发送路径发现响应报文;其中,所述路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息;
接收所述源端设备发送的数据报文;其中,所述数据报文包括路径质量信息符合数据报文质量要求的路径发现请求报文的标签。
在另一个可能的实现中,所述路径发现请求报文包括所述源端设备发送路径发现请求报文的发出时间戳;
所述方法包括根据所述发出时间戳和所述宿端设备接收对应路径发现请求报文的接收时间戳确定所述路径发现请求报文从源端设备到宿端设备的传送时间;
所述路径质量信息包括所述传送时间。
在另一个可能的实现中,所述接收源端设备发送的M个路径发现请求报文,包括:
接收所述源端设备以等时间间隔发送的M个路径发现请求报文;
所述方法包括根据等时间间隔和所述宿端设备接收对应路径发现请求报文的接收时间戳确定所述路径发现请求报文从源端设备到宿端设备的传送时间;
所述路径质量信息包括所述传送时间。
在另一个可能的实现中,所述M个路径发现请求报文携带的M个标签能够覆盖所有选路结果。
在另一个可能的实现中,所述M个路径发现请求报文还携带序列号,所述接收源端设备发送的M个路径发现请求报文包括接收源端设备按序列号的顺序发送的M个路径发现请求报文;所述宿端设备根据接收所述M个路径发现请求报文的顺序判断是否乱序;所述路径质量信息包括乱序。
在另一个可能的实现中,所述M个路径发现请求报文还携带序列号,所述接收源端设备发送的M个路径发现请求报文包括接收源端设备按序列号的顺序发送的M个路径发现请求报文;所述方法还包括根据接收所述M个路径发现请求报文的顺序/接收时间戳和序列号判断是否乱序;所述路径质量信息包括乱序。
在另一个可能的实现中,所述M个路径发现请求报文包括指示信息,所述指示信息指示源端设备在所述M个路径发现请求报文中记录下自身的出口信息、代表该源端设备的唯一标识、中间设备在所述M个路径发现请求报文中记录下自身的入口信息、出口信息、代表该中间设备的唯一标识、宿端设备在所述M个路径发现请求报文中记录下自身的入口信息、代表该宿端设备的唯一标识及M个路径发现请求报文到达宿端设备后的跳数。
在另一个可能的实现中,所述接收所述源端设备发送的数据报文之前,所述方法还包括:
根据在M个路径发现请求报文中记录下的源端设备的出口信息、代表该源端设备的唯一标识、中间设备的入口信息、出口信息、代表该中间设备的唯一标识、宿端设备的入口信息、代表该宿端设备的唯一标识及M个路径发现请求报文到达宿端设备后的跳数,确定网络拓扑中存在N条路径。
在另一个可能的实现中,所述确定网络拓扑中存在N条路径之后,所述方法还包括:
若所述网络拓扑中存在标签数量占比大于预设数量阈值的路径,则确定所述网络拓扑中存在哈希极化问题。
第三方面,本发明实施例提出一种端到端路径发现和使用装置,包括至少一个处理器,所述处理器用于执行存储器中存储的指令,以使得源端设备执行如下步骤:
向宿端设备发送M个路径发现请求报文;其中,不同的路径发现请求报文携带不同的标签;所述标签作为路径发现请求报文及数据报文选择路径的一个因子;
接收所述宿端设备发送的路径发现响应报文;其中,所述路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息;
向所述宿端设备发送数据报文;其中,所述数据报文包括路径质量信息符合数据报文质量要求的路径发现请求报文的标签。
第四方面,本发明实施例还提出一种端到端路径发现和使用装置,包括至少一个处理器,所述处理器用于执行存储器中存储的指令,以使得宿端设备执行如下步骤:
接收源端设备发送的M个路径发现请求报文;其中,不同的路径发现请求报文携带不同的标签;所述标签作为路径发现请求报文及数据报文选择路径的一个因子;
向所述源端设备发送路径发现响应报文;其中,所述路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息;
接收所述源端设备发送的数据报文;其中,所述数据报文包括路径质量信息符合数据报文质量要求的路径发现请求报文的标签。
第五方面,本发明实施例提出一种包含指令的计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如下步骤:
向宿端设备发送M个路径发现请求报文;其中,不同的路径发现请求报文携带不同的标签;所述标签作为路径发现请求报文及数据报文选择路径的一个因子;
接收所述宿端设备发送的路径发现响应报文;其中,所述路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息;
向所述宿端设备发送数据报文;其中,所述数据报文包括路径质量信息符合数据报文质量要求的路径发现请求报文的标签。
第六方面,本发明实施例还提出一种包含指令的计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如下步骤:
接收源端设备发送的M个路径发现请求报文;其中,不同的路径发现请求报文携带不同的标签;所述标签作为路径发现请求报文及数据报文选择路径的一个因子;
向所述源端设备发送路径发现响应报文;其中,所述路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息;
接收所述源端设备发送的数据报文;其中,所述数据报文包括路径质量信息符合数据报文质量要求的路径发现请求报文的标签。
第七方面,本发明实施例提出一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
向宿端设备发送M个路径发现请求报文;其中,不同的路径发现请求报文携带不 同的标签;所述标签作为路径发现请求报文及数据报文选择路径的一个因子;
接收所述宿端设备发送的路径发现响应报文;其中,所述路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息;
向所述宿端设备发送数据报文;其中,所述数据报文包括路径质量信息符合数据报文质量要求的路径发现请求报文的标签。
第八方面,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
接收源端设备发送的M个路径发现请求报文;其中,不同的路径发现请求报文携带不同的标签;所述标签作为路径发现请求报文及数据报文选择路径的一个因子;
向所述源端设备发送路径发现响应报文;其中,所述路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息;
接收所述源端设备发送的数据报文;其中,所述数据报文包括路径质量信息符合数据报文质量要求的路径发现请求报文的标签。
由上述技术方案可知,本发明实施例源端设备向宿端设备发送携带不同的标签的路径发现请求报文;宿端设备向源端设备发送包括路径质量信息的路径发现响应报文;源端设备根据路径质量信息向宿端设备发送数据报文。这样,源端设备可以根据路径质量信息将数据流量转发到不同的路径上,以提高网络吞吐量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。
图1为本发明实施例提供的聚合流的各条转发路径;
图2为本发明实施例提供的终端设备与服务器之间通信示意图;
图3为本发明实施例提供的存在哈希极化现象的情况下,聚合流的各条转发路径;
图4为本发明实施例提供的通信网络的架构图;
图5为本发明实施例提供的区分出网络拓扑中不同路径的示意图;
图6为本发明实施例提供的一种端到端路径发现和使用方法的流程示意图;
图7为本发明实施例提供的根据时延和乱序确定网络拓扑中存在的路径的示意图;
图8为本发明实施例提供的一种端到端路径发现和使用方法的网络拓扑图;
图9为本发明实施例提供的一种端到端路径发现和使用方法的实施结果示意图;
图10为本发明实施例提供的针对anycast场景的一种端到端路径发现和使用方法的网络拓扑图。
具体实施方式
为了使本发明实施例的目的、技术方案和优点更加清楚,下面结合附图对本发明实施例具体实施方式做进一步的详细描述。
目前,在网络通信中进行数据传输时会从一端向另一端发送数据报文。然而,从一端到另一端究竟有多少条路径却无从得知。更不能得知路径的质量信息,也就不能有针对性地使用这些路径。
在一种可能的实现中,源端设备首先发送3个TTL字段的值都为1的UDP报文给宿端设备。TTL字段的值为1的UDP报文到达某个中间设备后随即超时,即TTL字段的值减1后变为0,UDP报文不再向后发送,中间设备响应源端设备一个ICMP(Internet Control Message Protocol,Internet控制报文协议)的超时报文;然后源端设备再发送3个TTL字段的值都为2的UDP报文给宿端设备。TTL字段的值为2的UDP报文经过某两个中间设备后随即超时,即TTL字段的值减2后变为0,UDP报文不再向后发送,中间设备响应源端设备一个ICMP的超时报文;再然后源端设备再发送3个TTL字段的值都为3的UDP报文给宿端设备。TTL字段的值为3的UDP报文经过某三个中间设备后随即超时,即TTL字段的值减3后变为0,UDP报文不再向后发送,中间设备响应源端设备一个ICMP的超时报文;以此类推,直到源端设备发送的UDP报文到达了宿端设备。
宿端设备接收到报文后,会向源端设备发送响应报文。由于在宿端设备没有应用报文的目的端口,因此,宿端设备会响应ICMP port unreachable信息给源端设备,表示目的端口不可达,同时说明Tracert(用于测试UDP报文从源端设备到达宿端设备所经过的路径)执行完毕。从而可以从源端设备显示的结果中,看到到达宿端设备所经过的路径。
Tracert发送UDP报文的TTL值最大可以到30,每一次发送如果在指定的时间内没有回应报文,在发送端就会显示超时,如果发送30跳的值后,仍然显示为超时,表明无法到达宿端设备,测试失败。
上述技术方案需要多次发送UDP报文探测路径,要达到30跳,最多需要发送30次,性能非常低;每次探测只能探测出有限的路径,最多三条路径。Tracert发送的UDP探测报文,影响哈希结果的只有端口号这一个字段,最多只能哈希到不同的三条路径,而只要有一条路径探测成功,探测过程就立即结束;无法区分不同路径的路径质量。
因此,上述技术方案不能识别出如图1所示的网络拓扑中从源端设备到宿端设备存在多少条转发路径。另一方面,从源端设备到宿端设备的各条转发路径中,不能区分出不同路径的路径质量,也就不能挑选出优质的路径给不同业务使用。比如,对于一个手机的游戏业务而言,如图2所示,其源端设备是手机,宿端设备是该游戏业务的服务器,上述技术方案不能挑选出一条延迟最低的路径给手机上的游戏业务使用。再者,网络中的数据流量经过哈希后,可能会出现负载分担极度不均的现象,即哈希极化现象。上述哈希极化现象是指数据流量经过哈希后出现负载分担极度不均的现象。对数据流量进行哈希,是希望通过哈希,将数据流量散列在不同的路径上,从而避免数据流量在某条路径上集中,导致该条路径负载过重。如果出现了哈希极化现象,就可能导致经过哈希后的数据流量,依然集中承载在某几条路径上。上述技术方案不能识别出哈希极化现象,流量可能集中转发到某几条路径上,造成几条路径拥塞。如图3所示,有10条数据流量在源端设备(Source设备)汇聚,并从宿端设备(Destination 设备)发出,对此聚合流,网络上存在3条转发路径。10条数据流量有7条数据流量从第一条路径转发,2条数据流量从第二条路径转发,1条数据流量从第三条路径转发,导致各条路径负载分担严重不均。即在源端设备对聚合流进行负载分担时出现了哈希极化现象。
本发明实施例提供了一种端到端路径发现和使用方法,用以解决上述技术方案中存在的技术问题。
图4为本发明实施例提供的通信网络的架构图。该通信网络可以是支持第四代(fourth generation,4G)接入技术的通信网络,例如,长期演进(long term evolution,LTE)接入技术;或者,该通信网络也可以是支持第五代(fifth generation,5G)接入技术通信网络,例如,新无线(new radio,NR)接入技术;或者,该通信网络也可以是支持第三代(third generation,3G)接入技术的通信网络,例如,通用移动通信网络(universal mobile telecommunications system,UMTS)接入技术,第三代合作伙伴计划(3rd Generation Partnership Project,3GPP);或者该通信网络也可以是第二代(second generation,2G)接入技术的通信网络,例如全球移动通讯系统(global system for mobile communications,GSM)接入技术;或者,该通信网络还可以是支持多种无线技术的通信网络,例如支持LTE技术和NR技术的通信网络。另外,该通信网络也可以适用于面向未来的通信技术。
源端设备401可以为用户设备(User Equipment,UE),如手机,iPad,也可以为路由器,在本发明实施例中不做具体限定。宿端设备403可以为服务器,也可以为路由器,在本发明实施例中不做具体限定。
如图4所示,该通信网络包括源端设备401、中间设备402和宿端设备403。其中,源端设备401、中间设备402和宿端设备403之间相互通信。源端设备401向宿端设备403发送M个携带不同标签tag的路径发现请求报文;上述标签作为路径发现请求报文及数据报文选择路径的一个因子。
从源端设备401发出携带标签tag3、tag6、tag9、tag16和tag25的路径发现请求报文。其中,上述携带不同标签的路径发现请求报文包括指示信息,用于指示源端设备401在携带不同标签的路径发现请求报文中记录下源端设备401的出口信息以及代表该源端设备401的唯一标识。由于路径发现请求报文中的标签这一字段不同,对这一字段及其他字段进行哈希后,得到的哈希结果不同,因此携带不同标签的路径发现请求报文会选择走不同的路径。携带标签tag3和tag25的路径发现请求报文会选择走中间设备m1,携带标签tag6、tag9和tag16的路径发现请求报文会选择走中间设备m2。与此同时,路径发现请求报文中包括的指示信息会指示中间设备m1在携带标签tag3和tag25的路径发现请求报文中记录下m1的入口信息、出口信息以及代表m1的唯一标识;指示中间设备m2在携带标签tag6、tag9和tag16的路径发现请求报文中记录下m2的入口信息、出口信息以及代表m2的唯一标识。之后,路径发现请求报文经过m1和m2后会再次选择路径,以抵达宿端设备403。根据不同的哈希结果,携带标签tag25的路径发现请求报文会选择走中间设备m3,同时,路径发现请求报文中的指示信息会指示m3在携带标签tag25的路径发现请求报文中记录下m3的入口信息、出口信息及代表m3的唯一标识;携带标签tag3的路径发现请求报文会选择走中间设 备m4,同时,路径发现请求报文中的指示信息会指示m4在携带标签tag3的路径发现请求报文中记录下m4的入口信息、出口信息及代表m4的唯一标识;携带标签tag9的路径发现请求报文会选择走中间设备m5,路径发现请求报文中的指示信息会指示m5在携带标签tag9的路径发现请求报文中记录下m5的入口信息、出口信息及代表m5的唯一标识;携带标签tag16的路径发现请求报文会选择走中间设备m6,路径发现请求报文中的指示信息会指示m6在携带标签tag16的路径发现请求报文中记录下m6的入口信息、出口信息及代表m6的唯一标识;携带标签tag6的路径发现请求报文会选择走中间设备m7,同时,路径发现请求报文中的指示信息会指示m7在携带标签tag6的路径发现请求报文中记录下m7的入口信息、出口信息及代表m7的唯一标识。
最后,所有路径发现请求报文被发送到宿端设备403,同时,路径发现请求报文中的指示信息指示宿端设备403记录下自身的入口信息、代表该宿端设备的唯一标识及各个路径发现请求报文到达宿端设备后的跳数。需要说明的是,通过选择足够多的标签,路径发现请求报文中携带的不同的标签能够覆盖所有选路结果,根据源端设备401、中间设备402和宿端设备403在路径发现请求报文中记录的上述相关信息,确定网络拓扑中存在的路径。如图4所示,确定出网络拓扑中存在5条路径。在一种可能的实现中,在确定出如图4所示的网络拓扑中存在5条路径后,若某条路径中的标签数量大于预设数量阈值,则确定该条路径出现了哈希极化现象。
在此需要说明的是,由于源端设备、中间设备和宿端设备分别在路径发现请求报文中记录下了源端设备的出口信息、代表该源端设备的唯一标识、各中间设备的入口信息、出口信息、代表各中间设备的唯一标识、宿端设备的入口信息、代表该宿端设备的唯一标识以及跳数,因此,根据上述相关信息的任意一种组合即可确定出一条路径。如图5所示,区分出了4条路径,分别为path1、path2、path3和path4,其中,path1和path2只有跳数不同,其余相关信息均相同,而path3和path4经过了不同的中间设备,因此是两条路径。
在一种可能的实现中,宿端设备403按序列号的顺序接收源端设备401发送的各个路径发现请求报文。接收到各个路径发现请求报文后,会向源端设备401发送路径发现响应报文。
源端设备401接收到宿端设备403发送的路径发现响应报文后,可以根据路径发现响应报文中包括的路径质量信息有针对性的发送数据报文,其中,数据报文携带路径质量信息符合数据报文质量要求的路径发现请求报文的标签。例如,对于需要低时延路径的手机游戏业务而言,可以将数据报文发送至传送时间较短的路径,此时,只需要使数据报文携带的标签与走传送时间较短的路径的路径发现请求报文携带的标签相同即可。又如,对于大量的数据报文,可以将数据报文分别转发到不同的空闲路径上,以防发生路径拥塞,此时,只需要使数据报文携带的标签与走空闲路径的路径发现请求报文携带的标签相同即可。
在此需要说明的是,在一种可能的实现中,可以在某些发出时间戳发出上述路径发现请求报文,也可以以等时间间隔发出上述路径发现请求报文,发送到宿端设备403的路径发现请求报文包括上述发出时间戳。在另一种可能的实现中,源端设备401向宿端设备403发送的各个路径发现请求报文携带序列号,并且按序列号的顺序发送各 个路径发现请求报文。路径发现请求报文到达宿端设备403后会有与上述发出时间戳或等时间间隔对应的接收时间戳。根据上述发出时间戳或等时间间隔以及对应的接收时间戳可以确定出路径发现请求报文从源端设备401到宿端设备403的传送时间。此时,路径质量信息可以包括传送时间。此外,宿端设备根据接收到的各个路径发现请求报文的顺序判断是否乱序或根据接收到的各个路径发现请求报文的顺序/接收时间戳和序列号判断是否乱序。此时,路径质量信息可以包括乱序信息。而所有标签中的至少一个标签对应的路径质量信息会包括在路径发现响应报文中,发送到源端设备401。
若是由源端设备401确定传送时间,则无需将发出时间戳记录在路径发现请求报文中发送至宿端设备403。但需要将宿端设备403接收路径发现请求报文的接收时间戳包括在路径质量信息中反馈至源端设备401。此时,源端设备401根据路径发现请求报文的发出时间戳或等时间间隔以及接收时间戳确定从源端设备401到宿端设备403的传送时间。
若是由源端设备401确定乱序,则需要将宿端设备403接收路径发现请求报文的顺序包括在路径质量信息中反馈至源端设备401,此时,源端设备401根据宿端设备接收路径发现请求报文的顺序判断是否乱序;或将宿端设备接收路径发现请求报文的顺序/接收时间戳和序列号包括在路径质量信息中反馈至源端设备401,此时,源端设备401根据宿端设备403接收路径发现请求报文的顺序/接收时间戳和序列号判断是否乱序。
本发明实施例以源端设备、中间设备和宿端设备均为路由器为例进行介绍,其他类型的通信网络与之类似,本申请不再赘述。本发明实施例提供了如图6所示的一种端到端路径发现和使用方法的流程示意图,该流程示意图包括:S601-S606,具体如下所示:S601:源端设备向宿端设备发送M个路径发现请求报文;其中,不同的路径发现请求报文携带不同的标签;所述标签作为路径发现请求报文及数据报文选择路径的一个因子。
在本发明实施例中,源端设备向宿端设备发送携带不同标签的M个路径发现请求报文。不同的标签作为路径发现请求报文及数据报文选择路径的一个因子。
在一种可能的实现中,M个路径发现请求报文携带的M个标签能够覆盖所有选路结果。需要说明的是,为了尽可能遍历所有转发路径,在源端设备,为一个隧道划分一组固定范围的连续标签<tag1,tag2,…tagn>。标签是一个泛指,根据不同的隧道类型,指定的标签不一样,比如对于SegmentRouting IPv6隧道,标签可以是ipv6报文中的flowlabel。对于IPv4报文,标签可以是UDP报文中的源端口号Sport。标签是报文中的一个字段,在报文的转发中,这个字段会被作为哈希的一个key值,影响报文的哈希结果。路径发现请求报文携带这些不同的标签,会影响转发哈希的结果,使其转发路径不一致。路径发现请求报文走的转发路径越分散,就越能发现全部转发路径。
需要说明的是,通常将从一个源端设备到达一个宿端设备称为一个隧道,进入这个隧道的所有数据流量称为一条聚合流。为了保证聚合流在隧道中能够更有效的进行 负载分担,基于此隧道进行路径探测。
在一种可能的实现中,若源端设备向宿端设备发送了M+N个路径发现请求报文,其中,M个路径发现请求报文的标签不同,N个路径发现请求报文的标签可以和M个标签相同。
接下来,S602,宿端设备接收源端设备发送的M个路径发现请求报文。
接下来,S603,宿端设备向源端设备发送路径发现响应报文;其中,所述路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息。
在本发明实施例中,宿端设备接收到源端设备发送的路径发现请求报文后,会向源端设备回应路径发现响应报文。源端设备接收路径发现响应报文。其中,路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息。
在一种可能的实现中,路径质量信息包括宿端设备接收对应路径发现请求报文的接收时间戳。此时,可以根据源端设备发送路径发现请求报文的发出时间戳和上述接收时间戳确定路径发现请求报文从源端设备到宿端设备的传送时间。也可以根据等时间间隔和上述接收时间戳确定路径发现请求报文从源端设备到宿端设备的传送时间。
在一种可能的实现中,在源端设备向宿端设备发送M个路径发现请求报文是按序列号的顺序发送的情况下,路径质量信息包括宿端设备接收M个路径发现请求报文的顺序;或者包括宿端设备接收M个路径发现请求报文的顺序/接收时间戳和序列号。在路径质量信息包括宿端设备接收M个路径发现请求报文的顺序情况下,根据宿端设备接收M个路径发现请求报文的顺序判断是否乱序;在路径质量信息包括宿端设备接收M个路径发现请求报文的顺序/接收时间戳和序列号的情况下,根据宿端设备接收M个路径发现请求报文的顺序/接收时间戳和序列号判断是否乱序。若是,则确定乱序的路径发现请求报文与不乱序的路径发现请求报文走不相同的路径。因为不同的路径延迟时间不一样,所以才会导致乱序。将乱序的路径发现请求报文所携带的标签,与不乱序的路径发现请求报文所携带的标签划分到两组不同的路径。
在一种可能的实现中,为尽可能的提升负载分担效果,要尽量对路径进行细化,细化出最小颗粒度的路径。对于连续的路径发现请求报文,如果走了不同的路径,那么两个路径发现请求报文接收到的时间间隔一定大于走相同路径的两个路径发现请求报文接收到的时间间隔。在路径空闲情况下,走相同路径的两个路径发现请求报文时延小,走不同路径的两个路径发现请求报文时延大,源端设备检测两个路径发现请求报文之间收到的时间间隔,若时间间隔在预设时间范围内,则两个路径发现请求报文走同一条路径,否则,走的是不同路径。在本发明实施例中,一个路由器处理一个路径发现请求报文的抖动时间是800-900us。检测每个路径发现请求报文之间收到的时间间隔,如果在10us以下的误差范围下,就认为路径发现请求报文走的是同一条路径,否则走的是不同的路径。在路径繁忙情况下,走相同路径的路径发现请求报文到达的时间间隔可能会比较大,即源端设备检测到走相同路径的两个路径发现请求报文收到的时间间隔不在预设时间范围内,则将两个路径发现请求报文当做来自不同的路径进行处理,待路径空闲后,自动更正两个路径发现请求报文的路径。如图7所示,路径发现请求报文t4,t5属于一条path,路径发现请求报文t3属于一条path,路径发现请求报文t0,t1属于一条path,路径发现请求报文t2由于与路径发现请求报文t1接 收的时间间隔太大(在本发明实施例中,预设时间取值为10us,而t2与t1接收的时间间隔为500us,远大于10us),虽然不乱序,但仍然单独属于一条path。这样,我们就检测出了path1还可以再划分成不同的4条path。
在一种可能的实现中,S601中的M个路径发现请求报文还可以包括指示信息,指示源端设备在M个路径发现请求报文中记录下自身的出口信息、代表该源端设备的唯一标识、中间设备在M个路径发现请求报文中记录下自身的入口信息、出口信息、代表该中间设备的唯一标识、宿端设备在M个路径发现请求报文中记录下自身的入口信息、代表该宿端设备的唯一标识及M个路径发现请求报文到达宿端设备后的跳数。根据上述记录的内容可以确定网络拓扑中存在的路径。
在一种可能的实现中,源端设备确定出网络拓扑中存在的路径后,若网络拓扑中的任一路径中标签数量占比大于预设数量阈值,则确定网络拓扑中存在哈希极化问题。因此,本发明技术方案可以识别出网络拓扑中的哈希极化现象。
接下来,S604,源端设备接收宿端设备发送的路径发现响应报文。
接下来,S605:源端设备向宿端设备发送数据报文;其中,所述数据报文包括路径质量信息符合数据报文质量要求的路径发现请求报文的标签。
在本发明实施例中,源端设备向宿端设备发送数据报文;其中,数据报文的标签需要满足一定的要求,即数据报文的标签是路径质量信息符合数据报文质量要求的路径发现请求报文的标签。在一个具体的例子中,就手机游戏业务而言,需要时延低的路径进行数据报文的转发,此时,数据报文携带的标签是时延低的路径的路径发现请求报文对应的标签。
接下来,S606,宿端设备接收源端设备发送的数据报文。
在一种可能的实现中,可以以等时间间隔向宿端设备发送M个路径发现请求报文。
在一种可能的实现中,路径发现请求报文可以携带序列号。此时,可以按序列号的顺序向宿端设备发送M个路径发现请求报文。
需要说明的是,本发明技术方案需要控制面与转发面共同参与,在转发面生效,功能在CPU和np(Network Processor,网络处理器)上配套实现。其中,CPU位于控制面,np位于转发面,转发面中还包括交换网。控制面用于下发配置,指定路径的源端设备和宿端设备的IP地址,开启/关闭路径发现功能。同时给转发面下发转发面需要用到的相关表项,处理转发面发送上来的路径发现请求报文和路径发现响应报文。转发面使路径发现请求报文与数据报文走相同的转发路径。同时将所经过的设备的设备信息写入路径发现请求报文中。在本发明实施例中,源端设备、中间设备和宿端设备上分别有控制面和转发面,控制面与转发面协同工作。转发面在路径发现请求报文中记录发出时间戳和设备信息。转发面会将记录有发出时间戳和设备信息的路径发现请求报文发送至控制面。控制面根据发出时间戳及接收路径发现请求报文的接收时间戳确定路径发现请求报文从源端设备到宿端设备的传送时间;以及根据接收路径发现请求报文的顺序,确定是否乱序。并将传送时间和/或乱序信息包括在路径质量信息中反馈至源端设备。在此需要说明的是,若由宿端设备确定传送时间,则需要将发出时间戳记录在路径发现请求报文中发送至宿端设备。宿端设备根据发出时间戳或等时间间隔以及接收路径发现请求报文的接收时间戳确定从源端设备到宿端设备的传送时间。 此时,路径质量信息包括传送时间。此外,若由宿端设备确定乱序,则宿端设备根据接收路径发现请求报文的顺序判断是否乱序;或根据接收路径发现请求报文的顺序/接收时间戳和序列号判断是否乱序。此时,路径质量信息包括乱序信息。
图8为本发明实施例提供的一种端到端路径发现和使用方法的网络拓扑图,如图8所示,源端设备是M2H8,宿端设备是M2H11,业务流量从M2H8进入,从M2H11流出,M2H8到M2H11之间为Vxlan隧道转发。为使得M2H9到M2H11的两条路径拥塞,背景流量从M2H9的0号口和2号口打入,从M2H11出。因为是vxlan隧道转发,所以路径发现请求报文在M2H8到M2H11进行选路时,使用的是IPV4的源端设备IP、宿端设备IP、源端设备端口号、宿端设备端口号以及协议号,进行算法选路。所以将标签定为源端设备端口号。图9为本发明实施例提供的本发明技术方案实施结果示意图。其中,outPort是源端设备出口,inPort是宿端设备入口,Path num指走该路径的标签个数。由图9可以看出,路径中最多有30条流量,最少有7条流量。因此,为了能够提升网络中负载均衡的效果,可以使源端设备出来的流量尽量均衡的分布在不同的路径上。
图10为本发明实施例提供的针对anycast场景的一种端到端路径发现和使用方法的网络拓扑图。如图10所示,针对anycast场景,也就是说,服务器spine1和spine2的ip地址相同,流量从边缘节点leaf发出,要到达服务器。M4到spine2设备之间的链路上承载了拥塞的背景流量。标签依然为UDP的源端设备端口号,本发明技术方案实施结果:边缘节点leaf1收到路径发现响应报文,整理路径发现响应报文中的信息发现:携带标签tag<49153,49157,49161…>走同一条路径path1,且路径延迟为56us;携带标签tag<49154,49158,49163…>走同一条路径path2,且路径延迟为912us;携带标签tag<49155,49159,49162…>走同一条路径path3,且路径延迟为82us;携带标签tag<49156,49160,49164…>走同一条路径path4,且路径延迟为1066376us,此路径延时较大。多个流量进入源leaf1后,源端设备自动根据选路结果,为其这些流量分别打上标签tag49153,tag49154和tag49155,经检测m3,m4各端口统计计数,证实流量确实走了3条不同的路径,且时延非常低,在1ms以内。拥塞路径path4被弃用。
本发明实施例提供了一种端到端路径发现和使用装置,可以用于执行以下步骤:
向宿端设备发送M个路径发现请求报文;其中,不同的路径发现请求报文携带不同的标签;所述标签作为路径发现请求报文及数据报文选择路径的一个因子;接收所述宿端设备发送的路径发现响应报文;其中,所述路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息;向所述宿端设备发送数据报文;其中,所述数据报文包括路径质量信息符合数据报文质量要求的路径发现请求报文的标签。
本发明实施例提供了另一个一种端到端路径发现和使用装置,可以用于执行以下步骤:
接收源端设备发送的M个路径发现请求报文;其中,不同的路径发现请求报文携 带不同的标签;所述标签作为路径发现请求报文及数据报文选择路径的一个因子;向所述源端设备发送路径发现响应报文;其中,所述路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息;接收所述源端设备发送的数据报文;其中,所述数据报文包括路径质量信息符合数据报文质量要求的路径发现请求报文的标签。
本发明实施例提供了一种包含指令的计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行以下步骤:
向宿端设备发送M个路径发现请求报文;其中,不同的路径发现请求报文携带不同的标签;所述标签作为路径发现请求报文及数据报文选择路径的一个因子;接收所述宿端设备发送的路径发现响应报文;其中,所述路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息;向所述宿端设备发送数据报文;其中,所述数据报文包括路径质量信息符合数据报文质量要求的路径发现请求报文的标签。
本发明实施例提供了另一个一种包含指令的计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行以下步骤:
接收源端设备发送的M个路径发现请求报文;其中,不同的路径发现请求报文携带不同的标签;所述标签作为路径发现请求报文及数据报文选择路径的一个因子;向所述源端设备发送路径发现响应报文;其中,所述路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息;接收所述源端设备发送的数据报文;其中,所述数据报文包括路径质量信息符合数据报文质量要求的路径发现请求报文的标签。
本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
向宿端设备发送M个路径发现请求报文;其中,不同的路径发现请求报文携带不同的标签;所述标签作为路径发现请求报文及数据报文选择路径的一个因子;接收所述宿端设备发送的路径发现响应报文;其中,所述路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息;向所述宿端设备发送数据报文;其中,所述数据报文包括路径质量信息符合数据报文质量要求的路径发现请求报文的标签。
本发明实施例提供了另一个一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
接收源端设备发送的M个路径发现请求报文;其中,不同的路径发现请求报文携带不同的标签;所述标签作为路径发现请求报文及数据报文选择路径的一个因子;向所述源端设备发送路径发现响应报文;其中,所述路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息;接收所述源端设备发送的数据报文;其中,所述数据报文包括路径质量信息符合数据报文质量要求的路径发现请求报文的标签。
应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同 替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (24)

  1. 一种端到端路径发现和使用方法,所述方法应用于源端设备,其特征在于,包括:
    向宿端设备发送M个路径发现请求报文;其中,不同的路径发现请求报文携带不同的标签;所述标签作为路径发现请求报文及数据报文选择路径的一个因子;
    接收所述宿端设备发送的路径发现响应报文;其中,所述路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息;
    向所述宿端设备发送数据报文;其中,所述数据报文包括路径质量信息符合数据报文质量要求的路径发现请求报文的标签。
  2. 根据权利要求1所述的方法,其特征在于,所述路径质量信息包括所述宿端设备接收对应路径发现请求报文的接收时间戳;
    所述方法包括根据所述源端设备发送路径发现请求报文的发出时间戳和所述接收时间戳确定所述路径发现请求报文从所述源端设备到所述宿端设备的传送时间。
  3. 根据权利要求1所述的方法,其特征在于,所述路径质量信息包括所述宿端设备接收对应路径发现请求报文的接收时间戳;
    所述向宿端设备发送M个路径发现请求报文,包括:
    以等时间间隔向宿端设备发送M个路径发现请求报文;
    所述方法包括根据等时间间隔和所述接收时间戳确定所述路径发现请求报文从所述源端设备到所述宿端设备的传送时间。
  4. 根据权利要求1所述的方法,其特征在于,所述M个路径发现请求报文携带的M个标签能够覆盖所有选路结果。
  5. 根据权利要求1所述的方法,其特征在于,所述M个路径发现请求报文还携带序列号,所述向宿端设备发送M个路径发现请求报文包括按序列号的顺序向宿端设备发送M个路径发现请求报文;
    所述路径质量信息包括所述宿端设备接收所述M个路径发现请求报文的顺序;
    所述方法还包括根据所述宿端设备接收所述M个路径发现请求报文的顺序判断是否乱序。
  6. 根据权利要求1所述的方法,其特征在于,所述M个路径发现请求报文还携带序列号,所述向宿端设备发送M个路径发现请求报文包括按序列号的顺序向宿端设备发送M个路径发现请求报文;
    所述路径质量信息包括所述宿端设备接收所述M个路径发现请求报文的顺序/接收时间戳和序列号;
    所述方法还包括根据所述宿端设备接收所述M个路径发现请求报文的顺序/接收时间戳和序列号判断是否乱序。
  7. 根据权利要求1所述的方法,其特征在于,所述M个路径发现请求报文包括指示信息,所述指示信息指示源端设备在所述M个路径发现请求报文中记录下自身的出口信息、代表该源端设备的唯一标识、中间设备在所述M个路径发现请求报文中记录下自身的入口信息、出口信息、代表该中间设备的唯一标识、宿端设备在所述M个路径发现请求报文中记录下自身的入口信息、代表该宿端设备的唯一标识及M个路径发 现请求报文到达宿端设备后的跳数。
  8. 根据权利要求7所述的方法,其特征在于,所述向宿端设备发送数据报文之前,所述方法还包括:
    根据在M个路径发现请求报文中记录下的源端设备的出口信息、代表该源端设备的唯一标识、中间设备的入口信息、出口信息、代表该中间设备的唯一标识、宿端设备的入口信息、代表该宿端设备的唯一标识及M个路径发现请求报文到达宿端设备后的跳数,确定网络拓扑中存在N条路径。
  9. 根据权利要求8所述的方法,其特征在于,所述确定网络拓扑中存在N条路径之后,所述方法还包括:
    若所述网络拓扑中存在标签数量占比大于预设数量阈值的路径,则确定所述网络拓扑中存在哈希极化问题。
  10. 一种端到端路径发现和使用方法,所述方法应用于宿端设备,其特征在于,包括:
    接收源端设备发送的M个路径发现请求报文;其中,不同的路径发现请求报文携带不同的标签;所述标签作为路径发现请求报文及数据报文选择路径的一个因子;
    向所述源端设备发送路径发现响应报文;其中,所述路径发现响应报文包括M个标签中的至少一个标签对应的路径质量信息;
    接收所述源端设备发送的数据报文;其中,所述数据报文包括路径质量信息符合数据报文质量要求的路径发现请求报文的标签。
  11. 根据权利要求10所述的方法,其特征在于,所述路径发现请求报文包括所述源端设备发送路径发现请求报文的发出时间戳;
    所述方法包括根据所述发出时间戳和所述宿端设备接收对应路径发现请求报文的接收时间戳确定所述路径发现请求报文从源端设备到宿端设备的传送时间;
    所述路径质量信息包括所述传送时间。
  12. 根据权利要求10所述的方法,其特征在于,所述接收源端设备发送的M个路径发现请求报文,包括:
    接收所述源端设备以等时间间隔发送的M个路径发现请求报文;
    所述方法包括根据等时间间隔和所述宿端设备接收对应路径发现请求报文的接收时间戳确定所述路径发现请求报文从源端设备到宿端设备的传送时间;
    所述路径质量信息包括所述传送时间。
  13. 根据权利要求10所述的方法,其特征在于,所述M个路径发现请求报文携带的M个标签能够覆盖所有选路结果。
  14. 根据权利要求10所述的方法,其特征在于,所述M个路径发现请求报文还携带序列号,所述接收源端设备发送的M个路径发现请求报文包括接收源端设备按序列号的顺序发送的M个路径发现请求报文;所述宿端设备根据接收所述M个路径发现请求报文的顺序判断是否乱序;所述路径质量信息包括乱序信息。
  15. 根据权利要求10所述的方法,其特征在于,所述M个路径发现请求报文还携带序列号,所述接收源端设备发送的M个路径发现请求报文包括接收源端设备按序列 号的顺序发送的M个路径发现请求报文;所述方法还包括根据接收所述M个路径发现请求报文的顺序/接收时间戳和序列号判断是否乱序;所述路径质量信息包括乱序信息。
  16. 根据权利要求10所述的方法,其特征在于,所述M个路径发现请求报文包括指示信息,所述指示信息指示源端设备在所述M个路径发现请求报文中记录下自身的出口信息、代表该源端设备的唯一标识、中间设备在所述M个路径发现请求报文中记录下自身的入口信息、出口信息、代表该中间设备的唯一标识、宿端设备在所述M个路径发现请求报文中记录下自身的入口信息、代表该宿端设备的唯一标识及M个路径发现请求报文到达宿端设备后的跳数。
  17. 根据权利要求16所述的方法,其特征在于,所述接收所述源端设备发送的数据报文之前,所述方法还包括:
    根据在M个路径发现请求报文中记录下的源端设备的出口信息、代表该源端设备的唯一标识、中间设备的入口信息、出口信息、代表该中间设备的唯一标识、宿端设备的入口信息、代表该宿端设备的唯一标识及M个路径发现请求报文到达宿端设备后的跳数,确定网络拓扑中存在N条路径。
  18. 根据权利要求17所述的方法,其特征在于,所述确定网络拓扑中存在N条路径之后,所述方法还包括:
    若所述网络拓扑中存在标签数量占比大于预设数量阈值的路径,则确定所述网络拓扑中存在哈希极化问题。
  19. 一种端到端路径发现和使用装置,其特征在于,包括至少一个处理器,所述处理器用于执行存储器中存储的指令,以使得源端设备执行如权利要求1-9任一所述的方法。
  20. 一种端到端路径发现和使用装置,其特征在于,包括至少一个处理器,所述处理器用于执行存储器中存储的指令,以使得宿端设备执行如权利要求10-18任一所述的方法。
  21. 一种包含指令的计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如权利要求1-9任一所述的方法。
  22. 一种包含指令的计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如权利要求10-18任一所述的方法。
  23. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-9任一所述的方法。
  24. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求10-18任一所述的方法。
PCT/CN2021/102608 2020-07-06 2021-06-28 一种端到端路径发现和使用方法及装置 WO2022007653A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010642489.8A CN113973078A (zh) 2020-07-06 2020-07-06 一种端到端路径发现和使用方法及装置
CN202010642489.8 2020-07-06

Publications (1)

Publication Number Publication Date
WO2022007653A1 true WO2022007653A1 (zh) 2022-01-13

Family

ID=79553629

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/102608 WO2022007653A1 (zh) 2020-07-06 2021-06-28 一种端到端路径发现和使用方法及装置

Country Status (2)

Country Link
CN (1) CN113973078A (zh)
WO (1) WO2022007653A1 (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101228739A (zh) * 2005-07-19 2008-07-23 思科技术公司 Mpls-te域间策略和qos的动态实施
CN102571601A (zh) * 2012-02-13 2012-07-11 中兴通讯股份有限公司 一种保证双向转发检测可靠性的方法及标记交换路径设备
US20150146536A1 (en) * 2013-11-25 2015-05-28 Juniper Networks, Inc. Automatic traffic mapping for multi-protocol label switching networks
CN108924054A (zh) * 2018-06-27 2018-11-30 中国人民解放军国防科技大学 一种多优先级的跨域资源预约集成服务保障方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101228739A (zh) * 2005-07-19 2008-07-23 思科技术公司 Mpls-te域间策略和qos的动态实施
CN102571601A (zh) * 2012-02-13 2012-07-11 中兴通讯股份有限公司 一种保证双向转发检测可靠性的方法及标记交换路径设备
US20150146536A1 (en) * 2013-11-25 2015-05-28 Juniper Networks, Inc. Automatic traffic mapping for multi-protocol label switching networks
CN108924054A (zh) * 2018-06-27 2018-11-30 中国人民解放军国防科技大学 一种多优先级的跨域资源预约集成服务保障方法

Also Published As

Publication number Publication date
CN113973078A (zh) 2022-01-25

Similar Documents

Publication Publication Date Title
US10554538B2 (en) Dynamic link state routing protocol
US11405295B2 (en) Scalable distributed end-to-end performance delay measurement for segment routing policies
US8949413B2 (en) Filter selection and resuse
US7539133B2 (en) Method and apparatus for preventing congestion in load-balancing networks
US8599685B2 (en) Snooping of on-path IP reservation protocols for layer 2 nodes
CN109547343B (zh) 一种流量调度方法及系统
EP3148124B1 (en) System and method for eliminating undetected interest looping in information-centric networks
US9641420B1 (en) Methods and apparatus for assessing the quality of a data path including both layer-2 and layer-3 devices
US10771363B2 (en) Devices for analyzing and mitigating dropped packets
US8774130B2 (en) Access point, L2 switch and method of supporting multicast handover using the access point and L2 switch
JP7313480B2 (ja) スライスベースネットワークにおける輻輳回避
US10333790B2 (en) Method and system for selective route download in network devices
WO2021227561A1 (zh) 通信方法和装置
WO2021017578A1 (zh) 报文发送方法、装置及存储介质
WO2022127475A1 (zh) 数据传输方法、装置、电子设备及存储介质
CN114071494A (zh) 通信方法和装置
US20230300051A1 (en) In-band Edge-to-Edge Round-Trip Time Measurement
WO2022253084A1 (zh) 路径保护方法、节点设备、控制器及存储介质
CN113612698A (zh) 一种数据包发送方法及装置
WO2022007653A1 (zh) 一种端到端路径发现和使用方法及装置
Matsuzono et al. NMRTS: Content name-based mobile real-time streaming
US20240214292A1 (en) Multicast tracing in hybrid networks
TWI821882B (zh) 丟包率的檢測方法、通信裝置及通信系統
US10887122B1 (en) Dynamically providing traffic via various packet forwarding techniques
WO2024087688A1 (zh) 报文转发方法、装置、设备、存储介质及计算机程序

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21838922

Country of ref document: EP

Kind code of ref document: A1