Method and device for transmitting service data, chip, terminal equipment and storage medium
By dynamically adjusting bandwidth allocation according to the service quality requirements of multiple services on the terminal device, the problem of poor bandwidth allocation of multiple operating services is solved and the user experience is improved.
Patent Information
- Application Number
- CN202311120003.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-31
- Publication Date
- 2025-02-28
AI Technical Summary
How to optimize the bandwidth allocation of multiple operating services to improve user experience, especially when terminal devices run multiple services at the same time, ensuring that service quality needs are met.
By determining the service quality requirements of the target service on the terminal device, calculating the bandwidth that can be allocated, and sending a bandwidth return request to the server to obtain the corresponding service data. This method dynamically adjusts bandwidth allocation according to the service quality requirements of the service to ensure that the service quality corresponds to the return request.
It effectively avoids the problem that businesses with lower service quality requirements can obtain too much bandwidth while businesses with higher service quality requirements cannot be met, thereby improving the user experience.
Smart Images

Figure CN119544802A_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present application relate to the field of communication technology, and more specifically, to a method and apparatus, chip, terminal equipment, and storage medium for transmitting business data. Background Art
[0002] With the development of smart terminal technology and the changes in market demand, terminal devices can now run multiple services simultaneously (for example, users can watch videos and play games at the same time). However, high-quality video services do not necessarily meet user needs, because the game services running simultaneously may have been delayed.
[0003] Therefore, how to optimize multiple running services to improve user experience is a technical problem that needs to be solved urgently. Summary of the invention
[0004] The embodiments of the present application provide a method and apparatus for transmitting service data, a chip, a terminal device, and a storage medium. The following introduces various aspects involved in the embodiments of the present application.
[0005] In a first aspect, a method for transmitting business data is provided, which is applied to a terminal device, and the method includes: determining a target business, wherein the target business is a plurality of businesses running on the terminal device; determining an allocatable bandwidth of the target business according to a quality of service requirement of the target business; sending a report request for the allocatable bandwidth of the target business to a server; and obtaining business data of the target business sent by the server; wherein the quality of service of the business data corresponds to the report request.
[0006] In a second aspect, a device for transmitting business data is provided, which is applied to a terminal device, and the device includes: a first determination module, used to determine a target business, wherein the target business is a plurality of businesses running on the terminal device; a second determination module, used to determine an allocatable bandwidth of the target business according to a quality of service requirement of the target business; a sending module, used to send a report request of the allocatable bandwidth of the target business to a server; and an acquisition module, used to acquire business data of the target business sent by the server; wherein the quality of service of the business data corresponds to the report request.
[0007] In a third aspect, a chip is provided, comprising: a processor, configured to call and run a computer program from a memory, so that a device equipped with the chip executes the method described in the first aspect.
[0008] In a fourth aspect, a terminal device is provided, comprising a processor and a memory, wherein the memory is used to store a computer program, and the processor is used to call and run the computer program stored in the memory to control the terminal device to execute the method described in the first aspect.
[0009] According to a fifth aspect, a computer-readable storage medium is provided, on which executable code is stored. When the executable code is executed, the method described in the first aspect can be implemented.
[0010] The embodiment of the present application proposes a method for transmitting business data, which is applied to a terminal device, and the method includes: determining a target business, where the target business is a plurality of businesses running on the terminal device; determining the allocatable bandwidth of the target business according to the service quality requirements of the target business; sending a report request of the allocatable bandwidth of the target business to a server; obtaining business data of the target business sent by the server; wherein the service quality of the business data corresponds to the report request. This scheme allocates bandwidth to the plurality of businesses according to the service quality requirements of the running businesses, and can effectively avoid businesses with general service quality requirements (such as video businesses) from obtaining more bandwidth, while businesses with higher service quality requirements (such as gaming businesses) cannot be met, thereby helping to improve user experience. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] Figure 1 It is a schematic diagram of the network architecture applied in the embodiment of the present application.
[0012] Figure 2 It is a schematic diagram of video adaptive bit rate adjustment provided in one embodiment of the present application.
[0013] Figure 3 It is a schematic diagram of multiple services sharing the current network total bandwidth in the related technology.
[0014] Figure 4 It is a flowchart of a method for transmitting business data provided in an embodiment of the present application.
[0015] Figure 5 This is a schematic diagram of bandwidth allocation for multiple services provided in one embodiment of the present application.
[0016] Figure 6 It is a schematic diagram of a network architecture provided by another embodiment of the present application.
[0017] Figure 7 It is a structural diagram of a device for transmitting business data provided in one embodiment of the present application.
[0018] Figure 8 It is a structural diagram of a terminal device provided in one embodiment of the present application. DETAILED DESCRIPTION
[0019] The technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all of the embodiments.
[0020] The embodiments of the present application are described below in conjunction with the accompanying drawings. Those skilled in the art will appreciate that, with the development of technology and the emergence of new scenarios, the technical solutions provided in the embodiments of the present application are also applicable to similar technical problems.
[0021] The terms "first", "second", etc. in the specification and claims of this application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the terms used in this way can be interchangeable under appropriate circumstances. This is just a way of distinguishing objects with the same attributes when describing the embodiments of this application.
[0022] With the development of intelligent terminal technology and the changes in market demand, terminal devices can realize the simultaneous operation of multiple services (for example, users can watch videos and play games at the same time). During the operation of services, terminal devices can continuously download corresponding service data resources from the server.
[0023] Figure 1 is a schematic diagram of the network architecture used in this embodiment. Figure 1 , Figure 1 The network architecture includes a server 110 and a terminal device 120.
[0024] The server 110 may store service data resources corresponding to various services, and in response to a service return request of the terminal device 120, the corresponding service data resources may be returned to the terminal device 120. The server 110 may be a server for various live or non-live services provided to user terminals. The server 110 may be a general server or a dedicated server. In a specific implementation, the server may be various storage servers and other devices. The embodiment of the present application does not limit the type of server, and the server 110 may be a physical server or a virtual server.
[0025] The terminal device 120 can access the server 110 through a browser or an application program. Alternatively, a client corresponding to the service can be deployed on the terminal device 120, and the terminal accesses the server 110 through the client.
[0026] The terminal device 120 may be a user equipment (UE), and the terminal device 120 may send an access request to the server 110 running the service through a browser or a client. The terminal device 120 includes a handheld device, a vehicle-mounted device, a wearable device, or a computing device with a wireless communication function. Exemplarily, the terminal device 120 may be a mobile phone, a tablet computer (Pad), a PDA, or a mobile internet device (MID). The terminal device 120 may also be a virtual reality (VR) terminal device, an augmented reality (AR) terminal device, a wireless terminal in industrial control, a wireless terminal in unmanned driving, a wireless terminal in telemedicine, a wireless terminal in a smart grid, a wireless terminal in a smart city, a wireless terminal in a smart home, and the like.
[0027] In order to adapt to the changes in network bandwidth of different users, prevent playback from freezing, and ensure viewing quality, most video websites (such as TikTok, Bilibili, YouTube, etc.) have adopted an adaptive bit-rate (ABR) strategy. Different products have different adaptive bit-rate solutions. In simple terms, it provides users with automatic bit rates, refers to the user's end playback situation, and selects the most suitable playback bit rate for users in real time. Figure 2 Provide detailed examples.
[0028] Figure 2 A schematic diagram of video adaptive bit rate adjustment provided by the related technology. Figure 2 As shown, at 0:00, when the total available network bandwidth of the terminal device is sufficient, the bit rate can be adjusted to play a higher definition video for the user (for example, the bit rate is 18000k and the resolution is 4K (2160p)); at 0:10, when the total available network bandwidth of the terminal device decreases, the bit rate can be reduced to play a higher definition video for the user (for example, the bit rate is 5500k and the resolution is FHD (1080p)); at 0:30, when the total available network bandwidth of the terminal device continues to decrease, the bit rate can be further reduced to play a regular definition video for the user (for example, the bit rate is 800k and the resolution is SD (480p)); at 0:40, when the total available network bandwidth of the terminal device is small, the bit rate can be further reduced (for example, the bit rate is 200k and the resolution is 240p) to ensure that the video can be played smoothly as much as possible. Of course, when the total available network bandwidth of the terminal device increases, the bit rate can be increased to play a high-definition video for the user, which is similar to the above-mentioned reduction method and will not be described in detail here.
[0029] According to the above content, it can be seen that the video quality is determined by the "current total network bandwidth", but a high bit rate may not be the best fit for the user's needs, because the game services running simultaneously on the terminal device may have been delayed. Multiple services running simultaneously on the terminal device may include, for example, video services (such as game video live commentary services), chat services (such as WeChat chat services), and game services (such as King of Glory game services). Figure 3 Give an example.
[0030] Figure 3 This is a schematic diagram of multiple services sharing the total bandwidth. Figure 3 As shown in the figure, users need to watch video services (strategy explanations) while playing games. For users, the smoothness of playing games is higher than the clarity of videos. At this time, the server will adjust the bit rate of video services adaptively according to the total network bandwidth. The quality of video services is determined by the "current overall network bandwidth". This may result in high video quality, lag in game services, and poor user experience.
[0031] Therefore, how to optimize multiple running services to improve user experience is a technical problem that needs to be solved urgently.
[0032] In order to solve the above problems, an embodiment of the present application proposes a method for transmitting business data, which is applied to a terminal device, and the method includes: determining a target business, where the target business is a plurality of businesses running on the terminal device; determining the allocatable bandwidth of the target business according to the service quality requirements of the target business; sending a report request of the allocatable bandwidth of the target business to the server; obtaining the business data of the target business sent by the server; wherein the service quality of the business data corresponds to the report request. This scheme allocates bandwidth to the plurality of businesses according to the service quality requirements of the running businesses, which can effectively avoid businesses with general service quality requirements (such as video businesses) from obtaining more bandwidth, while businesses with higher service quality requirements (such as game businesses) cannot be met, thereby helping to improve user experience.
[0033] Combined with the following Figure 4 The method for transmitting service data in the embodiment of the present application is described in detail. Figure 4 As shown, the method 400 for transmitting service data may be used in a terminal device. It should be understood that the terminal device may be any type of terminal device mentioned above. For example, the terminal device may be Figure 1 The terminal device 120 in the embodiment. The method 400 for transmitting service data may include steps: S410 to S440.
[0034] In step S410, a target service is determined.
[0035] In some embodiments, the target service may be multiple services running on the terminal device. The multiple services may be, for example, video services (such as Douyin video services, Bilibili video services, etc.), chat services (such as WeChat chat services, QQ chat services, etc.), game services (such as King of Glory game services, League of Legends game services, etc.), and this application does not make specific restrictions on this.
[0036] In some embodiments, the target service may be one or more services running on the terminal device, and the one or more services may refer to services currently running on the terminal device.
[0037] In step S420, the allocatable bandwidth of the target service is determined according to the service quality requirement of the target service.
[0038] The service quality requirement of the target service may be associated with a first condition parameter, and the first condition parameter includes one or more of the following parameters: service priority, data buffer status of the service, network status, and service experience status of the service. That is, the service quality requirement of the target service may be determined based on one or more of the first condition parameters. The service quality requirement of the target service includes the service quality requirement of each of the multiple services being run.
[0039] It should be noted that the impact factor of each parameter in the first condition parameter on the service quality requirement can be set according to demand, or obtained through machine learning model training, and this application does not impose any specific restrictions on this.
[0040] In some embodiments, the service priority can be determined according to the service type, and the user can set the service priority in the terminal device. For example, the service priority can be set to: the priority of the game service is higher than the priority of the video service, and the priority of the video service is higher than the priority of the chat service. Of course, specific service priorities can also be set, for example, the priority of the King of Glory game is higher than the priority of the Landlord game service, or the priority of the King of Glory game is higher than the priority of the Douyin video service. This application does not make specific restrictions on this.
[0041] In some embodiments, the buffering status of the service data may also affect the service quality requirement of the target service. Taking the video service as an example, if the video service has buffered enough high-quality service data, even if the network environment deteriorates, the service quality requirement of the video service can still be set to a high-quality video quality requirement (e.g., a high-definition video quality requirement).
[0042] In some embodiments, the network status may refer to the current network status of the terminal device, or may refer to the network status at the next moment or the next period. The network status may include, but is not limited to: packet loss rate of uplink / downlink data transmission, congestion level of uplink / downlink data transmission, total bandwidth of uplink / downlink data transmission, etc. The total bandwidth of uplink / downlink data transmission may refer to the total network bandwidth of the terminal device.
[0043] In some embodiments, the service experience of a business may include the fluency of the business, the clarity of the business, the skill effects of the business, etc. The service experience of a business may affect the service quality of the target business. The service experience of a business may be reflected by a scoring value. As an example, the service experience of a business may be scored based on user experience such as the fluency of the business, the clarity of the business, the skill effects of the business, etc. Then, the service quality requirement may be determined based on the scoring value of the service experience.
[0044] In some embodiments, the bandwidth requirement of the target service can be determined according to the first condition parameter, and then, according to the bandwidth requirement of the target service, a decision is made to execute bandwidth allocation of the target service to obtain the allocatable bandwidth of the target service. Then, a report request of the allocatable bandwidth of the target service can be generated.
[0045] It should be noted that the solution can determine the service quality requirements of the target service according to multiple parameters in the first condition parameter. Taking the video service as an example, if the current video service data buffer is small and the network status is relatively poor, the service quality requirements of the video service can be set to high fluency and low definition video quality requirements. Then, according to the service quality requirements of the target service, the allocable bandwidth of the target service can be determined.
[0046] The allocatable bandwidth of a service refers to the bandwidth that the service can occupy (i.e., the maximum network bandwidth that can be allocated to the service). As an example, if the current total network bandwidth is 100M, the target service may include the Douyin video service, the WeChat chat service, and the King of Glory game service; then, according to the service quality requirements of the target service, for example, it can be determined that the allocatable bandwidth of the King of Glory game service is 50M, the allocatable bandwidth of the Douyin video service is 40M, and the allocatable bandwidth of the WeChat chat service is 10M. This application does not impose any specific restrictions on this. It should be understood that the mapping relationship between the service quality requirements of the target service and the allocatable bandwidth of the target service can be determined in advance by establishing a table, or it can be obtained by real-time prediction based on a machine learning algorithm. This application does not impose any specific restrictions on this.
[0047] In step S430, a report request for the allocatable bandwidth of the target service is sent to the server.
[0048] This application does not impose any specific restrictions on the server type. For example, the server may refer to Figure 1 The server 110 in the embodiment of the present invention can be a server outside the terminal, for example, a storage server outside the terminal device.
[0049] In some embodiments, the return request for the allocable bandwidth of the service corresponds to the allocable bandwidth of the service. As an example, if the allocable bandwidth of the Douyin video service is 40M, the return request for the allocable bandwidth of the Douyin video service is the highest quality video service data resource corresponding to the bandwidth of 40M. The highest quality video service data resource corresponding to the bandwidth of 40M may, for example, refer to the video service data resource with a bit rate of 18000k and a resolution of 4K (2160p)".
[0050] In step S440, the service data of the target service sent by the server is obtained.
[0051] It should be understood that when the server receives the report request of the allocatable bandwidth of the target service, the server can convert the report request of the allocatable bandwidth of the service into the service maximum bit rate request corresponding to the allocatable bandwidth, and then report the service data of the corresponding bit rate to the terminal device. In other words, the service quality of the service data corresponds to the report request of the allocatable bandwidth. The service quality of the service data may include the bit rate, resolution, etc. of the service data. Report requests of different bandwidths correspond to service data of different service qualities.
[0052] As can be seen from the above content, this solution allocates bandwidth to multiple services according to the service quality requirements of the multiple services being run, which can effectively avoid that services with general service quality requirements (such as video services) obtain more bandwidth, while services with higher service quality requirements (such as game services) cannot be met, thereby helping to improve user experience.
[0053] In some embodiments, based on the first condition parameter, a heuristic algorithm and / or a machine learning algorithm may be used to determine the bandwidth requirement of the target service.
[0054] It should be noted that the heuristic algorithm in the embodiment of the present application may refer to a threshold comparison algorithm. As an example, when the buffering state of the video service exceeds a first threshold (the first threshold may be, for example, 80%), it may be considered that the buffering is sufficient, and the quality of service requirement of the video service may be set to a high-quality service requirement. As another example, when the allocatable bandwidth of the video service is greater than a second threshold (the second threshold may be, for example, 20M), it may be considered that the network state is good, and the quality of service requirement of the video service may be set to a high-quality service requirement.
[0055] In some embodiments, the machine learning algorithm may include but is not limited to: decision tree algorithm, regression algorithm, neural network algorithm (may include deep neural network algorithm, convolutional neural network algorithm and recursive neural network algorithm, etc.), clustering algorithm, etc.
[0056] In some embodiments, a machine learning model can be trained in a terminal device. As an example, in the process of using a machine learning algorithm to predict business bandwidth, after using the machine learning algorithm to predict and determine the bandwidth demand of the target business, the machine learning model in the machine learning algorithm can be iteratively updated according to the prediction error of the bandwidth demand of the target business. In other words, the machine learning model can be reversely updated according to the prediction error of the bandwidth demand, and then the updated machine learning model can be used for the next business bandwidth prediction. The next bandwidth demand prediction error can continue to reversely update the machine learning model, and so on, and the machine learning model is continuously iterated and updated, thereby helping to improve the prediction accuracy of business bandwidth demand.
[0057] It is understandable that in the early stage of the machine learning algorithm, due to the large prediction error of the machine learning model, a heuristic algorithm can be selected for prediction. When the prediction error of the machine learning model is reduced to within the permitted range, it can be switched to using the machine learning algorithm to predict the bandwidth requirements of the business. By combining the heuristic algorithm and the machine learning algorithm, the prediction accuracy of the business bandwidth requirements can be improved.
[0058] In other embodiments, the server may be used to train the machine learning model to obtain a trained machine learning model. Then, before using the machine learning algorithm to determine the bandwidth requirements of the target service, the terminal device may receive the trained machine learning model from the server and deploy the trained machine learning model in the terminal device, thereby helping to reduce the performance requirements of the terminal device.
[0059] In some embodiments, the target service includes a first target service, which may be a video service. After determining the allocatable bandwidth of the target service, the bit rate requirement of the first target service may be determined based on the allocatable bandwidth of the first target service; then, a report request for the bit rate requirement of the first target service is sent to the server. Based on the report request for the bit rate requirement, the server may directly report the video service data of the corresponding bit rate without performing the operation of "converting the report request for the bandwidth requirement into the report request for the bit rate requirement", thereby helping to alleviate the computing pressure of the server.
[0060] In some embodiments, the target service may also include a second target service, which may refer to a service that the user prefers more. The second target service may be, for example, a gaming service. The second target service may be set according to demand, and this application does not impose specific restrictions on this. After setting the second target service, the bandwidth required by the second target service may be allocated to the second target service on a priority basis. For example, the allocable bandwidth of the second target service may be determined based on the service quality requirements of the second target service; then, the allocable bandwidth of the remaining services may be determined based on the remaining bandwidth and the service quality requirements of the remaining services; wherein the remaining bandwidth is the bandwidth of the total downlink bandwidth of the terminal device excluding the allocable bandwidth of the second target service, and the remaining services are services in the target services excluding the second target service.
[0061] As an example, multiple services can be run on the terminal device at the same time, and the multiple services may include, for example, a video service (such as a game video live broadcast commentary service), a chat service (such as WeChat chat), and a game service (such as King of Glory). If the second target service is a game service, the following Figure 5 Give an example.
[0062] Figure 5 A schematic diagram of the bandwidth allocation structure for multiple services. Figure 5 As shown, the bandwidth required by the game service can be allocated first. The allocable bandwidth of the game service can refer to the minimum required bandwidth for the normal operation of the game service. Then, the allocable bandwidth of the remaining services is determined based on the remaining bandwidth and the service quality requirements of the remaining services (i.e., video services and chat services). The remaining bandwidth is equal to the total bandwidth minus the allocable bandwidth of the game service. Compared with the traditional local service optimization solution for a single video, this solution globally optimizes all running services and configures a strategy that preferentially satisfies user-preferred services, which helps to improve user experience.
[0063] In some embodiments, the terminal device may be a mobile terminal. As the terminal device moves, the network status will also change. In order to improve the user experience, the embodiment of the present application may predict the network status of the terminal device according to the mobile status of the terminal device before determining the allocatable bandwidth of the target service to obtain a first network status; wherein the first network status is the network status of the terminal device at the next moment or the next period. The mobile status may include the moving trajectory and the moving speed, etc., and the network status may include the total downlink bandwidth of the terminal device, the downlink network congestion level, etc. By predicting the network status of the terminal device in advance, the allocatable bandwidth of the service can be adjusted more effectively.
[0064] As an example, in the scenario of high-speed rail operation, the terminal device may frequently switch cells during high-speed movement. At this time, the network of the terminal device is not stable, so the allocatable bandwidth of the target service can be reduced to ensure the smoothness of the target service. Although the service quality of the target service (such as video clarity) is reduced to a certain extent, it can effectively avoid the lag caused by unstable network status.
[0065] In order to deepen the understanding of the method for transmitting service data in the embodiment of the present application, Figure 6 The method of transmitting business data is described in more detail with examples.
[0066] Figure 6 Schematic diagram of another network architecture proposed in the embodiment of the present application. Figure 6 As shown, the network architecture includes a terminal device and a server, and four services are in operation on the server and the terminal device. The server can provide corresponding service data resources for the running services on the terminal device. The four running services can be service 1, service 2, service 3 and service 4. Service 1 is a video service and supports the ABR client control interface (i.e., the user can send a request for reporting the bit rate requirement to the server through the ABR client control interface on the terminal device, and then the server can report the service data resources of the corresponding bit rate); Service 2 is a video service and does not support the ABR client control interface (i.e., the user cannot send a request for reporting the bit rate requirement to the server through the ABR client control interface, but can only send a request for reporting the bandwidth requirement, and then the server needs to convert the request for reporting the bandwidth requirement into a request for reporting the bit rate requirement, and the server can report the service data resources of the corresponding bit rate); Service 3 is a non-video service and does not support the QoS client control interface (i.e., only a request for reporting the bandwidth requirement can be sent, and then the server needs to convert the request for reporting the bandwidth requirement into a request for reporting the QoS requirement, and the server can report the service data resources of the corresponding QoS); Service 4 is a non-video service and supports the quality of service (QoS) client control interface (i.e., the user can send a request for reporting the QoS requirement to the server through the QoS client control interface according to the bandwidth that can be allocated, and then the server will report the corresponding service data resources according to the QoS, such as reporting the clarity and game special effects corresponding to the QoS requirement).
[0067] Based on the above content, the method for transmitting business data may include the following steps:
[0068] Step 1: In general application scenarios, combined with the QoS requirements of different services (i.e., service 1, service 2, service 3, and service 4), provide bandwidth prediction results for different services. The QoS requirements are associated with one or more of the following conditions: minimum required bandwidth of the service, priority (users can set different priorities for different services), buffer status, network status (such as packet loss rate, uplink / downlink congestion level, uplink / downlink total bandwidth, etc.), QoE (such as clarity, fluency, delay, jitter (degree of delay variation), etc.).
[0069] Step 2: Use heuristics and machine learning to predict the bandwidth requirements of each business, which helps avoid the problem of excessive fluctuations in the prediction results of a single model.
[0070] Step 3: Make bandwidth allocation decisions based on bandwidth prediction results, and provide different demand reporting requests to the server based on different services. For example, service 1 can report the corresponding bitrate requirements to the server based on its allocatable bandwidth, and the server can adjust the service data resources based on the bitrate requirements reported by the client, and send them to the terminal device; service 2 and service 3 can limit the total bandwidth that service 2 and service 3 can use based on their allocatable bandwidth, indirectly affecting the bitrate reporting request or QoS reporting request sent to the server. That is, the server needs to convert the bandwidth demand reporting request into a bitrate / QoS demand reporting request, and then report the corresponding bitrate / QoS service data resources to the terminal device. Service 4 can report the corresponding QoS requirements to the server based on its allocatable bandwidth, and the server can adjust the service data resources based on the QoS requirements reported by the client, and send them to the terminal device.
[0071] Based on the above content, it can be seen that each service can dynamically request to adjust the service data resources on the server side, such as adjusting the bit rate (i.e. clarity), under the control of the total network bandwidth, according to the current service quality requirements of each service and user selection preferences, so as to achieve a balance in fluency, clarity and smoothness, thereby maximizing the user experience.
[0072] Combination of the above Figures 1 to 6 The method embodiment of the present application is described in detail. Figures 7 and 8 The device embodiment of the present application is described in detail. It should be understood that the description of the method embodiment corresponds to the description of the device embodiment, so the parts not described in detail can refer to the previous method embodiment.
[0073] Figure 7FIG. 7 is a schematic diagram of a structure of a device for transmitting service data provided by an embodiment of the present application. The device 700 for transmitting service data can be applied to a terminal device, and the device 700 for transmitting service data can include a first determining module 710, a second determining module 720, a sending module 730, and an acquiring module 740.
[0074] The first determination module 710 may be configured to determine a target service, where the target service is a plurality of services running on the terminal device.
[0075] The second determining module 720 may be configured to determine an allocatable bandwidth of the target service according to the quality of service requirement of the target service.
[0076] The sending module 730 may be configured to send a report request of the allocatable bandwidth of the target service to the server.
[0077] The acquisition module 740 may be configured to acquire the service data of the target service sent by the server; wherein the service quality of the service data corresponds to the feedback request.
[0078] Optionally, the service quality requirement of the target service is associated with a first condition parameter, and the first condition parameter includes one or more of the following parameters: service priority, data buffer status of the service, network status, and service experience of the service.
[0079] Optionally, the second determination module 720 is used to: determine the bandwidth requirement of the target service according to the first condition parameter; and perform bandwidth allocation of the target service according to the bandwidth requirement of the target service to obtain the allocatable bandwidth of the target service.
[0080] Optionally, determining the bandwidth requirement of the target service according to the first condition parameter includes: determining the bandwidth requirement of the target service using a heuristic algorithm and / or a machine learning algorithm according to the first condition parameter.
[0081] Optionally, the device 700 also includes: an updating module 750, which is used to iteratively update the machine learning model in the machine learning algorithm according to the prediction error of the bandwidth requirement of the target business after determining the bandwidth requirement of the target business using the machine learning algorithm.
[0082] Optionally, the device 700 also includes: a deployment module 760, which is used to receive a trained machine learning model from the server and deploy the machine learning model in the terminal device before using the machine learning algorithm to determine the bandwidth requirement of the target service.
[0083] Optionally, the target service includes a first target service, which is a video service. The device 700 also includes: a third determination module 770, which is used to determine the bit rate requirement of the first target service according to the allocatable bandwidth of the first target service after determining the allocatable bandwidth of the target service; the sending module 730 is used to send a report request for the bit rate requirement of the first target service to the server.
[0084] Optionally, the target service includes a second target service, and the second determination module 720 is used to: determine the allocatable bandwidth of the second target service according to the service quality requirement of the second target service; determine the allocatable bandwidth of the remaining service according to the remaining bandwidth and the service quality requirement of the remaining service; wherein the remaining bandwidth is the bandwidth in the total downlink bandwidth of the terminal device excluding the allocatable bandwidth of the second target service, and the remaining service is the service in the target service excluding the second target service.
[0085] Optionally, the device 700 also includes: a prediction module 780, which is used to predict the network state of the terminal device according to the mobility state of the terminal device before determining the allocatable bandwidth of the target service to obtain a first network state; wherein the first network state is the network state of the terminal device at the next moment.
[0086] Combine the following Figure 8 This is an introduction to a terminal device 800 in an embodiment of the present application. The terminal device 800 can be used to implement the method described in the above method embodiment.
[0087] It should be understood that the terminal device 800 can be applied to any type of terminal device mentioned above.
[0088] The terminal device 800 may include one or more processors 810. The processor 810 may support the terminal device 800 to implement the method described in the above method embodiment.
[0089] The processor 810 may be a general-purpose processor or a special-purpose processor. For example, the processor may be a central processing unit (CPU). Alternatively, the processor may be other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or the processor may be any conventional processor, etc.
[0090] The terminal device 800 may further include one or more memories 820. The memory 820 stores a program, which can be executed by the processor 810 to control the terminal device 800 to execute the method described in the above method embodiment. The memory 820 may be independent of the processor 810 or integrated in the processor 810.
[0091] The memory 820 may be a volatile memory or a nonvolatile memory, or may include both volatile and nonvolatile memories. Among them, the nonvolatile memory may be a read only memory (ROM), a programmable ROM (PROM), an erasable programmable ROM (EPROM), an electrically erasable programmable ROM (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example but not limitation, the memory 820 may also be various types of random access memory (RAM), such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous-link DRAM (SLDRAM) and direct ram-bus RAM (DR RAM).
[0092] The terminal device 800 may further include a transceiver 830. The processor 810 may communicate with other devices through the transceiver 830. For example, the processor 810 may perform data transmission and reception with other devices through the transceiver 830.
[0093] The present application also provides a chip in an embodiment, including a processor, which can be used to call and run a computer program from a memory, so that a device equipped with the chip performs the method described in the above method embodiment. It is understood that the processor can be any type of processor mentioned above. It is understood that the memory can be independent of the chip or integrated in the chip.
[0094] The embodiment of the present application also provides a machine-readable storage medium for storing a program, and the program enables a computer to execute the method in each embodiment of the present application.
[0095] The embodiment of the present application also provides a computer program product. The computer program product includes a program. The program enables a computer to execute the method in each embodiment of the present application.
[0096] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any other combination. When implemented by software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present disclosure is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a machine-readable storage medium, or transmitted from one machine-readable storage medium to another machine-readable storage medium. For example, the computer instructions can be transmitted from a website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (Digital Subscriber Line, DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center. The machine-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrations. The available medium may be a magnetic medium (eg, a floppy disk, a hard disk, a magnetic tape), an optical medium (eg, a digital video disc (DVD)), or a semiconductor medium (eg, a solid state disk (SSD)).
[0097] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments of the present disclosure can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the present disclosure.
[0098] In the several embodiments provided in the present disclosure, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0099] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0100] In addition, each functional unit in each embodiment of the present disclosure may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0101] The above is only a specific embodiment of the present disclosure, but the protection scope of the present disclosure is not limited thereto. Any person skilled in the art who is familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present disclosure, which should be included in the protection scope of the present disclosure. Therefore, the protection scope of the present disclosure should be based on the protection scope of the claims.
Claims
1. A method for transmitting service data, characterized in that: Applied to a terminal device, the method comprises: Determine a target service, where the target service is a plurality of services running on the terminal device; Determining the allocatable bandwidth of the target service according to the service quality requirement of the target service; Sending a report request of the allocatable bandwidth of the target service to the server; Acquire the service data of the target service sent by the server; The service quality of the business data corresponds to the return request.
2. The method according to claim 1, characterized in that The quality of service requirement of the target service is associated with a first condition parameter, and the first condition parameter includes one or more of the following parameters: Business priority, business data buffer status, network status, and business service experience.
3. The method according to claim 2, characterized in that The determining, according to the quality of service requirement of the target service, the allocatable bandwidth of the target service comprises: Determining the bandwidth requirement of the target service according to the first condition parameter; According to the bandwidth requirement of the target service, bandwidth allocation of the target service is performed to obtain the allocatable bandwidth of the target service.
4. The method according to claim 3, characterized in that The determining, according to the first condition parameter, the bandwidth requirement of the target service includes: Based on the first condition parameter, a heuristic algorithm and / or a machine learning algorithm is used to determine the bandwidth requirement of the target service.
5. The method according to claim 4, characterized in that After determining the bandwidth requirement of the target service using the machine learning algorithm, the method includes: The machine learning model in the machine learning algorithm is iteratively updated according to the prediction error of the bandwidth demand of the target business.
6. The method according to claim 4, characterized in that Before using the machine learning algorithm to determine the bandwidth requirement of the target service, the method includes: Receive a trained machine learning model from the server and deploy the machine learning model in the terminal device.
7. The method according to claim 1, characterized in that The target service includes a first target service, the first target service is a video service, and after determining the allocatable bandwidth of the target service, the method further includes: Determining a bit rate requirement of the first target service according to the allocatable bandwidth of the first target service; The sending a report request of the allocatable bandwidth of the target service to the server includes: Sending a report request for the bit rate requirement of the first target service to the server.
8. The method according to claim 1, characterized in that The target service includes a second target service, and determining the allocatable bandwidth of the target service according to the service quality requirement of the target service includes: determining, according to the quality of service requirement of the second target service, an allocatable bandwidth of the second target service; Determining the allocatable bandwidth for the remaining services according to the remaining bandwidth and the service quality requirements of the remaining services; The remaining bandwidth is the bandwidth of the total downlink bandwidth of the terminal device excluding the allocatable bandwidth of the second target service, and the remaining services are the services in the target services excluding the second target service.
9. The method according to claim 2, characterized in that: Before determining the allocatable bandwidth of the target service, the method further includes: Predicting a network state of the terminal device according to a mobile state of the terminal device to obtain a first network state; The first network status is the network status of the terminal device at the next moment.
10. A device for transmitting service data, characterized in that: The device is applied to a terminal device, and the device includes: A first determination module, used to determine a target service, where the target service is a plurality of services running on the terminal device; A second determining module, configured to determine an allocatable bandwidth of the target service according to a quality of service requirement of the target service; A sending module, used for sending a report request of the allocatable bandwidth of the target service to the server; An acquisition module, used for acquiring the service data of the target service sent by the server; The service quality of the business data corresponds to the return request.
11. A chip, characterized in that: include: A processor, configured to call and run a computer program from a memory, so that a device equipped with the chip executes a method as claimed in any one of claims 1 to 9.
12. A terminal device, characterized in that: include: A processor, a memory and a transceiver, wherein the memory is used to store a computer program, and the processor is used to call and run the computer program stored in the memory to control the terminal device to execute the method as described in any one of claims 1 to 9.
13. A computer-readable storage medium having executable code stored thereon, characterized in that: The code is used to implement the method according to any one of claims 1 to 9.
Citation Information
Patent Citations
Signal intensity-based mobile network multi-link bandwidth distribution method and device
CN105898799A
Method and apparatus for providing video service in communication system
CN107852519A
Bandwidth allocation using machine learning
US20210204300A1