Transmission control method, device, transmission end and system applied to multiple tasks
By judging and performing delayed transmission operations in a multi-task transmission scenario, the problem of large tasks occupies bandwidth and reducing transmission efficiency of small tasks is solved, and the balanced transmission of tasks and the overall transmission efficiency are improved.
Patent Information
- Application Number
- CN202411857880.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-16
- Publication Date
- 2025-05-09
AI Technical Summary
In multi-task transmission scenarios, large tasks occupy bandwidth, resulting in a reduction in the transmission efficiency of small tasks, and the failure to achieve balanced transmission of tasks, affecting the overall transmission efficiency.
By determining whether there are tasks that require delayed transmission, perform delayed transmission operations, and prioritize bandwidth to other tasks that require priority transmission, ensuring the transmission efficiency of small tasks.
It realizes the efficiency of small tasks to transfer files, and the balanced transmission of large and small tasks, which improves the overall transmission efficiency and bandwidth resource utilization.
Smart Images

Figure CN119966976A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of data transmission, and in particular to a transmission control method, device, transmission terminal and system applied to multiple tasks. Background Art
[0002] Based on the needs of data sharing and collaboration, data security, data preservation, etc., it is often necessary to transfer data to storage devices, such as NAS devices, for data preservation and backup.
[0003] Currently, clients transfer files to storage devices via https and http. The specific transmission methods are as follows: file streaming is used for file transfer, that is, the file transfer of the next task is started only after the file transfer of the current task is completed; when multiple tasks are started, multiple http or https requests share bandwidth for file transfer.
[0004] However, practice has found that for multi-task transmission, when there is a large task with a much larger data volume than other tasks, the large task will occupy a lot of bandwidth during the file transmission process, resulting in less bandwidth allocated to small tasks to transmit files, thereby reducing the efficiency of small tasks to transmit files, and failing to achieve balanced transmission of each task, affecting the overall transmission efficiency. Summary of the invention
[0005] The present invention provides a transmission control method, device, transmission terminal and system applied to multiple tasks, which can ensure the efficiency of small task file transmission, realize balanced transmission of large and small tasks, and improve the overall transmission efficiency.
[0006] In order to solve the above technical problems, the first aspect of the present invention discloses a transmission control method applied to multiple tasks, the method is applied to a data transmission end, and the method comprises:
[0007] When there are multiple first tasks that need to perform concurrent transmission operations, determining whether there is a second task of a predetermined target task type among all the first tasks, where the task of the target task type is a task that requires delayed transmission;
[0008] When it is determined that the second task exists, a delayed transmission operation is performed on the second task, and a priority transmission operation is performed on all tasks that need to be transmitted with priority;
[0009] Among them, all the tasks that need to be transmitted first include all the other first tasks among all the first tasks except the second task.
[0010] As an optional implementation manner, in the first aspect of the present invention, performing a delayed transmission operation on the second task includes:
[0011] Determine a corresponding transmission delay duration for the second task, and when it is monitored that the real time reaches the deadline of the transmission delay duration corresponding to the second task, perform a transmission operation on the second task, wherein before the real time reaches the deadline of the transmission delay duration corresponding to the second task, perform a transmission operation on all tasks that need to be transmitted first; or,
[0012] When it is detected that all the tasks that need to be transmitted first have been transmitted, a transmission operation is performed on the second task; or,
[0013] In the process of performing transmission operations on all the tasks that need to be transmitted first, monitor the first bandwidth of the network during the task transmission process and the second bandwidth required for all tasks that have not completed transmission except the second task; calculate the bandwidth difference between the first bandwidth and the second bandwidth, and determine whether the bandwidth difference is greater than a preset bandwidth value; when it is determined that the bandwidth difference is greater than the preset bandwidth value, perform the transmission operation on the second task.
[0014] As an optional embodiment, in the first aspect of the present invention, the method further comprises:
[0015] When it is determined that the second task exists, monitoring task data of all third tasks, where all the third tasks include all tasks to be transmitted in the task list and / or all the first tasks other than the second task in all the first tasks;
[0016] Based on the task data of all the third tasks, determine whether the current transmission conditions meet the delay setting conditions of the tasks of the target task type determined in advance. When it is determined that the delay setting conditions are met, trigger the execution of the delayed transmission operation for the second task, and perform the priority transmission operation on all tasks that need priority transmission.
[0017] As an optional implementation manner, in the first aspect of the present invention, judging whether the current transmission condition satisfies the predetermined delay setting condition of the task of the target task type according to the task data of all the third tasks includes:
[0018] When all the third tasks include all the tasks to be transmitted in the task list, the task data of all the third tasks include the task quantity, determining whether the task quantity of all the third tasks is greater than or equal to the preset task quantity, and when it is determined that it is greater than or equal to the preset task quantity, determining that the current transmission condition satisfies the delay setting condition of the task of the target task type determined in advance;
[0019] When all the third tasks include all the tasks to be transmitted in the task list and / or all the first tasks other than the second task in all the first tasks, the task data of all the third tasks include the task urgency of each of the third tasks, the task urgency of the second task is determined, and it is judged whether the task urgency of each of the third tasks in all the third tasks is less than the task urgency of the second task; when it is judged that there is a third task among all the third tasks whose task urgency is greater than or equal to the task urgency of the second task, it is determined that the current transmission condition meets the delay setting condition of the task of the target task type determined in advance.
[0020] As an optional implementation manner, in the first aspect of the present invention, setting a corresponding transmission delay duration for the second task includes:
[0021] According to the task data of all the third tasks, setting a corresponding transmission delay duration for the second task;
[0022] The task data of all the third tasks include one or more of the task quantity of all the third tasks, the data length of all the third tasks, the task urgency of all the third tasks, and the task function type of all the third tasks.
[0023] As an optional embodiment, in the first aspect of the present invention, the method further comprises:
[0024] Obtaining data lengths of all fourth tasks, where all the fourth tasks include all the first tasks;
[0025] For any of the fourth tasks, a task type of the fourth task is determined according to a data length of the fourth task.
[0026] As an optional embodiment, in the first aspect of the present invention, the method further comprises:
[0027] Acquire the transmission data volume of each of the fifth tasks in the same preset transmission time period among the plurality of fifth tasks that have completed the transmission operation;
[0028] Calculate a third bandwidth within the preset transmission duration segment according to the preset transmission duration segment and the transmission data volumes corresponding to all the fifth tasks;
[0029] Wherein, for any of the fourth tasks, determining the task type of the fourth task according to the data length of the fourth task includes:
[0030] For any of the fourth tasks, a task type of the fourth task is determined according to the data length of the fourth task and the third bandwidth.
[0031] A second aspect of the present invention discloses a transmission control device applied to multiple tasks, the device is applied to a data transmission end, and the device comprises:
[0032] A judgment module, used for judging whether there is a second task of a predetermined target task type among all the first tasks when there are multiple first tasks that need to perform concurrent transmission operations, and the task of the target task type is a task that needs delayed transmission;
[0033] A transmission module, configured to, when determining that the second task exists, perform a delayed transmission operation on the second task, and perform a priority transmission operation on all tasks that need to be transmitted with priority;
[0034] Among them, all the tasks that need to be transmitted first include all the other first tasks among all the first tasks except the second task.
[0035] As an optional implementation, in the second aspect of the present invention, the specific manner in which the transmission module performs the delayed transmission operation on the second task includes:
[0036] Determine a corresponding transmission delay duration for the second task, and when it is monitored that the real time reaches the deadline of the transmission delay duration corresponding to the second task, perform a transmission operation on the second task, wherein before the real time reaches the deadline of the transmission delay duration corresponding to the second task, perform a transmission operation on all tasks that need to be transmitted first; or,
[0037] When it is detected that all the tasks that need to be transmitted first have been transmitted, a transmission operation is performed on the second task; or,
[0038] In the process of performing transmission operations on all tasks that need to be transmitted first, monitoring a first bandwidth of the network during task transmission and a second bandwidth required by all tasks that have not completed transmission except the second task; calculating a bandwidth difference between the first bandwidth and the second bandwidth, and determining whether the bandwidth difference is greater than a preset bandwidth value; and performing a transmission operation on the second task when it is determined that the bandwidth difference is greater than the preset bandwidth value;
[0039] Among them, all the tasks that need to be transmitted first include all the other first tasks among all the first tasks except the second task.
[0040] As an optional implementation, in the second aspect of the present invention, the device further includes:
[0041] A monitoring module, configured to monitor task data of all third tasks when it is determined that the second task exists, wherein all the third tasks include all tasks to be transmitted in a task list and / or all the first tasks other than the second task in all the first tasks;
[0042] The judgment module is used to judge whether the current transmission conditions meet the delay setting conditions of the tasks of the target task type determined in advance based on the task data of all the third tasks. When it is judged that the delay setting conditions are met, the transmission module is triggered to execute the delayed transmission operation on the second task, and to perform the priority transmission operation on all tasks that need priority transmission.
[0043] As an optional implementation, in the second aspect of the present invention, the specific implementation of the judgment module judging whether the current transmission condition satisfies the predetermined delay setting condition of the task of the target task type according to the task data of all the third tasks includes:
[0044] When all the third tasks include all the tasks to be transmitted in the task list, the task data of all the third tasks include the task quantity, determining whether the task quantity of all the third tasks is greater than or equal to the preset task quantity, and when it is determined that it is greater than or equal to the preset task quantity, determining that the current transmission condition satisfies the delay setting condition of the task of the target task type determined in advance;
[0045] When all the third tasks include all the tasks to be transmitted in the task list and / or all the first tasks other than the second task in all the first tasks, the task data of all the third tasks include the task urgency of each of the third tasks, the task urgency of the second task is determined, and it is judged whether the task urgency of each of the third tasks in all the third tasks is less than the task urgency of the second task; when it is judged that there is a third task among all the third tasks whose task urgency is greater than or equal to the task urgency of the second task, it is determined that the current transmission condition meets the delay setting condition of the task of the target task type determined in advance.
[0046] As an optional implementation, in the second aspect of the present invention, the specific manner in which the transmission module sets the corresponding transmission delay duration for the second task includes:
[0047] According to the task data of all the third tasks, setting a corresponding transmission delay duration for the second task;
[0048] The task data of all the third tasks include one or more of the task quantity of all the third tasks, the data length of all the third tasks, the task urgency of all the third tasks, and the task function type of all the third tasks.
[0049] As an optional implementation, in the second aspect of the present invention, the device further includes:
[0050] An acquisition module, used for acquiring data lengths of all fourth tasks, where all the fourth tasks include all the first tasks;
[0051] A determination module is used to determine, for any of the fourth tasks, a task type of the fourth task according to the data length of the fourth task.
[0052] As an optional implementation, in the second aspect of the present invention, the acquisition module is further used to acquire the transmission data volume of each of the fifth tasks in the same preset transmission time period among the multiple fifth tasks that have completed the transmission operation;
[0053] The device also includes:
[0054] A calculation module, configured to calculate a third bandwidth within the preset transmission duration segment according to the preset transmission duration segment and the transmission data volumes corresponding to all the fifth tasks;
[0055] Wherein, for any of the fourth tasks, the specific manner in which the determination module determines the task type of the fourth task according to the data length of the fourth task includes:
[0056] For any of the fourth tasks, a task type of the fourth task is determined according to the data length of the fourth task and the third bandwidth.
[0057] A third aspect of the present invention discloses a data transmission terminal, the data transmission terminal comprising:
[0058] A memory storing executable program code;
[0059] a processor coupled to the memory;
[0060] The processor calls the executable program code stored in the memory to execute part or all of the steps in any one of the transmission control methods applied to multi-tasking disclosed in the first aspect of the present invention.
[0061] The fourth aspect of the present invention discloses a computer storage medium, which stores computer instructions. When the computer instructions are called, they are used to execute part or all of the steps in any one of the transmission control methods applied to multi-tasking disclosed in the first aspect of the present invention.
[0062] The fifth aspect of the present invention discloses a transmission control system, which includes a data transmission end and a data receiving end, wherein the data transmission end and the data receiving end are connected via wired communication or wireless communication, and the data transmission end is used to transmit the data in the task to the data receiving end by executing part or all of the steps in any one of the transmission control methods applied to multiple tasks disclosed in the first aspect of the present invention.
[0063] Compared with the prior art, the embodiments of the present invention have the following beneficial effects:
[0064] In an embodiment of the present invention, when multiple tasks need to perform concurrent transmission operations, by analyzing all tasks, when there is a task that needs delayed transmission, such as a task with a relatively long data length, it is automatically delayed for transmission, and bandwidth is given priority to other tasks, so that other tasks have priority in performing transmission operations, which can ensure the efficiency of small task file transmission, achieve balanced transmission of large and small tasks, improve overall transmission efficiency and improve the utilization of bandwidth resources. BRIEF DESCRIPTION OF THE DRAWINGS
[0065] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0066] Figure 1 It is a flow chart of a transmission control method applied to multiple tasks disclosed in an embodiment of the present invention;
[0067] Figure 2 It is a flow chart of another transmission control method applied to multiple tasks disclosed in an embodiment of the present invention;
[0068] Figure 3 It is a structural schematic diagram of a transmission control device applied to multiple tasks disclosed in an embodiment of the present invention;
[0069] Figure 4 is a structural schematic diagram of another transmission control device applied to multiple tasks disclosed in an embodiment of the present invention;
[0070] Figure 5 It is a structural schematic diagram of a data transmission terminal disclosed in an embodiment of the present invention;
[0071] Figure 6 It is a structural schematic diagram of a transmission control system disclosed in an embodiment of the present invention. DETAILED DESCRIPTION
[0072] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, 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.
[0073] The terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish different objects rather than to describe a specific order. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, device, product or end including a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units that are not listed, or may optionally include other steps or units inherent to these processes, methods, products or ends.
[0074] Reference to "embodiments" herein means that a particular feature, structure, or characteristic described in conjunction with the embodiments may be included in at least one embodiment of the present invention. The appearance of the phrase in various places in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein may be combined with other embodiments.
[0075] The present invention discloses a transmission control method, device, transmission terminal and system applied to multiple tasks. When multiple tasks need to perform concurrent transmission operations, by analyzing all tasks, when there is a task that needs delayed transmission, such as a task with a relatively long data length, it is automatically delayed for transmission, and the bandwidth is given priority to other tasks, so that other tasks perform transmission operations first, which can ensure the efficiency of small task file transmission, achieve balanced transmission of large and small tasks, improve overall transmission efficiency and improve bandwidth resource utilization. The transmission control method, device, transmission terminal and system applied to multiple tasks described in the present invention are described in detail below.
[0076] Embodiment 1
[0077] See also Figure 1 , Figure 1 is a flow chart of a transmission control method for multi-tasks disclosed in an embodiment of the present invention. Figure 1The described method can be applied to a data transmission terminal, wherein the data transmission terminal can include but is not limited to a smart phone (Android phone, iOS phone, etc.), a smart phone watch, a desktop computer, a tablet computer, a PDA, and a mobile Internet device (Mobile Internet Device, MID) and other client terminals. Figure 1 As shown, the method may include the following operations:
[0078] 101. When multiple first tasks need to perform concurrent transmission operations, determine whether there is a second task of a predetermined target task type among all the first tasks, where the task of the target task type is a task that requires delayed transmission.
[0079] In the embodiment of the present invention, optionally, words such as upload, send, etc. that express the meaning of data from one end to another end can be understood as transmission, and the embodiment of the present invention does not limit this.
[0080] In an embodiment of the present invention, optionally, tasks can be divided according to data length and / or transmission time and / or urgency and / or importance. Among them, the shorter the data length and / or transmission time and / or the greater the urgency and / or importance, the higher the priority of transmission. Further optionally, the longer the data length and / or transmission time, the more data volume the task has. For example, the type of task can include a first task type (also called a large task) or a second task type (also called an ordinary task), wherein the data length or transmission time corresponding to the first task type is greater than the data length or transmission time of the second task type. Further optionally, the target task type is the first task type. Further optionally, each task has a corresponding identifier, and the corresponding task can be quickly found through the corresponding identifier.
[0081] In the embodiment of the present invention, further optionally, there is a task queue model, which is composed of a task list and a model function. Wherein, the task list is used to store the tasks to be transmitted, and is used to manage the state and transmission order of each task, wherein the state of each task includes one of a pending state, a ready state, a transmitting state and a completed transmission state. It should be noted that for a newly created task, its state is a pending state. The model function is used to store and manage multiple task instance objects, support the scheduling of parallel tasks, that is, to extract tasks from the task list according to the transmission order for transmission and change the state of the task. Optionally, each task can correspond to a file (which can also be understood as a piece of data), or it can correspond to multiple files. When selecting a task to be transmitted, it can be selected by the task identifier or the identifier of the file in the task. Wherein, the file to be transmitted can be automatically selected by the user or automatically selected by the data transmission end.
[0082] 102. When it is determined that there is a second task, a delayed transmission operation is performed on the second task, and a priority transmission operation is performed on all tasks that need to be transmitted in priority; wherein all tasks that need to be transmitted in priority include all first tasks except the second task among all first tasks.
[0083] In the embodiment of the present invention, optionally, when it is determined that there is no second task, all first tasks are transmitted simultaneously. Or optionally, when it is determined that there is no second task, the importance and / or urgency corresponding to each task in the task list and each first task in all first tasks are determined, and based on the importance and / or urgency corresponding to each task in the task list and each first task, it is determined whether there is a task in the task list whose importance and / or urgency is greater than the importance and / or urgency corresponding to all first tasks, and when it is determined that there is, at least one target task whose importance and / or urgency is greater than the importance and / or urgency corresponding to all first tasks is screened out from the task list, and the transmission operation is performed preferentially on the target task. In this way, in addition to considering the amount of data for each task, the urgency and / or importance of each task are also comprehensively considered, so as to realize the orderly and accurate transmission of tasks while dynamically consuming bandwidth (memory), reduce the bandwidth occupied by non-urgent and / or unimportant tasks, and affect the transmission efficiency.
[0084] The function corresponding to each task in the task list, the function corresponding to each first task, and the importance of all first tasks are determined according to the function corresponding to each first task.
[0085] In the embodiment of the present invention, further optionally, all the tasks that need to be transmitted with priority also include tasks whose task types in the task list are non-target task types.
[0086] In the embodiment of the present invention, optionally, during the task transmission process, if it is detected that there is a task that has been transmitted, then the task with the ready status is obtained from the task list, added to the concurrent transmission queue, and the transmission operation is performed. It should be noted that, optionally, for the task that needs to be transmitted, if the task is a task of the target task type, it is also necessary to perform the same process as the first task.
[0087] In an embodiment of the present invention, optionally, for any task that needs to be transmitted, the task is data-sliced to obtain at least one group of data slices, and the data slices are read into the cache for transmission. Optionally, for each group of data slices, it is necessary to determine whether the type of task corresponding to the data slice is the target task type, or, when the first group of data slices of each task is transmitted, the task type is confirmed, and no confirmation is performed subsequently. Optionally, after confirming the corresponding task type, the transmission delay duration setting operation is performed and different types of task transmissions are performed based on the transmission delay duration. For details, see the relevant description of the above steps 101-step 102 and other relevant descriptions in this specific implementation.
[0088] It can be seen that the method described in the embodiment of the present invention analyzes all tasks when there are multiple tasks that need to perform concurrent transmission operations. When there is a task that needs delayed transmission, such as a task with a relatively long data length, it is automatically delayed for transmission, and the bandwidth is given priority to other tasks, so that other tasks have priority in performing transmission operations. This can ensure the efficiency of small tasks in transmitting files, achieve balanced transmission of large and small tasks, improve overall transmission efficiency, and improve the utilization of bandwidth resources.
[0089] In the embodiment of the present invention, optionally, performing a delayed transmission operation on the second task includes:
[0090] Determine a corresponding transmission delay duration for the second task, and when it is monitored that the real time reaches the cut-off time of the transmission delay duration corresponding to the second task, perform a transmission operation on the second task, wherein before the real time reaches the cut-off time of the transmission delay duration corresponding to the second task, perform a transmission operation on all tasks that need to be transmitted first; or,
[0091] When it is detected that all the tasks that need to be transmitted first have been transmitted, the transmission operation is performed on the second task; or,
[0092] In the process of performing transmission operations on all tasks that need to be transmitted with priority, monitoring a first bandwidth of the network during the task transmission process and a second bandwidth required by all tasks that have not completed transmission except the second task; calculating a bandwidth difference between the first bandwidth and the second bandwidth, and determining whether the bandwidth difference is greater than a preset bandwidth value; and performing a transmission operation on the second task when it is determined that the bandwidth difference is greater than the preset bandwidth value;
[0093] In the embodiment of the present invention, optionally, all tasks that need to be transmitted with priority include all other first tasks among all first tasks except the second task.
[0094] In the embodiment of the present invention, optionally, if during the transmission process, only tasks of the target task type exist, the transmission delay duration is canceled, and all bandwidths are provided to the tasks of the target task type for full transmission. Further optionally, when all other tasks are transmitted, or during the transmission process, it is indicated that other remaining tasks do not need to be transmitted, it means that during the transmission process, only tasks of the target task type exist.
[0095] In the embodiment of the present invention, when it is determined that the bandwidth difference is greater than the preset bandwidth value, the transmission operation is performed on the second task, which can be understood as: according to the bandwidth difference, a data block with a data volume matching the bandwidth difference is obtained from the second task, and the transmission operation is performed on the data block. And when waiting for all other tasks to complete transmission, all bandwidth is given to the second task for transmission.
[0096] It can be seen that the embodiment of the present invention can also automatically set a corresponding transmission delay duration for the task that needs delayed transmission, and give the bandwidth to other tasks before the deadline of the corresponding transmission delay duration is reached at real time. When the transmission delay duration is reached, or after monitoring that the transmission of other tasks is completed, the task that needs delayed transmission is transmitted, or by comparing the bandwidth required by other tasks during the transmission process with the bandwidth that the network can provide, if there is a large idle bandwidth, partial data transmission is performed on the task that needs delayed transmission at the same time, and if the idle bandwidth is small, the task that needs delayed transmission is still transmitted until the transmission delay duration ends, that is, the task that needs delayed transmission is transmitted in a variety of ways, while ensuring that sufficient bandwidth is given to other tasks so that other tasks can be transmitted efficiently, the transmission efficiency of the delayed transmission task is further improved, the utilization rate of bandwidth resources is further improved, and the overall transmission efficiency of all tasks is improved.
[0097] In an optional embodiment, the method may further include the following steps:
[0098] When it is determined that the second task exists, monitoring task data of all third tasks, where all third tasks include all tasks to be transmitted in the task list and / or all first tasks other than the second task in all first tasks;
[0099] Based on the task data of all third tasks, determine whether the current transmission conditions meet the delay setting conditions of the task of the target task type determined in advance. When it is determined that the delay setting conditions are met, trigger the execution of the above-mentioned delayed transmission operation for the second task, and perform the priority transmission operation on all tasks that need priority transmission.
[0100] In this optional embodiment, optionally, judging whether the current transmission condition satisfies the delay setting condition of the task of the predetermined target task type according to the task data of all third tasks includes:
[0101] When all the third tasks include all the tasks to be transmitted in the task list, the task data of all the third tasks include the task quantity, and whether the task quantity of all the third tasks is greater than or equal to the preset task quantity is determined. When it is determined that it is greater than or equal to the preset task quantity (such as 2), it is determined that the current transmission condition meets the delay setting condition of the task of the predetermined target task type;
[0102] When all third tasks include all tasks to be transmitted in the task list and / or all first tasks except the second task among all first tasks, the task data of all third tasks include the task urgency of each third task, the task urgency of the second task is determined, and it is judged whether the task urgency of each third task among all third tasks is less than the task urgency of the second task; when it is judged that there is a third task among all third tasks whose task urgency is greater than or equal to the task urgency of the second task, it is determined that the current transmission condition meets the delay setting condition of the task of the target task type determined in advance.
[0103] In this optional embodiment, optionally, when it is determined that the number of tasks is less than a preset number, or when it is determined that the urgency of the second task is the greatest, it is determined that the delay setting condition is not met.
[0104] It can be seen that when this optional embodiment determines that there is a task that needs to set a delay among all the tasks currently being transmitted concurrently, it further combines the task data of other tasks currently being transmitted concurrently and the tasks to be transmitted in the task list to determine the delay setting conditions, which can improve the execution accuracy and reliability of the transmission delay setting operation, thereby helping to further improve the accuracy of bandwidth resource concessions, and further help to further improve the overall transmission efficiency of all tasks; and by determining the delay setting conditions based on the task volume of the task to be transmitted and / or the urgency of the task to be transmitted and other tasks being transmitted concurrently, it can improve the judgment efficiency and accuracy of the delay setting conditions, thereby helping to further improve the setting accuracy of the transmission delay duration.
[0105] In another optional embodiment, optionally, setting a corresponding transmission delay duration for the second task includes:
[0106] According to the task data of all third tasks, a corresponding transmission delay duration is set for the second task;
[0107] The task data of all third tasks include one or more of the task quantity of all third tasks, the data length of all third tasks, the task urgency of all third tasks, and the task function type of all third tasks.
[0108] In this optional embodiment, optionally, the more the number of tasks is and / or the larger the data length is and / or the more urgent the task is, the longer the transmission delay duration is. Further optionally, it should be noted that, since new tasks can be added to the task list, the tasks to be transmitted in the task list can be added to the concurrent transmission queue for transmission, and there are tasks that have been transmitted. Therefore, its second task, all the third tasks and the corresponding task data are a dynamic process, that is, the transmission delay duration is a dynamic value.
[0109] It can be seen that this optional embodiment can improve the accuracy of setting the dynamic transmission delay duration by dynamically setting the transmission delay duration based on the task to be transmitted and / or the number of tasks and / or data length and / or urgency of other tasks to be transmitted concurrently, thereby facilitating further improving the accuracy of giving way to bandwidth resources.
[0110] In yet another optional embodiment, the method may further include the following steps:
[0111] Determine the task categories of multiple tasks that need to be transmitted with priority, and obtain the task category of each sixth task among all sixth tasks that have completed transmission within another preset time period (such as 3 hours), wherein the end time of the other preset time period is any time before the current time;
[0112] According to the task categories of the multiple tasks that need to be transmitted with priority and the task category of each sixth task in all the sixth tasks, it is determined whether there is a target task of the same task category as that in the multiple tasks that need to be transmitted with priority among all the sixth tasks;
[0113] When the result is yes, all target tasks are filtered out from all sixth tasks, and the data transmission volume and corresponding data transmission status of each target task are obtained; according to the data transmission volume of each target task, the corresponding data transmission status and the data transmission volume of multiple tasks that need to be transmitted first, the transmission delay duration or the second bandwidth corresponding to the second task is corrected.
[0114] In this optional embodiment, optionally, according to the data transmission volume of each target task, the corresponding data transmission situation and the data transmission volume of multiple tasks that need to be transmitted first, the transmission delay duration or the second bandwidth corresponding to the second task is corrected, including:
[0115] Calculating a first average data transmission volume of data transmission volumes of all target tasks, and calculating a second average data transmission volume of data transmission volumes of multiple tasks that need to be transmitted preferentially;
[0116] The data transmission volume difference between the second mean data transmission volume and the first mean data transmission volume is calculated, and the transmission delay duration or the second bandwidth corresponding to the second task is corrected according to the data transmission volume difference and the data transmission conditions corresponding to all target tasks.
[0117] Furthermore, the network quality status within another preset time period and the current network quality status can also be obtained, and the two can be compared to obtain a network quality comparison result, and then combined with the network quality comparison result, the transmission delay duration or the second bandwidth corresponding to the second task can be corrected. Among them, the network quality status can be determined by the data transmission status corresponding to each sixth task in all the sixth tasks or has been pre-stored, wherein the description of the data transmission status corresponding to each sixth task is detailed in the data transmission status corresponding to each target task. The current network quality status is obtained by measuring the bandwidth, throughput, packet loss rate and packet loss rate of the current network through a network testing tool.
[0118] In this optional embodiment, optionally, the data transmission situation corresponding to each target task includes one or more of data transmission delay duration, transmission delay jitter, data transmission packet loss rate and data transmission throughput.
[0119] In this optional embodiment, optionally, the larger the data transmission amount difference is or the worse the data transmission condition is, the longer the corresponding transmission delay is or the larger the second bandwidth is, but there is a corresponding limit value.
[0120] In this optional embodiment, optionally, when the result is determined to be negative, the process ends.
[0121] It can be seen that this optional embodiment corrects the transmission delay duration of the task that currently needs to be delayed by the data transmission volume and data transmission status of the tasks that have been transmitted in the past, or corrects the bandwidth required for all tasks that have not completed the transmission, so as to obtain a more accurate and reliable transmission delay duration or bandwidth difference, which is beneficial to further improve the accuracy and reliability of the bandwidth giving way to tasks that need to be transmitted first, and further helps to further improve the overall transmission efficiency of all tasks.
[0122] Embodiment 2
[0123] See also Figure 2 , Figure 2 FIG. 1 is a flow chart of another transmission control method for multi-task disclosed in an embodiment of the present invention. Figure 2The described method can be applied to a data transmission terminal, wherein the data transmission terminal can include but is not limited to a smart phone (Android phone, iOS phone, etc.), a smart phone watch, a desktop computer, a tablet computer, a PDA, and a mobile Internet device (Mobile Internet Device, MID) and other client terminals. Figure 2 As shown, the method may include the following operations:
[0124] 201. Obtain data lengths of all fourth tasks, where all fourth tasks include all first tasks.
[0125] In the embodiment of the present invention, optionally, as long as the tasks are added to the task list (including new tasks) or removed from the task list, the task types to which they belong are analyzed.
[0126] 202. For any fourth task, determine a task type of the fourth task according to a data length of the fourth task.
[0127] In the embodiment of the present invention, optionally, after determining the task type to which the task belongs, step 203 may be triggered.
[0128] 203. When multiple first tasks need to perform concurrent transmission operations, determine whether there is a second task of a predetermined target task type among all the first tasks, where the task of the target task type is a task that requires delayed transmission.
[0129] 204. When it is determined that there is a second task, a delayed transmission operation is performed on the second task, and a priority transmission operation is performed on all tasks that need to be transmitted first; wherein all tasks that need to be transmitted first include all first tasks except the second task.
[0130] In the embodiment of the present invention, for other related descriptions of step 203-step 204, please refer to the detailed description of step 101-step 102 in the first embodiment, and the embodiment of the present invention will not be repeated here.
[0131] It can be seen that when there are multiple tasks that need to perform concurrent transmission operations, the embodiment of the present invention analyzes all tasks. When there is a task that needs delayed transmission, such as a task with a relatively long data length, it automatically delays the transmission and gives priority to other tasks, so that other tasks have priority in performing transmission operations, which can ensure the efficiency of small tasks in transmitting files, achieve balanced transmission of large and small tasks, improve overall transmission efficiency and improve bandwidth resource utilization. In addition, before performing task transmission, the tasks are first divided into types based on their data length, which is conducive to directly using the divided types to set the transmission delay duration during transmission, further improving the efficiency of setting the transmission delay duration, thereby facilitating further improving the efficiency of bandwidth giving way and improving the transmission efficiency of other tasks.
[0132] In an optional embodiment, the method may further include the following steps:
[0133] Obtaining the amount of data transmitted by each of the plurality of fifth tasks that have completed the transmission operation within the same preset transmission time period (eg, 30 seconds);
[0134] Calculate the third bandwidth within the preset transmission time segment according to the preset transmission time segment and the transmission data volume corresponding to all the fifth tasks;
[0135] For any fourth task, determining the task type of the fourth task according to the data length of the fourth task includes:
[0136] For any fourth task, a task type of the fourth task is determined according to the data length of the fourth task and the third bandwidth.
[0137] In this optional embodiment, optionally, the deadline of the preset transmission duration segment can be any time moment that has passed, and within the same preset transmission duration segment, the fifth task is dynamically changing, the amount of transmission data that each fifth task can transmit can also be dynamically changing, and the third bandwidth within the preset transmission duration segment is also dynamically changing.
[0138] In this optional embodiment, optionally, the third bandwidth can be the arithmetic mean or geometric mean or harmonic mean or weighted mean of the transmission data volume corresponding to all fifth tasks within the preset time period, such as calculating the arithmetic mean taking the preset time period of 30s as an example, the third bandwidth = (the amount of data sent by task A within 30s + the amount of data sent by task B within 30s + the amount of data sent by task C within 30s) / 30s, wherein task A, task B, and task C are tasks that have completed transmission.
[0139] In this optional embodiment, optionally, the task type of the fourth task is determined based on the data length of the fourth task and the third bandwidth, specifically: based on the data length of the fourth task divided by the third bandwidth, the corresponding task duration is obtained, and the task duration is compared with the preset task duration. If the task duration is greater than or equal to the preset task duration, the type of the task is the target task type. If the task duration is less than the preset task duration, the type of the task is the non-target task type. Taking the third bandwidth of the arithmetic mean as an example to determine the task type, the task duration = the total data length of the task / the third bandwidth. If the task duration is greater than or equal to 1 minute, it is considered to be a large task of the target task type. If the task duration is less than 1 minute, it is considered to be an ordinary task.
[0140] In this optional embodiment, optionally, the multiple fifth tasks that have completed the transmission operation can be understood as tasks that have completely completed the transmission, or can be understood as tasks that are in the process of transmission but have completed the corresponding data transmission within a preset time period.
[0141] It can be seen that this optional embodiment determines the type of task by combining the data length of the task with the data transmission bandwidth of the network in the past period of time, so that the determined task type is adapted to the network bandwidth, which is beneficial to further improve the accuracy of determining the type of task, and then help improve the accuracy of bandwidth concession execution, and further improve the overall transmission efficiency of all tasks.
[0142] Embodiment 3
[0143] See also Figure 3 , Figure 3 : is a schematic diagram of a transmission control device for multi-tasks disclosed in an embodiment of the present invention. Figure 3 The described device is applied to a data transmission terminal, wherein the data transmission terminal may include but is not limited to a smart phone (Android phone, iOS phone, etc.), a smart phone watch, a desktop computer, a tablet computer, a PDA, and a mobile Internet device (Mobile Internet Devices, MID) and other client terminals. Figure 3 As shown, the device may include:
[0144] The judging module 301 is used to judge whether there is a second task of a predetermined target task type among all the first tasks when there are multiple first tasks that need to perform concurrent transmission operations, and the task of the target task type is a task that needs delayed transmission;
[0145] The transmission module 302 is used to perform a delayed transmission operation on the second task when it is determined that there is a second task, and perform a priority transmission operation on all tasks that need to be transmitted first; wherein all tasks that need to be transmitted first include all first tasks except the second task.
[0146] It can be seen that implementation Figure 3 When there are multiple tasks that need to perform concurrent transmission operations, the described device analyzes all tasks. When there is a task that needs delayed transmission, such as a task with a relatively long data length, it automatically delays the transmission and gives priority to other tasks in bandwidth transmission, so that other tasks have priority in performing transmission operations. This can ensure the efficiency of small task file transmission, achieve balanced transmission of large and small tasks, improve overall transmission efficiency, and improve the utilization rate of bandwidth resources.
[0147] In an optional embodiment, if Figure 3 As shown, the specific manner in which the transmission module 302 performs the delayed transmission operation on the second task includes:
[0148] Determine a corresponding transmission delay duration for the second task, and when it is monitored that the real time reaches the cut-off time of the transmission delay duration corresponding to the second task, perform a transmission operation on the second task, wherein before the real time reaches the cut-off time of the transmission delay duration corresponding to the second task, perform a transmission operation on all tasks that need to be transmitted first; or,
[0149] When it is detected that all the tasks that need to be transmitted first have been transmitted, the transmission operation is performed on the second task; or,
[0150] In the process of performing transmission operations on all tasks that need to be transmitted with priority, monitoring a first bandwidth of the network during the task transmission process and a second bandwidth required by all tasks that have not completed transmission except the second task; calculating a bandwidth difference between the first bandwidth and the second bandwidth, and determining whether the bandwidth difference is greater than a preset bandwidth value; and performing a transmission operation on the second task when it is determined that the bandwidth difference is greater than the preset bandwidth value;
[0151] In the embodiment of the present invention, optionally, all tasks that need to be transmitted with priority include all other first tasks among all first tasks except the second task.
[0152] In the embodiment of the present invention, optionally, if during the transmission process, only tasks of the target task type exist, the transmission delay duration is canceled, and all bandwidths are provided to the tasks of the target task type for full transmission. Further optionally, when all other tasks are transmitted, or during the transmission process, it is indicated that other remaining tasks do not need to be transmitted, it means that during the transmission process, only tasks of the target task type exist.
[0153] In the embodiment of the present invention, when it is determined that the bandwidth difference is greater than the preset bandwidth value, the transmission operation is performed on the second task, which can be understood as: according to the bandwidth difference, a data block with a data volume matching the bandwidth difference is obtained from the second task, and the transmission operation is performed on the data block. And when waiting for all other tasks to complete transmission, all bandwidth is given to the second task for transmission.
[0154] It can be seen that the embodiment of the present invention can also automatically set a corresponding transmission delay duration for the task that needs delayed transmission, and give the bandwidth to other tasks before the deadline of the corresponding transmission delay duration is reached at real time. When the transmission delay duration is reached, or after monitoring that the transmission of other tasks is completed, the task that needs delayed transmission is transmitted, or by comparing the bandwidth required by other tasks during the transmission process with the bandwidth that the network can provide, if there is a large idle bandwidth, partial data transmission is performed on the task that needs delayed transmission at the same time, and if the idle bandwidth is small, the task that needs delayed transmission is still transmitted until the transmission delay duration ends, that is, the task that needs delayed transmission is transmitted in a variety of ways, while ensuring that sufficient bandwidth is given to other tasks so that other tasks can be transmitted efficiently, the transmission efficiency of the delayed transmission task is further improved, the utilization rate of bandwidth resources is further improved, and the overall transmission efficiency of all tasks is improved.
[0155] In another optional embodiment, Figure 4 As shown, Figure 4 FIG. 1 is a schematic diagram of another transmission control device for multi-tasking disclosed in an embodiment of the present invention. Figure 4 As shown, the device may also include:
[0156] A monitoring module 303 is used to monitor the task data of all third tasks when it is determined that the second task exists, where all third tasks include all tasks to be transmitted in the task list and / or all first tasks other than the second task in all first tasks;
[0157] The judgment module 301 is used to judge whether the current transmission condition meets the delay setting condition of the task of the target task type determined in advance based on the task data of all third tasks. When it is judged that the delay setting condition is met, the transmission module 302 is triggered to execute the above-mentioned delayed transmission operation for the second task, and to perform the priority transmission operation for all tasks that need priority transmission.
[0158] In this optional embodiment, optionally, the specific implementation of the judgment module 301 judging whether the current transmission condition satisfies the delay setting condition of the task of the predetermined target task type according to the task data of all third tasks includes:
[0159] When all the third tasks include all the tasks to be transmitted in the task list, the task data of all the third tasks include the task quantity, and whether the task quantity of all the third tasks is greater than or equal to the preset task quantity is determined. When it is determined that it is greater than or equal to the preset task quantity (such as 2), it is determined that the current transmission condition meets the delay setting condition of the task of the predetermined target task type;
[0160] When all third tasks include all tasks to be transmitted in the task list and / or all first tasks except the second task among all first tasks, the task data of all third tasks include the task urgency of each third task, the task urgency of the second task is determined, and it is judged whether the task urgency of each third task among all third tasks is less than the task urgency of the second task; when it is judged that there is a third task among all third tasks whose task urgency is greater than or equal to the task urgency of the second task, it is determined that the current transmission condition meets the delay setting condition of the task of the target task type determined in advance.
[0161] It can be seen that this optional embodiment can, when it is determined that there is a task that needs to set a delay among all the tasks currently being transmitted concurrently, further combine the task data of other tasks currently being transmitted concurrently and the tasks to be transmitted in the task list to determine the delay setting conditions, which can improve the execution accuracy and reliability of the transmission delay setting operation, thereby helping to further improve the accuracy of bandwidth resource concessions, and further help to further improve the overall transmission efficiency of all tasks; and by determining the delay setting conditions based on the task volume of the task to be transmitted and / or the urgency of the task to be transmitted and other tasks being transmitted concurrently, it can improve the judgment efficiency and accuracy of the delay setting conditions, thereby helping to further improve the setting accuracy of the transmission delay duration.
[0162] In yet another optional embodiment, the specific manner in which the transmission module 302 sets the corresponding transmission delay duration for the second task includes:
[0163] According to the task data of all third tasks, a corresponding transmission delay duration is set for the second task;
[0164] The task data of all third tasks include one or more of the task quantity of all third tasks, the data length of all third tasks, the task urgency of all third tasks, and the task function type of all third tasks.
[0165] In this optional embodiment, optionally, the more the number of tasks is and / or the larger the data length is and / or the more urgent the task is, the longer the transmission delay duration is. Further optionally, it should be noted that, since new tasks can be added to the task list, the tasks to be transmitted in the task list can be added to the concurrent transmission queue for transmission, and there are tasks that have been transmitted. Therefore, its second task, all the third tasks and the corresponding task data are a dynamic process, that is, the transmission delay duration is a dynamic value.
[0166] It can be seen that implementation Figure 4 The described device dynamically sets the transmission delay duration based on the task to be transmitted and / or the number of tasks and / or data length and / or urgency of other tasks to be transmitted concurrently, which can improve the accuracy of setting the dynamic transmission delay duration, thereby facilitating further improving the accuracy of giving way to bandwidth resources.
[0167] In yet another optional embodiment, Figure 4 As shown, the device may also include:
[0168] An acquisition module 304 is used to acquire the data length of all fourth tasks, where all fourth tasks include all first tasks;
[0169] The determination module 305 is used to determine, for any fourth task, a task type of the fourth task according to the data length of the fourth task.
[0170] It can be seen that implementation Figure 4 The described device divides the tasks into types based on their data length before performing task transmission, which is beneficial for directly using the divided types to set the transmission delay duration during transmission, further improving the efficiency of setting the transmission delay duration, thereby facilitating further improving the efficiency of bandwidth giving way and improving the transmission efficiency of other tasks.
[0171] In yet another optional embodiment, Figure 4 As shown, the acquisition module 304 is further used to acquire the transmission data volume of each fifth task in the plurality of fifth tasks that have completed the transmission operation within the same preset transmission time period (such as 30s);
[0172] like Figure 4 As shown, the device may also include:
[0173] A calculation module 306, configured to calculate a third bandwidth within a preset transmission duration segment according to the preset transmission duration segment and the transmission data volumes corresponding to all fifth tasks;
[0174] For any fourth task, the specific manner in which the determination module 305 determines the task type of the fourth task according to the data length of the fourth task includes:
[0175] For any fourth task, a task type of the fourth task is determined according to the data length of the fourth task and the third bandwidth.
[0176] In this optional embodiment, optionally, the deadline of the preset transmission duration segment can be any time moment that has passed, and within the same preset transmission duration segment, the fifth task is dynamically changing, the amount of transmission data that each fifth task can transmit can also be dynamically changing, and the third bandwidth within the preset transmission duration segment is also dynamically changing.
[0177] In this optional embodiment, optionally, the third bandwidth can be the arithmetic mean or geometric mean or harmonic mean or weighted mean of the transmission data volume corresponding to all fifth tasks within the preset time period, such as calculating the arithmetic mean taking the preset time period of 30s as an example, the third bandwidth = (the amount of data sent by task A within 30s + the amount of data sent by task B within 30s + the amount of data sent by task C within 30s) / 30s, wherein task A, task B, and task C are tasks that have completed transmission.
[0178] In this optional embodiment, optionally, the specific method for determining the task type of the fourth task by the determination module 306 according to the data length of the fourth task and the third bandwidth is as follows: based on the data length of the fourth task divided by the third bandwidth, the corresponding task duration is obtained, and the task duration is compared with the preset task duration. If the task duration is greater than or equal to the preset task duration, the type of the task is the target task type. If the task duration is less than the preset task duration, the type of the task is the non-target task type. Taking the third bandwidth of the arithmetic mean as an example to determine the task type, the task duration = the total data length of the task / the third bandwidth. If the task duration is greater than or equal to 1 minute, it is considered to be a large task of the target task type. If the task duration is less than 1 minute, it is considered to be an ordinary task.
[0179] In this optional embodiment, optionally, the multiple fifth tasks that have completed the transmission operation can be understood as tasks that have completely completed the transmission, or can be understood as tasks that are in the process of transmission but have completed the corresponding data transmission within a preset time period.
[0180] It can be seen that implementation Figure 4 The described device determines the type of task by combining the data length of the task with the data transmission bandwidth of the network in the past period of time, so that the determined type of task can be adapted to the network bandwidth, which is conducive to further improving the accuracy of determining the type of task, and then helping to improve the accuracy of bandwidth concession execution, and further improving the overall transmission efficiency of all tasks.
[0181] In yet another optional embodiment, Figure 4As shown, the determination module 305 is also used to determine the task categories of multiple tasks that need to be transmitted with priority;
[0182] The acquisition module 304 is further used to acquire the task category of each sixth task among all the sixth tasks that have completed transmission within another preset time period (such as 3 hours), wherein the end time of the other preset time period is any time before the current time;
[0183] The acquisition module 304 is further used to determine whether there is a target task of the same task category as the multiple tasks that need to be transmitted first among all the sixth tasks according to the task categories of the multiple tasks that need to be transmitted first and the task category of each sixth task among all the sixth tasks; when the result of the determination is yes, all the target tasks are screened out from all the sixth tasks, and the data transmission amount and corresponding data transmission status of each target task are obtained;
[0184] The determination module 305 is further configured to modify the transmission delay duration or the second bandwidth corresponding to the second task according to the data transmission volume of each target task, the corresponding data transmission status and the data transmission volume of multiple tasks that need to be transmitted first.
[0185] In this optional embodiment, optionally, the specific manner in which the determination module 305 corrects the transmission delay duration or the second bandwidth corresponding to the second task according to the data transmission volume of each target task, the corresponding data transmission situation, and the data transmission volume of multiple tasks that need to be transmitted first includes:
[0186] Calculating a first average data transmission volume of data transmission volumes of all target tasks, and calculating a second average data transmission volume of data transmission volumes of multiple tasks that need to be transmitted preferentially;
[0187] The data transmission volume difference between the second mean data transmission volume and the first mean data transmission volume is calculated, and the transmission delay duration or the second bandwidth corresponding to the second task is corrected according to the data transmission volume difference and the data transmission conditions corresponding to all target tasks.
[0188] Furthermore, the acquisition module 304 is also used to obtain the network quality status within another preset time period and the current network quality status, and compare the two to obtain a network quality comparison result, and then combine the network quality comparison result to correct the transmission delay duration or the second bandwidth corresponding to the second task. Among them, the network quality status can be determined by the data transmission status corresponding to each sixth task in all the sixth tasks or has been pre-stored, wherein the description of the data transmission status corresponding to each sixth task is detailed in the data transmission status corresponding to each target task. The current network quality status is obtained by measuring the bandwidth, throughput, packet loss rate and packet loss rate of the current network through a network testing tool.
[0189] In this optional embodiment, optionally, the data transmission situation corresponding to each target task includes one or more of data transmission delay duration, transmission delay jitter, data transmission packet loss rate and data transmission throughput.
[0190] In this optional embodiment, optionally, the larger the data transmission amount difference is or the worse the data transmission condition is, the longer the corresponding transmission delay is or the larger the second bandwidth is, but there is a corresponding limit value.
[0191] In this optional embodiment, optionally, when the result is determined to be negative, the process ends.
[0192] It can be seen that this optional embodiment corrects the transmission delay duration of the task that currently needs to be delayed by the data transmission volume and data transmission status of the tasks that have been transmitted in the past, or corrects the bandwidth required for all tasks that have not completed the transmission, so as to obtain a more accurate and reliable transmission delay duration or bandwidth difference, which is beneficial to further improve the accuracy and reliability of the bandwidth giving way to tasks that need to be transmitted first, and further helps to further improve the overall transmission efficiency of all tasks.
[0193] Embodiment 4
[0194] See also Figure 5 , Figure 5 : is a schematic diagram of a data transmission end disclosed in an embodiment of the present invention. The data transmission end may include but is not limited to a smart phone (Android phone, iOS phone, etc.), a smart phone watch, a desktop computer, a tablet computer, a PDA, and a mobile Internet device (Mobile Internet Devices, MID) and other client terminals. Figure 5 As shown, the data transmission end may include:
[0195] A memory 401 storing executable program codes;
[0196] a processor 402 coupled to the memory 401;
[0197] Furthermore, it may also include an input interface 403 and an output interface 404 coupled to the processor 402;
[0198] The processor 402 calls the executable program code stored in the memory 401 to execute part or all of the steps in the transmission control method applied to multiple tasks disclosed in the first or second embodiment of the present invention.
[0199] Embodiment 5
[0200] An embodiment of the present invention discloses a computer storage medium, which stores computer instructions. When the computer instructions are called, they are used to execute some or all of the steps in the transmission control method applied to multiple tasks disclosed in embodiment 1 or embodiment 2 of the present invention.
[0201] Embodiment 6
[0202] See also Figure 6 , Figure 6 Schematic diagram of a transmission control system disclosed in an embodiment of the present invention. Figure 6 As shown, the transmission control system includes a data transmission end 501 and a data receiving end 502, wherein the data transmission end 501 and the data receiving end 502 are connected via wired communication or wireless communication. Figure 3-Figure 4 The transmission control device applied to multiple tasks is described, and is used to transmit the data in the task to the data receiving end 502 by executing some or all of the steps in the transmission control method applied to multiple tasks disclosed in the first or second embodiment of the present invention. The data transmission end 501 may include but is not limited to one of the client terminals such as smart phones (Android phones, iOS phones, etc.), smart phone watches, desktop computers, tablet computers, PDAs, and mobile Internet devices (Mobile Internet Devices, MID); the data receiving end 502 may include but is not limited to one of the client terminals such as smart phones (Android phones, iOS phones, etc.), smart phone watches, desktop computers, tablet computers, PDAs, and mobile Internet devices (Mobile Internet Devices, MID), NAS devices, etc.
[0203] The device embodiments described above are only illustrative, wherein the modules described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical modules, i.e., they may be located in one place, or they may be distributed on multiple network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Those of ordinary skill in the art may understand and implement it without creative work.
[0204] Through the specific description of the above embodiments, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a necessary general hardware platform, and of course, it can also be implemented by hardware. Based on such an understanding, the above technical solution can be essentially or partly contributed to the prior art in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, and the storage medium includes a read-only memory (ROM), a random access memory (RAM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), a one-time programmable read-only memory (OTPROM), an electronically erasable rewritable read-only memory (EEPROM), a compact disc (CD-ROM) or other optical disc storage, magnetic disk storage, magnetic tape storage, or any other computer-readable medium that can be used to carry or store data.
[0205] Finally, it should be noted that the transmission control method, device, transmission terminal and system for multi-tasking disclosed in the embodiments of the present invention are only preferred embodiments of the present invention, which are only used to illustrate the technical solution of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, a person skilled in the art should understand that the technical solutions described in the aforementioned embodiments can still be modified, or some of the technical features can be replaced by equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A transmission control method applied to multiple tasks, characterized in that: The method is applied to a data transmission end, and the method comprises: When there are multiple first tasks that need to perform concurrent transmission operations, determining whether there is a second task of a predetermined target task type among all the first tasks, where the task of the target task type is a task that requires delayed transmission; When it is determined that the second task exists, a delayed transmission operation is performed on the second task, and a priority transmission operation is performed on all tasks that need to be transmitted with priority; Among them, all the tasks that need to be transmitted first include all the other first tasks among all the first tasks except the second task.
2. The transmission control method applied to multiple tasks according to claim 1, characterized in that: The performing a delayed transmission operation on the second task includes: Determine a corresponding transmission delay duration for the second task, and when it is monitored that the real time reaches the deadline of the transmission delay duration corresponding to the second task, perform a transmission operation on the second task, wherein before the real time reaches the deadline of the transmission delay duration corresponding to the second task, perform a transmission operation on all tasks that need to be transmitted first; or, When it is detected that all the tasks that need to be transmitted first have been transmitted, a transmission operation is performed on the second task; or, In the process of performing transmission operations on all the tasks that need to be transmitted first, monitor the first bandwidth of the network during the task transmission process and the second bandwidth required for all tasks that have not completed transmission except the second task; calculate the bandwidth difference between the first bandwidth and the second bandwidth, and determine whether the bandwidth difference is greater than a preset bandwidth value; when it is determined that the bandwidth difference is greater than the preset bandwidth value, perform the transmission operation on the second task.
3. The transmission control method applied to multiple tasks according to claim 2, characterized in that: The method further comprises: When it is determined that the second task exists, monitoring task data of all third tasks, where all the third tasks include all tasks to be transmitted in the task list and / or all the first tasks other than the second task in all the first tasks; Based on the task data of all the third tasks, determine whether the current transmission conditions meet the delay setting conditions of the tasks of the target task type determined in advance. When it is determined that the delay setting conditions are met, trigger the execution of the delayed transmission operation for the second task, and perform the priority transmission operation on all tasks that need priority transmission.
4. The transmission control method applied to multiple tasks according to claim 3, characterized in that: The step of judging whether the current transmission condition satisfies the predetermined delay setting condition of the task of the target task type according to the task data of all the third tasks includes: When all the third tasks include all the tasks to be transmitted in the task list, the task data of all the third tasks include the task quantity, determining whether the task quantity of all the third tasks is greater than or equal to the preset task quantity, and when it is determined that it is greater than or equal to the preset task quantity, determining that the current transmission condition satisfies the delay setting condition of the task of the target task type determined in advance; When all the third tasks include all the tasks to be transmitted in the task list and / or all the first tasks other than the second task in all the first tasks, the task data of all the third tasks include the task urgency of each of the third tasks, the task urgency of the second task is determined, and it is judged whether the task urgency of each of the third tasks in all the third tasks is less than the task urgency of the second task; when it is judged that there is a third task among all the third tasks whose task urgency is greater than or equal to the task urgency of the second task, it is determined that the current transmission condition meets the delay setting condition of the task of the target task type determined in advance.
5. The transmission control method applied to multiple tasks according to claim 3, characterized in that: The determining a corresponding transmission delay duration for the second task includes: According to the task data of all the third tasks, setting a corresponding transmission delay duration for the second task; The task data of all the third tasks include one or more of the task quantity of all the third tasks, the data length of all the third tasks, the task urgency of all the third tasks, and the task function type of all the third tasks.
6. The transmission control method applied to multiple tasks according to any one of claims 1 to 5, characterized in that: The method further comprises: Obtaining data lengths of all fourth tasks, where all the fourth tasks include all the first tasks; For any of the fourth tasks, a task type of the fourth task is determined according to a data length of the fourth task.
7. The transmission control method applied to multiple tasks according to claim 6, characterized in that: The method further comprises: Acquire the transmission data volume of each of the fifth tasks in the same preset transmission time period among the plurality of fifth tasks that have completed the transmission operation; Calculate a third bandwidth within the preset transmission duration segment according to the preset transmission duration segment and the transmission data volumes corresponding to all the fifth tasks; Wherein, for any of the fourth tasks, determining the task type of the fourth task according to the data length of the fourth task includes: For any of the fourth tasks, a task type of the fourth task is determined according to the data length of the fourth task and the third bandwidth.
8. A transmission control device applied to multiple tasks, characterized in that: The device is applied to a data transmission end, and the device comprises: A judgment module, used for judging whether there is a second task of a predetermined target task type among all the first tasks when there are multiple first tasks that need to perform concurrent transmission operations, and the task of the target task type is a task that needs delayed transmission; A transmission module, configured to, when determining that the second task exists, perform a delayed transmission operation on the second task, and perform a priority transmission operation on all tasks that need to be transmitted with priority; Among them, all the tasks that need to be transmitted first include all the other first tasks among all the first tasks except the second task.
9. A data transmission terminal, characterized in that: The data transmission end comprises: A memory storing executable program code; a processor coupled to the memory; The processor calls the executable program code stored in the memory to execute the transmission control method applied to multiple tasks as described in any one of claims 1 to 7.
10. A transmission control system, characterized in that: The transmission control system includes a data transmission end and a data receiving end, wherein the data transmission end and the data receiving end are connected via wired communication or wireless communication, and the data transmission end is used to transmit the data in the task to the data receiving end by executing the transmission control method applied to multiple tasks as described in any one of claims 1-7.