WO2023173876A1 - 数据通信方法、装置、设备和介质 - Google Patents

数据通信方法、装置、设备和介质 Download PDF

Info

Publication number
WO2023173876A1
WO2023173876A1 PCT/CN2022/141439 CN2022141439W WO2023173876A1 WO 2023173876 A1 WO2023173876 A1 WO 2023173876A1 CN 2022141439 W CN2022141439 W CN 2022141439W WO 2023173876 A1 WO2023173876 A1 WO 2023173876A1
Authority
WO
WIPO (PCT)
Prior art keywords
target
mtu
network
data
length
Prior art date
Application number
PCT/CN2022/141439
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 WO2023173876A1 publication Critical patent/WO2023173876A1/zh

Links

Images

Classifications

    • 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/22Traffic shaping
    • 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]

Definitions

  • the present application relates to the field of computer technology, and in particular, to a data communication method, device, equipment and medium.
  • the Maximum Transmission Unit (MTU) of the link layer of the network where the electronic device is located is used to limit the size of the data packets sent to the link layer from the electronic device. If the data packet size exceeds the MTU, the data packet needs to be fragmented. Then it is sent out through the link layer.
  • MTU also exists in the link layer of the operator's network. Therefore, when the link layer MTU of the network where the electronic device is located is greater than the link layer MTU of the operator's network, the operator's network may receive the data packet sent by the electronic device. The data packet needs to be fragmented before being sent to other devices.
  • electronic devices In order to avoid sending too large data packets to the operator network, electronic devices generally use the communication module to determine the protocol configuration options included in the Packet Data Network (PDN) data packets fed back by the operator network during the network deployment process. (Protocol Configuration Option, PCO) whether the operator network link layer MTU value is included. If it is determined not to be included, use the preconfigured MTU or the default Ethernet link layer MTU (1500 bytes) as the MTU of the electronic device. to send data packets.
  • PDN Packet Data Network
  • the preconfigured MTU or default MTU in the electronic device is not the real operator network link layer MTU, there is no guarantee that the size of the data packet sent by the electronic device will not exceed the limit, or it may cause the operator to consume a lot of resources after receiving the data packet. Perform fragmentation processing to cause network congestion.
  • a data communication method, apparatus, equipment and medium are provided.
  • embodiments of the present application provide a data communication method, which is applied to a communication module.
  • the communication module is communicatively connected to a host.
  • the method includes:
  • the target MTU is the MTU that the operator network expects to receive
  • the target network node is the communication mode The first network node through which the group accesses the operator's network
  • the target MTU is sent to the host so that the length of the IP packet sent to the operator network through the host does not exceed the target MTU.
  • a data communication device including:
  • a first receiving unit configured to receive packet data network PDN data packets from the operator network when the data communication device is stationed on the network;
  • a first acquisition unit configured to acquire the address of the target network node when it is determined that the PDN data packet does not include the target maximum transmission unit MTU, where the target MTU is the MTU that the operator network expects to receive, and the target The network node is the first network node through which the data communication device accesses the operator network;
  • a first sending unit configured to send a target detection message to the target network node, where the data length of the target detection message is the first data length;
  • a second receiving unit configured to receive a response message to the target detection message
  • An obtaining unit configured to obtain the target MTU according to the response message
  • the second sending unit is configured to send the target MTU to the host so that the length of the IP packet sent to the operator network through the host does not exceed the target MTU.
  • embodiments of the present application provide an electronic device, including: a memory and a processor, wherein the memory and the processor are communicably connected to each other; wherein the memory stores program instructions; the program instructions When executed by the processor, the processor is caused to execute the method described in the first aspect and any possible implementation manner in the first aspect.
  • the present application provides a computer-readable storage medium.
  • a computer program is stored in the computer-readable storage medium.
  • the computer program includes program instructions.
  • the program instructions cause the processing when executed by a processor.
  • the processor performs the method described in the first aspect and any possible implementation manner of the first aspect.
  • the present application provides a computer program product.
  • the computer program product includes a computer program or computer code. When run on a computer, the computer program product enables the above-mentioned first aspect or any possible implementation of the first aspect. The method is executed.
  • Figure 1 is a system architecture diagram of data communication provided by an embodiment of the present application.
  • Figure 2 is a schematic structural diagram of a data frame provided by an embodiment of the present application.
  • Figure 3 is a schematic flow chart of a data communication method provided by an embodiment of the present application.
  • Figure 4 is a specific flow chart of a data communication method provided by an embodiment of the present application.
  • Figure 5 is a schematic flow chart of another data communication method provided by an embodiment of the present application.
  • Figure 6 is a schematic structural diagram of a data communication device provided by an embodiment of the present application.
  • FIG. 7 is a schematic structural diagram of an electronic device provided by an embodiment of the present application.
  • an embodiment means that a particular feature, structure or characteristic described in connection with the embodiment may be included in at least one embodiment of the present application.
  • the appearances of the above phrases in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Those skilled in the art will understand, both explicitly and implicitly, that the embodiments described herein may be combined with other embodiments.
  • Figure 1 is a system architecture diagram of data communication provided by an embodiment of the present application.
  • the system includes a communication module 110, a host 120 and a target network node 130.
  • the communication module is connected to the operator's network through the target network node, and the communication module is connected to the host.
  • the communication module can be understood as a cellular communication module, and specifically it can be a functional module that implements 2G, 3G, 4G or 5G cellular mobile communication technology.
  • the communication module integrates baseband chips, memory, power amplifier devices and other components on a circuit board and provides standard interfaces for electronic equipment. Various types of electronic equipment can achieve communication functions with the help of the above communication modules.
  • the communication module can carry end-to-end and end-to-backend server data interaction and is a channel for user data transmission.
  • the above-mentioned host includes a network interface.
  • the network interface of the host is used to encapsulate Internet Protocol (IP) data packets (also known as IP messages) into data frames (Frame) and then send them to the network.
  • IP Internet Protocol
  • a data frame includes a frame header, an IP message, and a frame trailer.
  • the frame header may include a Media Access Control (MAC) header.
  • IP messages can include IP headers and Transmission Control Protocol (TCP) messages.
  • the frame tail includes the frame check sequence (FCS).
  • the maximum length of an IP packet should not exceed the MTU. That is to say, the length of the IP packet contained in the data frame sent to the network through the above network interface does not exceed the MTU configured on the network interface of the host.
  • the Ethernet MTU is generally 1500 bytes.
  • the above-mentioned host may be an electronic device, and the electronic device may include a computer, a server, etc.
  • the target network node may be the first network node through which the communication module accesses the operator's network.
  • the operator network is the mobile communication network operator used by the communication module, such as a mobile operator network, a China Unicom operator network or a telecommunications operator network.
  • the entire operator network may include one or more base stations and one or more core network equipment. Therefore, the above-mentioned target network node may be the first base station through which the communication module accesses the core network.
  • Figure 3 is a schematic flow chart of a data communication method provided by an embodiment of the present application. This method can be applied to a communication module that is communicatively connected to the host. As shown in Figure 3, the method may include the following steps:
  • Step 301 When the above communication module is stationed in the network, receive the packet data network PDN data packet from the operator network.
  • the communication module when the communication module is stationed on the network (that is, connected to the core network in the above-mentioned operator network), it will send a data network activation request to the core network.
  • the core network In response to the data network activation request, the core network will send response information, which includes a Packet Data Network (PDN) data packet.
  • the PDN data packet can include Protocol Configuration Option (PCO).
  • PCO Protocol Configuration Option
  • the PCO may carry the MTU determined by the operator's network, which is also the MTU that the core network in the operator's network expects to receive (referred to as the target MTU in this application). The target MTU may not be carried in the PCO.
  • the communication module receives the PDN data packet from the operator network, indicating that the data network activation is successful and the mobile data network activation is completed.
  • Step 302 When it is determined that the above-mentioned PDN data packet does not include the target maximum transmission unit MTU, obtain the address of the target network node.
  • the target MTU is the MTU determined by the operator network
  • the target network node is the first network node through which the communication module accesses the operator network.
  • the communication module after receiving the above-mentioned PDN data packet, the communication module first determines whether the PDN data packet includes the target MTU. If it is determined that the PDN data packet includes the target MTU, the communication module can pass the target MTU to the network interface of the host, so that the host limits the size of the data packet (ie, IP message) sent to the network based on the target MTU. This prevents data packets transmitted to the network from being too large, occupying resources for re-fragmentation and reassembly processing, and causing network congestion.
  • the communication module after receiving the above-mentioned PDN data packet, the communication module first determines whether the PDN data packet includes the target MTU. If it is determined that the PDN data packet includes the target MTU, the communication module can pass the target MTU to the network interface of the host, so that the host limits the size of the data packet (ie, IP message) sent to the network based on the target MTU. This prevents data packets transmitted to the network from being too large,
  • the communication module can actively obtain the target MTU (that is, the MTU of the operator's network) and pass the actively obtained target MTU to the network interface of the host. In this way, it can be ensured that the data packets sent by the host to the network will not exceed the limits of the operator's network, avoid wasting CPU resources for fragmentation and reassembly, and help improve the quality of network data transmission.
  • the communication module wants to actively obtain the target MTU, it can first obtain the address of the target network node, so that it can subsequently obtain the target MTU by actively sending a message to the address.
  • the target network node is the first network node through which the communication module accesses the operator's network, all data packets sent by the communication module to the operator's network must pass through this network node. Therefore, the target network node can be The MTU is determined as the MTU of the carrier network.
  • the communication module can obtain the address of the target network node through a route tracing program.
  • the process may include: obtaining the addresses of multiple network nodes between the communication module and the default server through the route tracing program; according to the above
  • the addresses of multiple network nodes are used to obtain the address of the above target network node.
  • the default server can be a well-known server, such as Baidu server, etc. Since the traceroute program can be used to determine the path taken by the IP data packet to access the target, the addresses of multiple network nodes passed between the communication module and the preset server can be obtained through the traceroute program.
  • the addresses of the multiple network nodes generally include the address of the target network node. Because the target network node is the first network node that the communication module accesses the operator's network, the address of the target network node can be obtained based on the addresses of the multiple network nodes.
  • Step 303 Send a target detection message to the above-mentioned target network node.
  • the data length of the target detection message is the first data length.
  • the first data length is a preset length, and the preset length may be related to the Ethernet MTU.
  • Target detection messages may be sent through the Internet Packet Explorer (Packet Internet Groper, ping) program. Therefore, the target detection message may be an Internet Control Message Protocol (ICMP) message, specifically an ICMP echo request message. After receiving the ICMP echo request message, the target network node will send an ICMP echo response message as a response message.
  • the communication module can determine the above target MTU based on the received response message.
  • the following step may also be included: determining the first data length based on the first MTU and the first value.
  • the above-mentioned first MTU may be the MTU in the Ethernet protocol, that is, 1500 bytes.
  • the above-mentioned first value is the sum of the length of the Internet Protocol IP header and the above-mentioned ICMP header.
  • the above-mentioned IP header length and the above-mentioned ICMP header length are respectively the IP header length corresponding to the Internet Protocol version configured in the above-mentioned communication module. and ICMP header length.
  • the first data length may be the difference between the first MTU and the first value.
  • the IP header length is 20 bytes
  • the ICMP header length is 8 bytes
  • the IP header length is 40 bytes
  • the ICMP header length is 8 bytes
  • the data packet size can be determined based on the real operator network MTU to avoid the data packet exceeding the operator network limit. , affecting the quality of network data transmission.
  • the fragmentation prohibition flag (Don't Fragment, DF) in the IP header of the target detection message can be set to allow fragmentation, and the target can be pinged by pinging the program.
  • the network node sends the target detection message.
  • the fragmentation prohibition flag is used to indicate whether the receiving end can fragment the data packet sent by the sending end.
  • Step 304 Receive a response message for the target detection message, and obtain the target MTU according to the response message.
  • the data length of the target detection message is the first data length
  • the fragmentation prohibition flag in the IP header of the target detection message is set to allow fragmentation
  • the MTU of the operator network is smaller than the Ethernet MTU.
  • the target network node's response message to the above target detection message may include multiple messages. Therefore, when it is determined that the response message includes the first response message, the target MTU can be obtained according to the first response message.
  • the fragmentation prohibition flag DF in the IP header of the above-mentioned first response message is set to allow fragmentation
  • the more fragmentation flag (More Fragment, MF) in the IP header of the above-mentioned first response message is set to OK More shards exist.
  • the first response message may be the first message among the multiple messages included in the above-mentioned response message (or in other words, not the last message among the multiple messages included in the above-mentioned response message), Therefore, the data part of the first response message is the target network node.
  • the data length of the first response message is related to the MTU of the target network node.
  • the MTU of the target network node can be obtained according to the first response message, that is, the target MTU can be obtained.
  • obtaining the target MTU according to the first response message may include the following steps: obtaining the data length of the first response message, and taking the sum of the data length of the first response message and the first value as The above target MTU.
  • the data length of the first response message is the length of the data part of the message (excluding the IP header and ICMP header)
  • the first value is the IP header corresponding to the Internet Protocol version configured in the communication module.
  • the sum of the length and the length of the ICMP header is the Internet version of the core network has at least one Internet Protocol version that is consistent with the Internet Protocol version of the device connected to the core network. Therefore, the first value is the same as the data of the first response message.
  • the sum of the lengths can be used as the target MTU above.
  • the target MTU is obtained based on the first response message.
  • the MTU of the operator network is smaller than the Ethernet MTU, the MTU of the operator network can be obtained quickly and conveniently, thereby ensuring that the size of the data packet sent to the operator network does not exceed Limitation will help improve the data transmission efficiency of the entire network.
  • the data length of the target detection message can be determined as the first data length, and the first data length is set as the difference between the Ethernet MTU (1500 bytes) and the first value, And set the fragmentation prohibition flag DF in the IP header of the target detection message to prohibit fragmentation, and then send the target detection message to the target network node through the ping program.
  • the target network node After the target network node receives the target detection message, if it is determined that the data length of the target detection message is greater than the MTU of the target network node, it will return an ICMP error message to the communication module as a response message; and if it is determined that the target detection message is If the data length of the message is less than or equal to the MTU of the target network node, an ICMP echo response message will be returned to the communication module as a response message.
  • step 304 after receiving the response message from the target network node, the communication module performs different steps according to the type of the received response message: when the received response message is an ICMP error message When, reduce the first data length and continue to send the target detection message, repeat the above steps of sending the target detection message and receiving the response message, until the received response message is an ICMP echo response message, according to the ICMP
  • the first response message included in the echo response message obtains the target MTU; when the received response message is an ICMP echo response message, and the MTU of the target network node is greater than the Ethernet MTU, the Ethernet MTU can be directly used as Target MTU, passed to the host's network interface.
  • Another way is provided to obtain the target MTU by sending target detection messages, thereby ensuring that data packets sent to the network will not exceed the limit and avoid affecting network quality. It is understandable that the above two methods can be used to obtain the target MTU through the ping program, thereby ensuring that the size of the data packet sent to the network does not exceed the limit.
  • Step 305 Send the target MTU to the host so that the length of the IP packet sent by the host to the operator network does not exceed the target MTU.
  • the communication module can send the target MTU to the host so that the length of the IP packet sent by the host to the operator network does not exceed the target MTU.
  • the communication module implements the above data communication method and can actively obtain the MTU of the operator's network and pass it to the host's network interface, thereby ensuring that the data packets sent by the host to the operator's network do not exceed the limits of the operator's network and avoid network congestion.
  • the communication module when the PDN data packet received from the operator network when the communication module is stationed in the network does not include the target MTU, the communication module actively sends a target detection message to the target network node to obtain the target MTU.
  • the communication module to actively complete the acquisition of the MTU of the operator's network, without waiting for manual instructions to obtain the MTU of the operator's network, which is conducive to improving the intelligence of the communication module and enhancing the business processing capabilities of the communication module. , improve the data transmission efficiency of the network.
  • the communication module passes the obtained target MTU to the host's network interface so that the data packets sent by the host to the operator's network do not exceed the target MTU.
  • steps in the flowchart of FIG. 3 are shown in sequence as indicated by arrows, these steps are not necessarily executed in the order indicated by arrows. Unless explicitly stated in this article, the execution of these steps is not strictly limited in order, and they can be executed in other orders. Moreover, at least some of the steps in the figure may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily executed at the same time, but may be executed at different times, and their execution order is not necessarily sequential. may be performed in turn or alternately with other steps or sub-steps of other steps or at least part of stages.
  • the method includes the following steps:
  • the communication module When stationed in the network, the communication module receives packet data network PDN data packets from the operator's network.
  • the communication module determines whether the PDN data packet includes the target MTU.
  • step 7 If it is determined that the target MTU is included, jump to step 7); if it is determined that the target MTU is not included, the communication module automatically sends a route tracking service to a preset server address to obtain the address of the target network node.
  • the service processing AP module in the communication module first automatically builds in dialing (that is, obtains the IP address assigned to the communication module by the operator's network), and then performs route tracking after successful dialing.
  • the preset server address can be www.baidu.com.
  • To issue the route tracing service you can execute the command: traceroute www.baidu.com.
  • the IP address of the target network node can be obtained based on the results of route tracing.
  • the communication module sends the target detection message to the address of the target network node.
  • the data length of the target detection message can be 1472, which is ping
  • the communication module obtains the response message of the target network node for the target detection message, and determines that the response message includes the first response message.
  • the communication module obtains the response message, and if it is determined that the DF field of the IP header of the first message in the response message is 0 and the MF field is 1, then it is determined that the response message includes the first response message.
  • the communication module obtains the target MTU according to the first response message.
  • data length in the first response message received is 1000 bytes
  • the communication module passes the target MTU to the network interface of the host.
  • the target MTU can be used as the MTU parameter of the network interface, so that the size of the data packet sent by the host through the network interface does not exceed the target MTU.
  • the data The communication method includes the following steps:
  • Step 501 Calculate the target data length according to the target maximum transmission unit MTU, and determine the smaller of the target data length and the second data length as the third data length.
  • the above target data length is the maximum data length (Maximum Segment Size, MSS) determined by the operator's network.
  • MSS Maximum Segment Size
  • the above-mentioned second data length is the MSS of the TCP message that the above-mentioned communication module expects to receive.
  • the above target data length is the maximum data length determined by the operator network. It can also be understood that the operator network determines the above target data length through the above target MTU. Specifically: the target MTU configured by the operator network for the client determines the above target data length.
  • the communication module can obtain the target MTU by implementing the data communication method shown in Figure 3 and Figure 4, and then calculate the target data length according to the target MTU and the conversion formula between the target MTU and MSS.
  • the target data length can also be understood as the MSS value configured by the operator network for the client.
  • the operator network does not need to segment the TCP packet for transmission.
  • the target TCP message length is only the MSS value configured by the operator network for the client according to the needs. It does not represent the maximum MSS value supported by the operator network as the target data length.
  • the operator network can also support a target data length larger than the target length. The MSS value with larger data length is not limited in this article.
  • Step 502 Obtain the fourth data length sent by the server through the Transmission Control Protocol/Internet Protocol TCP/IP protocol stack, and determine the fifth data length based on the smaller of the third data length and the fourth data length. .
  • the above-mentioned TCP/IP protocol stack is configured in the above-mentioned communication module, and the above-mentioned server communicates with the above-mentioned communication module through the above-mentioned operator network. Specifically, the above-mentioned server communicates with the above-mentioned communication module through a base station in the operator network. Wireless connections.
  • the above-mentioned communication module and the above-mentioned host form a client.
  • the above-mentioned client and the above-mentioned server are configured with the TCP/IP protocol.
  • the above-mentioned TCP/IP protocol at least includes IP and TCP protocols.
  • the above-mentioned client and the server use the TCP protocol to conduct Reliable data communications.
  • the above-mentioned communication module when the above-mentioned communication module performs the second TCP handshake in the TCP three-way handshake with the server based on the TCP/IP protocol stack, it receives the above-mentioned fourth data length sent by the server.
  • the protocol configured in the operator's network to implement link layer data transmission and address encapsulation with the client is the 802.3 protocol.
  • the client receives the target MTU sent by the base station as 1492 bytes, and the base station communicates with the client.
  • the protocol configured in the client to implement link layer data transmission and address encapsulation is the Ethernet protocol.
  • the target data length is determined to be the fifth data length. If the minimum data length among the target data length, the second data length and the fourth data length is the second data length, then the second data length is determined to be the fifth data length. If the minimum data length among the target data length, the second data length and the fourth data length is the fourth data length, then the fourth data length is determined to be the fifth data length.
  • the Internet Protocol version of the base station or the core network communicating with the base station has at least one Internet Protocol version that is consistent with the Internet Protocol version of the device connected to the base station.
  • the Internet Protocol version of the base station is IPV4/IPV6, and the Internet Protocol version of the client connected to the base station is IPV4.
  • the communication between the base station and the client is based on the Internet Protocol version supported by the client. That is to say, in this case, after the client receives the MTU sent by the base station, it calculates the above target data length based on the length of the IP header and the length of the TCP header defined in IPV4.
  • the fourth data length sent by the server is obtained through the Transmission Control Protocol/Internet Protocol TCP/IP protocol stack, and the third data length and the fourth data length are determined according to the smaller of the third data length and the fourth data length.
  • Determining the fifth data length includes: the communication module sends the third data length to the server through the TCP/IP protocol stack; the communication module receives the third data length through the TCP/IP protocol stack. The fourth data length sent by the server; the communication module determines that the smaller of the third data length and the fourth data length is the fifth data length.
  • Step 503 Send a target TCP message to the server.
  • the length of the target TCP message is determined based on the fifth data length.
  • the client sends the target TCP message to the server.
  • the application layer in the client sends the data part of the target TCP message to the network layer in the client; the network layer sends the data part of the target TCP message according to the target TCP message.
  • the data part, TCP header and IP header of the message determine the IP data packet sent to the data link layer; the client's data link layer then determines the IP data packet sent to the data link layer based on the data part, TCP header, IP header and MAC of the target TCP message.
  • the header forms a target data frame and sends the target data frame to the server via the physical layer.
  • the target data frame includes the target TCP message.
  • the data length of the target TCP message in the target data frame (that is, the length of the data part of the target TCP message) is consistent with the above-mentioned fifth data length, and the fifth data The length is the smallest one among the target data length, the second data length, and the fourth data length, so the data length of the target TCP message does not exceed the target data length.
  • target data frame may also include other fields in addition to the data part of the target TCP message, TCP header, IP header and MAC header. This article does not limit this.
  • the target data frame The frame check sequence FCS field may also be included.
  • the communication module After the communication module obtains the target MTU of the operator's network by using the data communication method as shown in Figure 3 and Figure 4, it can further implement the data communication method as shown in Figure 5 to obtain the fifth data length, and Send data to the server for communication based on the above fifth data length (the fifth data length does not exceed the target data length).
  • the operator network After the data is transmitted to the operator network (base station or core network), the operator network will no longer divide the data.
  • Slice processing means that data does not need to be reorganized after it reaches the server, thereby improving network resource utilization, saving CPU processing resources and network broadband resources, avoiding network congestion, and improving the data transmission efficiency of communication modules.
  • the communication module can not only serve as a data transmission tool, but also intelligently process some services (such as the service of determining the above-mentioned fifth data length) to save network resources. Help improve the data service processing capabilities of the entire network.
  • steps in the flowchart of FIG. 5 are shown in sequence as indicated by arrows, these steps are not necessarily executed in the order indicated by arrows. Unless explicitly stated in this article, the execution of these steps is not strictly limited in order, and they can be executed in other orders. Moreover, at least some of the steps in the figure may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily executed at the same time, but may be executed at different times, and their execution order is not necessarily sequential. may be performed in turn or alternately with other steps or sub-steps of other steps or at least part of stages.
  • Figure 6 is a schematic structural diagram of a data communication device provided by an embodiment of the present application. As shown in Figure 6, the device includes:
  • the first receiving unit 601 is configured to receive packet data network PDN data packets from the operator network when the data communication device is stationed on the network;
  • the first obtaining unit 602 is configured to obtain the address of the target network node when it is determined that the PDN data packet does not include the target maximum transmission unit MTU.
  • the target MTU is the MTU determined by the operator network, and the target network node is the above-mentioned MTU.
  • the first sending unit 603 is configured to send a target detection message to the above-mentioned target network node, and the data length of the above-mentioned target detection message is the first data length;
  • the second receiving unit 604 is configured to receive a response message for the above-mentioned target detection message
  • Obtaining unit 605 is used to obtain the target MTU according to the response message
  • the second sending unit 606 is configured to send the target MTU to the host so that the length of the IP packet sent by the host to the operator network does not exceed the target MTU.
  • the above device also includes:
  • a first determination unit configured to determine the first data length based on a first MTU and a first value, where the first MTU is the MTU in the Ethernet protocol, and the first value is the Network Interconnection Protocol IP header length and the ICMP header
  • the sum of the header lengths, the above-mentioned IP header length and the above-mentioned ICMP header length are respectively the IP header length and ICMP header length corresponding to the Internet Protocol version configured in the above-mentioned communication module.
  • the above-mentioned first acquisition unit 602 includes:
  • the route tracking subunit is used to obtain the addresses of multiple network nodes between the above-mentioned communication module and the preset server through the route tracking program;
  • the determining subunit is used to obtain the address of the target network node according to the addresses of the plurality of network nodes.
  • the above-mentioned first sending unit 603 is specifically used to:
  • the above obtaining unit 605 is specifically used for:
  • the target MTU is obtained according to the first response message, and the fragmentation prohibition flag DF in the IP header of the first response message is set to allow fragmentation, And the more fragmentation flag MF in the IP header of the first response message is set to determine that there are more fragments.
  • the above obtaining unit 605 is specifically used to:
  • the device further includes:
  • the second determination unit is configured to calculate the target data length according to the target MTU, and determine the smaller data length of the target data length and the second data length as the third data length, and the target data length is the operator
  • the maximum data length determined by the network, the second data length is the maximum data length of the TCP message that the communication module expects to receive;
  • the second acquisition unit is used to acquire the fourth data length sent by the server through the Transmission Control Protocol/Internet Protocol TCP/IP protocol stack.
  • the TCP/IP protocol stack is configured in the communication module.
  • the server passes The operator network is communicatively connected to the communication module;
  • a third determination unit configured to determine a fifth data length according to the smaller of the third data length and the fourth data length
  • the third sending unit is configured to send a target TCP message whose data length does not exceed the target data length to the server, and the length of the target TCP message is determined based on the fifth data length.
  • Each unit in the above device can be implemented in whole or in part by software, hardware and combinations thereof.
  • Each of the above units can be embedded in or independent of the processor in the communication module in the form of hardware, or can be stored in the memory of the communication module in the form of software, so that the processor can call and execute the operations corresponding to each of the above units.
  • FIG. 7 is a schematic structural diagram of an electronic device provided by an embodiment of the present application.
  • the above-mentioned electronic device includes a memory 701 and a processor 702 .
  • a communication interface 703 and a bus 704 may also be included, wherein the memory 701, the processor 702, and the communication interface 703 implement communication connections with each other through the bus 704.
  • the electronic device may be a communication module that performs the method shown in Figure 3, or it may be an electronic device including the above communication module. When the electronic device includes the above communication module, the communication module is controlled to perform the method shown in Figure 3. method.
  • the memory 701 is used to provide storage space, and data such as operating systems and computer programs can be stored in the storage space.
  • Memory 701 includes, but is not limited to, random access memory (RAM), read-only memory (ROM), erasable programmable read only memory (EPROM), or Portable read-only memory (compact disc read-only memory, CD-ROM).
  • the processor 702 is a module that performs arithmetic operations and logical operations, and can be a processing module such as a central processing unit (CPU), a graphics processor (GPU) or a microprocessor (microprocessor unit, MPU). one or a combination of multiple.
  • a processing module such as a central processing unit (CPU), a graphics processor (GPU) or a microprocessor (microprocessor unit, MPU). one or a combination of multiple.
  • a computer program is stored in the memory 701, and the processor 702 calls the computer program stored in the memory 701 to perform the following operations:
  • the above communication module When the above communication module is stationed in the network, it receives packet data network PDN data packets from the operator's network;
  • the address of the target network node is obtained.
  • the above-mentioned target MTU is the MTU determined by the above-mentioned operator network, and the above-mentioned target network node is the above-mentioned communication module connected to the above-mentioned operator.
  • Embodiments of the present application also provide a computer-readable storage medium.
  • a computer program is stored in the computer-readable storage medium.
  • the above method embodiments can be implemented. method shown.
  • An embodiment of the present application also provides a computer program product.
  • the above computer program product is run on a processor, the method shown in the above method embodiment can be implemented.
  • the term “when” may be interpreted to mean “if" or “after” or “in response to determining" or “in response to detecting" depending on the context.
  • the phrase “when determining" or “if (stated condition or event) is detected” may be interpreted to mean “if it is determined" or “in response to determining" or “on detecting (stated condition or event)” or “in response to detecting (stated condition or event)”.
  • the embodiments may be implemented in whole or in part by software, hardware, firmware, or any combination thereof.
  • software When implemented using software, it may be implemented in whole or in part in the form of a computer program product.
  • the computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on the computer, the processes or functions according to the embodiments of the present application are generated in whole or in part.
  • the computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable device.
  • the computer instructions may be stored in or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted over a wired connection from a website, computer, server, or data center (such as coaxial cable, optical fiber, digital subscriber line) or wireless (such as infrared, wireless, microwave, etc.) means to transmit to another website, computer, server or data center.
  • the computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server or data center integrated with one or more available media.
  • the available media may be magnetic media (eg, floppy disk, hard disk, magnetic tape), optical media (eg, DVD), or semiconductor media (eg, solid state drive), etc.
  • the program can be stored in a computer-readable storage medium. When the program is executed When doing so, the process of each method embodiment may be included.
  • the aforementioned storage media include: ROM, random access memory (RAM), magnetic disks, optical disks and other media that can store program codes.

Landscapes

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

Abstract

本申请提供一种数据通信方法、装置、设备和介质,该方法应用于通信模组,通信模组与主机通信连接,该方法包括:在通信模组驻网时,接收来自运营商网络的分组数据网PDN数据包;在确定PDN数据包不包括目标最大传输单元MTU的情况下,获取目标网络节点的地址;向目标网络节点发送目标探测报文;接收针对目标探测报文的应答报文,并根据应答报文获得目标MTU;向主机发送目标MTU以使得主机向运营商网络发送的IP报文的长度不超过目标MTU。

Description

数据通信方法、装置、设备和介质
本申请要求于2022年03月15日提交中国专利局、申请号为202210254084.6、申请名称为“数据通信方法、装置、设备和介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据通信方法、装置、设备和介质。
背景技术
电子设备间进行移动通信时,用于通信的数据包需要经过运营商网络的设备。电子设备所在网络的链路层的最大传输单元(Maximum Transmission Unit,MTU)用于限制电子设备中下发到链路层的数据包的大小,若数据包大小超过MTU,需要将数据包分片后再经过链路层发送出去。同样的,运营商网络的链路层也存在MTU,因此,当电子设备所在网络的链路层MTU大于运营商网络的链路层MTU时,运营商网络接收到电子设备发送的数据包后可能需要对数据包进行分片处理后再发送给其他设备。
电子设备为了避免发送过大的数据包给运营商网络,一般会在驻网过程中,通过通信模组确定运营商网络反馈的分组数据网(Packet Data Network,PDN)数据包包括的协议配置选项(Protocol Configuration Option,PCO)中是否包括运营商网络链路层MTU值,若确定不包括的话,使用预配置的MTU或者默认的以太网链路层MTU(1500字节)作为电子设备的MTU,来发送数据包。
由于电子设备中预配置的MTU或默认MTU并不是真正的运营商网络链路层MTU,因此无法保证电子设备发送的数据包大小不超出限制,还是可能导致运营商接收到数据包后消耗大量资源进行分片处理,产生网络拥塞。
发明内容
根据本申请的各种实施例,提供一种数据通信方法、装置、设备和介质。
第一方面,本申请实施例提供一种数据通信方法,应用于通信模组,所述通信模组与主机通信连接,所述方法包括:
在所述通信模组驻网时,接收来自运营商网络的分组数据网PDN数据包;
在确定所述PDN数据包不包括目标最大传输单元MTU的情况下,获取目标网络节点的地址,所述目标MTU为所述运营商网络期待接收的MTU,所述目标网络节点为所述通信模组接入所述运营商网络所经过的第一个网络节点;
向所述目标网络节点发送目标探测报文,所述目标探测报文的数据长度为第一数据长度;
接收针对所述目标探测报文的应答报文,并根据所述应答报文获得所述目标MTU;
向所述主机发送所述目标MTU以使得通过所述主机向所述运营商网络发送的IP报文的长度不超过所述目标MTU。
第二方面,本申请实施例提供一种数据通信装置,包括:
第一接收单元,用于在所述数据通信装置驻网时,接收来自运营商网络的分组数据网PDN数据包;
第一获取单元,用于在确定所述PDN数据包不包括目标最大传输单元MTU的情况下,获取目标网络节点的地址,所述目标MTU为所述运营商网络期待接收的MTU,所述目标网络节点为所述数据通信装置接入所述运营商网络所经过的第一个网络节点;
第一发送单元,用于向所述目标网络节点发送目标探测报文,所述目标探测报文的数据长度为第一数据长度;
第二接收单元,用于接收针对所述目标探测报文的应答报文;
获得单元,用于根据所述应答报文获得所述目标MTU;
第二发送单元,用于向主机发送所述目标MTU以使得通过所述主机向所述运营商网络发送的IP报文的长度不超过所述目标MTU。
第三方面,本申请实施例提供一种电子设备,包括:存储器、处理器,其中所述存储器和所述处理器被相互可通信地连接;其中所述存储器存储有程序指令;所述程序指令被所述处理器执行时,使所述处理器执行如第一方面以及第一方面中任一可能的实现方式描述的方法。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如第一方面以及第一方面中任一可能的实现方式描述的方法。
第五方面,本申请提供一种计算机程序产品,该计算机程序产品包括计算机程序或计算机代码,当其在计算机上运行时,使得上述第一方面或第一方面的任意可能的实现方式所示的方法被执行。
本申请的一个或多个实施例的细节在下面的附图和描述中提出。本申请的其它特征、目的和优点将从说明书、附图以及权利要求书变得明显。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种数据通信的系统架构图;
图2为本申请实施例提供的一种数据帧的结构示意图;
图3为本申请实施例提供的一种数据通信方法的流程示意图;
图4为本申请实施例提供的一种数据通信方法的具体流程图;
图5为本申请实施例提供的另一种数据通信方法的流程示意图;
图6为本申请实施例提供的一种数据通信装置的结构示意图;
图7为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为了便于理解本申请,下面将参照相关附图对本申请进行更全面的描述。附图中给出了本申请的一些实施方式。但是,本申请可以以许多不同的形式来实现,并不限于本文所描述的实施方式。相反地,提供这些实施方式的目的是使对本申请的公开内容理解的更加透彻全面。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对 象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本文中提及的“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现上述短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员可以显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是旨在于限制本申请。
下面结合附图对本发明进行详细描述。
请参阅图1,图1为本申请实施例提供的一种数据通信的系统架构图,如图1所示,该系统包括通信模组110、主机120和目标网络节点130。其中,通信模组通过目标网络节点接入运营商网络,通信模组和主机通信连接。
在本申请实施例中,通信模组可以理解为蜂窝通信模组,具体可以是实现2G、3G、4G或5G蜂窝移动通信技术等的功能模块。通信模组将基带芯片、存储器、功放器件等组件集成在一块线路板上,并为电子设备提供标准接口。各类电子设备借助上述通信模组可以实现通信功能。通信模组可以承载端到端、端到后台服务器的数据交互,是用户数据传输的通道。
在本申请实施例中,上述主机包括网络接口,主机的网络接口用于将互联网协议(Internet Protocol,IP)数据包(也可称为IP报文)封装成数据帧(Frame)后发送到网络上。由于数据帧过大或过小都会影响传输的效率,数据帧的长度受网络接口的最大传输单元MTU(Maximum Transmission Unit,MTU)限制。如图2所示,数据帧包括帧头、IP报文和帧尾。其中,帧头可以包括媒体介入控制层(Media Access Control,MAC)头部。IP报文可以包括IP头部和传输控制协议(Transmission Control Protocol,TCP)报文。帧尾包括帧校验序列(frame check sequence,FCS)。IP报文的长度的最大值不应超过MTU。也就是说,通过上述网络接口发送到网络的数据帧中包含的IP报文的长度不超过该主机的网络接口配置的MTU。以太网MTU一般为1500字节。上述主机可以为电子设备,该电子设备可包括计算机、服务器等。
在本申请实施例中,上述目标网络节点可以是上述通信模组接入运营商网络所经过的第一个网络节点。可理解的,运营商网络即为通信模组所使用的移动通信网络运营商,例如移动运营商网络、联通运营商网络或电信运营商网络等。整个运营商网络可以包含一个或多个基站以及一个或多个核心网设备。因此,上述目标网络节点可以是通信模组接入核心网所经过的第一个基站。
请参阅图3,图3为本申请实施例提供的一种数据通信方法的流程示意图。该方法可以应用于通信模组,该通信模组与主机通信连接。如图3所示,该方法可以包括以下步骤:
步骤301,在上述通信模组驻网时,接收来自运营商网络的分组数据网PDN数据包。
本申请实施例中,通信模组在驻网(即接入上述运营商网络中的核心网)时,会向核心网发送数据网络激活请求。为响应该数据网络激活请求,核心网会发送响应信息,该响应信息中包括分组数据网(Packet Data Network,PDN)数据包。PDN数据包中可以包括协议配置选项(Protocol Configuration Option,PCO)。PCO中可能携带运营商网络确定的MTU,该MTU 也是运营商网络中的核心网期待接收的MTU(在本申请中称为目标MTU)。PCO中也可能不携带该目标MTU。通信模组接收到来自运营商网络的PDN数据包表示数据网络激活成功,移动数据网络激活完成。
步骤302,在确定上述PDN数据包不包括目标最大传输单元MTU的情况下,获取目标网络节点的地址。
本申请实施例中,上述目标MTU为上述运营商网络确定的MTU,上述目标网络节点为上述通信模组接入上述运营商网络所经过的第一个网络节点。
本申请实施例中,通信模组接收到上述PDN数据包后,先确定PDN数据包中是否包括目标MTU。若确定PDN数据包包括目标MTU,则通信模组可以将此目标MTU传递给主机的网络接口,以使得主机基于目标MTU来限制发送到网络的数据包(即IP报文)的大小。从而避免传输到网络中的数据包过大,占用重新进行分片、重组处理的资源,造成网络拥塞。
在确定上述PDN数据包不包括目标MTU的情况下,通信模组可以主动获取目标MTU(也即运营商网络的MTU),将主动获取到的目标MTU传递给主机的网络接口。这样,可保证主机发送到网络中的数据包不会超出运营商网络的限制,避免浪费CPU资源进行分片和重组,可帮助提升网络数据传输质量。具体的,通信模组要主动获取目标MTU,可以先获取目标网络节点的地址,以便后续可通过向该地址主动发送报文以获得目标MTU。可理解的,由于目标网络节点是通信模组接入运营商网络所经过的第一个网络节点,通信模组向运营商网络发送的数据包都必须经过此网络节点,因此可以将目标网络节点的MTU作为运营商网络确定的MTU。
示例性的,通信模组可以通过路由追踪程序来获得目标网络节点的地址,该过程可以包括:通过路由跟踪程序获取上述通信模组与预设服务器之间的多个网络节点的地址;根据上述多个网络节点的地址,获得上述目标网络节点的地址。其中,预设服务器可以是知名的服务器,如百度服务器等。由于路由跟踪程序可以用于确定IP数据包访问目标所采取的路径,因此可以通过路由跟踪程序获得通信模组与预设服务器之间经过的多个网络节点的地址。该多个网络节点的地址中,一般包括目标网络节点的地址。因为目标网络节点是通信模组接入运营商网络所接入的第一个网络节点,所以根据该多个网络节点的地址可获得目标网络节点的地址。
步骤303,向上述目标网络节点发送目标探测报文。
本申请实施例中,上述目标探测报文的数据长度为第一数据长度。第一数据长度为预设的长度,该预设的长度可以与以太网MTU相关。目标探测报文可以是通过因特网包探索器(Packet Internet Groper,ping)程序发送的。因此目标探测报文可以为互联网控制报文协议(Internet Control Message Protocol,ICMP)报文,具体可以为ICMP回显请求报文。目标网络节点接收到该ICMP回显请求报文后,会发送ICMP回显应答报文作为应答报文。通信模组可以根据接收到的应答报文来确定上述目标MTU。
在一个实施例中,向上述目标网络节点发送目标探测报文之前,还可以包括以下步骤:基于第一MTU和第一数值确定上述第一数据长度。其中上述第一MTU可以为以太网协议中的MTU,即1500字节。上述第一数值为网络互连协议IP头部长度和ICMP头部长度的和,上述IP头部长度和上述ICMP头部长度分别为上述通信模组中配置的网际协议版本对应的IP头部长度和ICMP头部长度。具体的,第一数据长度可以为第一MTU与第一数值的差值。示例性的,在通信模组中配置的网际协议版本为IPv4的情况下,IP头部长度为20字节,而ICMP头部长度为8字节,那么,第一数据长度=1500-(20+8)=1472字节。在通信模组中 配置的网际协议版本为IPv6的情况下,IP头部长度为40字节,ICMP头部长度为8字节,那么,第一数据长度=1500-(40+8)=1452字节。因此,确定第一数据长度后,可以向目标网络节点发送数据长度为第一数据长度的目标探测报文,以根据获得的应答报文来确定目标MTU。这样,可以在运营商网络的MTU(也可称为目标网络节点的MTU)小于以太网MTU的情况下,根据真实的运营商网络MTU来确定数据包大小,避免数据包超过运营商网络的限制,影响网络数据传输质量。
在一个实施例中,向目标网络节点发送目标探测报文时,可以将目标探测报文的IP头部的分片禁止标志(Don’t Fragment,DF)设置为允许分片,通过ping程序目标网络节点发送该目标探测报文。其中,分片禁止标志用于表示接收端是否能对发送端发送的数据包进行分片处理。当DF设置为允许分片时,若目标探测报文的数据长度超出了目标网络节点的MTU,则目标网络节点会进行分片处理后再返回应答报文。
步骤304,接收针对上述目标探测报文的应答报文,并根据上述应答报文获得上述目标MTU。
在一个实施例中,上述目标探测报文的数据长度为第一数据长度,且目标探测报文的IP头部的分片禁止标志设置为允许分片,在运营商网络的MTU小于以太网MTU的情况下,目标网络节点针对上述目标探测报文的应答报文可以包括多个报文。因此,在确定上述应答报文包括第一应答报文的情况下,根据上述第一应答报文可获得上述目标MTU。其中,上述第一应答报文的IP头部的分片禁止标志DF设置为允许分片,且上述第一应答报文的IP头部的更多分片标志(More Fragment,MF)设置为确定存在更多分片。也就是说,第一应答报文可以是上述应答报文包括的多个报文中的首个报文(或者说,不是上述应答报文包括的多个报文中的最后一个报文),因而,第一应答报文的数据部分是目标网络节点第一应答报文的数据长度与目标网络节点的MTU相关。根据第一应答报文可以获得目标网络节点的MTU,也即获得目标MTU。
具体的,根据上述第一应答报文获得上述目标MTU,可以包括以下步骤:获取上述第一应答报文的数据长度,将上述第一应答报文的数据长度和上述第一数值的和值作为上述目标MTU。其中,第一应答报文的数据长度为该报文的数据部分(不包含IP头部和ICMP头部)的长度,第一数值为上述通信模组中配置的网际协议版本对应的IP头部长度和ICMP头部长度的和值,而一般核心网的网际版本至少存在一个与接入核心网的设备的网际协议版本一致的网际协议版本,因此,第一数值与第一应答报文的数据长度的和值可以作为上述目标MTU。通过上述步骤来实现根据第一应答报文获得目标MTU,可以在运营商网络的MTU小于以太网MTU时快速方便地获得运营商网络的MTU,从而保证发送至运营商网络的数据包大小不超过限制,有利于提高整个网络的数据传输效率。
可选的,在上述步骤303中,可以将目标探测报文的数据长度确定为第一数据长度,而将第一数据长度设为以太网MTU(1500字节)与第一数值的差值,并将目标探测报文的IP头部的分片禁止标志DF设置为禁止分片,然后通过ping程序向目标网络节点发送该目标探测报文。目标网络节点接收到该目标探测报文后,若确定目标探测报文的数据长度大于目标网络节点的MTU,则会向通信模组返回ICMP差错报文作为应答报文;而若确定目标探测报文的数据长度小于或等于目标网络节点的MTU,则会向通信模组返回ICMP回显应答报文作为应答报文。可理解的,在步骤304中,通信模组接收到目标网络节点的应答报文后,根据接收到的应答报文的类型分别执行不同的步骤:当接收到的应答报文为ICMP差错报文时,将第一数据长度减小并继续发送目标探测报文,重复上述发送目标探测报文和接收应答报文 的步骤,直至接收到的应答报文为ICMP回显应答报文,根据该ICMP回显应答报文中包括的第一应答报文获得目标MTU;当接收到的应答报文为ICMP回显应答报文时,目标网络节点的MTU大于以太网MTU,可以直接将以太网MTU作为目标MTU,传递给主机的网络接口。在此实施例中,提供了另一种方式来实现通过发送目标探测报文获得目标MTU,从而保证了发送到网络的数据包不会超过限制,避免影响网络质量。可理解的,采用以上两种方式均可以实现通过ping程序来获得目标MTU,进而可以保证发送到网络的数据包的大小不超过限制。
步骤305,向上述主机发送上述目标MTU以使得上述主机向上述运营商网络发送的IP报文的长度不超过上述目标MTU。
具体的,通信模组获得目标MTU后,可以向主机发送此目标MTU,使得主机向运营商网络发送的IP报文的长度不超过目标MTU。通信模组执行上述数据通信方法,能够主动获得运营商网络的MTU并传递给主机的网络接口,从而保证主机发送到运营商网络中的数据包不超过运营商网络的限制,避免网络拥塞。
本申请实施例中,在通信模组驻网时接收的来自运营商网络的PDN数据包中不包括目标MTU的情况下,通信模组主动向目标网络节点发送目标探测报文,以获得目标MTU。实施本申请可以让通信模组主动完成运营商网络的MTU的获取,无需等待人工指令再去获取运营商网络的MTU,有利于提高通信模组的智能化程度,增强通信模组的业务处理能力,提高网络的数据传输效率。通信模组将获得的目标MTU传递给主机的网络接口以使得主机发送至运营商网络的数据包不超过目标MTU,可以在运营商网络MTU较小的情况下,保证发送的数据包不超出运营商网络的限制,避免运营商网络占用资源对数据包进行重新分片,出现网络拥塞,从而帮助提升整个网络的业务处理能力。
应该理解的是,虽然图3的流程图中的各个步骤按照箭头的指示依次显示但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,图中的至少部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个具体的场景下,介绍实施本申请实施例提供的数据通信方法的具体流程。如图4所示,该方法包括以下步骤:
1)在驻网时通信模组接收来自运营商网络的分组数据网PDN数据包。
2)通信模组确定该PDN数据包是否包括目标MTU。
3)若确定包括目标MTU,跳转至执行步骤7);若确定不包括目标MTU,通信模组自动向一个预置服务器地址发出路由跟踪业务,获取目标网络节点的地址。
示例性的,通信模组中的业务处理AP模块先自动内置拨号(即获得运营商网络分配给通信模组的IP地址),拨号成功后再进行路由跟踪。预置服务器地址可以为www.baidu.com,发出路由跟踪服务可以为执行命令:traceroute www.baidu.com,根据路由跟踪获得的结果来获取目标网络节点的IP地址。
4)通信模组向目标网络节点的地址发送目标探测报文。
示例性的,可以通过执行命令ping–s 1472 xxx.xxx.xxx.xxx(目标网络节点的IP地址)来完成目标探测报文的发送,目标探测报文的数据长度可以为1472,即为ping包的大小,1472 是根据以下公式确定的:以太网MTU(1500字节)-IP包头长度(20字节)-ICMP包头长度(8字节)=1472。
5)通信模组获取目标网络节点针对目标探测报文的应答报文,确定应答报文包括第一应答报文。
示例性的,通信模组获取应答报文,若确定应答报文中的首个报文的IP头部的DF字段为0,MF字段为1,则确定应答报文包括第一应答报文。
6)通信模组根据第一应答报文获得目标MTU。
示例性的,通信模组获得第一应答报文的数据长度,根据以下公式获得目标MTU:第一应答报文的数据长度+IP包头长度(20字节)+ICMP包头长度(8字节)=目标MTU。例如:收到的第一应答报文中的数据长度是1000字节,那么,目标MTU=1000字节+20字节+8字节=1028字节。
7)通信模组将目标MTU传递给主机的网络接口。
具体的,通信模组将目标MTU传递给主机的网络接口(即网卡)后,可以将目标MTU作为网络接口的MTU参数,以使得主机通过网络接口发送的数据包大小不超过目标MTU。
在一种可能的实施方式中,在通过如图3、图4所示的实施例获取运营商网络的目标MTU之后,还可以继续实施另外一种数据通信方法,如图5所示,该数据通信方法包括以下步骤:
步骤501,根据目标最大传输单元MTU计算目标数据长度,并确定目标数据长度和第二数据长度中较小的数据长度为第三数据长度。
其中,上述目标数据长度为运营商网络确定的最大数据长度(Maximum Segment Size,MSS)。上述第二数据长度为上述通信模组期望接收到的TCP报文的MSS。
上述根据目标MTU计算目标数据长度,具体包括:根据目标MTU,按照公式“目标数据长度=目标最大传输单元MTU-IP头部长度-TCP头部长度”计算所述目标数据长度;其中所述目标最大传输单元MTU由所述运营商网络确定,所述IP头部长度和所述TCP头部长度分别为与所述通信模组中配置的网络协议版本对应的IP头部长度和TCP头部长度。
可理解的,上述目标数据长度为运营商网络确定的最大数据长度,也可以理解为,运营商网络通过上述目标MTU确定上述目标数据长度。具体的:由运营商网络给客户端配置的目标MTU确定上述目标数据长度。其中,通信模组可以通过实施如图3、图4所示的数据通信方法来获得该目标MTU,再根据该目标MTU以及目标MTU和MSS的转换公式计算得到上述目标数据长度。该目标数据长度也可以理解为运营商网络给客户端配置的,当运营商网络与客户端通信时,运营商网络不需要将TCP报文进行分段传输的MSS值。也就是说,该目标TCP报文长度只是运营商网络根据需求给客户端配置的MSS值,不能代表运营商网络支持的最大MSS值为该目标数据长度,该运营商网络还可以支持比该目标数据长度更大的MSS值,本文对此不做限定。
步骤502,通过传输控制协议/网络互联协议TCP/IP协议栈获取服务端发送的第四数据长度,并根据该第三数据长度和该第四数据长度中较小的数据长度确定第五数据长度。
其中,上述TCP/IP协议栈配置于上述通信模组,上述服务端通过上述运营商网络与上述通信模组通信连接,具体的,上述服务端通过运营商网络中的基站与所述通信模组无线连接。
上述通信模组和上述主机组成客户端,上述客户端和上述服务端中均配置了TCP/IP协议,上述TCP/IP协议中至少包括IP和TCP协议,上述客户端和服务端利用TCP协议进行可靠的数据通信。
具体的,上述通信模组基于TCP/IP协议栈与服务端进行TCP三次握手中的第二次TCP握手时,接收服务端发送的上述第四数据长度。
示例性的,运营商网络中配置的用于实现与客户端进行链路层的数据传输和地址封装的协议为802.3协议,客户端接收到基站发送的上述目标MTU为1492字节,且基站与该客户端配置的网络协议版本为IPV4,则上述目标数据长度的值为(1492-20-20)字节=1452字节。客户端中配置的用于实现链路层的数据传输和地址封装的协议为以太网协议,则客户端自身的MTU为1500字节,也即上述第二数据长度的值为(1500-20-20)字节=1500字节。若服务端配置的用于实现链路层的数据传输和地址封装的协议也为以太网协议,则服务端的MTU为1500字节,也即上述第四数据长度的值为(1500-20-20)字节=1500字节。从而,目标数据长度(1452字节)、第二数据长度(1500字节)以及第四数据长度(1500字节)中的最小数据长度即为目标数据长度,则确定上述目标数据长度为上述第五数据长度。
示例性的,若上述目标数据长度、第二数据长度和第四数据长度中的最小数据长度为目标数据长度,则确定该目标数据长度为上述第五数据长度。若上述目标数据长度、第二数据长度和第四数据长度中的最小数据长度为第二数据长度,则确定该第二数据长度为上述第五数据长度。若上述目标数据长度、第二数据长度和第四数据长度中的最小数据长度为第四数据长度,则确定该第四数据长度为上述第五数据长度。
一般地,基站或者与基站通信的核心网的网际协议版本至少存在一个与接入基站的设备的网际协议版本一致的网际协议版本。例如,基站的网际协议版本为IPV4/IPV6,接入该基站的客户端的网际协议版本为IPV4,这时,基站与客户端的通信以客户端支持的网际协议版本为准。也就是说,这种情况下,客户端接收到的基站发送的MTU后,以IPV4中定义的IP头部的长度和TCP头部的长度为准计算上述目标数据长度。
在一种实施方式中,上述通过传输控制协议/网络互联协议TCP/IP协议栈获取服务端发送的第四数据长度,并根据该第三数据长度和该第四数据长度中较小的数据长度确定第五数据长度,包括:所述通信模组通过所述TCP/IP协议栈向所述服务端发送所述第三数据长度;所述通信模组通过所述TCP/IP协议栈接收所述服务端发送的所述第四数据长度;所述通信模组确定所述第三数据长度和所述第四数据长度中较小的数据长度为所述第五数据长度。
步骤503,向服务端发送目标TCP报文,该目标TCP报文的长度基于第五数据长度确定。
示例性的,上述客户端向服务端发送目标TCP报文,具体可以是上述客户端中的应用层向客户端中的网络层发送上述目标TCP报文的数据部分;网络层根据该目标TCP报文的数据部分、TCP头部以及IP头部确定向数据链路层发送的IP数据包;客户端的数据链路层再根据该目标TCP报文的数据部分、TCP头部、IP头部以及MAC头部形成目标数据帧,并经由物理层向服务端发送该目标数据帧。该目标数据帧包括该目标TCP报文,该目标数据帧中的该目标TCP报文的数据长度(也即目标TCP报文的数据部分的长度)与上述第五数据长度一致,而第五数据长度是目标数据长度、第二数据长度、第四数据长度中最小的一个,因此目标TCP报文的数据长度不超过目标数据长度。
可理解的,上述目标数据帧中还可以包括除目标TCP报文的数据部分、TCP头部、IP头部以及MAC头部之外的其他字段,本文对此不做限定,例如该目标数据帧中还可以包括帧检验序列FCS字段。
由此,通信模组在通过利用如图3、图4所示的数据通信方法获得运营商网络的目标MTU后,可以进一步实施如图5所示的数据通信方法来获得第五数据长度,并根据上述第五数据长度(该第五数据长度不超过目标数据长度)向服务端发送数据进行通信,数据传输到运营 商网络(基站或核心网)后,运营商网络不会再对数据进行分片处理,数据到达服务端后也不需要进行重组处理,从而提高了网络资源利用率、节省CPU处理资源和网络宽带资源,避免网络拥塞,提高通信模组的数据传输效率。
可理解的,采用本申请实施例提供的数据通信方法可以使得通信模组不仅作为数据的传输工具,还可以智能化地处理一些业务(例如确定上述第五数据长度的业务)以节省网络资源,帮助提升整个网络的数据业务处理能力。
应该理解的是,虽然图5的流程图中的各个步骤按照箭头的指示依次显示但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,图中的至少部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
请参阅图6,图6为本申请实施例提供的一种数据通信装置的结构示意图,如图6所示,该装置包括:
第一接收单元601,用于在所述数据通信装置驻网时,接收来自运营商网络的分组数据网PDN数据包;
第一获取单元602,用于在确定上述PDN数据包不包括目标最大传输单元MTU的情况下,获取目标网络节点的地址,上述目标MTU为上述运营商网络确定的MTU,上述目标网络节点为上述数据通信装置接入上述运营商网络所经过的第一个网络节点;
第一发送单元603,用于向上述目标网络节点发送目标探测报文,上述目标探测报文的数据长度为第一数据长度;
第二接收单元604,用于接收针对上述目标探测报文的应答报文;
获得单元605,用于根据上述应答报文获得上述目标MTU;
第二发送单元606,用于向主机发送上述目标MTU以使得上述主机向上述运营商网络发送的IP报文的长度不超过上述目标MTU。
在一种可能的设计中,上述装置还包括:
第一确定单元,用于基于第一MTU和第一数值确定上述第一数据长度,上述第一MTU为以太网协议中的MTU,上述第一数值为网络互连协议IP头部长度和ICMP头部长度的和,上述IP头部长度和上述ICMP头部长度分别为上述通信模组中配置的网际协议版本对应的IP头部长度和ICMP头部长度。
在一种可能的设计中,上述第一获取单元602包括:
路由跟踪子单元,用于通过路由跟踪程序获取上述通信模组与预设服务器之间的多个网络节点的地址;
确定子单元,用于根据上述多个网络节点的地址,获得上述目标网络节点的地址。
在一种可能的设计中,上述第一发送单元603具体用于:
将上述目标探测报文的IP头部的分片禁止标志DF设置为允许分片,向上述目标网络节点发送上述目标探测报文;
上述获得单元605,具体用于:
在确定上述应答报文包括第一应答报文的情况下,根据上述第一应答报文获得上述目标MTU,上述第一应答报文的IP头部的分片禁止标志DF设置为允许分片,且上述第一应答报 文的IP头部的更多分片标志MF设置为确定存在更多分片。
在一种可能的设计中,上述获得单元605具体用于:
获取上述第一应答报文的数据长度,将上述第一应答报文的数据长度和上述第一数值的和值作为上述目标MTU。
在一种可能的设计中,所述装置还包括:
第二确定单元,用于根据所述目标MTU计算目标数据长度,确定所述目标数据长度和第二数据长度中较小的数据长度为第三数据长度,所述目标数据长度为所述运营商网络确定的最大数据长度,所述第二数据长度为所述通信模组期望接收到的TCP报文的最大数据长度;
第二获取单元,用于通过传输控制协议/网络互联协议TCP/IP协议栈获取服务端发送的第四数据长度,所述TCP/IP协议栈配置于所述通信模组,所述服务端通过所述运营商网络与所述通信模组通信连接;
第三确定单元,用于根据所述第三数据长度和所述第四数据长度中较小的数据长度确定第五数据长度,
第三发送单元,用于向所述服务端发送数据长度不超过所述目标数据长度的目标TCP报文,所述目标TCP报文的长度基于所述第五数据长度确定。
上述装置中的各个单元可全部或部分通过软件、硬件及其组合来实现。上述各单元可以硬件形式内嵌于或独立于通信模组中的处理器中,也可以以软件形式存储于通信模组中的存储器中,以便于处理器调用执行以上各个单元对应的操作。
请参阅图7,图7为本申请实施例提供的一种电子设备的结构示意图。如图7所示,上述电子设备包括存储器701、处理器702。进一步可选的,还可以包含通信接口703以及总线704,其中,存储器701、处理器702以及通信接口703通过总线704实现彼此之间的通信连接。该电子设备可以为执行如图3所示方法的通信模组,也可以为包括上述通信模组的电子设备,当电子设备包括上述通信模组时,控制通信模组执行如图3所示的方法。
其中,存储器701用于提供存储空间,存储空间中可以存储操作系统和计算机程序等数据。存储器701包括但不限于是随机存储记忆体(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmable read only memory,EPROM)、或便携式只读存储器(compact disc read-only memory,CD-ROM)。
处理器702是进行算术运算和逻辑运算的模块,可以是中央处理器(central processing unit,CPU)、显卡处理器(graphics processing unit,GPU)或微处理器(microprocessor unit,MPU)等处理模块中的一种或者多种的组合。
存储器701中存储有计算机程序,处理器702调用存储器701中存储的计算机程序,以执行以下操作:
在上述通信模组驻网时,接收来自运营商网络的分组数据网PDN数据包;
在确定上述PDN数据包不包括目标最大传输单元MTU的情况下,获取目标网络节点的地址,上述目标MTU为上述运营商网络确定的MTU,上述目标网络节点为上述通信模组接入上述运营商网络所经过的第一个网络节点;
向上述目标网络节点发送目标探测报文,上述目标探测报文的数据长度为第一数据长度;
接收针对上述目标探测报文的应答报文,并根据上述应答报文获得上述目标MTU;
向上述主机发送上述目标MTU以使得上述主机向上述运营商网络发送的IP报文的长度不超过上述目标MTU。
具体执行步骤可以参见前述实施例的描述,此处不在赘述。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序在一个或多个处理器上运行时,可以实现上述方法实施例所示的方法。
本申请实施例还提供一种计算机程序产品,当上述计算机程序产品在处理器上运行时,可以实现上述方法实施例所示的方法。
所述实施例中所用,根据上下文,术语“当…时”可以被解释为意思是“如果…”或“在…后”或“响应于确定…”或“响应于检测到…”。类似地,根据上下文,短语“在确定…时”或“如果检测到(所陈述的条件或事件)”可以被解释为意思是“如果确定…”或“响应于确定…”或“在检测到(所陈述的条件或事件)时”或“响应于检测到(所陈述的条件或事件)”。
在所述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如DVD)、或者半导体介质(例如固态硬盘)等。
本领域普通技术人员可以理解实现所述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如所述各方法实施例的流程。而前述的存储介质包括:ROM或随机存储记忆体RAM、磁碟或者光盘等各种可存储程序代码的介质。

Claims (10)

  1. 一种数据通信方法,应用于通信模组,所述通信模组与主机通信连接,所述方法包括:
    在所述通信模组驻网时,接收来自运营商网络的分组数据网PDN数据包;
    在确定所述PDN数据包不包括目标最大传输单元MTU的情况下,获取目标网络节点的地址,所述目标MTU为所述运营商网络确定的MTU,所述目标网络节点为所述通信模组接入所述运营商网络所经过的第一个网络节点;
    向所述目标网络节点发送目标探测报文,所述目标探测报文的数据长度为第一数据长度;
    接收针对所述目标探测报文的应答报文,并根据所述应答报文获得所述目标MTU;
    向所述主机发送所述目标MTU,以使得所述主机向所述运营商网络发送的IP报文的长度不超过所述目标MTU。
  2. 如权利要求1所述的方法,其特征在于,所述获取目标网络节点的地址,包括:
    通过路由跟踪程序获取所述通信模组与预设服务器之间的多个网络节点的地址;
    根据所述多个网络节点的地址,获得所述目标网络节点的地址。
  3. 如权利要求1或2所述的方法,其特征在于,所述向所述目标网络节点发送目标探测报文之前,还包括:
    基于第一MTU和第一数值确定所述第一数据长度,所述第一MTU为以太网协议中的MTU,所述第一数值为网络互连协议IP头部长度和因特网控制报文协议ICMP头部长度的和,所述IP头部长度和所述ICMP头部长度分别为所述通信模组中配置的网际协议版本对应的IP头部长度和ICMP头部长度。
  4. 如权利要求3所述的方法,其特征在于,所述向所述目标网络节点发送目标探测报文,包括:
    将所述目标探测报文的IP头部的分片禁止标志DF设置为允许分片,向所述目标网络节点发送所述目标探测报文;
    所述根据所述应答报文获得所述目标MTU,包括:
    在确定所述应答报文包括第一应答报文的情况下,根据所述第一应答报文获得所述目标MTU,所述第一应答报文的IP头部的分片禁止标志DF设置为允许分片,且所述第一应答报文的IP头部的更多分片标志MF设置为确定存在更多分片。
  5. 如权利要求4所述的方法,其特征在于,所述根据所述第一应答报文获得所述目标MTU,包括:
    获取所述第一应答报文的数据长度,将所述第一应答报文的数据长度和所述第一数值的和值作为所述目标MTU。
  6. 如权利要求1-5任一项所述的方法,其特征在于,所述向所述主机发送所述目标MTU之后,还包括:
    根据所述目标MTU计算目标数据长度,确定所述目标数据长度和第二数据长度中较小的数据长度为第三数据长度,所述目标数据长度为所述运营商网络确定的最大数据长度,所 述第二数据长度为所述通信模组期望接收到的TCP报文的最大数据长度;
    通过传输控制协议/网络互联协议TCP/IP协议栈获取服务端发送的第四数据长度,并根据所述第三数据长度和所述第四数据长度中较小的数据长度确定第五数据长度,所述TCP/IP协议栈配置于所述通信模组,所述服务端通过所述运营商网络与所述通信模组通信连接;
    向所述服务端发送数据长度不超过所述目标数据长度的目标TCP报文,所述目标TCP报文的长度基于所述第五数据长度确定。
  7. 一种数据通信装置,包括:
    第一接收单元,用于在所述数据通信装置驻网时,接收来自运营商网络的分组数据网PDN数据包;
    第一获取单元,用于在确定所述PDN数据包不包括目标最大传输单元MTU的情况下,获取目标网络节点的地址,所述目标MTU为所述运营商网络确定的MTU,所述目标网络节点为所述数据通信装置接入所述运营商网络所经过的第一个网络节点;
    第一发送单元,用于向所述目标网络节点发送目标探测报文,所述目标探测报文的数据长度为第一数据长度;
    第二接收单元,用于接收针对所述目标探测报文的应答报文;
    获得单元,用于根据所述应答报文获得所述目标MTU;
    第二发送单元,用于向主机发送所述目标MTU以使得所述主机向所述运营商网络发送的IP报文的长度不超过所述目标MTU。
  8. 如权利要求7所述的装置,其特征在于,所述装置还包括:
    确定单元,用于基于第一MTU和第一数值确定所述第一数据长度,所述第一MTU为以太网协议中的MTU,所述第一数值为网络互连协议IP头部长度和ICMP头部长度的和,所述IP头部长度和所述ICMP头部长度分别为所述通信模组中配置的网际协议版本对应的IP头部长度和ICMP头部长度。
  9. 一种电子设备,包括:存储器和处理器,其中所述存储器和所述处理器被相互可通信地连接;其中所述存储器存储有程序指令;所述程序指令被所述处理器执行时,使所述处理器执行如权利要求1-6中任一项所述的方法。
  10. 一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-6中任一项所述的方法。
PCT/CN2022/141439 2022-03-15 2022-12-23 数据通信方法、装置、设备和介质 WO2023173876A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210254084.6A CN114697269A (zh) 2022-03-15 2022-03-15 数据通信方法、装置、设备和介质
CN202210254084.6 2022-03-15

Publications (1)

Publication Number Publication Date
WO2023173876A1 true WO2023173876A1 (zh) 2023-09-21

Family

ID=82138916

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/141439 WO2023173876A1 (zh) 2022-03-15 2022-12-23 数据通信方法、装置、设备和介质

Country Status (2)

Country Link
CN (1) CN114697269A (zh)
WO (1) WO2023173876A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114697269A (zh) * 2022-03-15 2022-07-01 深圳市广和通无线股份有限公司 数据通信方法、装置、设备和介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1716944A (zh) * 2004-06-28 2006-01-04 杭州华为三康技术有限公司 网络路径最大传输长度发现方法
CN103067278A (zh) * 2013-01-30 2013-04-24 杭州华三通信技术有限公司 一种数据帧的传输处理方法、设备及系统
US20140241144A1 (en) * 2013-02-28 2014-08-28 International Business Machines Corporation Reducing Fragmentation of Packets in a Networking Environment
CN106789717A (zh) * 2016-12-26 2017-05-31 广东欧珀移动通信有限公司 动态调整通信协议传输数据报文的mtu的方法、装置和终端
CN107342946A (zh) * 2017-05-12 2017-11-10 广东网金控股股份有限公司 一种基于自协商的通信方法及终端
US10476808B1 (en) * 2018-03-07 2019-11-12 Sprint Spectrum L.P. Dynamic configuration of maximum transmission unit of UE, based on receipt of oversized packet(s) at network entity
CN114697269A (zh) * 2022-03-15 2022-07-01 深圳市广和通无线股份有限公司 数据通信方法、装置、设备和介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1716944A (zh) * 2004-06-28 2006-01-04 杭州华为三康技术有限公司 网络路径最大传输长度发现方法
CN103067278A (zh) * 2013-01-30 2013-04-24 杭州华三通信技术有限公司 一种数据帧的传输处理方法、设备及系统
US20140241144A1 (en) * 2013-02-28 2014-08-28 International Business Machines Corporation Reducing Fragmentation of Packets in a Networking Environment
CN106789717A (zh) * 2016-12-26 2017-05-31 广东欧珀移动通信有限公司 动态调整通信协议传输数据报文的mtu的方法、装置和终端
CN107342946A (zh) * 2017-05-12 2017-11-10 广东网金控股股份有限公司 一种基于自协商的通信方法及终端
US10476808B1 (en) * 2018-03-07 2019-11-12 Sprint Spectrum L.P. Dynamic configuration of maximum transmission unit of UE, based on receipt of oversized packet(s) at network entity
CN114697269A (zh) * 2022-03-15 2022-07-01 深圳市广和通无线股份有限公司 数据通信方法、装置、设备和介质

Also Published As

Publication number Publication date
CN114697269A (zh) 2022-07-01

Similar Documents

Publication Publication Date Title
US11277313B2 (en) Data transmission method and corresponding device
CN113411313B (zh) 数据传输方法、装置和系统
CN110022264B (zh) 控制网络拥塞的方法、接入设备和计算机可读存储介质
EP3720052B1 (en) Service identification method and device, and network device
WO2021232568A1 (zh) 无线局域网收发数据的方法、终端和系统及网络接入设备
WO2019000866A1 (zh) 一种数据处理方法及物联网网关
EP3566407A1 (en) Cross-device segmentation offload
WO2021134446A1 (zh) 一种信息处理方法和通信装置以及通信系统
US11647104B2 (en) Data processing method and apparatus, and device
CN112291366A (zh) 数据传输方法、装置、存储介质及电子设备
WO2023173876A1 (zh) 数据通信方法、装置、设备和介质
US8156209B1 (en) Aggregation devices processing keep-alive messages of point-to-point sessions
WO2023124098A1 (zh) 用于在ieee 802.15.4网络中生成和发送应答帧的方法及通信装置
WO2019041371A1 (zh) 物联网基于连接数量的路由器切换方法及装置
CN114071544B (zh) 网络测试方法、装置和电子设备
JP2015510744A (ja) インターネットアクセスモードを自動的に設定する処理方法及び処理装置
WO2021233313A1 (zh) 配置端口状态的方法、装置、系统及存储介质
WO2023186109A1 (zh) 节点访问方法以及数据传输系统
WO2023125056A1 (zh) 网络数据的控制方法、装置和存储介质及电子设备
WO2019196853A1 (zh) Tcp加速方法及装置
US20220286532A1 (en) Method and apparatus for obtaining shared maximum segment size mss
WO2023284231A1 (zh) 报文处理方法和报文处理系统
CN113497767A (zh) 传输数据的方法、装置、计算设备及存储介质
TW202103480A (zh) 邊緣運算網路服務提供方法
WO2023011006A1 (zh) 一种通信方法、装置及设备

Legal Events

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

Ref document number: 22931882

Country of ref document: EP

Kind code of ref document: A1