Acceleration method for application program, data transmission method, and apparatus
Patent Information
- Authority / Receiving Office
- HK · HK
- Patent Type
- Patents
- Current Assignee / Owner
- TENCENT TECHNOLOGY (SHENZHEN) CO LTD
- Filing Date
- 2023-04-27
- Publication Date
- 2026-07-17
AI Technical Summary
During data transmission between terminal devices and service devices, dedicated lines are prone to congestion when there is a large amount of data or a large number of applications, which can lead to a failure to guarantee transmission quality.
Multiple target transmission channels are selected from various transmission channels. By matching the destination address with the address range associated with the multi-channel accelerated transmission strategy, multiple target transmission channels are used for accelerated transmission to ensure efficient transmission of important data.
This avoids non-critical data occupying high-efficiency transmission resources, ensures the efficient transmission of critical data, stabilizes the transmission of non-critical data, and improves the overall data transmission quality.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to a method for accelerating applications, a data transmission method, and an apparatus. Background Technology
[0002] With the continuous development of technology, more and more terminal devices are able to use online applications and ensure the operation of these applications by continuously exchanging data with service devices.
[0003] In traditional data interaction processes, dedicated lines are typically used between terminal devices and service devices to accelerate the transmission of data generated by a specific application.
[0004] However, using the above method can cause congestion on the dedicated line when the specified application generates a large amount of data, or when there are a large number of specified applications, thereby affecting the transmission quality of the data generated by the application.
[0005] Therefore, under the relevant technology, the transmission quality of data generated by the application cannot be guaranteed. Summary of the Invention
[0006] This application provides an application acceleration method, a data transmission method, and an apparatus to solve the problem that the transmission quality of data generated by an application cannot be guaranteed.
[0007] Firstly, a method for accelerating an application is provided, including:
[0008] In response to an acceleration operation for a target application, multiple target transmission channels are selected from various transmission channels, wherein the target transmission channels are those whose data transmission performance meets a performance threshold.
[0009] Obtain the data to be transmitted generated by the target application, wherein the data to be transmitted carries a destination address;
[0010] Based on the mapping relationship between each transmission strategy and each address range, determine whether the destination address matches the address range associated with the multi-channel accelerated transmission strategy;
[0011] If a match is found, the multiple target transmission channels are used to accelerate the transmission of the data to be transmitted.
[0012] Secondly, a data transmission method is provided, including:
[0013] Obtain the data to be transmitted generated by the target application, wherein the data to be transmitted carries the destination address;
[0014] Based on the mapping relationship between each transmission strategy and each address range, the target transmission strategy corresponding to the address range that matches the destination address is determined, wherein the transmission strategy is used to characterize the data transmission performance requirements for the transmission channel.
[0015] Based on the target transmission strategy and the transmission evaluation information corresponding to each transmission channel, a target transmission channel is determined from the various transmission channels, wherein the transmission evaluation information is used to characterize the data transmission performance of the corresponding transmission channel.
[0016] The target transmission channel is used to transmit the data to be transmitted.
[0017] Thirdly, an application acceleration device is provided, comprising:
[0018] Processing module: In response to acceleration operations for a target application, select multiple target transmission channels from various transmission channels, wherein the target transmission channels are those whose data transmission performance meets the performance threshold among the various transmission channels;
[0019] Transceiver module: used to obtain the data to be transmitted generated by the target application, wherein the data to be transmitted carries the destination address;
[0020] The processing module is also used to: determine whether the destination address matches the address range associated with the multi-channel accelerated transmission strategy based on the mapping relationship between each transmission strategy and each address range;
[0021] The transceiver module is further configured to: if a match is found, use the multiple target transmission channels respectively to accelerate the transmission of the data to be transmitted.
[0022] Optionally, the processing module is specifically used for:
[0023] Obtain each of the aforementioned transmission channels;
[0024] Based on the transmission evaluation rules, each transmission channel is evaluated to obtain transmission evaluation information corresponding to each transmission channel. The transmission evaluation information is used to characterize the data transmission performance of the corresponding transmission channel.
[0025] Based on the obtained transmission evaluation information, multiple transmission channels whose data transmission performance meets the performance threshold are selected from the various transmission channels and used as the multiple target transmission channels.
[0026] Optionally, the processing module is specifically used for:
[0027] At preset time intervals, virtual data packets are sent to the respective channel access nodes and channel exit nodes of each transmission channel, and feedback information is obtained from the respective channel access nodes and channel exit nodes of each transmission channel.
[0028] Based on the obtained feedback information, the transmission evaluation information corresponding to each transmission channel is determined respectively.
[0029] Optionally, the mapping relationship includes multiple sub-mapping relationships, each sub-mapping relationship corresponding to an address range set, wherein the address range sets corresponding to different sub-mapping relationships have different address types; then the processing module is specifically used for:
[0030] Obtain the address type of the destination address;
[0031] In the mapping relationship, a mapping sub-relationship is determined that matches the address type of the destination address;
[0032] Based on the obtained mapping sub-relationship, determine whether the destination address matches the address range associated with the multi-channel accelerated transmission strategy.
[0033] Optionally, the transceiver module is specifically used for:
[0034] The data to be transmitted is sent to the corresponding channel exit node through the channel access node corresponding to each of the multiple target transmission channels;
[0035] The received data to be transmitted is forwarded to a preset data processing node through each channel exit node, wherein the data processing node is used to process the received data to be transmitted.
[0036] Specifically, when the data processing node receives the data to be transmitted forwarded from any of the channel exit nodes, it stops receiving the data to be transmitted.
[0037] Optionally, the plurality of target transmission channels include at least one target transmission channel of wireless transmission channel type and at least one target transmission channel of cellular transmission channel type.
[0038] Optionally, the transceiver module is further configured to:
[0039] After determining whether the destination address matches the address range associated with the multi-channel accelerated transmission strategy based on the mapping relationship between each transmission strategy and each address range, if they do not match, one of the multiple target transmission channels is used to accelerate the transmission of the data to be transmitted.
[0040] Fourthly, a data transmission device is provided, comprising:
[0041] Transceiver module: used to obtain data to be transmitted generated by the target application, wherein the data to be transmitted carries the destination address;
[0042] Processing module: used to determine the target transmission strategy corresponding to the address range that matches the destination address based on the mapping relationship between each transmission strategy and each address range, wherein the transmission strategy is used to characterize the data transmission performance requirements for the transmission channel;
[0043] The processing module is used to: determine the target transmission channel from the various transmission channels based on the target transmission strategy and the transmission evaluation information corresponding to each transmission channel, wherein the transmission evaluation information is used to characterize the data transmission performance of the corresponding transmission channel;
[0044] The transceiver module is used to transmit the data to be transmitted using the target transmission channel.
[0045] Optionally, the processing module is further configured to:
[0046] Before determining the target transmission channel from the various transmission channels based on the target transmission strategy and the transmission evaluation information corresponding to each transmission channel, each candidate transmission channel is selected based on the transmission evaluation information corresponding to each transmission channel. The data transmission performance represented by the transmission evaluation information corresponding to each candidate transmission channel meets the performance threshold.
[0047] Optionally, the processing module is specifically used for:
[0048] Obtain the access node and exit node of each transmission channel;
[0049] At preset time intervals, virtual data packets are sent to the respective channel access nodes and channel exit nodes of each transmission channel, and feedback information is obtained from the respective channel access nodes and channel exit nodes of each transmission channel.
[0050] Based on the obtained feedback information, the transmission evaluation information corresponding to each transmission channel is determined respectively.
[0051] Based on the obtained transmission evaluation information, candidate transmission channels are selected from the various transmission channels.
[0052] Optionally, if the transmission evaluation information includes packet loss evaluation results, latency evaluation results, jitter evaluation results, and load evaluation results, then the processing module is specifically used for:
[0053] For each of the transmission evaluation information, the following operations are performed respectively: based on the weight parameters corresponding to the packet loss evaluation result, delay evaluation result, jitter evaluation result and load evaluation result contained in a transmission evaluation information, the packet loss evaluation result, delay evaluation result, jitter evaluation result and load evaluation result are weighted and fused to obtain the corresponding fused evaluation value;
[0054] From the obtained fusion evaluation values, fusion evaluation values that meet the performance threshold are selected, and candidate transmission channels corresponding to each selected fusion evaluation value are obtained. The data transmission performance represented by the transmission evaluation information corresponding to each candidate transmission channel meets the performance threshold.
[0055] Optionally, the processing module is specifically used for:
[0056] If the target transmission strategy is an accelerated transmission strategy, then the target transmission channel is selected from the candidate transmission channels.
[0057] If the target transmission strategy is a direct connection transmission strategy, then the target transmission channel is selected from the other transmission channels besides the candidate transmission channels.
[0058] Optionally, each of the transmission channels is provided with a corresponding channel type, wherein each channel type is used to characterize the transmission technology principle of the corresponding transmission channel. The processing module is specifically used for:
[0059] If the target transmission strategy is a single-channel accelerated transmission strategy, then from the candidate transmission channels, one candidate transmission channel of wireless transmission channel type or cellular transmission channel type is selected as the target transmission channel.
[0060] If the target transmission strategy is a multi-channel accelerated transmission strategy, then from the candidate transmission channels, at least one candidate transmission channel of wireless transmission channel type and at least one candidate transmission channel of cellular transmission channel type are selected as the target transmission channel.
[0061] Optionally, the mapping relationship includes multiple sub-mapping relationships, each sub-mapping relationship corresponds to an address range set, and each address range corresponds to a transmission strategy, wherein the address range sets corresponding to different sub-mapping relationships have different address types; the processing module is specifically used for:
[0062] Obtain the address type of the destination address;
[0063] In the mapping relationship, a mapping sub-relationship is determined that matches the address type of the destination address;
[0064] Based on the set of address ranges corresponding to the obtained mapping sub-relationships, a transmission strategy corresponding to the address range that matches the destination address is selected as the target transmission strategy.
[0065] Optionally, the processing module is specifically used for:
[0066] Based on the obtained mapping sub-relationship, determine whether there exists an address range in the address range set corresponding to the mapping sub-relationship that matches the destination address;
[0067] If it exists, the transmission strategy corresponding to the address range that matches the destination address will be determined as the target transmission strategy.
[0068] Optionally, the address type includes domain name type and network type.
[0069] Optionally, each of the transmission strategies corresponds to a different priority level, and the processing module is specifically used for:
[0070] Based on the priority level corresponding to each of the transmission strategies, the destination address is matched with the address range corresponding to each of the transmission strategies in descending order of priority level, until an address range that matches the destination address is determined, and the transmission strategy corresponding to the address range that matches the destination address is determined as the target transmission strategy.
[0071] Optionally, if there are multiple target transmission channels, the processing module is specifically used for:
[0072] The data to be transmitted is sent to the corresponding channel exit node through the channel access node corresponding to each of the multiple target transmission channels;
[0073] The received data to be transmitted is forwarded to a preset data processing node through each channel exit node, wherein the data processing node is used to process the received data to be transmitted.
[0074] Specifically, when the data processing node receives the data to be transmitted forwarded from any of the channel exit nodes, it stops receiving the data to be transmitted.
[0075] Fifthly, a computer program product is provided, comprising a computer program that, when executed by a processor, implements the steps of the method as described in the first or second aspect.
[0076] Sixthly, a computer device is provided, comprising:
[0077] Memory, used to store program instructions;
[0078] A processor is configured to invoke program instructions stored in the memory and execute the method as described in the first aspect or the second aspect according to the obtained program instructions.
[0079] A seventh aspect provides a storage medium storing computer-executable instructions for causing a computer to perform the method as described in the first aspect or the second aspect.
[0080] In this embodiment, in response to the acceleration operation for the target application, multiple target transmission channels can be selected from various transmission channels. Multiple target transmission channels are used to accelerate the transmission of the data to be transmitted only when the destination address carried by the data to be transmitted matches the address range associated with the multi-channel accelerated transmission strategy. By using the destination address of the data to be transmitted, it can be determined whether the address accessed by the target application is an important address, and further, whether the data to be transmitted is important data. Therefore, when obtaining the data to be transmitted generated by the target application, targeted accelerated transmission can be performed, rather than accelerating all data generated by the target application. This avoids the problem of non-important data generated by the target application occupying high-efficiency transmission resources, thus ensuring the transmission quality of high-efficiency transmission cannot be guaranteed. Consequently, it ensures that important data generated by the target application can be transmitted efficiently, while non-important resources can be transmitted stably, guaranteeing the transmission quality of data generated by the application. Attached Figure Description
[0081] Figure 1 A schematic diagram of the principle of the application acceleration method provided in the embodiments of this application. Figure 1 ;
[0082] Figure 2 This is one application scenario for the application acceleration method provided in the embodiments of this application;
[0083] Figure 3a A flowchart illustrating an application acceleration method provided in this application embodiment. Figure 1 ;
[0084] Figure 3b A schematic diagram of the principle of the application acceleration method provided in the embodiments of this application. Figure 2 ;
[0085] Figure 3c A schematic diagram three illustrating the principle of an application acceleration method provided in this application embodiment;
[0086] Figure 3d A schematic diagram four illustrating the principle of an application acceleration method provided in an embodiment of this application;
[0087] Figure 4a A flowchart illustrating an application acceleration method provided in this application embodiment. Figure 2 ;
[0088] Figure 4b A schematic diagram of the principle of the application acceleration method provided in the embodiments of this application. Figure 5 ;
[0089] Figure 4c A schematic diagram of the principle of the application acceleration method provided in the embodiments of this application. Figure 6 ;
[0090] Figure 4d A schematic diagram of the principle of the application acceleration method provided in the embodiments of this application. Figure 7 ;
[0091] Figure 5 A flowchart illustrating an application acceleration method provided in this application embodiment is shown in Figure 3.
[0092] Figure 6 A flowchart illustrating an application acceleration method provided in an embodiment of this application is shown in Figure 4.
[0093] Figure 7 A flowchart illustrating a data transmission method provided in an embodiment of this application. Figure 5 ;
[0094] Figure 8 A schematic diagram of the structure of an application acceleration device provided in this application embodiment. Figure 1 ;
[0095] Figure 9 A schematic diagram of the structure of a data transmission device provided in the embodiments of this application. Figure 2 ;
[0096] Figure 10 Schematic diagram three of an application acceleration device or data transmission device provided in the embodiments of this application. Detailed Implementation
[0097] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings.
[0098] The following explanations of some terms used in the embodiments of this application are provided to facilitate understanding by those skilled in the art.
[0099] (1) Access point, exit point and channel:
[0100] An access point is the entry point of a channel; data can enter the channel upon reaching this entry point. An exit point is the exit point of a channel; data reaches the exit point after passing through the channel. A network line is defined by access points and exit points, with a one-to-one correspondence between them, thus defining a channel.
[0101] (2) Socket:
[0102] A socket is an interface for network communication.
[0103] This application relates to cloud computing. It is designed based on cloud storage and cloud gaming, among other cloud computing technologies.
[0104] Cloud computing refers to the delivery and usage model of IT infrastructure, meaning obtaining necessary resources in an on-demand and easily scalable manner through a network. In a broader sense, cloud computing refers to the delivery and usage model of services, meaning obtaining necessary services in an on-demand and easily scalable manner through a network. These services can be IT and software related, internet-related, or other services. Cloud computing is a product of the development and integration of traditional computer and network technologies such as grid computing, distributed computing, parallel computing, utility computing, network storage technologies, virtualization, and load balancing.
[0105] With the development of the internet, real-time data streams, and the diversification of connected devices, as well as the demands for search services, social networks, mobile commerce, and open collaboration, cloud computing has rapidly developed. Unlike previous parallel and distributed computing, cloud computing will fundamentally revolutionize the entire internet model and enterprise management model.
[0106] Cloud storage is a new concept that has been extended and developed from the concept of cloud computing. A distributed cloud storage system (hereinafter referred to as a storage system) refers to a storage system that uses cluster applications, grid technology and distributed storage file systems to bring together a large number of storage devices of various types in the network (storage devices are also called storage nodes) to work together through application software or application interfaces to provide data storage and business access functions to the outside world.
[0107] Currently, the storage method of storage systems is as follows: Logical volumes are created. During the creation of a logical volume, physical storage space is allocated to each logical volume. This physical storage space may consist of a single storage device or the disks of several storage devices. Clients store data on a logical volume, which means storing the data on the file system. The file system divides the data into many parts, each part being an object. Each object contains not only the data but also additional information such as a data identifier (ID entity, ID). The file system writes each object to the physical storage space of that logical volume and records the storage location information of each object. Therefore, when a client requests access to data, the file system can allow the client to access the data based on the storage location information of each object.
[0108] The process by which a storage system allocates physical storage space to a logical volume is as follows: the physical storage space is pre-divided into strips according to the capacity estimate of the objects stored in the logical volume (this estimate often has a large margin relative to the actual capacity of the objects to be stored) and the grouping of Redundant Array of Independent Disks (RAID). A logical volume can be understood as a strip, thus allocating physical storage space to the logical volume.
[0109] Cloud gaming, also known as gaming on demand, is an online gaming technology based on cloud computing. It enables thin clients with relatively limited graphics processing and data processing capabilities to run high-quality games. In cloud gaming, the game does not reside on the player's terminal but runs on a cloud server. The cloud server renders the game scene as a video and audio stream, which is then transmitted to the player's terminal via the network. The player's terminal does not need powerful graphics processing and data processing capabilities; it only needs basic streaming media playback capabilities and the ability to receive player input commands and send them to the cloud server.
[0110] The application fields of the application acceleration method and data transmission method provided in the embodiments of this application will be briefly introduced below.
[0111] With the continuous development of technology, more and more terminal devices are able to use online applications and ensure the operation of these applications by continuously exchanging data with service devices.
[0112] In traditional data interaction, dedicated lines are typically used between terminal devices and service devices to transmit data generated by specific applications. For example, game programs, which involve real-time multiplayer battles, have a high demand for real-time data transmission and reception. Therefore, the data generated by game programs needs to be transmitted efficiently, and dedicated lines are used to transmit this data.
[0113] However, using the above method can cause congestion on the dedicated line when the specified application generates a large amount of data, or when there are a large number of specified applications, thereby affecting the transmission quality of the data generated by the application.
[0114] Therefore, under the relevant technology, the transmission quality of data generated by the application cannot be guaranteed.
[0115] To address the issue of unreliable data transmission quality generated by applications, this application proposes a method for accelerating applications. Please refer to [reference needed]. Figure 1 This is a schematic diagram illustrating the principle of an application acceleration method provided in this application embodiment. After responding to an acceleration operation for a target application, the method selects multiple target transmission channels from various transmission channels whose data transmission performance meets a performance threshold. After obtaining the data to be transmitted generated by the target application, based on the mapping relationship between each transmission strategy and each address range, it determines whether the destination address of the data to be transmitted matches the address range associated with the multi-channel accelerated transmission strategy. If they match, the multiple target transmission channels are used to accelerate the transmission of the data to be transmitted.
[0116] In this embodiment, in response to the acceleration operation for the target application, multiple target transmission channels can be selected from various transmission channels. Multiple target transmission channels are used to accelerate the transmission of the data to be transmitted only when the destination address carried by the data to be transmitted matches the address range associated with the multi-channel accelerated transmission strategy. By using the destination address of the data to be transmitted, it can be determined whether the address accessed by the target application is an important address, and further, whether the data to be transmitted is important data. Therefore, when obtaining the data to be transmitted generated by the target application, targeted accelerated transmission can be performed, rather than accelerating all data generated by the target application. This avoids the problem of non-important data generated by the target application occupying high-efficiency transmission resources, thus ensuring the transmission quality of high-efficiency transmission cannot be guaranteed. Consequently, it ensures that important data generated by the target application can be transmitted efficiently, while non-important resources can be transmitted stably, guaranteeing the transmission quality of data generated by the application.
[0117] Furthermore, when the destination address carried by the data to be transmitted matches the multi-channel address range associated with the multi-channel accelerated transmission strategy, multiple target transmission channels are used to transmit the data to be transmitted. Compared with the method of using only one target transmission channel for transmission, the embodiments of this application can avoid the situation of data transmission abnormality caused by the abnormality of one target transmission channel, and further ensure the transmission quality of the data generated by the application.
[0118] The following describes the application scenarios of the application acceleration method provided in this application.
[0119] Please refer to Figure 2 This is a schematic diagram illustrating an application scenario of the application acceleration method provided in this application. The application scenario includes a client 201 and a server 202. The client 201 and the server 202 can communicate with each other. The communication method can be wired, such as through a network cable or serial cable; or wireless, such as through Bluetooth or Wi-Fi. No specific limitation is imposed.
[0120] Client 201 generally refers to a device capable of running the target application, such as a terminal device, a third-party application accessible by the terminal device, or a webpage accessible by the terminal device. Terminal devices include, but are not limited to, mobile phones, computers, intelligent transportation equipment, and smart appliances. Server 202 generally refers to a device capable of processing data, such as a terminal device or a server. Servers include, but are not limited to, cloud servers, local servers, or associated third-party servers. Both client 201 and server 202 can utilize cloud computing to reduce the consumption of local computing resources; similarly, they can also utilize cloud storage to reduce the consumption of local storage resources.
[0121] As one embodiment, the client 201 and the server 202 can be the same device, and there is no specific limitation. In this embodiment, the client 201 and the server 202 are described as different devices.
[0122] The following is based on Figure 2 This paper describes in detail the application acceleration method provided in the embodiments of this application, with the client as the execution subject.
[0123] Please refer to Figure 3a This is a flowchart illustrating an application acceleration method provided in an embodiment of this application.
[0124] S301, in response to an acceleration operation for a target application, selects multiple target transmission channels from various transmission channels.
[0125] The client can respond to acceleration operations targeting a specific application by selecting multiple target transmission channels from various transmission channels. There are several ways to respond to acceleration operations targeting a specific application. For example, the client can store a pre-specified list of applications that need acceleration, and acceleration can begin when the target application starts. Alternatively, the client's settings interface can display all applications that can be accelerated, and acceleration can begin in response to the client's selection of a target application in the settings interface.
[0126] As one example, after a selection operation is triggered on the target application to begin accelerating it, an acceleration completion screen can be accessed. This screen may display a "Launch Program" button, which can be pressed to launch the target application. Alternatively, a "Stop" button may be displayed, which can be pressed to stop the acceleration of the target application.
[0127] For example, please refer to Figure 3b The client's settings interface includes multiple applications: Application A, Application B, Application C, and Application D. The client can enter the acceleration preparation interface in response to selecting the "Accelerate" button corresponding to Application B (the target application) in the settings interface. Please refer to [link / reference]. Figure 3c The client enters the acceleration preparation interface, which displays the acceleration progress. When the client enters the acceleration preparation interface, it can select multiple target transmission channels from various transmission channels. Please refer to [link / reference]. Figure 3d After acceleration preparation is complete, the client enters the acceleration completion interface, which displays the transmission performance corresponding to the most efficient transmission strategy currently available. For example, if there is no wireless transmission channel, the most efficient transmission strategy currently available is the single-channel accelerated transmission strategy. When using the single-channel accelerated transmission strategy, the transmission latency can be reduced from 108ms for a normal transmission channel to 48ms.
[0128] After responding to the acceleration operation for the target application, the client can select multiple target transmission channels from various transmission channels. The process of selecting multiple target transmission channels is described below.
[0129] The client can obtain each transmission channel in advance, and each transmission channel can be stored in the client beforehand. The client can also obtain each transmission channel that can currently transmit data in real time, and the client can also obtain each transmission channel whose current transmission resources are occupied below the threshold, etc. There are no specific restrictions.
[0130] After obtaining the various transmission channels, the client can evaluate each channel based on transmission evaluation rules to obtain corresponding transmission evaluation information for each channel. Based on the obtained transmission evaluation information, multiple transmission channels whose data transmission performance, as represented by the transmission evaluation information, meets the performance threshold can be selected as multiple target transmission channels.
[0131] As one embodiment, there are various methods for the client to obtain the transmission evaluation information corresponding to each transmission channel based on the transmission evaluation rules. For example, the client can obtain the channel access node and channel exit node of each transmission channel. At preset time intervals, the client sends virtual data packets to the respective channel access node and channel exit node of each transmission channel. Alternatively, the client can send virtual data packets to the respective channel access node of each transmission channel at preset time intervals, and then send virtual data packets from each channel access node to the corresponding channel exit node.
[0132] The client receives feedback information from the access and exit nodes of each transmission channel based on the received virtual data packets. After receiving this feedback information, the client can determine the corresponding transmission evaluation information for each transmission channel.
[0133] As one embodiment, there can be multiple channel types for the transmission channel, which characterize the transmission technology principle of the corresponding channel. For example, the channel types include wireless transmission channel types and cellular transmission channel types. Furthermore, cellular network transmission channel types can also include 4G cellular network transmission channel types, 5G cellular network transmission channel types, etc. Then, the client can send virtual data packets to the respective access nodes and egress nodes of each wireless transmission channel type based on different transmission channel types. For example, the client uses a wireless network to send virtual data packets to the respective access nodes and egress nodes of each wireless transmission channel type. Similarly, the client uses a cellular network to send virtual data packets to the respective access nodes and egress nodes of each cellular transmission channel type, and so on. Specific implementation is not limited.
[0134] As one embodiment, based on the feedback information from a channel access node and the corresponding channel exit node, the packet loss assessment result, delay assessment result, jitter assessment result, and load assessment result of the transmission channel formed by the channel access node and the corresponding channel exit node can be determined. Therefore, the transmission assessment information can include packet loss assessment result, delay assessment result, jitter assessment result, and load assessment result. Then, based on the transmission assessment information corresponding to each transmission channel, multiple target transmission channels whose data transmission performance represented by the transmission assessment information meets the performance threshold can be selected through the following method.
[0135] Taking the processing of a single transmission evaluation message as an example, the processing methods for other transmission evaluation messages will not be elaborated here. The client can pre-set weight parameters for each of the packet loss evaluation result, latency evaluation result, jitter evaluation result, and load evaluation result. When a transmission evaluation message is obtained, the client can perform weighted fusion processing on the packet loss evaluation result, latency evaluation result, jitter evaluation result, and load evaluation result based on each weight parameter to obtain a corresponding fused evaluation value for the transmission evaluation message. The fused evaluation value can be used to numerically characterize the data transmission performance of the transmission channel.
[0136] After obtaining the corresponding fusion evaluation values for each transmission channel's transmission evaluation information, the client can filter out multiple fusion evaluation values that meet the performance threshold. For example, the client can sort the fusion evaluation values and select the fusion evaluation values with the highest preset numbers. After filtering out multiple fusion evaluation values, the target transmission channel corresponding to each of the filtered fusion evaluation values can be obtained.
[0137] As one embodiment, if each transmission channel has a corresponding channel type, the client selects at least one target transmission channel of type wireless transmission channel and at least one target transmission channel of type cellular transmission channel from each transmission channel, thus creating multiple target transmission channels. This avoids situations where the data transmission quality of a target transmission channel of a certain channel type is unstable, such as when there are many WiFi users or many background programs occupying the cellular network. Traditional methods of using dedicated lines to accelerate data transmission can only solve the problem of lag on carrier lines, but cannot solve the problem of lag and disconnection caused by local network fluctuations. In this embodiment, a multi-channel accelerated data transmission method is used, which can effectively utilize the wireless network and cellular network currently connected to the client, and can effectively solve the problem of lag and disconnection caused by local network fluctuations.
[0138] For example, please refer to Figure 4a This is a flowchart illustrating a process for obtaining multiple target transmission channels, based on... Figure 4a An example is provided to illustrate the process of selecting multiple target transmission channels.
[0139] S401, obtain the various transmission channels that can currently transmit data.
[0140] S402: Sequentially obtain one transmission channel from each transmission channel, determine whether the transmission evaluation information for that transmission channel has been obtained. If the transmission evaluation information for that transmission channel has not been obtained, then obtain the channel access node and channel exit node for that transmission channel, and evaluate that transmission channel. If the transmission evaluation information for that transmission channel has been obtained, it means that all transmission channels have been evaluated.
[0141] S403, create sockets for wireless networks and cellular networks, bind sockets for wireless networks and cellular networks to each transmission channel, and construct transmission channels of wireless transmission channel type and cellular transmission channel type.
[0142] S404, at preset intervals, such as 1 second, uses Internet Control Message Protocol (ICMP) or User Datagram Protocol (UDP) to send 10 virtual data packets to the access node and exit node of the transmission channel respectively, and performs 3 packet ping evaluations.
[0143] S405: Obtain feedback information from the access node and exit node of the transmission channel respectively. The client can send the feedback information to the server, and the server can determine the transmission evaluation information of the transmission channel based on the obtained feedback information.
[0144] S406, the server performs fusion processing on the packet loss assessment results, delay assessment results, jitter assessment results and load assessment results contained in the obtained transmission assessment information in a ratio of 3:1:2:1 to obtain the fused assessment value.
[0145] S407: After the server determines the transmission evaluation information for each transmission channel, it can sort the fusion evaluation values obtained based on these values. From both wireless network and cellular network perspectives, the server selects the transmission channel with the fusion evaluation value whose ranking number is less than a preset number as the target transmission channel. The server sends multiple target transmission channels to the client, thus completing the filtering process on the server side. The client does not need to update its filtering strategy, and therefore, the user does not need to update the target application.
[0146] S302, Obtain the data to be transmitted generated by the target application.
[0147] After the target application starts, it continuously generates data to be transmitted. Once the client receives this data, it can obtain the destination address carried within it. The destination address identifies the intended destination of the transmitted data. The client can create a virtual network interface card (NIC) locally to intercept data generated by the target application and obtain this data. Alternatively, the client can respond to operations triggered by the target application to obtain the data; it can also obtain data based on the target application's operating rules, etc., with no specific restrictions.
[0148] For example, a client can respond to a login request to a target application triggered by a target object, obtaining an access request to access the target application's login interface. The client can send this access request as data to be transmitted to the destination address. Upon receiving the display data from the destination address, the client can then display the target application's login interface. As another example, if the target application is a game, battle data generated during a fight between two virtual controlled objects can be sent as data to be transmitted. The client can send this battle data to the destination address, and upon receiving the display data from the destination address, the client can then display the battle results between the two virtual controlled objects in the game.
[0149] S303, based on the mapping relationship between each transmission strategy and each address range, determines whether the destination address matches the address range associated with the multi-channel accelerated transmission strategy.
[0150] After obtaining the data to be transmitted generated by the target application, the client can determine whether the destination address matches the address range associated with the multi-channel accelerated transmission strategy based on the mapping relationship between various transmission strategies and address ranges. The mapping relationship between various transmission strategies and address ranges includes the association between a multi-channel accelerated transmission strategy and an address range. After obtaining data to be transmitted, the client can match the destination address of the data with the address range associated with the multi-channel accelerated transmission strategy. The address range matching the destination address can be an address range that includes the destination address, or an address range that does not include the destination address, etc., without specific restrictions.
[0151] If the destination address matches the address range associated with the multi-channel accelerated transmission strategy, it indicates that the destination address accessed by the data to be transmitted is of high importance. In other words, the data to be transmitted is of high importance and requires the use of the multi-channel accelerated transmission strategy to transmit the data. That is, for the current data to be transmitted, the target application needs to be accelerated, so S304 is executed.
[0152] If the destination address does not match the address range associated with the multi-channel accelerated transmission strategy, it means that the destination address accessed by the data to be transmitted is of low importance. In other words, the data to be transmitted is of low importance and does not need to be transmitted using the multi-channel accelerated transmission strategy. In this case, a single-channel accelerated transmission strategy can be used to accelerate the transmission of the data to be transmitted. Alternatively, for the current data to be transmitted, there is no need to accelerate the target application, etc. There are no specific restrictions.
[0153] Therefore, if the destination address does not match the address range associated with the multi-channel accelerated transmission strategy, and a single-channel accelerated transmission strategy is used to accelerate the transmission of the data to be transmitted, the client can select one target transmission channel from multiple target transmission channels to transmit the data. The client can also continue to match other address ranges included in the mapping relationship to determine a transmission strategy for the data to be transmitted. If no address range in the mapping relationship matches the destination address, or if the destination address matches the address range associated with the masking strategy, it indicates that the destination address may be an unknown address or an address containing sensitive information, and in this case, the client will not transmit the data.
[0154] As one embodiment, there are various methods for selecting a target transmission channel from multiple target transmission channels. For example, based on the transmission evaluation information corresponding to each of the multiple target transmission channels, the target transmission channel with the best data transmission performance characterized by the transmission evaluation information is selected. Another example is based on the channel type corresponding to each of the multiple target transmission channels, selecting a target transmission channel of the cellular channel type, and then selecting the target transmission channel with the best data transmission performance characterized by the transmission evaluation information from among the cellular channel type target transmission channels. No specific limitations are imposed.
[0155] As one example, when a client determines whether a destination address matches an address range associated with a multi-channel accelerated transmission strategy based on the mapping relationship between various transmission strategies and address ranges, the matching process may be lengthy if the mapping relationship contains a large number of address ranges. To reduce the computational resource consumption of the matching process, multiple sub-mapping relationships can be set within the mapping relationship. If the address ranges contained in a sub-mapping relationship are considered as a set of address ranges, and each address range in this set corresponds to a transmission strategy, then the address range sets corresponding to different sub-mapping relationships have different address types.
[0156] When matching the destination address with the address range associated with the multi-channel accelerated transmission strategy, the client can first obtain the address type of the destination address. Based on the address types corresponding to the address range sets contained in each of the multiple mapping sub-relationships, the client determines the mapping sub-relationship whose address type matches the address type of the destination address. The client can then determine whether the destination address matches the address range associated with the multi-channel accelerated transmission strategy based on the obtained mapping sub-relationship.
[0157] As one example, the address type can include both domain name type and network type. For an address range with a domain name type, a regular expression can be used to represent the address range, for example, *\.xx\.cn. For a network type address range, the address range can be represented using the form of network address + mask, for example, IP: 1.2.3.0, mask: 255.255.255.0.
[0158] For example, please refer to Figure 4b When the destination address is a domain name (www.xx.com), the client can determine the corresponding mapping sub-relationship A (domain name address) from multiple mapping sub-relationships, namely mapping sub-relationship A and mapping sub-relationship B. The mapping sub-relationships include: Relation 1: Address range *\.xx\.cn, direct connection transmission strategy; and Relation 2: *\.xx\.co*, multi-channel accelerated transmission strategy. Based on Relation 2, the client matches the destination address www.xx.com with the address range *\.xx\.co* associated with the multi-channel accelerated transmission strategy.
[0159] For example, please refer to Figure 4cWhen the destination address's address type is network address 1.2.3.4, the client can determine the corresponding mapping sub-relationship C (with network address type) from multiple mapping sub-relationships, namely mapping sub-relationship C and mapping sub-relationship D. The mapping sub-relationships include: Relationship 3: Address range IP: 1.2.3.0, mask: 255.255.255.0, multi-channel accelerated transmission strategy; and Relationship 4: IP: 1.4.0.0, mask: 255.255.0.0, direct connection transmission strategy. Based on Relationship 3, the client can match the destination address 1.2.3.4 with the address range formed by IP: 1.2.3.0, mask: 255.255.255.0.
[0160] As one embodiment, after the client obtains the data to be transmitted, based on the mapping relationship, in addition to the multi-channel accelerated transmission strategy, other transmission strategies can be matched for the data to be transmitted. The mapping relationship can also include different priority levels corresponding to each transmission strategy. Based on the priority level corresponding to each transmission strategy, the client sequentially matches the destination address with the address range corresponding to each transmission strategy in descending order of priority level, until an address range matching the destination address is determined, thus determining a transmission strategy for the data to be transmitted.
[0161] For example, please refer to Figure 4d The mapping relationship includes transmission strategy A, transmission strategy B, and transmission strategy C. Transmission strategy A has a high priority, transmission strategy B has a medium priority, and transmission strategy C has a low priority. The client first checks if the destination address matches the address range associated with transmission strategy A. If they match, the transmission strategy for the data to be transmitted is determined to be transmission strategy A. If they don't match, the client then checks if the destination address matches the address range associated with transmission strategy B. If they match, the transmission strategy for the data to be transmitted is determined to be transmission strategy B. If they don't match, the client then checks if the destination address matches the address range associated with transmission strategy C. If they match, the transmission strategy for the data to be transmitted is determined to be transmission strategy C. If they don't match, transmission of the data to be transmitted is stopped.
[0162] S304 If a match is found, multiple target transmission channels are used to accelerate the transmission of the data to be transmitted.
[0163] If the destination address matches the address range associated with the multi-channel accelerated transmission strategy, the client can use multiple target transmission channels to transmit the data. The client can also transmit the data to the server, which will process or forward it. Furthermore, the client can transmit the data to other clients, enabling data interaction between them, etc., without any specific restrictions.
[0164] As one embodiment, the client can send data to be transmitted to the corresponding channel exit node through the access nodes of multiple target transmission channels. The client then forwards the received data to be transmitted to a preset data processing node through each channel exit node. This data processing node processes the received data; for example, it may be a preset fixed exit node. When the client receives data to be transmitted forwarded from any channel exit node through the data processing node, it stops receiving the data to be transmitted, thus avoiding duplicate transmissions.
[0165] For example, taking multiple target transmission channels, including two target transmission channels—one wireless transmission channel and one cellular transmission channel—please refer to [reference needed]. Figure 5 This is a flowchart illustrating an application acceleration method provided in an embodiment of this application.
[0166] S501, the client obtains the data to be transmitted generated by the target application;
[0167] S502: After obtaining the data to be transmitted, the client can set a data identifier for the data to be transmitted. The data identifier is used to uniquely identify the data to be transmitted. Therefore, the data to be transmitted can also carry a data identifier, which the client can use to identify the data to be transmitted.
[0168] S503 uses multiple target transmission channels to transmit the data to be transmitted. The data to be transmitted is sent to the corresponding channel exit node through the channel access node corresponding to the target transmission channel of the wireless transmission channel type. At the same time, the data to be transmitted is sent to the corresponding channel exit node through the channel access node corresponding to the target transmission channel of the cellular transmission channel type.
[0169] S504, the wireless transmission channel type channel exit node and the cellular transmission channel type channel exit node respectively receive the data to be transmitted sent by the corresponding channel access node, and after receiving the data to be transmitted, the wireless transmission channel type channel exit node and the cellular transmission channel type channel exit node respectively forward the data to be transmitted to the data processing node.
[0170] S505, when a data processing node receives data, it determines whether the data has already been received by checking if the data identifier matches one of the recorded historical data identifiers. Therefore, when receiving data to be transmitted from a wireless transmission channel type egress node or a cellular transmission channel type egress node, the data processing node can determine whether the data to be transmitted has already been received.
[0171] For example, if a data processing node first receives data to be transmitted forwarded by a channel exit node of the wireless transmission channel type, then the data identifier of the data to be transmitted is recorded as a historical data identifier. When the data to be transmitted is then received by a channel exit node of the cellular transmission channel type, it can be determined that the data to be transmitted has already been received based on the data identifier of the data to be transmitted.
[0172] S506: If the data is data that has already been received, then stop receiving the data; if the data is not data that has already been received, then receive the data and record the data identifier of the data as a historical data identifier.
[0173] For example, after receiving data to be transmitted forwarded by a channel egress node of the wireless transmission channel type through a data processing node, if it determines that the data to be transmitted has not been received before by using the data identifier of the data to be transmitted, then it will receive the data to be transmitted forwarded by the channel egress node of the wireless transmission channel type and record the data identifier of the data to be transmitted. When the data processing node obtains the data to be transmitted forwarded by the channel egress node of the cellular transmission channel type again, it will stop receiving the data to be transmitted.
[0174] The following uses the target application as the target game and the target transmission strategies, including single-channel acceleration, multi-channel acceleration, and direct-connection transmission, as examples to illustrate the application acceleration method provided in this application embodiment. Please refer to... Figure 6 This is a flowchart illustrating an example.
[0175] S601, in response to an acceleration operation for a target application, for example, in response to the selection of the "accelerate" button corresponding to the target application in the interface, acceleration of the target application begins, and the client can enter the acceleration preparation interface and obtain various transmission channels that can transmit data.
[0176] S602, based on the transmission evaluation rules, evaluates each obtained transmission channel separately to obtain transmission evaluation information for each transmission channel. The evaluation of each transmission channel can include wireless network evaluation and cellular network evaluation, thereby obtaining transmission evaluation information for each transmission channel for both wireless network and cellular network.
[0177] S603, based on the transmission evaluation information of each transmission channel, selects a target transmission channel from each transmission channel whose data transmission performance, as characterized by the data transmission evaluation information, reaches a performance threshold, and a target transmission channel from each transmission channel whose data transmission performance reaches a performance threshold.
[0178] S604: After obtaining two target transmission channels, the client can enter the accelerated completion interface. The client can create a virtual network interface card locally to intercept various data to be transmitted generated by the target application. For example, when the target application accesses www.xx.com, the virtual network interface card intercepts the data to be transmitted with the destination address www.xx.com.
[0179] In S605, after the client intercepts the data to be transmitted generated by the target game through the virtual network card, it can obtain the mapping relationship between each transmission strategy and each address range. This mapping relationship includes the association between the multi-channel accelerated transmission strategy and an address range.
[0180] S606: After obtaining the data to be transmitted, the destination address carried in the data can be extracted, and the address type of the destination address can be determined. For example, if the address type includes domain name type and network type, then it can be determined whether the address type of the destination address is domain name type or network type. For example, when the destination address is www.xx.com, the address type of the destination address is network type. By using the address type of the destination address, the corresponding mapping sub-relationship with the same address type can be determined in the mapping relationship. Therefore, it is not necessary to match all address ranges contained in the mapping relationship with the destination address, thus improving the speedup efficiency of the application.
[0181] S607, if the destination address carried by the data to be transmitted has a domain name type address, then a corresponding mapping sub-relationship with a domain name type address is determined in the mapping relationship. If the destination address carried by the data to be transmitted has a network type address, then a corresponding mapping sub-relationship with a network type address is determined in the mapping relationship.
[0182] S608, determine whether the destination address matches the address range associated with the multi-channel accelerated transmission strategy. For example, if the address range is *\.xx\.co* and the destination address is www.xx.com, and the destination address is within the address range *\.xx\.co*, then the destination address matches the address range associated with the multi-channel accelerated transmission strategy.
[0183] S609. If a match is found, it indicates that the data to be transmitted is of very high importance. This means that the data needs to be transmitted through two target transmission channels with good data transmission performance. Using multiple channels ensures that the data to be transmitted is transmitted with higher quality or higher efficiency compared to other data, such as the fastest speed and the lowest packet loss rate. Therefore, two target transmission channels are used to transmit the data to be transmitted.
[0184] S610, if there is no match, then determine whether the destination address matches the address range associated with the single-channel accelerated transmission strategy. For example, if the address range is *\.xx\.cn and the destination address is www.xx.com, and the destination address is not within the address range *\.xx\.co*, then it is determined that the destination address does not match the address range associated with the multi-channel accelerated transmission strategy.
[0185] S611, if a match is found, it indicates that the data to be transmitted is relatively important, meaning it needs to be transmitted through a target transmission channel with better data transmission performance. This ensures that the data to be transmitted is transmitted with higher quality or efficiency compared to other data transmitted using a direct connection strategy. Therefore, one target transmission channel is selected from the two and used to transmit the data.
[0186] S612 If there is a mismatch, it means that the importance of the data to be transmitted is low, and a direct transmission strategy can be used to transmit the data to be transmitted. Therefore, from the various transmission channels, except for the two target transmission channels, one transmission channel is selected to transmit the data to be transmitted.
[0187] Based on the same inventive concept, embodiments of this application provide a data transmission method. After obtaining the data to be transmitted generated by a target application, the method obtains the destination address carried by the data. Based on the mapping relationship between various transmission strategies and various address ranges, a target transmission strategy corresponding to the address range matching the destination address is determined, wherein the transmission strategy is used to characterize the data transmission performance requirements for the transmission channel. Based on the target transmission strategy and the transmission evaluation information corresponding to each transmission channel, a target transmission channel is determined from the various transmission channels, wherein the transmission evaluation information is used to characterize the data transmission performance of the corresponding transmission channel. The target transmission channel is then used to transmit the data to be transmitted.
[0188] In this embodiment, based on the mapping relationship between various transmission strategies and address ranges, the address range matching the destination address carried by the data to be transmitted, and the corresponding target transmission strategy, can be determined. By examining the destination address of the data to be transmitted, it can be determined whether the address accessed by the target application is important, and further, whether the data to be transmitted is important. Therefore, a targeted transmission strategy can be determined specifically for the data to be transmitted, rather than using the same transmission strategy for all data generated by the target application. This ensures that important data generated by the target application can be transmitted efficiently, while non-important data generated by the target application will not consume high-efficiency transmission resources and can also be transmitted stably, guaranteeing the transmission quality of data generated by the application.
[0189] The following continues based on Figure 2 This paper describes in detail the data transmission method provided in the embodiments of this application, with the client as the execution subject.
[0190] Please refer to Figure 7 This is a flowchart illustrating a data transmission method provided in an embodiment of this application.
[0191] S701, obtain the data to be transmitted generated by the target application.
[0192] The client obtains the data to be transmitted generated by the target application, as well as the destination carried in the data to be transmitted. For details, please refer to the introduction in S302 above, which will not be repeated here.
[0193] S702, based on the mapping relationship between each transmission strategy and each address range, determines the target transmission strategy corresponding to the address range that matches the destination address.
[0194] After obtaining the data to be transmitted and the destination address carried by the data, the client can obtain the mapping relationship between various transmission strategies and various address ranges. Based on the mapping relationship, the client can determine the target transmission strategy corresponding to the address range that matches the destination address. The address range that matches the destination address can be an address range that includes the destination address, or an address range that does not include the destination address, etc., without any specific restrictions.
[0195] As one example, when a client matches a destination address with the address ranges contained in a mapping relationship, the matching process may be lengthy if the mapping relationship contains a large number of address ranges. To reduce the computational resource consumption of the matching process, multiple sub-mapping relationships can be set within the mapping relationship. If the address ranges contained in a sub-mapping relationship are considered as a set of address ranges, each address range in this set corresponds to a transmission strategy, and the address range sets corresponding to different sub-mapping relationships have different address types.
[0196] When matching a destination address with various address ranges, the client can first obtain the address type of the destination address, which may include both domain name and network types. Based on the address types corresponding to the address range sets contained in each of the multiple mapping sub-relationships, the client determines the mapping sub-relationship whose address type matches the address type of the destination address. The client can then select the transmission strategy corresponding to the address range that matches the destination address based on the obtained set of address ranges for each mapping sub-relationship, and use this as the target transmission strategy.
[0197] As one implementation, when matching the destination address with various address ranges, the client can determine, based on the obtained mapping sub-relationship, whether there exists an address range in the set of address ranges corresponding to the mapping sub-relationship that matches the destination address. If an address range that matches the destination address exists, the transmission strategy corresponding to the address range that matches the destination address is determined as the target transmission strategy. If no address range that matches the destination address exists, it indicates that the destination address may be an unknown address, or it may be an address containing sensitive information, etc., and the transmission of the data to be transmitted can be stopped.
[0198] As one implementation, to further reduce the computational resources consumed by the client when matching the destination address with various address ranges, different priority levels can be set for each transmission strategy, with each transmission strategy corresponding to a different priority level. Based on the priority level of each transmission strategy, the client sequentially matches the destination address with the address range corresponding to each transmission strategy, from highest to lowest priority, until an address range matching the destination address is determined. The transmission strategy corresponding to the address range matching the destination address is then determined as the target transmission strategy.
[0199] As one embodiment, after obtaining the data to be transmitted generated by the target application, before determining the target transmission strategy corresponding to the address range matching the destination address based on the mapping relationship between various transmission strategies and address ranges, the client can first determine whether the destination address of the data to be transmitted is an address within the masked address range. If the destination address of the data to be transmitted is an address within the masked address range, the client stops transmitting the data to be transmitted, preventing the client from accessing the masked address and improving the security of the transmitted data. If the destination address of the data to be transmitted is not an address within the masked address range, the client determines the target transmission strategy corresponding to the address range matching the destination address based on the mapping relationship between various transmission strategies and address ranges.
[0200] S703 determines the target transmission channel from among the various transmission channels based on the target transmission strategy and the corresponding transmission evaluation information for each transmission channel.
[0201] After obtaining the target transmission strategy, the client can determine the target transmission channel from among the various transmission channels based on the target transmission strategy and the corresponding transmission evaluation information for each transmission channel. Different target transmission strategies have different requirements for the data transmission performance of the transmission channels. For example, if the target transmission strategy is an accelerated transmission strategy, it indicates that the data to be transmitted is relatively important and needs to be transmitted efficiently. In this case, the target transmission channel can be selected from the candidate transmission channels whose data transmission performance meets the performance threshold, and the data to be transmitted can be transmitted. If the target transmission strategy is a direct connection transmission strategy, it indicates that the data to be transmitted is less important and does not need to occupy high-efficiency transmission resources. In this case, the target transmission channel can be selected from other ordinary transmission channels besides the candidate transmission channels, and the data to be transmitted can be transmitted.
[0202] As one embodiment, the client can pre-store various transmission channels, or obtain various transmission channels when it needs to transmit data to the target application. The client can pre-store candidate transmission channels whose data transmission performance meets the performance threshold, or obtain candidate transmission channels whose data transmission performance meets the performance threshold when it needs to transmit data to the target application.
[0203] The process of obtaining each candidate transmission channel is similar to the process of obtaining multiple target transmission channels described above, and will not be repeated here.
[0204] As one embodiment, if each transmission channel has a corresponding channel type, then different target transmission channels of different types can be selected according to the transmission strategy. For example, if the target transmission strategy is a single-channel accelerated transmission strategy, then from among the candidate transmission channels, a candidate transmission channel of either wireless or cellular transmission type is selected as the target transmission channel. Specifically, this can be determined based on whether the wireless or cellular transmission channel has better data transmission performance at the time of data transmission.
[0205] For example, if the target transmission strategy is a multi-channel accelerated transmission strategy, then to ensure data transmission quality, at least one candidate transmission channel of the wireless transmission channel type and at least one candidate transmission channel of the cellular transmission channel type can be selected from among the candidate transmission channels as the target transmission channel. This avoids situations where the data transmission quality of a particular candidate transmission channel is unstable, such as when there are many WiFi users or many background programs occupying the cellular network. Traditional methods of using dedicated lines to accelerate data transmission can only solve the problem of lag on carrier lines, but cannot solve the problem of lag and disconnection caused by local network fluctuations. In this embodiment, a multi-channel accelerated data transmission method is used, which can effectively utilize the wireless network and cellular network currently connected to the client, and can effectively solve the problem of lag and disconnection caused by local network fluctuations.
[0206] S704 uses the target transmission channel to transmit the data to be transmitted.
[0207] After obtaining the target transmission channel, the client can use the target transmission channel to transmit the data to be transmitted.
[0208] As one example, if there are multiple target transmission channels, the client can send the data to be transmitted to the corresponding channel exit node through the channel access node corresponding to each of the multiple target transmission channels. For details, please refer to the description in S304 above, which will not be repeated here.
[0209] As one embodiment, the client can directly execute steps S701 to S704, or the client can execute steps S701 to S704 in response to a startup operation for starting steps S701 to S704 for the target application, etc., without any specific restrictions.
[0210] Based on the same inventive concept, embodiments of this application provide an application acceleration device, which is equivalent to the client discussed above and can implement the functions corresponding to the aforementioned application acceleration methods. Please refer to... Figure 8 The device includes a processing module 801 and a transceiver module 802, wherein:
[0211] Processing module 801: In response to an acceleration operation for a target application, selects multiple target transmission channels from various transmission channels, wherein the target transmission channel is the transmission channel whose data transmission performance meets the performance threshold among the various transmission channels;
[0212] Transceiver module 802: Used to obtain data to be transmitted generated by the target application, wherein the data to be transmitted carries the destination address;
[0213] The processing module 801 is also used to: determine whether the destination address matches the address range associated with the multi-channel accelerated transmission strategy based on the mapping relationship between each transmission strategy and each address range;
[0214] The transceiver module 802 is also used to: if a match is found, use multiple target transmission channels to accelerate the transmission of the data to be transmitted.
[0215] In one possible embodiment, the processing module 801 is specifically used for:
[0216] Obtain each transmission channel;
[0217] Based on the transmission evaluation rules, each transmission channel is evaluated to obtain the corresponding transmission evaluation information for each transmission channel. The transmission evaluation information is used to characterize the data transmission performance of the corresponding transmission channel.
[0218] Based on the obtained transmission evaluation information, multiple transmission channels whose data transmission performance meets the performance threshold are selected from each transmission channel and used as multiple target transmission channels.
[0219] In one possible embodiment, the processing module 801 is specifically used for:
[0220] At preset intervals, virtual data packets are sent to the respective access nodes and exit nodes of each transmission channel, and feedback information is obtained from the respective access nodes and exit nodes of each transmission channel.
[0221] Based on the feedback information obtained, the transmission evaluation information corresponding to each transmission channel is determined.
[0222] In one possible embodiment, the mapping relationship includes multiple sub-mapping relationships, each sub-mapping relationship corresponding to an address range set, wherein the address range sets corresponding to different sub-mapping relationships have different address types; then the processing module 801 is specifically used for:
[0223] Get the address type of the destination address;
[0224] In the mapping relationship, determine the mapping sub-relationship that matches the address type of the destination address;
[0225] Based on the obtained mapping sub-relationship, determine whether the destination address matches the address range associated with the multi-channel accelerated transmission strategy.
[0226] In one possible embodiment, the transceiver module 802 is specifically used for:
[0227] The data to be transmitted is sent to the corresponding channel exit node through the channel access node corresponding to each of the multiple target transmission channels;
[0228] The received data to be transmitted is forwarded to the preset data processing node through each channel exit node. The data processing node is used to process the received data to be transmitted.
[0229] Specifically, when a data processing node receives data to be transmitted forwarded from any channel exit node, it stops receiving the data to be transmitted.
[0230] In one possible embodiment, the plurality of target transmission channels includes at least one target transmission channel of wireless transmission channel type and at least one target transmission channel of cellular transmission channel type.
[0231] In one possible embodiment, the transceiver module 802 is further configured to:
[0232] After determining the destination address based on the mapping relationship between each transmission strategy and each address range, and checking whether it matches the address range associated with the multi-channel accelerated transmission strategy, if they do not match, one of the multiple target transmission channels is used to accelerate the transmission of the data to be transmitted.
[0233] Based on the same inventive concept, embodiments of this application provide a data transmission device, which is equivalent to the client described above and can realize the functions corresponding to the aforementioned data transmission method. Please refer to... Figure 9 The device includes a transceiver module 901 and a processing module 902, wherein:
[0234] Transceiver module 901: Used to obtain data to be transmitted generated by the target application, wherein the data to be transmitted carries the destination address;
[0235] Processing module 902: is used to determine the target transmission strategy corresponding to the address range that matches the destination address based on the mapping relationship between each transmission strategy and each address range, wherein the transmission strategy is used to characterize the data transmission performance requirements for the transmission channel;
[0236] The processing module 902 is used to: determine the target transmission channel from each transmission channel based on the target transmission strategy and the transmission evaluation information corresponding to each transmission channel, wherein the transmission evaluation information is used to characterize the data transmission performance of the corresponding transmission channel;
[0237] The transceiver module 901 is used to transmit data to be transmitted using the target transmission channel.
[0238] In one possible embodiment, the processing module 902 is further configured to:
[0239] Before determining the target transmission channel from among the various transmission channels based on the target transmission strategy and the transmission evaluation information corresponding to each transmission channel, each candidate transmission channel is selected based on the transmission evaluation information corresponding to each transmission channel. The data transmission performance represented by the transmission evaluation information corresponding to each candidate transmission channel meets the performance threshold.
[0240] In one possible embodiment, the processing module 902 is specifically used for:
[0241] Obtain the access node and exit node of each transmission channel;
[0242] At preset intervals, virtual data packets are sent to the respective access nodes and exit nodes of each transmission channel, and feedback information is obtained from the respective access nodes and exit nodes of each transmission channel.
[0243] Based on the obtained feedback information, the transmission evaluation information corresponding to each transmission channel is determined respectively.
[0244] Based on the obtained transmission evaluation information, candidate transmission channels are selected from each transmission channel.
[0245] In one possible embodiment, the transmission evaluation information includes packet loss evaluation results, latency evaluation results, jitter evaluation results, and load evaluation results. The processing module 902 is specifically used for:
[0246] For each transmission evaluation information, the following operations are performed: Based on the weight parameters corresponding to the packet loss evaluation result, delay evaluation result, jitter evaluation result and load evaluation result contained in a transmission evaluation information, the packet loss evaluation result, delay evaluation result and jitter evaluation result are weighted and fused to obtain the corresponding fused evaluation value;
[0247] From the obtained fusion evaluation values, the fusion evaluation values that meet the performance threshold are selected, and the candidate transmission channels corresponding to each selected fusion evaluation value are obtained. The data transmission performance represented by the transmission evaluation information corresponding to each candidate transmission channel meets the performance threshold.
[0248] In one possible embodiment, the processing module 902 is specifically used for:
[0249] If the target transmission strategy is an accelerated transmission strategy, then the target transmission channel is selected from all candidate transmission channels;
[0250] If the target transmission strategy is a direct transmission strategy, then the target transmission channel is selected from the other transmission channels besides the candidate transmission channels.
[0251] In one possible embodiment, each transmission channel is provided with a corresponding channel type, wherein each channel type is used to characterize the transmission technology principle of the corresponding transmission channel. The processing module 902 is specifically used for:
[0252] If the target transmission strategy is a single-channel accelerated transmission strategy, then from each candidate transmission channel, select one candidate transmission channel of wireless transmission channel type or cellular transmission channel type as the target transmission channel.
[0253] If the target transmission strategy is a multi-channel accelerated transmission strategy, then at least one candidate transmission channel of wireless transmission channel type and at least one candidate transmission channel of cellular transmission channel type are selected from each candidate transmission channel as the target transmission channel.
[0254] In one possible embodiment, the mapping relationship includes multiple sub-mapping relationships, each sub-mapping relationship corresponds to an address range set, and each address range corresponds to a transmission strategy, wherein the address range sets corresponding to different sub-mapping relationships have different address types; the processing module 902 is specifically used for:
[0255] Get the address type of the destination address;
[0256] In the mapping relationship, determine the mapping sub-relationship that matches the address type of the destination address;
[0257] Based on the set of address ranges corresponding to the obtained mapping sub-relationships, the transmission strategy corresponding to the address range that matches the destination address is selected as the target transmission strategy.
[0258] In one possible embodiment, the processing module 902 is specifically used for:
[0259] Based on the obtained mapping sub-relationship, determine whether there exists an address range in the set of address ranges corresponding to the mapping sub-relationship that matches the destination address;
[0260] If it exists, the transmission policy corresponding to the address range that matches the destination address will be determined as the target transmission policy.
[0261] In one possible embodiment, the address type includes a domain name type and a network type.
[0262] In one possible embodiment, each transmission strategy corresponds to a different priority level, and the processing module 902 is specifically used for:
[0263] Based on the priority level of each transmission strategy, the destination address is matched with the address range corresponding to each transmission strategy in descending order of priority level, until the address range that matches the destination address is determined. The transmission strategy corresponding to the address range that matches the destination address is then determined as the target transmission strategy.
[0264] In one possible embodiment, if there are multiple target transmission channels, the processing module 902 is specifically used for:
[0265] The data to be transmitted is sent to the corresponding channel exit node through the channel access node corresponding to each of the multiple target transmission channels;
[0266] The received data to be transmitted is forwarded to the preset data processing node through each channel exit node. The data processing node is used to process the received data to be transmitted.
[0267] Specifically, when a data processing node receives data to be transmitted forwarded from any channel exit node, it stops receiving the data to be transmitted.
[0268] Based on the same inventive concept, this application provides a computer device, which is described below.
[0269] Please refer to Figure 10 The acceleration device or data transmission device of the aforementioned application can run on the computer device 1000. The current version and historical versions of the data storage program and the application software corresponding to the data storage program can be installed on the computer device 1000. The computer device 1000 includes a display unit 1040, a processor 1080, and a memory 1020. The display unit 1040 includes a display panel 1041 for displaying user-interactive interfaces, etc.
[0270] In one possible embodiment, the display panel 1041 may be configured in the form of a liquid crystal display (LCD) or an organic light-emitting diode (OLED).
[0271] The processor 1080 is used to read a computer program and then execute the methods defined by the computer program. For example, the processor 1080 reads a data storage program or file, thereby running the data storage program on the computer device 1000 and displaying the corresponding interface on the display unit 1040. The processor 1080 may include one or more general-purpose processors, and may also include one or more DSPs (Digital Signal Processors) for performing related operations to implement the technical solutions provided in the embodiments of this application.
[0272] The memory 1020 generally includes main memory and secondary storage. Main memory can be random access memory (RAM), read-only memory (ROM), and cache, etc. Secondary storage can be a hard disk, optical disk, USB flash drive, floppy disk, or magnetic tape drive, etc. The memory 1020 is used to store computer programs and other data. The computer programs include applications corresponding to each client, and other data may include data generated after the operating system or applications are run, including system data (e.g., operating system configuration parameters) and user data. In this embodiment, program instructions are stored in the memory 1020, and the processor 1080 executes the program instructions stored in 1020 to implement any of the application acceleration methods or data transmission methods discussed in the preceding figures.
[0273] The aforementioned display unit 1040 is used to receive input digital information, character information, or contact touch operations / non-contact gestures, and to generate signal inputs related to user settings and function control of the computer device 1000. Specifically, in this embodiment, the display unit 1040 may include a display panel 1041. The display panel 1041, for example, is a touch screen, which can collect touch operations performed by the user on or near it (such as operations performed by the user using a finger, stylus, or any suitable object or accessory on or on the display panel 1041), and drive corresponding connection devices according to a pre-set program.
[0274] In one possible embodiment, the display panel 1041 may include two parts: a touch detection device and a touch controller. The touch detection device detects the player's touch position and the signal generated by the touch operation, and transmits the signal to the touch controller. The touch controller receives touch information from the touch detection device, converts it into touch point coordinates, and sends it to the processor 1080. It can also receive and execute commands from the processor 1080.
[0275] The display panel 1041 can be implemented using various types such as resistive, capacitive, infrared, and surface acoustic wave. In addition to the display unit 1040, the computer device 1000 may also include an input unit 1030, which may include a graphics input device 1031 and other input devices 1032. These other input devices may include, but are not limited to, one or more of the following: a physical keyboard, function keys (such as volume control buttons, power buttons, etc.), a trackball, a mouse, and a joystick.
[0276] In addition to the above, the computer device 1000 may also include a power supply 1010 for powering other modules, an audio circuit 1060, a near-field communication module 1070, and an RF circuit 1090. The computer device 1000 may also include one or more sensors 1050, such as an accelerometer, a light sensor, a pressure sensor, etc. The audio circuit 1060 specifically includes a speaker 1061 and a microphone 1062, etc. For example, the computer device 1000 can use the microphone 1062 to collect the user's voice and perform corresponding operations.
[0277] As one embodiment, the number of processors 1080 can be one or more, and the processors 1080 and memory 1020 can be coupled together or relatively independent.
[0278] As one example, Figure 10 The 1080 processor in the system can be used to implement, for example... Figure 8 The functions of the processing module 801 and the transceiver module 802 can also be used to implement, for example... Figure 9 The functions of the transceiver module 901 and the processing module 902 in the middle.
[0279] As one example, Figure 10 The processor 1080 in the document can be used to implement the client-side functions discussed earlier.
[0280] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0281] Alternatively, if the integrated units of this invention are implemented as software functional modules and sold or used as independent products, they can also be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the embodiments of this invention, or the parts that contribute to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the methods described in the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, ROM, RAM, magnetic disks, or optical disks.
[0282] Obviously, those skilled in the art can make various modifications and variations to this application without departing from the spirit and scope of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application also intends to include such modifications and variations.
Claims
1. A method for accelerating an application, characterized in that, include: In response to accelerated operations targeting the application, obtain the respective channel access node for each transmission channel; At preset time intervals, virtual data packets are sent to the respective channel access nodes of each transmission channel. Based on the feedback information returned by the respective channel access nodes of each transmission channel, the transmission evaluation information corresponding to each transmission channel is determined; wherein, the transmission evaluation information is used to characterize the data transmission performance of the corresponding transmission channel. From the various transmission channels, a transmission channel whose data transmission performance meets the performance threshold is selected as the target transmission channel to obtain multiple target transmission channels; the multiple target transmission channels include at least one target transmission channel of wireless transmission channel type and at least one target transmission channel of cellular transmission channel type. Obtain the data to be transmitted generated by the target application, wherein the data to be transmitted carries a destination address; Based on the mapping relationship between each transmission strategy and each address range, a mapping sub-relationship is determined to match the address type corresponding to the address range with the address type of the destination address; wherein, each address type is one of: domain name type and network type; Based on the priority levels of each transmission strategy included in the mapping sub-relationship, when it is determined that the priority level of the multi-channel accelerated transmission strategy is higher than the priority level of other transmission strategies, it is determined whether the destination address matches the address range associated with the multi-channel accelerated transmission strategy. If a match is found, the multiple target transmission channels are used respectively to accelerate the transmission of the data to be transmitted; If they do not match, when it is determined that the priority level of the single-channel transmission strategy is higher than the priority level of other transmission strategies besides the multi-channel accelerated transmission strategy, it is determined whether the address range associated with the destination address matches the address range associated with the single-channel transmission strategy. If they match, one of the multiple target transmission channels is used to accelerate the transmission of the data to be transmitted. If they do not match, one of the transmission channels other than the multiple target transmission channels is selected from the various transmission channels for direct transmission.
2. The method according to claim 1, characterized in that... The method further includes: At preset time intervals, virtual data packets are sent to the respective channel exit nodes of each transmission channel, and feedback information is obtained from the respective channel exit nodes of each transmission channel. The step of determining the transmission evaluation information corresponding to each transmission channel based on the feedback information returned by the respective channel access nodes of each transmission channel includes: Based on the obtained feedback information, the transmission evaluation information corresponding to each transmission channel is determined respectively.
3. The method according to claim 1 or 2, characterized in that, The mapping relationship includes multiple sub-mapping relationships, each sub-mapping relationship corresponds to an address range set, wherein the address range sets corresponding to different sub-mapping relationships have different address types.
4. The method according to claim 1 or 2, characterized in that, If a match is found, the multiple target transmission channels are used respectively to accelerate the transmission of the data to be transmitted, including: The data to be transmitted is sent to the corresponding channel exit node through the channel access node corresponding to each of the multiple target transmission channels; The received data to be transmitted is forwarded to a preset data processing node through each channel exit node, wherein the data processing node is used to process the received data to be transmitted. Specifically, when the data processing node receives the data to be transmitted forwarded from any of the channel exit nodes, it stops receiving the data to be transmitted.
5. A data transmission method, characterized in that, include: Obtain the data to be transmitted generated by the target application, wherein the data to be transmitted carries the destination address; Based on the mapping relationship between each transmission strategy and each address range, a mapping sub-relationship is determined to match the address type corresponding to the address range with the address type of the destination address; wherein, each address type is one of domain name type and network type; based on the mapping sub-relationship, a target transmission strategy corresponding to the address range matching the destination address is determined, wherein the transmission strategy is used to characterize the data transmission performance requirements for the transmission channel; Based on the target transmission strategy and the transmission evaluation information corresponding to each transmission channel, transmission channels whose data transmission performance meets the data transmission performance requirements are selected as target transmission channels, resulting in multiple target transmission channels. The transmission evaluation information characterizes the data transmission performance of the corresponding transmission channel. The transmission evaluation information is obtained by the client using the following method: in response to an acceleration operation for the target application, the client obtains the channel access node for each transmission channel; at preset time intervals, virtual data packets are sent to the channel access node for each transmission channel; based on the feedback information received from the channel access node for each transmission channel, the client determines the corresponding transmission evaluation information for each transmission channel. The data to be transmitted is transmitted using the multiple target transmission channels. The step of determining the target transmission strategy corresponding to the address range that matches the destination address based on the mapping sub-relationship includes: determining that the priority level of the multi-channel accelerated transmission strategy is higher than the priority level of other transmission strategies based on the priority level of each transmission strategy included in the mapping sub-relationship, and determining the multi-channel accelerated transmission strategy as the target transmission strategy when the destination address matches the address range associated with the multi-channel accelerated transmission strategy. If the destination address does not match the address range associated with the multi-channel accelerated transmission strategy, and the priority level of the single-channel transmission strategy is higher than the priority level of other transmission strategies besides the multi-channel accelerated transmission strategy, then if the destination address matches the address range associated with the single-channel transmission strategy, the single-channel transmission strategy is determined to be the target transmission strategy; if the destination address does not match the address range associated with the single-channel transmission strategy, the direct-connection transmission strategy is determined to be the target transmission strategy. The step of using the multiple target transmission channels to transmit the data to be transmitted includes: when the target transmission strategy is the multi-channel accelerated transmission strategy, using the multiple target transmission channels for accelerated transmission respectively; when the target transmission strategy is the single-channel transmission strategy, using one of the multiple target transmission channels for accelerated transmission; and when the target transmission strategy is the direct transmission strategy, selecting one transmission channel other than the multiple target channels from the various transmission channels for direct transmission.
6. The method according to claim 5, characterized in that, Before determining the target transmission channel from the various transmission channels based on the target transmission strategy and the transmission evaluation information corresponding to each transmission channel, the process further includes: Obtain each of the aforementioned transmission channels; Based on the transmission evaluation information corresponding to each transmission channel, candidate transmission channels are selected. The data transmission performance represented by the transmission evaluation information corresponding to each candidate transmission channel meets the performance threshold.
7. The method according to claim 6, characterized in that, Each transmission channel is assigned a corresponding channel type, where each channel type characterizes the transmission technology principle of the corresponding transmission channel. Based on the target transmission strategy and the transmission evaluation information corresponding to each transmission channel, transmission channels whose data transmission performance meets the data transmission performance requirements are selected as target transmission channels, resulting in multiple target transmission channels, including: If the target transmission strategy is a single-channel accelerated transmission strategy, then from the candidate transmission channels, one candidate transmission channel of wireless transmission channel type or cellular transmission channel type is selected as the target transmission channel. If the target transmission strategy is a multi-channel accelerated transmission strategy, then from the candidate transmission channels, at least one candidate transmission channel of wireless transmission channel type and at least one candidate transmission channel of cellular transmission channel type are selected as the target transmission channel.
8. An application acceleration device, characterized in that, include: Processing module: Used to respond to acceleration operations for the target application and obtain the respective channel access node for each transmission channel; At preset time intervals, virtual data packets are sent to the respective channel access nodes of each transmission channel. Based on the feedback information returned by the respective access nodes of each transmission channel, transmission evaluation information corresponding to each transmission channel is determined; wherein, the transmission evaluation information is used to characterize the data transmission performance of the corresponding transmission channel; transmission channels whose data transmission performance meets the performance threshold are selected from the various transmission channels as target transmission channels to obtain multiple target transmission channels; the multiple target transmission channels include at least one target transmission channel of wireless transmission channel type and at least one target transmission channel of cellular transmission channel type; Transceiver module: used to obtain the data to be transmitted generated by the target application, wherein the data to be transmitted carries the destination address; The processing module is further configured to: determine a mapping sub-relationship between the address type corresponding to the address range and the address type of the destination address based on the mapping relationship between each transmission strategy and each address range; wherein each address type is one of domain name type and network type; Based on the priority levels of each transmission strategy included in the mapping sub-relationship, when it is determined that the priority level of the multi-channel accelerated transmission strategy is higher than the priority level of other transmission strategies, it is determined whether the destination address matches the address range associated with the multi-channel accelerated transmission strategy. The transceiver module is further configured to: if a match is found, use the multiple target transmission channels respectively to accelerate the transmission of the data to be transmitted; If they do not match, when it is determined that the priority level of the single-channel transmission strategy is higher than the priority level of other transmission strategies besides the multi-channel accelerated transmission strategy, it is determined whether the address range associated with the destination address matches the address range associated with the single-channel transmission strategy. If they match, one of the multiple target transmission channels is used to accelerate the transmission of the data to be transmitted. If they do not match, one of the transmission channels other than the multiple target transmission channels is selected from the various transmission channels for direct transmission.
9. A data transmission device, characterized in that, include: Transceiver module: used to obtain data to be transmitted generated by the target application, wherein the data to be transmitted carries the destination address; Processing module: used to determine the mapping sub-relationship between the address type corresponding to the address range and the address type of the destination address based on the mapping relationship between each transmission strategy and each address range; wherein each address type is one of domain name type and network type; based on the mapping sub-relationship, to determine the target transmission strategy corresponding to the address range that matches the destination address, wherein the transmission strategy is used to characterize the data transmission performance requirements for the transmission channel; The processing module is used to: based on the target transmission strategy and the transmission evaluation information corresponding to each transmission channel, determine the transmission channel whose data transmission performance meets the data transmission performance requirements as the target transmission channel, and obtain multiple target transmission channels. The transmission evaluation information is used to characterize the data transmission performance of the corresponding transmission channel. The transmission evaluation information is obtained by the client using the following method: in response to an acceleration operation for the target application, obtain the channel access node for each transmission channel; send virtual data packets to the channel access node for each transmission channel at preset intervals; and determine the transmission evaluation information corresponding to each transmission channel based on the feedback information returned by the channel access node for each transmission channel. The transceiver module is used to: transmit the data to be transmitted using the multiple target transmission channels; wherein, the processing module is specifically used to: Based on the priority levels of each transmission strategy included in the mapping sub-relationship, if the priority level of the multi-channel accelerated transmission strategy is determined to be higher than the priority level of other transmission strategies, and the destination address matches the address range associated with the multi-channel accelerated transmission strategy, then the multi-channel accelerated transmission strategy is determined to be the target transmission strategy. If the destination address does not match the address range associated with the multi-channel accelerated transmission strategy, and the priority level of the single-channel transmission strategy is higher than the priority level of other transmission strategies besides the multi-channel accelerated transmission strategy, then if the destination address matches the address range associated with the single-channel transmission strategy, the single-channel transmission strategy is determined to be the target transmission strategy; if the destination address does not match the address range associated with the single-channel transmission strategy, the direct-connection transmission strategy is determined to be the target transmission strategy. The transceiver module is specifically used for: when the target transmission strategy is the multi-channel accelerated transmission strategy, using the multiple target transmission channels for accelerated transmission respectively; when the target transmission strategy is the single-channel transmission strategy, using one of the multiple target transmission channels for accelerated transmission; and when the target transmission strategy is the direct transmission strategy, selecting one transmission channel other than the multiple target channels from the various transmission channels for direct transmission.
10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method as described in any one of claims 1 to 7.
11. A computer device, characterized in that, include: Memory, used to store program instructions; A processor is configured to invoke program instructions stored in the memory and execute the method as described in any one of claims 1 to 7 according to the obtained program instructions.
12. A computer-readable storage medium, characterized in that, The storage medium stores computer-executable instructions for causing a computer to perform the method as described in any one of claims 1 to 7.