Data offloading transmission method and apparatus, and device, storage medium and program product
By introducing a dynamic data shunt policy terminal preference information processing mechanism in data shunt transmission, the problems of insufficient flexibility and poor user experience caused by static shunt strategies in the prior art are solved, and more efficient and flexible data shunt transmission is achieved.
Patent Information
- Application Number
- PCT/CN2023/138846
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-07-10
- Filing Date
- 2023-12-14
- Publication Date
- 2025-03-27
AI Technical Summary
The existing data shunt transmission scheme uses static configuration shunt strategy, resulting in low flexibility and poor user experience, which cannot meet the data shunt requirements of different types of applications and terminals at different times.
By receiving application data and terminal preference information, a data transmission message with a control identifier is generated and sent to the data aggregation node, so that it can process data diversion policy information based on the dynamic data diversion policy terminal preference information.
It realizes dynamic adjustment of data diversion strategy, improves system flexibility, improves user experience, and reduces the delay and error rate of data transmission.
Smart Images

Figure CN2023138846_27032025_PF_FP_ABST
Abstract
Description
Data split transmission method, device, equipment, storage medium and program product
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This disclosure claims priority to Chinese patent application number 202310841193.2, filed on July 10, 2023, entitled “Data Diversion Transmission Method, Device, Electronic Device and Storage Medium”, the entire contents of which are incorporated herein by reference. Technical Field
[0003] The present disclosure relates to the technical field of data transmission, and in particular to a data split transmission method, device, electronic device, storage medium, and program product. Background Art
[0004] Multi-access technology enables terminals to simultaneously access both Wi-Fi (Wireless Fidelity) and cellular data transmission links, enabling seamless handover, traffic offloading, and convergence between Wi-Fi and cellular, resulting in a smooth user experience, higher throughput, and improved robustness. Current application data offload and transmission solutions all use statically configured offload strategies, meaning that data from multiple applications is transmitted across both Wi-Fi and cellular data transmission links according to a pre-set, fixed offload strategy.
[0005] However, different types of applications have different requirements for data diversion, and the terminal's requirements for data diversion for the same application at different times are also different, which makes the data diversion transmission solution using static configuration diversion strategy not very flexible and the user experience poor.
[0006] It should be noted that the information disclosed in the above background technology section is only used to enhance the understanding of the background of the present disclosure, and therefore may include information that does not constitute prior art known to ordinary technicians in the field.
[0007] Summary of the Invention
[0008] The present disclosure provides a data splitting transmission method, device, electronic device and storage medium, which at least to a certain extent overcome the problems of low flexibility and poor user experience in related technologies.
[0009] Other features and advantages of the present disclosure will become apparent from the following detailed description, or may be learned in part by practice of the present disclosure.
[0010] According to a first aspect of the present disclosure, a data offload transmission method is provided, comprising: receiving application data corresponding to an application; obtaining data offload policy information corresponding to the application from a data aggregation node; the data offload policy information being used to represent data allocation information of the application data of the application when it is transmitted on a first data transmission link and a second data transmission link; monitoring whether a terminal generates data offload policy terminal preference information corresponding to the application, and if the monitoring terminal generates the data offload policy terminal preference information corresponding to the application, obtaining the data offload policy terminal preference information corresponding to the application; the data offload policy terminal preference information being used to represent preference information of the terminal for data allocation of the application data of the application when it is transmitted on the first data transmission link and the second data transmission link; generating a data transmission message based on the application data, and generating a data transmission message with a control identifier based on the data offload policy terminal preference information; and sending the data transmission message and the data transmission message with the control identifier to the data aggregation node via the first data transmission link and / or the second data transmission link based on the data offload policy information, so that the data aggregation node processes the data offload policy information based on the data offload policy terminal preference information to obtain the processed data offload policy information.
[0011] In some embodiments of the present disclosure, a data transmission message is generated based on the application data, and a data transmission message with a control identifier is generated based on the data diversion policy terminal preference information, including: packaging the application data in a diversion technology message format to obtain a packaged data transmission message; generating a data transmission message with a control identifier containing a control field based on the data diversion policy terminal preference information; the control field is a field in the data transmission message that carries a control instruction.
[0012] In some embodiments of the present disclosure, the application server corresponding to the application and the data aggregation node sign a data offload transmission agreement in advance.
[0013] In some embodiments of the present disclosure, receiving application data corresponding to an application includes: monitoring traffic initiation from the terminal; when monitoring traffic initiation from the application, taking over the traffic of the application through a virtual private network to obtain application data corresponding to the application.
[0014] In some embodiments of the present disclosure, if the monitoring terminal generates the data diversion policy terminal preference information corresponding to the application, obtaining the data diversion policy terminal preference information corresponding to the application includes: if the monitoring terminal generates the data diversion policy terminal preference information corresponding to the application, determining the terminal preference information acquisition interval duration; wherein, the terminal preference information acquisition interval duration is used to represent the time interval from the last time the data diversion policy terminal preference information corresponding to the application was acquired; if the terminal preference information acquisition interval duration exceeds a preset threshold, obtaining the data diversion policy terminal preference information corresponding to the application.
[0015] According to a second aspect of the present disclosure, a data diversion transmission method is provided, comprising: receiving a data transmission message with a control identifier sent by a terminal middleware via a first data transmission link and / or a second data transmission link; the data transmission message with the control identifier carries data diversion policy terminal preference information corresponding to the application; extracting the data diversion policy terminal preference information corresponding to the application from the data transmission message with the control identifier; wherein the data diversion policy terminal preference information is used to characterize the preference information of the terminal for data allocation when the application data of the application is transmitted on the first data transmission link and the second data transmission link; processing the data diversion policy information corresponding to the application according to the data diversion policy terminal preference information to obtain processed data diversion policy information; wherein the data diversion policy information is used to characterize the data allocation information when the application data of the application is transmitted on the first data transmission link and the second data transmission link; and sending the processed data diversion policy information to the terminal middleware.
[0016] In some embodiments of the present disclosure, the provided data offload transmission method also includes: receiving the data transmission message sent by the terminal middleware through the first data transmission link and / or the second data transmission link; based on the data transmission message, grouping and reordering the application data to obtain the first forwarding application data corresponding to the application; and forwarding the first forwarding application data to the application server corresponding to the application.
[0017] In some embodiments of the present disclosure, the application server corresponding to the application and the data aggregation node sign a data offload transmission agreement in advance.
[0018] In some embodiments of the present disclosure, the provided data diversion transmission method also includes: receiving second forwarding application data sent by the application server corresponding to the application; based on the processed data diversion policy information, sending the second forwarding application data to the terminal middleware through the first data transmission link and / or the second data transmission link.
[0019] According to the third aspect of the present disclosure, a data diversion transmission device is also provided, comprising: a data receiving module, configured to receive application data corresponding to an application; a data receiving module, configured to receive application data corresponding to an application; a first information acquisition module, configured to obtain data diversion strategy information corresponding to the application from a data aggregation node; the data diversion strategy information is used to characterize data allocation information when the application data of the application is transmitted on a first data transmission link and a second data transmission link; a second information acquisition module, configured to monitor whether a terminal generates data diversion strategy terminal preference information corresponding to the application, and if the monitoring terminal generates data diversion strategy terminal preference information corresponding to the application, obtain the data diversion strategy terminal preference information corresponding to the application; the data diversion strategy terminal The preference information is used to characterize the preference information of the terminal for allocating data to the application data of the application when it is transmitted on the first data transmission link and the second data transmission link; the transmission message generation module is configured to generate a data transmission message based on the application data, and generate a data transmission message with a control identifier based on the data diversion policy terminal preference information; and the first data diversion transmission module is configured to send the data transmission message and the data transmission message with a control identifier to the data aggregation node through the first data transmission link and / or the second data transmission link based on the data diversion policy information, so that the data aggregation node processes the data diversion policy information based on the data diversion policy terminal preference information to obtain the processed data diversion policy information.
[0020] According to the fourth aspect of the present disclosure, a data diversion transmission device is also provided, including: a transmission message receiving module, configured to receive a data transmission message with a control identifier sent by the terminal middleware through the first data transmission link and / or the second data transmission link; the data transmission message with the control identifier carries the data diversion policy terminal preference information corresponding to the application; an information extraction module, configured to extract the data diversion policy terminal preference information corresponding to the application from the data transmission message with the control identifier; wherein the data diversion policy terminal preference information is used to represent the terminal's preference information for data allocation when the application data of the application is transmitted on the first data transmission link and the second data transmission link; a data diversion policy information processing module, configured to process the data diversion policy information corresponding to the application according to the data diversion policy terminal preference information to obtain the processed data diversion policy information; wherein the data diversion policy information is used to represent the data allocation information when the application data of the application is transmitted on the first data transmission link and the second data transmission link; and a data diversion policy information sending module, configured to send the processed data diversion policy information to the terminal middleware.
[0021] According to the fifth aspect of the present disclosure, an electronic device is also provided, which includes: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to execute the data diversion transmission method described in any one of the first and second aspects above by executing the executable instructions.
[0022] According to the sixth aspect of the present disclosure, a computer-readable storage medium is further provided, on which a computer program is stored. When the computer program is executed by a processor, the data offload transmission method described in any one of the first and second aspects above is implemented.
[0023] According to a seventh aspect of the present disclosure, a computer program product is further provided, comprising a computer program, wherein when the computer program is executed by a processor, the data offload transmission method described in any one of the first and second aspects is implemented.
[0024] The data diversion transmission method provided in the embodiments of the present disclosure carries data diversion policy terminal preference information in the message when transmitting application data, generates a data transmission message with a control identifier, and sends it together with the application data to the data aggregation node, so that the data aggregation node can process the data diversion policy information based on the data diversion policy terminal preference information, so that the data diversion policy information can adapt to the changing diversion needs of the terminal, has better flexibility, and improves the user experience when using the terminal to operate the application.
[0025] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] In order to more clearly illustrate the embodiments of the present disclosure or the technical solutions in the prior art, a brief introduction will be given below to the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present disclosure. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.
[0027] FIG1 is a schematic diagram showing a data offload transmission system architecture according to an embodiment of the present disclosure;
[0028] FIG2 shows a flow chart of a data offload transmission method applied to terminal middleware according to an embodiment of the present disclosure;
[0029] FIG3 is a schematic diagram showing a specific implementation process of S202 in an embodiment of the present disclosure;
[0030] FIG4 is a schematic diagram showing a specific implementation process of S208 in an embodiment of the present disclosure;
[0031] FIG5 is a schematic diagram showing the field distribution of an MPTCP message according to an embodiment of the present disclosure;
[0032] FIG6 shows a schematic diagram of the distribution of a Public Flags field in an embodiment of the present disclosure;
[0033] FIG7 shows a flow chart of a data offload transmission method applied to a data aggregation node according to an embodiment of the present disclosure;
[0034] FIG8 is a schematic diagram showing an implementation scheme of data offload transmission in a specific example according to an embodiment of the present disclosure;
[0035] FIG9 shows a schematic diagram of a data offload transmission device applied to a terminal middleware according to an embodiment of the present disclosure;
[0036] FIG10 shows a schematic diagram of a data splitting transmission device applied to a data aggregation node according to an embodiment of the present disclosure; and
[0037] FIG11 shows a structural block diagram of an electronic device according to an embodiment of the present disclosure. DETAILED DESCRIPTION
[0038] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be embodied in many forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete and will fully convey the concepts of the example embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
[0039] In addition, the accompanying drawings are merely schematic illustrations of the present disclosure and are not necessarily drawn to scale. Identical reference numerals in the figures denote identical or similar parts, and thus repetitive descriptions thereof will be omitted. Some of the block diagrams shown in the accompanying drawings are functional entities that do not necessarily correspond to physically or logically separate entities. These functional entities may be implemented in software, in one or more hardware modules or integrated circuits, or in different networks and / or processor devices and / or microcontroller devices.
[0040] The specific implementation of the embodiment of the present disclosure is described in detail below with reference to the accompanying drawings.
[0041] Figure 1 shows a schematic diagram of the data offload transmission system architecture that can be used in embodiments of the present disclosure. As shown in Figure 1 , the system architecture may include: a terminal 10, terminal middleware 20, a data aggregation node 30, and an application server 40. Any two devices in the system are connected via a network, which can be either a wired or wireless network.
[0042] In some embodiments, the wireless network or wired network described above uses standard communication technologies and / or protocols. The network is typically the Internet, but may also be any network, including but not limited to a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), a mobile, wired or wireless network, a private network or any combination of a virtual private network). In some embodiments, technologies and / or formats including Hypertext Markup Language (HTML), Extensible Markup Language (XML), etc. are used to represent data exchanged over the network. In addition, conventional encryption technologies such as Secure Socket Layer (SSL), Transport Layer Security (TLS), Virtual Private Network (VPN), and Internet Protocol Security (IPSec) may be used to encrypt all or some links. In other embodiments, customized and / or dedicated data communication technologies may be used to replace or supplement the above-mentioned data communication technologies.
[0043] The terminal middleware 20 is installed on the terminal 10. It is a type of software on the terminal 10 that sits between the application system and the system software, managing the terminal 10's computing resources and network communications. Multiple application apps are installed on the terminal 10, at least one of which is on a data offload transmission whitelist. The apps on the data offload transmission whitelist are all eligible for data offload transmission. That is, the application server 40 for each app on the whitelist has pre-signed a data offload transmission agreement with the data aggregation node 30. The terminal 10 can be any electronic terminal device, including a smartphone, tablet, laptop, desktop computer, smart speaker, smartwatch, and the like.
[0044] Data aggregation node 30 is a data aggregation node that is connected to the cellular network core network and the Wi-Fi communication gateway connected to terminal 10, such as an optical network unit (ONU) or optical line terminal (OLT), to communicate with terminal middleware 10. It is also connected to application server 40, which can be one or more. Application server 40 and data aggregation node 30 have pre-signed a data offload transmission agreement.
[0045] In some embodiments, the terminal middleware 20 is used to receive application data corresponding to an application transmitted by the terminal 10; obtain data diversion policy information corresponding to the application from the data aggregation node 30; wherein the data diversion policy information is used to characterize data allocation information of the application data of the application when it is transmitted on the first data transmission link and the second data transmission link; monitor whether the terminal 10 generates data diversion policy terminal preference information corresponding to the application, and if the monitoring terminal 10 generates data diversion policy terminal preference information corresponding to the application, obtain the data diversion policy terminal preference information corresponding to the application from the terminal 10; the data diversion policy terminal preference information is used to characterize the terminal's preference information for data allocation of the application data of the application when it is transmitted on the first data transmission link and the second data transmission link; generate a data transmission message based on the application data, and generate a data transmission message with a control identifier based on the data diversion policy terminal preference information; based on the data diversion policy information, send the data transmission message with the data transmission message and the control identifier to the data aggregation node 30 via the first data transmission link and / or the second data transmission link.
[0046] In some embodiments, the data aggregation node 30 is used to extract the data diversion policy terminal preference information corresponding to the application from the data transmission message with the control identifier; process the data diversion policy information corresponding to the application according to the data diversion policy terminal preference information to obtain the processed data diversion policy information; and send the processed data diversion policy information to the terminal middleware 20.
[0047] In some embodiments, the data aggregation node 30 is further configured to group and reorder the application data based on the data transmission message to obtain first forwarded application data corresponding to the application, and forward the first forwarded application data to the application server 40. The data aggregation node 30 distinguishes different messages by control identifiers: data transmission messages without control identifiers are messages corresponding to application data, and data transmission messages with control identifiers are messages corresponding to the data offload policy terminal preference information.
[0048] In some embodiments, the data aggregation node 30 is also used to receive second forwarding application data sent by the application server 40; based on the processed data diversion policy information, the second forwarding application data is sent to the terminal middleware 20 through the first data transmission link and / or the second data transmission link.
[0049] It should be noted that the above application can be one or more applications. When there are multiple applications, different applications are distinguished based on the application identifier APP ID.
[0050] As shown in FIG1 , an interactive method of a data offload transmission system includes:
[0051] S102, the terminal middleware 20 receives application data corresponding to the application from the terminal 10;
[0052] S104, the terminal middleware 20 obtains data diversion strategy information corresponding to the application from the data aggregation node 30;
[0053] S106, the terminal middleware 20 monitors whether the terminal 10 generates terminal preference information of a data diversion strategy corresponding to the application;
[0054] S108, the terminal 10 generates terminal preference information of a data diversion strategy corresponding to the application;
[0055] S110, the terminal middleware 20 obtains the terminal preference information of the data diversion strategy corresponding to the application from the terminal 10;
[0056] S112, the terminal middleware 20 generates a data transmission message based on the application data and generates a data transmission message with a control identifier based on the terminal preference information of the data diversion policy;
[0057] S114, the terminal middleware 20 sends the data transmission message and the data transmission message with the control identifier to the data aggregation node 30 through the first data transmission link and / or the second data transmission link based on the data offloading policy information;
[0058] S116, the data aggregation node 30 extracts the data diversion policy terminal preference information corresponding to the application from the data transmission message with the control identifier; and processes the data diversion policy information corresponding to the application according to the data diversion policy terminal preference information;
[0059] S118, the data aggregation node 30 sends the processed data diversion policy information to the terminal middleware 20;
[0060] S120, the data aggregation node 30 groups and reorders the application data based on the data transmission message to obtain first forwarding application data corresponding to the application;
[0061] S122 , the data aggregation node 30 forwards the first forwarding application data to the application server 40 .
[0062] Those skilled in the art will appreciate that the number of terminals 10, terminal middleware 20, data aggregation nodes 30, and application servers 40 in FIG1 is merely illustrative, and any number of terminals, terminal middleware, data aggregation nodes, and application servers may be provided as needed. This is not limited in the present disclosure.
[0063] Under the above system architecture, a data offload transmission method is provided in an embodiment of the present disclosure. In some embodiments, the data offload transmission method provided in an embodiment of the present disclosure can be implemented by a data aggregation node; in some embodiments, the data offload transmission method provided in an embodiment of the present disclosure can be implemented by the interaction between the terminal, the terminal middleware, the data aggregation node and the application server.
[0064] As shown in FIG2 , a data offload transmission method applied to terminal middleware provided in an embodiment of the present disclosure includes the following steps.
[0065] S202: Receive application data corresponding to the application.
[0066] S204: Obtain data diversion strategy information corresponding to the application from the data aggregation node.
[0067] It should be noted that the data offload strategy information is used to characterize the data allocation information of the application data when it is transmitted on the first data transmission link and the second data transmission link, that is, what proportion of the application data of the application is transmitted through the first data transmission link, and what proportion of the application data of the application is transmitted through the second data transmission link. Among them, the first data transmission link can be a cellular network transmission link or a Wi-Fi transmission link. When the first data transmission link is a cellular network transmission link, the second data transmission link is a Wi-Fi transmission link; when the first data transmission link is a Wi-Fi transmission link, the second data transmission link is a cellular network transmission link. Specifically, the data offload strategy may include load balancing, master-slave mode, minimum delay mode and backup mode, etc.
[0068] It should be noted that, under the premise of not affecting the data diversion transmission process, in order to reduce the number of data interactions as much as possible, in some embodiments of the present disclosure, the terminal middleware can periodically obtain the data diversion policy information corresponding to the application from the data aggregation node and store it locally. Specifically, it can be stored after forming a data table. The data aggregation node can also be set. For example, after updating the data diversion policy information corresponding to one or more applications, an update prompt is sent to the terminal middleware. After receiving the prompt, the terminal middleware actively obtains the data diversion policy information corresponding to the application from the data aggregation node and stores it locally. After receiving the application data corresponding to the application, the data diversion policy information corresponding to the application can be queried locally without having to obtain information from the data aggregation node every time, thereby reducing the number of data interactions and improving the processing speed.
[0069] S206 , monitoring whether the terminal generates the data diversion policy terminal preference information corresponding to the application. If the monitoring terminal generates the data diversion policy terminal preference information corresponding to the application, the data diversion policy terminal preference information corresponding to the application is acquired.
[0070] It should be noted that the data offload policy terminal preference information is used to represent the terminal's preference information for allocating application data when transmitting application data across the first and second data transmission links. This refers to the terminal's preference information for allocating application data when transmitting application data across the first and second data transmission links, based on user needs or the terminal's current operating status. Users can spontaneously configure the content of the data offload policy terminal preference information through the user interface. For example, if a user wishes to maintain a smooth application service for application A, the terminal will set the data offload policy terminal preference information for application A to the minimum latency mode. The terminal can also configure the data offload policy terminal preference information based on the status of the cellular and Wi-Fi transmission links, such as link availability, packet loss rate, and current terminal battery status. For example, if the terminal detects a high packet loss rate on the cellular transmission link, it will configure the data offload policy terminal preference information to reduce the amount of data transmitted on the cellular transmission link or to select only the Wi-Fi transmission link.
[0071] S208: Generate a data transmission message according to the application data, and generate a data transmission message with a control identifier according to the terminal preference information of the data offload strategy.
[0072] S210, based on the data diversion policy information, sends the data transmission message and the data transmission message with the control identifier to the data aggregation node through the first data transmission link and / or the second data transmission link, so that the data aggregation node processes the data diversion policy information based on the data diversion policy terminal preference information to obtain the processed data diversion policy information.
[0073] It should be noted that when the terminal middleware transmits messages, it selects the first data transmission link and the second data transmission link, only the first data transmission link, or only the second data transmission link to forward the data transmission messages and the data transmission messages with control identifiers according to the allocation ratio or requirements set in the data diversion strategy information.
[0074] It can be seen from the above steps that the data diversion transmission method provided in the embodiments of the present disclosure carries the data diversion policy terminal preference information in the message when transmitting application data, generates a data transmission message with a control identifier, and sends it to the data aggregation node together with the application data, so that the data aggregation node can process the data diversion policy information based on the data diversion policy terminal preference information, so that the data diversion policy information can adapt to the changing diversion needs of the terminal, has better flexibility, and can enable users to reduce errors, shorten delays, and increase response speed when using operating applications, thereby improving the user experience when using terminal operating applications.
[0075] In some embodiments of the present disclosure, the specific implementation process of S202 is shown in FIG3 , and includes the following steps:
[0076] S302, monitoring the traffic initiated by the terminal;
[0077] S304: When it is monitored that traffic is initiated by the application, the traffic of the application is taken over through the virtual private network to obtain application data corresponding to the application.
[0078] It should be noted that in some embodiments of the present disclosure, the terminal middleware takes over the application data in the data diversion transmission whitelist through a virtual private network (VPN), such as a virtual network card. The meaning of the data diversion transmission whitelist is that the applications in the list have signed a configuration-related data diversion transmission agreement on the data aggregation node side, and the agreements signed by different applications may be different. When taking over the application data, the APP ID is used to identify and distinguish the application. Specifically, the terminal middleware takes over the application data received and sent by the terminal through a virtual network card or other means, filters all application data based on the data diversion transmission whitelist, and only takes over the application data in the data diversion transmission whitelist. In specific applications, not all applications on the terminal need to perform data diversion and transmission. For example, some applications with small data transmission volume do not need data diversion and transmission, and only one or several applications have the need for data diversion and transmission. The application servers corresponding to these applications will sign a data diversion and transmission agreement with the data aggregation node in advance. After setting the data diversion and transmission whitelist, the terminal middleware only needs to pay attention to the application data in the list. This not only meets the needs of actual operation services, but also can reduce the amount of data processing and reduce the workload of the terminal.
[0079] In some embodiments of the present disclosure, the implementation process of S206 includes: if the monitoring terminal generates data diversion strategy terminal preference information corresponding to the application, determining the interval duration for obtaining the terminal preference information; wherein, the interval duration for obtaining the terminal preference information is used to represent the time interval from the last time the terminal preference information corresponding to the application was obtained; if the interval duration for obtaining the terminal preference information exceeds a preset threshold, obtaining the data diversion strategy terminal preference information corresponding to the application. During implementation, terminals may generate some data diversion policy terminal preference information at any time. However, if the terminal middleware generates a data transmission message with a control identifier based on the information each time it is generated and reports it to the data aggregation node, the data aggregation node will have to receive a large number of messages sent by the terminal middleware. If each terminal middleware frequently sends data transmission messages with a control identifier, it will easily form a signaling storm, affecting the normal operation of the data aggregation node. Therefore, it is necessary to determine the time interval between the current moment and the last time the data diversion policy terminal preference information corresponding to the application was obtained, that is, the terminal preference information acquisition interval. Only when the terminal preference information acquisition interval exceeds a preset threshold, such as 15 minutes, 30 minutes, or 60 minutes, is the terminal middleware allowed to obtain the data diversion policy terminal preference information corresponding to the application. Otherwise, the acquisition is rejected. In the specific implementation process, this can be achieved by setting a timer. That is, the terminal middleware can only obtain the data diversion policy terminal preference information corresponding to the application after the timer expires. After each successful acquisition, the timer is reset and the timing is restarted. During the execution of the timer, the terminal may generate new data diversion strategy terminal preference information corresponding to the application. Since the data diversion strategy terminal preference information corresponding to the application is time-sensitive, generally speaking, the terminal will overwrite the original data diversion strategy terminal preference information with the newly generated application to ensure that the data diversion strategy terminal preference information corresponding to the application meets real-time needs.
[0080] If the terminal middleware is denied access to the data offload policy terminal preference information corresponding to the application, it will no longer execute S208 to S210. Instead, it will directly generate a data transmission message based on the application data and send it to the data aggregation node via the first data transmission link and / or the second data transmission link based on the data offload policy information. The data aggregation node will receive the data transmission message and, if it does not find the control identifier, will determine that it does not carry control signaling. It will then directly reorder the application data packets based on the data transmission message and send them to the corresponding application server.
[0081] In some embodiments of the present disclosure, the specific implementation process of S208 is shown in FIG4 , and includes the following steps:
[0082] S402, packaging the application data in a diversion technology message format to obtain a packaged data transmission message;
[0083] S404: Generate a data transmission message containing a control field and a control identifier according to the terminal preference information of the data offload policy.
[0084] It should be noted that the control field is a field in the data transmission message that carries control instructions.
[0085] It should be noted that in the existing diversion scheme, the message sent by the terminal is only the application data on the user plane and does not involve control signaling. If control signaling needs to be transmitted, the core network element of the cellular network needs to be modified so that the terminal can send control signaling to the corresponding data node. In the embodiment of the present disclosure, a control field is set in the data transmission message so that the data transmission message can also carry control instructions to realize the transmission of control signaling, and a data transmission message with a control identifier is formed so that the data aggregation node can quickly identify the data transmission message with the control identifier among a large number of data transmission messages. In the specific implementation, the application data is packaged to obtain a packaged data transmission message. For the terminal preference information of the data diversion strategy, a data transmission message containing the control field is generated separately. Since it contains the control field, the data transmission message carries a control identifier. The packaged data transmission message and the data transmission message containing the control field and the control identifier are combined and sent to the data aggregation node together.
[0086] In some embodiments of the present disclosure, MPTCP (Multipath TCP) offloading technology may be employed. The applicant has discovered that the subtype reserved bit of an MPTCP message can be reused as a control field. FIG5 is a schematic diagram of the field distribution of an MPTCP message in the present disclosure, wherein the subtype field in the box is set as a control field. That is, the message is configured as shown in Table 1. Specifically, the subtype field value is set to 0x9 to represent UE assistance information for steering mode, indicating that the MPTCP message stores data offload policy terminal preference information.
[0087] Table 1
[0088] In some embodiments of the present disclosure, MPQUIC (Multipath QUIC) offloading technology may be adopted. The applicant has discovered that the reserved bit Bit7 in the Public Flags field in the MPQUIC technology can be reused as a control field to indicate that this MPQUIC message is control signaling. As shown in Figure 6, a schematic diagram of the Public Flags field distribution in the present disclosure is shown, in which the Bit7 field in the box is set to the control field. When the field is set to 1, it indicates that the content of the message is a report of UE auxiliary information, which stores data offloading policy terminal preference information data. When the aggregation node receives the message, it needs to parse the UE auxiliary information content therein.
[0089] Those skilled in the art will understand that the above two diversion technologies are only examples and are not used to limit the diversion technology adopted in the present disclosure. As long as a control field can be set in the diversion technology message to transmit data diversion strategy terminal preference information, it falls within the protection scope of the present disclosure.
[0090] In some embodiments of the present disclosure, if the terminal middleware does not monitor the terminal preference information of the data diversion strategy corresponding to the terminal-generated application, the application data corresponding to the application will be packaged to generate a data transmission message. The data transmission message does not carry a control identifier. After receiving it, the data aggregation node determines that it belongs to the application data of the user plane and sends it up. After processing the data transmission message, it can be forwarded to the corresponding application server.
[0091] In the system architecture shown in FIG1 , an embodiment of the present disclosure further provides a data offload transmission method applied to a data aggregation node, as shown in FIG7 , including the following steps.
[0092] S702: Receive a data transmission message with a control identifier sent by the terminal middleware through the first data transmission link and / or the second data transmission link.
[0093] It should be noted that the data transmission message with the control identifier carries the terminal preference information of the data offloading strategy corresponding to the application.
[0094] S704: Extract the data offload policy terminal preference information corresponding to the application from the data transmission message with the control identifier.
[0095] It should be noted that the data offload policy terminal preference information represents the terminal's preference for allocating application data when it is transmitted across the first and second data transmission links. Upon receiving a data transmission message with a control identifier, the data aggregation node recognizes that the message transmission contains control signaling. The data transmission message with the control identifier is parsed to obtain the data offload policy terminal preference information corresponding to the application.
[0096] S706 , processing the data diversion policy information corresponding to the application according to the data diversion policy terminal preference information to obtain processed data diversion policy information.
[0097] It should be noted that the data diversion strategy information is used to represent the data distribution information of the application data when it is transmitted on the first data transmission link and the second data transmission link, and may include: load balancing, master-slave mode, minimum delay mode and backup mode and other diversion strategies.
[0098] S708: Send the processed data diversion policy information to the terminal middleware.
[0099] It should be noted that after receiving the data diversion policy information acquisition instruction from the terminal middleware, the data aggregation node generally sends the processed data diversion policy information to the terminal middleware and stores the processed data diversion policy information locally on the data aggregation node for subsequent use.
[0100] It should be noted that the above-mentioned application may be one or more applications, and the application server corresponding to the application and the data aggregation node sign a data offload transmission agreement in advance.
[0101] In some embodiments of the present disclosure, when S706 is implemented, the data aggregation node needs to call the data diversion policy information corresponding to the application from its local location. The data diversion policy information corresponding to the called application is the data diversion policy information corresponding to the latest application stored locally by the data aggregation node before this update. It can be the data diversion policy information corresponding to the data diversion transmission agreement signed between the data aggregation node and the application server, or it can be the data diversion policy information that has been updated after multiple processing.
[0102] It should be noted that when the data aggregation node processes the data diversion policy information corresponding to the application according to the data diversion policy terminal preference information, it will update or not update it according to the actual situation or pre-set requirements, and this disclosure does not make specific restrictions here. For example, the data aggregation node determines whether the data diversion policy terminal preference information conflicts with the original data diversion policy information corresponding to the application. If there is a conflict, the data diversion policy information corresponding to the application is not modified, and the processed data diversion policy information corresponding to the application is still the data diversion policy information corresponding to the original application; the data aggregation node can also fully accept the data diversion policy terminal preference information and update all the data diversion policy terminal preference information to the data diversion policy information corresponding to the application; the data aggregation node can also accept part of the data diversion policy terminal preference information according to the actual communication network working conditions and update the accepted part to the data diversion policy information corresponding to the application.
[0103] In some embodiments of the present disclosure, the data diversion transmission method provided, based on Figure 7, further includes: receiving the data transmission message sent by the terminal middleware through the first data transmission link and / or the second data transmission link; based on the data transmission message, the application data is packaged and reordered to obtain the first forwarding application data corresponding to the application; the first forwarding application data is forwarded to the application server corresponding to the application. Specifically, the control identifier is carried on the transmission message containing the control field, and the data aggregation node identifies the packaged data transmission message and the data transmission message containing the control field by whether the message carries the control identifier, and then separates the data transmission message after the application data is packaged. Through the above steps, the application data sent by the terminal middleware is transmitted to the corresponding application server, thereby realizing data transmission between the terminal and the application server.
[0104] In some embodiments of the present disclosure, the provided data diversion transmission method, based on FIG7 , further includes: receiving second forwarding application data sent by the application server corresponding to the application; and sending the second forwarding application data to the terminal middleware via the first data transmission link and / or the second data transmission link based on the processed data diversion policy information. By diverting and transmitting the data sent by the application server corresponding to the application to the terminal middleware via two data transmission links or one of the data links according to the processed data diversion policy information, if the data aggregation node adopts the terminal's suggestion and updates the data diversion policy information, data transmission between the application server and the terminal can be achieved in a manner that better meets the terminal's data diversion transmission needs.
[0105] To better illustrate the data offload transmission method provided by the embodiments of the present disclosure, a specific example is provided for further explanation. As shown in FIG8 , a data offload transmission solution between a multi-access terminal and various application providers (application servers) is designed based on the data offload transmission method provided by the embodiments of the present disclosure.
[0106] This solution includes a multi-access terminal with built-in terminal middleware. This terminal connects to a 4G / 5G base station via a cellular transmission link, enabling communication with a data aggregation node through network elements in the 4G / 5G core network. This terminal also connects to the data aggregation node via a Wi-Fi transmission link, via a home gateway and ONU / OLT. The data aggregation node also provides network connectivity to various application providers.
[0107] After the terminal is turned on, it initiates a registration request through the address of the data aggregation node built into the terminal, such as an IP (Internet Protocol) address or a DNS (Domain Name System) address, and carries the terminal's identity information in the registration request.
[0108] After receiving the registration request carrying identity information sent by the terminal, the data aggregation node queries one or more applications on the terminal included in the data diversion transmission whitelist, and the data diversion policy information corresponding to different applications, and sends it to the terminal in the form of a data diversion policy table.
[0109] After receiving the data diversion policy table, the terminal configures the data diversion policy on the terminal and makes it effective. The terminal middleware takes over the application traffic through the VPN and monitors the cellular traffic and Wi-Fi traffic of the applications included in the data diversion transmission whitelist.
[0110] When the terminal middleware detects that an application included in the data diversion transmission whitelist is started and traffic is initiated, the terminal middleware takes over this part of the traffic through a virtual network card, and repackages the application data using the message format of MPTCP / MPQUIC and other diversion technologies according to the data diversion strategy corresponding to the application configured on the terminal, and distributes the application data on two links or on one link according to the diversion strategy.
[0111] At the same time, check whether the terminal generates data diversion policy terminal preference information. If so, for MPTCP, reuse the subtype reserved bit of the MPTCP message and encapsulate the content of the data diversion policy terminal preference information into a data transmission message with a control identifier and a control field. For MPQUIC, Bit7 in the Public Flags can be used to indicate that this message is a control signaling. Set the value of this field to 1 and encapsulate the content of the data diversion policy terminal preference information into a data transmission message with a control identifier and a control field. The data transmission message with the control identifier after packaging is sent together with the data transmission message corresponding to the encapsulated application data through one or two links to the data aggregation node indicated by the IP address or DSN address.
[0112] Among them, the terminal preference information of the data diversion strategy generated by the terminal may come from the preference configuration actively initiated by the user in the user interface, such as the user hopes that the diversion mode of a certain game application is the minimum delay; it may also come from the terminal's spontaneous setting, such as the terminal detects that the transmission quality of the Wi-Fi transmission link is very poor, and hopes to only use the cellular transmission link; or the terminal battery is low and hopes to close one of the data transmission links.
[0113] The data aggregation node separates the application data transmitted from two links or one link, reorders and packages it, and forwards it to the application server.
[0114] If the data aggregation node finds an MPTCP packet with the subtype field value of 0x9, or an MPQUIC packet with the value of Bit7 in the Public Flags field set to 1, it removes the packet header and extracts the data offload policy terminal preference information.
[0115] The data aggregation node decides whether to accept or partially accept the auxiliary diversion suggestions reported by the terminal represented by the data diversion policy terminal preference information based on its locally stored application and diversion policy correspondence table and built-in logical judgment rules. If accepted, the node sends the updated data diversion policy information to the terminal. The application and diversion policy correspondence table stores multiple application identifiers, the data diversion policy information corresponding to each application, and the correspondence between the two. When sending the updated data diversion policy information to the terminal, the locally stored application and diversion policy correspondence table is updated.
[0116] Typically, the data aggregation node sends a notification to the terminal regarding an update to the data diversion policy information. Upon receiving this notification, the terminal middleware proactively requests the updated data diversion policy information from the data aggregation node to distribute the updated data diversion policy information. Furthermore, if the information has not been updated, a notification message may be sent to the terminal to maintain the data diversion policy information unchanged, so that the terminal is aware that the uploaded preference information has been accepted.
[0117] During the specific implementation process, due to various factors such as communication data loss or failure, the terminal middleware may not receive the update prompt of the data diversion policy information or the prompt information to maintain the data diversion policy information unchanged. In this case, a timer can be set on the terminal middleware to monitor the upload of the data diversion policy terminal preference information. Once the timer times out, the data transmission message with the control identifier is resent and monitoring is continued. In the specific implementation, in order to avoid the harm caused by frequent uploads, a limit on the number of resends can be set, for example, not more than 3 times; the timer duration for each resending task can also be set. For example, as the number of times increases, the set duration of the timer can gradually increase. This increase can be a uniform increase in duration, for example, 5 minutes each time; or it can be an uneven increase in duration, for example, 5 minutes for the first time and 10 minutes for the second time.
[0118] Based on the above specific examples, it can be seen that, without the need to modify the application server and the core network in the transmission link, middleware is built into the terminal, a data aggregation node is set up, and dynamic diversion strategy distribution and configuration based on application granularity are introduced. The terminal can add data diversion strategy terminal preference information to the uploaded data transmission message, that is, based on the user's preference settings, the terminal's special operating status and needs, a possible better diversion strategy is proposed to the data aggregation node, such as load balancing ratio, etc., and the data aggregation node makes the final decision. On the basis of minor changes to the existing data diversion transmission solution, a flexible, reliable, dynamic and high-performance data diversion transmission solution is realized.
[0119] It should be noted that the acquisition, storage, use, and processing of data in the disclosed technical solution are in compliance with the relevant provisions of national laws and regulations.
[0120] Based on the same inventive concept, the present disclosure also provides a data offload transmission device, as described in the following embodiments. Since the principle of solving the problem in the device embodiment is similar to that in the above method embodiment, the implementation of the device embodiment can refer to the implementation of the above method embodiment, and the repeated parts will not be repeated.
[0121] FIG9 shows a schematic diagram of a data offload transmission device applied to a terminal middleware in an embodiment of the present disclosure. As shown in FIG9 , the device includes:
[0122] A data receiving module 901 is configured to receive application data corresponding to an application;
[0123] A first information acquisition module 902 is configured to acquire data offload strategy information corresponding to an application from a data aggregation node; wherein the data offload strategy information is configured to represent data allocation information when application data of the application is transmitted on the first data transmission link and the second data transmission link;
[0124] The second information acquisition module 903 is configured to monitor whether the terminal generates data diversion policy terminal preference information corresponding to the application, and if the monitoring terminal generates data diversion policy terminal preference information corresponding to the application, obtain the data diversion policy terminal preference information corresponding to the application; wherein the data diversion policy terminal preference information is used to represent the terminal's preference information for data allocation when the application data of the application is transmitted on the first data transmission link and the second data transmission link;
[0125] The transmission message generation module 904 is configured to generate a data transmission message according to the application data and generate a data transmission message with a control identifier according to the terminal preference information of the data offload strategy; and
[0126] The first data diversion transmission module 905 is configured to send the data transmission message and the data transmission message with the control identifier to the data aggregation node through the first data transmission link and / or the second data transmission link based on the data diversion policy information, so that the data aggregation node processes the data diversion policy information based on the data diversion policy terminal preference information to obtain the processed data diversion policy terminal preference information.
[0127] It should be noted that the data receiving module 901, the first information acquisition module 902, the second information acquisition module 903, the transmission message generation module 904, and the first data offload transmission module 905 described above correspond to S202 to S210 in the method embodiment. The examples and application scenarios implemented by these modules and corresponding steps are the same, but are not limited to the contents disclosed in the method embodiment described above. It should be noted that the above modules, as part of the apparatus, can be executed in a computer system, such as a set of computer-executable instructions.
[0128] In some embodiments of the present disclosure, the data receiving module 901 is specifically configured to: monitor traffic initiation from the terminal; when monitoring traffic initiation from the application, take over the application traffic through the virtual private network to obtain application data corresponding to the application.
[0129] The second information acquisition module 903 is specifically configured as follows: if the monitoring terminal generates the data diversion strategy terminal preference information corresponding to the application, determine the terminal preference information acquisition interval duration; wherein, the terminal preference information acquisition interval duration is used to represent the time interval from the last time the data diversion strategy terminal preference information corresponding to the application was acquired; if the terminal preference information acquisition interval duration exceeds a preset threshold, acquire the data diversion strategy terminal preference information corresponding to the application.
[0130] In some embodiments of the present disclosure, the transmission message generation module 904 is specifically configured to: package the application data in a diversion technology message format to obtain a packaged data transmission message; generate a data transmission message with a control identifier and a control field according to the data diversion strategy terminal preference information; wherein the control field is a field in the data transmission message that carries a control instruction.
[0131] In some embodiments of the present disclosure, an application server corresponding to an application and a data aggregation node pre-sign a data offload transmission agreement.
[0132] Based on the same inventive concept, the present disclosure also provides a data offload transmission device, as described in the following embodiments. Since the principle of solving the problem in the device embodiment is similar to that in the above method embodiment, the implementation of the device embodiment can refer to the implementation of the above method embodiment, and the repeated parts will not be repeated.
[0133] FIG10 shows a schematic diagram of a data offload transmission device applied to a data aggregation node in an embodiment of the present disclosure. As shown in FIG10 , the device includes:
[0134] The transmission message receiving module 1001 is configured to receive a data transmission message with a control identifier sent by the terminal middleware via the first data transmission link and / or the second data transmission link; wherein the data transmission message with the control identifier carries the terminal preference information of the data offloading policy corresponding to the application;
[0135] The information extraction module 1002 is configured to extract data offload policy terminal preference information corresponding to the application from the data transmission message with the control identifier; wherein the data offload policy terminal preference information is used to represent the terminal's preference information for data allocation when the application data of the application is transmitted on the first data transmission link and the second data transmission link;
[0136] The data diversion policy information processing module 1003 is configured to process the data diversion policy information corresponding to the application according to the data diversion policy terminal preference information to obtain processed data diversion policy information; wherein the data diversion policy information is used to represent data allocation information when the application data of the application is transmitted on the first data transmission link and the second data transmission link; and
[0137] The data diversion policy information sending module 1004 is configured to send the processed data diversion policy information to the terminal middleware.
[0138] Among them, the application server corresponding to the application and the data aggregation node sign a data diversion transmission agreement in advance.
[0139] It should be noted that the transmission message receiving module 1001, information extraction module 1002, data diversion policy information processing module 1003, and data diversion policy information delivery module 1004 described above correspond to S702 to S708 in the method embodiment. The examples and application scenarios implemented by these modules and corresponding steps are the same, but are not limited to the contents disclosed in the method embodiment described above. It should be noted that the above modules, as part of the apparatus, can be executed in a computer system, such as a set of computer-executable instructions.
[0140] In some embodiments of the present disclosure, the data diversion transmission device provided, based on Figure 10, also includes: a first data forwarding module, configured to receive data transmission messages sent by the terminal middleware through the first data transmission link and / or the second data transmission link; based on the data transmission message, the application data is packaged and reordered to obtain first forwarding application data corresponding to the application; and the first forwarding application data is forwarded to the application server corresponding to the application.
[0141] In some embodiments of the present disclosure, the data diversion transmission device provided, based on Figure 10, also includes: a second data forwarding module, configured to receive second forwarding application data sent by the application server corresponding to the application; based on the processed data diversion policy information, the second forwarding application data is sent to the terminal middleware through the first data transmission link and / or the second data transmission link.
[0142] Those skilled in the art will appreciate that various aspects of the present disclosure may be implemented as systems, methods, or program products. Therefore, various aspects of the present disclosure may be implemented in the following forms: a complete hardware implementation, a complete software implementation (including firmware, microcode, etc.), or a combination of hardware and software implementations, which may be collectively referred to herein as "circuits," "modules," or "systems."
[0143] The electronic device 1100 according to this embodiment of the present disclosure is described below with reference to Figure 11. The electronic device 1100 shown in Figure 11 is merely an example and should not limit the functions and scope of use of the embodiments of the present disclosure.
[0144] As shown in Figure 11, electronic device 1100 is implemented as a general-purpose computing device. Components of electronic device 1100 may include, but are not limited to, the aforementioned at least one processing unit 1110, the aforementioned at least one storage unit 1120, and a bus 1130 connecting various system components (including storage unit 1120 and processing unit 1110).
[0145] The storage unit stores program code, which can be executed by the processing unit 1110, so that the processing unit 1110 performs the steps described in the "Exemplary Method" section above according to various exemplary embodiments of the present disclosure. For example, the processing unit 1110 can perform the following steps of the above method embodiment:
[0146] Receive application data corresponding to the application;
[0147] Obtaining data offload strategy information corresponding to the application from the data aggregation node; wherein the data offload strategy information is used to represent data allocation information when the application data of the application is transmitted on the first data transmission link and the second data transmission link;
[0148] Monitoring whether the terminal generates data diversion policy terminal preference information corresponding to the application, and if the monitoring terminal generates data diversion policy terminal preference information corresponding to the application, obtaining the data diversion policy terminal preference information corresponding to the application; wherein the data diversion policy terminal preference information is used to represent the terminal's preference information for data allocation when application data of the application is transmitted on the first data transmission link and the second data transmission link;
[0149] Generate data transmission messages based on application data, and generate data transmission messages with control identifiers based on terminal preference information of data diversion strategy;
[0150] Based on the data diversion policy information, the data transmission message and the data transmission message with the control identifier are sent to the data aggregation node through the first data transmission link and / or the second data transmission link, so that the data aggregation node processes the data diversion policy information based on the data diversion policy terminal preference information to obtain the processed data diversion policy information.
[0151] Or, receiving a data transmission message with a control identifier sent by the terminal middleware through the first data transmission link and / or the second data transmission link; wherein the data transmission message with the control identifier carries the terminal preference information of the data offloading strategy corresponding to the application;
[0152] Extracting data offload policy terminal preference information corresponding to the application from the data transmission message with the control identifier; wherein the data offload policy terminal preference information is used to represent the terminal's preference information for data allocation when application data of the application is transmitted on the first data transmission link and the second data transmission link;
[0153] Processing the data diversion policy information according to the data diversion policy terminal preference information to obtain processed data diversion policy information; wherein the data diversion policy information is used to represent data allocation information when the application data of the application is transmitted on the first data transmission link and the second data transmission link;
[0154] The processed data diversion strategy information is sent to the terminal middleware.
[0155] The storage unit 1120 may include a readable medium in the form of a volatile storage unit, such as a random access memory unit (RAM) 11201 and / or a cache memory unit 11202 , and may further include a read-only memory unit (ROM) 11203 .
[0156] The storage unit 1120 may also include a program / utility 11204 having a set (at least one) of program modules 11205, such program modules 11205 including but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment.
[0157] The bus 1130 may represent one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.
[0158] Electronic device 1100 may also communicate with one or more external devices 1140 (e.g., a keyboard, pointing device, Bluetooth device, etc.), one or more devices that enable a user to interact with electronic device 1100, and / or any device that enables electronic device 1100 to communicate with one or more other computing devices (e.g., a router, modem, etc.). Such communication may occur via input / output (I / O) interface 1150. Furthermore, electronic device 1100 may also communicate with one or more networks (e.g., a local area network (LAN), a wide area network (WAN), and / or a public network such as the Internet) via network adapter 1160. As shown, network adapter 1160 communicates with other modules of electronic device 1100 via bus 1130. It should be understood that, although not shown in the figure, other hardware and / or software modules may be used in conjunction with electronic device 1100, including but not limited to microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0159] Through the description of the above embodiments, it is easy for those skilled in the art to understand that the example embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solution according to the embodiments of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which can be a personal computer, a server, a terminal device, or a network device, etc.) to execute the method according to the embodiments of the present disclosure.
[0160] In particular, according to an embodiment of the present disclosure, the process described above with reference to the flowchart may be implemented as a computer program product, which includes: a computer program, which implements the above-mentioned data offload transmission method when executed by a processor.
[0161] In exemplary embodiments of the present disclosure, a computer-readable storage medium is also provided, which may be a readable signal medium or a readable storage medium. In some possible implementations, various aspects of the present disclosure may also be implemented in the form of a program product, which includes program code. When the program product is executed on a terminal device, the program code is used to cause the terminal device to execute the steps according to various exemplary embodiments of the present disclosure described in the "Exemplary Methods" section above.
[0162] More specific examples of computer-readable storage media in the present disclosure may include, but are not limited to, an electrical connection having one or more conductors, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), optical fibers, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0163] In the present disclosure, a computer-readable storage medium may include a data signal propagated in baseband or as part of a carrier wave, which carries readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium that can transmit, propagate, or transfer a program for use by or in conjunction with an instruction execution system, apparatus, or device.
[0164] In some embodiments, the program code contained on the computer-readable storage medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
[0165] In a specific implementation, the program code for performing the operations of the present disclosure may be written in any combination of one or more programming languages, including object-oriented programming languages such as Java, C++, and the like, as well as conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as a standalone software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server. In the case of a remote computing device, the remote computing device may be connected to the user computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computing device (e.g., via the Internet using an Internet service provider).
[0166] It should be noted that although several modules or units of the device for action execution are mentioned in the detailed description above, this division is not mandatory. In fact, according to the embodiments of the present disclosure, the features and functions of two or more modules or units described above can be concretized in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided into multiple modules or units to be concretized.
[0167] Furthermore, although the steps of the method of the present disclosure are described in a particular order in the accompanying drawings, this does not require or imply that the steps must be performed in this particular order, or that all steps shown must be performed to achieve the desired results. Additionally or alternatively, some steps may be omitted, multiple steps may be combined into one step, and / or one step may be decomposed into multiple steps.
[0168] Through the description of the above embodiments, it is easy for those skilled in the art to understand that the example embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solution according to the embodiments of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which can be a personal computer, a server, a mobile terminal, or a network device, etc.) to execute the method according to the embodiments of the present disclosure.
[0169] Other embodiments of the present disclosure will readily occur to those skilled in the art after considering the specification and practicing the invention disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary techniques in the art not disclosed herein. The description and examples are to be considered as exemplary only, with the true scope and spirit of the present disclosure being indicated by the appended claims.
Claims
1. A data splitting transmission method, comprising: Receive application data corresponding to the application; Obtaining data diversion strategy information corresponding to the application from the data aggregation node; The data offloading strategy information is used to represent data allocation information when the application data of the application is transmitted on the first data transmission link and the second data transmission link; monitoring whether the terminal generates the data diversion strategy terminal preference information corresponding to the application, and if the monitoring terminal generates the data diversion strategy terminal preference information corresponding to the application, obtaining the data diversion strategy terminal preference information corresponding to the application; The data offload strategy terminal preference information is used to represent the preference information of the terminal for data allocation when the application data of the application is transmitted on the first data transmission link and the second data transmission link; Generate a data transmission message according to the application data, and generate a data transmission message with a control identifier according to the terminal preference information of the data offload strategy; Based on the data diversion policy information, the data transmission message and the data transmission message with a control identifier are sent to the data aggregation node through the first data transmission link and / or the second data transmission link, so that the data aggregation node processes the data diversion policy information based on the data diversion policy terminal preference information to obtain the processed data diversion policy information.
2. The data offload transmission method according to claim 1, wherein: Generating a data transmission message according to the application data, and generating a data transmission message with a control identifier according to the data offloading strategy terminal preference information, including: Packing the application data in a diversion technology message format to obtain a packaged data transmission message; According to the terminal preference information of the data offload strategy, a data transmission message with a control identifier and including a control field is generated; the control field is a field in the data transmission message that carries a control instruction.
3. The data offload transmission method according to claim 1, wherein: The application server corresponding to the application and the data aggregation node sign a data splitting transmission agreement in advance.
4. The data offload transmission method according to claim 1, wherein: Receive application data corresponding to the application, including: Monitoring traffic initiation of the terminal; When it is monitored that the application has traffic initiated, the traffic of the application is taken over through the virtual private network to obtain application data corresponding to the application.
5. The data offload transmission method according to claim 1, wherein: If the monitoring terminal generates the data diversion strategy terminal preference information corresponding to the application, obtaining the data diversion strategy terminal preference information corresponding to the application includes: If the monitoring terminal generates the data diversion strategy terminal preference information corresponding to the application, determine the terminal preference information acquisition interval duration; wherein the terminal preference information acquisition interval duration is used to represent the time interval from the last time the data diversion strategy terminal preference information corresponding to the application was acquired; If the duration of the interval for obtaining the terminal preference information exceeds a preset threshold, the terminal preference information of the data diversion strategy corresponding to the application is obtained.
6. A data offload transmission method, comprising: Receiving a data transmission message with a control identifier sent by the terminal middleware through the first data transmission link and / or the second data transmission link; The data transmission message with the control identifier carries the terminal preference information of the data diversion strategy corresponding to the application; Extracting the data diversion strategy terminal preference information corresponding to the application from the data transmission message with the control identifier; wherein the data diversion strategy terminal preference information is used to characterize the terminal's preference for the application data of the application preference information for allocating data during transmission on the first data transmission link and the second data transmission link; According to the data diversion strategy terminal preference information, the data diversion strategy information corresponding to the application is processed to obtain the processed data diversion strategy information; wherein the data diversion strategy information is used to represent the data allocation information when the application data of the application is transmitted on the first data transmission link and the second data transmission link; The processed data diversion strategy information is sent to the terminal middleware.
7. The data offload transmission method according to claim 6, wherein: Also includes: Receiving the data transmission message sent by the terminal middleware through the first data transmission link and / or the second data transmission link; Based on the data transmission message, the application data is packaged and reordered to obtain first forwarding application data corresponding to the application; The first forwarding application data is forwarded to an application server corresponding to the application.
8. The data offload transmission method according to claim 6, wherein: The application server corresponding to the application and the data aggregation node sign a data splitting transmission agreement in advance.
9. The data offload transmission method according to claim 6, wherein: Also includes: Receiving second forwarding application data sent by an application server corresponding to the application; Based on the processed data diversion strategy information, the second forwarding application data is sent to the terminal middleware through the first data transmission link and / or the second data transmission link.
10. A data split transmission device, comprising: A data receiving module, configured to receive application data corresponding to an application; A first information acquisition module is configured to acquire data diversion strategy information corresponding to the application from a data aggregation node; The data offloading strategy information is set to represent data allocation information when the application data of the application is transmitted on the first data transmission link and the second data transmission link; A second information acquisition module is configured to monitor whether the terminal generates the data diversion strategy terminal preference information corresponding to the application, and if the monitoring terminal generates the data diversion strategy terminal preference information corresponding to the application, obtain the data diversion strategy terminal preference information corresponding to the application; The data offload strategy terminal preference information is used to represent the preference information of the terminal for data allocation when the application data of the application is transmitted on the first data transmission link and the second data transmission link; A transmission message generation module, configured to generate a data transmission message according to the application data, and generate a data transmission message with a control identifier according to the data diversion strategy terminal preference information; and The first data diversion transmission module is configured to send the data transmission message and the data transmission message with a control identifier to the data aggregation node through the first data transmission link and / or the second data transmission link based on the data diversion strategy information, so that the data aggregation node processes the data diversion strategy information based on the data diversion strategy terminal preference information to obtain the processed data diversion strategy information.
11. A data split transmission device, comprising: A transmission message receiving module, configured to receive a data transmission message with a control identifier sent by the terminal middleware via the first data transmission link and / or the second data transmission link; The data transmission message with the control identifier carries the terminal preference information of the data diversion strategy corresponding to the application; An information extraction module is configured to extract data diversion strategy terminal preference information corresponding to the application from a data transmission message with a control identifier; wherein the data diversion strategy terminal preference information is used to represent the preference information of the terminal for data allocation when the application data of the application is transmitted on the first data transmission link and the second data transmission link; a data diversion strategy information processing module, configured to process the data diversion strategy information corresponding to the application according to the data diversion strategy terminal preference information to obtain processed data diversion strategy information; wherein the data diversion strategy information is used to represent data allocation information when the application data of the application is transmitted on the first data transmission link and the second data transmission link; and The data diversion strategy information sending module is configured to send the processed data diversion strategy information to the terminal middleware.
12. An electronic device comprising: processor; as well as A memory, configured to store executable instructions of the processor; The processor is configured to execute the data offload transmission method according to any one of claims 1 to 9 by executing the executable instructions.
13. A computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the data splitting transmission method according to any one of claims 1 to 9.
14. A computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the data offloading transmission method according to any one of claims 1 to 9 is implemented.