CN113452608A - Data transmission method and device, electronic equipment and computer readable medium - Google Patents

Data transmission method and device, electronic equipment and computer readable medium Download PDF

Info

Publication number
CN113452608A
CN113452608A CN202010221003.3A CN202010221003A CN113452608A CN 113452608 A CN113452608 A CN 113452608A CN 202010221003 A CN202010221003 A CN 202010221003A CN 113452608 A CN113452608 A CN 113452608A
Authority
CN
China
Prior art keywords
data
request
transmission
data request
type
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN202010221003.3A
Other languages
Chinese (zh)
Inventor
陈宏宇
闫卫斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN202010221003.3A priority Critical patent/CN113452608A/en
Publication of CN113452608A publication Critical patent/CN113452608A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/123Evaluation of link metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/125Shortest path evaluation based on throughput or bandwidth
    • 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
    • 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/745Address table lookup; Address filtering

Landscapes

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

Abstract

The embodiment of the application provides a data transmission method, a data transmission device, electronic equipment and a computer readable medium, and relates to the field of network data transmission. Wherein the method comprises the following steps: determining a request type of a received first data request and an address carried by the first data request; determining a first transmission path of data requested by the first data request based on the request type and the address; transmitting the data requested by the first data request based on the first transmission path. Through the embodiment of the application, the transmission stability of the data requested by the data request can be effectively improved, and the bandwidth of the internet can be fully utilized.

Description

Data transmission method and device, electronic equipment and computer readable medium
Technical Field
The embodiment of the application relates to the field of network data transmission, and in particular, to a data transmission method, a data transmission device, an electronic device, and a computer-readable medium.
Background
In order to effectively improve the speed of remote data transmission, user data requests from various regions around the world can be routed to nearby machine room access points by terminal equipment by utilizing the capacity of a global distributed cloud machine room, and the user data requests can reach a data center where protocol request data are located through an optimized network after reaching the nearby machine room access points. Then, after the user data request reaches the nearby access point of the computer room, the data requested by the user data request needs to be transmitted by using the optimal transmission path. In order to transmit the data requested by the user data request by using the optimal transmission path, the transmission path of the data requested by the user data request needs to be probed. However, no matter how to probe the transmission path of the data requested by the user data request, there is always a case where the user data request fails. In addition, the transmission speed of the data requested by the upload type data request is high, and the transmission speed of the data requested by the download type data request is low. Sometimes, the transmission speed of the data requested by the downloading data request is high, and the transmission speed of the data requested by the uploading data request is low. Instability problems such as this occur.
In the conventional transmission path detection technology, the network is assumed to be symmetrical, and an optimal transmission path is considered to exist, which is suitable for the transmission of data requested by all user data requests. However, the detection method is not detailed enough, neglecting the asymmetry of the network and the asymmetry of the interception of the data packet requested by the data request on the internet, which may cause the delay jitter of the data requested by the user data request to be severe, the transmission effect of the data requested by the user data request to be unstable, and at the same time, the bandwidth on the internet may not be fully utilized. Therefore, how to effectively improve the transmission stability of the data requested by the data request and fully utilize the internet bandwidth becomes a technical problem to be solved urgently at present.
Disclosure of Invention
The application aims to provide a data transmission method, a data transmission device, electronic equipment and a computer readable medium, which are used for solving the technical problems of how to effectively improve the transmission stability of data requested by a data request and fully utilize the bandwidth of the internet in the prior art.
According to a first aspect of embodiments of the present application, a data transmission method is provided. The method comprises the following steps: determining a request type of a received first data request and an address carried by the first data request; determining a first transmission path of data requested by the first data request based on the request type and the address; transmitting the data requested by the first data request based on the first transmission path.
According to a second aspect of embodiments of the present application, there is provided a data transmission apparatus. The device comprises: the first determining module is used for determining the request type of the received first data request and the address carried by the first data request; a second determining module, configured to determine a first transmission path of data requested by the first data request based on the request type and the address; and the transmission module is used for transmitting the data requested by the first data request based on the first transmission path.
According to a third aspect of embodiments of the present application, there is provided an electronic apparatus, including: one or more processors; a computer readable medium configured to store one or more programs which, when executed by the one or more processors, cause the one or more processors to implement the data transmission method as described in the first aspect of the embodiments above.
According to a fourth aspect of embodiments of the present application, there is provided a computer-readable medium, on which a computer program is stored, which when executed by a processor, implements the data transmission method as described in the first aspect of the embodiments above.
According to the data transmission scheme provided by the embodiment of the application, the request type of the received first data request and the address carried by the first data request are determined, the first transmission path of the data requested by the first data request is determined based on the request type and the address, then the data requested by the first data request is transmitted based on the first transmission path.
Drawings
Other features, objects and advantages of the present application will become more apparent upon reading of the following detailed description of non-limiting embodiments thereof, made with reference to the accompanying drawings in which:
FIG. 1A is a schematic diagram of an asymmetric network provided in accordance with the prior art;
fig. 1B is a flowchart illustrating steps of a data transmission method according to an embodiment of the present application;
fig. 2A is a flowchart illustrating steps of a data transmission method according to a second embodiment of the present application;
fig. 2B is a schematic diagram of a data transmission process according to the second embodiment of the present application;
fig. 3 is a schematic structural diagram of a data transmission device according to a third embodiment of the present application;
fig. 4 is a schematic structural diagram of a data transmission device according to a fourth embodiment of the present application;
fig. 5 is a schematic structural diagram of an electronic device in a fifth embodiment of the present application;
fig. 6 is a hardware structure of an electronic device according to a sixth embodiment of the present application.
Detailed Description
The present application will be described in further detail with reference to the following drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the relevant invention and not restrictive of the invention. It should be noted that, for convenience of description, only the portions related to the related invention are shown in the drawings.
It should be noted that the embodiments and features of the embodiments in the present application may be combined with each other without conflict. The present application will be described in detail below with reference to the embodiments with reference to the attached drawings.
Symmetry of network transmission is understood to mean symmetry of data flow, i.e. at the four-layer routing level, the path taken by a packet from a ground to B ground is the same as the path taken by a packet from B ground to a ground. Asymmetry in network transmission is understood to mean asymmetry in data flow, i.e. at the four-layer routing level, the path followed by a packet from a ground to B ground is not the same as the path followed by a packet from B ground to a ground. The asymmetry in network transmission results in having to use different transmission paths to transmit data requested by data requests of different request types. As shown in fig. 1A, the user requests data from beijing to find the package path from beijing to beijing, and if the network shown in fig. 1A is a symmetric network, the package return path should be from beijing to beijing, but actually the package return path is from australia to beijing via hong kong and from guangzhou to guangzhou. For the asymmetric network, if the request type is an upload request, the data packet will go out from the exit of Beijing to Macau, and the acknowledgement packet will go from Macau to Guangzhou exit through hong Kong to Beijing. If the request type is a download type request, the data packet will go from Macau to Guangzhou export to Beijing through hong Kong, and the confirmation packet will go out from Beijing export to Macau. Thus, the transmission path of the data packet of the upload class request is opposite to the transmission path of the data packet of the download class request, and the transmission path of the acknowledgement packet of the upload class request is opposite to the transmission path of the acknowledgement packet of the download class request. For the asymmetric network, if the transmission quality of the out-packet path is better, the asymmetric network is suitable for transmitting the upload data requested by the upload class request, and if the transmission quality of the back-packet path is better, the asymmetric network is suitable for transmitting the download data requested by the download class request.
Based on the above analysis, in the process of detecting the transmission path of the data requested by the data request, there may not be a transmission path that can simultaneously enable the data requested by the upload type request and the data requested by the download type request to have a relatively good transmission effect, and even if there is a transmission path that may not be optimal, therefore, it is necessary to perform the detection of the transmission path for the data requested by the data request according to the request type, and enable the data requested by the data requests of different request types to go through respective optimal transmission paths. According to the above analysis, if there is a transmission path, the transmission quality of the packet outgoing path is good, and the transmission quality of the packet returning path is poor, and even if the data packet can pass through smoothly, then can the acknowledgement packet for the data packet pass smoothly? There are two reasons for poor transmission quality of the loopback path, one is congestion and the other is artificial firewall filtering. If the firewall filtering is artificial, according to the current situation, the interception strength of the firewall to the acknowledgement packet is far lower than that of the data packet (the interception asymmetry), so that the data packet can not pass through and the acknowledgement packet can normally pass through only under the condition that the transmission quality of a packet return path is poor. If congestion is encountered, the acknowledgement packet throughput will be low, but the effect will be much less than the data packet loss effect. Since the TCP protocol does not acknowledge the acknowledgement packet, i.e. does not acknowledge the acknowledgement packet. In addition, the TCP protocol has certain tolerance for the loss of the acknowledgement packets, for example, 10 acknowledgement packets, a1, a2.. a9, a10, the serial numbers of the acknowledgements are S1, S2,. so, S10, S1< S2<. so < S10, respectively, so that as long as the acknowledgement packet with the largest serial number of the acknowledgements arrives, all the acknowledgement packets with small serial numbers are lost, which does not have any influence, that is, as long as the acknowledgement packet a10 with the serial number of S10 arrives, the previous acknowledgement packets a1 to a9 are lost. According to the above analysis, if it is the acknowledgement packet that is lost, the effect is not significant, but the data packet is lost, then it must be retransmitted. If the transmission quality of a path in one direction is good and the transmission quality of a path in the other direction is poor in an asymmetric network, it is only necessary to ensure that a data packet is allowed to travel the path in the one direction with good transmission quality, and the protocol has tolerance for the loss of an acknowledgement packet, so that the influence of the acknowledgement packet traveling the path in the other direction with poor transmission quality is not great.
Based on the above-described asymmetric current situation of the current internet and the self-design characteristics of the TCP protocol, the data transmission methods of the first and second embodiments of the present application are provided, which not only can effectively improve the transmission stability of data requested by a data request, but also can fully utilize the bandwidth of the internet.
Referring to fig. 1B, a flowchart illustrating steps of a data transmission method according to an embodiment of the present application is shown.
Specifically, the data transmission method provided in this embodiment includes the following steps:
in step S101, a request type of a received first data request and an address carried by the first data request are determined.
In this embodiment of the present application, before determining the request type of the received first data request and the address carried by the first data request, the method further includes: receiving the first data request sent by the terminal equipment based on the operation of the terminal equipment by the user. Specifically, after the user inputs the content of the first data request in the input box of the terminal device, the first data request is generated by clicking the data request control, and the generated first data request is sent to the nearby machine room access point. Alternatively, in response to the operation of clicking the link address by the user, generating a first data request, and sending the generated first data request to the nearby machine room access point. The terminal device can be a mobile phone terminal, a PC, a server, a vehicle-mounted device, an entertainment device, an advertising device, a Personal Digital Assistant (PDA), a tablet computer, a notebook computer, a handheld game machine, glasses, a watch, a wearable device, a virtual display device or a display enhancement device and the like. The first data request may be a data upload request, a data download request, a video data request, a picture data request, an audio data request, or a text data request, etc. The operation of the user on the terminal device may be a click operation, a drag operation, and the like of the user on a data request control of the terminal device. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
In the embodiment of the present application, the request type of the first data request may be a first type, a second type, or a third type. The address carried by the first data request may be addresses of a sender and a receiver of the first data request carried by the first data request. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
In some optional embodiments, when the request type of the received first data request is determined, if it is determined that the first data request is a data upload request and the upload data amount requested by the first data request is greater than a preset first data amount threshold, it is determined that the request type of the first data request is a first type. The preset first data amount threshold may be set by a person skilled in the art according to actual needs, and this is not limited in this embodiment of the application. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
In a specific example, when determining whether the first data request is a data upload request, it may be determined whether the first data request is a data upload request by extracting type content in a type field in the first data request. When the upload data volume requested by the first data request is determined, the upload data volume requested by the first data request can be determined by extracting the upload data volume carried in the first data request. When the request type is divided into the first types, the request types are divided into the first types because the data requests belonging to the first types are data uploading requests, and the data uploading amount requested by the data requests belonging to the first types is enough, so that the internet bandwidth can be fully utilized, and the transmission throughput of the data uploading is larger. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
In some optional embodiments, when determining the request type of the received first data request, if it is determined that the first data request is a data download request and the requested download data amount of the first data request is greater than a preset second data amount threshold, it is determined that the request type of the first data request is a second type. The preset second data amount threshold may be set by a person skilled in the art according to actual needs, and this is not limited in this embodiment of the application. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
In a specific example, when determining whether the first data request is a data download request, it may be determined whether the first data request is a data download request by extracting type content in a type field in the first data request. When the download data amount requested by the first data request is determined, the download data amount requested by the first data request can be determined by extracting the download data amount carried in the first data request. When the request type is divided into the second type, the data request belonging to the second type is a data downloading request, and the data downloading amount requested by the data request belonging to the second type is enough, so that the internet bandwidth can be fully utilized, and the transmission throughput of the downloaded data is larger. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
In some optional embodiments, when determining the request type of the received first data request, if it is determined that the amount of data requested by the first data request is less than or equal to a preset third data amount threshold, it is determined that the request type of the first data request is a third type. The preset third data amount threshold may be set by a person skilled in the art according to actual needs, and this is not limited in this embodiment of the application. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
In a specific example, when determining the amount of data requested by the first data request, the amount of data requested by the first data request may be determined by extracting the amount of data carried in the first data request. In addition, if there is a transmission path whose delay time is relatively short and which has a small amount of packet loss, it is not suitable for transmission of a large amount of data because of the packet loss, but the transmission path has a short delay time and a small amount of data to be transmitted, and even if the packet is retransmitted, it does not cause a large increase in delay time, and therefore, the transmission path is suitable for transmission of data requested by a data request belonging to the third type. For data requests belonging to the third type, the transmission path may be advantageous over a transmission path having a good transmission quality and a relatively high delay. Therefore, when the request type division is performed on the data request, the request type may be divided into a third type. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
In a specific example, the preset first data amount threshold, the preset second data amount threshold, and the preset third data amount threshold may be 14K. The congestion window is 14K, because the size of the congestion window implemented by the currently mainstream TCP protocol is 10, that is, ten data packets are sent to the network at a time, where one data packet carries about 1.4K of data, and a total of about 14K of data. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
In some optional embodiments, when determining the address carried by the received first data request, the address carried by the received first data request may be determined by extracting address content in an address field in the first data request. The address carried by the first data request may be addresses of a sender and a receiver of the first data request carried by the first data request. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
In step S102, a first transmission path of data requested by the first data request is determined based on the request type and the address.
In some optional embodiments, when determining the first transmission path of the data requested by the first data request based on the request type and the address, determining a plurality of third transmission paths matching the request type; determining the first transmission path with two end addresses matched with the address in the plurality of third transmission paths for transmitting the data requested by the first data request. Therefore, the first transmission path of the data requested by the first data request can be accurately determined through the request type of the first data request and the address carried by the first data request. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
In a specific example, the request type and the address are pre-matched to the first transmission path. For example, when the request type of the first data request is a first type, and addresses of a sender and a receiver of the first data request carried by the first data request are a and B, respectively, then the first transmission path obtained by determining is suitable for transmitting data requested by the first data request belonging to the first type, and addresses of two ends of the first transmission path obtained by determining are a and B, respectively. When the request type of the first data request is a second type, and addresses of a sender and a receiver of the first data request carried by the first data request are respectively C and D, determining that the obtained first transmission path is suitable for transmitting data requested by the first data request belonging to the second type, and determining that addresses of two ends of the obtained first transmission path are respectively C and D. When the request type of the first data request is a third type, and addresses of a sender and a receiver of the first data request carried by the first data request are respectively E and F, determining that the obtained first transmission path is suitable for transmitting data requested by the first data request belonging to the third type, and determining that addresses of two ends of the obtained first transmission path are respectively E and F. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
In step S103, the data requested by the first data request is transmitted based on the first transmission path.
In this embodiment of the application, after obtaining the first transmission path, the machine room access point may transmit the data requested by the first data request using the first transmission path. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
According to the data transmission method provided by the embodiment of the application, the request type of the received first data request and the address carried by the first data request are determined, the first transmission path of the data requested by the first data request is determined based on the request type and the address, and the data requested by the first data request is transmitted based on the first transmission path.
The data transmission method of the present embodiment may be performed by any suitable device having data processing capabilities, including but not limited to: a camera, a terminal, a mobile terminal, a PC, a server, an in-vehicle device, an entertainment device, an advertising device, a Personal Digital Assistant (PDA), a tablet, a laptop, a handheld game machine, glasses, a watch, a wearable device, a virtual display device, a display enhancement device, or the like.
Referring to fig. 2A, a flowchart illustrating steps of a data transmission method according to a second embodiment of the present application is shown.
Specifically, the data transmission method provided in this embodiment includes the following steps:
in step S201, a request type of a received first data request and an address carried by the first data request are determined.
Since the embodiment of step S201 is similar to that of step S101, it is not described herein again.
In step S202, a transmission path of data requested by a second data request belonging to the request type and carrying the address is probed to obtain the first transmission path matching the request type and the address.
In the embodiment of the present application, the request type may be a first type, a second type, or a third type. The address may be addresses of a sender and a receiver of the first data request carried by the first data request. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
In some optional embodiments, when detecting a transmission path for data requested by a second data request that belongs to the request type and carries the address, determining a plurality of second transmission paths for transmitting the data requested by the second data request based on the addresses of a sender and a receiver of the second data request carried by the second data request; respectively probing the plurality of second transmission paths by using the data requested by the second data request to obtain probing results of the plurality of second transmission paths; determining the first transmission path matching the request type and the address in the plurality of second transmission paths based on the detection results of the plurality of second transmission paths. Therefore, the first transmission path matched with the request type and the address can be accurately obtained by detecting the transmission path of the data requested by the second data request which belongs to the request type and carries the address. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
In a specific example, the address of the sender of the second data request carried in the second data request is the same as the address of the sender of the first data request carried in the first data request, and the address of the receiver of the second data request carried in the second data request is the same as the address of the receiver of the first data request carried in the first data request. When the data requested by the second data request is used and the plurality of second transmission paths are respectively detected, the data requested by the second data request are respectively transmitted by using the plurality of second transmission paths, so that the transmission results of the data requested by the second data request are respectively transmitted by the plurality of second transmission paths. The transmission result includes transmission durations for the plurality of second transmission paths to transmit the data requested by the second data request, respectively, and/or transmission success rates for the plurality of second transmission paths to transmit the data requested by the second data request, respectively. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
In some optional embodiments, the detection result includes transmission durations for the plurality of second transmission paths to respectively transmit the data requested by the second data request, and/or transmission success rates for the plurality of second transmission paths to respectively transmit the data requested by the second data request. When determining the first transmission path matched with the request type and the address in the plurality of second transmission paths based on the detection results of the plurality of second transmission paths, determining the first transmission path matched with the request type and the address in the plurality of second transmission paths based on the transmission duration of the data requested by the second data request respectively transmitted by the plurality of second transmission paths and/or the transmission success rate of the data requested by the second data request respectively transmitted by the plurality of second transmission paths. Therefore, the transmission time length for transmitting the data requested by the second data request through the plurality of second transmission paths respectively and/or the transmission success rate for transmitting the data requested by the second data request through the plurality of second transmission paths respectively can accurately determine the first transmission path matched with the request type and the address in the plurality of second transmission paths. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
In a specific example, when determining a first transmission path matching a request type and an address in a plurality of second transmission paths, determining a second transmission path having a shortest transmission duration and/or a highest transmission success rate in the plurality of second transmission paths as the first transmission path matching the request type and the address. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
In an example, the execution sequence of the steps S201 and S202 is only an example given for convenience of description, and in practical applications, the execution sequence between the steps may also be changed, and the execution sequence is not limited. Moreover, in other embodiments, the steps of the respective methods do not have to be performed in the order shown and described herein, and the methods may include more or less steps than those described herein. Moreover, a single step described in this specification may be broken down into multiple steps for description in other embodiments; multiple steps described in this specification may be combined into a single step in other embodiments.
In step S203, a first transmission path of data requested by the first data request is determined based on the request type and the address.
Since the embodiment of step S203 is similar to that of step S102, it is not repeated herein.
In step S204, the data requested by the first data request is transmitted based on the first transmission path.
Since the embodiment of step S204 is similar to that of step S103, it is not repeated herein.
In a specific example, as shown in fig. 2B, in response to a user clicking a link address in a terminal device located in the state, a first data request is generated, and the generated first data request is sent to a nearby hangar access point. When the request type of the first data request is a first type, and addresses of a sender and a receiver of the first data request carried by the first data request are hangzhou and australian respectively, then the first transmission path 1 is suitable for transmitting the data requested by the first data request belonging to the first type, and addresses of two ends of the first transmission path 1 are hangzhou and australian respectively. Wherein the first transmission path 1 may be from hangzhou to australia via guangzhou for data requested by the first data request belonging to the first type. When the request type of the first data request is a second type, and addresses of a sender and a receiver of the first data request carried by the first data request are hangzhou and australian, respectively, then the first transmission path 2 is suitable for transmitting the data requested by the first data request belonging to the second type, and addresses of two ends of the first transmission path 2 are hangzhou and australian, respectively. Wherein the first transmission path 2 may be from hangzhou to australia for the data requested by the second data request belonging to the second type. When the request type of the first data request is a third type, and addresses of a sender and a receiver of the first data request carried by the first data request are hangzhou and australian respectively, then the first transmission path 3 is suitable for transmitting the data requested by the first data request belonging to the third type, and addresses of two ends of the first transmission path 3 are hangzhou and australian respectively. Wherein the first transmission path 3 may be from hangzhou to australia via hong kong for the data requested by the first data request belonging to the third type. It should be understood that the above description is only exemplary, and the embodiments of the present application are not limited in this respect.
By the data transmission method provided by the embodiment of the application, the request type of the received first data request and the address carried by the first data request are determined, the transmission path of the data requested by the second data request which belongs to the request type and carries the address is detected to obtain the first transmission path matched with the request type and the address, the first transmission path of the data requested by the first data request is determined based on the request type and the address, the data requested by the first data request is transmitted based on the first transmission path, compared with the prior art, the transmission path of the data requested by the second data request which belongs to the request type and carries the address is detected to obtain the first transmission path matched with the request type and the address, and based on the request type of the received first data request and the address carried by the first data request, the method comprises the steps of determining a first transmission path of data requested by a first data request, transmitting the data requested by the first data request based on the first transmission path, and transmitting the data requested by the first data request by using the first transmission path which is obtained by detection and matched with the request type and address, so that the transmission stability of the data requested by the data request can be effectively improved, and the bandwidth of the internet can be fully utilized.
The data transmission method of the present embodiment may be performed by any suitable device having data processing capabilities, including but not limited to: a camera, a terminal, a mobile terminal, a PC, a server, an in-vehicle device, an entertainment device, an advertising device, a Personal Digital Assistant (PDA), a tablet, a laptop, a handheld game machine, glasses, a watch, a wearable device, a virtual display device, a display enhancement device, or the like.
Referring to fig. 3, a schematic structural diagram of a data transmission device in a third embodiment of the present application is shown.
The data transmission device provided by the embodiment comprises: a first determining module 301, configured to determine a request type of a received first data request and an address carried by the first data request; a second determining module 302, configured to determine a first transmission path of data requested by the first data request based on the request type and the address; a transmission module 303, configured to transmit the data requested by the first data request based on the first transmission path.
The data transmission device of this embodiment is used to implement the corresponding data transmission method in the foregoing multiple method embodiments, and has the beneficial effects of the corresponding method embodiments, which are not described herein again.
Referring to fig. 4, a schematic structural diagram of a data transmission device in the fourth embodiment of the present application is shown.
The data transmission device provided by the embodiment comprises: a first determining module 401, configured to determine a request type of a received first data request and an address carried by the first data request; a second determining module 403, configured to determine a first transmission path of data requested by the first data request based on the request type and the address; a transmission module 404, configured to transmit the data requested by the first data request based on the first transmission path.
Optionally, the first determining module 401 is specifically configured to: and if the first data request is determined to be a data uploading request and the uploading data volume requested by the first data request is greater than a preset first data volume threshold value, determining that the request type of the first data request is a first type.
Optionally, the first determining module 401 is specifically configured to: and if the first data request is determined to be a data downloading request and the downloading data quantity requested by the first data request is greater than a preset second data quantity threshold value, determining that the request type of the first data request is a second type.
Optionally, the first determining module 401 is specifically configured to: and if the data quantity requested by the first data request is determined to be less than or equal to a preset third data quantity threshold value, determining that the request type of the first data request is a third type.
Optionally, before the second determining module 403, the apparatus further includes: a detection module 402, configured to perform detection on a transmission path of data requested by a second data request that belongs to the request type and carries the address, so as to obtain the first transmission path matched with the request type and the address.
Optionally, the detecting module 402 includes: a first determining submodule 4021, configured to determine, based on addresses of a sender and a receiver of the second data request carried in the second data request, a plurality of second transmission paths for transmitting data requested by the second data request; a probing submodule 4022, configured to probe the plurality of second transmission paths respectively by using the data requested by the second data request, so as to obtain probing results of the plurality of second transmission paths; the second determining sub-module 4023 is configured to determine, based on a detection result of the plurality of second transmission paths, the first transmission path matching the request type and the address in the plurality of second transmission paths.
Optionally, the detection result includes transmission durations for the multiple second transmission paths to respectively transmit the data requested by the second data request, and/or transmission success rates for the multiple second transmission paths to respectively transmit the data requested by the second data request, and the second determining sub-module 4023 is specifically configured to: and determining the first transmission path matched with the request type and the address in the plurality of second transmission paths based on the transmission duration of the plurality of second transmission paths for respectively transmitting the data requested by the second data request and/or the transmission success rate of the plurality of second transmission paths for respectively transmitting the data requested by the second data request.
Optionally, the second determining module 403 is specifically configured to: determining a plurality of third transmission paths matching the request type; determining the first transmission path with two end addresses matched with the address in the plurality of third transmission paths for transmitting the data requested by the first data request.
Optionally, before the first determining module 401, the apparatus further includes: a receiving module 405, configured to receive the first data request sent by a terminal device based on an operation of a user on the terminal device.
The data transmission device of this embodiment is used to implement the corresponding data transmission method in the foregoing multiple method embodiments, and has the beneficial effects of the corresponding method embodiments, which are not described herein again.
Fig. 5 is a schematic structural diagram of an electronic device in a fifth embodiment of the present application; the electronic device may include:
one or more processors 501;
a computer-readable medium 502, which may be configured to store one or more programs,
when the one or more programs are executed by the one or more processors, the one or more processors are caused to implement the data transmission method according to the first embodiment or the second embodiment.
Fig. 6 is a hardware structure of an electronic device according to a sixth embodiment of the present application; as shown in fig. 6, the hardware structure of the electronic device may include: a processor 601, a communication interface 602, a computer-readable medium 603, and a communication bus 604;
wherein the processor 601, the communication interface 602, and the computer readable medium 603 communicate with each other via a communication bus 604;
alternatively, the communication interface 602 may be an interface of a communication module, such as an interface of a GSM module;
the processor 601 may be specifically configured to: determining a request type of a received first data request and an address carried by the first data request; determining a first transmission path of data requested by the first data request based on the request type and the address; transmitting the data requested by the first data request based on the first transmission path.
The Processor 601 may be a general-purpose Processor, and includes a Central Processing Unit (CPU), a Network Processor (NP), and the like; but may also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), an off-the-shelf programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components. The various methods, steps, and logic blocks disclosed in the embodiments of the present application may be implemented or performed. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The computer-readable medium 603 may be, but is not limited to, a Random Access Memory (RAM), a Read-Only Memory (ROM), a Programmable Read-Only Memory (PROM), an Erasable Read-Only Memory (EPROM), an electrically Erasable Read-Only Memory (EEPROM), and the like.
In particular, according to an embodiment of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code configured to perform the method illustrated by the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network via the communication section, and/or installed from a removable medium. The computer program, when executed by a Central Processing Unit (CPU), performs the above-described functions defined in the method of the present application. It should be noted that the computer readable medium described herein can be a computer readable signal medium or a computer readable storage medium or any combination of the two. The computer readable medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access storage media (RAM), a read-only storage media (ROM), an erasable programmable read-only storage media (EPROM or flash memory), an optical fiber, a portable compact disc read-only storage media (CD-ROM), an optical storage media piece, a magnetic storage media piece, or any suitable combination of the foregoing. In the present application, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In this application, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
Computer program code configured to carry out operations for the present application may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C + +, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may operate over any of a variety of networks: including a Local Area Network (LAN) or a Wide Area Network (WAN) -to the user's computer, or alternatively, to an external computer (e.g., through the internet using an internet service provider).
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions configured to implement the specified logical function(s). In the above embodiments, specific precedence relationships are provided, but these precedence relationships are only exemplary, and in particular implementations, the steps may be fewer, more, or the execution order may be modified. That is, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The modules described in the embodiments of the present application may be implemented by software or hardware. The described modules may also be provided in a processor, which may be described as: a processor includes a first determination module, a second determination module, and a transmission module. The names of these modules do not in some cases form a limitation on the module itself, for example, the first determining module may also be described as a "module that determines the request type of the received first data request and the address carried by the first data request".
As another aspect, the present application also provides a computer-readable medium on which a computer program is stored, which when executed by a processor, implements the data transmission method as described in the first or second embodiment.
As another aspect, the present application also provides a computer-readable medium, which may be contained in the apparatus described in the above embodiments; or may be present separately and not assembled into the device. The computer readable medium carries one or more programs which, when executed by the apparatus, cause the apparatus to: determining a request type of a received first data request and an address carried by the first data request; determining a first transmission path of data requested by the first data request based on the request type and the address; transmitting the data requested by the first data request based on the first transmission path.
The expressions "first", "second", "said first" or "said second" used in various embodiments of the present disclosure may modify various components regardless of order and/or importance, but these expressions do not limit the respective components. The above description is only configured for the purpose of distinguishing elements from other elements. For example, the first user equipment and the second user equipment represent different user equipment, although both are user equipment. For example, a first element could be termed a second element, and, similarly, a second element could be termed a first element, without departing from the scope of the present disclosure.
When an element (e.g., a first element) is referred to as being "operably or communicatively coupled" or "connected" (operably or communicatively) to "another element (e.g., a second element) or" connected "to another element (e.g., a second element), it is understood that the element is directly connected to the other element or the element is indirectly connected to the other element via yet another element (e.g., a third element). In contrast, it is understood that when an element (e.g., a first element) is referred to as being "directly connected" or "directly coupled" to another element (a second element), no element (e.g., a third element) is interposed therebetween.
The above description is only a preferred embodiment of the application and is illustrative of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the invention herein disclosed is not limited to the particular combination of features described above, but also encompasses other arrangements formed by any combination of the above features or their equivalents without departing from the spirit of the invention. For example, the above features may be replaced with (but not limited to) features having similar functions disclosed in the present application.

Claims (12)

1. A method of data transmission, the method comprising:
determining a request type of a received first data request and an address carried by the first data request;
determining a first transmission path of data requested by the first data request based on the request type and the address;
transmitting the data requested by the first data request based on the first transmission path.
2. The method of claim 1, wherein the determining a request type of the received first data request comprises:
and if the first data request is determined to be a data uploading request and the uploading data volume requested by the first data request is greater than a preset first data volume threshold value, determining that the request type of the first data request is a first type.
3. The method of claim 1, wherein the determining a request type of the received first data request comprises:
and if the first data request is determined to be a data downloading request and the downloading data quantity requested by the first data request is greater than a preset second data quantity threshold value, determining that the request type of the first data request is a second type.
4. The method of claim 1, wherein the determining a request type of the received first data request comprises:
and if the data quantity requested by the first data request is determined to be less than or equal to a preset third data quantity threshold value, determining that the request type of the first data request is a third type.
5. The method of claim 1, wherein the determining a first transmission path for data requested by the first data request based on the request type and the address is preceded by:
and detecting a transmission path of data requested by a second data request which belongs to the request type and carries the address so as to obtain the first transmission path matched with the request type and the address.
6. The method of claim 5, wherein the probing of a transmission path for data requested by a second data request belonging to the request type and carrying the address to obtain the first transmission path matching the request type and the address comprises:
determining a plurality of second transmission paths for transmitting the data requested by the second data request based on the addresses of the sender and the receiver of the second data request carried by the second data request;
respectively probing the plurality of second transmission paths by using the data requested by the second data request to obtain probing results of the plurality of second transmission paths;
determining the first transmission path matching the request type and the address in the plurality of second transmission paths based on the detection results of the plurality of second transmission paths.
7. The method according to claim 6, wherein the detection result comprises a transmission duration for transmitting the data requested by the second data request through a plurality of the second transmission paths respectively, and/or a transmission success rate for transmitting the data requested by the second data request through a plurality of the second transmission paths respectively,
the determining, based on the detection results of the plurality of second transmission paths, the first transmission path matching the request type and the address in the plurality of second transmission paths includes:
and determining the first transmission path matched with the request type and the address in the plurality of second transmission paths based on the transmission duration of the plurality of second transmission paths for respectively transmitting the data requested by the second data request and/or the transmission success rate of the plurality of second transmission paths for respectively transmitting the data requested by the second data request.
8. The method of claim 1, wherein the determining a first transmission path for data requested by the first data request based on the request type and the address comprises:
determining a plurality of third transmission paths matching the request type;
determining the first transmission path with two end addresses matched with the address in the plurality of third transmission paths for transmitting the data requested by the first data request.
9. The method of claim 1, wherein before determining the request type of the received first data request and the address carried by the first data request, the method further comprises:
receiving the first data request sent by the terminal equipment based on the operation of the terminal equipment by the user.
10. A data transmission apparatus, the apparatus comprising:
the first determining module is used for determining the request type of the received first data request and the address carried by the first data request;
a second determining module, configured to determine a first transmission path of data requested by the first data request based on the request type and the address;
and the transmission module is used for transmitting the data requested by the first data request based on the first transmission path.
11. An electronic device, wherein the device comprises:
one or more processors;
a computer readable medium configured to store one or more programs,
when executed by the one or more processors, cause the one or more processors to implement a data transmission method as claimed in any one of claims 1-9.
12. A computer-readable medium, on which a computer program is stored which, when being executed by a processor, carries out the data transmission method according to any one of claims 1 to 9.
CN202010221003.3A 2020-03-25 2020-03-25 Data transmission method and device, electronic equipment and computer readable medium Pending CN113452608A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010221003.3A CN113452608A (en) 2020-03-25 2020-03-25 Data transmission method and device, electronic equipment and computer readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010221003.3A CN113452608A (en) 2020-03-25 2020-03-25 Data transmission method and device, electronic equipment and computer readable medium

Publications (1)

Publication Number Publication Date
CN113452608A true CN113452608A (en) 2021-09-28

Family

ID=77807047

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010221003.3A Pending CN113452608A (en) 2020-03-25 2020-03-25 Data transmission method and device, electronic equipment and computer readable medium

Country Status (1)

Country Link
CN (1) CN113452608A (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020120595A1 (en) * 1999-06-08 2002-08-29 Peter P. Kiang Dynamic download link list
CN101510898A (en) * 2009-03-27 2009-08-19 深圳市茁壮网络技术有限公司 Method for uploading and downloading data, network node and communication system
CN105100224A (en) * 2015-07-01 2015-11-25 北京奇虎科技有限公司 Data transmission method and device
CN105407167A (en) * 2015-12-01 2016-03-16 深圳市永兴元科技有限公司 Data transmission method and server
CN106664290A (en) * 2015-05-26 2017-05-10 华为技术有限公司 Data transmission method and device for photoelectric hybrid network
CN107222902A (en) * 2017-07-24 2017-09-29 海信集团有限公司 A kind of method and apparatus for transmitting data
CN107682376A (en) * 2017-11-21 2018-02-09 北京顶象技术有限公司 Air control data interactive method and device
CN109768926A (en) * 2019-01-10 2019-05-17 维沃移动通信有限公司 A kind of data processing method, terminal device and computer readable storage medium

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020120595A1 (en) * 1999-06-08 2002-08-29 Peter P. Kiang Dynamic download link list
CN101510898A (en) * 2009-03-27 2009-08-19 深圳市茁壮网络技术有限公司 Method for uploading and downloading data, network node and communication system
CN106664290A (en) * 2015-05-26 2017-05-10 华为技术有限公司 Data transmission method and device for photoelectric hybrid network
CN105100224A (en) * 2015-07-01 2015-11-25 北京奇虎科技有限公司 Data transmission method and device
CN105407167A (en) * 2015-12-01 2016-03-16 深圳市永兴元科技有限公司 Data transmission method and server
CN107222902A (en) * 2017-07-24 2017-09-29 海信集团有限公司 A kind of method and apparatus for transmitting data
CN107682376A (en) * 2017-11-21 2018-02-09 北京顶象技术有限公司 Air control data interactive method and device
CN109768926A (en) * 2019-01-10 2019-05-17 维沃移动通信有限公司 A kind of data processing method, terminal device and computer readable storage medium

Similar Documents

Publication Publication Date Title
US20220394316A1 (en) Message sending method and device, readable medium and electronic device
CN112039796B (en) Data packet transmission method and device, storage medium and electronic equipment
CN110489621B (en) Method, device, medium and electronic equipment for dynamically adjusting route
CN111432001B (en) Method, apparatus, electronic device and computer readable medium for jumping scenes
CN112637287A (en) Load balancing method and equipment
CN110996372B (en) Message routing method, device and system and electronic equipment
CN114071544B (en) Network testing method and device and electronic equipment
CN110489474B (en) Data processing method, device, medium and electronic equipment
CN114466226B (en) Bandwidth duration duty cycle determination method, device, equipment and computer readable medium
CN110768903A (en) Method, device, terminal and storage medium for optimizing network connection
CN116743785A (en) Cloud network data storage method, device, equipment and medium based on fog calculation
CN115550250B (en) Small flow message retransmission method, system, electronic equipment and storage medium
CN113452608A (en) Data transmission method and device, electronic equipment and computer readable medium
CN115277504B (en) Network traffic monitoring method, device and system
CN114650295B (en) CDN quality scheduling method and device, medium and electronic equipment
CN110572805A (en) Data transmission method and device, electronic equipment and computer readable medium
US20160065453A1 (en) Cooperatively managing role based quality of service
CN113535428B (en) Method, device, equipment and medium for processing request message and response message
CN108243091B (en) Information sharing device and information sharing method
CN116938598B (en) Information transmission method, apparatus, electronic device, and computer-readable medium
CN113076195B (en) Object shunting method and device, readable medium and electronic equipment
CN115297046B (en) Gateway information sending method, device, electronic equipment, medium and product
CN116033126A (en) Video monitoring information sending method and device, electronic equipment and medium
CN117997727A (en) Log landing method and device for CDN, medium and electronic equipment
CN116155808A (en) Network flow control method, device, electronic equipment and computer readable medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40059942

Country of ref document: HK

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20210928