WO2017035763A1 - 一种IPv6网络中数据报文的发送方法及装置 - Google Patents

一种IPv6网络中数据报文的发送方法及装置 Download PDF

Info

Publication number
WO2017035763A1
WO2017035763A1 PCT/CN2015/088693 CN2015088693W WO2017035763A1 WO 2017035763 A1 WO2017035763 A1 WO 2017035763A1 CN 2015088693 W CN2015088693 W CN 2015088693W WO 2017035763 A1 WO2017035763 A1 WO 2017035763A1
Authority
WO
WIPO (PCT)
Prior art keywords
path
packet
pmtu
mtu
sent
Prior art date
Application number
PCT/CN2015/088693
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 华为技术有限公司
Priority to JP2018510989A priority Critical patent/JP6918784B2/ja
Priority to PCT/CN2015/088693 priority patent/WO2017035763A1/zh
Priority to EP21164782.1A priority patent/EP3905618A3/en
Priority to KR1020187008348A priority patent/KR102063231B1/ko
Priority to EP15902570.9A priority patent/EP3331205B1/en
Priority to CN202110543462.8A priority patent/CN113411260B/zh
Priority to CN201580082763.8A priority patent/CN107925629B/zh
Publication of WO2017035763A1 publication Critical patent/WO2017035763A1/zh
Priority to US15/906,680 priority patent/US10541899B2/en
Priority to US16/723,581 priority patent/US11477106B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/12Network monitoring probes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/741Routing in networks with a plurality of addressing schemes, e.g. with both IPv4 and IPv6
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/36Flow control; Congestion control by determining packet size, e.g. maximum transfer unit [MTU]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/36Flow control; Congestion control by determining packet size, e.g. maximum transfer unit [MTU]
    • H04L47/365Dynamic adaptation of the packet size
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/166IP fragmentation; TCP segmentation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/06Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
    • H04W28/065Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information using assembly or disassembly of packets

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to a method and an apparatus for transmitting data packets in an IPv6 network.
  • IPv6 In the Internet Protocol version 6, IPv6 network, in order to improve the forwarding efficiency of network devices, intermediate devices such as routers no longer have a fragmentation function. For the maximum transmission unit beyond the interface of the device (Maximum Transmission, The MTU data packet is discarded directly.
  • the fragment reassembly function of the data packet can only be performed on the host (HOST) node of the sender. In other words, only the HOST node on the sender can fragment the data message. Therefore, the HOST node of the transmitting end needs to perform Path Max Transmission Unit (PMTU) detection of the path to determine the length of the transmitted data message.
  • PMTU Path Max Transmission Unit
  • a current data packet transmission process is shown in FIG. 1.
  • the HOST node on the sending end uses an outbound interface to send data packets, and the pre-configured MTU is 1500 bytes.
  • ICMP internet control message protocol
  • the length of the transmitted data packet may exceed the length of the MTU supported by the interface of the network device on the path, and the data packet is not detected before the PMTU of the path is sent by the data packet sending end. Has been discarded.
  • the embodiment of the present invention provides a method and a device for transmitting a data packet in an IPv6 network, which are used to solve the data message before the PMTU of the path is not detected on the sending end of the data packet in the current IPv6 network. A problem that may have been discarded.
  • an embodiment of the present invention provides an Internet Protocol version 6, IPv6, and a method for sending a data packet in a network, including:
  • the data message is sent on the path according to the minimum MTU specified by the IPv6 protocol;
  • the subsequent data packet is sent on the path according to the PMTU that detects the path.
  • the method before sending the data packet on the path according to the minimum MTU specified by the IPv6 protocol, the method further includes:
  • the maximum transmission unit PMTU is unknown
  • the data packet to be sent is a data packet sent by the current host HOST for the first time on the path;
  • the current HOST is detecting the PMTU of the path
  • the current HOST receives an indication message sent by the network device on the path, where the indication message is used to indicate that the network device receives the packet on the path that is too long.
  • performing PMTU detection of the path includes:
  • the maximum MTU used in the probe packet received by the destination receiving end is used as the detected PMTU of the path.
  • the first operation is repeatedly performed until the detection packet is received by the destination receiving end of the data packet to be sent, or the N consecutive detection packets are not received. Determining the message and determining that the probe message is received by the destination receiving end, where N is a positive integer;
  • the first operation includes: obtaining, from the indication message, for the network device The MTU is sent, and the probe packet is sent again according to the obtained MTU;
  • the maximum MTU used in the probe packet received by the destination receiving end is used as the detected path. PMTU.
  • performing the PMTU detection of the path includes:
  • the second operation is repeatedly performed until the indication message is received or the The probe packet is received by the destination receiving end;
  • the second operation includes: setting a first MTU, and sending the probe message by using the set first MTU, where
  • the length of the first MTU is not less than the length of the minimum MTU specified by the IPv6 protocol
  • the length of the first MTU is not greater than the length of the second MTU and the length of the third MTU, and the minimum of the MTUs indicated in the received indication message;
  • the length of the first MTU is not greater than a smaller of a length of the second MTU and a length of the third MTU;
  • the second MTU is the MTU configured for the specific interface on the current HOST;
  • the third MTU is the MTU indicated in the route advertisement RA message received by the current HOST from the specific interface;
  • the specific interface is the current HOST Sending the outbound interface used by the data packet to be sent;
  • the destination receiving end receives the used packet The maximum MTU as the PMTU of the detected path;
  • the first operation is repeated, until the detection message is received by the destination receiving end of the data message to be sent, or The steps of not receiving the indication message and not receiving the detection message received by the destination receiving end are not received.
  • the probe packet is a transport layer protocol packet, and the destination port number of the probe packet is a port number that is not used by the destination receiving end; performing PMTU detection on the path includes: sending the path on the path After receiving the probe packet, if the peer unreachable packet is received, it is determined that the probe packet is received by the destination receiving end; or
  • the probe packet is a ping packet, and the PMTU detection of the path is performed. After the probe packet is sent on the path, if the response of the destination receiver is received, the probe packet is determined. Received by the destination receiving end; or
  • the probe packet is a trace route packet, and the PMTU detection of the path is performed. After the probe packet is sent on the path, if the response of the receiver is received, the probe is determined. The message is received by the destination receiving end; or
  • the probe packet is a protocol packet on the transport layer, and performs PMTU detection on the path, including: after sending the probe packet on the path, if the destination receiver receives the current and returned The HOST pre-agreed in response to the response message of the probe message, determining that the probe message is received by the destination receiving end.
  • a sixth possible implementation manner when the data packet to be sent is a data packet sent by the current host HOST for the first time on the path, or When the PMTU entry of the path on the current HOST has been deleted, it is determined that the PMTU of the path is unknown;
  • Performing the PMTU detection of the path including: sending the first detection packet according to the smaller MTU of the second MTU and the third MTU;
  • the second MTU is the configured MTU of the specific interface on the current HOST; the third MTU is the MTU indicated in the route advertisement RA message received by the current HOST from the specific interface; the specific interface The outbound interface used to send the data packet to be sent on the current HOST.
  • a seventh possible implementation When the current HOST is detecting the PMTU of the path, determining that the PMTU of the path is unknown;
  • Performing PMTU detection of the path includes continuing PMTU detection of the path that has been performed.
  • Performing the PMTU detection of the path including: the MTU supported by the network device obtained from the indication message, and the first one of the detection messages in the PMTU detection process of the path that is sent according to the acquired MTU .
  • the embodiment of the present invention provides an Internet Protocol version 6, IPv6, a data packet sending apparatus in a network, including: a processing unit and a transceiver unit;
  • the processing unit is configured to send a data packet on the path by using the transceiver unit according to a minimum MTU specified by the IPv6 protocol before the PMTU of the path is not detected;
  • the transceiver unit After detecting the PMTU of the path, according to the PMTU that detects the path, the transceiver unit sends a subsequent data packet on the path.
  • the processing unit is further configured to determine, by using the minimum MTU specified by the IPv6 protocol, that the path of the path used by the data packet to be sent is the largest before the sending and receiving unit sends the data packet on the path.
  • the transmission unit PMTU is unknown; according to the minimum maximum transmission unit (MTU) specified by the IPv6 protocol, the data packet to be transmitted is sent by the transceiver unit, and the PMTU detection of the path is performed.
  • MTU minimum maximum transmission unit
  • the processing unit is specifically configured to determine that the PMTU of the path is unknown when at least one of the following conditions is met:
  • the data packet to be sent is a data packet that is sent by the HOST for the first time on the path;
  • the HOST is detecting the PMTU of the path
  • the transceiver unit receives an indication message sent by the network device on the path, where the indication message is used to indicate that the network device receives the packet on the path that is too long.
  • the processing unit is specifically configured to:
  • the maximum MTU used in the probe packet received by the destination receiving end is used as the detected PMTU of the path.
  • the processing unit is further configured to: determine whether the sent probe packet is sent by the data packet to be sent After receiving the destination,
  • the first operation is repeatedly performed until the detection packet is received by the destination receiving end of the data packet to be sent, or the N consecutive detection packets are not received. Determining the message and determining that the probe message is received by the destination receiving end, where N is a positive integer;
  • the first operation includes: acquiring, by the indication message, an MTU that is supported by the network device, and sending the probe packet by the transceiver unit according to the acquired MTU;
  • the maximum MTU used in the probe packet received by the destination receiving end is used as the detected path. PMTU.
  • the processing unit is specifically configured to:
  • the second operation is repeatedly performed until the transceiver unit Receiving the indication message or the probe message is received by the destination receiving end;
  • the second operation includes: setting a first MTU, and sending the probe message by using the first MTU that is set by the transceiver unit, where the length of the first MTU is not less than a minimum MTU specified by an IPv6 protocol. Length, and
  • the length of the first MTU is not greater than the length of the second MTU and the length of the third MTU, and the minimum of the MTUs indicated in the received indication message;
  • the length of the first MTU is not greater than a smaller of a length of the second MTU and a length of the third MTU;
  • the second MTU is an MTU configured for a specific interface on the current HOST;
  • the third MTU is an MTU indicated by a route advertisement RA message received by the transceiver unit from the specific interface;
  • the specific interface is Transceiver unit sends an outbound interface used by the data packet to be sent;
  • the destination receiving end receives the used packet The maximum MTU as the PMTU of the detected path;
  • the first operation is repeated, until the detection message is received by the destination receiving end of the data message to be sent, or The steps of not receiving the indication message and not receiving the detection message received by the destination receiving end are not received.
  • the detection packet is a transport layer protocol packet, and the destination port number of the probe packet is a port number that is not used by the destination receiving end; the processing unit is specifically configured to: in the path of the transceiver unit After the sending of the probe message, if the transceiver unit receives the peer unreachable message, it is determined that the probe message is received by the destination receiver; or
  • the detecting packet is a ping packet
  • the processing unit is specifically configured to: after the sending and receiving unit sends the detecting packet on the path, if the response of the destination receiving end is received, determining the The probe message is received by the destination receiver; or
  • the detecting message is a trace route trace route message
  • the processing unit is specifically configured to: after the sending and receiving unit sends the probe message on the path, if the transceiver unit receives the receiving end Responding to determining that the probe message is received by the destination receiver; or
  • the detecting packet is a protocol packet on the transport layer
  • the processing unit is specifically configured to: after the sending and receiving unit sends the probe packet on the path, if the transceiver unit receives the And determining, by the destination receiving end, the response packet that is in advance of the current HOST and responding to the detection packet, determining that the detection packet is received by the destination receiving end.
  • a sixth possible implementation manner when the data packet to be sent is a data packet sent by the current host HOST for the first time on the path, or When the PMTU entry of the path on the current HOST has been deleted, it is determined that the PMTU of the path is unknown;
  • the transceiver unit is configured to: send, according to the MTU with a smaller length of the second MTU and the third MTU, the first detection packet by using the transceiver unit;
  • the second MTU is a configured MTU of a specific interface on the HOST;
  • the third MTU is an MTU indicated by a route advertisement RA message received by the transceiver unit from the specific interface;
  • the specific interface is an outbound interface used by the transceiver unit to send the data packet to be sent.
  • the processing unit is specifically configured to: when the PMTU of the path is being probed, determine that the PMTU of the path is unknown;
  • the processing unit is specifically configured to: continue PMTU detection of the path that has been performed.
  • the processing unit is specifically configured to: when the transceiver unit receives the indication sent by the network device on the path When the message is determined, it is determined that the PMTU of the path is unknown;
  • the processing unit is specifically configured to: obtain, according to the MTU supported by the network device, the first one of the PMTU detection processes of the path that is sent by the sending and receiving unit according to the obtained MTU Probe packets.
  • the embodiment of the present invention provides a host HOST in an IPv6 network, including the apparatus provided by the second aspect, or any possible implementation manner of the second aspect.
  • an embodiment of the present invention provides an Internet Protocol version 6, IPv6, a data packet sending apparatus in a network, including: a processor and a transceiver;
  • the transceiver is configured to implement the receiving and the receiving in the method under the control of the processor / or send.
  • an embodiment of the present invention provides a host HOST in an IPv6 network, including the apparatus provided in the fourth aspect.
  • the HOST node in the IPv6 network sends a data packet on the path according to the minimum MTU specified by the IPv6 protocol before detecting the PMTU of the path; after detecting the PMTU of the path, according to the PMTU of the path The PMTU that detected the path sends subsequent data packets on the path.
  • the minimum MTU Since the minimum MTU is used to send data packets using the minimum MTU specified by the IPv6 protocol before the PMTU of the path is detected, the minimum MTU can ensure that the data packets can pass through the network device with any MTU on the path, such as a router, thus ensuring the path.
  • the transmitted data message can be received by the destination receiver.
  • FIG. 1 is a schematic diagram of a method for PMTU detection in an IPv6 network
  • 2A is a schematic diagram of a possible transmission path of a data packet in an IPv6 network
  • 2B is a flowchart of a method for sending a data packet according to an embodiment of the present invention
  • FIG. 3 is a schematic diagram of an optional PMTU detection process according to an embodiment of the present invention.
  • FIG. 4 is a schematic diagram of a possible implementation manner of an internal implementation of a HOST node according to an embodiment of the present invention
  • FIG. 5A is a schematic diagram of a simple networking scenario of IPv6
  • FIG. 5B and FIG. 5C are schematic diagrams of a scenario in which a layer 2 switch exists in a path
  • FIG. 6 is a schematic structural diagram of a device for sending a data packet according to an embodiment of the present invention.
  • FIG. 7 is a schematic structural diagram of another apparatus for sending data packets according to an embodiment of the present invention.
  • the embodiment of the invention provides a method and a device for transmitting a data packet in an IPv6 network, which are used to solve the problem that the data packet may be discarded until the PMTU of the path is not detected at the sending end of the data packet.
  • the problem is not a problem that the data packet may be discarded until the PMTU of the path is not detected at the sending end of the data packet.
  • the HOST node in the IPv6 network sends a data packet on the path according to the minimum MTU specified by the IPv6 protocol before detecting the PMTU of the path; after detecting the PMTU of the path, according to the PMTU of the path The PMTU that detected the path sends subsequent data packets on the path.
  • the minimum MTU Since the minimum MTU is used to send data packets using the minimum MTU specified by the IPv6 protocol before the PMTU of the path is detected, the minimum MTU can ensure that the data packets can pass through the network device with any MTU on the path, such as a router, thus ensuring the path.
  • the transmitted data message can be received by the destination receiver.
  • the data packet is transmitted in the IPv6 network.
  • the data packet is sent from the HOST node 201 of the transmitting end, passes through the intermediate network device 202a, the network device 202b, and the like, and finally reaches the HOST node 203 of the destination receiving end.
  • the intermediate network device 202a the network device 202b, and the like
  • the HOST node 203 the destination receiving end.
  • FIG. 2A Although more than two intermediate network devices are shown in FIG. 2A, there may actually be only one, intermediate network device, or no intermediate network device.
  • a method for sending a data packet includes the following steps:
  • the method further includes: after detecting the PMTU of the path, sending, by the PMTU that detects the path, a subsequent data packet on the path.
  • the method before sending the data packet on the path according to the minimum MTU specified by the IPv6 protocol, the method further includes:
  • the data message to be sent is sent, and the PMTU detection of the path shown in FIG. 3 is performed.
  • the minimum MTU Since the minimum MTU is used to send data packets using the minimum MTU specified by the IPv6 protocol before the PMTU of the path is detected, the minimum MTU can ensure that the data packets can pass through the network device with any MTU on the path, such as a router, thus ensuring the path.
  • the transmitted data message can be received by the destination receiver.
  • the HOST node 201 and the HOST node 203 can be any device that can send and receive data messages in an IPv6 network, such as a personal computer, a base station, a core network, and a mobile terminal.
  • the HOST node 201 may determine that the PMTU of the path is unknown when at least one of the following conditions is met:
  • Condition 1 The PMTU entry of the path on the HOST node 201 has been deleted (such as the Final state in Figure 4). For example, the PMTU entry is deleted after being used for a long time after aging.
  • the HOST node 201 is detecting the PMTU of the path (such as the Probe state in FIG. 4);
  • the HOST node 201 receives an indication message sent by the network device (for example, the network device 202a) on the path, where the indication message is used to indicate that the network device receives a long message on the path, for example, the foregoing
  • the HOST node 201 when performing the PMTU detection of the path, the HOST node 201 may be specifically implemented by the following steps:
  • the HOST node 201 constructs a source IP address and a destination IP address of the data packet to be sent. Detecting a packet and sending a probe packet on the path;
  • the HOST node 201 sets the length of the probe packet, and the set length may be a smaller of the following two lengths:
  • the specific interface is the outbound interface used by the HOST node 201 to send the data packet to be sent.
  • the probe packet is used to detect the PMTU of the path of the data packet to be sent. Therefore, the probe packet is constructed by using the destination IP address of the data packet to be sent, and the subsequent indication for indicating that the packet is too long is received.
  • the data packet is used to carry the data to be sent, and the probe packet is used to detect the PMTU of the path.
  • the combination of the type of the protocol used by the probe packet and the data packet is different from the destination port number. For example, the probe packet and the data packet use different protocol types and the same destination port number to be sent; or the probe packet and the data packet use the same protocol type and different destination port numbers for transmission; or, probe Packets and data packets are sent using different protocol types and different destination port numbers.
  • step S302 It is determined whether the sent probe message is received by the HOST node 203. If yes, step S303 is performed, otherwise step S304 is performed; wherein, the method for determining whether the sent probe message is received by the HOST node 203 may be referred to.
  • step S303 is performed, otherwise step S304 is performed; wherein, the method for determining whether the sent probe message is received by the HOST node 203 may be referred to.
  • step S304 is performed; wherein, the method for determining whether the sent probe message is received by the HOST node 203 may be referred to.
  • the description in the "[Several optional probe messages]" follows.
  • S303 The maximum MTU used by the probe packet received by the HOST node 203 is used as the PMTU of the detected path.
  • S304 Determine whether an indication message that the packet sent by the network device on the path is too long is received, where the indication message is used to indicate that the network device receives the packet on the path is too long; if yes, perform the step. S305, otherwise step S309 is performed;
  • S305 Obtain an MTU supported by the network device from the received indication message, according to the obtained The MTU is sent to send a probe packet again.
  • step S306 determining whether the sent probe message is received by the HOST node 203, and if so, executing step S303, otherwise performing step S307;
  • step S307 determining whether an indication message that the packet sent by the network device on the path is too long is received; if yes, returning to step S305, otherwise performing step S308;
  • Step S308 and step S309 are set for the case where the layer 2 switch may exist on the path.
  • the packet received by the layer 2 switch is too long, the packet is directly discarded, and the message is not sent to the HOST node 201.
  • the message is indicated, so that the HOST node 201 cannot know the reception status of the message.
  • the HOST node 201 can determine that the layer 2 switch exists on the path, and the sent packet exceeds the acceptable report of the layer 2 switch, if the N-th probe packet is sent continuously. If the length is the text, the subsequent steps such as step S310 are performed.
  • N can be set according to the actual situation of the network, for example, preferably set to 1, 2, 3, ..., preferably, it can be set to 3 to 5.
  • S310 Set a first MTU, and send a probe packet by using the set first MTU.
  • the length of the first MTU is not less than the length of the minimum MTU specified by the IPv6 protocol, and is not greater than the length of the second MTU, the length of the third MTU, and the procedure received in the previous step for indicating the packet process.
  • the foregoing step receives multiple indication messages
  • the first MTU length is set, and the minimum MTU indicated in the received multiple indication messages is used.
  • the second MTU is an MTU configured for a specific interface on the HOST node 201;
  • the third MTU is the MTU indicated in the Router Advertisement (RA) message received by the HOST node 201 from the specific interface;
  • RA Router Advertisement
  • step S301 if the length of the probe message is set to a smaller of the following two lengths: the MTU of the specific interface configuration on the HOST node 201; the RA received by the HOST node 201 from the specific interface.
  • the MTU indicated in the message; in step S310, a value may be selected as the first MTU from the interval formed by the length of the minimum MTU specified by the IPv6 protocol and the length of the probe message set in step S301, and sent according to the first MTU. Probe packets.
  • the specific interface is the outbound interface used by the HOST node 201 to send the data packet to be sent.
  • the outbound interface is a layer three interface, and the interface may be configured on a physical interface on the HOST node 201, or may be configured on a physical interface on the HOST node 201 to perform virtual local area network (VLAN) division. VLAN subinterface.
  • VLAN virtual local area network
  • the first MTU may be set to perform detection multiple times to obtain a more accurate path PMTU.
  • the dichotomy can be used for detection.
  • the minimum MTU length specified by the IPv6 protocol is 1280 bytes
  • the smaller of the length of the second MTU and the length of the third MTU is 1600 bytes, for example, when using the dichotomy, 1280 words are used.
  • the section performs multiple detections with 1600 bytes as the initial maximum value (max).
  • the MTU used by the probe packet sent this time is continuously detected as the new minimum value. If the probe packet cannot be determined by the HOST node 203 If received, the MTU used by the probe packet sent this time is continuously detected as the new maximum value until the minimum value is not less than the maximum value.
  • the maximum MTU used by the detection message received by the HOST node 203 in the above-mentioned multiple detection by the binary method is used as the path PMTU of the detection.
  • the MTU of the HOST node 201 is 1800 bytes, and the MTU of the initial transmission of the probe packet is 1800 bytes.
  • the foregoing indication message indicating that the packet is too long is not received.
  • the HOST node 203 determines that there is a layer two exchange on the path. Then, step S310 is performed to perform layer 2 detection. For example, if the foregoing dichotomy is used for detection, 1280 bytes is taken as the initial minimum value (min), and 1800 bytes is used as the initial maximum value (max). probe.
  • step S311 determining whether the sent probe message is received by the HOST node 203; if yes, executing step S303, otherwise performing step S312;
  • step S312 Determine whether an indication message that the packet sent by the network device on the path is too long is received, and if yes, execute step S305, otherwise return to step S310.
  • the method of detecting the path PMTU by the HOST node 201 is described above.
  • An alternative to the internal implementation of the HOST node 201 is described below in conjunction with FIG.
  • the mode of the HOST node 201 when performing PMTU detection can be divided into an active mode and a passive mode, which can be set and modified by human-machine operation, so that the user of the HOST node 201 can flexibly select the detection mode.
  • the HOST node 201 performs PMTU detection of the path by transmitting a probe message.
  • the active mode is used to separate the detection packet from the data packet.
  • the data packet loss rate is reduced compared with the current method of changing the MTU length of the data packet. .
  • the HOST node 201 adjusts the length of the MTU of the data packet, and knows that the message indicating that the message is too large is no longer received.
  • the states during the PMTU detection process include:
  • This state is a substate of the active mode.
  • the HOST node 201 sends a probe message, and if it is determined that the PMTU of the path is detected, the state transitions to a Reachable state;
  • the probe state consists of two substates: the router probe state (L3Probe) and the layer two switch probe state (L2Probe), which initially enters the router probe state (L3Probe).
  • the Layer 2 switch detection state (L2Probe) is entered; To the Too Big packet, the MTU in the Too Big packet is used for probing; if the peer unreachable packet is received, the Reachable state is entered.
  • L2Probe Perform S310 operation to detect the optimal PMTU. After the probe ends, if the unreachable packet is received, it will be migrated to the Reachable state. If the Too Big packet is received, it will be migrated to the router detection state (L3Probe) state. If the Too Big packet is still not received, Exit when the peer unreachable message is received.
  • the HOST node 201 uses the detected MTU when transmitting the data message. After the preset aging time expires, it migrates to the aging state.
  • This state is a substate of the active mode.
  • the HOST node 201 still uses the previously detected PMTU to send a data message.
  • the initial state is set to the Reachable state.
  • the MTU of the data message is received by the HOST node 203 until the data message is received.
  • the probe packet is a transport layer protocol packet.
  • UDP user datagram protocol
  • TCP Transmission Control Protocol
  • SCTP Stream Control Transmission Protocol
  • NetBIOS Net Basic Input/Output System
  • NetBIOS Enhanced User Interface NetBIOS Enhanced User Interface
  • the destination port number of the probe packet is a port number that is not used by the HOST node 203.
  • the port number can be a well-known port number or a non-known port number.
  • the peer unreachable message (not reachable) is received after the probe packet is sent on the path, it is determined that the probe message is received by the HOST node 203.
  • the purpose of this setting is: if the port number used by the HOST node 203, the HOST node 203 does not return the peer unreachable message.
  • the well-known port number is the port number of the transport layer protocol used by the upper layer protocol above the transport layer specified by the protocol. These port numbers cannot be used by the user's application.
  • the transport layer protocol TCP port number used by the remote login (telnet) server is 23.
  • the non-known port number is the port number of the transport layer protocol except the well-known port number.
  • the HOST node 201 may perform port scanning in advance to determine which ports of the HOST node 203 are not used; if the port of the HOST node 203 is pre-configured, the HOST node 201 may determine the HOST node by acquiring configuration data of the HOST node 203. Which ports of 203 are not use.
  • the probe packet is a ping packet.
  • the HOST node 201 After receiving the probe message on the path, the HOST node 201 determines that the probe message is received by the HOST node 203 if it receives the response of the HOST node 203.
  • the probe packet is a trace route packet.
  • the HOST node 201 After receiving the response message from the HOST node 203 after transmitting the probe message on the path, the HOST node 201 determines that the probe message is received by the HOST node 203.
  • the probe packet is a protocol packet above the transport layer.
  • the HOST node 201 and the HOST node 203 pre-arrange that when the HOST node 201 sends the probe message, if the HOST node 203 receives the HOST node 203, the HOST node 203 returns a pre-agreed response message in response to the received probe message, and the HOST node After the probe packet is sent on the path, if the pre-agreed response packet is received, it is determined that the probe packet is received by the HOST node 203.
  • the following describes several optional implementations of the probe packet.
  • the following describes the setting of the probe packet length for different probe trigger conditions.
  • the data message to be sent is the data message sent by the HOST node 201 for the first time on the path, or when the PMTU entry of the path of the HOST node 201 has been deleted, the HOST node 201 determines that the PMTU of the path is unknown;
  • the first probe message is sent according to the smaller MTU of the second MTU and the third MTU.
  • the HOST node 201 can continue the PMTU detection of the path that has already taken place.
  • the HOST node 201 determines that the PMTU of the path is unknown
  • the MTU obtained by the HOST node 201 from the indication message transmits the first probe message in the PMTU detection process of the path according to the acquired MTU.
  • IPv6 networking environment is used to illustrate various scenarios applicable to the embodiments of the present invention.
  • FIG. 5A shows a simple networking scenario of IPv6, wherein the HOST node 201 in FIG. 2A can be the PC, smartphone or base station in FIG. 5A.
  • the HOST node 203 in Figure 2A is the server in Figure 5A.
  • the number marked on each device in Figure 5A is the number of bytes of MTU supported by the device.
  • the data packet When the data packet is sent by the base station, the data packet is the first data packet sent by the base station on the path. Therefore, the minimum MTU specified by the IPv6 protocol, for example, 1280 bytes, is sent, and the PMTU of the path is detected. .
  • the data message Since the data message is sent with the minimum MTU specified by the IPv6 protocol, it can reach the server through any router on the path, Router 2 and Router 3.
  • the HOST node 201 When the MTU of the outbound interface of the data packet is 1800 bytes, the HOST node 201 indicates that the MTU is 1600 bytes in the RA message received from the outbound interface of the data packet. The node 201 sends a probe packet with a smaller 1600 bytes, and the probe packet can be sent to the router 3 through the router 2.
  • the probe packet can reach the server.
  • the base station receives the response according to the response received from the server.
  • the probe packet is a ping packet, and the base station receives the server.
  • the response it is determined that the server receives the probe message, and the base station uses 1300 bytes as the PMTU of the detected path.
  • the HOST node 201 After the aging of the PMTU, if no data packet is sent on a path for a long time, the HOST node 201 deletes the PMTU entry of the path recorded by itself, and enters the Final state shown in FIG. In the Stale state, if there is a data message to be sent again on the path at this time, the HOST node 201 can perform the PMTU re-detection, and the data message is transmitted using the previously learned PMTU to improve reliability.
  • FIG. 6 shows a device for transmitting a first data packet according to an embodiment of the present invention.
  • the device includes: a processing unit 601 and a transceiver unit 602;
  • the processing unit 601 is configured to send, by using the transceiver unit 602, a data packet on the path according to the minimum MTU specified by the IPv6 protocol before the PMTU of the path is not detected;
  • the subsequent data packet is sent on the path by the transceiver unit 602 according to the PMTU of the detected path.
  • the processing unit 601 is further configured to determine, according to the minimum MTU specified by the IPv6 protocol, that the PMTU of the path used by the data packet to be sent is unknown before sending the data packet on the path by the transceiver unit 602; according to the IPv6 protocol The specified minimum MTU is sent through the transceiver unit 602. Send the data packet to be sent and perform PMTU detection of the path.
  • the processing unit 601 is specifically configured to determine that the PMTU of the path is unknown when at least one of the following conditions is met:
  • the data packet to be sent is the data packet sent by HOST for the first time on the path;
  • HOST is detecting the PMTU of the path
  • the transceiver unit 602 receives the indication message sent by the network device on the path, and the indication message is used to indicate that the network device receives the packet on the path that is too long.
  • processing unit 601 is specifically configured to:
  • the probe packet is configured by using the source IP address and the destination IP address of the data packet to be sent, and the probe packet is sent by the transceiver unit 602 on the path.
  • the maximum MTU used in the probe packet received by the destination receiving end is used as the PMTU of the detected path.
  • the processing unit 601 is further configured to: after determining whether the sent probe packet is received by the destination receiver of the data packet to be sent,
  • the first operation is repeated until the detection packet is received by the destination receiving end of the data packet to be sent, or the detection message is not received after the N times of consecutive detection packets are received, and the detection report cannot be determined.
  • the text is received by the destination receiving end, and N is a positive integer;
  • the first operation includes: acquiring an MTU supported by the network device from the indication message, and sending the probe packet again by the sending and receiving unit 602 according to the obtained MTU;
  • the maximum MTU used in the probe packet received by the destination receiver is used as the PMTU of the detected path.
  • processing unit 601 is specifically configured to:
  • the second operation is repeatedly performed until the receiving and receiving unit 602 receives the indication message or the detection packet is received by the destination receiving end.
  • the second operation includes: setting a first MTU, and sending, by using the first MTU, the detection packet by the transceiver unit 602, where the length of the first MTU is not less than the length of the minimum MTU specified by the IPv6 protocol, and the length of the first MTU is not
  • the second MTU is the MTU of the specific interface configuration on the current HOST;
  • the third MTU is the routing advertisement RA received by the transceiver unit 602 from the specific interface.
  • the MTU indicated in the text; the specific interface is the outbound interface used by the transceiver unit 602 to send the data packet to be sent;
  • the maximum MTU used in the detecting packet received by the destination receiving end is used as the PMTU of the detected path;
  • the first operation is repeated until the detection packet is received by the destination receiving end of the data packet to be sent, or the N times of consecutive detection packets are not received.
  • the probe packet is a transport layer protocol packet
  • the destination port number of the probe packet is a port number that is not used by the destination receiver.
  • the processing unit 601 is specifically configured to: after the transceiver unit 602 sends the probe packet on the path. If the transceiver unit 602 receives the peer unreachable message, it determines that the probe message is received by the destination receiving end; or
  • the detecting packet is a ping packet
  • the processing unit 601 is specifically configured to: after the sending and receiving unit 602 sends the probe packet on the path, if the response of the destination receiving end is received, it is determined that the probe packet is received by the destination receiving end; or
  • the detection packet is a trace route trace message
  • the processing unit 601 is specifically configured to: after the transceiver unit 602 sends the probe packet on the path, if the transceiver unit 602 receives the response from the receiver, it determines that the probe packet is received by the destination. Received; or
  • the detecting packet is a protocol packet on the transport layer
  • the processing unit 601 is specifically configured to: after the sending and receiving unit 602 sends the probe packet on the path, if the transceiver unit 602 receives the preset return from the destination receiving end and the current HOST Responding to the response message of the probe message, determining that the probe message is targeted Received by the receiving end.
  • the data packet to be sent is the data packet sent by the current host HOST for the first time on the path, or when the PMTU entry of the path on the current HOST has been deleted, determining that the PMTU of the path is unknown;
  • the transceiver unit 602 is configured to send the first probe packet by using the transceiver unit 602 according to the MTU of the second MTU and the third MTU.
  • the second MTU is the configured MTU of the specific interface on the HOST; the third MTU is the MTU indicated by the routing advertisement RA message received by the transceiver unit 602 from the specific interface; the specific interface is sent by the transceiver unit 602 to be sent.
  • the outgoing interface used by the data message.
  • the processing unit 601 is specifically configured to: when the PMTU of the path is being detected, determine that the PMTU of the path is unknown;
  • the processing unit 601 is specifically configured to: continue the PMTU detection of the path that has been performed.
  • the processing unit 601 is specifically configured to: when the transceiver unit 602 receives the indication message sent by the network device on the path, determine that the PMTU of the path is unknown;
  • the processing unit 601 is specifically configured to: send, according to the MTU supported by the network device, the first probe packet in the PMTU detection process of the path performed by the transceiver unit 602 according to the acquired MTU.
  • the data transmission path of the data packet can be referred to FIG. 2A and the related description.
  • the processing unit 601 controls the data packet transmission method reference may be made to the foregoing method for transmitting the data packet.
  • the processing unit 601 determines that the condition that the PMTU of the path is unknown may refer to the foregoing [[determination of the PMTU unknown condition of the path]].
  • the process of the processing unit 601 controlling the transceiver unit 602 to perform PMTU detection may refer to the aforementioned "[PMTU detection process]".
  • the type of the probe packet and the setting of the corresponding probe packet length and the detection scheme can be referred to the foregoing [[Several Optional Probe Messages]" and “[Detection Packet Length Settings]” description.
  • the device can be applied to the aforementioned "Applicable Scenario of the Embodiment of the Present Invention".
  • the processing unit 601 can be implemented by a processor, and the transceiver unit 602 can be implemented by a transceiver or by a transmitter and a receiver, where the transmitter is configured to send data packets and The message is used by the receiver to receive data messages and messages.
  • the processor and transceiver implementing the device, or the processor and transmitter and receiver can be implemented on one chip or multiple chips.
  • the embodiment of the invention further provides a host, including the data message sending device shown in FIG. 6.
  • the outbound interface used by the device shown in FIG. 6 to send data packets and the interface for receiving messages are all interfaces on the host.
  • FIG. 7 is a device for sending a data packet according to an embodiment of the present invention. As shown in FIG. 7, the device includes: a processor 701 and a transceiver 702, where
  • the processor 701 is used to send a data packet according to the embodiment of the present invention.
  • the transceiver 702 is configured to receive and send the data packet in the sending method provided by the embodiment of the present invention under the control of the processor 701. .
  • the processor 701 can be implemented by one or more processors, and the transceiver 702 can be implemented by a transceiver or by a transmitter and a receiver, wherein the transmitter is configured to send data messages and messages, and the receiver is configured to receive datagrams. Text and news, etc.
  • the processor 701 and the transceiver 702 can be implemented by being integrated on one chip or a plurality of chips.
  • the HOST node of the transmitting end in the IPv6 network sends a data packet on the path according to the minimum MTU specified by the IPv6 protocol before detecting the PMTU of the path; the PMTU of the path is detected. Then, the subsequent data packet is sent on the path according to the PMTU that detects the path.
  • the minimum MTU can ensure that the data packet can pass through a network device with any MTU on the path, such as a router, before the PMTU of the path is detected, and the path is guaranteed.
  • the data message sent on can be received by the destination receiver.
  • embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention may employ an entirely hardware embodiment, an entirely software embodiment, Or in the form of an embodiment of the software and hardware aspects. Moreover, the invention can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
  • These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
  • the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.

Abstract

本发明涉及通信技术领域,尤其涉及互联网协议IP版本v6网络中数据报文的发送方法及装置,用以解决目前IPv6网络中未探测到路径的PMTU之前数据报文可能一直被丢弃的问题。本发明实施例提供的一种方法包括:在未探测到路径的PMTU之前,按照IPv6协议规定的最小MTU发送数据报文;在探测到所述路径的PMTU后,按照探测到所述路径的PMTU在所述路径上发送后续数据报文。由于在探测到路径PMTU之前,使用IPv6协议规定的最小MTU发送后续数据报文,保证数据报文能通过路径上的具有任意MTU的网络设备,保证数据报文可被目的接收端收到。

Description

一种IPv6网络中数据报文的发送方法及装置 技术领域
本发明涉及通信技术领域,尤其涉及一种IPv6网络中数据报文的发送方法及装置。
背景技术
在互联网协议版本6(Internet Protocol version 6,IPv6)网络中,为了提高网络设备的转发效率,诸如路由器等的中间设备,不再具有分片功能,对于超过本设备接口最大传输单元(Maximum Transmission,MTU)长度的数据报文直接丢弃,数据报文的分片重组功能只能在发送端的主机(HOST)节点完成。换言之,只有发送端的HOST节点才能对数据报文进行分片。因此,发送端的HOST节点需要进行路径的路径最大传输单元(Path Max Transmission Unit,PMTU)探测,以确定发送的数据报文的长度。
目前的一种数据报文发送过程如图1所示。其中,发送端的HOST节点发送数据报文使用一个出接口,该出接口预先配置的MTU=1500字节。发送端的HOST节点在发送数据报文时,按照该预先配置的MTU=1500字节发送该数据报文。
路由器A在收到发送端发送的该数据报文后,确定自身发送该数据报文的接口所配置的MTU=1400字节,因此,路由器A在收到MTU=1500字节的数据报文后,丢弃该数据报文,并向发送端发送互联网控制报文协议(internet control message protocol,ICMP)版本(version,v)6(类型=2)的消息,指示收到的数据报文过长,并在消息中携带指示MTU=1400字节的信息。
发送端在收到该消息后,根据消息中携带的指示MTU=1400信息,后续在该路径上发送MTU=1400字节的数据报文。
后续的数据报文通过路由器A后到达路由器B,由于路由器B收到MTU=1400字节的数据报文后,确定自身发送该数据报文使用的接口所配置 的MTU=1300字节,因此路由器B丢弃收到的该MTU=1400字节的数据报文,并向发送端返回ICMPv6(类型=2)的消息,指示收到的数据报文过长,并在消息中携带指示MTU=1300字节的信息。
发送端在收到该消息后,根据消息中携带的MTU=1300字节的信息,后续发送MTU=1300字节的数据报文。MTU=1300字节的数据报文可分别经过路由器A和路由器B,到达目的节点。
从图1所示的过程可见,发送端发送的MTU=1500字节的数据报文和MTU=1400字节的数据报文,分别被路由器A和路由器B丢弃,即发送端在探测到路径的PMTU=1300字节之前,发送的数据报文均会被丢弃。
综上,在目前的IPv6网络中,可能由于发送的数据报文的长度超过路径上的网络设备的接口所支持的MTU的长度,在数据报文发送端未探测到路径的PMTU之前数据报文一直被丢弃。
发明内容
有鉴于此,本发明实施例提供一种IPv6网络中的数据报文的发送方法及装置,用于解决目前的IPv6网络中,在数据报文的发送端未探测到路径的PMTU之前数据报文可能一直被丢弃的问题。
第一方面,本发明实施例提供一种互联网协议版本6,IPv6,网络中数据报文的发送方法,包括:
在未探测到所述路径的PMTU之前,按照IPv6协议规定的最小MTU在所述路径上发送数据报文;
在探测到所述路径的PMTU后,按照探测到所述路径的PMTU在所述路径上发送后续数据报文。
可选地,在按照IPv6协议规定的最小MTU在所述路径上发送数据报文之前,还包括:
确定待发送的数据报文使用的路径的路径最大传输单元PMTU未知;
按照IPv6协议规定的最小的最大传输单元MTU发送所述待发送的数据 报文,并进行所述路径的PMTU探测。
结合第一方面,在第一种可能的实现方式中,在满足下列条件中的至少一项时,确定所述路径的PMTU未知:
所述待发送的数据报文是当前主机HOST在所述路径上首次发送的数据报文;
当前HOST上的所述路径的PMTU表项已被删除;
当前HOST正在探测所述路径的PMTU;
当前HOST收到所述路径上的网络设备发送的指示消息,所述指示消息用于指示该网络设备在所述路径上收到的报文过长。
结合第一方面,或第一方面的第一种可能的实现方式,在第二种可能的实现方式中,进行所述路径的PMTU探测,包括:
以所述待发送的数据报文的源IP地址和目的IP地址构造探测报文,并在所述路径上发送所述探测报文;
判断发送的所述探测报文是否被所述待发送的数据报文的目的接收端收到;
若确定所述探测报文被所述目的接收端收到,则将所述目的接收端收到的所述探测报文中使用的最大MTU作为探测到的所述路径的PMTU。
结合第一方面的第二种可能的实现方式,在第三种可能的实现方式中,在所述判断发送的所述探测报文是否被所述待发送的数据报文的目的接收端收到之后,还包括:
若确定所述探测报文未被所述目的接收端收到,则
判断是否收到所述路径上的网络设备发送的指示消息,所述指示消息用于指示该网络设备在所述路径上收到的报文过长;
若收到所述指示消息,则重复执行第一操作,直至所述探测报文被所述待发送的数据报文的目的接收端收到,或者连续发送N次探测报文均未收到所述指示消息且无法确定所述探测报文被所述目的接收端收到,N为正整数;
其中,所述第一操作包括:从所述指示消息中获取用于该网络设备所支 持的MTU,按照获取的该MTU再次发送所述探测报文;
若所述探测报文被所述待发送的数据报文的目的接收端收到,则将所述目的接收端收到的所述探测报文中使用的最大MTU作为探测到的所述路径的PMTU。
结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,进行所述路径的PMTU探测,还包括:
若连续发送N次探测报文均未收到所述指示消息且无法确定所述探测报文被所述目的接收端收到,则重复执行第二操作,直至收到所述指示消息或所述探测报文被所述目的接收端收到;
所述第二操作包括:设置第一MTU,并以设置的所述第一MTU发送所述探测报文,其中,
所述第一MTU的长度不小于IPv6协议规定的最小MTU的长度,且
若收到所述指示消息,则所述第一MTU的长度不大于第二MTU的长度和第三MTU的长度,以及收到的所述指示消息中所指示的MTU三者中的最小值;或者
若未收到所述指示消息,则所述第一MTU的长度不大于第二MTU的长度和第三MTU的长度中的较小值;
所述第二MTU为当前HOST上的特定接口配置的MTU;所述第三MTU为当前HOST从所述特定接口上收到的路由通告RA报文中指示的MTU;所述特定接口为当前HOST上发送所述待发送的数据报文所使用的出接口;
若重复执行所述第二操作过程中确定所述探测报文被所述待发送的数据报文的目的接收端收到,则将所述目的接收端收到的所述探测报文中使用的最大MTU作为探测到的所述路径的PMTU;
若重复执行所述第二操作过程中收到所述指示消息,则返回重复执行所述第一操作,直至所述探测报文被所述待发送的数据报文的目的接收端收到,或者连续发送N次探测报文均未收到所述指示消息且无法确定所述探测报文被所述目的接收端收到的步骤。
结合第一方面的第二种至第四种可能的实现方式中的任一种,在第五种可能的实现方式中,
所述探测报文为传输层协议报文,所述探测报文的目的端口号为所述目的接收端未使用的端口号;进行所述路径的PMTU探测,包括:在所述路径上发送所述探测报文之后,若收到对端不可达报文,则确定所述探测报文被所述目的接收端收到;或
所述探测报文为ping报文,进行所述路径的PMTU探测,包括:在所述路径上发送所述探测报文之后,若收到所述目的接收端的响应,则确定所述探测报文被所述目的接收端收到;或
所述探测报文为跟踪路由trace route报文,进行所述路径的PMTU探测,包括:在所述路径上发送所述探测报文之后,若收到所述接收端的响应,则确定所述探测报文被所述目的接收端收到;或
所述探测报文为传输层之上的协议报文,进行所述路径的PMTU探测,包括:在所述路径上发送所述探测报文之后,若收到所述目的接收端返回的与当前HOST预先约定的响应于所述探测报文的响应报文,则确定所述探测报文被所述目的接收端收到。
结合第一方面的第五种可能的实现方式,在第六种可能的实现方式中,在所述待发送的数据报文是当前主机HOST在所述路径上首次发送的数据报文时,或在当前HOST上的所述路径的PMTU表项已被删除时,确定所述路径的PMTU未知;
进行所述路径的PMTU探测,包括:按照第二MTU和第三MTU中长度较小的MTU发送第一个所述探测报文;
其中,所述第二MTU为当前HOST上的特定接口的配置的MTU;所述第三MTU为当前HOST从所述特定接口上收到的路由通告RA报文中指示的MTU;所述特定接口为当前HOST上发送所述待发送的数据报文所使用的出接口。
结合第一方面的第五种可能的实现方式,在第七种可能的实现方式中, 在当前HOST正在探测所述路径的PMTU时,确定所述路径的PMTU未知;
进行所述路径的PMTU探测,包括:继续已经进行的所述路径的PMTU探测。
结合第一方面的第五种可能的实现方式,在第八种可能的实现方式中,在收到所述路径上的网络设备发送的所述指示消息时,确定所述路径的PMTU未知;
进行所述路径的PMTU探测,包括:从该指示消息中获取的该网络设备所支持的MTU,按照获取的该MTU发送进行的所述路径的PMTU探测过程中的第一个所述探测报文。
第二方面,本发明实施例提供一种互联网协议版本6,IPv6,网络中的数据报文的发送装置,包括:处理单元和收发单元;
所述处理单元,用于在未探测到所述路径的PMTU之前,按照IPv6协议规定的最小MTU,通过所述收发单元在所述路径上发送数据报文;
在探测到所述路径的PMTU后,按照探测到所述路径的PMTU,通过所述收发单元在所述路径上发送后续数据报文。
可选地,所述处理单元还用于:在按照IPv6协议规定的最小MTU,通过所述收发单元在所述路径上发送数据报文之前,确定待发送的数据报文使用的路径的路径最大传输单元PMTU未知;按照IPv6协议规定的最小的最大传输单元MTU,通过所述收发单元发送所述待发送的数据报文,并进行所述路径的PMTU探测。
结合第二方面,在第一种可能的实现方式中,所述处理单元具体用于在满足下列条件中的至少一项时,确定所述路径的PMTU未知:
所述待发送的数据报文是所述HOST在所述路径上首次发送的数据报文;
所述HOST上的所述路径的PMTU表项已被删除;
所述HOST正在探测所述路径的PMTU;
所述收发单元收到所述路径上的网络设备发送的指示消息,所述指示消息用于指示该网络设备在所述路径上收到的报文过长。
结合第二方面,或第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述处理单元具体用于:
以所述待发送的数据报文的源IP地址和目的IP地址构造探测报文,并通过所述收发单元在所述路径上发送所述探测报文;
判断发送的所述探测报文是否被所述待发送的数据报文的目的接收端收到;
若确定所述探测报文被所述目的接收端收到,则将所述目的接收端收到的所述探测报文中使用的最大MTU作为探测到的所述路径的PMTU。
结合第二方面的第二种可能的实现方式,在第三种可能的实现方式中,所述处理单元还用于:在判断发送的所述探测报文是否被所述待发送的数据报文的目的接收端收到之后,
若确定所述探测报文未被所述目的接收端收到,则
判断是否收到所述路径上的网络设备发送的指示消息,所述指示消息用于指示该网络设备在所述路径上收到的报文过长;
若收到所述指示消息,则重复执行第一操作,直至所述探测报文被所述待发送的数据报文的目的接收端收到,或者连续发送N次探测报文均未收到所述指示消息且无法确定所述探测报文被所述目的接收端收到,N为正整数;
其中,所述第一操作包括:从所述指示消息中获取用于该网络设备所支持的MTU,按照获取的该MTU通过所述收发单元再次发送所述探测报文;
若所述探测报文被所述待发送的数据报文的目的接收端收到,则将所述目的接收端收到的所述探测报文中使用的最大MTU作为探测到的所述路径的PMTU。
结合第二方面的第三种可能的实现方式,在第四种可能的实现方式中,所述处理单元具体用于:
若通过所述收发单元连续发送N次探测报文均未收到所述指示消息且无法确定所述探测报文被所述目的接收端收到,则重复执行第二操作,直至所述收发单元收到所述指示消息或所述探测报文被所述目的接收端收到;
所述第二操作包括:设置第一MTU,并以设置的所述第一MTU通过所述收发单元发送所述探测报文,其中所述第一MTU的长度不小于IPv6协议规定的最小MTU的长度,且
若收到所述指示消息,则所述第一MTU的长度不大于第二MTU的长度和第三MTU的长度,以及收到的所述指示消息中所指示的MTU三者中的最小值;或者
若未收到所述指示消息,则所述第一MTU的长度不大于第二MTU的长度和第三MTU的长度中的较小值;
所述第二MTU为当前HOST上的特定接口配置的MTU;所述第三MTU为所述收发单元从所述特定接口上收到的路由通告RA报文中指示的MTU;所述特定接口为所述收发单元发送所述待发送的数据报文所使用的出接口;
若重复执行所述第二操作过程中确定所述探测报文被所述待发送的数据报文的目的接收端收到,则将所述目的接收端收到的所述探测报文中使用的最大MTU作为探测到的所述路径的PMTU;
若重复执行所述第二操作过程中收到所述指示消息,则返回重复执行所述第一操作,直至所述探测报文被所述待发送的数据报文的目的接收端收到,或者连续发送N次探测报文均未收到所述指示消息且无法确定所述探测报文被所述目的接收端收到的步骤。
结合第二方面的第二种至第四种可能的实现方式中的任一种,在第五种可能的实现方式中,
所述探测报文为传输层协议报文,所述探测报文的目的端口号为所述目的接收端未使用的端口号;所述处理单元具体用于:在所述收发单元在所述路径上发送所述探测报文之后,若所述收发单元收到对端不可达报文,则确定所述探测报文被所述目的接收端收到;或
所述探测报文为ping报文,所述处理单元具体用于:在所述收发单元在所述路径上发送所述探测报文之后,若收到所述目的接收端的响应,则确定所述探测报文被所述目的接收端收到;或
所述探测报文为跟踪路由trace route报文,所述处理单元具体用于:在所述收发单元在所述路径上发送所述探测报文之后,若所述收发单元收到所述接收端的响应,则确定所述探测报文被所述目的接收端收到;或
所述探测报文为传输层之上的协议报文,所述处理单元具体用于:在所述收发单元在所述路径上发送所述探测报文之后,若所述收发单元收到所述目的接收端返回的与当前HOST预先约定的响应于所述探测报文的响应报文,则确定所述探测报文被所述目的接收端收到。
结合第二方面的第五种可能的实现方式,在第六种可能的实现方式中,在所述待发送的数据报文是当前主机HOST在所述路径上首次发送的数据报文时,或在当前HOST上的所述路径的PMTU表项已被删除时,确定所述路径的PMTU未知;
所述收发单元具体用于:按照第二MTU和第三MTU中长度较小的MTU通过所述收发单元发送第一个所述探测报文;
其中,所述第二MTU为所述HOST上的特定接口的配置的MTU;所述第三MTU为所述收发单元从所述特定接口上收到的路由通告RA报文中指示的MTU;所述特定接口为所述收发单元发送所述待发送的数据报文所使用的出接口。
结合第二方面的第五种可能的实现方式,在第七种可能的实现方式中,所述处理单元具体用于:在正在探测所述路径的PMTU时,确定所述路径的PMTU未知;
所述处理单元具体用于:继续已经进行的所述路径的PMTU探测。
结合第二方面的第五种可能的实现方式,在第八种可能的实现方式中,所述处理单元具体用于:在所述收发单元收到所述路径上的网络设备发送的所述指示消息时,确定所述路径的PMTU未知;
所述处理单元具体用于:从该指示消息中获取的该网络设备所支持的MTU,按照获取的该MTU通过所述收发单元发送进行的所述路径的PMTU探测过程中的第一个所述探测报文。
第三方面,本发明实施例提供一种IPv6网络中的主机HOST,包括第二方面,或第二方面的任一种可能的实现方式提供的装置。
第四方面,本发明实施例提供一种互联网协议版本6,IPv6,网络中的数据报文的发送装置,包括:处理器和收发器;
所述处理器,用于实现如第一方面,或第一方面的任一种可能的实现方式提供的方法,所述收发器用于在所述处理器的控制下实现所述方法中的接收和/或发送。
第五方面,本发明实施例提供一种IPv6网络中的主机HOST,包括第四方面提供的装置。
在本发明实施例中,IPv6网络中的发送端的HOST节点在未探测到路径的PMTU之前,按照IPv6协议规定的最小MTU在该路径上发送数据报文;在探测到该路径的PMTU后,按照探测到该路径的PMTU在该路径上发送后续数据报文。
由于在探测到路径的PMTU之前,使用IPv6协议规定的最小MTU发送数据报文,最小MTU可保证数据报文能通过路径上的具有任意MTU的网络设备,比如:路由器,因此保证了该路径上发送的数据报文可被目的接收端收到。
附图说明
图1为目前IPv6网络中的PMTU探测的方法的示意图;
图2A为IPv6网络中一种可能的数据报文的传输路径的示意图;
图2B为本发明实施例提供的一种数据报文的发送方法的流程图;
图3为本发明实施例提供的一种可选的PMTU探测过程的示意图;
图4为本发明实施例提供的HOST节点内部实现的一种可能实现方式的示意图;
图5A为IPv6的一种简单的组网场景的示意图;
图5B和图5C为路径中存在层二交换机的场景的示意图;
图6为本发明实施例提供的一种数据报文的发送装置的结构示意图;
图7为本发明实施例提供的另一种数据报文的发送装置的结构示意图。
具体实施方式
本发明实施例提供一种IPv6网络中的数据报文的发送方法及装置,用于解决目前的IPv6网络中,在数据报文的发送端未探测到路径的PMTU之前数据报文可能一直被丢弃的问题。
在本发明实施例中,IPv6网络中的发送端的HOST节点在未探测到路径的PMTU之前,按照IPv6协议规定的最小MTU在该路径上发送数据报文;在探测到该路径的PMTU后,按照探测到该路径的PMTU在该路径上发送后续数据报文。
由于在探测到路径的PMTU之前,使用IPv6协议规定的最小MTU发送数据报文,最小MTU可保证数据报文能通过路径上的具有任意MTU的网络设备,比如:路由器,因此保证了该路径上发送的数据报文可被目的接收端收到。
下面,结合附图对本发明实施例进行详细说明。
如图2A示出了IPv6网络中数据报文的传输路径,数据报文从发送端的HOST节点201发出,经过中间的网络设备202a、网络设备202b等,最终到达目的接收端的HOST节点203。虽然图2A中示出了两个以上的中间的网络设备,但实际上可能仅存在一个、中间的网络设备,或者不存在中间的网络设备。
下面,首先介绍本发明实施例提供的数据报文的发送方法。
参见图2B本发明实施例提供的数据报文的发送方法包括如下步骤:
S1:在未探测到路径的PMTU之前,按照IPv6协议规定的最小MTU在该路径上发送数据报文;
可选地,还包括S2:在探测到该路径的PMTU后,按照探测到该路径的PMTU在该路径上发送后续数据报文。
可选地,在按照IPv6协议规定的最小MTU在路径上发送数据报文之前,还包括:
确定待发送的数据报文使用的路径的PMTU未知;
按照IPv6协议规定的最小的MTU,比如:1280bytes,发送待发送的数据报文,并进行图3所示的该路径的PMTU探测。
由于在探测到路径的PMTU之前,使用IPv6协议规定的最小MTU发送数据报文,最小MTU可保证数据报文能通过路径上的具有任意MTU的网络设备,比如:路由器,因此保证了该路径上发送的数据报文可被目的接收端收到。
其中,HOST节点201和HOST节点203可为个人电脑(Personal Computer)、基站、核心网、手机终端等所有可在IPv6网络中发送和接收数据报文的设备。
【确定路径的PMTU未知的条件】
其中,HOST节点201可在满足下列条件中的至少一个时,确定该路径的PMTU未知:
条件一、HOST节点201上的该路径的PMTU表项已被删除(如图4中的Final状态),比如:PMTU表项在老化后长时间不使用被删除;
条件二、HOST节点201正在探测该路径的PMTU(如图4中的Probe状态);
条件三、HOST节点201收到该路径上的网络设备(比如:网络设备202a)发送的指示消息,该指示消息用于指示该网络设备在该路径上收到的报文过长,比如:前述的ICMPv6(类型=2)的消息,可选地,HOST节点201在收到该消息后,进入图4所示的Probe状态。
【PMTU探测过程】
可选地,参见图3,HOST节点201在进行路径的PMTU探测时,可具体通过如下步骤实现:
S301:HOST节点201以待发送的数据报文的源IP地址和目的IP地址构 造探测报文,并在路径上发送探测报文;
可选地,HOST节点201设置探测报文的长度,设置的长度可为下述两个长度中的较小值:
HOST节点201上的特定接口配置的MTU;
HOST节点201从该特定接口上收到的路由通告(Router Advertisement,RA)报文中指示的MTU;
上述特定接口为HOST节点201上发送上述待发送的数据报文所使用的出接口。
由于探测报文用于探测待发送的数据报文的路径的PMTU,因此这里以待发送的数据报文的目的IP地址构造探测报文;为了能够接收后续的用于指示报文过长的指示消息,以及后续确定目的接收端的HOST节点203收到探测报文,这里以待发送的数据报文的源IP地址构造探测报文。
其中,数据报文用于承载待发送的数据,探测报文用于探测路径的PMTU,探测报文与数据报文的使用的协议的类型和目的端口号的组合不同。比如:探测报文与数据报文使用不同的协议类型,相同的目的端口号进行发送;或者,探测报文与数据报文使用相同的协议类型,不同的目的端口号进行发送;再或者,探测报文与数据报文使用不同的协议类型,不同的目的端口号进行发送。
S302:判断发送的探测报文是否被HOST节点203收到,若收到,则执行步骤S303,否则执行步骤S304;其中,判断发送的探测报文是否被HOST节点203收到的方法,可参考后面的“【几种可选的探测报文】”中的描述。
S303:将HOST节点203收到的探测报文所使用的最大的MTU作为探测到的路径的PMTU;
S304:判断是否收到该路径上的网络设备发送的报文过长的指示消息,该指示消息用于指示该网络设备在该路径上收到的报文过长;若收到,则执行步骤S305,否则执行步骤S309;
S305:从收到的指示消息中获取用于该网络设备所支持的MTU,按照获 取的该MTU再次发送探测报文;
S306:判断发送的探测报文是否被HOST节点203收到,若是,则执行步骤S303,否则执行步骤S307;
S307:判断是否收到该路径上的网络设备发送的报文过长的指示消息;若是,则返回执行步骤S305,否则执行步骤S308;
S308:不改变探测报文的MTU,重新发送探测报文,之后返回步骤S304;
S309:确定连续N次发送探测报文均未收到报文过长的指示消息,N为正整数;
其中,步骤S308和步骤S309是针对路径上可能存在层二交换机的情形而设置的,当层二交换机收到的报文过长时,直接丢弃,不会向HOST节点201回复报文过长的指示消息,这样HOST节点201无法获知报文的接收情况。通过连续发送N次探测报文,若均未收到报文过长的指示消息,则HOST节点201可确定该路径上存在层二交换机,且发送的报文超过了层二交换机可接受的报文长度,则执行步骤S310等后续步骤。
并且考虑到探测报文在传输时可能出现丢包的情况,所以连续发送N次探测报文,这样会更准确地确定该路径上存在层二交换机。该N值可根据网络实际情况设置,比如:设置为较佳地1、2、3,……,较佳地,可设置为3~5。
S310:设置第一MTU,并以设置的第一MTU发送探测报文;
其中,可选地,第一MTU的长度不小于IPv6协议规定的最小MTU的长度,且不大于第二MTU的长度、第三MTU的长度,以及前面步骤收到的用于指示报文过程的指示消息中所指示的MTU三者中的最小值;若前面步骤没有收到上述指示信息,则第一MTU的长度不小于IPv6协议规定的最小MTU的长度,且不大于第二MTU的长度和第三MTU的长度中的较小值;或者
若前面步骤收到多个上述指示消息,则第一MTU长度设置时,使用收到的多个指示消息中指示的最小MTU。
第二MTU为HOST节点201上的特定接口配置的MTU;
第三MTU为HOST节点201从该特定接口上收到的路由通告(Router Advertisement,RA)报文中指示的MTU;
比如:在步骤S301中,若将探测报文的长度设置为下述两个长度中的较小值:HOST节点201上的特定接口配置的MTU;HOST节点201从该特定接口上收到的RA报文中指示的MTU;则步骤S310中,可从IPv6协议规定的最小MTU的长度与步骤S301设置的探测报文的长度构成的区间中,选择一个值作为第一MTU,按照第一MTU发送探测报文。
上述特定接口为HOST节点201上发送上述待发送的数据报文所使用的出接口。可选地,该出接口为层三接口,此接口可配置在HOST节点201上的物理接口上,也可配置在HOST节点201上的物理接口上进行虚拟局域网(Virtual Local Area Network,VLAN)划分的VLAN子接口。
可选地,在步骤S310中,可多次设置第一MTU进行探测,以获得较精确的路径PMTU。比如:可采用二分法进行探测。这里,以IPv6协议规定的最小MTU的长度为1280字节,第二MTU的长度和第三MTU的长度中的较小值为1600字节为例,则在采用二分法探测时,将1280字节作为初始的最小值(min),将1600字节作为初始的最大值(max)进行多次探测。
在采用二分法探测过程中,若确定探测报文被HOST节点203收到,则将本次发送的探测报文使用的MTU作为新的最小值继续探测,若无法确定探测报文被HOST节点203收到,则将本次发送的探测报文使用的MTU作为新的最大值继续探测,直至最小值不小于最大值。
则将上述采用二分法多次探测过程中,被HOST节点203收到的探测报文所使用的最大MTU作为探测得到的路径PMTU。
下面,以图5B和图5C所示的路径中存在层二交换机的场景为例加以说明。
如图5B所示,HOST节点201的MTU为1800字节,初始发送探测报文的MTU为1800字节,经过N次没有收到前述的用于指示报文过长的指示消息,也无法确定HOST节点203收到探测报文,则确定路径上存在层二交换 机,则执行步骤S310进行层二探测,比如:采用前述的二分法进行探测,则将1280字节作为初始的最小值(min),将1800字节作为初始的最大值(max)进行多次探测。
如图5C所示,探测报文通过层二交换机1后,会收到路由器发送的用于指示报文过长的指示消息,然后使用该指示消息中指示的MTU=1450字节继续探测,连续N次没有用于指示报文过长的指示消息,也无法确定HOST节点203收到探测报文,则执行步骤S310进行层二探测,比如:采用前述的二分法进行探测,则将1280字节作为初始的最小值(min),将1450字节作为初始的最大值(max)进行多次探测。
S311:判断发送的探测报文是否被HOST节点203收到;若是则执行步骤S303,否则执行步骤S312;
S312:判断是否收到该路径上的网络设备发送的报文过长的指示消息,若是,则执行步骤S305,否则返回执行步骤S310。
以上介绍了HOST节点201探测路径PMTU的方法。下面结合图4介绍HOST节点201内部实现的一种可选方式。
【HOST节点201的内部实现】
如图4所示,HOST节点201在进行PMTU探测时的模式可分为主动模式和被动模式,该模式可通过人机操作进行设置和修改,使得HOST节点201的使用者能够灵活选择探测模式。
1、主动模式
在主动模式下,HOST节点201通过发送探测报文,进行路径的PMTU探测。
通过该主动模式,实现了探测报文和数据报文的分离,在路径的PMTU未知的情况下,与目前通过改变数据报文的MTU长度的方式相比,减小了数据报文的丢失率。
2、被动模式
在数据报文的发送过程中,若收到诸如ICMP(类型=2)的报文过大的指 示消息,则HOST节点201调整数据报文的MTU的长度,知道不再收到报文过大的指示消息为止。
采用被动模式,在探测到路径的PMTU之前,数据报文会丢失。
参见图4,在主动模式下,PMTU探测过程中的状态包括:
1、探测(Probe)状态
该状态为主动模式的子状态。
在该状态下,HOST节点201发送探测报文,若确定探测到路径的PMTU,状态迁移到可达(Reachable)状态;
探测状态包含2个子状态:路由器探测状态(L3Probe)和层二交换机探测状态(L2Probe),初始进入路由器探测状态(L3Probe)。
在路由器探测状态(L3Probe)下:当连续N次发送探测报文后没有收到Too Big报文也没有收到对端不可达报文时,在进入层二交换机探测状态(L2Probe);如果收到Too Big报文,则使用Too Big报文中的MTU进行探测;如果收到对端不可达报文,则进入可达(Reachable)状态。
在层二交换机探测状态(L2Probe)状态下:执行S310操作,探测最优的PMTU。探测结束后,如果收到不可达报文则迁移到可达(Reachable)状态;如果收到Too Big报文则迁移到路由器探测状态(L3Probe)状态;如果仍然没有收到Too Big报文也没有收到对端不可达报文时则退出。
2、可达(Reachable)状态
此时,HOST节点201在发送数据报文时,使用探测到的MTU。在预设的老化时间超时后,则迁移到老化(Stale)状态;
3、老化(Stale)状态
该状态为主动模式的子状态。
在该状态下,HOST节点201仍使用之前探测得到的PMTU发送数据报文。
处于该状态时,若没有数据报文发送,则在预设的垃圾回收定时器超时后,进入退出(Final)状态。
处于该状态时,若有数据报文发送,则进入Probe状态,继续探测,在Probe状态下发送数据报文时,仍使用最近一次进入Reachable状态时探测得到的PMTU,以保证数据报文的发送效率。
在被动模式下,初始将状态设置为可达(Reachable)状态,在收到ICMP(类型=2)的消息,或称之为过大(Too Big)报文后,不改变状态,调整发送的数据报文的MTU直至数据报文被HOST节点203收到。
以上介绍了HOST节点201内部实现的可选方式,下面,介绍HOST节点201构造探测报文的几种可选方案。
【几种可选的探测报文】
1、探测报文为传输层协议报文
比如:用户数据报协议(user datagram protocol,UDP)报文、传输控制协议(Transmission Control Protocol,TCP)报文、流控制传输协议(Stream Control Transmission Protocol,SCTP)报文,网络基本输入输出系统(Net Basic Input/Output System,NetBIOS)报文、NetBIOS增强用户接口(NetBIOS Enhanced User Interface,NetBEUI)报文等。
该探测报文的目的端口号为HOST节点203未使用的端口号,该端口号可为知名端口号,或非知名端口号。此情况下,在路径上发送探测报文之后若收到对端不可达报文(not reachable)时,确定探测报文被HOST节点203收到。这样设置的目的是:若是HOST节点203使用的端口号,则HOST节点203不会返回对端不可达报文。
知名端口号为协议规定的传输层以上的上层协议所使用的传输层协议的端口号,这些端口号不能由用户的应用程序使用。比如:远程登录(telnet)服务器使用的传输层协议TCP端口号为23。
非知名端口号为除了知名端口号之外的传输层协议的端口号。
可选地,HOST节点201可预先进行端口扫描确定HOST节点203的哪些端口未使用;若HOST节点203的端口是预先配置的,则HOST节点201通过获取HOST节点203的配置数据,可确定HOST节点203的哪些端口未 使用。
2、探测报文为ping报文
HOST节点201在路径上发送探测报文之后,若收到HOST节点203的响应,则确定探测报文被HOST节点203收到。
3、探测报文为跟踪路由(trace route)报文
HOST节点201在路径上发送探测报文之后收到HOST节点203的响应后,确定探测报文被HOST节点203收到。
4、探测报文为传输层之上的协议报文
HOST节点201与HOST节点203预先约定,HOST节点201发送探测报文时,若HOST节点203收到,则HOST节点203响应该收到的探测报文,返回预先约定的响应报文,则HOST节点201在路径上发送探测报文之后,若收到预先约定的响应报文,则确定探测报文被HOST节点203收到。
以上介绍了探测报文的几种可选的实现方式,下面介绍针对不同的探测触发条件,探测报文的长度的设置。
【探测报文长度设置】
1、待发送的数据报文是HOST节点201在路径上首次发送的数据报文,或在HOST节点201的该路径的PMTU表项已被删除时,HOST节点201确定该路径的PMTU未知;
在此情况下,按照前述的第二MTU和第三MTU中长度较小的MTU发送第一个探测报文。
2、在HOST节点201正在探测路径的PMTU时,确定该路径的PMTU未知;
在此情况下,HOST节点201可继续已经进行的该路径的PMTU探测。
3、在收到该路径上的网络设备,比如网络设备202a发送的报文过长的指示消息时,HOST节点201确定该路径的PMTU未知;
在此情况下,HOST节点201从该指示消息中获取的MTU,按照获取的该MTU发送进行的该路径的PMTU探测过程中的第一个探测报文。
下面,以一个具体的IPv6的组网环境,举例说明本发明实施例适用的各种场景。
【本发明实施例适用场景】
图5A示出了IPv6的一种简单的组网场景,其中图2A中的HOST节点201可为图5A中的PC、智能手机或基站。图2A中的HOST节点203为图5A中的服务器。图5A中各设备上标的数字为该设备支持的MTU的字节数。
下面,区分场景举例说明。
1、新建网的场景
基站在发送数据报文时,由于数据报文是基站在路径上首次发送的数据报文,因此,采用IPv6协议规定的最小MTU,比如:1280bytes发送该数据报文,并进行该路径的PMTU探测。
由于该数据报文是以IPv6协议规定的最小MTU发送的,因此其可通过路径上的任意路由器,即路由器2和路由器3,到达服务器。
在进行路径的PMTU探测时,由于发送数据报文的出接口的配置的MTU为1800bytes,假设HOST节点201从上述发送数据报文的出接口收到的RA报文中指示MTU为1600bytes,则HOST节点201以两者中较小的1600bytes发送探测报文,发送的该探测报文可通过路由器2,到达路由器3。
由于路由器3支持的MTU为1300bytes,因此路由器3向基站返回ICMP(类型=2)的消息,并指示支持的MTU为1300bytes。
基站在发送下一个探测报文时,以MTU=1300bytes发送,则该探测报文可到达服务器,基站根据从服务器收到的响应,比如该探测报文为ping报文,则基站在收到服务器发送的响应后,确定服务器收到探测报文,基站则以1300bytes作为探测到的路径的PMTU。
2、网络改造的场景
仍以基站作为HOST节点201为例,基站探测到路径的PMTU=1300bytes,以1300bytes在该路径上发送后续的数据报文。
若在路由器3的MTU改成1280bytes,则HOST节点201发送的数据报 文会被路由器3丢弃,路由器3向基站返回ICMP(类型=2)的消息,并指示支持的MTU=1280bytes。
HOST节点201在收到ICMP(类型=2)的消息后,以IPv6协议规定的最小MTU发送数据报文,并进行PMTU探测,最终探测得到该路径的新的PMTU=1280bytes。
在此情况下,HOST节点201一旦收到ICMP(类型=2)的消息,则以IPv6协议规定的最小MTU发送数据报文,因此可能被路由器3丢弃的数据报文仅为路由器3的MTU改成1280bytes到基站收到ICMP(类型=2)的消息之前,基站在该路径上发送的数据报文。与目前的PMTU探测方法相比,避免了探测过程中由于数据报文的长度过长导致数据报文的丢失。
3、PMTU老化
PMTU老化后,若长时间在一个路径上没有数据报文发送,则HOST节点201会删除自身记录的该路径的PMTU表项,进入图4所示的Final状态。在Stale状态下,若此时该路径上再次有待发送的数据报文,则HOST节点201可进行PMTU的再次探测,同时数据报文使用之前学习到的PMTU进行发送,提高可靠性。
以上,介绍了本发明实施例提供的数据报文的发送方法,下面介绍本发明实施例提供的两种数据报文发送装置。
图6示出了本发明实施例提供的第一种数据报文的发送装置。如图6所示,该装置包括:处理单元601和收发单元602;
处理单元601,用于在未探测到路径的PMTU之前,按照IPv6协议规定的最小MTU,通过收发单元602在路径上发送数据报文;
在探测到路径的PMTU后,按照探测到路径的PMTU,通过收发单元602在路径上发送后续数据报文。
可选地,处理单元601还用于:在按照IPv6协议规定的最小MTU,通过收发单元602在路径上发送数据报文之前,确定待发送的数据报文使用的路径的PMTU未知;按照IPv6协议规定的最小的MTU,通过收发单元602发 送待发送的数据报文,并进行路径的PMTU探测。可选地,处理单元601具体用于在满足下列条件中的至少一项时,确定路径的PMTU未知:
待发送的数据报文是HOST在路径上首次发送的数据报文;
HOST上的路径的PMTU表项已被删除;
HOST正在探测路径的PMTU;
收发单元602收到路径上的网络设备发送的指示消息,指示消息用于指示该网络设备在路径上收到的报文过长。
可选地,处理单元601具体用于:
以待发送的数据报文的源IP地址和目的IP地址构造探测报文,并通过收发单元602在路径上发送探测报文;
判断发送的探测报文是否被待发送的数据报文的目的接收端收到;
若确定探测报文被目的接收端收到,则将目的接收端收到的探测报文中使用的最大MTU作为探测到的路径的PMTU。
可选地,处理单元601还用于:在判断发送的探测报文是否被待发送的数据报文的目的接收端收到之后,
若确定探测报文未被目的接收端收到,则
判断是否收到路径上的网络设备发送的指示消息,指示消息用于指示该网络设备在路径上收到的报文过长;
若收到指示消息,则重复执行第一操作,直至探测报文被待发送的数据报文的目的接收端收到,或者连续发送N次探测报文均未收到指示消息且无法确定探测报文被目的接收端收到,N为正整数;
其中,第一操作包括:从指示消息中获取用于该网络设备所支持的MTU,按照获取的该MTU通过收发单元602再次发送探测报文;
若探测报文被待发送的数据报文的目的接收端收到,则将目的接收端收到的探测报文中使用的最大MTU作为探测到的路径的PMTU。
可选地,处理单元601具体用于:
若通过收发单元602连续发送N次探测报文均未收到指示消息且无法确 定探测报文被目的接收端收到,则重复执行第二操作,直至收发单元602收到指示消息或探测报文被目的接收端收到;
第二操作包括:设置第一MTU,并以设置的第一MTU通过收发单元602发送探测报文,其中第一MTU的长度不小于IPv6协议规定的最小MTU的长度,且第一MTU的长度不大于第二MTU的长度和第三MTU的长度中的较小值;第二MTU为当前HOST上的特定接口配置的MTU;第三MTU为收发单元602从特定接口上收到的路由通告RA报文中指示的MTU;特定接口为收发单元602发送待发送的数据报文所使用的出接口;
若重复执行第二操作过程中确定探测报文被待发送的数据报文的目的接收端收到,则将目的接收端收到的探测报文中使用的最大MTU作为探测到的路径的PMTU;
若重复执行第二操作过程中收到指示消息,则返回重复执行第一操作,直至探测报文被待发送的数据报文的目的接收端收到,或者连续发送N次探测报文均未收到指示消息且无法确定探测报文被目的接收端收到的步骤。
可选地,探测报文为传输层协议报文,探测报文的目的端口号为目的接收端未使用的端口号;处理单元601具体用于:在收发单元602在路径上发送探测报文之后,若收发单元602收到对端不可达报文,则确定探测报文被目的接收端收到;或
探测报文为ping报文,处理单元601具体用于:在收发单元602在路径上发送探测报文之后,若收到目的接收端的响应,则确定探测报文被目的接收端收到;或
探测报文为跟踪路由trace route报文,处理单元601具体用于:在收发单元602在路径上发送探测报文之后,若收发单元602收到接收端的响应,则确定探测报文被目的接收端收到;或
探测报文为传输层之上的协议报文,处理单元601具体用于:在收发单元602在路径上发送探测报文之后,若收发单元602收到目的接收端返回的与当前HOST预先约定的响应于探测报文的响应报文,则确定探测报文被目 的接收端收到。
可选地,在待发送的数据报文是当前主机HOST在路径上首次发送的数据报文时,或在当前HOST上的路径的PMTU表项已被删除时,确定路径的PMTU未知;
收发单元602具体用于:按照第二MTU和第三MTU中长度较小的MTU通过收发单元602发送第一个探测报文;
其中,第二MTU为HOST上的特定接口的配置的MTU;第三MTU为收发单元602从特定接口上收到的路由通告RA报文中指示的MTU;特定接口为收发单元602发送待发送的数据报文所使用的出接口。
可选地,处理单元601具体用于:在正在探测路径的PMTU时,确定路径的PMTU未知;
处理单元601具体用于:继续已经进行的路径的PMTU探测。
可选地,处理单元601具体用于:在收发单元602收到路径上的网络设备发送的指示消息时,确定路径的PMTU未知;
处理单元601具体用于:从该指示消息中获取的该网络设备所支持的MTU,按照获取的该MTU通过收发单元602发送进行的路径的PMTU探测过程中的第一个探测报文。
本发明实施例提供的上述数据报文的发送装置中,数据报文的传输路径可参考图2A及前面的相关描述。该装置中,处理单元601在控制数据报文发送时的方法,可参考前面的描述的数据报文的发送方法。该装置中,处理单元601确定路径的PMTU未知的条件可参考前述的“【确定路径的PMTU未知的条件】”。该装置中,处理单元601控制收发单元602进行PMTU探测的过程可参考前述的“【PMTU探测过程】”。该装置内部的实现可参考前述的“【HOST节点201的内部实现】”。该装置中,探测报文的类型及对应的探测报文长度的设置以及探测方案,可参考前述的“【几种可选的探测报文】”和“【探测报文长度设置】”中的描述。该装置可适用于前述的“【本发明实施例适用场景】”。
本发明实施例提供的上述数据报文的发送装置中,处理单元601可由处理器实现,收发单元602可由收发器实现,或由发射器和接收器实现,其中,发射器用于发送数据报文和消息等,接收器用于接收数据报文和消息等。实现该装置的处理器和收发器,或处理器和发射器以及接收器可集成在一个芯片或多个芯片上实现。
本发明实施例还提供一种主机,包括图6所示的数据报文发送装置。其中,图6所示的装置发送数据报文使用的出接口以及接收消息的接口,均为该主机上的接口。
图7为本发明实施例提供的另一种数据报文的发送装置,如图7所示,该装置包括:处理器701和收发器702,其中,
处理器701,用于本发明实施例提供的数据报文的发送方法;收发器702,用于在处理器701的控制下实现本发明实施例提供的数据报文的发送方法中的接收和发送。
其中,处理器701可由一个或多个处理器实现,收发器702可由收发器实现,或由发射器和接收器实现,其中,发射器用于发送数据报文和消息等,接收器用于接收数据报文和消息等。处理器701和收发器702可集成在一个芯片或多个芯片上实现。
综上,在本发明实施例中,IPv6网络中的发送端的HOST节点在未探测到路径的PMTU之前,按照IPv6协议规定的最小MTU在该路径上发送数据报文;在探测到该路径的PMTU后,按照探测到该路径的PMTU在该路径上发送后续数据报文。
由于在探测到路径的PMTU之前,使用IPv6协议规定的最小MTU发送后续数据报文,最小MTU可保证数据报文能通过路径上的具有任意MTU的网络设备,比如:路由器,因此保证了该路径上发送的数据报文可被目的接收端收到。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、 或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (11)

  1. 一种互联网协议版本6,IPv6,网络中数据报文的发送方法,其特征在于,包括:
    在未探测到所述路径的PMTU之前,按照IPv6协议规定的最小MTU在所述路径上发送数据报文;
    在探测到所述路径的PMTU后,按照探测到所述路径的PMTU在所述路径上发送后续数据报文。
  2. 如权利要求1所述的方法,其特征在于,在按照IPv6协议规定的最小MTU在所述路径上发送数据报文之前,还包括:
    确定待发送的数据报文使用的路径的路径最大传输单元PMTU未知;
    按照IPv6协议规定的最小的最大传输单元MTU发送所述待发送的数据报文,并进行所述路径的PMTU探测。
  3. 如权利要求2所述的方法,其特征在于,在满足下列条件中的至少一项时,确定所述路径的PMTU未知:
    所述待发送的数据报文是当前主机HOST在所述路径上首次发送的数据报文;
    当前HOST上的所述路径的PMTU表项已被删除;
    当前HOST正在探测所述路径的PMTU;
    当前HOST收到所述路径上的网络设备发送的指示消息,所述指示消息用于指示该网络设备在所述路径上收到的报文过长。
  4. 如权利要求2或3所述的方法,其特征在于,进行所述路径的PMTU探测,包括:
    以所述待发送的数据报文的源IP地址和目的IP地址构造探测报文,并在所述路径上发送所述探测报文;
    判断发送的所述探测报文是否被所述待发送的数据报文的目的接收端收到;
    若确定所述探测报文被所述目的接收端收到,则将所述目的接收端收到的所述探测报文中使用的最大MTU作为探测到的所述路径的PMTU。
  5. 如权利要求4所述的方法,其特征在于,
    所述探测报文为传输层协议报文,所述探测报文的目的端口号为所述目的接收端未使用的端口号;进行所述路径的PMTU探测,包括:在所述路径上发送所述探测报文之后,若收到对端不可达报文,则确定所述探测报文被所述目的接收端收到;或
    所述探测报文为ping报文,进行所述路径的PMTU探测,包括:在所述路径上发送所述探测报文之后,若收到所述目的接收端的响应,则确定所述探测报文被所述目的接收端收到;或
    所述探测报文为跟踪路由trace route报文,进行所述路径的PMTU探测,包括:在所述路径上发送所述探测报文之后,若收到所述接收端的响应,则确定所述探测报文被所述目的接收端收到;或
    所述探测报文为传输层之上的协议报文,进行所述路径的PMTU探测,包括:在所述路径上发送所述探测报文之后,若收到所述目的接收端返回的与当前HOST预先约定的响应于所述探测报文的响应报文,则确定所述探测报文被所述目的接收端收到。
  6. 如权利要求5所述的方法,其特征在于,在所述待发送的数据报文是当前主机HOST在所述路径上首次发送的数据报文时,或在当前HOST上的所述路径的PMTU表项已被删除时,确定所述路径的PMTU未知;
    进行所述路径的PMTU探测,包括:按照第二MTU和第三MTU中长度较小的MTU发送第一个所述探测报文;
    其中,所述第二MTU为当前HOST上的特定接口的配置的MTU;所述第三MTU为当前HOST从所述特定接口上收到的路由通告RA报文中指示的MTU;所述特定接口为当前HOST上发送所述待发送的数据报文所使用的出接口。
  7. 如权利要求5所述的方法,其特征在于,在收到所述路径上的网络设 备发送的所述指示消息时,确定所述路径的PMTU未知;
    进行所述路径的PMTU探测,包括:从该指示消息中获取的该网络设备所支持的MTU,按照获取的该MTU发送进行的所述路径的PMTU探测过程中的第一个所述探测报文。
  8. 一种互联网协议版本6,IPv6,网络中的数据报文的发送装置,其特征在于,包括:处理单元和收发单元;
    所述处理单元,用于实现如权利要求1~7任一项所述的方法,所述收发单元用于在所述处理单元的控制下实现所述方法中的接收和/或发送。
  9. 一种互联网协议版本6,IPv6,网络中主机HOST,其特征在于,包括如权利要求8所述的装置。
  10. 一种互联网协议版本6,IPv6,网络中的数据报文发送装置,其特征在于,包括:处理器和收发器;
    所述处理器,用于实现如权利要求1~7任一项所述的方法,所述收发器用于在所述处理器的控制下实现所述方法中的接收和/或发送。
  11. 一种互联网协议版本6,IPv6,网络中的主机HOST,其特征在于,包括:如权利要求10所述的装置。
PCT/CN2015/088693 2015-08-31 2015-08-31 一种IPv6网络中数据报文的发送方法及装置 WO2017035763A1 (zh)

Priority Applications (9)

Application Number Priority Date Filing Date Title
JP2018510989A JP6918784B2 (ja) 2015-08-31 2015-08-31 IPv6ネットワークにおけるデータパケット送信方法および装置
PCT/CN2015/088693 WO2017035763A1 (zh) 2015-08-31 2015-08-31 一种IPv6网络中数据报文的发送方法及装置
EP21164782.1A EP3905618A3 (en) 2015-08-31 2015-08-31 Data packet sending method and apparatus in ipv6 network
KR1020187008348A KR102063231B1 (ko) 2015-08-31 2015-08-31 IPV6(Internet Protocol version 6) 네트워크에서의 데이터 패킷 전송 방법 및 장치
EP15902570.9A EP3331205B1 (en) 2015-08-31 2015-08-31 Data packet transmission method utilized in ipv6 network and device utilizing same
CN202110543462.8A CN113411260B (zh) 2015-08-31 2015-08-31 一种IPv6网络中数据报文的发送方法及装置
CN201580082763.8A CN107925629B (zh) 2015-08-31 2015-08-31 一种IPv6网络中数据报文的发送方法及装置
US15/906,680 US10541899B2 (en) 2015-08-31 2018-02-27 Data packet sending method and apparatus in IPv6 network
US16/723,581 US11477106B2 (en) 2015-08-31 2019-12-20 Data packet sending method and apparatus in IPV6 network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2015/088693 WO2017035763A1 (zh) 2015-08-31 2015-08-31 一种IPv6网络中数据报文的发送方法及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/906,680 Continuation US10541899B2 (en) 2015-08-31 2018-02-27 Data packet sending method and apparatus in IPv6 network

Publications (1)

Publication Number Publication Date
WO2017035763A1 true WO2017035763A1 (zh) 2017-03-09

Family

ID=58186511

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/088693 WO2017035763A1 (zh) 2015-08-31 2015-08-31 一种IPv6网络中数据报文的发送方法及装置

Country Status (6)

Country Link
US (2) US10541899B2 (zh)
EP (2) EP3905618A3 (zh)
JP (1) JP6918784B2 (zh)
KR (1) KR102063231B1 (zh)
CN (2) CN107925629B (zh)
WO (1) WO2017035763A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10594618B1 (en) * 2017-06-06 2020-03-17 Juniper Networks, Inc Apparatus, system, and method for fragmenting packets into segments that comply with the maximum transmission unit of egress interfaces
US10523575B2 (en) * 2017-07-06 2019-12-31 T-Mobile Usa, Inc. Feedback loop for frame maximization
CN109120547A (zh) * 2018-08-16 2019-01-01 新华三技术有限公司 一种报文长度确定方法及装置
CN109379301A (zh) * 2018-12-19 2019-02-22 安徽皖通邮电股份有限公司 一种利用cfm检测通信路径mtu的方法
CN110191066B (zh) * 2019-06-14 2022-05-20 迈普通信技术股份有限公司 一种确定最大传输单元pmtu的方法、设备及系统
US11463371B2 (en) * 2019-12-02 2022-10-04 Citrix Systems, Inc. Discovery and adjustment of path maximum transmission unit
CN111654354B (zh) * 2020-05-28 2023-08-08 北京小米移动软件有限公司 最大传输单元mtu的探测方法、装置及存储介质
CN114006846B (zh) * 2020-07-13 2023-07-21 中国移动通信有限公司研究院 IPv6数据包的传输方法及装置
CN113055305B (zh) * 2021-02-28 2022-09-02 北京华三通信技术有限公司 报文处理方法及装置
CN113660198B (zh) * 2021-07-05 2023-05-16 广州鲁邦通物联网科技股份有限公司 一种网关安全通道自适应方法、管理单元和系统
CN113660167A (zh) * 2021-09-18 2021-11-16 中国电信股份有限公司 防止无效报文转发方法、装置以及存储介质
US11863515B2 (en) * 2021-12-10 2024-01-02 Cisco Technology, Inc. Systems and methods for translating IPV6 packets for DIA in an SD-WAN environment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1909503A (zh) * 2005-08-05 2007-02-07 华为技术有限公司 一种探测路径最大传输单元的方法
CN101022419A (zh) * 2007-03-27 2007-08-22 杭州华为三康技术有限公司 路径最大传输单元表项建立方法及报文发送方法和装置
CN101150520A (zh) * 2007-11-02 2008-03-26 杭州华三通信技术有限公司 调整路径最大传输单元的方法及装置
CN102325076A (zh) * 2011-05-24 2012-01-18 中兴通讯股份有限公司 一种路径最大传输单元发现方法和节点
WO2013120416A1 (en) * 2012-02-15 2013-08-22 Hangzhou H3C Technologies Co., Ltd. Path maximum transmission unit learning

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3511969B2 (ja) * 2000-03-07 2004-03-29 日本電気株式会社 Ipネットワークにおけるpmtu見積もり値検出の方法およびそのシステム
US20030117959A1 (en) * 2001-12-10 2003-06-26 Igor Taranov Methods and apparatus for placement of test packets onto a data communication network
KR100453056B1 (ko) * 2002-03-29 2004-10-15 삼성전자주식회사 동적 ip 네트워크 상에서의 pmtu 변경 방법 및 그장치
GB2398699A (en) * 2003-02-18 2004-08-25 Motorola Inc Determining a maximum transmission unit which may be transmitted over a particular route through a network
KR100506529B1 (ko) 2003-08-06 2005-08-03 삼성전자주식회사 데이터 통신 네트워크에서의 경로 엠티유 발견 네트워크장치, 시스템 및 그 방법
CN1716944A (zh) * 2004-06-28 2006-01-04 杭州华为三康技术有限公司 网络路径最大传输长度发现方法
CN100486241C (zh) * 2004-06-28 2009-05-06 杭州华三通信技术有限公司 获取隧道网关环境中路径最大传输长度的方法及系统
US7995478B2 (en) * 2007-05-30 2011-08-09 Sony Computer Entertainment Inc. Network communication with path MTU size discovery
CN101197783A (zh) * 2007-12-28 2008-06-11 华为技术有限公司 一种传输数据报文的方法和转换器
CN101252524A (zh) * 2008-04-08 2008-08-27 华为技术有限公司 一种报文传输的方法、系统和装置
US8908540B2 (en) * 2009-02-13 2014-12-09 Toshiba America Research, Inc. Efficient and loss tolerant method and mechanism for measuring available bandwidth
CN101616078B (zh) * 2009-07-16 2011-09-28 杭州华三通信技术有限公司 一种路径最大传输单元的发现方法、路由器及节点设备
JP5454318B2 (ja) * 2010-04-07 2014-03-26 富士通株式会社 帯域測定装置、帯域測定システム、帯域測定プログラム及び通信装置
US8576847B2 (en) * 2010-08-26 2013-11-05 International Business Machines Corporation Mechanisms for discovering path maximum transmission unit
CN102469016B (zh) * 2010-11-16 2014-11-05 杭州华三通信技术有限公司 反向确定路径最大传输单元的方法和装置
JP5657505B2 (ja) * 2011-11-24 2015-01-21 日本電信電話株式会社 ネットワークシステム、中継装置、通信方法、中継方法及び中継プログラム
JP5805575B2 (ja) * 2012-04-06 2015-11-04 日本電信電話株式会社 中継装置、中継方法及び中継プログラム
KR101924740B1 (ko) * 2012-12-18 2019-02-27 코닌클리즈케 케이피엔 엔.브이. 네트워크 프로빙
US9413652B2 (en) * 2013-02-19 2016-08-09 Dell Products L.P. Systems and methods for path maximum transmission unit discovery
JP2015109544A (ja) * 2013-12-04 2015-06-11 株式会社日立製作所 無線通信システム
CN103647724B (zh) * 2013-12-30 2017-04-19 大唐移动通信设备有限公司 一种mtu适配方法及装置
US9722919B2 (en) * 2014-01-22 2017-08-01 Cisco Technology, Inc. Tying data plane paths to a secure control plane
US9641430B2 (en) * 2014-01-22 2017-05-02 Cisco Technology, Inc. Verifying data plane paths based on a validated secure control plane
US9419889B2 (en) * 2014-03-07 2016-08-16 Nicira, Inc. Method and system for discovering a path of network traffic
US9877144B2 (en) * 2014-07-04 2018-01-23 Electronics And Telecommunications Research Institute Method for transmission of IPv6 packets over near field communication (NFC) and device operating the same
CN105634977B (zh) * 2014-10-29 2019-06-04 新华三技术有限公司 发现路径最大传输单元的方法和装置
US9544240B1 (en) * 2015-07-13 2017-01-10 Telefonaktiebolaget L M Ericsson (Publ) MTU discovery over multicast path using bit indexed explicit replication

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1909503A (zh) * 2005-08-05 2007-02-07 华为技术有限公司 一种探测路径最大传输单元的方法
CN101022419A (zh) * 2007-03-27 2007-08-22 杭州华为三康技术有限公司 路径最大传输单元表项建立方法及报文发送方法和装置
CN101150520A (zh) * 2007-11-02 2008-03-26 杭州华三通信技术有限公司 调整路径最大传输单元的方法及装置
CN102325076A (zh) * 2011-05-24 2012-01-18 中兴通讯股份有限公司 一种路径最大传输单元发现方法和节点
WO2013120416A1 (en) * 2012-02-15 2013-08-22 Hangzhou H3C Technologies Co., Ltd. Path maximum transmission unit learning

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CHENG, YOU-QING ET AL.: "A PMTU Discovery Mechanism Based on Routing Protocol in IPv6 Network", COMPUTER ENGINEERING & SCIENCE, vol. 35, no. 2, 25 February 2013 (2013-02-25), pages 43 - 48, XP055367474, ISSN: 1007-130X *
See also references of EP3331205A4 *

Also Published As

Publication number Publication date
CN113411260B (zh) 2023-04-18
CN107925629B (zh) 2021-05-18
JP6918784B2 (ja) 2021-08-11
EP3331205A1 (en) 2018-06-06
KR102063231B1 (ko) 2020-02-11
EP3905618A2 (en) 2021-11-03
JP2018525949A (ja) 2018-09-06
CN113411260A (zh) 2021-09-17
US11477106B2 (en) 2022-10-18
US10541899B2 (en) 2020-01-21
EP3331205B1 (en) 2021-03-31
CN107925629A (zh) 2018-04-17
EP3331205A4 (en) 2018-06-27
US20180205629A1 (en) 2018-07-19
US20200204472A1 (en) 2020-06-25
EP3905618A3 (en) 2022-02-16
KR20180048767A (ko) 2018-05-10

Similar Documents

Publication Publication Date Title
WO2017035763A1 (zh) 一种IPv6网络中数据报文的发送方法及装置
CN113411313B (zh) 数据传输方法、装置和系统
US10148573B2 (en) Packet processing method, node, and system
CN110999257B (zh) 用于服务器通知的递送的传送方法选择
CN104320345B (zh) Sdn网络中拓扑信息收集的方法及装置
US9548930B1 (en) Method for improving link selection at the borders of SDN and traditional networks
US10129722B2 (en) Service processing method and network device
US11677675B2 (en) Method and system for determining a path maximum transmission unit (MTU) between endpoints of a generic routing encapsulation (GRE) tunnel
CN106470136B (zh) 平台测试方法以及平台测试系统
WO2018121257A1 (zh) 报文发送方法、装置、系统以及存储介质
TWI580226B (zh) 決定最大分段大小値之方法
WO2018188663A1 (zh) 信息通告方法及装置
US20170302762A1 (en) Sdn, sdn configuration method, sdn-based data transmission method, and network controller
WO2016050177A1 (zh) 确定隧道最大传输单元的方法、网络设备和系统
JP2017503407A (ja) パケット処理方法および装置
CN110381007B (zh) Tcp加速方法及装置
WO2015096734A1 (zh) 一种业务数据的下行传输方法及分组数据网关
CN109951397B (zh) 报文处理的方法和设备
CN104219178A (zh) 基于Openflow控制报文处理方法、发送装置、接收装置和系统
JP5752644B2 (ja) 通信路終端装置、データサイズ決定方法およびデータサイズ決定プログラム
JP6134571B2 (ja) 疎通確認装置、ネットワークシステム、疎通確認方法、および疎通確認プログラム
JP5707576B2 (ja) ネットワーク送信器およびそのプログラム
JP2013219481A (ja) 中継装置、中継方法及び中継プログラム
JP2019024266A (ja) パケット処理方法および装置
JP2010050670A (ja) データ通信システム、データ通信方法およびデータ通信システムを構成する情報処理装置

Legal Events

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

Ref document number: 15902570

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2018510989

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2015902570

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 20187008348

Country of ref document: KR

Kind code of ref document: A