Service scheduling method, device and system

By identifying the target service and sending a startup message to the second device, triggering it to schedule the target service with a specific priority according to a specific scheduling cycle, the problem of low user experience when the network environment is not good is solved, and the acceleration of the target service and the improvement of the user experience is achieved.

CN120018311APending Publication Date: 2025-05-16HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311521682.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-11-14
Publication Date
2025-05-16

AI Technical Summary

Technical Problem

When the network environment is not good, the user's experience of target services (such as online games, online courses, or real-time services such as online videos) is still low.

Method used

By identifying the target service and sending a startup message to the second device, the second device is triggered to schedule the packets of the target service at a specific priority according to a specific scheduling cycle, thereby achieving acceleration of the target service.

Benefits of technology

When the network environment is not good, by accelerating the message processing of the target service, users' experience with the target service will be significantly improved, delayed and user satisfaction will be improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120018311A_ABST
    Figure CN120018311A_ABST
Patent Text Reader

Abstract

The invention discloses a service scheduling method, device and system. A first device receives the flow of a first service; the first device determines that the first service is a target service according to the flow of the first service; the first equipment sends a starting message to the second equipment; the second equipment responds to the starting message and schedules the message of the first service according to the specific scheduling period and the specific priority, and the experience of a user on the target service can be improved when the network environment is poor.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of communications, and in particular to a service scheduling method, device and system. Background Art

[0002] Users are particularly concerned and sensitive to target services (such as online games, online courses, or online videos, etc.), so identifying target services and improving user experience for target services have become the key competitiveness of CPE (Customer Premise Equipment) or mobile routers. In order to improve the processing performance of CPE or mobile routers for target service messages, the services on CPE or mobile routers have been optimized. However, when the network environment is not good, the user experience of the target service is still low. Summary of the invention

[0003] In view of this, the embodiments of the present invention provide a service scheduling method, device and system, which can improve the user experience of the target service when the network environment is not good.

[0004] A first aspect provides a service scheduling method, which is applied to a first device, and the method includes:

[0005] Receiving at least one message of a first service;

[0006] Determining, according to at least one message of the first service, that the first service is a target service;

[0007] A startup message is sent to the second device, and the startup message is used to trigger the second device to schedule the message of the first service at a specific priority according to a specific scheduling period. It should be understood that the specific scheduling period involved in this article is shorter than the ordinary scheduling period. For example, the ordinary scheduling period occupies 40 slots and the specific scheduling period occupies 2 slots. The description of the specific scheduling period is to distinguish it from the ordinary scheduling period, and other names or descriptions may also be used, such as the compensation scheduling period.

[0008] It should be understood that the specific priority mentioned in this article is higher than the priority of ordinary scheduling and the priority of pre-scheduling. The description of the specific priority is to distinguish the priority of ordinary scheduling and the priority of pre-scheduling, and other names or descriptions may also be used, such as compensation priority.

[0009] When the first device of the embodiment of the present invention determines that the first service is the target service, it determines that the service needs to be accelerated, and then sends a startup message to the second device. The startup message is used to trigger the second device to start scheduling the message of the first service according to a specific scheduling period and a specific priority, thereby achieving acceleration of the target service and improving the user experience of the target service when the network environment is not good.

[0010] In combination with the first aspect, in some implementations of the first aspect, before determining that the first service is a target service according to at least one message of the first service, the method further includes:

[0011] Sending a second message to the second device, where the second message includes first information indicating that the first device has a first capability;

[0012] A third message sent by the second device is received, where the third message includes second information indicating whether the second device supports the first capability.

[0013] Exemplarily, the first capability is end-tube coordination capability.

[0014] In the embodiment of the present invention, the end-pipe coordination capability refers to extending parameters based on the 3rd Generation Partnership Project (3GPP) protocol to enable the first device to notify the second device to start accelerating the target service; the second device accelerates the target service after receiving the start message; when the target service connection is idle, that is, the first device cannot receive the message of the target service, the first device actively initiates the second device to stop accelerating the target service. In the embodiment of the present invention, by extending the 3GPP protocol, the first device and the second device negotiate the end-pipe coordination capability. After the first device identifies the target service, it can start or stop the end-pipe coordination capability of the second device in a timely manner, thereby improving the service message processing speed and user experience.

[0015] In combination with the first aspect, in some implementations of the first aspect, before sending the startup message to the second device, the method further includes:

[0016] determining, according to the second information included in the third message, whether the second device supports the first capability;

[0017] If it is determined that the second device supports the first capability, sending the startup message to the second device;

[0018] If it is determined that the second device does not support the first capability, the startup message is not sent to the second device.

[0019] Exemplarily, if the second device does not support the first capability, the second device sends a third message, where the third message includes second information indicating that the second device does not support the first capability.

[0020] Exemplarily, if the second device supports the first capability, the second device sends a third message, where the third message includes second information indicating that the second device supports the first capability.

[0021] In combination with the first aspect, in some implementations of the first aspect, after sending the startup message to the second device, the method further includes:

[0022] When no message of the first service is received, a stop message is sent to the second device, the stop message is used to trigger the second device to stop scheduling the message of the first service at a specific priority according to the specific scheduling period. In this embodiment of the present invention, the second device is notified to stop accelerating the target service through the stop message.

[0023] In conjunction with the first aspect, in some implementations of the first aspect, the target service includes but is not limited to online games, online courses or online videos, etc. It should be understood that the target service may also include other services, and the user may also set which services are the target services.

[0024] In combination with the first aspect, in some implementations of the first aspect, before sending the startup message to the second device, the method further includes:

[0025] determining a priority of the first service according to at least one message of the first service;

[0026] At least one message of the first service is cached to a first queue according to the priority of the first service. The first queue is an accelerated sending queue. The first device identifies the target service and distinguishes the priority of the message of the target service, establishes multiple accelerated sending queues, and sends messages of different priorities to different accelerated sending queues, so that different accelerated sending queues have different priorities, and the first device preferentially sends data of the accelerated sending queue with a high priority.

[0027] In combination with the first aspect, in some implementations of the first aspect, the method further includes:

[0028] receiving at least one message of a second service;

[0029] determining, according to at least one message of the second service, that the second service is a non-target service;

[0030] determining a priority of the second service according to at least one message of the second service;

[0031] At least one message of the second service is cached to the second queue according to the priority of the second service, and the priority of the first queue is higher than the priority of the second queue. Non-target services are services with low real-time requirements. The second queue is a normal sending queue. After the first device receives and identifies the messages of the non-target service, it is necessary to reorder the messages of the service and maintain a high-priority accelerated sending queue according to the priority. Therefore, the messages of the non-target service are cached to the normal sending queue to ensure that the data of the accelerated sending queue is sent first.

[0032] The first queue is an accelerated sending queue, which caches messages of target services; the second queue is a normal sending queue, which caches messages of non-target services; the priority of target services is higher than that of non-target services. To ensure that messages of target services are sent first, the priority of the first queue is higher than that of the second queue.

[0033] In combination with the first aspect, in some implementations of the first aspect, the method further includes: preferentially sending messages in the high priority queue to the second device. To ensure that messages of the target service are sent preferentially, messages in the high priority queue are preferentially sent to the second device.

[0034] A second aspect provides a service scheduling method, which is applied to a second device, and the method includes:

[0035] Receiving a startup message sent by the first device;

[0036] In response to the start message, a message of a first service is scheduled according to a specific scheduling period and with a specific priority, where the first service is a target service.

[0037] In combination with the second aspect, in some implementations of the second aspect, the scheduling of the message of the first service at a specific priority according to a specific scheduling period in response to the start message includes:

[0038] In response to the start message, cache at least one message of the first service in an acceleration queue corresponding to a service type of the first service;

[0039] The first service message in the acceleration queue is scheduled with a specific priority according to the specific scheduling period. The second device determines the target service based on the startup message, and establishes multiple types of acceleration queues, assigning different target services to different acceleration queues.

[0040] In combination with the second aspect, in some implementations of the second aspect, the priority of the acceleration queue is higher than the pre-scheduling queue and the ordinary data transmission queue.

[0041] In order to illustrate the beneficial effects of the embodiments of the present invention, it is first necessary to understand pre-scheduling, and the specific explanation of pre-scheduling is as follows:

[0042] Pre-scheduling: Regardless of whether the User Equipment (UE) sends a Send Routing Information (SRI) to the base station, the base station will actively schedule the UE at regular intervals to reduce the time from the UE sending the SRI to obtaining the uplink scheduling authorization.

[0043] Without pre-scheduling, the UE's SRI can only be sent within a fixed period. If the SRI period is configured as 40s lot, and the SR period adaptation is turned off, in the worst case, if the UE has uplink data to send, it needs to wait for 40s lot before sending. After receiving the SRI, if the resources are sufficient, the base station will issue the UL Grant after 2-3s lot, but if the resources are insufficient, it needs to continue waiting.

[0044] When pre-scheduling is enabled, it takes effect only when there are surplus resources, as pre-scheduling has the lowest priority. Pre-scheduling will basically not take effect in scenarios with moderate load or above. There can only be 2 pre-scheduling users in 1 slot, with a time slot ratio of 8:2. A maximum of 8 users can take effect in a 10ms pre-scheduling cycle. When there are many users, even if pre-scheduling takes effect, it may not work on the device running the target service.

[0045] Therefore, when the wireless base station has no pre-scheduling or only common pre-scheduling for the CPE or mobile router, the target service cannot meet the user's demands when the network is congested.

[0046] When the first device of the embodiment of the present invention identifies a service as a target service, it determines that the target service needs to be accelerated, and then sends the message of the target service that needs to be accelerated to the accelerated sending queue, detects that there are messages to be sent in the accelerated sending queue, and notifies the second device to start the first capability to specifically schedule the messages of the target service according to the type of the accelerated sending queue. Specifically, the second device establishes a separate acceleration queue for the target service, and the priority of the acceleration queue is higher than the priority of ordinary data transmission services. At the same time, the messages of the target service in the acceleration queue are scheduled at a specific priority according to a specific scheduling cycle, and there is no need to wait for the SRI+UL Grant stage under moderate load. In the case of network congestion, the user's delay in using the first device for the target service is reduced by 0 to 10 ms, and the user experience is improved.

[0047] In conjunction with the second aspect, in some implementations of the second aspect, before receiving the startup message sent by the first device, the method further includes:

[0048] receiving a second message sent by the first device, where the second message includes first information indicating that the first device has a first capability;

[0049] A third message is sent to the first device, wherein the third message includes second information indicating whether the second device supports the first capability.

[0050] The third aspect provides a first device, including a processor and a memory, wherein the memory is used to store a program, and when the processor runs the program, the first device executes the method described above.

[0051] A fourth aspect provides a second device, comprising a processor and a memory, wherein the memory is used to store a program, and when the processor runs the program, the second device executes the method as described above.

[0052] A fifth aspect provides a service scheduling system, the system comprising: the first device as in the third aspect and the second device as in the fourth aspect.

[0053] A sixth aspect provides a readable storage medium, wherein the readable storage medium stores a program, and when the program is executed by a device, the device executes the method as described above.

[0054] A seventh aspect provides a program product, which, when executed on a device or at least one processor, enables the device to execute the above method.

[0055] In the technical solutions of the service scheduling method, device and system provided by the embodiments of the present invention, a first device receives at least one message of a first service; the first device determines that the first service is a target service based on at least one message of the first service; the first device sends a startup message to a second device; the second device schedules the message of the first service with a specific priority according to a specific scheduling period based on the startup message, which can improve the user experience of the target service when the network environment is not good. BRIEF DESCRIPTION OF THE DRAWINGS

[0056] Figure 1a A schematic diagram of a service scheduling system provided by an embodiment of the present invention;

[0057] Figure 1b A schematic diagram of the structure of a device provided by an embodiment of the present invention;

[0058] Figure 2 An architecture diagram of a service scheduling system provided by an embodiment of the present invention;

[0059] Figure 3 A signaling interaction diagram of a service scheduling method provided by an embodiment of the present invention;

[0060] Figure 4 for Figure 3 Specific signaling interaction diagram of the service scheduling method;

[0061] Figure 5 This is a schematic diagram of a first device sending a target service message in an embodiment of the present invention;

[0062] Figure 6 This is a schematic diagram of a second device maintaining an acceleration queue in an embodiment of the present invention;

[0063] Figure 7 A flow chart of a service scheduling method provided by an embodiment of the present invention;

[0064] Figure 8 A flowchart of another service scheduling method provided by an embodiment of the present invention;

[0065] Fig. 9 A schematic diagram of the structure of a first device provided in an embodiment of the present invention;

[0066] Fig.10 A schematic structural diagram of a second device provided in an embodiment of the present invention. DETAILED DESCRIPTION

[0067] In order to better understand the technical solution of the present invention, the embodiments of the present invention are described in detail below with reference to the accompanying drawings.

[0068] It should be clear that the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0069] The terms used in the embodiments of the present invention are only for the purpose of describing specific embodiments, and are not intended to limit the present invention. The singular forms "a", "said" and "the" used in the embodiments of the present invention and the appended claims are also intended to include plural forms, unless the context clearly indicates other meanings.

[0070] It should be understood that the term "and / or" used in this article is only a description of the association relationship of associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this article generally indicates that the associated objects before and after are in an "or" relationship.

[0071] Figure 1a Schematic diagram of a service scheduling system provided by an embodiment of the present invention. Figure 1a As shown, the service scheduling system includes a first device, a second device and a third device. The first device and the second device are connected by wire or wirelessly. The first device and the third device are connected by wire or wirelessly.

[0072] Exemplarily, the first device is a CPE or a mobile router, etc. It should be understood that the first device may also be a mobile phone, a tablet, a portable computer, a wearable device, etc.

[0073] Exemplarily, the second device is a base station.

[0074] Exemplarily, the third device may be a mobile phone, a tablet, a portable computer, a wearable device, etc.

[0075] Figure 1a In the service scheduling system shown, the first device, which provides network access capability to the third device, accesses the network and is connected to the second device through a communication chip; the first device identifies the target service from the third device, and then negotiates with the second device to schedule the message of the target service with a specific priority according to a specific scheduling cycle, so as to achieve the effect of improving the target service experience when the cell network is congested.

[0076] Figure 1b A schematic structural diagram of the device 100 is shown.

[0077] The device 100 may include one or more processors and one or more memories. For example, the device 100 includes a processor and a memory. Figure 1b As shown, device 100 includes a processor 110 and a memory 120 .

[0078] It is to be understood that the structure illustrated in the embodiment of the present invention does not constitute a specific limitation on the device 100. In other embodiments of the present application, the device 100 may include more or fewer components than shown in the figure, or combine some components, or split some components, or arrange the components differently. The components shown in the figure may be implemented in hardware, software, or a combination of software and hardware.

[0079] The processor 110 may include one or more processing units, for example, the processor 110 may include an application processor, a modem processor, a graphics processor, an image signal processor, a controller, a video codec, a digital signal processor, a baseband processor, and / or a neural network processor, etc. Different processing units may be independent devices or integrated into one or more processors.

[0080] The controller can generate operation control signals according to the instruction operation code and timing signal to complete the control of instruction fetching and execution.

[0081] The processor 110 may also be provided with a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory may store instructions or data that the processor 110 has just used or cyclically used. If the processor 110 needs to use the instruction or data again, it may be directly called from the memory. This avoids repeated access, reduces the waiting time of the processor 110, and thus improves the efficiency of the system.

[0082] In some embodiments, the processor 110 may include one or more interfaces. The interface may include an integrated circuit interface, an integrated circuit built-in audio interface, a pulse code modulation interface, a universal asynchronous receiver and transmitter interface, a mobile industry processor interface, a general purpose input and output interface, a subscriber identity module interface, and / or a universal serial bus interface, etc.

[0083] It is understandable that the interface connection relationship between the modules illustrated in the embodiment of the present invention is only a schematic illustration and does not constitute a structural limitation on the device 100. In other embodiments of the present application, the device 100 may also adopt different interface connection methods in the above embodiments, or a combination of multiple interface connection methods.

[0084] like Figure 1b As shown, the device 100 may further include a communication module 130. The communication module 130 includes a mobile communication module and a wireless communication module.

[0085] The mobile communication module can provide solutions for wireless communications including 2G / 3G / 4G / 5G applied on the device 100. The mobile communication module may include at least one filter, a switch, a power amplifier, a low noise amplifier, etc. The wireless communication module may provide solutions for wireless communications including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks) applied on the device 100. The wireless communication module may be one or more devices integrating at least one communication processing module. The memory 120 may be used to store programs. The memory 120 may include a program storage area and a data storage area. Among them, the program storage area may store an operating system, an application required for at least one function, etc. The data storage area may store data created during the use of the device 100, etc. In addition, the memory 120 may include a high-speed random access memory and may also include a non-volatile memory. The processor 110 executes various functional applications and data processing of the device 100 by running instructions stored in the memory 120 and / or instructions stored in a memory provided in the processor.

[0086] With the popularity of smart phones and the rapid development of mobile networks, a large number of user devices are connected to the Internet. The most mature and simplest way is for user devices to access customer premise equipment (CPE) or mobile routers through Wi-Fi.

[0087] The mobile router supports SIM card insertion or built-in eSIM card.

[0088] In order to improve the processing performance of CPE or mobile router for target service messages, the CPE or mobile router identifies the target service and then performs relevant processing on the target service messages, such as increasing the priority of the target service messages in the Wi-Fi driver and reducing the processing of messages in the application layer, in order to achieve the improved message processing speed and thus improve the user experience. However, if only the services on the CPE or mobile router are optimized, if the current network environment is not good, the overall user experience will not reach the best effect.

[0089] In the case of a congested mobile network environment, the time it takes for packets to be scheduled on the base station side is long, resulting in a poor target service experience; multiple users use their mobile phones to access CPE or mobile routers to watch online videos or play online games and other real-time services, and there are many uplink packets to the base station side. The base station side processes the packets according to normal scheduling, which results in a poor experience for each user. Therefore, when the network environment is not good, the user's experience of the target service is still low.

[0090] Based on the above technical problem, an embodiment of the present invention provides a service scheduling system. Figure 2 An architecture diagram of a service scheduling system provided in an embodiment of the present invention.

[0091] like Figure 2 As shown, the service scheduling system includes a first device 210 and a second device 220. The first device 210 includes a Wi-Fi driver 211, a first module 212 and a second module 213. The second device 220 includes a third module 221 and a fourth module 222. The first device 210 and the second device 220 are connected by wire or wireless. The first device 210 communicates with the third module 221 of the second device 220 through the second module 213.

[0092] Exemplarily, the first device 210 is a CPE or a mobile router, etc.

[0093] It should be understood that the first device may also be a mobile phone, a tablet, a portable computer, a wearable device, etc.

[0094] Exemplarily, the second device 220 is a base station. Exemplarily, the Wi-Fi driver 211 is a software module.

[0095] Exemplarily, the first module 212 is a hardware module having a processing function for determining whether a service is a target service according to at least one message of the service. For example, the first module 212 may be Figure 1b The processor 110 shown or Figure 6 A first processor is shown.

[0096] Exemplarily, the second module 213 is a hardware module having a communication function and is used to send and receive messages, etc. For example, the second module 213 may be Figure 1b The communication module 130 shown or Figure 6 A first transceiver is shown.

[0097] Exemplarily, the third module 221 is a hardware module having a communication function and is used to send and receive messages. For example, the third module 221 may be Figure 1b The communication module 130 shown or Figure 7 A second transceiver is shown.

[0098] Exemplarily, the fourth module 222 is a hardware module having a processing function for accelerating the target service. For example, the fourth module 222 may be Figure 1b The processor 110 shown or Figure 7 A second processor is shown.

[0099] based on Figure 2 The system architecture shown in the figure, an embodiment of the present invention provides a service scheduling method, which can improve the user experience of the target service when the network environment is not good.

[0100] Figure 3 A signaling interaction diagram of a service scheduling method provided by an embodiment of the present invention, Figure 4 for Figure 3 The specific signaling interaction diagram of the service scheduling method in FIG. Figure 3 As shown, the method includes:

[0101] Step 302: The first device receives at least one message of the first service.

[0102] Exemplarily, the third device includes a mobile phone, a tablet, a computer or a wearable device.

[0103] Exemplarily, the third device and the first device 210 are connected by wire or wirelessly.

[0104] Exemplarily, the first service includes online games, online videos, online courses, or ordinary data transmission services.

[0105] Exemplarily, online games include games that require real-time Internet access to play, such as the game "Honor of Kings".

[0106] Exemplarily, online videos include videos that require real-time Internet access to watch, rather than videos that have been downloaded in advance.

[0107] For example, online courses include courses that require real-time internet access to listen to, rather than courses that are downloaded in advance.

[0108] For example, when a user clicks a play control of an online video in a mobile phone, the mobile phone sends a message of the online video to the first device.

[0109] Exemplarily, the first message is a start message of the first service.

[0110] In some possible embodiments, Figure 4 As shown, step 302 includes:

[0111] Step 302a: The Wi-Fi driver of the first device receives at least one message of the first service.

[0112] Step 302b: The Wi-Fi driver of the first device sends at least one message of the first service to the first module of the first device.

[0113] Exemplarily, the first module includes an A core or kernel. The A core or kernel may be a processor.

[0114] Step 304: The first device sends a second message to the second device.

[0115] Exemplarily, the second message includes first information for indicating that the first device has the first capability.

[0116] In some possible embodiments, the first information includes a first field, where the first field is used to indicate that the first device has a first capability.

[0117] Exemplarily, the first capability is end-tube coordination capability.

[0118] In the embodiment of the present invention, the end-pipe coordination capability refers to extending parameters based on the 3GPP protocol, so that the first device notifies the second device to start accelerating the target service; the second device 220 accelerates the target service after receiving the notification; when the target service connection is idle, that is, the first device cannot receive the message of the target service, the first device 210 actively initiates the second device 220 to stop accelerating the target service. In the embodiment of the present invention, by extending the 3GPP protocol, the first device 210 and the second device 220 negotiate the end-pipe coordination capability. After the first device 210 identifies the target service, it can start or stop the end-pipe coordination capability of the second device 220 in time, thereby improving the service message processing speed and improving the user experience.

[0119] As a possible implementation manner, the first device may also send the second message to the second device 220 when the first device 210 joins the network, switches to join the network, reestablishes the network, or restores the network.

[0120] In some possible embodiments, Figure 4 As shown, step 304 includes:

[0121] Step 304a: The first module of the first device sends a first message to the second module of the first device.

[0122] Exemplarily, the second module includes a C core, which may be a communication chip.

[0123] In this step, after receiving at least one message of the first service, the first module of the first device sends a first message to the second module. The first message includes information for indicating the start of the first service.

[0124] Step 304b: The second module of the first device sends a second message to the third module of the second device.

[0125] Step 304c: The third module of the second device sends a second message to the fourth module of the second device.

[0126] Step 306: The second device sends a third message to the first device.

[0127] Exemplarily, the third message includes second information indicating whether the second device supports the first capability.

[0128] Exemplarily, if the second device does not support the first capability, the second device sends a third message, and the third message includes second information indicating that the second device does not support the first capability. When the first device determines that the target service exists, it determines whether the second device supports the first capability. If the determination result is that the second device does not support the first capability, the first device does not need to send a startup message to the second device. When the first device determines that the target service does not exist, it does not perform the operation of determining whether the second device supports the first capability, and also performs the operation of sending a startup message to the second device.

[0129] Exemplarily, if the second device supports the first capability, the second device sends a third message to the first device. The third message includes second information indicating that the second device supports the first capability. Optionally, after the bearer is successfully established, the second device sends the third message to the first device.

[0130] In some possible embodiments, Figure 4 As shown, step 306 includes:

[0131] Step 306a: The fourth module of the second device sends a third message to the third module of the second device.

[0132] After the fourth module of the second device receives the second message, if the fourth module has established a data bearer for the first device to be connected to the Internet, the fourth module directly sends the third message to the third module; if the fourth module has not established a data bearer for the first device to be connected to the Internet, the fourth module first establishes a data bearer for the first device to be connected to the Internet, and sends the third message to the third module after successfully establishing the data bearer for the first device to be connected to the Internet.

[0133] Step 306b: The third module of the second device sends a third message to the second module of the first device.

[0134] The second module is used to store the third message.

[0135] Step 308: The first device determines that the first service is a target service according to at least one message of the first service.

[0136] For example, the target service includes but is not limited to real-time services such as online games, online courses or online videos. The target service is a service with high real-time requirements. It should be understood that the target service may also include other services, and the user may also set which services are the target services.

[0137] Exemplarily, a feature information library of the target service is pre-stored in the first device, and the feature information library includes feature information in a message corresponding to the target service. The first device uses a deep packet inspection (DPI) method to identify the message to determine whether the message contains feature information in the feature information library. If the message contains feature information in the feature information library, it means that the message belongs to the message corresponding to the target service. For example, the feature information is a five-tuple.

[0138] In some possible embodiments, Figure 4 As shown, step 308 specifically includes: the first module of the first device determines that the first service is the target service according to at least one message of the first service.

[0139] Step 310: The first device determines whether the second device supports the first capability according to the second information included in the third message.

[0140] Exemplarily, if the first device 210 determines that the first service is a non-target service according to at least one message of the first service, the first device does not need to perform an operation of determining whether the second device 220 supports the first capability.

[0141] Exemplarily, the non-target service is a service with low real-time requirements.

[0142] In some possible embodiments, Figure 4 As shown, step 310 includes:

[0143] Step 310a: The first module of the first device sends a fourth message to the second module.

[0144] Exemplarily, the fourth message includes information for querying whether the second device supports the first capability.

[0145] Step 310b: The second module of the first device sends a fifth message to the first module.

[0146] Exemplarily, the fifth message includes second information indicating whether the second device supports the first capability.

[0147] Step 312: If the second device supports the first capability, the first device sends a startup message to the second device.

[0148] Exemplarily, the startup message is used to start accelerating the first service, that is, to notify the second device 220 to start scheduling the first service's message at a specific priority according to a specific scheduling period, thereby accelerating the target service and improving the user's experience of the target service. For example, the first device 210 sends a startup message to the second device 220 via an air interface, and the startup message triggers the second device 220 to start accelerating the first service.

[0149] When the first device of the embodiment of the present invention determines that the first service is the target service, it determines that the service needs to be accelerated, and then sends a startup message to the second device. The startup message is used to trigger the second device to schedule the message of the first service at a specific priority according to a specific scheduling period, thereby achieving acceleration of the target service and improving the user experience of the target service when the network environment is not good.

[0150] In some possible embodiments, Figure 4 As shown, step 312 includes:

[0151] Step 312a: If the fifth message includes that the second device supports the first capability, the first module of the first device sends a startup message to the second module.

[0152] Step 312b: The second module of the first device sends a startup message to the third module of the second device.

[0153] Step 312c: The third module of the second device sends a startup message to the fourth module of the second device.

[0154] Before step 312, the first device 210 determines the priority of the first service according to at least one message of the first service; and caches at least one message of the first service to the first queue according to the priority of the first service. The first device 210 also receives at least one message of the second service; determines that the second service is a non-target service according to at least one message of the second service; determines the priority of the second service according to at least one message of the second service; and caches at least one message of the second service to the second queue according to the priority of the second service. The priority of the first queue is higher than the priority of the second queue. The first device 210 preferentially sends messages in the high priority queue to the second device 220.

[0155] The first device 210 identifies the target service and distinguishes the priority of the message of the target service, establishes multiple accelerated sending queues, and sends messages of different priorities to different accelerated sending queues, so that different accelerated sending queues have different priorities. The first device 210 preferentially sends data of the accelerated sending queues with high priorities.

[0156] Exemplarily, the priority of the target service is higher than that of the non-target service; different target services have different priorities, and the first device 210 preferentially sends the message of the target service with a high priority. Figure 5 FIG. 1 is a schematic diagram of a first device sending a target service message in an embodiment of the present invention, such as Figure 5 As shown, the first device 210 receives messages of online games, online videos and online courses. Since the priority of online games is higher than that of online videos and online courses and the priority of online videos is higher than that of online courses, the first device 210 preferentially sends messages of online games, then sends messages of online videos, and finally sends messages of online courses.

[0157] Therefore, after the first device 210 receives and identifies the message of the target service, it needs to reorder the message of the service and maintain an accelerated sending queue with a high priority according to the priority.

[0158] The first queue is the accelerated sending queue, and the second queue is the normal sending queue. The first queue is the accelerated sending queue, which caches the messages of the target service; the second queue is the normal sending queue, which caches the messages of non-target services; the priority of the target service is higher than that of the non-target service. To ensure that the messages of the target service are sent first, the priority of the first queue is higher than that of the second queue.

[0159] Step 314: In response to the start message, the second device schedules the message of the first service at a specific priority according to a specific scheduling period.

[0160] In some possible embodiments, the second device 220 caches at least one message of the first service to an acceleration queue corresponding to a service type of the first service; and schedules the message of the first service in the acceleration queue with a specific priority according to a specific scheduling period.

[0161] It should be understood that the specific scheduling period involved in this article is shorter than the ordinary scheduling period. For example, the ordinary scheduling period occupies 40 s lots, and the specific scheduling period occupies 2 s lots. The description of the specific scheduling period is to distinguish the ordinary scheduling period, and other names or descriptions can also be used. The ordinary scheduling period is the scheduling period for ordinary data transmission. The description of the specific scheduling is to distinguish ordinary scheduling from pre-scheduling, and other names or descriptions can also be used.

[0162] It should be understood that the specific priority mentioned in this article is higher than the priority of ordinary scheduling and the priority of pre-scheduling. The description of the specific priority is to distinguish the priority of ordinary scheduling and the priority of pre-scheduling, and other names or descriptions may also be used, such as compensation priority.

[0163] In some possible embodiments, Figure 4 As shown, step 314 specifically includes: the fourth module of the second device responds to the start message and specifically schedules the message of the first service according to the specific scheduling period.

[0164] Exemplarily, the priority of the acceleration queue is higher than that of the pre-scheduled queue and the common data transmission queue. The second device maintains the acceleration queue for the target service according to the start message. Figure 6 FIG. 1 is a schematic diagram of a second device maintaining an acceleration queue in an embodiment of the present invention. Figure 6 As shown, in the second device, the priorities of the queues increase from bottom to top, and the priority of the acceleration queue maintained by the second device is always higher than the priorities of the pre-scheduled queue and the ordinary data transmission queue.

[0165] The second device 220 determines the target service based on the start message, and establishes multiple types of acceleration queues, assigning different target services to different acceleration queues.

[0166] In order to illustrate the beneficial effects of the embodiments of the present invention, it is first necessary to understand pre-scheduling, and the specific explanation of pre-scheduling is as follows:

[0167] Pre-scheduling: Regardless of whether the UE sends a request routing information SRI to the base station, the base station will actively schedule the UE once every certain period of time to reduce the time from the UE sending the SRI to obtaining the uplink scheduling authorization.

[0168] Without pre-scheduling, the UE's SRI can only be sent within a fixed period. If the SRI period is configured as 40s lot, and the SR period adaptation is turned off, in the worst case, if the UE has uplink data to send, it needs to wait for 40s lot before sending. After receiving the SRI, if the resources are sufficient, the base station will issue the UL Grant after 2-3s lot, but if the resources are insufficient, it needs to continue waiting.

[0169] When pre-scheduling is enabled, it takes effect only when there are surplus resources, as it has the lowest priority. The pre-scheduling function will basically not take effect in scenarios with moderate load or above. There can only be 2 pre-scheduling users in 1S lot, with a time slot ratio of 8:2. A maximum of 8 users can take effect in a 10ms pre-scheduling cycle. When there are many users, even if pre-scheduling takes effect, it may not necessarily work on the target service equipment.

[0170] Therefore, when the wireless base station has no pre-scheduling or only common pre-scheduling for the CPE or mobile router, the target service cannot meet the user's demands when the network is congested.

[0171] When the first device 210 of the embodiment of the present invention identifies a service as a target service, it determines that the target service needs to be accelerated, and then sends the message of the target service that needs to be accelerated to the accelerated sending queue, detects that there are messages to be sent in the accelerated sending queue, and notifies the second device 220 to start the first capability to schedule the message of the target service according to the type of the accelerated sending queue. Specifically, the second device 220 establishes a separate acceleration queue for the target service, and the priority of the acceleration queue is higher than the priority of ordinary data transmission services. At the same time, the messages of the target service in the acceleration queue are scheduled with a specific priority according to a specific scheduling cycle, and there is no need to wait for the SRI+UL Grant stage under moderate load. In the case of network congestion, the user's delay in using the first device 210 for the target service is reduced by 0 to 10 ms, and the user experience is improved.

[0172] Step 316: When the first device fails to receive a message of the first service, the first device sends a stop message to the second device.

[0173] In this step, if Figure 2 As shown, when the first device 210 fails to receive a message of the first service, it sends a stop message to the second device 220 .

[0174] Exemplarily, the stop message is used to trigger the second device to stop scheduling the first service message at a specific priority according to a specific scheduling period, thereby stopping the acceleration of the target service. For example, the first device 210 sends a stop message to the second device 220 through the air interface, and the stop message triggers the second device 220 to stop accelerating the first service.

[0175] In some possible embodiments, Figure 4 As shown, step 316 includes:

[0176] Step 316a: When the first module of the first device fails to receive a message of the first service, the first module sends a stop message to the second module.

[0177] Step 316b: The second module of the first device sends a stop message to the third module of the second device.

[0178] Step 316c: The third module of the second device sends a stop message to the fourth module of the second device.

[0179] Step 318: In response to the stop message, the second device stops scheduling messages of the first service at a specific priority level according to a specific scheduling period.

[0180] In some possible embodiments, Figure 4As shown, step 318 specifically includes: the fourth module of the second device stops scheduling the message of the first service at a specific priority according to a specific scheduling period in response to the stop message.

[0181] In the technical solution of the service scheduling method provided by the embodiment of the present invention, the first device that provides network access capability to the user is connected to the second device through the access network. When the cell network is congested, the first device identifies the target service and sends the message of the target service with priority; the first device can query, start or stop the first capability; the first device and the second device negotiate whether to support the first capability; when the second device receives the start message or the stop message, it starts or stops scheduling the message of the first service with a specific priority according to a specific scheduling period, that is, starts or stops the first capability to accelerate the target service, thereby achieving the effect of improving the service experience.

[0182] Figure 7 A flow chart of a service scheduling method provided by an embodiment of the present invention. Figure 7 As shown, the method includes:

[0183] Step 402: The first device receives at least one message of the first service.

[0184] Step 404: The first device determines that the first service is a target service according to at least one message of the first service.

[0185] Step 406: The first device sends a startup message to the second device.

[0186] Step 408: The second device schedules the message of the first service at a specific priority according to a specific scheduling period in response to the start message.

[0187] In the technical solution of the service scheduling method provided by an embodiment of the present invention, the method includes: a first device receives at least one message of a first service; the first device determines that the first service is a target service based on at least one message of the first service; the first device sends a startup message to a second device; the second device responds to the startup message and schedules the message of the first service at a specific priority according to a specific scheduling period, which can improve the user experience of the target service when the network environment is not good.

[0188] Figure 8 A flow chart of another service scheduling method provided by an embodiment of the present invention. Figure 8 As shown, the method includes:

[0189] Step 502: The first device receives at least one message of the first service.

[0190] Step 504: The first device sends a second message to the second device, where the second message includes first information indicating that the first device has the first capability.

[0191] Step 506: The second device sends a third message to the first device, where the third message includes second information indicating whether the second device supports the first capability.

[0192] Step 508: The first device determines that the first service is a target service according to at least one message of the first service.

[0193] Step 510: The first device determines whether the second device supports the first capability based on the second information included in the third message. If so, execute step 512; if not, execute step 520.

[0194] Step 512: The first device sends a startup message to the second device.

[0195] Before step 512, the first device determines the priority of the first service according to at least one message of the first service; and caches at least one message of the first service to the first queue according to the priority of the first service. The first device also receives at least one message of the second service; determines that the second service is a non-target service according to at least one message of the second service; determines the priority of the second service according to at least one message of the second service; and caches at least one message of the second service to the second queue according to the priority of the second service. The priority of the first queue is higher than the priority of the second queue. The first device preferentially sends messages in the high-priority queue to the second device.

[0196] Step 514: In response to the start message, the second device schedules the message of the first service at a specific priority according to a specific scheduling period.

[0197] In some possible embodiments, step 514 specifically includes: the second device caches at least one message of the first service to an acceleration queue corresponding to the service type of the first service in response to the startup message; the second device schedules the message of the first service in the acceleration queue with a specific priority according to a specific scheduling period.

[0198] Exemplarily, the priority of the acceleration queue is higher than that of the pre-scheduling queue and the normal data transmission queue.

[0199] Step 516: When the first device fails to receive the message of the first service, the first device sends a stop message to the second device.

[0200] Step 518: In response to the stop message, the second device stops scheduling the messages of the first service at a specific priority level according to a specific scheduling period. The process ends.

[0201] Step 520: The first device does not send a startup message to the second device.

[0202] It should be understood that step 504, step 506, step 510, step 516, step 518 and step 520 are optional steps.

[0203] In the technical solution of the service scheduling method provided by the embodiment of the present invention, a first device receives at least one message of a first service; the first device determines that the first service is a target service based on at least one message of the first service; the first device sends a startup message to a second device; the second device responds to the startup message and schedules the message of the first service with a specific priority according to a specific scheduling period, which can improve the user experience of the target service when the network environment is not good.

[0204] Fig. 9 This is a schematic diagram of the structure of a first device provided in an embodiment of the present invention. It should be understood that the first device 600 can execute Figure 3 , Figure 7 or Figure 8 To avoid repetition, the steps of the first device are not described in detail here. The first device 600 includes: a first transceiver 601 and a first processor 602.

[0205] A first transceiver 601, configured to receive at least one message of a first service;

[0206] A first processor 602, configured to determine, according to at least one message of the first service, that the first service is a target service;

[0207] The first transceiver 601 is further used to send a startup message to the second device, where the startup message is used to trigger the second device to schedule the message of the first service at a specific priority according to a specific scheduling period.

[0208] Optionally, before the first processor 602 determines that the first service is the target service based on at least one message of the first service, the first transceiver 601 is also used to send a second message to the second device, the second message including first information indicating that the first device has the first capability; and receive a third message sent by the second device, the third message including second information indicating whether the second device supports the first capability.

[0209] Optionally, before the first transceiver 601 sends the startup message to the second device, the first processor 602 is further configured to determine whether the second device supports the first capability according to the second information included in the third message;

[0210] The first transceiver 601 is further configured to send the startup message to the second device if the first processor 602 determines that the second device supports the first capability;

[0211] The first transceiver 601 is further configured to not send the startup message to the second device if the first processor 602 determines that the second device does not support the first capability.

[0212] Optionally, after sending a start message to the second device, the first transceiver 601 is also used to send a stop message to the second device when no message of the first service is received, and the stop message is used to trigger the second device to stop scheduling the message of the first service according to the specific scheduling period and with a specific priority.

[0213] Optionally, before the first transceiver 601 sends a startup message to the second device, the first processor 602 is also used to determine the priority of the first service based on at least one message of the first service; and cache at least one message of the first service to the first queue according to the priority of the first service.

[0214] Optionally, the first transceiver 601 is further configured to receive at least one message of a second service;

[0215] The first processor 602 is also used to determine that the second service is a non-target service based on at least one message of the second service; determine the priority of the second service based on at least one message of the second service; and cache at least one message of the second service to a second queue based on the priority of the second service, wherein the priority of the first queue is higher than the priority of the second queue.

[0216] Optionally, the first transceiver 601 is further configured to preferentially send messages in a high priority queue to the second device.

[0217] Fig.10 This is a schematic diagram of a second device provided in an embodiment of the present invention. It should be understood that the second device 700 can execute Figure 3 , Figure 7 or Figure 8 To avoid repetition, the steps of the second device are not described in detail here. The second device 700 includes: a second transceiver 701 and a second processor 702.

[0218] The second transceiver 701 is used to receive a startup message sent by the first device;

[0219] The second processor 702 is configured to schedule, in response to the start message, messages of a first service at a specific priority level according to a specific scheduling period, where the first service is a target service.

[0220] Optionally, the second processor 702 is specifically used to cache at least one message of the first service to an acceleration queue corresponding to a service type of the first service in response to the startup message; and schedule the message of the first service in the acceleration queue with a specific priority according to the specific scheduling period.

[0221] Optionally, the priority of the acceleration queue is higher than that of the pre-scheduling queue and the ordinary data transmission queue.

[0222] Optionally, before receiving the startup message sent by the first device, the second transceiver 701 is also used to receive a second message sent by the first device, the second message including first information used to indicate that the first device has a first capability; and send a third message to the first device, the third message including second information indicating whether the second device supports the first capability.

[0223] The embodiment of the present application further provides a first device, including a processor and a memory, wherein the memory is used to store a program, and when the processor runs the program, the first device executes the method embodiments and Figure 3 , Figure 7 , Figure 8 The first device in the operation is involved.

[0224] The embodiment of the present application further provides a second device, including a processor and a memory, wherein the memory is used to store a program, and when the processor runs the program, the first device executes the method embodiments and Figure 3 , Figure 7 , Figure 8 The second device in the operation involves.

[0225] The embodiment of the present application further provides a readable storage medium, wherein the readable storage medium stores a program, and when the program is executed by a first device, the first device executes the method embodiment and Figure 3 , Figure 7 or Figure 8 The first device in the operation is involved.

[0226] The embodiment of the present application further provides a readable storage medium, wherein the readable storage medium stores a program, and when the program is executed by a second device, the second device executes the method embodiment and Figure 3 , Figure 7 or Figure 8 The second device in the operation involves.

[0227] The present application also provides a program product. When the program product is run on a first device or at least one processor, the first device executes the method embodiments and Figure 3 , Figure 7 or Figure 8 The first device in the operation is involved.

[0228] The embodiment of the present application also provides a program product, when the program product is run on a second device or at least one processor, the second device executes the method embodiment and Figure 3 , Figure 7 or Figure 8 The second device in the operation involves.

[0229] In the embodiments of the present application, "at least one" means one or more.

[0230] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described systems, devices, readable storage media and program products can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0231] In several embodiments provided in the present application, if any function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for a device (which can be a CPE or a mobile router or a mobile phone or a tablet or a computer, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory, a random access memory, a magnetic disk or an optical disk.

[0232] The above is only a specific implementation of the present application. Any person skilled in the art can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. The protection scope of the present application should be based on the protection scope of the claims.

Claims

1. A service scheduling method, characterized in that: Applied to a first device, the method includes: Receiving at least one message of a first service; Determining, according to at least one message of the first service, that the first service is a target service; A startup message is sent to the second device, where the startup message is used to trigger the second device to schedule messages of the first service at a specific priority according to a specific scheduling period.

2. The method according to claim 1, characterized in that Before determining that the first service is a target service according to at least one message of the first service, the method further includes: Sending a second message to the second device, where the second message includes first information indicating that the first device has a first capability; A third message sent by the second device is received, where the third message includes second information indicating whether the second device supports the first capability.

3. The method according to claim 1 or 2, characterized in that: Before sending the startup message to the second device, the method further includes: determining, according to the second information included in the third message, whether the second device supports the first capability; If it is determined that the second device supports the first capability, sending the startup message to the second device; If it is determined that the second device does not support the first capability, the startup message is not sent to the second device.

4. The method according to any one of claims 1 to 3, characterized in that After sending the startup message to the second device, the method further includes: When no message of the first service is received, a stop message is sent to the second device, where the stop message is used to trigger the second device to stop scheduling the message of the first service according to the specific scheduling period and with the specific priority.

5. The method according to any one of claims 1 to 4, characterized in that Before sending the startup message to the second device, the method further includes: determining a priority of the first service according to at least one message of the first service; At least one message of the first service is cached in a first queue according to the priority of the first service.

6. The method according to claim 5, characterized in that The method further comprises: receiving at least one message of a second service; determining, according to at least one message of the second service, that the second service is a non-target service; determining a priority of the second service according to at least one message of the second service; At least one message of the second service is cached in a second queue according to the priority of the second service, and the priority of the first queue is higher than the priority of the second queue.

7. The method according to any one of claims 5-6, characterized in that The method further comprises: The messages in the high priority queue are preferentially sent to the second device.

8. A service scheduling method, characterized in that: Applied to the second device, the method includes: Receiving a startup message sent by the first device; In response to the start message, a message of a first service is scheduled according to a specific scheduling period and with a specific priority, where the first service is a target service.

9. The method according to claim 8, characterized in that The step of scheduling the message of the first service at a specific priority according to a specific scheduling period in response to the start message includes: In response to the start message, cache at least one message of the first service in an acceleration queue corresponding to a service type of the first service; Schedule the messages of the first service in the acceleration queue at the specific priority according to the specific scheduling period.

10. The method according to claim 9, characterized in that The priority of the acceleration queue is higher than that of the pre-scheduling queue and the common data transmission queue.

11. The method according to any one of claims 8 to 10, characterized in that: Before receiving the startup message sent by the first device, the method further includes: receiving a second message sent by the first device, where the second message includes first information indicating that the first device has a first capability; A third message is sent to the first device, where the third message includes second information indicating whether the second device supports the first capability.

12. A first device, characterized in that: It comprises a processor and a memory, wherein the memory is used to store a program, and when the processor runs the program, the first device executes the method as claimed in any one of claims 1 to 7.

13. A second device, characterized in that: It comprises a processor and a memory, wherein the memory is used to store a program, and when the processor runs the program, the second device executes the method as claimed in any one of claims 8 to 11.

14. A business scheduling system, characterized in that: The system comprises: the first device as claimed in claim 12 and the second device as claimed in claim 13.

15. A readable storage medium, characterized in that: The readable storage medium stores a program, and when the program is executed by a device, the device executes the method according to any one of claims 1 to 7, or the method according to any one of claims 8 to 11.