Smooth data transmission method and device, electronic equipment and storage medium
By obtaining the link performance indicators of the data receiving end to determine the data transmission rate and generating a smoothing request message, the problem of data transmission fluctuation and delay in multi-channel transmission is solved, and smooth and stable data transmission is achieved.
Patent Information
- Application Number
- CN202411155680.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-21
- Publication Date
- 2026-03-03
AI Technical Summary
In existing technologies, multiplexing technology cannot achieve smooth data transmission during data transmission, resulting in data transmission fluctuations and increased transmission latency.
By obtaining the link performance indicators of the target data transmission link at the data receiving end, the data transmission rate is determined, and a smoothing request message is generated and sent to the data sending end to achieve smooth data transmission.
It enables smooth data transmission during multi-channel transmission, reduces data transmission fluctuations and latency, and improves the stability and efficiency of data transmission.
Smart Images

Figure CN121603734A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of network technology, and in particular to a method, apparatus, electronic device, and storage medium for smooth data transmission. Background Technology
[0002] Currently, the data traffic generated by streaming media applications such as short video apps and live streaming apps accounts for a large portion of network transmission load. How to better support the data transmission of such streaming media is one of the issues that the industry is currently concerned about.
[0003] In existing technologies, multiple data transmission links are established through multiplex transmission technology, enabling data to be downloaded from the data sender to the data receiver through multiple paths, thereby improving data transmission performance.
[0004] However, existing solutions cannot achieve smooth data transmission when using multiplexing technology, resulting in problems such as data transmission fluctuations and increased transmission latency. Summary of the Invention
[0005] This disclosure provides a method, apparatus, electronic device, and storage medium for smooth data transmission to overcome problems such as data transmission fluctuations and increased transmission latency.
[0006] In a first aspect, embodiments of this disclosure provide a method for smooth data transmission, including:
[0007] The system obtains the link performance index of the target data transmission link at the data receiving end, wherein the data receiving end receives media data sent by corresponding data sending ends through at least two data transmission links; based on the link performance index of the target data transmission link, it obtains the data transmission rate corresponding to the target data transmission link; based on the data transmission rate corresponding to the target data transmission link, it generates a smoothing request message for the target data sending end and sends the smoothing request message to the target data sending end, wherein the target data sending end is the data sending end corresponding to the target data transmission link, and the smoothing request message is used to request the target data sending end to smoothly send the requested media data to the data receiving end based on the corresponding data transmission rate.
[0008] Secondly, embodiments of this disclosure provide a data smoothing transmission apparatus, comprising:
[0009] The acquisition module is used to acquire the link performance indicators of the target data transmission link of the data receiving end, wherein the data receiving end receives media data sent by the corresponding data sending end through at least two data transmission links respectively.
[0010] The calculation module is used to obtain the data transmission rate corresponding to the target data transmission link based on the link performance index of the target data transmission link;
[0011] The generation module is used to generate a smoothing request message for the target data sender based on the data transmission rate corresponding to the target data transmission link, and send the smoothing request message to the target data sender. The target data sender is the data sender corresponding to the target data transmission link, and the smoothing request message is used to request the target data sender to smoothly send the requested media data to the data receiver based on the corresponding data transmission rate.
[0012] Thirdly, embodiments of this disclosure provide an electronic device, including: a processor and a memory;
[0013] The memory stores computer-executed instructions;
[0014] The processor executes computer execution instructions stored in the memory, causing the at least one processor to perform the data smoothing transmission method as described in the first aspect and various possible designs of the first aspect.
[0015] Fourthly, embodiments of this disclosure provide a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, implement the data smoothing transmission method described in the first aspect and various possible designs of the first aspect.
[0016] Fifthly, embodiments of this disclosure provide a computer program product, including a computer program that, when executed by a processor, implements the data smoothing transmission method as described in the first aspect and various possible designs of the first aspect.
[0017] The data smoothing transmission method, apparatus, electronic device, and storage medium provided in this embodiment obtain the link performance index of the target data transmission link at the data receiving end. The data receiving end receives media data sent by corresponding data sending ends through at least two data transmission links. Based on the link performance index of the target data transmission link, the data transmission rate corresponding to the target data transmission link is obtained. Based on the data transmission rate corresponding to the target data transmission link, a smoothing request message is generated for the target data sending end and sent to the target data sending end. The target data sending end is the data sending end corresponding to the target data transmission link. The smoothing request message requests the target data sending end to smoothly send the requested media data to the data receiving end based on the corresponding data transmission rate. By determining the data transmission rate corresponding to the target data transmission link based on the link performance index of the data transmission link, and then generating a corresponding smoothing request message based on the data transmission rate and sending it to the corresponding data sending end, smooth data transmission control during multi-channel transmission is achieved at the data receiving end. This avoids the problem of not being able to achieve smooth data transmission at the data sending end due to the existence of multiple data sending ends, and reduces data transmission fluctuations and latency. Attached Figure Description
[0018] To more clearly illustrate the technical solutions in the embodiments of this disclosure or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this disclosure. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0019] Figure 1 This is an application scenario diagram of the data smoothing transmission method provided in the embodiments of this disclosure;
[0020] Figure 2 Flowchart of the data smoothing transmission method provided in the embodiments of this disclosure Figure 1 ;
[0021] Figure 3 for Figure 2 A flowchart illustrating the specific implementation of step S103 in the illustrated embodiment;
[0022] Figure 4 This is a schematic diagram illustrating a process of sending a smoothing request message to a data sender, as provided in an embodiment of the present disclosure.
[0023] Figure 5 Flowchart of the data smoothing transmission method provided in the embodiments of this disclosure Figure 2 ;
[0024] Figure 6 for Figure 5 A flowchart illustrating the specific implementation of step S204 in the illustrated embodiment;
[0025] Figure 7 for Figure 6 A flowchart illustrating the specific implementation of step S2041 in the illustrated embodiment;
[0026] Figure 8 This is a structural block diagram of the data smoothing transmission apparatus provided in the embodiments of this disclosure;
[0027] Figure 9 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present disclosure;
[0028] Figure 10 This is a schematic diagram of the hardware structure of an electronic device provided in an embodiment of this disclosure. Detailed Implementation
[0029] To make the objectives, technical solutions, and advantages of the embodiments of this disclosure clearer, the technical solutions of the embodiments of this disclosure will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this disclosure, and not all embodiments. Based on the embodiments of this disclosure, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this disclosure.
[0030] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this disclosure are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, use and processing of the relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and corresponding operation portals are provided for users to choose to authorize or refuse.
[0031] The application scenarios of the embodiments of this disclosure are explained below:
[0032] Figure 1 This diagram illustrates an application scenario of the data smoothing transmission method provided in this embodiment. This method can be applied, for example, to data transmission scenarios in streaming media applications (APPs), such as live streaming applications or short video applications acquiring streaming media data. The executing entity in this embodiment can be a terminal device running the aforementioned streaming media application, a network device for data transmission, or other electronic devices performing similar functions.
[0033] In some embodiments, the terminal device or network device can implement the smooth data transmission method provided in this application by running various computer-executable instructions or computer programs. For example, computer-executable instructions can be program-level commands, machine instructions, or software instructions. Computer programs can be native programs or software modules in an operating system; they can be local applications, i.e., programs that need to be installed in the operating system to run; or they can be mini-programs embedded in any APP, i.e., programs that run based on a browser environment. In summary, the aforementioned computer-executable instructions can be any form of instruction, and the aforementioned computer programs can be any form of application, module, or plugin, and the specific implementation can be configured as needed. Further, in some embodiments, the network device can be an independent physical device, a network device cluster or distributed system composed of multiple physical devices, or a cloud device providing basic cloud computing services such as cloud services, cloud storage, cloud communication, cloud databases, cloud computing, cloud functions, network services, middleware services, domain name services, security services, content delivery networks (CDNs), and big data and artificial intelligence platforms.
[0034] like Figure 1 As shown, taking a terminal device as an example, when a terminal device runs a streaming media application, it sends data requests to the corresponding data server (server) to obtain the corresponding media data in order to play the video. In multi-channel transmission technology, the terminal device sends request messages to multiple corresponding data servers directly or indirectly through multiple data transmission links, and obtains the corresponding media data from each data server. This is equivalent to segmented media data. After processing the media data locally, the video is played.
[0035] In existing technologies, due to packet loss, latency, and signal fluctuations in networks, media data transmission traffic can experience sudden changes. These sudden bursts send a large number of data packets into the network within a short period, causing network congestion and increasing data transmission latency. Related technologies employ smoothing mechanisms to delay data packet transmission at the data sending end, thus smoothing the media data transmission traffic. However, in multiplexed transmission technologies, because there are multiple data sending ends, the smoothing rules set at the sending end cannot be unified at the receiving end. This makes it difficult to implement the smoothing mechanisms in existing technologies, leading to problems such as data transmission fluctuations and increased transmission latency.
[0036] This disclosure provides a method for smooth data transmission to solve the above-mentioned problems.
[0037] refer to Figure 2 , Figure 2Flowchart of the data smoothing transmission method provided in the embodiments of this disclosure Figure 1 The method described in this embodiment can be applied to terminal devices and network devices. This smooth data transmission method includes:
[0038] Step S101: Obtain the link performance index of the target data transmission link of the data receiving end, wherein the data receiving end receives media data sent by the corresponding data sending end through at least two data transmission links respectively, and the target data transmission link is at least one of the at least two data transmission links.
[0039] refer to Figure 1 The illustrated application scenario diagram illustrates, for example, that the provided data smoothing transmission method is described in this embodiment using a terminal device as the execution subject. The terminal device is the data receiver, and correspondingly, the data sender is the server used to provide data to the terminal device. (Refer to...) Figure 1 As shown, the data receiver has multiple data transmission links, each corresponding to a data sender. The data receiver communicates with the corresponding data sender through each data transmission link.
[0040] The data transmission link has corresponding link performance metrics, such as Round-Trip Time (RTT) and packet loss rate. These performance metrics can be obtained through an independently configured detection unit and sent to the data receiver, or they can be calculated in real-time by the data receiver. For example, the data receiver can calculate the link performance metrics by measuring the transmission time of a message sent through a specific data transmission link and the reception time of the response result. The specific methods for obtaining and calculating these performance metrics can be configured as needed and are not specifically limited here.
[0041] In one possible implementation, the data receiving end acquires the link performance metrics of at least one data transmission link, namely the link performance metrics of the target data transmission link. Specifically, the target data transmission link can be all data transmission links currently connected to the data receiving end, or it can be a part of all data transmission links. The target data transmission link can be predetermined based on configuration information, or it can be dynamically determined according to preliminary judgment steps. For example, the target data transmission link can be determined from all data transmission links based on the traffic status of each data transmission link, or the running status information sent by the data sending end. The method of determining the target data transmission link can be set as needed, and no specific restrictions are imposed here.
[0042] Step S102: Obtain the data transmission rate corresponding to the target data transmission link based on the link performance indicators of the target data transmission link.
[0043] Step S103: Based on the data transmission rate corresponding to the target data transmission link, generate a smoothing request message for the target data sender. The target data sender is the data sender corresponding to the target data transmission link. The smoothing request message is used to request the target data sender to smoothly send the requested media data to the data receiver based on the corresponding data transmission rate.
[0044] Furthermore, after obtaining the link performance indicators of the target data transmission link, the data receiving end determines the corresponding data transmission rate based on these indicators. This data transmission rate is used to control the data transmission rate within the data transmission link in the smooth data transmission mechanism, thereby achieving smooth data transmission. In one possible implementation, the data transmission rate can be a numerical value representing the amount of data transmitted per unit time, or it can be an array. Each value in the array represents a dimension of the data transmission rate during the smooth transmission mechanism, such as the baseline delay time of each data slice, the number of data slices to be transmitted per unit time, etc.
[0045] The specific implementation method for obtaining the corresponding data transmission rate based on the link performance indicators can be achieved by querying a preset mapping table, or by calling a functional unit that has the ability to map link performance indicators and data transmission rates.
[0046] In the above process, each target data transmission chain corresponds to a data transmission rate, and correspondingly, each target data transmission chain's target data sender also corresponds to a data transmission rate. After obtaining the data transmission rates corresponding to each target data transmission link, when responding to a service request, such as a video playback request in an application, the data receiver will further generate a smoothing request message for the target data sender at the other end of each target data transmission link. This configures the target data sender to perform a data transmission action based on the smoothing transmission mechanism. Specifically, the smoothing request message is a request message used to request the data sender that receives the message to respond by transmitting data using the smoothing transmission mechanism. Its specific message structure contains fields determined based on a preset communication protocol to implement the data request; this part will not be detailed here. Meanwhile, the smoothing request message also contains information representing the aforementioned data transmission rate. Therefore, after sending the smoothing request message to the corresponding target data sender, the target data sender can be instructed to perform smooth data transmission based on the data transmission rate, so that the data can pass through the corresponding target data transmission link and be uniformly and smoothly transmitted to the sender and receiver, thereby reducing fluctuations during data transmission.
[0047] In one possible implementation, the smoothing request message includes a control field and a data field. The control field characterizes the data transmission rate, and the data field characterizes the media data requested by the data receiver. Specifically, the content of the control field of the smoothing request message can be the data transmission rate itself, or a value obtained by processing the data transmission rate to characterize it. In one possible implementation, the media data includes multiple data slices. After receiving the request message from the data receiver, each data sender sends several data slices to the data receiver to achieve data splitting and transmission, i.e., data multiplexing technology, which will not be elaborated here. In this case, for example, the control field includes a first field, a second field, a third field, and a fourth field. The first field characterizes the delayed transmission time of the data slices requested by the smoothing request message; the second field characterizes the number of data slices requested by the smoothing request message; and the third field characterizes the maximum waiting time of the data slices in the data queue corresponding to the data transmission link.
[0048] Furthermore, in one possible implementation, such as Figure 3 As shown, the specific implementation of step S103 includes:
[0049] Step S1031: Obtain the operating status of the data receiving end based on the link performance indicators of the target data transmission link.
[0050] Step S1032: If the running status does not meet the preset status requirements, the data transmission rate corresponding to the target data transmission link is written into the control field, the service request information is written into the data field, and a smooth request message for the target data sender is generated.
[0051] Step S1033: If the running status meets the preset status requirements, then write the business request information into the data field and generate a data request message for the target data sender.
[0052] For example, in the steps of this embodiment, the data receiving end further obtains its operating status through the link performance indicators of the target data transmission links. Specifically, the operating status of the data receiving end can be determined by the worst link performance indicator among all target data transmission links; alternatively, it can be determined by the average link performance indicator of all target data transmission links. Furthermore, the operating status includes, for example, a smooth state or a congested state, which can be represented by level identifiers to characterize different levels of network load and / or computing resource load. In this scenario, if the data receiver's operating status does not meet the preset requirements (e.g., a congested state, meaning high network load and data queuing), the data transmission rate corresponding to the target data transmission link is written to the control field, and the service request information is written to the data field to generate a smoothing request message for the target data sender. This smoothing request message is then sent to the corresponding target data sender in subsequent steps to enable the smoothing transmission function. Conversely, if the operating status meets the preset requirements (e.g., a smooth state, meaning low network load), only the service request information is written to the data field to generate a regular data request message; the smoothing transmission function is not enabled. In subsequent steps, after sending this data request message to the corresponding target data sender, the target data sender will transmit data in a normal manner, such as based on the current maximum link bandwidth. The service request information indicates the data (data slices) that needs to be obtained from the data sender; its specific implementation is determined by the network protocol and will not be elaborated here.
[0053] In this embodiment, the method for generating the corresponding request message is determined by evaluating the operating status of the data receiver. When the operating status of the data receiver is good, a regular data request message is generated, while a smooth request message is generated only when the operating status of the data receiver is poor. This dynamic activation of the smooth sending function based on the operating status of the data receiver avoids the data congestion problem caused by constantly sending data request messages, as well as the data delay and increased computing resource overhead of the data receiver caused by constantly sending smooth request messages.
[0054] Step S104: Send a smoothing request message to the target data sender and receive the data returned by each target data sender.
[0055] When the data receiver generates a smoothing request message, it sends it to the corresponding target data sender to request the corresponding data slice. On the other hand, the target data sender responds to the smoothing request message by sending the corresponding data slice to the data receiver through the corresponding data transmission link. Finally, the data receiver uses the data slices from the receiver to combine them into the required data for consumption, such as generating media data to enable video playback on the terminal device.
[0056] Figure 4 This is a schematic diagram illustrating a process of sending a smoothing request message to a data sender, as provided in an embodiment of this disclosure. The following is in conjunction with... Figure 4 To further explain the above process, such as... Figure 4 As shown, the data receiver (represented as Receiver in the figure) is connected to the data senders Sender_1, Sender_2, and Sender_3 (represented as Sender_1, Sender_2, and Sender_3 in the figure) through data transmission links L1, L2, and L3 (represented as L1, L2, and L3 in the figure), respectively. The data receiver obtains the data transmission rates v1, v2, and v3 (represented as v1, v2, and v3 in the figure) corresponding to each of the above data transmission links by detecting the link performance indicators of data transmission links L1, L2, and L3. Subsequently, based on the data transmission rates v1, v2, and v3 of data transmission links L1, L2, and L3, corresponding smoothing request messages req_1, req_2, and req_3 (shown as req_1, req_2, and req_3 in the diagram) are generated and sent along data transmission links L1, L2, and L3 to the corresponding data senders Sender_1, Sender_2, and Sender_3, respectively, thereby requesting the data senders Sender_1, Sender_2, and Sender_3 to return data Data1, Data2, and Data3 to the data receiver Receiver in a smoothing manner based on the corresponding data transmission rates v1, v2, and v3. Data senders Sender_1, Sender_2, and Sender_3 each have a data queue. Data1 includes, for example, four data fragments: D1, D2, D3, and D4. When sending Data1 through the data queue_1 in Sender_1, D1 to D4 are sent sequentially based on the sending interval determined by the data sending rate v1, for example, t1, thus achieving smooth data transmission.
[0057] In this embodiment, the link performance index of the target data transmission link is obtained at the data receiving end. The data receiving end receives media data sent by corresponding data sending ends through at least two data transmission links. Based on the link performance index of the target data transmission link, the data transmission rate corresponding to the target data transmission link is obtained. Based on the data transmission rate corresponding to the target data transmission link, a smoothing request message is generated for the target data sending end and sent to it. The target data sending end is the data sending end corresponding to the target data transmission link. The smoothing request message requests the target data sending end to smoothly send the requested media data to the data receiving end based on the corresponding data transmission rate. By determining the data transmission rate corresponding to the target data transmission link based on the link performance index, generating a corresponding smoothing request message based on the data transmission rate, and sending it to the corresponding data sending end, smooth data transmission control during multi-channel transmission is achieved at the data receiving end, reducing data transmission fluctuations and latency.
[0058] refer to Figure 5 , Figure 5 Flowchart of the data smoothing transmission method provided in the embodiments of this disclosure Figure 2 This embodiment is in Figure 2 Based on the illustrated embodiment, step S102 is further refined, and a step of setting the on / off state of the smooth transmission function is added. This data smooth transmission method includes:
[0059] Step S201: Obtain the link performance index of the target data transmission link of the data receiving end, wherein the data receiving end receives media data sent by the corresponding data sending end through at least two data transmission links respectively, and the target data transmission link is at least one of the at least two data transmission links.
[0060] Step S202: Based on the link performance indicators of the target data transmission link, obtain the smoothing parameters of the target data transmission link. The smoothing parameters characterize the available link bandwidth of the data transmission link.
[0061] Step S203: Based on the smoothing parameters and the data size of the data slice, obtain the data transmission rate corresponding to the target data transmission link.
[0062] For example, based on link performance metrics, a smoothing parameter for the target data transmission link can be calculated. This smoothing parameter characterizes the available link bandwidth of the data transmission link, with units such as bytes per second (Byte / s). The link bandwidth characterized by the smoothing parameter is the optimized bandwidth matching the link performance of the data transmission link as characterized by the link performance metrics. As the network performance of the data transmission link decreases, the available link bandwidth characterized by this smoothing parameter also decreases. In one possible implementation, this smoothing parameter can be directly used as the data transmission rate. In another possible implementation, the number of data slices that can be transmitted per unit time can be obtained based on the ratio of the available link bandwidth characterized by the smoothing parameter to the data size of the data slices. This number of data slices that can be transmitted per unit time can then be used as the data transmission rate, with units such as slices per millimeter (mm). In yet another possible implementation, the ratio of the unit time length to the number of data slices that can be transmitted per unit time can be used as the data transmission rate, with units of millimeters.
[0063] For example, in this embodiment, it further includes:
[0064] Step S204: Determine the on / off state of the smooth transmission function of the target data transmission link based on the link performance indicators of the target data transmission link.
[0065] For example, in this embodiment, the on / off state of the smooth transmission function of the target data transmission link can be determined by obtaining the link performance index of the target data transmission link. The on / off state of the smooth transmission function of the data receiving end includes an on state and a off state. When the smooth transmission function of the data receiving end is off, data requests and transmissions are made with the data sending end through the conventional data transmission method. When the smooth transmission function of the data receiving end is on, data requests and transmissions are made with the data sending end through the data smooth transmission method provided in this embodiment and previous embodiments.
[0066] In one possible implementation, step S204 specifically includes detecting the packet loss rate of each target data transmission link, and when packet loss is detected in any data transmission link, setting the smooth transmission function of the data receiver to the on state; otherwise, setting it to the off state.
[0067] In another possible implementation, link performance metrics include the current average packet loss rate and / or latency gradient of the data transmission link, such as... Figure 6 As shown, the specific implementation of step S204 includes:
[0068] Step S2041: Obtain the current average packet loss rate and / or delay gradient of the target data transmission link.
[0069] Step S2042: Obtain the predicted packet loss probability based on the current average packet loss rate and / or delay gradient of the target data transmission link.
[0070] Step S2043: Determine the on / off state of the smooth transmission function of the target data transmission link based on the predicted packet loss probability.
[0071] For example, the current average packet loss rate refers to the average packet loss rate of the data transmission link within a certain time period or a certain data volume range. The delay gradient refers to the gradient of the data transmission delay of the data transmission link, which can characterize the trend of data transmission delay. Since both the current average packet loss rate and the delay gradient are related to possible packet loss in the future, the packet loss rate of the target data transmission link in the future is predicted based on the current average packet loss rate and / or delay gradient of the target data transmission link, resulting in a predicted packet loss probability. If there is a high probability of packet loss, i.e., the predicted packet loss probability is greater than a preset value, it indicates that the channel capacity of the data link is close to full, and a smooth transmission mechanism needs to be enabled to avoid excessive instantaneous traffic exceeding the maximum channel capacity. In other words, the smooth transmission function is set to "on" or "off".
[0072] The predicted packet loss probability can be determined by one or both of the current average packet loss rate and the delay gradient. Specifically, a preset prediction relationship table can be used to map the calculated current average packet loss rate to the corresponding predicted packet loss probability; or, the calculated delay gradient can be mapped to the corresponding predicted packet loss probability; or, the set of the current average packet loss rate and the delay gradient can be mapped to the corresponding predicted packet loss probability.
[0073] One possible implementation is, such as Figure 7 As shown, the specific implementation of obtaining the delay gradient of the target data transmission link in step S2041 includes:
[0074] Step S2041-1: Obtain the N most recent historical request sending records corresponding to the target data transmission link. The request sending records are used to characterize the historical request messages sent by the data receiving end through the data transmission link and the time when the corresponding data was received.
[0075] Step S2041-2: Based on the N request sending records, obtain the gradient value of the send / receive time delay corresponding to each historical request message;
[0076] Step S2041-3: Obtain the delay gradient based on the average value of the gradient values of the send and receive time delays corresponding to each historical request message.
[0077] For example, the specific calculation process of the delay gradient is as described above. First, obtain the N most recent historical request sending records corresponding to the target data transmission link, where N is an integer greater than or equal to 2. Then, based on the sending and receiving times of the historical request messages represented by the historical request sending records, obtain the transmission and reception time delay corresponding to each historical request message. For example, at time T1, the corresponding transmission and reception time delay is A milliseconds; at time T2, the corresponding transmission and reception time delay is B milliseconds; and so on. Next, calculate the gradient value of the transmission and reception time delay corresponding to each time based on the transmission and reception time delays corresponding to two adjacent time points. Finally, average the delay gradients corresponding to each time point to obtain the delay gradient.
[0078] Furthermore, the specific implementation of step S2042 includes:
[0079] The first packet loss probability is obtained when the current average packet loss rate is greater than the packet loss rate threshold, or the delay gradient is greater than the gradient threshold; otherwise, the second packet loss probability is obtained.
[0080] Accordingly, under this implementation method, the specific implementation of step S2043 includes:
[0081] If the predicted packet loss probability is the first packet loss probability, then the smooth transmission function of the target data transmission link is determined to be enabled; if the predicted packet loss probability is the second packet loss probability, then the smooth transmission function of the target data transmission link is determined to be disabled.
[0082] Step S205: If the smooth transmission function of the target data transmission link is enabled, a smooth request message is generated for the target data sender based on the data transmission rate corresponding to the target data transmission link, and the smooth request message is sent to the target data sender.
[0083] Step S206: If the smooth transmission function of the target data transmission link is in the off state, a data request message is generated for the target data sender and sent to the target data sender. The data request message is used to request the data sender to send the media data requested by the data receiver based on the link bandwidth of the data transmission link.
[0084] For example, the first packet loss probability can be understood as a relatively high packet loss probability, while the second packet loss probability can be understood as a relatively low packet loss probability. In this embodiment, when either the current average packet loss rate or the delay gradient exceeds a threshold, the data transmission channel will experience a risk of data packet loss. Therefore, by ensuring the smooth transmission function of the target data transmission link is enabled when the predicted packet loss probability is the first packet loss probability, the smooth transmission function is activated in a timely manner to improve the transmission stability of media data within the target data transmission link and reduce frame skipping. On the other hand, when neither the current average packet loss rate nor the delay gradient exceeds the threshold, the smooth transmission function of the target data transmission link is disabled to reduce the computational resource overhead on the data receiving end and improve the real-time performance of data transmitted through the target data transmission link.
[0085] In this embodiment, the on / off state of the smooth transmission function can be set separately for different data transmission links, so that the data transmission method of the data sending end is more dynamically matched with its performance and resources, thereby improving the overall efficiency of data transmission and reducing data transmission latency.
[0086] In this embodiment, the implementation of step S201 is the same as that in this disclosure. Figure 2 The implementation of step S101 in the illustrated embodiment is the same, and will not be described in detail here.
[0087] Corresponding to the data smoothing transmission method in the above embodiments, Figure 8 This is a structural block diagram of the data smoothing transmission device provided in the embodiments of this disclosure. The method described in the above embodiments can be executed by this data smoothing transmission device, which can be implemented by software and / or hardware, and can be integrated into an electronic device with certain data processing capabilities. The electronic device may include, but is not limited to, mobile terminals with big data processing capabilities, as well as fixed terminals with big data processing capabilities such as desktop computers and supercomputers.
[0088] For ease of explanation, only the parts relevant to embodiments of this disclosure are shown. (Refer to...) Figure 8 The data smoothing transmission device 3 includes:
[0089] The acquisition module 31 is used to acquire the link performance indicators of the target data transmission link of the data receiving end, wherein the data receiving end receives media data sent by the corresponding data sending end through at least two data transmission links respectively, and the target data transmission link is at least one of the at least two data transmission links;
[0090] The calculation module 32 is used to obtain the data transmission rate corresponding to the target data transmission link based on the link performance index of the target data transmission link;
[0091] The generation module 33 is used to generate a smoothing request message for the target data sender based on the data transmission rate corresponding to the target data transmission link, and send the smoothing request message to the target data sender. The target data sender is the data sender corresponding to the target data transmission link. The smoothing request message is used to request the target data sender to smoothly send the requested media data to the data receiver based on the corresponding data transmission rate.
[0092] According to one or more embodiments of this disclosure, a smoothing request message includes a control field and a data field, wherein the control field is used to characterize the data transmission rate and the data field is used to characterize the media data requested by the data receiver.
[0093] According to one or more embodiments of this disclosure, the media data includes multiple data slices; the control field includes a first field, a second field, and a third field, wherein the first field represents the delayed transmission time of the data slice requested by the smoothing request message; the second field represents the number of data slices requested by the smoothing request message; and the third field represents the maximum waiting time of the data slice in the data queue corresponding to the data transmission link.
[0094] According to one or more embodiments of this disclosure, when generating a smooth request message for a target data sender based on the data transmission rate corresponding to the target data transmission link, the generation module 33 is specifically configured to: obtain the operating status of the data receiver based on the link performance indicators of the target data transmission link; if the operating status does not meet the preset status requirements, write the data transmission rate corresponding to the target data transmission link into the control field, write the service request information into the data field, and generate a smooth request message for the target data sender; if the operating status meets the preset status requirements, write the service request information into the data field, and generate a data request message for the target data sender.
[0095] According to one or more embodiments of this disclosure, when the calculation module 32 obtains the data transmission rate corresponding to the target data transmission link based on the link performance index of the target data transmission link, it is specifically used to: obtain the smoothing parameter of the target data transmission link based on the link performance index of the target data transmission link, wherein the smoothing parameter characterizes the available link bandwidth of the data transmission link; and obtain the data transmission rate corresponding to the target data transmission link based on the smoothing parameter and the data size of the data slice.
[0096] According to one or more embodiments of this disclosure, the generation module 33 is further configured to: determine the on / off state of the smooth transmission function of the target data transmission link based on the link performance index of the target data transmission link; specifically, the generation module 33 is configured to: if the smooth transmission function of the target data transmission link is on, generate a smoothing request message for the target data sender based on the data transmission rate corresponding to the target data transmission link, and send the smoothing request message to the target data sender; if the smooth transmission function of the target data transmission link is off, generate a data request message for the target data sender, and send the data request message to the target data sender, wherein the data request message is used to request the data sender to send the media data requested by the data receiver based on the link bandwidth of the data transmission link.
[0097] According to one or more embodiments of this disclosure, the link performance indicators include the current average packet loss rate and / or delay gradient of the data transmission link. When the generation module 33 determines the on / off state of the smooth transmission function of the target data transmission link based on the link performance indicators of the target data transmission link, it is specifically used to: obtain the predicted packet loss probability based on the current average packet loss rate and / or delay gradient of the target data transmission link; and determine the on / off state of the smooth transmission function of the target data transmission link based on the predicted packet loss probability.
[0098] According to one or more embodiments of this disclosure, the predicted packet loss probability includes a first packet loss probability or a second packet loss probability; when the generation module 33 obtains the predicted packet loss probability based on the current average packet loss rate and / or delay gradient of the target data transmission link, it is specifically used to: obtain the first packet loss probability when the current average packet loss rate is greater than a packet loss rate threshold, or the delay gradient is greater than a gradient threshold; otherwise, obtain the second packet loss probability; when the generation module 33 determines the on / off state of the smooth transmission function of the target data transmission link based on the predicted packet loss probability, it is specifically used to: if the predicted packet loss probability is the first packet loss probability, determine that the smooth transmission function of the target data transmission link is in the on state; if the predicted packet loss probability is the second packet loss probability, determine that the smooth transmission function of the target data transmission link is in the off state.
[0099] According to one or more embodiments of this disclosure, the generation module 33 is further configured to: obtain the most recent N historical request sending records corresponding to the target data transmission link, wherein the request sending records are used to characterize the historical request messages sent by the data receiving end through the data transmission link and the time when the corresponding data is received; obtain the gradient value of the transmission and reception time delay corresponding to each historical request message based on the N request sending records; and obtain the delay gradient based on the average value of the gradient value of the transmission and reception time delay corresponding to each historical request message.
[0100] The acquisition module 31, calculation module 32, and generation module 33 are connected sequentially. The data smoothing transmission 3 provided in this embodiment can execute the technical solution of the above method embodiment, and its implementation principle and technical effect are similar, so it will not be described again here.
[0101] Figure 9 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present disclosure, such as... Figure 9 As shown, the electronic device 4 includes:
[0102] Processor 41, and memory 42 communicatively connected to processor 41;
[0103] Memory 42 stores instructions executed by the computer;
[0104] The processor 41 executes computer execution instructions stored in the memory 42 to achieve, for example, Figures 2-7 The data smoothing transmission method in the illustrated embodiment.
[0105] Optionally, the processor 41 and the memory 42 are connected via a bus 43.
[0106] For relevant instructions, please refer to the corresponding text. Figures 2-7 The relevant descriptions and effects of the steps in the corresponding embodiments are understood, and will not be elaborated on here.
[0107] This disclosure provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to implement this disclosure. Figures 2-7 The data smoothing transmission method provided in any of the corresponding embodiments.
[0108] This disclosure provides a computer program product, including a computer program, which, when executed by a processor, implements this disclosure. Figures 2-7 The data smoothing transmission method provided in any of the corresponding embodiments.
[0109] To implement the above embodiments, this disclosure also provides an electronic device.
[0110] refer to Figure 10The diagram illustrates a structural schematic of an electronic device 900 suitable for implementing embodiments of the present disclosure. The electronic device 900 can be a terminal device or a server. The terminal device can include, but is not limited to, mobile terminals such as mobile phones, laptops, digital radio receivers, personal digital assistants (PDAs), portable Android devices (PADs), portable media players (PMPs), and in-vehicle terminals (e.g., in-vehicle navigation terminals), as well as fixed terminals such as digital TVs and desktop computers. Figure 10 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of the embodiments disclosed herein.
[0111] like Figure 10 As shown, the electronic device 900 may include a processing unit (e.g., a central processing unit, a graphics processing unit, etc.) 901, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 902 or a program loaded from a storage device 908 into a random access memory (RAM) 903. The RAM 903 also stores various programs and data required for the operation of the electronic device 900. The processing unit 901, ROM 902, and RAM 903 are interconnected via a bus 904. An input / output (I / O) interface 905 is also connected to the bus 904.
[0112] Typically, the following devices can be connected to I / O interface 905: input devices 906 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 907 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 908 including, for example, magnetic tapes, hard disks, etc.; and communication devices 909. Communication device 909 allows electronic device 900 to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 10 An electronic device 900 with various devices is shown; however, it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed alternatively.
[0113] In particular, according to embodiments of this disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this disclosure include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device 909, or installed from a storage device 908, or installed from a ROM 902. When the computer program is executed by a processing device 901, it performs the functions defined in the methods of embodiments of this disclosure.
[0114] It should be noted that the computer-readable medium described in this disclosure can be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this disclosure, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in connection with an instruction execution system, apparatus, or device. In this disclosure, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.
[0115] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device.
[0116] The aforementioned computer-readable medium carries one or more programs, which, when executed by the electronic device, cause the electronic device to perform the methods shown in the above embodiments.
[0117] Computer program code for performing the operations of this disclosure can be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, and C++, and conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a Local Area Network (LAN) or a Wide Area Network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0118] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0119] The units or modules described in the embodiments of this disclosure can be implemented in software or hardware. The names of the units or modules do not necessarily limit the specific unit itself.
[0120] The functions described above in this document can be performed, at least in part, by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: Field Programmable Gate Arrays (FPGAs), Application-Specific Integrated Circuits (ASICs), Application Standard Products (ASSPs), System-on-Chip (SoCs), Complex Programmable Logic Devices (CPLDs), and so on.
[0121] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0122] In a first aspect, according to one or more embodiments of the present disclosure, a method for smooth data transmission is provided, comprising:
[0123] The process involves obtaining the link performance metrics of the target data transmission link at the data receiving end, wherein the data receiving end receives media data sent by corresponding data sending ends through at least two data transmission links, and the target data transmission link is at least one of the at least two data transmission links; obtaining the data transmission rate corresponding to the target data transmission link based on the link performance metrics of the target data transmission link; generating a smoothing request message for the target data sending end based on the data transmission rate corresponding to the target data transmission link, and sending the smoothing request message to the target data sending end, wherein the target data sending end is the data sending end corresponding to the target data transmission link, and the smoothing request message is used to request the target data sending end to smoothly send the requested media data to the data receiving end based on the corresponding data transmission rate.
[0124] According to one or more embodiments of this disclosure, the smoothing request message includes a control field and a data field, wherein the control field is used to characterize the data transmission rate and the data field is used to characterize the media data requested by the data receiver.
[0125] According to one or more embodiments of this disclosure, the media data includes multiple data slices; the control field includes a first field, a second field, and a third field, wherein the first field characterizes the delayed transmission time of the data slice requested by the smoothing request message; the second field characterizes the number of data slices requested by the smoothing request message; and the third field characterizes the maximum waiting time of the data slice in the data queue corresponding to the data transmission link.
[0126] According to one or more embodiments of this disclosure, generating a smooth request message for a target data sender based on the data transmission rate corresponding to the target data transmission link includes: obtaining the operating status of the data receiver based on the link performance indicators of the target data transmission link; if the operating status does not meet preset status requirements, then writing the data transmission rate corresponding to the target data transmission link into the control field, writing the service request information into the data field, and generating a smooth request message for the target data sender; if the operating status meets preset status requirements, then writing the service request information into the data field, and generating a data request message for the target data sender.
[0127] According to one or more embodiments of this disclosure, obtaining the data transmission rate corresponding to the target data transmission link based on the link performance index of the target data transmission link includes: obtaining a smoothing parameter of the target data transmission link based on the link performance index of the target data transmission link, wherein the smoothing parameter characterizes the available link bandwidth of the data transmission link; and obtaining the data transmission rate corresponding to the target data transmission link based on the smoothing parameter and the data size of the data slice.
[0128] According to one or more embodiments of this disclosure, the method further includes: determining the on / off state of the smooth transmission function of the target data transmission link based on the link performance index of the target data transmission link; generating a smoothing request message for the target data sender based on the data transmission rate corresponding to the target data transmission link, and sending the smoothing request message to the target data sender, comprising: if the smooth transmission function of the target data transmission link is on, generating a smoothing request message for the target data sender based on the data transmission rate corresponding to the target data transmission link, and sending the smoothing request message to the target data sender; if the smooth transmission function of the target data transmission link is off, generating a data request message for the target data sender, and sending the data request message to the target data sender, wherein the data request message is used to request the data sender to send the media data requested by the data receiver based on the link bandwidth of the data transmission link.
[0129] According to one or more embodiments of this disclosure, the link performance metrics include the current average packet loss rate and / or delay gradient of the data transmission link. Determining the on / off state of the smooth transmission function of the target data transmission link based on the link performance metrics of the target data transmission link includes: obtaining a predicted packet loss probability based on the current average packet loss rate and / or delay gradient of the target data transmission link; and determining the on / off state of the smooth transmission function of the target data transmission link based on the predicted packet loss probability.
[0130] According to one or more embodiments of this disclosure, the predicted packet loss probability includes a first packet loss probability or a second packet loss probability; obtaining the predicted packet loss probability based on the current average packet loss rate and / or delay gradient of the target data transmission link includes: obtaining the first packet loss probability when the current average packet loss rate is greater than a packet loss rate threshold, or the delay gradient is greater than a gradient threshold; otherwise, obtaining the second packet loss probability; determining the on / off state of the smooth transmission function of the target data transmission link based on the predicted packet loss probability includes: if the predicted packet loss probability is the first packet loss probability, then determining that the smooth transmission function of the target data transmission link is in an on state; if the predicted packet loss probability is the second packet loss probability, then determining that the smooth transmission function of the target data transmission link is in a off state.
[0131] According to one or more embodiments of this disclosure, the method further includes: obtaining the most recent N historical request sending records corresponding to the target data transmission link, wherein the request sending records are used to characterize the time when the data receiving end sends historical request messages through the data transmission link and receives the corresponding data; obtaining a gradient value of the transmit / receive time delay corresponding to each historical request message based on the N request sending records; and obtaining the delay gradient based on the average value of the gradient values of the transmit / receive time delay corresponding to each historical request message.
[0132] Secondly, according to one or more embodiments of the present disclosure, a data smoothing transmission apparatus is provided, comprising:
[0133] The acquisition module is used to acquire the link performance indicators of the target data transmission link of the data receiving end, wherein the data receiving end receives media data sent by the corresponding data sending end through at least two data transmission links respectively.
[0134] The calculation module is used to obtain the data transmission rate corresponding to the target data transmission link based on the link performance index of the target data transmission link;
[0135] The generation module is used to generate a smoothing request message for the target data sender based on the data transmission rate corresponding to the target data transmission link, and send the smoothing request message to the target data sender. The target data sender is the data sender corresponding to the target data transmission link, and the smoothing request message is used to request the target data sender to smoothly send the requested media data to the data receiver based on the corresponding data transmission rate.
[0136] According to one or more embodiments of this disclosure, the smoothing request message includes a control field and a data field, wherein the control field is used to characterize the data transmission rate and the data field is used to characterize the media data requested by the data receiver.
[0137] According to one or more embodiments of this disclosure, the media data includes multiple data slices; the control field includes a first field, a second field, and a third field, wherein the first field characterizes the delayed transmission time of the data slice requested by the smoothing request message; the second field characterizes the number of data slices requested by the smoothing request message; and the third field characterizes the maximum waiting time of the data slice in the data queue corresponding to the data transmission link.
[0138] According to one or more embodiments of this disclosure, when the generation module generates a smooth request message for a target data sender based on the data transmission rate corresponding to the target data transmission link, it is specifically configured to: obtain the operating status of the data receiver based on the link performance indicators of the target data transmission link; if the operating status does not meet the preset status requirements, write the data transmission rate corresponding to the target data transmission link into the control field, write the service request information into the data field, and generate a smooth request message for the target data sender; if the operating status meets the preset status requirements, write the service request information into the data field, and generate a data request message for the target data sender.
[0139] According to one or more embodiments of this disclosure, when the calculation module obtains the data transmission rate corresponding to the target data transmission link based on the link performance index of the target data transmission link, it is specifically used to: obtain a smoothing parameter of the target data transmission link based on the link performance index of the target data transmission link, wherein the smoothing parameter characterizes the available link bandwidth of the data transmission link; and obtain the data transmission rate corresponding to the target data transmission link based on the smoothing parameter and the data size of the data slice.
[0140] According to one or more embodiments of this disclosure, the generation module is further configured to: determine the on / off state of the smooth transmission function of the target data transmission link based on the link performance index of the target data transmission link; specifically, the generation module is configured to: if the smooth transmission function of the target data transmission link is on, generate a smoothing request message for the target data sender based on the data transmission rate corresponding to the target data transmission link, and send the smoothing request message to the target data sender; if the smooth transmission function of the target data transmission link is off, generate a data request message for the target data sender, and send the data request message to the target data sender, wherein the data request message is used to request the data sender to send the media data requested by the data receiver based on the link bandwidth of the data transmission link.
[0141] According to one or more embodiments of this disclosure, the link performance indicators include the current average packet loss rate and / or delay gradient of the data transmission link. When the generation module determines the on / off state of the smooth transmission function of the target data transmission link based on the link performance indicators of the target data transmission link, it is specifically used to: obtain a predicted packet loss probability based on the current average packet loss rate and / or delay gradient of the target data transmission link; and determine the on / off state of the smooth transmission function of the target data transmission link based on the predicted packet loss probability.
[0142] According to one or more embodiments of this disclosure, the predicted packet loss probability includes a first packet loss probability or a second packet loss probability; when the generation module obtains the predicted packet loss probability based on the current average packet loss rate and / or delay gradient of the target data transmission link, it is specifically configured to: obtain the first packet loss probability when the current average packet loss rate is greater than a packet loss rate threshold, or the delay gradient is greater than a gradient threshold; otherwise, obtain the second packet loss probability; when the generation module determines the on / off state of the smooth transmission function of the target data transmission link based on the predicted packet loss probability, it is specifically configured to: if the predicted packet loss probability is the first packet loss probability, determine that the smooth transmission function of the target data transmission link is in the on state; if the predicted packet loss probability is the second packet loss probability, determine that the smooth transmission function of the target data transmission link is in the off state.
[0143] According to one or more embodiments of this disclosure, the generation module is further configured to: obtain the most recent N historical request sending records corresponding to the target data transmission link, wherein the request sending records are used to characterize the historical request messages sent by the data receiving end through the data transmission link and the time when the corresponding data is received; obtain the gradient value of the transmit / receive time delay corresponding to each historical request message based on the N request sending records; and obtain the delay gradient based on the average value of the gradient value of the transmit / receive time delay corresponding to each historical request message.
[0144] Thirdly, according to one or more embodiments of the present disclosure, an electronic device is provided, comprising: at least one processor and a memory;
[0145] The memory stores computer-executed instructions;
[0146] The at least one processor executes computer execution instructions stored in the memory, causing the at least one processor to perform the data smoothing transfer method as described in the first aspect and various possible designs of the first aspect.
[0147] Fourthly, according to one or more embodiments of the present disclosure, a computer-readable storage medium is provided, wherein computer-executable instructions are stored therein, and when a processor executes the computer-executable instructions, the data smoothing transmission method described in the first aspect and various possible designs of the first aspect is implemented.
[0148] Fifthly, according to one or more embodiments of the present disclosure, a computer program product is provided, including a computer program that, when executed by a processor, implements the data smoothing transmission method as described in the first aspect and various possible designs of the first aspect.
[0149] The above description is merely a preferred embodiment of this disclosure and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of this disclosure is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-described concept. For example, technical solutions formed by substituting the above features with (but not limited to) technical features disclosed in this disclosure that have similar functions.
[0150] Furthermore, while the operations are described in a specific order, this should not be construed as requiring these operations to be performed in the specific order shown or in a sequential order. In certain environments, multitasking and parallel processing may be advantageous. Similarly, while several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of this disclosure. Certain features described in the context of individual embodiments may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented individually or in any suitable sub-combination in multiple embodiments.
[0151] Although the subject matter has been described using language specific to structural features and / or methodological logic, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. Rather, the specific features and actions described above are merely illustrative examples of implementing the claims.
Claims
1. A method for smooth data transmission, characterized in that, include: The link performance indicators of the target data transmission link of the data receiving end are obtained, wherein the data receiving end receives media data sent by the corresponding data sending end through at least two data transmission links respectively, and the target data transmission link is at least one of the at least two data transmission links; Based on the link performance indicators of the target data transmission link, the data transmission rate corresponding to the target data transmission link is obtained; Based on the data transmission rate corresponding to the target data transmission link, a smoothing request message is generated for the target data sender and sent to the target data sender. The target data sender is the data sender corresponding to the target data transmission link. The smoothing request message is used to request the target data sender to smoothly send the requested media data to the data receiver based on the corresponding data transmission rate.
2. The method according to claim 1, characterized in that, The smoothing request message includes a control field and a data field. The control field is used to characterize the data transmission rate, and the data field is used to characterize the media data requested by the data receiver.
3. The method according to claim 2, characterized in that, The media data includes multiple data slices; the control fields include a first field, a second field, and a third field, wherein, The first field represents the delayed transmission time of the data slice requested by the smoothing request message; The second field represents the number of data slices requested by the smoothing request message; The third field represents the maximum waiting time of the data slice in the data queue corresponding to the data transmission link.
4. The method according to claim 2, characterized in that, The step of generating a smooth request message for the target data sender based on the data transmission rate corresponding to the target data transmission link includes: The operating status of the data receiving end is obtained based on the link performance indicators of the target data transmission link. If the operating state does not meet the preset state requirements, the data transmission rate corresponding to the target data transmission link is written into the control field, the service request information is written into the data field, and a smooth request message is generated for the target data sending end. If the operating status meets the preset status requirements, the business request information is written into the data field to generate a data request message for the target data sending end.
5. The method according to claim 1, characterized in that, The step of obtaining the data transmission rate corresponding to the target data transmission link based on the link performance index of the target data transmission link includes: Based on the link performance indicators of the target data transmission link, a smoothing parameter for the target data transmission link is obtained, wherein the smoothing parameter characterizes the available link bandwidth of the data transmission link; Based on the smoothing parameters and the data size of the data slice, the data transmission rate corresponding to the target data transmission link is obtained.
6. The method according to claim 1, characterized in that, The method further includes: Based on the link performance indicators of the target data transmission link, determine the on / off state of the smooth transmission function of the target data transmission link; The step of generating a smoothing request message for the target data sender based on the data transmission rate corresponding to the target data transmission link, and sending the smoothing request message to the target data sender, includes: If the smooth transmission function of the target data transmission link is enabled, a smooth request message is generated for the target data sender based on the data transmission rate corresponding to the target data transmission link, and the smooth request message is sent to the target data sender. If the smooth transmission function of the target data transmission link is disabled, a data request message is generated for the target data sender and sent to the target data sender. The data request message is used to request the data sender to send the media data requested by the data receiver based on the link bandwidth of the data transmission link.
7. The method according to claim 6, characterized in that, The link performance metrics include the current average packet loss rate and / or latency gradient of the data transmission link. Determining the on / off state of the smooth transmission function of the target data transmission link based on its performance metrics includes: The predicted packet loss probability is obtained based on the current average packet loss rate and / or delay gradient of the target data transmission link. Based on the predicted packet loss probability, determine the on / off state of the smooth transmission function of the target data transmission link.
8. The method according to claim 7, characterized in that, The predicted packet loss probability includes a first packet loss probability or a second packet loss probability; the predicted packet loss probability is obtained based on the current average packet loss rate and / or delay gradient of the target data transmission link, including: When the current average packet loss rate is greater than the packet loss rate threshold, or the delay gradient is greater than the gradient threshold, a first packet loss probability is obtained; otherwise, a second packet loss probability is obtained. Based on the predicted packet loss probability, the on / off state of the smooth transmission function of the target data transmission link is determined, including: If the predicted packet loss probability is the first packet loss probability, then the smooth transmission function of the target data transmission link is determined to be enabled. If the predicted packet loss probability is the second packet loss probability, then the smooth transmission function of the target data transmission link is determined to be in the off state.
9. The method according to claim 7, characterized in that, Also includes: Obtain the N most recent historical request sending records corresponding to the target data transmission link. The request sending records are used to characterize the historical request messages sent by the data receiving end through the data transmission link and the time when the corresponding data was received. Based on the N request sending records, obtain the gradient value of the send / receive time delay corresponding to each of the historical request messages; The delay gradient is obtained by averaging the gradient values of the send / receive time delays corresponding to each of the historical request messages.
10. A data smoothing transmission device, characterized in that, include: The acquisition module is used to acquire the link performance indicators of the target data transmission link of the data receiving end, wherein the data receiving end receives media data sent by the corresponding data sending end through at least two data transmission links respectively, and the target data transmission link is at least one of the at least two data transmission links; The calculation module is used to obtain the data transmission rate corresponding to the target data transmission link based on the link performance index of the target data transmission link; The generation module is used to generate a smoothing request message for the target data sender based on the data transmission rate corresponding to the target data transmission link, and send the smoothing request message to the target data sender. The target data sender is the data sender corresponding to the target data transmission link, and the smoothing request message is used to request the target data sender to smoothly send the requested media data to the data receiver based on the corresponding data transmission rate.
11. An electronic device, characterized in that, include: Processor and memory; The memory stores computer-executed instructions; The processor executes computer execution instructions stored in the memory, causing the processor to perform the data smoothing transfer method as described in any one of claims 1 to 9.
12. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions, which, when executed by a processor, implement the data smoothing transmission method as described in any one of claims 1 to 9.
13. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the data smoothing transmission method as described in any one of claims 1 to 9.