Business scheduling method and electronic device
By generating multipath scheduling requests in a multi-link system and determining the target transmission link based on link information and service type, the problem of unstable transmission quality is solved, achieving efficient and continuous service transmission and improving user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HONOR DEVICE CO LTD
- Filing Date
- 2024-12-31
- Publication Date
- 2026-07-10
AI Technical Summary
In multi-link systems, how to effectively schedule services to improve service transmission efficiency and performance, especially under conditions of unstable transmission quality caused by factors such as wireless interference, increased distance, and wall obstruction, is a challenge. Existing technologies struggle to guarantee the continuity and efficiency of service transmission.
By generating multipath scheduling requests, the target transmission link is determined from multiple transmission links based on link information, optimizing the transmission path of service data, reusing stored link information, determining the optimal transmission link by combining link quality and service type, and adopting different scheduling strategies to deal with different scenarios and abnormal situations, ensuring stable transmission of services.
It improves the efficiency and performance of service transmission in multi-link systems, reduces transmission latency and jitter, and ensures service continuity and user experience.
Smart Images

Figure CN120434178B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, and in particular to a service scheduling method and electronic device. Background Technology
[0002] In practical applications, multiple transmission links can be established between multiple devices (e.g., mobile phones to mobile phones, mobile phones to tablets, mobile phones to PCs, mobile phones to large-screen devices (such as TVs)). For example, two transmission links can be established between a mobile phone and a tablet: one is a WLAN connection link, and the other is a Wi-Fi direct link. A WLAN connection link refers to a wireless transmission link established based on the IEEE 802.11 standard wireless LAN communication technology; a Wi-Fi direct link refers to a point-to-point transmission link established using Wi-Fi direct technology that does not require a hotspot or router.
[0003] In multi-link systems, how to schedule services to improve service transmission efficiency and performance is currently a hot research topic. Summary of the Invention
[0004] This application provides a service scheduling method and electronic device, which is beneficial to improving the service transmission efficiency and transmission performance in multi-link systems.
[0005] In a first aspect, embodiments of this application provide a service scheduling method applied to a first electronic device, the method comprising:
[0006] Upon receiving a start operation for the first service or detecting a transmission anomaly in the first service, a first multipath scheduling request is generated.
[0007] In response to a first multipath scheduling request, a target transmission link is determined from multiple transmission links between the first electronic device and the second electronic device based on link information. The target transmission link is used to carry the first service. The link information indicates the operating frequency band of each transmission link among the multiple transmission links.
[0008] The service data of the first service is sent to the second electronic device through the target transmission link.
[0009] By implementing the above method, when a service initiation operation is received or a service transmission anomaly occurs, the target transmission link is determined from multiple transmission links between the first electronic device and the second electronic device based on the link information, and service data is sent through the target transmission link. This can effectively improve the service transmission efficiency and performance in a multi-link system, and is beneficial to improving the user experience.
[0010] In conjunction with the first aspect, in one possible implementation, the method further includes: obtaining link information from first local storage information; or, obtaining link information during the establishment of multiple transmission links with the second electronic device. It is evident that the first electronic device can directly utilize the stored link information, achieving link information reuse, saving device computing resources, and improving transmission efficiency; the first electronic device can also obtain link information during the establishment of multiple transmission links, thereby ensuring the accuracy and validity of the link information.
[0011] Optionally, the first multipath scheduling request is generated upon receiving a startup operation; the link information includes the operating frequency band of the first transmission link and the operating frequency band of the second transmission link. In response to the first multipath scheduling request, the first electronic device determines the target transmission link from multiple transmission links between the first and second electronic devices based on the link information. One implementation could be: If the operating frequency bands of the first and second transmission links are the same, the target transmission link is determined from the first and second transmission links based on link quality data; wherein the link quality data indicates the link quality of the first and second transmission links; if the operating frequency bands of the first and second transmission links are different, the target transmission link is determined from the first and second transmission links based on the service type; wherein the service type is a file type or a streaming media type. Therefore, when the first multipath scheduling request is generated upon receiving a startup operation, different methods can be used to determine the target transmission link based on the different operating frequency bands of the first and second transmission links. This allows the scheduling method provided in this application to be applied to various scenarios, exhibiting good universality and improving service startup efficiency.
[0012] Optionally, one implementation of the first electronic device determining the target transmission link from the first and second transmission links based on link quality data can be: determining the target transmission link that meets the quality requirements from the first and second transmission links based on the link quality data; wherein the link quality of the target transmission link is higher than the link quality of the transmission links that do not meet the quality requirements. Therefore, the first electronic device can determine the transmission link with high link quality as the target transmission link, which can improve the efficiency of transmitting service data through the target transmission link.
[0013] Optionally, one implementation of the first electronic device determining the target transmission link from the first and second transmission links based on the service type can be: in response to the first service having the same service type as the second service, the target transmission link is determined from the first and second transmission links based on link quality data; wherein the second service is a service currently in transmission. It is evident that when the second service already in transmission and the first service to be initiated have the same service type, the first electronic device can directly determine the target transmission link based on link quality data, which facilitates the rational allocation of transmission resources to various services and improves the overall transmission efficiency of the multi-link system.
[0014] Optionally, one implementation of the first electronic device determining the target transmission link from the first and second transmission links based on the service type can be as follows: In response to the first service being a streaming media type and the second service being a file type, a candidate transmission link is determined from the first and second transmission links; it is then determined whether the candidate transmission link can carry the first service; in response to the candidate transmission link being able to carry the first service, the candidate transmission link is determined as the target transmission link; in response to the candidate transmission link not being able to carry the first service, the transmission links in the first and second transmission links other than the candidate transmission link are determined as the target transmission link. Therefore, when the first service is a streaming media type and the second service is a file type, the first electronic device can determine the target transmission link based on whether the candidate transmission link can carry the first service, which can improve service transmission efficiency while ensuring the normal transmission of the service data of the first service.
[0015] Optionally, one implementation of the first electronic device determining whether a candidate transmission link can carry the first service can be: determining whether the candidate transmission link can carry the first service based on the transmission rate of the candidate transmission link, the service description data of the first service, the service description data of the same-frequency service, and the transmission rate of the same-frequency service; wherein, the same-frequency service is a service transmitted through a same-frequency link, and the same-frequency link is a link with the same frequency as the candidate transmission link. It is evident that the first electronic device can accurately determine whether a candidate transmission link can carry the first service based on multiple data points, which is beneficial for subsequently determining the target transmission link based on the determined result, thereby improving transmission efficiency.
[0016] Optionally, one implementation of the first electronic device determining the target transmission link from the first and second transmission links based on the service type can be as follows: Responding to the first service being a file type and the second service being a streaming media type, a streaming media transmission link is determined from the first and second transmission links based on link quality data; wherein the streaming media transmission link is a transmission link that does not meet the quality requirements and is used to carry the second service; the transmission links from the first and second transmission links other than the streaming media transmission link are determined as the target transmission link; wherein the link quality of the target transmission link is higher than that of the streaming media transmission link. Therefore, when the first service is a file type and the second service is a streaming media type, the first electronic device can determine the transmission links for the first and second services, thereby isolating the file type service from the streaming media type service, and thus improving the transmission efficiency of both types of services.
[0017] Optionally, the first multipath scheduling request is generated when a transmission anomaly is detected in the first service; the link information includes the operating frequency band of the first transmission link and the operating frequency band of the second transmission link; then, in response to the first multipath scheduling request, the first electronic device determines the target transmission link from multiple transmission links between the first electronic device and the second electronic device according to the link information. One implementation could be: in response to the first transmission link and the second transmission link having the same operating frequency band, the target transmission link is determined from the first and second transmission links according to the link bearer information; in response to the first transmission link and the second transmission link having different operating frequency bands, the target transmission link is determined from the first and second transmission links according to the transmission type information; wherein, the transmission type information indicates whether the transmission type of the first service is concurrent transmission or single transmission. It is evident that when the first multipath scheduling request is generated when a transmission anomaly is detected in the first service, the first electronic device can determine the target transmission link using different methods based on the link information, exhibiting good versatility and applicability to various scenarios.
[0018] Optionally, the service type of the first service is streaming media. One implementation of the first electronic device determining the target transmission link from the first and second transmission links based on link bearer information can be: in response to a service of file type not existing among the multiple transmission services, the target transmission link is determined from the first and second transmission links based on the service bearer information of the first and second transmission links in the link bearer information; wherein the multiple transmission services are services in a transmission state, and the multiple transmission services include the first service; the service bearer information of the first transmission link indicates whether the first transmission link can carry multiple transmission services, and the service bearer information of the second transmission link indicates whether the second transmission link can carry multiple transmission services. Therefore, the first electronic device can determine the target transmission link based on the service bearer information of each transmission link, thereby fully utilizing the transmission resources in the multi-link system and improving service transmission efficiency.
[0019] In conjunction with the first aspect, in one possible implementation, the method further includes: responding to the presence of file-type services among multiple transmission services by performing service rate limiting on file-type services. It is evident that when a transmission anomaly occurs in a streaming media service, the first electronic device can limit the rate of the file-type service. Since the decrease in the transmission rate of the file-type service does not significantly affect the user experience, limiting the rate of the file-type service can alleviate the transmission anomaly of the streaming media service, thereby improving the overall user experience.
[0020] Optionally, the service type of the first service is streaming media. One implementation of the first electronic device determining the target transmission link from the first and second transmission links based on the transmission type information is as follows: in response to the transmission type information indicating that the transmission type of the first service is single-transmission, and that there are no file-type services among the multiple transmission services, the first and second transmission links are determined as the target transmission links; wherein, the multiple transmission services are services in a transmission state, and the target transmission link is used for concurrent transmission of the first service. Therefore, when a transmission anomaly occurs in the first service, and the transmission type of the first service is single-transmission, the first electronic device can perform concurrent transmission of the first service to resolve the transmission anomaly, which helps reduce the transmission latency and jitter of the service data and improves service transmission performance.
[0021] In conjunction with the first aspect, in one possible implementation, the method further includes: in response to the transmission type information indicating that the transmission type of the first service is single-transmission, and that among the multiple transmission services there is a file-type service under rate limiting, determining the first transmission link and the second transmission link as target transmission links. Therefore, when the service transmission type of the first service is single-transmission, and there is a file-type service under rate limiting, the first electronic device can perform concurrent transmission of the first service, thereby resolving the transmission anomaly of the first service.
[0022] In conjunction with the first aspect, in one possible implementation, the method further includes: responding to a transmission type information indicating that the transmission type of the first service is single transmission, and that among the multiple transmission services there is a file type service in an un-rate-limited state, performing service rate-limiting processing on the file type service in the un-rate-limited state. Therefore, when a transmission anomaly occurs in the first service, and there is a file type service in an un-rate-limited state, the first electronic device can prioritize rate-limiting the file type service, thereby avoiding concurrent transmission and saving transmission resources when resolving the transmission anomaly of the first service.
[0023] In conjunction with the first aspect, in one possible implementation, the method further includes: in response to a concurrent transmission command for the first service, sending service data of the first service to the second electronic device via a first transmission link in the target transmission link; and sending the service data of the first service to the second electronic device via a second transmission link in the target transmission link. It is evident that when the first electronic device performs concurrent transmission of the first service, it can use multiple transmission links to send the same service data, thereby overcoming transmission anomalies of the first service caused by the instability of individual transmission links through redundant transmission, effectively improving transmission performance.
[0024] In conjunction with the first aspect, in one possible implementation, the method further includes: acquiring transmission delay data of the service data of the first service; determining average delay data based on the transmission delay data, and determining a transmission jitter parameter based on the average delay data and the transmission delay data; determining that a transmission anomaly has been detected in the first service in response to the transmission jitter parameter being greater than a first jitter threshold; and determining that no transmission anomaly has been detected in the first service in response to the transmission jitter parameter being less than or equal to the first jitter threshold. It is evident that the first electronic device can determine whether a transmission anomaly has occurred in the first service based on the transmission delay data, thereby enabling transmission monitoring of the first service and helping to ensure the transmission efficiency of the first service.
[0025] In conjunction with the first aspect, in one possible implementation, the link information includes the operating frequency bands of the first transmission link and the second transmission link, wherein the operating frequency bands of the first transmission link and the second transmission link are different. The method further includes: when the transmission type of the first service is concurrent transmission and no transmission anomaly is detected in the first service, determining a single-transmission link that meets the quality requirements from the first and second transmission links; and in response to the jitter parameter of the single-transmission link being less than a second jitter threshold, determining a target transmission link from the first and second transmission links, the target transmission link being used to adjust the transmission type of the first service to single-transmission transmission. Therefore, when the transmission type of the first service is concurrent transmission and no transmission anomaly is detected in the first service, the first electronic device can adjust the transmission type of the first service to single-transmission transmission, thereby saving transmission resources while ensuring the transmission efficiency of the first service.
[0026] In conjunction with the first aspect, in one possible implementation, the multiple transmission links include a third transmission link. The first electronic device sends service data of the third service to the second electronic device through the third transmission link. The method further includes: generating a second multipath scheduling request when an interruption is detected in the third transmission link; determining a fourth transmission link from the multiple transmission links in response to the second multipath scheduling request; and sending the service data of the third service to the second electronic device through the fourth transmission link. It is evident that when a transmission link is interrupted, the first electronic device can transfer the service carried in the interrupted transmission link to other transmission links, thereby ensuring normal service transmission and guaranteeing the continuity and stability of service transmission.
[0027] In conjunction with the first aspect, in one possible implementation, the method further includes: generating a third multipath scheduling request upon detecting that the third transmission link has been restored; and, in response to the third multipath scheduling request, sending the service data of the third service to the second electronic device via the third transmission link. Thus, when the transmission link restoration is detected, the first electronic device can transfer the service to the restored transmission link, thereby ensuring the transmission efficiency of the service.
[0028] Secondly, embodiments of this application also provide a service scheduling method applied to a second electronic device, the method comprising:
[0029] The target transmission link is used to receive service data of the first service from the first electronic device; the multiple transmission links between the first electronic device and the second electronic device include the target transmission link.
[0030] Store or display the business data of the first business.
[0031] The above method can realize the transmission of business data between the first electronic device and the second electronic device, which is conducive to improving the efficiency of business transmission.
[0032] In conjunction with the second aspect, in one possible implementation, the method further includes: acquiring link information during the establishment of multiple transmission links with the first electronic device; and storing the link information in second local storage information. It is evident that the second electronic device can acquire link information when establishing multiple transmission links with the first electronic device, or it can directly utilize the locally stored link information, thus achieving link information reuse and saving the device's computing resources.
[0033] In conjunction with the second aspect, in one possible implementation, the multiple transmission links include a first transmission link and a second transmission link. The method further includes: determining a data buffer area in response to a concurrent transmission command for a first service; receiving service data of the first service from a first electronic device through the first and second transmission links, the service data including multiple data packets; storing the multiple data packets into the data buffer area according to the data packet numbering information; and displaying the data stored in the data buffer area in response to the completion of data buffer area storage. It is evident that when the first electronic device performs parallel transmission for the first service, the second electronic device can store the data packets received through multiple transmission links into the data buffer area and display the data stored in the data buffer area, thereby ensuring the continuity of displayed data, resolving the issue of discontinuous displayed data due to transmission anomalies in the first service, and improving the user experience.
[0034] Thirdly, embodiments of this application provide an electronic device, including: a memory and one or more processors; the memory is coupled to one or more processors, the memory is used to store computer program code, the computer program code includes computer instructions, and one or more processors call the computer instructions to cause the electronic device to perform a method performed by the first electronic device as described in the first aspect or any embodiment of the first aspect.
[0035] Fourthly, embodiments of this application provide an electronic device, including: a memory and one or more processors; the memory is coupled to one or more processors, the memory is used to store computer program code, the computer program code includes computer instructions, and one or more processors call the computer instructions to cause the electronic device to perform a method performed by the second electronic device as described in the second aspect or any embodiment of the second aspect.
[0036] Fifthly, embodiments of this application provide a computer-readable storage medium storing a computer program, which, when executed by a processor, causes an electronic device to perform a method as performed by the first electronic device in the first aspect or any embodiment of the first aspect.
[0037] Sixthly, embodiments of this application provide a computer program product that, when run on a computer, causes the computer to perform a method performed by the first electronic device as described in the first aspect or any embodiment of the first aspect.
[0038] In a seventh aspect, embodiments of this application provide a chip system including at least one processor for implementing the method performed by the first electronic device as described in the first aspect or any embodiment of the first aspect.
[0039] Eighthly, embodiments of this application provide a computer-readable storage medium including instructions that, when executed on an electronic device, cause the electronic device to perform a method performed by a second electronic device as described in the second aspect or any embodiment of the second aspect.
[0040] Ninthly, embodiments of this application provide a computer program product that, when run on a computer, causes the computer to perform a method performed by a second electronic device as described in the second aspect or any embodiment of the second aspect.
[0041] In a tenth aspect, embodiments of this application provide a chip system including at least one processor for implementing the method performed by the second electronic device as described in the second aspect or any embodiment of the second aspect.
[0042] It is understood that the beneficial effects of the methods in the third to tenth aspects or any possible implementation thereof can be referred to in correspondence with the beneficial effects of the first aspect or any possible implementation thereof and the second aspect or any possible implementation thereof, which will not be repeated here. Attached Figure Description
[0043] Figure 1A This application provides a schematic diagram of the structure of a communication system according to an embodiment of the present application.
[0044] Figure 1B This is a schematic diagram of another communication system provided in an embodiment of this application;
[0045] Figures 2A-2G A schematic diagram of the multipath scheduling strategy determination method provided in the embodiments of this application;
[0046] Figures 3A-3L A schematic diagram illustrating the service scheduling process provided in the embodiments of this application;
[0047] Figure 4 A flowchart illustrating a service scheduling method provided in an embodiment of this application;
[0048] Figures 5A-5D Schematic diagrams illustrating some user interfaces involved in creating screen mirroring services, provided for embodiments of this application;
[0049] Figure 6 A flowchart illustrating another service scheduling method provided in this application embodiment;
[0050] Figure 7 A schematic diagram of the hardware structure of an electronic device provided in an embodiment of this application;
[0051] Figure 8 This application provides a hardware and software architecture for an electronic device. Detailed Implementation
[0052] The technical solutions in the embodiments of this application will be clearly and thoroughly described below with reference to the accompanying drawings. In the description of the embodiments of this application, unless otherwise stated, " / " means "or," for example, A / B can mean A or B; the word "and / or" in the text is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Furthermore, in the description of the embodiments of this application, "multiple" refers to two or more than two.
[0053] Hereinafter, the terms "first" and "second" are used for descriptive purposes only and should not be construed as implying or suggesting relative importance or implicitly indicating the number of indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature, and in the description of the embodiments of this application, unless otherwise stated, "multiple" means two or more.
[0054] In this application, "electronic device" is also referred to as "device".
[0055] The method provided in this application can be applied to multi-link systems, which refer to scenarios where multiple devices have multiple transmission links. A transmission link is a data transmission channel between two devices. For example, multiple transmission links exist between two devices, and these links can be Wireless Local Area Network (WLAN) connection links, Wi-Fi direct links, Bluetooth transmission links, cellular network links, etc. The method provided in this application can also be applied to scenarios involving streaming media services and file services. For example, multiple transmission links exist between two devices, and the services between the two devices include file sharing and other file-type services, as well as one or more streaming media services such as calls, notification sharing, keyboard and mouse sharing, PC collaboration, PAD collaboration, screen casting, large-screen collaboration, screen mirroring / extension, and video-on-demand / live streaming.
[0056] Figure 1A The diagram shown is a structural schematic of a communication system provided in an embodiment of this application. This communication system may include multiple multi-link systems, and each multi-link system may include multiple electronic devices. For example, Figure 1A The system includes a first multi-link system and a second multi-link system. The first multi-link system includes a mobile phone, a tablet, and a wireless router. The mobile phone and tablet establish a first transmission link (i.e., a Wi-Fi Direct link) via Wi-Fi Direct technology, and a second transmission link (i.e., a WLAN connection link) via the wireless router. The second multi-link system includes a mobile phone, a personal computer, and a cellular communication base station. The mobile phone and personal computer establish a third link (i.e., a Bluetooth transmission link) via Bluetooth technology, and a fourth link (i.e., a cellular network link) via the cellular communication base station. The same electronic devices may be included in different multi-link systems. For example, Figure 1A In this context, the mobile phone belongs to both the first multi-link system and the second multi-link system.
[0057] The frequency bands of multiple transmission links within the same multi-link system can be the same or different. The frequency band of a transmission link refers to the range between the lowest and highest frequency points occupied by a wireless signal, while a frequency point is a specific numerical value of the wireless signal, that is, a specific frequency value within a specific frequency band. The method provided in this application can determine link relationship information based on the frequency bands of each transmission link, thereby enabling service scheduling in a multi-link system.
[0058] like Figure 1B The diagram shows the structure of a communication system, illustrated by an example of a multi-link system.
[0059] For example, the communication system may include a mobile phone, a wireless router, and a tablet, and the mobile phone and tablet establish a first transmission link (Wi-Fi Direct Link) through Wi-Fi Direct technology, and establish a second transmission link (WLAN Connection Link) through the wireless router.
[0060] Services are carried on the first and second transmission links. Services running at the application layer can be divided into two types: streaming media services and file-based services. These two types are briefly described below:
[0061] (1) Streaming media services: These are services that compress multimedia data and transmit it in segments via a transmission link. Streaming media services typically require significant transmission resources. Streaming media services can include video-on-demand, screen mirroring, collaborative services, voice call services, video call services, and video-on-demand services.
[0062] (2) File-type services: File-type services typically consume most of the link bandwidth during transmission. When file-type services and streaming media services are transmitted on the same link, the file-type services may crowd out the streaming media services, thereby reducing the transmission efficiency of the streaming media services. File-type services can include text file services, image file services, web page transmission services, etc.
[0063] It is understandable that the application layer can identify the business type of each business based on the characteristics of the aforementioned businesses.
[0064] For example, Figure 1B In this scenario, when a mobile phone and tablet engage in screen mirroring, the second transmission link carries the screen mirroring service V1 sent from the mobile phone to the tablet. If the mobile phone also sends an image file to the tablet, the first transmission link carries the file transfer service D1. If the mobile phone and tablet also conduct a voice call, the second transmission link carries the call service T1 sent from the mobile phone to the tablet.
[0065] The above examples illustrate the services carried by each link. It should be understood that a link can carry one or more services.
[0066] The following embodiments of this application illustrate a multi-link system comprising two devices and two links. The two devices are device A (mobile phone) and device B (tablet). The first transmission link is a Wi-Fi direct link, and the second transmission link is a WLAN connection link. It should be understood that in other embodiments, the links in the above-described multi-link system can be any combination of transmission links such as Wi-Fi direct links, Bluetooth links, WLAN connection links, and cellular network links.
[0067] It should be understood that the above Figure 1B The devices, services, links, etc. mentioned are only illustrative examples. In other embodiments, the multi-link system may include more or fewer electronic devices, the type of electronic devices may be replaced with other devices, and the services between electronic devices may be other services.
[0068] The aforementioned electronic devices can be smart terminal devices or other types, and this application embodiment does not limit their specific types. For example, they can be mobile phones, and can also include tablet computers, desktop computers, laptop computers, handheld computers, smart screens, wearable devices, augmented reality (AR) devices, virtual reality (VR) devices, artificial intelligence (AI) devices, in-vehicle systems, smart headphones, game consoles, and can also be Internet of Things (IoT) devices or smart home devices such as smart TVs, etc. They are not limited to these, and can also include non-portable terminal devices such as laptops and desktop computers with touch-sensitive surfaces or touch panels, etc.
[0069] In multi-link systems, multiple transmission links can be established between multiple devices. For example, a WLAN connection link and a Wi-Fi direct link can be established between a mobile phone and a tablet. However, in real-world applications, due to factors such as wireless interference, increased distance, and wall obstructions, both WLAN connection links and Wi-Fi direct links may experience unstable transmission quality. This can lead to stuttering or even interruptions when users are transmitting services.
[0070] Therefore, in order to realize service scheduling in a multi-link system, this application provides a service scheduling method that determines the scheduling strategy for services based on the link relationship between multiple transmission links, thereby effectively improving service transmission efficiency.
[0071] In this application, considering that the operating frequency bands of multiple transmission links in a multi-link system will affect the transmission efficiency of each link (e.g., when the operating frequency bands of two links are both 5GHz, these two links will interfere with each other), the link relationships between multiple transmission links in the multi-link system can be determined, and different scheduling strategies can be determined based on the link relationships to ensure service transmission efficiency.
[0072] This application provides a scheme for determining link relationships, which is described below.
[0073] First, this application defines two types of link relationships:
[0074] (1) The link relationship is that the two links affect each other: if data is transmitted on both links at the same time, the performance of each link will be reduced compared to when it exists alone.
[0075] (2) The link relationship is that the two links do not affect each other: If data is transmitted on the two links at the same time, the performance of each link will not be degraded compared to when they exist alone.
[0076] Link performance can include transmission rate, bandwidth, transmission distance, signal-to-noise ratio, etc.
[0077] The method for determining the link relationship can be as follows: When device A and device B establish a connection for the first time (at this time, a first transmission link and a second transmission link have been established between device A and device B), device A can query whether device A supports dual-band dual-concurrent (DBDC), whether device B supports DBDC, the frequency of the first transmission link, the frequency of the second transmission link, and determine the link relationship based on the queried data.
[0078] Dual-band dual-transmission refers to the technology where wireless devices simultaneously use both the 2.4GHz and 5GHz frequency bands for communication. This technology allows devices to transmit and receive data simultaneously on both bands. For multi-link transmission between two devices, both device A and device B must support DBDC. Furthermore, only when the first and second transmission links are located on different frequency bands will the performance of each link not degrade compared to when both links are transmitting data simultaneously. Therefore, when both device A and device B support DBDC, and the frequency bands of the first and second transmission links are different, the link relationship can be determined as the two links being independent of each other; in other cases, the link relationship can also be determined as the two links being independent of each other.
[0079] It should be noted that device A can determine the link relationship between the two transmission links between device A and device B using the above method only when device A and device B first establish a connection. The determined link relationship can be stored in device A and device B. During data transmission between device A and device B, this link relationship can be reused. In addition, when device A and device B are located in the same local area network and re-establish a connection (e.g., when a transmission link is re-established after being interrupted), the link relationship stored in device A and device B can be directly utilized. For example, if device A and device B establish two transmission links and determine and store the link relationship using the method provided in this application, and then interrupt the transmission link between device A and device B, when device A needs to perform service transmission, device A can utilize the stored link relationship to determine a multipath scheduling strategy and re-establish the corresponding transmission link to transmit service data.
[0080] The above method can determine the link relationship between the first transmission link and the second transmission link, so as to determine the corresponding scheduling strategy based on the link relationship, thereby improving the transmission efficiency of services in a multi-link system and realizing the reuse of link relationships, effectively saving computing resources.
[0081] In a multi-link system, device A can further determine the optimal and non-optimal links among the multiple transmission links. Specifically, when the first transmission link is a Wi-Fi direct link and the second transmission link is a WLAN connection link, the Wi-Fi direct link is superior to the WLAN connection link because it has a faster transmission speed and does not require a traditional access point (e.g., a wireless router). Links in the 5GHz band experience less signal interference, have higher transmission rates, and are suitable for short-distance transmission scenarios; therefore, links in the 5GHz band are superior to links in the 2.4GHz band. For example, if the first transmission link is a Wi-Fi direct link in the 5GHz band and the second transmission link is a WLAN connection link in the 2.4GHz band, then based on the above rules, the first transmission link can be determined as the optimal link, and the second transmission link as a non-optimal link. It should be noted that this application only uses the example of the first transmission link being a Wi-Fi direct link and the second transmission link being a WLAN connection link to illustrate the method for determining the optimal and non-optimal links. In practical applications, the multiple transmission links in a multi-link system can also be Wi-Fi direct links, Bluetooth links, WLAN connection links, cellular network links, etc. In these situations, optimal and suboptimal links can be determined based on link quality data that indicates link quality, such as link transmission rates and signal interference conditions across multiple transmission links. This application can identify optimal and suboptimal links among multiple links, enabling full utilization of transmission resources and improving the transmission efficiency of service data during subsequent service scheduling.
[0082] After determining the link relationships, optimal links, and non-optimal links between two links in a multi-link system, this application proposes service scheduling based on link relationships. Since there may be significant delays when establishing a connection between device A and device B (e.g., when establishing a direct Wi-Fi link), users may experience long waiting times when using the link to transmit data. Furthermore, service interruptions may occur during transmission. Therefore, in service scheduling of a multi-link system, different multipath scheduling strategies can be determined for different situations (e.g., when starting a service or during service transmission).
[0083] This application proposes multipath scheduling strategies for two different link relationships under different conditions. The strategies are described in four aspects: (1) multipath scheduling strategy when two links affect each other and the service is started; (2) multipath scheduling strategy when two links do not affect each other and the service is started; (3) multipath scheduling strategy when two links affect each other and the service is transmitted; and (4) multipath scheduling strategy when two links do not affect each other and the service is transmitted.
[0084] (1) Explain the multipath scheduling strategy when two links affect each other and when starting services.
[0085] In a multi-link system, if the two links between device A and device B interfere with each other, it means that the performance of each link will decrease compared to when both links are transmitting data simultaneously. Therefore, to ensure the transmission efficiency of all services between device A and device B, all services must be established on the same link. Specifically, all services transmitted between device A and device B (such as streaming media services and file services) should be established on the optimal link. For example, if the first transmission link is a 5GHz Wi-Fi direct link and the second transmission link is a 5GHz WLAN connection link, and the first and second transmission links interfere with each other, and the first transmission link is the optimal link, then all services between device A and device B (such as file services and streaming media services started at different times) should be established on the first transmission link. The scheduling strategy provided in this application can avoid establishing multiple services on different links when two links interfere with each other, thus preventing the performance degradation of the transmission links and improving the transmission efficiency of services.
[0086] (2) Explain the multipath scheduling strategy for two links that do not affect each other and when the service is started.
[0087] In a multi-link system, device A and device B can transmit both file-based and streaming media services. However, file-based services typically consume most of the bandwidth of the transmission link. Therefore, when the two links do not interfere with each other, the first consideration is to carry file-based and streaming media services on different links to ensure the transmission efficiency of streaming media services. Thus, device A can determine its multipath scheduling strategy based on whether file-based services exist within the multi-link system.
[0088] Specifically, when there are no file-type services in the multi-link system (i.e., no file-type services between device A and device B), and the initiated service is a streaming media service, device A can determine the multipath scheduling strategy as follows: establish the streaming media service on the optimal link between the first and second transmission links. For example, if a second transmission link (WLAN connection link) has already been established between device A and device B, when device A initiates a streaming media service, in order to reduce the waiting time for transmission services, device A can first utilize the established second transmission link to carry the streaming media service, and use the above method to determine the multipath scheduling strategy as establishing the streaming media service on the optimal link (i.e., the first transmission link: WIFI direct link). At this time, device A and device B can establish the first transmission link and utilize the established first transmission link to carry the streaming media service.
[0089] For example, if no link is established between device A and device B, and device A initiates a streaming media service, since the establishment time of the second transmission link is shorter than that of the first, device A can first determine its multipath scheduling strategy to utilize the second transmission link to carry the streaming media service. In this case, device A and device B establish the second transmission link, and the second transmission link is used to carry the streaming media service. Alternatively, device A can then determine its multipath scheduling strategy to utilize the first transmission link to carry the streaming media service. In this case, device A and device B establish the first transmission link, and the first transmission link is used to carry the streaming media service, while the second transmission link no longer carries the media service. This method effectively solves the problem of long service waiting times caused by the long establishment time of a certain transmission link in a multi-link system, thus improving the user experience.
[0090] When a file-type service exists in a multi-link system, and the initiated service is a streaming media service, device A can further determine whether the non-optimal link in the first and second transmission links can carry all streaming media services. If the non-optimal link can carry all streaming media services, device A can determine the multipath scheduling strategy as follows: establish file-type services on the optimal link and establish streaming media services on the non-optimal link; if the non-optimal link cannot carry all streaming media services, device A can determine the multipath scheduling strategy as follows: establish both file-type and streaming media services on the optimal link.
[0091] For example: Device A and Device B have established a first transmission link and a second transmission link (the first transmission link is the optimal link, and the second transmission link is the non-optimal link). File-type services are established on the first transmission link. When Device A receives a streaming media-type service initiation request, Device A can determine whether the second transmission link can carry all streaming media-type services. If the second transmission link can carry all streaming media-type services, the multipath scheduling strategy is to establish the streaming media-type services on the second transmission link, that is, Device A uses the second transmission link to carry streaming media-type services. If the second transmission link cannot carry all streaming media-type services, the multipath scheduling strategy is to establish the streaming media-type services on the first transmission link, that is, Device A uses the first transmission link to carry both streaming media-type services and file-type services.
[0092] Please see Figure 2A This figure is a schematic diagram of a multipath scheduling strategy determination method provided in this application. When a service is started, device A can obtain the link relationship, which indicates whether the two links between device A and device B affect each other. If the two links affect each other (i.e., yes), the multipath scheduling strategy can be determined as follows: both streaming media services and file-type services are established on the optimal link; if the two links do not affect each other (i.e., no), it can be further determined whether there is a file-type service between device A and device B. If there is no file-type service between device A and device B (i.e., no), and the service to be started is a streaming media service, the multipath scheduling strategy can be determined as follows: the streaming media service is established on the optimal link; if there is a file-type service between device A and device B (i.e., yes), and the service to be started is a streaming media service, it can be further determined whether the non-optimal link between device A and device B can carry all streaming media services. If a non-optimal link can carry all streaming media services (i.e., yes), then the multipath scheduling strategy can be determined as follows: establish file-type services on the optimal link and establish streaming media services on the non-optimal link; if a non-optimal link cannot carry all streaming media services (i.e., no), then the multipath scheduling strategy can be determined as follows: establish both file-type services and streaming media services on the optimal link.
[0093] Through such Figure 2AThe method shown can determine the multipath scheduling strategy based on the link relationship. When two links affect each other, all services are established on the optimal link, ensuring the transmission efficiency of all services. When two links do not affect each other, different services can be reasonably scheduled, thereby improving the transmission efficiency of each service in the multi-link system. In addition, existing WLAN connection links (non-optimal links) can be used to carry services first. After establishing a WIFI direct link (optimal link), the services can be switched to the optimal link. This effectively solves the problem of long service waiting time caused by the long time required to establish a WIFI direct link, which is conducive to improving the user experience.
[0094] When determining whether a non-optimal link (i.e., a WLAN connection link) can carry all types of streaming media services, it's worth considering whether newly initiated streaming media services will collide with or experience stuttering with existing services already running on the local area network (LAN). The services on the LAN can use the same frequency as the WLAN connection link (because services on different frequencies typically don't collide). The modulation and coding scheme (MCS) negotiation rate of the link can characterize the communication rate of the WLAN link. Therefore, based on the above principles, the following technical methods can be adopted:
[0095] Obtain the negotiated rate (r0) of the modulation and coding scheme (MCS) for the non-optimal link;
[0096] Obtain service data (already activated) for services using the same frequency as the non-optimal link in the local area network where device A is located. This service data includes the service number (1, 2, ..., M; M is an integer greater than 2) and the data volume (X). m (where m is an integer greater than 0 and less than or equal to M) and the MCS negotiation rate (X) corresponding to each service. m );
[0097] Obtain the service data for the streaming media type to be started in device A. This service data includes the service number (1, 2, ..., N; N is an integer greater than 2) and the data volume (R). n (where n is an integer greater than 0 and less than or equal to N);
[0098] Using the data obtained above, if the data satisfies the conditions shown in equation (1), it can be determined that the non-optimal link can carry all types of streaming media services; otherwise, it can be determined that the non-optimal link cannot carry all types of streaming media services. Equation (1) is:
[0099]
[0100] In equation (1) above, β is a collision avoidance coefficient greater than 0 and less than 1. Equation (1) above indicates that when the sum of the transmission time of each service (already started) using the same frequency as the non-optimal link and the transmission time of each streaming media type service to be started is less than or equal to the collision avoidance coefficient, it means that the non-optimal link can carry all streaming media types of services.
[0101] It should be noted that when the initiated service is a file-type service, if the link relationship involves two links that influence each other, device A can determine the multipath scheduling strategy as follows: establish the file-type service on the optimal link. If the link relationship involves two links that do not influence each other, device A can first determine whether there are streaming media services and file-type services in the multi-link system. If both streaming media services and file-type services exist in the multi-link system (in this case, the service transmission situation may be that both streaming media services and file-type services are established on the optimal link, or the file-type service is established on the optimal link and the streaming media service is established on a non-optimal link), then device A can determine the multipath scheduling strategy as follows: establish the newly initiated file-type service on the optimal link. If only file-type services exist in the multi-link system, then device A can determine the multipath scheduling strategy as follows: establish the newly initiated file-type service on the optimal link. If only streaming media services exist in the multi-link system (in this case, the service transmission situation may be that the streaming media service is established on the optimal link), then device A can determine the multipath scheduling strategy as follows: establish the file-type service on the optimal link, and switch the streaming media service to a non-optimal link.
[0102] (3) Explain the multipath scheduling strategy for the two links that affect each other and during service transmission.
[0103] In a multi-link system, two links have been established between device A and device B (the first transmission link is a direct Wi-Fi link, and the second transmission link is a WLAN link), and the two links can be determined to influence each other based on their relationship. Based on the above description of "two links influencing each other, and the multi-path scheduling strategy when starting a service," services between device A and device B (including streaming media services) are established on the optimal link (i.e., the first transmission link). Device A can detect whether streaming media services experience transmission anomalies (e.g., buffering). If the streaming media service does not experience transmission anomalies, device A does not need to perform service scheduling. If the streaming media service experiences buffering, device A can determine whether there are file-type services between device A and device B. If file-type services exist, since reducing the transmission rate of file-type services will not significantly degrade the user experience, device A can determine the multi-path scheduling strategy as: limiting the rate of file-type services. After limiting the rate of file-type services, streaming media services can obtain more bandwidth, thereby alleviating the buffering phenomenon of streaming media services. After limiting the rate of file-type services, device A can re-detect whether streaming media services are experiencing buffering. If no file-type services exist, device A can determine whether another link (i.e., the non-optimal link) can carry all services. If the other link cannot carry all services, it indicates that the current link carrying all services is experiencing buffering, while the non-optimal link can carry all services, but buffering is not guaranteed. Therefore, device A can determine the multipath scheduling strategy as: switch all services to the other link. After switching links, device A can re-detect whether streaming media services are experiencing buffering. If the other link cannot carry all services, device A can determine the multipath scheduling strategy as: no scheduling. Because the two links between device A and device B affect each other, when streaming media services experience buffering, only existing file-type services can be rate-limited to improve the transmission efficiency of streaming media services and resolve buffering; or all services can be switched to the other link to resolve buffering issues caused by link instability, thereby improving the user experience.
[0104] Please see Figure 2BDevice A and Device B can establish two links, and these links affect each other. There is a streaming media service between Device A and Device B, and this service is established on the first transmission link. Device A can detect if there is any buffering in the streaming media service. If there is no buffering (i.e., no buffering), Device A determines its multipath scheduling strategy to be: no scheduling. If there is buffering (i.e., buffering), Device A can determine if there is any file-type service between Device A and Device B. If file-type service exists (i.e., yes), Device A determines its multipath scheduling strategy to be: rate limiting for file-type service. If file-type service does not exist (i.e., no buffering), Device A determines if the second transmission link can carry all services. If the second transmission link can carry all services (i.e., yes), Device A determines its multipath scheduling strategy to be: migrate all services to the second transmission link. If the second transmission link cannot carry all services (i.e., no buffering), Device A determines its multipath scheduling strategy to be: no scheduling.
[0105] In some cases, a specific implementation method for device A to detect whether streaming media services are experiencing buffering can be: obtaining the latency of N data packet transmissions during the transmission of streaming media service data packets (N can be the number of data packets transmitted within 200 milliseconds or the number of data packets transmitted within 1 second), where d i Let represent the delay of the i-th data packet transmission; device A can determine the average transmission delay based on the delays of N data packet transmissions. The average transmission delay can be calculated as follows: The transmission jitter parameter (denoted as jitter) is determined based on the average transmission delay and the delay of N transmitted data packets. The calculation method for the transmission jitter parameter can be shown in the following formula (2):
[0106]
[0107] Device A can determine whether the transmission jitter parameter is greater than the jitter threshold. If the transmission jitter parameter is greater than the jitter threshold, Device A can determine that the streaming media service is experiencing buffering; if the transmission jitter parameter is less than or equal to the jitter threshold, Device A can determine that the streaming media service is not experiencing buffering. The method for determining the latency of transmitted data packets can be as follows: Figure 2C As shown, device A (the sender) can record the sending time of application layer data packets, denoted as t. init After receiving the application layer data packet, device B (the receiving end) can send an acknowledgment character (ACK) data packet to device A; device A can record the reception time of the ACK data packet, denoted as t. final Device A can determine the transmission time based on t. initand receiving time t final Determine the round-trip time (RTT) of the data packets.
[0108] In some cases, the specific implementation method for device A to detect whether streaming media services are experiencing stuttering can also be a traffic light method. Specifically, device A can obtain the round-trip time (RTT) of each service transmitted in the transmission link. If the RTT of all services in the transmission link is less than the corresponding busy threshold, device A can determine that the transmission link is in a green light state. If the RTT of some services in the transmission link is greater than the corresponding busy threshold, and the RTT of all services in the transmission link is less than the corresponding timeout threshold, device A can determine that the transmission link is in a yellow light state. If the RTT of some services in the transmission link is greater than the corresponding timeout threshold, device A can determine that the transmission link is in a red light state. When the transmission link is in a red light state, device A can determine that it has detected stuttering in the streaming media services transmitted within that transmission link.
[0109] In some cases, the specific implementation of rate limiting for file-type services can be as follows: The maximum effective rate of the transmission link is determined based on the Modulation and Coding Scheme (MCS) rate. The maximum effective rate can be calculated as: Maximum Effective Rate = MCS Rate multiplied by a coefficient ρ, where ρ is greater than 0 and less than 1. For example, the value of ρ could be 0.7, 0.8, etc. After determining the maximum effective rate of the transmission link, the rate limit value for file-type services can be determined based on the service description data of the streaming media services between device A and device B. Assume there are M streaming media services between device A and device B, numbered 1, 2, ..., M. The bandwidth requirement of the streaming media service numbered m is represented by R. m Where m is an integer greater than 0 and less than M, the MCS rate corresponding to this streaming media type of service is MCS. m There are N file type services between device A and device B, and the MCS rate of the transmission link for each file type service is r. n The rate limit for a file type can then be determined using the method shown in formula (3):
[0110]
[0111] Using the method shown in equation (3) above, the rate limit value for each of the N file types can be determined. Device A can then determine the bandwidth allocated to the file type service based on the rate limit value, thereby achieving rate limiting for the file type service. For example: The multi-link system includes link LAB, which is the link from device A (mobile phone) to device B (tablet) (maximum effective rate is 200Mbps); the multi-link system also includes link LAC, which is the link from device A (mobile phone) to device C (PC) (maximum effective rate is 100Mbps); the multi-link system also includes four services, namely screen projection service P1 (requires bandwidth of 30Mbps), carried on link LAB; voice call service V1 (requires bandwidth of 20Mbps), carried on LAB; voice call service V2 (requires bandwidth of 20Mbps), carried on LAB; file service D1, carried on LAC; then using the method shown in the above formula (3), the rate limit value of file service D1 can be calculated as (1-30 / 200-20 / 200-20 / 200)*0.8=0.52. In this application, 0.8 represents the collision prevention coefficient, and the rate limit value of 0.52 indicates that file service D1 data is allowed to be transmitted within a time frame no greater than 0.52 times the unit time (0.52 seconds) within a unit time (e.g., 1 second). In another representation of the rate limit value for file service D1, it is 0.52 * 100 Mbps = 52 Mbps. The method provided in this application can limit the rate of file-type services, thereby resolving stuttering issues in streaming media services and improving the user experience while ensuring efficient service transmission.
[0112] (4) Explain the multipath scheduling strategy for two links that do not affect each other and during service transmission.
[0113] When the two links are independent of each other, device A can use the above method to detect whether there is any buffering in the streaming media service when transmitting streaming media service data. Depending on whether buffering occurs, there are two different multipath scheduling strategies, which are explained below.
[0114] The first type: Explains the multipath scheduling strategy when the link relationship is that the two links do not affect each other, and device A detects that the streaming media service is experiencing a stutter.
[0115] When device A detects a buffering issue in a streaming media service, it can determine whether redundant concurrency has been enabled for this service. Redundant concurrency, as provided in this application, utilizes multiple transmission links to send the same service data. This method avoids transmission buffering caused by the instability of individual transmission links, effectively reducing transmission latency and jitter. If device A has enabled redundant concurrency for streaming media services, it can determine its multipath scheduling strategy as follows: reporting Quality of Service (QOE) information to the service system, causing the service system to reduce the transmission bitrate of streaming media services to alleviate the buffering issue. If device A has not enabled redundant concurrency for streaming media services, it can further determine whether there is a file-type service between device A and device B (i.e., whether the multiple transmission links between device A and device B are transmitting file-type services). If there are no file-type services between device A and device B, device A can determine its multipath scheduling strategy as follows: redundancy and concurrency for streaming media services to alleviate buffering issues. If there are file-type services between device A and device B, it can further determine whether the file-type services are already rate-limited. If the file-type services are already rate-limited, device A can determine its multipath scheduling strategy as: redundancy and concurrency for streaming media services. If the file-type services are not rate-limited, device A can prioritize rate-limiting the file-type services, meaning device A can determine its multipath scheduling strategy as: rate-limiting the file-type services. After implementing the multipath scheduling strategy, device A can continue to monitor whether buffering occurs in streaming media services.
[0116] like Figure 2D As shown, when two links are independent and a buffering issue is detected in streaming media services, device A can first determine if redundant concurrency has been enabled for streaming media services. If redundant concurrency is enabled (i.e., yes), device A can report QOE information to reduce the bitrate of the streaming media service and alleviate the buffering issue. If redundant concurrency is not enabled (i.e., no), device A can determine if there is a file-type service between device A and device B. If there is no file-type service (i.e., no), device A can enable redundant concurrency for streaming media services. If there is a file-type service (i.e., yes), device A determines if the file-type service has been rate-limited. If the file-type service has been rate-limited (i.e., yes), device A can enable redundant concurrency for streaming media services. If the file-type service has not been rate-limited (i.e., no), device A can rate-limit the file-type service. After rate-limiting the file-type service, device A can continue to detect whether a buffering issue occurs in the streaming media service. Figure 2DThe multipath scheduling strategy determination method shown can alleviate the stuttering phenomenon when streaming media services experience stuttering by using methods such as rate limiting for file-type services, redundant concurrency, and reporting QOE information. This is beneficial to improving the transmission efficiency of streaming media services and enhancing the user experience.
[0117] In some cases, there are two links (including a first transmission link and a second transmission link) between device A (the sender) and device B (the receiver). The specific implementation method for redundancy concurrency can be as follows: Device A can send a redundancy concurrency command to device B; upon receiving the command, device B can determine a data buffer area, which can store one or more data packets; device A can use the first and second transmission links to send the same service data packets to device B; device B can store the received data packets in the data buffer area according to their packet numbers. If a data packet with the same number is received, device B can store it again in the data buffer area. After the data buffer area is fully stored, device B can report the data packets stored therein to its application layer. Since the first and second transmission links send the same service data packets, if the data packets transmitted by the first and / or second transmission links are unstable (e.g., packet loss occurs), sending the same data packets between the two links can achieve data packet complementarity to a certain extent, thereby effectively reducing the situation where device B receives discontinuous data packets due to packet loss.
[0118] like Figure 2E As shown, device A can be a mobile phone, and device B can be a tablet. Two links are established between device A and device B (i.e., the first transmission link and the second transmission link). After enabling redundancy and concurrency, device A can send the same data packets (e.g., ...) through the first transmission link and the second transmission link. Figure 2E Data packets 1, 2, and 3 from device A are sent to device B. After receiving the data packets from device A, device B can store them in its data buffer area according to their data packet numbers. For example... Figure 2EAs shown, the first transmission link only transmitted data packets 1 and 2 completely to device B, while data packet 3 was lost. Similarly, the second transmission link only transmitted data packets 1 and 3 completely to device B, while data packet 2 was lost. Device B's data buffer area can store three data packets. Device B can store data packet 1, received via the first and second transmission links, in the first position within the data buffer area; data packet 2, received via the first transmission link, in the second position within the data buffer area; and data packet 3, received via the second transmission link, in the third position within the data buffer area. Once the data buffer area is full (i.e., all positions within the data buffer area contain data packets), device B can report the data packets stored in the data buffer area to the application layer to display the data contained within the data packets. Figure 2E The redundancy concurrency method shown can effectively utilize the diversity of links in a multi-link system to overcome problems caused by the instability of individual links. It can effectively reduce transmission latency and jitter, improve overall transmission quality, and also improve the user experience of users of device B.
[0119] The second approach describes the multipath scheduling strategy when the two links do not affect each other and device A detects no stuttering in streaming media services.
[0120] When device A detects that there is no buffering in streaming media services, it can determine whether redundant concurrency has been enabled for these services. If redundant concurrency is not enabled, it indicates that the link carrying the streaming media service is relatively stable and no scheduling is needed. In this case, device A can continue to monitor the buffering status of the streaming media service. If redundant concurrency has been enabled, it indicates that some links among the multiple links carrying the streaming media service are unstable. Device A can further test the quality of the optimal link in the multi-link system. The quality of the optimal link can be determined based on its transmission jitter parameter. If the quality of the optimal path is excellent (i.e., the transmission jitter parameter of the optimal path is less than a preset threshold), it means that the optimal link can independently carry the streaming media service without further redundant concurrency. Device A can then determine the multipath scheduling strategy as: disabling redundant concurrency for streaming media services. If the quality of the optimal path is poor (i.e., the transmission jitter parameter of the optimal path is greater than or equal to a preset threshold), it means that the optimal link cannot independently carry the streaming media service. Device A can continue to monitor the buffering status of the streaming media service. The multipath scheduling strategy provided in this application can promptly shut down redundant concurrent connections that have already been enabled when there is no buffering in streaming media services, thereby saving transmission resources while ensuring service transmission efficiency.
[0121] like Figure 2FAs shown, two transmission links (the first and second transmission links, respectively) are established between device A and device B, and the two links are independent of each other. There is a streaming media service between device A and device B. Device A can detect whether there is any buffering in the streaming media service. If device A detects buffering (i.e., buffering), it can execute the multipath scheduling strategy described above for when the two links are independent and device A detects buffering in the streaming media service. Figure 2F (Not shown in the image). If device A does not detect any stuttering in streaming media services (i.e., no), device A can determine whether redundant concurrency has been implemented for streaming media services. If device A has implemented redundant concurrency for streaming media services (i.e., yes), device A can determine whether the transmission jitter parameter of the optimal link (i.e., the first transmission link or the second transmission link) is less than the jitter threshold. If the transmission jitter parameter of the optimal link is less than the jitter threshold (i.e., yes), it indicates that the optimal link is stable enough to independently carry streaming media services, and device A can determine the multipath scheduling strategy as: disabling redundant concurrency for streaming media services. In other cases, device A can continue to detect whether stuttering occurs in streaming media services. Figure 2F The method shown can disable redundant concurrency for streaming media services when the transmission link is relatively stable, thereby effectively saving transmission resources and improving the transmission efficiency of streaming media services.
[0122] It should be noted that in the above embodiments, the device that determines the multipath scheduling strategy is device A. However, in actual applications, when device B initiates a service or transmits service data to device A, device B can also execute the method for determining the multipath scheduling strategy as described above. In the above embodiments, device A only performs stuttering detection for streaming media services and determines the corresponding multipath scheduling strategy to effectively reduce stuttering in streaming media services and improve the user experience. In actual applications, device A can also perform stuttering detection for file-type services and determine the corresponding multipath scheduling strategy (the determination method can be similar to the method described above).
[0123] In multi-link systems, the wireless transmission link established between device A and device B has a certain degree of randomness, making it prone to link interruptions. To address this, this application provides a service scheduling method. By performing multipath scheduling for services, continuous transmission of service data can be achieved, effectively overcoming the limitation of single transmission links being easily interrupted. Specifically, multiple transmission links (including a first transmission link and a second transmission link) can exist between device A and device B. The first transmission link carries a first service (device A sends the service data of the first service to device B through the first transmission link). When an unexpected interruption of the first transmission link is detected, device A can generate a multipath scheduling request and, in response to the request, generate a multipath scheduling policy. This policy can be: utilize the second transmission link to carry the first service. Then, device A can, according to the multipath scheduling policy, send the service data of the first service to device B through the second transmission link, instead of sending the service data through the first transmission link.
[0124] When the first transmission link is detected to have recovered, device A can generate a multipath scheduling request again and, in response to the request, generate a multipath scheduling policy. This policy can be: utilize the first transmission link to carry the first service. Device A can then use this policy to send the service data of the first service to device B via the first transmission link, instead of sending it via the second transmission link.
[0125] like Figure 2G As shown, multiple transmission links (including a first transmission link and a second transmission link) are established between device A and device B. Device A can send service data to device B through the first transmission link. When an unexpected interruption of the first transmission link is detected, device A can generate a multipath scheduling strategy. This strategy can be: utilize the second transmission link to carry the first service; device A can then send the service data of the first service to device B through the second transmission link, instead of sending it through the first transmission link. When the first transmission link is restored, device A can generate a multipath scheduling strategy. This strategy can be: utilize the first transmission link to carry the first service; device A can then send the service data of the first service to device B through the first transmission link, instead of sending it through the second transmission link. Figure 2G The method shown can utilize multiple transmission links to achieve continuous transmission of business data, avoiding interruptions in business data transmission caused by unexpected interruptions of transmission links in single transmission link scenarios, effectively improving the transmission efficiency of business data, and also enhancing the user experience.
[0126] The following is Figure 1AThe multi-link system consisting of two devices (device A and device B) is illustrated below. Taking the first transmission link (WIFI direct link) and the second transmission link (WLAN connection link) as examples, the service scheduling process of the multi-link system under the following conditions is explained: service startup, service transmission abnormality, the same operating frequency band of the transmission links, and different operating frequency bands of the transmission links.
[0127] When device A and device B in a multi-link system establish a transmission link for the first time, they can determine the link information. This link information indicates whether the first and second transmission links established between device A and device B affect each other (i.e., the link information indicates the link relationship between the first and second transmission links). Figure 3A As shown, the specific method for determining link information includes, but is not limited to, the following steps:
[0128] S101, the business module of device A initiates a business request.
[0129] For example, device A can display a user interface and interact with the user through the user interface. Device A's service module can respond to the user's operation by initiating a service request, which can request device A to establish a first transmission link with device B. It should be noted that device A and device B have already established a second transmission link (WLAN connection link) at this time.
[0130] S102, the service module of device A sends a conference establishment request to the transmission module of device A.
[0131] For example, in response to a service request, the service module of device A sends a conference establishment request to the transport module to request the establishment of a conference (Session) with device B.
[0132] S103, Device A's transmission module sends a connection establishment request to Device A's networking module.
[0133] For example, the transmission module may send a connection establishment request to the networking module in response to a conference establishment request, the networking module being used to determine the type of transmission link established with device B.
[0134] S104. The networking module of device A sends a WIFI direct connection request to the short-range module of device A.
[0135] For example, the networking module of device A can determine to establish a WIFI direct link with device B and send a WIFI direct link request to the short-range module of device A.
[0136] S105. The short-range module of device A sends a WIFI direct connection request to the short-range module of device B.
[0137] For example, the short-range module of device A sends a Wi-Fi Direct request to device B to request the establishment of a Wi-Fi Direct link.
[0138] S106. The short-range module of device B sends the establishment completion information to the short-range module of device A, and also sends the establishment completion information to the transmission module of device B.
[0139] For example, in response to a Wi-Fi Direct request, device B establishes a Wi-Fi Direct link (i.e., the first transmission link) with device A and sends an establishment completion message to device A's short-range module. Simultaneously, device B's short-range module can also send an establishment completion message to device B's transmission module.
[0140] S107. The short-range module of device A sends the establishment completion information to the transmission module of device A.
[0141] For example, after receiving the connection completion information, the short-range module of device A can forward the connection completion information to the transmission module of device A so that the transmission module can perform the subsequent link information determination process.
[0142] S108. The transmission module of device A sends the first query request to the short-range module of device A.
[0143] For example, the transmission module of device A can send a first query request to the short-range module. The first query request can request whether device A supports DBDC, the frequency of the first transmission link, and the frequency of the second transmission link.
[0144] S109. The short-range module of device A sends the first query result to the transmission module of device A.
[0145] For example, the short-range module of device A can respond to a first query request, determine whether device A supports DBDC, the frequency of the first transmission link, and the frequency of the second transmission link, and generate a first query result. The short-range module can then send the first query result to the transmission module.
[0146] S110, the transmission module of device A sends the first query result and the second query request to the transmission module of device B.
[0147] For example, after receiving the first query result, the transmission module of device A also needs to determine whether device B supports DBDC, and then determine the link information. Therefore, the transmission module of device A can send the first query result and the second query request to the transmission module of device B, wherein the second query request is used to request whether device B supports DBDC.
[0148] S111, Device B's transmission module sends a second query request to Device B's short-range module.
[0149] For example, after receiving the first query result and the second query request sent by device A, device B can store the first query result and send the second query request to the short-range module of device B.
[0150] S112. The short-range module of device B sends the second query result to the transmission module of device B, and sends the second query result to the transmission module of device A.
[0151] For example, in response to a second query request, the short-range module of device B determines whether device B supports DBDC and generates a second query result. The short-range module of device B can send the second query result to the transmission module of device B, so that the transmission module of device B determines link information based on the first and second query results. The short-range module of device B can also send the second query result to the transmission module of device A, so that the transmission module of device A determines the link information.
[0152] S113. The transmission module of device A determines and stores the link information, and the transmission module of device B determines and stores the link information.
[0153] For example, the transmission module of device A can determine link information based on the first query result and the second query result determined by the short-range module of device B, and store the link information. The transmission module of device B can also determine link information based on the first and second query results. The link information determined by device A and device B is the same. After determining the link information, the transmission module of device A can also store the link information in the networking module of device A, so that when device A and device B establish a transmission link again, the link information can be directly used, thereby avoiding resource consumption caused by repeated queries. After determining the link information, the transmission module of device B can also store the link information in the networking module of device B.
[0154] pass Figure 3A The method shown allows devices in a multi-link system to determine and store link information when establishing a link for the first time. This facilitates subsequent scheduling of services in the multi-link system based on the link information, thereby improving service transmission efficiency and performance.
[0155] The following details the service scheduling method provided in this application, which is also the method for determining the multipath scheduling strategy. This service scheduling method includes: (i) a service scheduling method when two links do not affect each other and the service is started; (ii) a service scheduling method when two links do not affect each other and the service is transmitted; (iii) a service scheduling method when two links affect each other and the service is started; (iv) a service scheduling method when two links affect each other and the service is transmitted; and (v) a service scheduling method when the transmission link is interrupted.
[0156] (i) The two links do not affect each other, and the service scheduling method at the start of the service.
[0157] Equipment A and Equipment B can be used as described above. Figure 3A The method shown determines link information indicating that the first and second transmission links between device A and device B are independent. After determining the link information, the transmission link between device A and device B can be disconnected. At this point, as... Figure 3B As shown, when the initiated service is a streaming media service (such as screen mirroring), the service scheduling method includes, but is not limited to, the following steps:
[0158] S201, Device A's screen mirroring application receives a screen mirroring request.
[0159] For example, device A can display a user interface for user interaction. Device A's screen mirroring application can receive a screen mirroring request generated based on user input. This request is used to request screen mirroring to device B, i.e., to perform a screen mirroring service on device B. The service type for this screen mirroring service is streaming media.
[0160] S202. The screen mirroring application of device A sends a multipath scheduling request to the multipath scheduling system of device A.
[0161] For example, device A includes a multipath scheduling system, which determines multipath scheduling instructions based on multipath scheduling policies and link information, thereby enabling service scheduling in a multi-link system. When device A starts a screen projection service, it can send a multipath scheduling request to the multipath scheduling system.
[0162] S203, The multipath scheduling system of device A sends an information query request to the transmission module of device A.
[0163] For example, the transmission module of device A stores link information. The multipath scheduling system of device A can send an information query request to the transmission module, which is used to request the query of link information.
[0164] S204. The transmission module of device A sends link information to the multipath scheduling system of device A.
[0165] For example, in response to an information query request, the transmission module of device A sends link information to the multipath scheduling system of device A. The multipath scheduling system can store the link information so that when a multipath scheduling request is received again in the future, the multipath scheduling system can directly reuse the link information, thereby reducing processing time and improving the efficiency of service scheduling.
[0166] S205. The multipath scheduling system of device A sends the first scheduling information to the link establishment system of device A.
[0167] For example, the multipath scheduling system of device A can determine the first scheduling information based on link information and the screen projection service. Specifically, the first transmission link is a direct Wi-Fi link, the second transmission link is a WLAN connection link, the transmission rate of the first transmission link is greater than that of the second transmission link, and the link establishment time of the first transmission link is longer than that of the second transmission link. In order to quickly start the transmission process of the screen projection service, the multipath scheduling system of device A can determine the first scheduling information as: establish a second transmission link with device B and use the second transmission link to carry the screen projection service. After determining the first scheduling information, the multipath scheduling system of device A can send the first scheduling information to the link establishment system of device A to establish the corresponding transmission link.
[0168] S206. The link establishment system of device A sends a link establishment request to the WIFI network card 2 of device A.
[0169] For example, in response to the first scheduling information, the link establishment system of device A sends a link establishment request to the Wi-Fi network card 2 of device A, so as to establish a WLAN connection link between device A and device B. A Wi-Fi network card, also known as a Wi-Fi wireless network card, is a terminal wireless network device that enables devices to connect to a wireless network.
[0170] S207. The WIFI network card 2 of device A establishes a second transmission link with the WIFI network card 2 of device B, and sends the establishment completion information to the multipath scheduling system of device A.
[0171] For example, Wi-Fi network card 2 of device A establishes a second transmission link with Wi-Fi network card 2 of device B. This second transmission link is a WLAN connection link. After the link is established, Wi-Fi network card 2 of device A can send a completion message to the multipath scheduling system of device A.
[0172] S208. The multipath scheduling system of device A sends a bandwidth allocation request to the bandwidth allocation system of device A.
[0173] For example, to ensure smooth service transmission, device A's multipath scheduling system can send a bandwidth allocation request to device A's bandwidth allocation system, which can allocate bandwidth for the screen projection service. Specifically, the bandwidth allocation system can determine the remaining bandwidth of the transmission links in the multi-link system to judge whether it meets the bandwidth requirements of the service. If the remaining bandwidth of the transmission links meets the bandwidth requirements of the service, the bandwidth allocation system can allocate bandwidth according to the service requirements; if the remaining bandwidth of the transmission links meets the bandwidth requirements of the service, the bandwidth allocation system will not allocate bandwidth. In this case, the bandwidth allocation system can send a service startup failure message to the application layer to terminate the service startup process.
[0174] S209. The bandwidth allocation system of device A sends bandwidth parameters to the transmission module of device A, and the screen projection application of device A sends the service data of the screen projection service to the transmission module of device A.
[0175] For example, the bandwidth allocation system of device A can determine bandwidth parameters based on the screen projection service. These bandwidth parameters indicate the bandwidth allocated to the screen projection service. The bandwidth allocation system can send bandwidth data to the transmission module of device A, and the screen projection application of device A can send the service data of the screen projection service to the transmission module of device A, so that the transmission module can transmit the service data of the screen projection service.
[0176] S210, The transmission module of device A sends the service data of the screen projection service to the WIFI network card 2 of device A based on the bandwidth parameter.
[0177] S211. Device A's WIFI network card 2 sends the screen mirroring service data to Device B's WIFI network card 2.
[0178] Among them, the WIFI network card 2 of device A and the WIFI network card 2 of device B transmit the service data of the screen projection service through the second transmission link.
[0179] S212, The multipath scheduling system of device A sends the second scheduling information to the link establishment system of device A.
[0180] For example, after device A transmits the service data for the screen projection service using the second transmission link, since the transmission efficiency of the first transmission link is higher than that of the second transmission link, in order to further improve the transmission efficiency of the screen projection service, the multipath scheduling system can generate second scheduling information. This second scheduling information can be: construct the first transmission link and utilize the first transmission link to carry the screen projection service. The multipath scheduling system can send the second scheduling information to the link establishment system of device A.
[0181] S213. The link establishment system of device A sends a link establishment request to the WIFI network card 1 of device A.
[0182] For example, in response to the second scheduling information, the link establishment system of device A sends a link establishment request to the WIFI network card 1 of device A so as to establish a WIFI direct link between device A and device B.
[0183] S214. The WIFI network card 1 of device A establishes a first transmission link with the WIFI network card 1 of device B, and sends the establishment completion information to the multipath scheduling system of device A.
[0184] For example, Wi-Fi network card 1 of device A establishes a first transmission link with Wi-Fi network card 1 of device B. This first transmission link is a direct Wi-Fi link. After establishing the first transmission link, Wi-Fi network card 1 of device A can send a completion message to the multipath scheduling system of device A.
[0185] S215. The transmission module of device A sends the service data of the screen projection service to the WIFI network card 1 of device A based on the bandwidth parameter.
[0186] S216. Device A's WIFI network card 1 sends the service data of the screen projection service to Device B's WIFI network card 1 through the first transmission link.
[0187] S217. The multipath scheduling system of device A sends third scheduling information to the WIFI network card 2 of device A.
[0188] For example, after device A transmits the service data for the screen projection service through the first transmission link, it can stop transmitting the service data for the screen projection service through the second transmission link to save transmission resources. Therefore, the multipath scheduling system of device A can generate third scheduling information, which can be: the second transmission link does not carry the service data for the screen projection service. The multipath scheduling system of device A can send the third scheduling information to the WIFI network card 2 of device A.
[0189] S218, Device A's WIFI network card 2 no longer sends service data for screen mirroring.
[0190] Through the above Figure 3B The process shown allows for the initial transmission of service data using a transmission link that takes less time to establish but has lower transmission efficiency when starting a service. Once a higher-efficiency transmission link is established, the service data can then be transmitted using that link. This avoids the low service startup efficiency caused by the long link establishment time, enabling faster service startup and improving the user experience.
[0191] The above Figure 3B The diagram illustrates a scheduling method for launching streaming media services. The scheduling information in this method is determined based on the aforementioned "two links do not interfere with each other, and the multipath scheduling strategy is in place when the service is launched." Specifically, Figure 3B If, before the screen mirroring service is initiated, there are no other services in the transmission state between device A and device B, and the first transmission link is superior to the second transmission link, then the streaming media type screen mirroring service should be established on the optimal link (i.e., the first transmission link).
[0192] In a multi-link system, multiple services may exist between device A and device B. For example, after screen mirroring is initiated, there may be pending call services. Figure 3C As shown, when device A initiates a call service (the communication service type is streaming media) during the transmission of screen projection service, the service scheduling method may include, but is not limited to:
[0193] S219. Device A's call application receives a call request.
[0194] For example, the calling application of device A can receive a call request generated based on user operation instructions. This call request is used to request a call operation to device B, that is, to perform a call service to device B.
[0195] S220, Device A's call application sends a multipath scheduling request to Device A's multipath scheduling system.
[0196] For example, in response to a call request, the call application of device A sends a multipath scheduling request to the multipath scheduling system of device A to request service scheduling for the call service.
[0197] S221. The multipath scheduling system of device A sends the fourth scheduling information to the bandwidth allocation system of device A.
[0198] For example, if there is a screen mirroring service in transmission between device A and device B, and the service type of the screen mirroring service is streaming media, meaning there is no file-type service between device A and device B, then based on the above-mentioned "two links do not affect each other, and the multipath scheduling strategy at the time of service startup," the multipath scheduling system can determine the fourth scheduling information as: utilize the first transmission link to carry the call service. The multipath scheduling system can also request the bandwidth allocation system of device A to allocate bandwidth for the call service, thereby obtaining the bandwidth parameters of the call service.
[0199] S222, The bandwidth allocation system of device A sends bandwidth parameters to the transmission module of device A, and the call application of device A sends call service data to the transmission module of device A.
[0200] The transmission module of device A can also be referred to as the sending system of device A. The transmission module of device A can transmit the service data of the call service based on the bandwidth parameter.
[0201] S223. The transmission module of device A transmits the service data of the call service to the WIFI network card 1 of device A based on the bandwidth parameter.
[0202] S224. Device A's WIFI network card 1 sends call service data to Device B's WIFI network card 1 through the first transmission link.
[0203] Through the above Figure 3C The method shown can enable the initiation of multiple streaming media types of services, ensuring the transmission efficiency of services in a multi-link system.
[0204] In a multi-link system, there may be multiple streaming media services and multiple file-related services between device A and device B. For example, after initiating screen mirroring and voice calls, there may be file-related services yet to be initiated. Figure 3D As shown, when device A initiates a file service (the file service type is file) while transmitting screen projection and making a call, the service scheduling method may include, but is not limited to:
[0205] S225, Device A's file application receives a file transfer request.
[0206] For example, the file application of device A can receive a file transfer request generated according to user operation instructions. This file transfer request is used to request file transfer to device B, that is, to perform file service to device B.
[0207] S226. The file application of device A sends a multipath scheduling request to the multipath scheduling system of device A.
[0208] For example, in response to a file transfer request, the file application of device A may send a multipath scheduling request to the multipath scheduling system of device A to request service scheduling for the file service.
[0209] S227. The multipath scheduling system of device A sends the fifth scheduling information to the bandwidth allocation system of device A.
[0210] For example, there is a screen projection service and a call service in transmission between device A and device B (both established on the first transmission link). The service types of screen projection and call services are both streaming media, while the service type of the file service to be started is file. Based on the above "two links do not affect each other, and the multipath scheduling strategy when the service is started", when there are file service and streaming media service between device A and device B, it should be determined whether the non-optimal link (i.e., the second transmission link) can carry all streaming media services. The multipath scheduling system of device A can determine whether the second transmission link can carry screen projection and call services based on the method provided by the above formula (1). Assuming that the multipath scheduling system determines that the second transmission link can carry screen projection and call services, the multipath scheduling system of device A can generate fifth scheduling information, which can be: establish the file service on the first transmission link. The multipath scheduling system of device A can also request the bandwidth allocation system to allocate bandwidth for the file service to obtain the bandwidth parameters of the file service.
[0211] S228. The bandwidth allocation system of device A sends bandwidth parameters to the transmission module of device A, and the file application of device A sends the service data of the file service to the transmission module of device A.
[0212] Among them, the transmission module of device A can determine the bandwidth parameters based on the bandwidth allocation system to transmit the service data of file services.
[0213] S229. The transmission module of device A sends the service data of the file service to the WIFI network card 1 of device A.
[0214] S230, Device A's WIFI network card 1 sends file service data to Device B's WIFI network card 1 through the first transmission link.
[0215] S231. The multipath scheduling system of device A sends the sixth scheduling information to the WIFI network card 2 of device A.
[0216] For example, if file transfer is established on the first transmission link, and the second transmission link can carry voice calls and screen projection, then to ensure the transmission efficiency of file transfer, voice calls, and screen projection, the multipath scheduling system of device A can generate a sixth scheduling message. This sixth scheduling message can be: utilize the second transmission link to carry voice calls and screen projection. The multipath scheduling system can send the sixth scheduling message to the Wi-Fi network card 2 of device A, so that the Wi-Fi network card 2 can transmit voice calls and screen projection.
[0217] S232. Device A's WIFI network card 2 sends call service and screen projection service data to Device B's WIFI network card 2 through the second transmission link.
[0218] S233, Device A's WIFI network card 1 no longer sends call and screen mirroring service data to Device B's WIFI network card 1.
[0219] After the service scheduling is completed, there are file services, call services and screen projection services in the transmission state between device A and device B. The file service is established on the first transmission link (optimal link), and the call service and screen projection service are established on the second transmission link (non-optimal link).
[0220] Through the above Figure 3D The service scheduling method shown can establish file-type services and streaming media-type services on different transmission links without affecting each other, thus achieving isolation between different types of services, effectively ensuring the transmission efficiency of different types of services, and making full use of the transmission resources in the multi-link system to improve service transmission efficiency and performance.
[0221] In a multi-link system, when the first and second transmission links between device A and device B do not affect each other, and there are multiple different types of services to be started, the service scheduling process is as follows: Figure 3E The method described herein involves: receiving a screen mirroring service initiation request; establishing a second transmission link and using it to carry the screen mirroring service; establishing a first transmission link and using it to carry the screen mirroring service; receiving a call service initiation request; using the first transmission link to carry the call service; receiving a file service initiation request; using the first transmission link to carry the file service; and migrating the screen mirroring service and call service from the first transmission link to the second transmission link. This method enables service initiation and multi-link coordination, improves service initiation efficiency, ensures services are established on suitable transmission links, fully utilizes transmission resources in a multi-link system, and improves service transmission efficiency and performance.
[0222] (ii) The two links do not affect each other, and the service scheduling method during service transmission.
[0223] When transmitting streaming media services between device A and device B, to ensure smooth transmission, device A can detect transmission anomalies and perform corresponding service scheduling. For example... Figure 3F As shown, there are file transfer, screen mirroring, and voice calls between device A and device B, and all three services are established on the first transmission link (the first and second transmission links do not affect each other). The service scheduling method includes, but is not limited to, the following steps:
[0224] S301, The QOE detection system of device A detected that the screen mirroring service was lagging.
[0225] For example, the quality of experience (QOE) detection system of device A can detect stuttering in the screen-casting service during transmission. Device A can determine the transmission jitter parameter using the method shown in equation (2) above. When the transmission jitter parameter corresponding to the screen-casting service is greater than the jitter threshold, device A can determine that stuttering has been detected in the screen-casting service. Currently, there are file services, call services, and screen-casting services in transmission between device A and device B, and the screen-casting service is experiencing stuttering. According to the above "two links do not affect each other, and the multipath scheduling strategy during service transmission", device A can limit the rate of file-type services (i.e., file services) between device A and device B. If stuttering is detected in the screen-casting service, the QOE detection system can generate a quality of service scheduling request.
[0226] S302. The QOE detection system of device A sends a service quality scheduling request to the QoS scheduling system of device A.
[0227] For example, the QOE detection system of device A can generate a Quality of Service (QoS) scheduling request in response to detecting a stuttering in the screen mirroring service. This QoS scheduling request requests rate limiting for file services transmitted within the first transmission link. The QOE detection system can send this QoS scheduling request to the Quality of Service (QoS) scheduling system of device A. The QoS scheduling system determines the rate limiting parameters for file-type services to implement rate limiting for file-type services.
[0228] S303. The QoS scheduling system of device A sends the rate limit value to the bandwidth allocation system of device A.
[0229] For example, the QoS scheduling system of device A can determine the rate limit value of the file service according to the method shown in equation (3) above, and can send the rate limit value to the bandwidth allocation system of device A so that the bandwidth allocation system can determine the new bandwidth parameters of the file service according to the rate limit value.
[0230] S304. The bandwidth allocation system of device A sends new bandwidth parameters to the transmission unit of device A.
[0231] For example, the bandwidth allocation system of device A can determine new bandwidth parameters for the file service based on the service requirements and rate limits of the file service. The bandwidth allocation system can also send the new bandwidth parameters to the transmission unit of device A so that the service data of the file service can be transmitted subsequently based on the new bandwidth parameters.
[0232] S305. The transmission unit of device A sends the service data of the file service to the WIFI network card 1 of device A based on the new bandwidth parameters.
[0233] For example, since the file service is carried on the first transmission link, and the first transmission link is established based on the WIFI network card 1 of device A and the WIFI network card 1 of device B, the transmission unit of device A can send the service data of the file service to the WIFI network card 1 of device A based on the new bandwidth parameters.
[0234] S306. Device A's WIFI network card 1 sends file service data to Device B's WIFI network card 1.
[0235] S307. The QOE detection system of device A detected that the screen mirroring service was lagging.
[0236] For example, after rate limiting the file transfer service between device A and device B, device A can continue to monitor for stuttering in the screen mirroring service. If device A's QOE detection system detects that stuttering still occurs in the screen mirroring service, then, since rate limiting has already been applied to file transfers, based on the aforementioned "two links do not affect each other, and the multi-path scheduling strategy during service transmission," device A can enable redundant concurrency for the screen mirroring service. Specifically, after device A's QOE detection system detects stuttering in the screen mirroring service, it can request multi-path scheduling.
[0237] S308. The QOE detection system of device A sends a multipath scheduling request to the multipath scheduling system of device A.
[0238] For example, in response to detecting a stutter in the screen mirroring service, the QOE detection system of device A can generate a multipath scheduling request. This multipath scheduling request is used to request service scheduling for the screen mirroring service to resolve the stuttering issue. The QOE detection system of device A can send the multipath scheduling request to the multipath scheduling system of device A.
[0239] S309. The multipath scheduling system of device A sends the sixth scheduling information to the transmission module of device A, and also sends the sixth scheduling information to the multipath scheduling system of device B.
[0240] For example, the multipath scheduling system of device A can determine the sixth scheduling information, which may be: enable redundant concurrency for screen projection services. Figure 2E As shown, during redundant concurrency, multiple transmission links between device A and device B need to coordinate. Therefore, device A's multipath scheduling system can send a sixth scheduling message to device A's transmission module, enabling device A's transmission module to utilize device A's Wi-Fi network cards 1 and 2 to transmit the service data for the screen projection service. Device A's transmission module can also send the sixth scheduling message to device B's multipath scheduling system, enabling device B to determine its data buffer area.
[0241] S310, the multipath scheduling system of device B sends a buffer area retrieval request to the receiving system of device B.
[0242] For example, after receiving the sixth scheduling information sent by device A, the multipath scheduling system of device B can send a buffer area retrieval request to the receiving system of device B to determine the data buffer area for storing data packets.
[0243] S311. The receiving system of device B sends the acquisition completion information to the multipath scheduling system of device B, and sends the acquisition completion information to the transmission module of device A.
[0244] For example, the receiving system of device B can determine the data cache area in response to a cache area retrieval request. After determining the data cache area, the receiving system of device B can send retrieval completion information to the multipath scheduling system of device B, and can also send retrieval completion information to the transmission module of device A, so that the transmission module of device A can start transmitting the service data of the screen projection service using multiple transmission links.
[0245] S312, The transmission module of device A sends the service data of the screen projection service to the WIFI network card 1 of device A.
[0246] Among them, the transmission module of device A can determine the bandwidth parameters of the screen projection service based on the bandwidth allocation system and send the service data of the screen projection service to the WIFI network card 1 of device A.
[0247] S313. Device A's WIFI network card 1 sends the screen mirroring service data to Device B's WIFI network card 1.
[0248] In this process, the Wi-Fi network card 1 of device A transmits the service data for the screen mirroring service to device B through the first transmission link. The service data for the screen mirroring service includes one or more data packets.
[0249] S314. The WIFI network card 1 of device B sends the service data of the screen projection service to the receiving system of device B.
[0250] For example, the Wi-Fi network card 1 of device B can send the received screen projection service data to the receiving system of device B, and the receiving system of device B can store the screen projection service data in the data cache area. When the data cache area is full (i.e., when the data cache area is full of service data), device B can display the service data stored in the data cache area.
[0251] S315. The transmission module of device A sends the service data of the screen projection service to the WIFI network card 2 of device A.
[0252] Among them, the transmission module of device A can determine the bandwidth parameters of the screen projection service based on the bandwidth allocation system and send the service data of the screen projection service to the WIFI network card 1 of device A.
[0253] S316. Device A's WIFI network card 2 sends the screen mirroring service data to Device B's WIFI network card 2.
[0254] Among them, the WIFI network card 2 of device A sends the service data of the screen projection service to device B through the second transmission link.
[0255] S317, Device B's WIFI network card 2 sends the screen projection service data to Device B's receiving system.
[0256] For example, the Wi-Fi network card 2 of device B can send the received screen projection service data to the receiving system of device B, and the receiving system of device B can store the screen projection service data in the data cache area. When duplicate service data is received, device B can repeatedly store the service data in the corresponding location of the data cache area.
[0257] S318. The QOE detection system of device A detected that the screen mirroring service was lagging.
[0258] For example, after device A enables redundant concurrency for the screen mirroring service, device A can continue to detect whether the screen mirroring service experiences any lag. If lag is detected again, according to the aforementioned "two links do not affect each other, and the multipath scheduling strategy during service transmission," device A can report Quality of Service (QOE) information to the business system (the business system corresponding to the screen mirroring service is the screen mirroring application). That is, after detecting lag in the screen mirroring service, device A's QOE detection system generates an information reporting request and sends it to device A's QOE reporting system.
[0259] S319. The QOE detection system of device A sends an information reporting request to the QOE reporting system of device A.
[0260] For example, in response to detecting a stutter in the screen mirroring service, the QOE detection system of device A generates an information reporting request. This information reporting request is used to request the reporting of service quality information to the screen mirroring application corresponding to the screen mirroring service. The QOE detection system of device A can send the information reporting request to the QOE reporting system of device A.
[0261] S320, Device A's QOE reporting system sends service quality information to Device A's screen mirroring application.
[0262] For example, the QOE reporting system of device A can send quality of service information to the screen mirroring application of device A, so that the screen mirroring application can alleviate the lag of the screen mirroring service by reducing the transmission bit rate.
[0263] Through the above Figure 3F The scheduling method shown can perform service scheduling when two transmission links do not affect each other and streaming media services experience buffering. It can make full use of the transmission resources in the multi-link system to save on service buffering, improve service transmission efficiency, and enhance the user experience.
[0264] In a multi-link system, when the first and second transmission links between device A and device B are independent of each other, and streaming media services experience buffering, the service scheduling process is as follows: Figure 3GAs shown: File transfer and streaming media services (including screen mirroring and voice calls) are both established on the first transmission link. When device A detects a stutter in the screen mirroring service, it can limit the file transfer rate. If device A detects a stutter in the screen mirroring service again, it can enable redundant concurrency for the screen mirroring service. If device A still detects a stutter in the screen mirroring service, it can upload Quality of Service (QOE) information to the screen mirroring application to resolve the stuttering by reducing the transmission bitrate. The method provided in this application can alleviate service stuttering during transmission, improve transmission efficiency, fully utilize transmission resources in a multi-link system, and enhance the user experience.
[0265] (iii) The two links affect each other, and the service scheduling method when starting the service.
[0266] Equipment A and Equipment B can be used as described above. Figure 3A The method shown determines link information indicating that the first and second transmission links between device A and device B affect each other. After determining the link information, the transmission link between device A and device B can be disconnected. At this point, when the initiated service is a streaming media service (e.g., screen mirroring), according to the aforementioned "two links do not affect each other, and the multipath scheduling strategy at service initiation," all services between device A and device B should be established on the optimal link. Therefore, the service scheduling method can be as described above. Figure 3B As shown, a first transmission link and a second transmission link are established between device A and device B (where the first transmission link is the optimal link and the second transmission link is the non-optimal link), and the screen projection service is established on the first transmission link.
[0267] When there is a screen mirroring service in transmission between device A and device B, device A can also initiate a call service. In this case, according to the above-mentioned principle that "the two links do not affect each other, and the multi-path scheduling strategy is in place when the service is initiated," the call service should also be established on the optimal link. Therefore, when device A initiates a call service (the communication service type is streaming media), the service scheduling method can be as described above. Figure 3C As shown, the call service is established on the first transmission link.
[0268] When there is a screen mirroring service and a voice call service in transmission between device A and device B, device A can also initiate a file-type service (e.g., file service). In this case, according to the above principle that "the two links do not interfere with each other, and the multipath scheduling strategy is applied when the service is initiated," the file service should also be established on the optimal link. Therefore, as follows... Figure 3H As shown, when device A starts the file service, the service scheduling method includes, but is not limited to, the following steps:
[0269] S401, Device A's file application receives a file transfer request.
[0270] For example, the file application of device A can receive a file transfer request generated according to user operation instructions. This file transfer request is used to request file transfer to device B, that is, to perform file service to device B.
[0271] S402, The file application of device A sends a multipath scheduling request to the multipath scheduling system of device A.
[0272] For example, in response to a file transfer request, the file application of device A may send a multipath scheduling request to the multipath scheduling system of device A to request service scheduling for the file service.
[0273] S403, The multipath scheduling system of device A sends the seventh scheduling information to the bandwidth allocation system of device A.
[0274] For example, device A and device B have a screen mirroring service and a voice call service in transit (both established on the first transmission link). Both the screen mirroring and voice call services are streaming media types, while the file service to be initiated is a file type. Based on the aforementioned "two links influence each other, and the multipath scheduling strategy at service initiation," both the file type service and the streaming media service are established on the optimal link (i.e., the first transmission link). Device A's multipath scheduling system can then generate a seventh scheduling message, which can be: establish the file service on the first transmission link. Device A's multipath scheduling system can also request the bandwidth allocation system to allocate bandwidth for the file service, obtaining the bandwidth parameters for the file service.
[0275] S404. The bandwidth allocation system of device A sends bandwidth parameters to the transmission module of device A, and the file application of device A sends the service data of the file service to the transmission module of device A.
[0276] Among them, the transmission module of device A can determine the bandwidth parameters based on the bandwidth allocation system to transmit the service data of file services.
[0277] S405, Device A's transmission module transmits file service data to Device A's WIFI network card 1 based on bandwidth allocation parameters.
[0278] S406. The WIFI network card 1 of device A transmits the service data of the file service to the WIFI network card 1 of device A through the first transmission link.
[0279] The method provided in this application can establish both file-type and streaming media-type services on the optimal link when two transmission links interfere with each other, avoiding the decrease in service transmission efficiency caused by the mutual interference of the two transmission links. This allows services to be established on suitable transmission links, which is beneficial to ensuring service transmission efficiency.
[0280] In a multi-link system, when the first and second transmission links between device A and device B interfere with each other, and there are multiple different types of services to be started, the service scheduling process is as follows: Figure 3I The method described herein involves: receiving a screen mirroring service initiation request; establishing a second transmission link and using the second transmission link to carry the screen mirroring service; establishing a first transmission link and using the first transmission link to carry the screen mirroring service; receiving a call service initiation request; using the first transmission link to carry the call service; receiving a file service initiation request; and using the first transmission link to carry the file service. The method provided in this application enables service initiation and multi-link coordination, improves service initiation efficiency, ensures that services are established on suitable transmission links, avoids mutual interference between multiple transmission links leading to low service transmission efficiency, and fully utilizes transmission resources in a multi-link system to improve service transmission efficiency and performance.
[0281] (iv) The two links affect each other, and the service scheduling method during service transmission.
[0282] When transmitting streaming media services between device A and device B, to ensure smooth transmission, device A can detect transmission anomalies and perform corresponding service scheduling. For example... Figure 3J As shown, there are file transfer, screen mirroring, and voice calls between device A and device B, and all three services are established on the first transmission link (the first and second transmission links affect each other). Therefore, the service scheduling method includes, but is not limited to, the following steps:
[0283] S501, The QOE detection system of Device A detected that the screen mirroring service was lagging.
[0284] For example, the QOE detection system of device A can perform stuttering detection on the screen projection service in the transmission state. Device A can determine the transmission jitter parameters using the method shown in equation (2) above. Assuming that the QOE detection system of device A detects stuttering in the screen projection service, according to the above "two links affect each other and the multipath scheduling strategy during service transmission", device A can rate-limit the file-type service (i.e., file service) between device A and device B. Specifically, the QOE detection system of device A can generate a quality of service scheduling request.
[0285] S502. The QOE detection system of device A sends a service quality scheduling request to the QoS scheduling system of device A.
[0286] For example, the QOE detection system of device A can generate a Quality of Service (QoS) scheduling request in response to detecting a stuttering in the screen mirroring service. This QoS scheduling request is used to request rate limiting of file transmission services within the first transmission link. The QOE detection system can then send this QoS scheduling request to the QoS scheduling system of device A.
[0287] S503, the QoS scheduling system of device A sends the rate limit value to the bandwidth allocation system of device A.
[0288] For example, the QoS scheduling system of device A can determine the rate limit value of file services according to the method shown in equation (3) above, and send the rate limit value to the bandwidth allocation system of device A.
[0289] S504. The bandwidth allocation system of device A sends new bandwidth parameters to the transmission module of device A.
[0290] For example, the bandwidth allocation system of device A can determine new bandwidth parameters for the file service based on the service requirements and rate limits of the file service. The bandwidth allocation system can also send the new bandwidth parameters to the transmission unit of device A so that the service data of the file service can be transmitted subsequently based on the new bandwidth parameters.
[0291] S505, The transmission module of device A sends the service data of the file service to the WIFI network card 1 of device A.
[0292] For example, since the file service is carried on the first transmission link, and the first transmission link is established based on the WIFI network card 1 of device A and the WIFI network card 1 of device B, the transmission unit of device A can send the service data of the file service to the WIFI network card 1 of device A based on the new bandwidth parameters.
[0293] S506, Device A's WIFI network card 1 sends file service data to Device B's WIFI network card 1.
[0294] S507, The QOE detection system of Device A detected that the screen mirroring service was lagging.
[0295] For example, after rate limiting the file transfer service between device A and device B, device A's QOE detection system can continue to detect whether the screen mirroring service is experiencing lag. If device A's QOE detection system detects that the screen mirroring service is still experiencing lag, then according to the aforementioned "two links affecting each other, and multipath scheduling strategy during service transmission," device A can determine whether the non-optimal link between device A and device B can carry all services, that is, device A determines whether the second transmission link can carry file transfer, screen mirroring, and call services. If the second transmission link can carry all services, then all services can be migrated to the second transmission link. If the second transmission link cannot carry all services, then device A can report service quality information. Specifically, when device A's QOE detection system detects lag in the screen mirroring service and determines that the second transmission link cannot carry all services, device A's QOE detection system can generate an information reporting request.
[0296] S508, the QOE detection system of device A sends an information reporting request to the QOE reporting system of device A.
[0297] For example, in response to detecting a stutter in the screen mirroring service, the QOE detection system of device A generates an information reporting request. This information reporting request is used to request the reporting of service quality information to the screen mirroring application corresponding to the screen mirroring service. The QOE detection system of device A can send the information reporting request to the QOE reporting system of device A.
[0298] S509. The QOE reporting system of device A sends service quality information to the screen mirroring application of device A.
[0299] For example, the QOE reporting system of device A can send quality of service information to the screen mirroring application of device A, so that the screen mirroring application can alleviate the lag of the screen mirroring service by reducing the transmission bit rate.
[0300] Through the above Figure 3J The scheduling method shown can schedule services when two transmission links affect each other and streaming media services experience buffering. This avoids the decline in service transmission efficiency caused by the mutual interference of multiple transmission links, effectively solves the buffering problem of streaming media services, improves service transmission efficiency, and also helps to improve the user experience.
[0301] In a multi-link system, when the first and second transmission links between device A and device B interfere with each other, and streaming media services experience buffering, the service scheduling process is as follows: Figure 3KAs shown: File transfer and streaming media services (including screen mirroring and voice calls) are both established on the first transmission link. When device A detects a stuttering issue in the screen mirroring service, it can limit the rate of the file transfer. When device A detects another stuttering issue in the screen mirroring service, it can upload Quality of Service (QOE) information to the screen mirroring application to resolve the stuttering by reducing the transmission bitrate. The method provided in this application can alleviate stuttering during service transmission, improve transmission efficiency, fully utilize transmission resources in a multi-link system, and enhance the user experience.
[0302] (V) Service scheduling methods during transmission link interruption
[0303] Multiple transmission links (including a first transmission link and a second transmission link) can be established between device A and device B, and different transmission links can carry different services. In practical applications, transmission links are random and may be unexpectedly interrupted due to various factors. For example, if a first transmission link and a second transmission link are established between device A and device B, and the first transmission link carries the screen mirroring service, then... Figure 3L As shown, when the transmission link is interrupted, the service scheduling method includes, but is not limited to, the following steps:
[0304] S601, The link detection system of device A detected that the first transmission link was interrupted.
[0305] For example, the link detection system of device A can detect the transmission link between device A and device B. If device A detects an interruption in the first transmission link between device A and device B, it can perform subsequent operation steps to ensure that the service carried by the first transmission link (i.e., the screen mirroring service) can be transmitted normally.
[0306] S602. The link detection system of device A sends a multipath scheduling request to the multipath scheduling system of device A.
[0307] For example, after the link detection system of device A detects an interruption in the first transmission link, it can generate a multipath scheduling request. This multipath scheduling request can be used to request the scheduling of services carried by the first transmission link. The link detection system of device A can send this multipath scheduling request to the multipath scheduling system of device A.
[0308] S603, The multipath scheduling system of device A sends the eighth scheduling information to the transmission module of device A.
[0309] For example, in response to a multipath scheduling request, the multipath scheduling system of device A can generate an eighth scheduling message, which can instruct the migration of services carried on the first transmission link to the second transmission link, that is, to migrate the screen projection service from the first transmission link to the second transmission link. Device A can send the eighth scheduling message to the transmission module of device A.
[0310] S604. The transmission module of device A sends the service data of the screen projection service to the WIFI network card 2 of device A.
[0311] For example, in response to the eighth scheduling information, the transmission module of device A can obtain the bandwidth parameters of the screen projection service. After device A sends the service data (i.e., data packets) of the screen projection service to device B, device B will return the corresponding reply information of the data packets to device A. When the first transmission link is interrupted, device A can determine the data packets that have not received the corresponding reply information (i.e., data packets that failed to be transmitted through the first transmission link), and based on the bandwidth parameters, use the second transmission link to transmit these data packets to ensure the continuity of the service data received by device B.
[0312] S605, Device A's WIFI network card 2 sends the service data of the screen projection service to Device B's WIFI network card 2 through the second transmission link.
[0313] S606, The link detection system of device A detected that the first transmission link has been restored.
[0314] For example, after device A transmits the service data for the screen projection service through the second transmission link, device A's link detection system can continue to monitor the status of the transmission link between device A and device B. When the first transmission link is detected to be restored, device A can perform subsequent service scheduling operations to ensure that the screen projection service is established on the optimal link, thereby ensuring service transmission efficiency.
[0315] S607. The link detection system of device A sends a multipath scheduling request to the multipath scheduling system of device A.
[0316] For example, after the link detection system of device A detects that the first transmission link has been restored, it can generate a multipath scheduling request. This multipath scheduling request can be used to request the scheduling of services between device A and device B. The link detection system of device A can send this multipath scheduling request to the multipath scheduling system of device A.
[0317] S608, the multipath scheduling system of device A sends the ninth scheduling information to the transmission module of device A.
[0318] For example, in response to a multipath scheduling request, the multipath scheduling system of device A can generate a ninth scheduling message, which can instruct the migration of services carried on the second transmission link to the first transmission link, that is, to migrate the screen projection service from the second transmission link to the first transmission link. Device A can send the ninth scheduling message to the transmission module of device A.
[0319] S609, Device A's transmission module sends the screen mirroring service data to Device A's WIFI network card 1.
[0320] For example, in response to the ninth scheduling information, the transmission module of device A can obtain the bandwidth parameters of the screen projection service. When the first transmission link is restored, device A can transmit the service data of the screen projection service to device B through the first transmission link based on the bandwidth parameters, so as to ensure the transmission efficiency of the service data of the screen projection service.
[0321] S610, Device A's WIFI network card 1 sends the screen mirroring service data to Device B's WIFI network card 1.
[0322] For example, when device A sends the service data of the screen projection service to device B through the first transmission link.
[0323] S611, Device A's WIFI network card 2 no longer sends screen mirroring service data to Device B's WIFI network card 2.
[0324] For example, after device A transmits the service data of the screen projection service using the first transmission link, device A no longer sends the service data of the screen projection service through the second transmission link, so as to save transmission resources between device A and device B.
[0325] The method provided in this application can overcome the limitation of a single transmission link being easily interrupted in a multi-link system through service scheduling. In the event of a link interruption, service scheduling can be performed to ensure the continuity of service transmission, and in the event of link recovery, service scheduling can be performed to ensure the service transmission rate.
[0326] The above Figures 3A-3L The service scheduling method shown is only one possible implementation. In actual applications, it can be implemented according to the method described in this application. Figures 2A-2G The multipath scheduling strategy shown determines the corresponding service scheduling information, thereby realizing service scheduling in a multi-link system.
[0327] Based on the multipath scheduling strategy and service scheduling process described in the foregoing embodiments, the service scheduling method provided in this application is described below. Please refer to... Figure 4This figure is a flowchart illustrating a service scheduling method provided in an embodiment of this application. This service scheduling method is applied to a first electronic device in a multi-link system, which can correspond to device A in the above embodiment. The multi-link system may include a first electronic device and a second electronic device, and multiple transmission links can be established between the first electronic device and the second electronic device. This service scheduling method includes, but is not limited to:
[0328] S701, establishes multiple transmission links with the second electronic device.
[0329] In this embodiment, both the first electronic device and the second electronic device support DBDC. The first and second electronic devices can establish multiple transmission links, which can be wireless transmission links such as Wi-Fi direct links, WLAN connection links, Bluetooth links, cellular network links, or wireless transmission links constructed according to other wireless transmission protocols. The method provided in this application can construct a multi-link system, facilitating subsequent service scheduling and improving service transmission efficiency and performance.
[0330] In some cases, the first electronic device can display, for example... Figure 5A The user interface 51 shown may include a smart interconnection control 511 and a more connectivity control 512. Device A can detect user actions performed on the more connectivity control 512. In response to the user action, the first electronic device can display, as shown below... Figure 5B The user interface 52 shown may include a file sharing control 521, a screen mirroring control 522, etc. The first electronic device can detect user operations applied to the screen mirroring control 522, and device A can display, as shown... Figure 5C The user interface 53 shown may include a wireless projection control 531. Device A detects a user operation on the wireless projection control 531, turns on Bluetooth, searches for available devices, and displays the following: Figure 5D The user interface 54 shown includes a list of available devices. Exemplarily, the list includes a device identifier 541 for a second electronic device. Screen mirroring to the second electronic device can be a user operation applied to device identifier 541. The first electronic device detects the user operation applied to device identifier 541. In response to the user operation, the first electronic device establishes multiple transmission links with the second electronic device and initiates screen mirroring to the second electronic device. It should be understood that the first electronic device can also initiate screen mirroring to the second electronic device in other ways. For example, the first electronic device can perform a pull-down operation at the top of the display screen to show a control center interface, which includes a screen mirroring icon. In response to a detected user operation applied to the screen mirroring icon, the first electronic device searches for available devices on the same network and initiates screen mirroring to the default second electronic device.
[0331] S702. Obtain link information, wherein the link information indicates the operating frequency band of each of the multiple transmission links.
[0332] In this embodiment, the first electronic device can obtain the operating frequency of each transmission link in multiple transmission links, and thus determine the operating frequency band of each transmission link. Based on the operating frequency band of each transmission link, the link relationship between different transmission links can be determined. For example, if the first and second transmission links operate at different frequency bands, their link relationship is that the two links do not affect each other. Conversely, if the first and third transmission links operate at the same frequency band, their link relationship can be further determined to be that the first and third transmission links influence each other. The definition of the link relationship can be as described above. Specifically, the first electronic device can determine the operating frequency band of each transmission link and determine the link information. The first electronic device can store this link information in first local storage information for subsequent service scheduling. The first local storage information can be storage information in the transmission module of the first electronic device, storage information in the networking module of the first electronic device, or storage information in other modules of the first electronic device associated with service scheduling. The first electronic device can also send the link information to a second electronic device so that the second electronic device can store the link information. Typically, the first and second electronic devices determine link information only when initially establishing a connection, and store this link information in first local storage. After a period of time, when the first electronic device performs service transmission, it can use this link information to determine the target transmission link. The method provided in this application embodiment can reasonably determine link information, thereby facilitating the identification of a reasonable target transmission link. Furthermore, the method provided in this application can also achieve link information reuse, eliminating the need for electronic devices to frequently determine the operating frequency band of the transmission link during service transmission, thus saving processing resources and improving service transmission efficiency.
[0333] S703. Upon receiving a start operation for the first service or detecting a transmission anomaly in the first service, generate a first multipath scheduling request.
[0334] In this embodiment, the first electronic device can generate a first multipath scheduling request upon receiving an initiation operation for a first service or upon detecting a transmission anomaly in the first service. The first service can be any type of service initiated by the first electronic device; for example, it can be a streaming media service or a file-based service. Initiating the first service means that the first electronic device sends the service data of the first service to a second electronic device, which is a different electronic device from the first electronic device. Multiple transmission links can be established between the first and second electronic devices; that is, both the first and second electronic devices support DBDC (Multi-Path DC).
[0335] The activation operation for the first service can be triggered by the user through the service application configured in the first electronic device, or it can be generated automatically by the first electronic device. A transmission anomaly in the first service refers to abnormal situations such as transmission delays or buffering during the transmission of service data.
[0336] The first electronic device can generate a first multipath scheduling request, which can be used to request corresponding service scheduling for the first service in order to ensure the transmission efficiency of the first service.
[0337] In one embodiment, the service scheduling method provided in this application may further include the following steps: obtaining transmission delay data of service data of a first service; determining average delay data based on the transmission delay data, and determining transmission jitter parameters based on the average delay data and the transmission delay data; determining that a transmission abnormality has been detected in the first service in response to the transmission jitter parameters being greater than a first jitter threshold; and determining that no transmission abnormality has been detected in the first service in response to the transmission jitter parameters being less than or equal to the first jitter threshold.
[0338] Specifically, when the first electronic device is transmitting the service data of the first service, it can determine whether the service has experienced a transmission anomaly by using transmission delay data. The first electronic device can obtain the transmission delay data of the service data of the first service. For example, the first electronic device can obtain the transmission delay data of each data packet of the first service. The first electronic device can also determine the average delay data over a period of time based on the transmission delay data. For example, after obtaining the transmission delay data of each data packet, the first electronic device can calculate the average delay data every 200 milliseconds. Based on the average delay data and the transmission delay data, the transmission jitter parameter can be determined (the method for determining the transmission jitter parameter can be as shown in the above formula (2)). The transmission jitter parameter can reflect the transmission fluctuation of the service data of the first service over a period of time. When the transmission jitter parameter is greater than the first jitter threshold, it indicates that the transmission fluctuation of the service data of the first service is large over a period of time, and it can be determined that a transmission anomaly has been detected in the first service (for example, the first service is experiencing a stutter). When the transmission jitter parameter is less than or equal to the first jitter threshold, the first electronic device can determine that no transmission anomaly has been detected in the first service. The method provided in this application embodiment can determine whether a service transmission is abnormal by transmitting jitter parameters, accurately determine the service transmission status, which is beneficial for subsequent service scheduling based on the service transmission status, thereby ensuring service transmission efficiency.
[0339] S704. In response to the first multipath scheduling request, a target transmission link is determined from multiple transmission links between the first electronic device and the second electronic device based on the link information. The target transmission link is used to carry the first service.
[0340] In this embodiment, multiple transmission links may exist between the first electronic device and the second electronic device. In response to a first multipath scheduling request, the first electronic device can obtain link information, which indicates the operating frequency band of each transmission link between the first and second electronic devices. Based on the link information, the link relationships between different transmission links can be further determined. In response to the first multipath scheduling request, the first electronic device can determine a target transmission link from among the multiple transmission links between the first and second electronic devices based on the link information. This target transmission link is used to carry the first service. The method provided in this application allows for the determination of an appropriate transmission link from multiple transmission links to carry the service based on link information, thereby rationally utilizing transmission resources in a multi-link system and improving service transmission efficiency.
[0341] In one embodiment, the first multipath scheduling request is generated upon receiving a startup operation; the link information includes the operating frequency band of the first transmission link and the operating frequency band of the second transmission link; then, in response to the first multipath scheduling request, the specific implementation of determining the target transmission link from multiple transmission links between the first electronic device and the second electronic device based on the link information can be as follows: in response to the first transmission link and the second transmission link having the same operating frequency band, the target transmission link is determined from the first transmission link and the second transmission link based on link quality data; wherein, the link quality data indicates the link quality of the first transmission link and the link quality of the second transmission link; in response to the first transmission link and the second transmission link having different operating frequency bands, the target transmission link is determined from the first transmission link and the second transmission link based on the service type; wherein, the service type is a file type or a streaming media type.
[0342] Specifically, when the first multipath scheduling request is generated by the first electronic device upon receiving the initiation operation of the first service, and the link information includes the operating frequency band of the first transmission link and the operating frequency band of the second transmission link, different methods can be used for service scheduling based on the relationship between the operating frequency bands of the two transmission links. Since the operating frequency bands of the first and second transmission links are the same, the link relationship between the first and second transmission links is one of mutual influence. Therefore, the first electronic device can directly determine the target transmission link from the first and second transmission links based on the link quality data. This link quality data indicates the link quality of the first and second transmission links, and the link quality can include the transmission rate, bandwidth, transmission distance, signal-to-noise ratio, etc., indicating the performance of the transmission link.
[0343] Since the operating frequency bands of the first and second transmission links are different, the relationship between the first and second transmission links is that they are two independent links. Therefore, the first electronic device can determine the target transmission link from the first and second transmission links based on the service type, which can be a file type or a streaming media type. The method provided in this application embodiment can determine the link relationship between transmission links based on their operating frequency bands, and thus different scheduling methods can be adopted for different link relationships. This makes the method provided in this application applicable to various application scenarios, exhibiting good universality, and effectively improving service transmission efficiency.
[0344] In one embodiment, the specific implementation of determining the target transmission link from the first transmission link and the second transmission link based on link quality data can be as follows: determining the target transmission link that meets the quality requirements from the first transmission link and the second transmission link based on the link quality data; wherein the link quality of the target transmission link is higher than the link quality of the transmission link that does not meet the quality requirements.
[0345] Specifically, the first electronic device can determine a target transmission link that meets the quality requirements from the first and second transmission links based on link quality data. The link quality of this target transmission link is higher than that of the transmission links that do not meet the quality requirements. The method provided in this application is equivalent to the aforementioned "multipath scheduling strategy when a service is started when two links influence each other." The target transmission link that meets the quality requirements is the optimal link between the first and second transmission links, and the link quality of the optimal link is higher than that of the non-optimal link that does not meet the quality requirements. Through the method provided in this application, when two transmission links influence each other, the transmission link that meets the quality requirements can be determined as the target transmission link for carrying the first service, thereby avoiding the decrease in transmission efficiency caused by the simultaneous transmission of two links and effectively ensuring service transmission efficiency.
[0346] In one embodiment, the specific implementation of determining the target transmission link from the first transmission link and the second transmission link according to the service type can be as follows: in response to the fact that the service type of the first service is the same as the service type of the second service, the target transmission link is determined from the first transmission link and the second transmission link according to the link quality data; wherein, the second service is a service that is in the transmission state.
[0347] Specifically, when determining the target transmission link based on the service type, the service types of the first service to be initiated and the services currently in transmission need to be considered. The second service is the service currently in transmission between the first and second electronic devices. When the service types of the first and second services are the same, the first electronic device can directly determine the target transmission link from the first and second transmission links based on link quality data. For example, if both the first and second services are streaming media types (equivalent to no file-type services between the first and second electronic devices), then the first electronic device can determine the target transmission link that meets the quality requirements from the first and second transmission links based on link quality data (equivalent to using the optimal link to carry the first service). This service scheduling method corresponds to the "multipath scheduling strategy when two links do not affect each other and services are initiated" mentioned above, specifically "when there are no file-type services between device A and device B, the streaming media service is established on the optimal link."
[0348] For example, if both the first service and the second service are file-type (equivalent to no streaming media service between the first and second electronic devices), the first electronic device can determine the target transmission link that meets the quality requirements from the first and second transmission links based on link quality data (equivalent to using the optimal link to carry the first service). The method provided in this application allows for different service scheduling methods based on service type, achieving coordination between different types of services and effectively improving the overall service transmission efficiency of a multi-link system.
[0349] In one embodiment, the specific implementation of determining the target transmission link from the first transmission link and the second transmission link according to the service type can be as follows: in response to the first service being a streaming media type and the second service being a file type, a candidate transmission link is determined from the first transmission link and the second transmission link; it is determined whether the candidate transmission link can carry the first service; in response to the candidate transmission link being able to carry the first service, the candidate transmission link is determined as the target transmission link; in response to the candidate transmission link being unable to carry the first service, the transmission links other than the candidate transmission link in the first and second transmission links are determined as the target transmission link.
[0350] Specifically, when the service type of the first service is streaming media and the service type of the second service is file, the first electronic device can determine a candidate transmission link from the first transmission link and the second transmission link. This candidate transmission link can be a non-optimal link between the first and second transmission links, i.e., a transmission link that does not meet the quality requirements. The first electronic device can determine whether the candidate transmission link can carry the first service. The method for determining whether a transmission link can carry the service can be as shown in equation (1) above. In response to the candidate transmission link being able to carry the first service, the first electronic device can determine the candidate transmission link as the target transmission link; in response to the candidate transmission link being unable to carry the first service, the first electronic device can determine the transmission link other than the candidate transmission link between the first and second transmission links as the target transmission link. According to the method provided in the above embodiments, when the service types of different services between the first electronic device and the second electronic device are the same, the service is established in the optimal link determined according to the link quality data (for example, the second service of file type is established in the optimal link). However, according to the method provided in the embodiments of this application, when the service types of different services between the first electronic device and the second electronic device are not the same, the streaming media service can be established on a non-optimal link that can carry the service. Therefore, through the method provided in the embodiments of this application, when there are file type services and streaming media services between devices, the file type services and streaming media services can be established on different transmission links, thereby realizing the coordination of different types of services in a multi-link system, and at the same time, making full use of the transmission resources in the multi-link system and improving the overall transmission efficiency of the service.
[0351] In one embodiment, the specific implementation of determining whether a candidate transmission link can carry a first service can be as follows: based on the transmission rate of the candidate transmission link, the service description data of the first service, the service description data of the same-frequency service, and the transmission rate of the same-frequency service, determine whether the candidate transmission link can carry the first service; wherein, the same-frequency service is a service transmitted through a same-frequency link, and the same-frequency link is a link with the same frequency as the candidate transmission link.
[0352] Specifically, when the first electronic device determines whether a candidate transmission link can carry the first service, it can obtain the transmission rate of the candidate transmission link, which can be the MCS negotiation rate of the transmission link. The service description data of the first service can include the service number and data volume of the first service. Co-frequency service refers to a service transmitted through a co-frequency link, and a co-frequency link refers to a transmission link with the same frequency as the candidate transmission link. For example, if the candidate transmission link is a WLAN connection link, then the co-frequency link refers to a transmission link within the wireless local area network with the same frequency as the WLAN connection link. Co-frequency services are all services in the transmission state. The service description data of co-frequency services includes the service number of one or more co-frequency services and the data volume of each co-frequency service. The transmission rate of co-frequency services refers to the MCS negotiation rate corresponding to each co-frequency service. The first electronic device can determine whether a candidate transmission link can carry the first service based on the transmission rate of the candidate transmission link, the service description data of the first service, the service description data of the co-frequency service, and the transmission rate of the co-frequency service. The calculation method can be as shown in the above formula (1). Substituting the transmission rate of the candidate transmission link, the service description data of the first service, the service description data of the same-frequency service, and the transmission rate of the same-frequency service into equation (1), if the inequality in equation (1) holds, the first electronic device determines that the candidate transmission link can carry the first service; if the inequality in equation (1) does not hold, the first electronic device determines that the candidate transmission link cannot carry the first service. The method provided in this application embodiment can determine whether a transmission link can carry a service based on the link's transmission rate, the same-frequency service, and the same-frequency link. This effectively ensures the normal startup of the service and effectively avoids collisions during transmission, thereby improving service transmission efficiency.
[0353] In one embodiment, the specific implementation of determining the target transmission link from the first transmission link and the second transmission link according to the service type can be as follows: In response to the first service being a file type and the second service being a streaming media type, a streaming media transmission link is determined from the first transmission link and the second transmission link based on link quality data; wherein, the streaming media transmission link is a transmission link that does not meet the quality requirements and is used to carry the second service; the transmission links other than the streaming media transmission link from the first transmission link and the second transmission link are determined as the target transmission link; wherein, the link quality of the target transmission link is higher than the link quality of the streaming media transmission link.
[0354] Specifically, when the first service is a file service and the second service is a streaming media service, according to the aforementioned "two links do not affect each other, and the multipath scheduling strategy at service startup," if there is a streaming media service between the first and second electronic devices (the streaming media service is established on the optimal link), the first electronic device can establish the file service on the optimal link and migrate the streaming media service to a non-optimal link. Based on this, the first electronic device can determine the streaming media transmission link from the first and second transmission links based on link quality data. This streaming media transmission link is a transmission link that does not meet the quality requirements, i.e., it is a non-optimal link. This streaming media transmission link is used to carry the second service, thus migrating the second service from the optimal link to the non-optimal link. The first electronic device can also determine the transmission links other than the streaming media transmission link in the first and second transmission links as target transmission links. The link quality of the target transmission link is higher than that of the streaming media transmission link, i.e., the target transmission link is the optimal link. Through the method provided in this application embodiment, services in the transmission state can be migrated according to the service type, which can make full use of the transmission resources in the multi-link system and ensure the overall transmission efficiency of multiple services.
[0355] In one embodiment, the first multipath scheduling request is generated when a transmission anomaly is detected in the first service; the link information includes the operating frequency band of the first transmission link and the operating frequency band of the second transmission link; then, in response to the first multipath scheduling request, the specific implementation of determining the target transmission link from multiple transmission links between the first electronic device and the second electronic device according to the link information can be as follows: in response to the first transmission link and the second transmission link having the same operating frequency band, the target transmission link is determined from the first transmission link and the second transmission link according to the link bearer information; in response to the first transmission link and the second transmission link having different operating frequency bands, the target transmission link is determined from the first transmission link and the second transmission link according to the transmission type information; wherein, the transmission type information indicates whether the transmission type of the first service is concurrent transmission or single transmission.
[0356] Specifically, when the first multipath scheduling request is generated by the first electronic device when it detects a transmission anomaly in the first service (i.e., a transmission anomaly occurs while the first service is in transmission), the process by which the first electronic device determines the target transmission link from multiple transmission links can be based on the operating frequency bands of the first and second transmission links. When the operating frequency bands of the first and second transmission links are the same, the first electronic device can determine the target transmission link from the first and second transmission links based on the link bearer information. When the operating frequency bands of the first and second transmission links are different, the first electronic device can determine the target transmission link from the first and second transmission links based on transmission type information. This transmission type information can indicate the transmission type of the first service, which can be single-transmission or concurrent transmission. Single-transmission refers to the first electronic device transmitting the service data of the first service to the second electronic device through a single transmission link. Concurrent transmission refers to the first electronic device transmitting the service data of the first service to the second electronic device through multiple transmission links. When the transmission type of the first service is concurrent transmission, it can be said that the first electronic device has initiated redundant concurrency for the first service. The method provided in this application embodiment can perform service scheduling based on link information during service transmission, thereby resolving service transmission anomalies, ensuring the smoothness of service transmission, and also ensuring service transmission efficiency.
[0357] In one embodiment, the service type of the first service is streaming media; then, the specific implementation of determining the target transmission link from the first transmission link and the second transmission link based on the link bearer information can be as follows: in response to the absence of a file type service among the multiple transmission services, the target transmission link is determined from the first transmission link and the second transmission link based on the service bearer information of the first transmission link and the service bearer information of the second transmission link in the link bearer information; wherein, the multiple transmission services are services in a transmission state, and the multiple transmission services include the first service; the service bearer information of the first transmission link indicates whether the first transmission link can carry the multiple transmission services, and the service bearer information of the second transmission link indicates whether the second transmission link can carry the multiple transmission services.
[0358] Specifically, multiple transmission services can exist between the first electronic device and the second electronic device. These transmission services are services in a transmission state, and the first service is included among them. When the first service is a streaming media type and a transmission anomaly occurs, the first electronic device can determine whether a file-type service exists among the multiple transmission services. If no file-type service exists, the first electronic device can determine the target transmission link from the first and second transmission links based on the service bearer information of the first and second transmission links in the link bearer information. The service bearer information of the first transmission link can be used to indicate whether the first transmission link can carry multiple transmission services, i.e., whether the first transmission link can carry all services between the first and second electronic devices. Both the service bearer information of the first and second transmission links can be determined using the method shown in equation (1) above. The service bearer information of the second transmission link can be used to indicate whether the second transmission link can carry multiple transmission services.
[0359] If the first transmission link can carry multiple transmission services, but the second transmission link cannot, the first electronic device can designate the first transmission link as the target transmission link. If the first transmission link cannot carry multiple transmission services, but the second transmission link can, the first electronic device can designate the second transmission link as the target transmission link. If neither the first nor the second transmission link can carry multiple transmission services, the first electronic device will not perform link migration scheduling for the first service, but will send service quality reporting information to the application layer to reduce the transmission bit rate of the first service, thereby resolving the transmission anomaly of the first service (e.g., transmission lag). If both the first and second transmission links can carry multiple transmission services, the first electronic device can determine the target transmission link from the first and second transmission links based on link quality data. The method provided in this application embodiment can determine the target transmission link based on the service carrying information of the transmission links when service lag occurs and transmission links affect each other, thereby achieving service scheduling, resolving service lag, and improving service transmission efficiency.
[0360] In one embodiment, the service scheduling method provided in this application may further include the following steps: in response to the presence of file-type services among multiple transmission services, performing service rate limiting on file-type services. Specifically, when the service type of the first service is streaming media and a transmission anomaly occurs in the first service, the first electronic device can determine whether there are file-type services among the multiple transmission services. If there are file-type services among the multiple transmission services, since the decrease in the transmission rate of file-type services will not significantly affect the user experience, the first electronic device can prioritize performing service rate limiting on file-type services. The first electronic device can use the method described in formula (3) above to determine the rate limiting value of file-type services. Through the method provided in this application embodiment, the rate limiting on file-type services can be prioritized. While ensuring the user experience, the stuttering situation of streaming media services can also be resolved through service scheduling, thereby improving the transmission rate of streaming media services.
[0361] In one embodiment, the service type of the first service is streaming media; then, the specific implementation of determining the target transmission link from the first transmission link and the second transmission link based on the transmission type information can be as follows: in response to the transmission type information indicating that the transmission type of the first service is single transmission and there is no file type service among the multiple transmission services, the first transmission link and the second transmission link are determined as the target transmission link; wherein, the multiple transmission services are services in the transmission state, and the target transmission link is used to perform concurrent transmission of the first service.
[0362] Specifically, multiple transmission services are in transmission between the first electronic device and the second electronic device. When the service type of the first service is streaming media, and the operating frequency bands of the first transmission link and the second transmission link are different, the first electronic device can determine the target transmission link based on the transmission type information. When the transmission type information of the first service indicates that the transmission type of the first service is single transmission, and there is no file type service among the multiple transmission services, the first electronic device can determine the first transmission link and the second transmission link as the target transmission link, which is used for concurrent transmission of the first service. That is, when there is no file type service among the multiple transmission services, the bandwidth of the first service cannot be increased by limiting the rate of the file type service. Therefore, in order to ensure the continuity of the service data of the first service received by the second electronic device, the first electronic device can start redundant concurrency for the first service, that is, use multiple transmission links to transmit the same service data of the first service, thereby avoiding incomplete data received by the second electronic device due to the abnormality of a single transmission link. Through the method provided in this application embodiment, the situation of discontinuous service data caused by the abnormality of a single transmission link can be solved by using concurrent transmission, thereby solving the problem of the second electronic device receiving the first service with lag, and effectively improving the user experience.
[0363] In one embodiment, the service scheduling method provided in this application may further include the following steps: in response to the transmission type information indicating that the transmission type of the first service is single transmission and that there is a file type service in a rate-limited state among the multiple transmission services, the first transmission link and the second transmission link are determined as target transmission links.
[0364] Specifically, when the transmission type information of the first service indicates that the transmission type of the first service is single transmission, and there are file-type services in a rate-limited state among multiple transmission services (i.e., all file-type services in multiple transmission services are in a rate-limited state), and it is impossible to allocate more bandwidth to the first service by displaying file-type services, the first electronic device can initiate redundant concurrency for the first service. That is, it determines the first transmission link and the second transmission link as target transmission links to enable concurrent transmission of the first service. The method provided in this application embodiment can effectively solve anomalies such as service lag through service scheduling, and can improve the transmission efficiency of services.
[0365] In one embodiment, the service scheduling method provided in this application may further include the following steps: in response to the transmission type information indicating that the transmission type of the first service is single transmission and that there is a file type service in an unrate-limited state among the multiple transmission services, the service rate-limiting process is performed on the file type service in the unrate-limited state.
[0366] Specifically, when the transmission type information of the first service indicates that the transmission type of the first service is single transmission, and there are file-type services in an un-rate-limited state among the multiple transmission services (i.e., file-type services that are not rate-limited), the first electronic device can prioritize rate-limiting the file-type services in the un-rate-limited state, thereby providing more bandwidth to the first service and alleviating transmission anomalies. The method provided in this application embodiment can rate-limit file-type services, improving service transmission efficiency while ensuring user experience.
[0367] In one embodiment, the service scheduling method provided in this application may further include: in response to a concurrent transmission instruction for a first service, sending service data of the first service to a second electronic device through a first transmission link in a target transmission link; and sending service data of the first service to a second electronic device through a second transmission link in the target transmission link.
[0368] Specifically, after the first electronic device determines the first transmission link and the second transmission link as target transmission links, in response to the concurrent transmission command for the first service, the first electronic device can send the service data of the first service to the second electronic device through the first transmission link. Simultaneously, the first electronic device can also send the service data of the first service to the second electronic device through the second transmission link within the target transmission links. Transmitting the same service data through multiple transmission links can overcome packet loss caused by anomalies in a single transmission link, thereby resolving the stuttering caused by discontinuous service data. The method provided in this application embodiment can effectively solve the stuttering problem, reduce transmission latency and jitter, and improve service transmission efficiency and user experience.
[0369] In one embodiment, the link information includes the operating frequency band of the first transmission link and the operating frequency band of the second transmission link, and the operating frequency bands of the first transmission link and the second transmission link are different; when the first electronic device detects that no transmission abnormality has occurred in the first service, the service scheduling method provided in this application may further include the following steps: when the transmission type of the first service is concurrent transmission and no transmission abnormality has been detected in the first service, a single transmission link that meets the quality requirements is determined from the first transmission link and the second transmission link; in response to the jitter parameter of the single transmission link being less than a second jitter threshold, a target transmission link is determined from the first transmission link and the second transmission link, and the target transmission link is used to adjust the transmission type of the first service to single transmission.
[0370] Specifically, the first electronic device can continuously monitor the service in the transmission state. If the transmission type of the first service is concurrent transmission and no transmission abnormality is detected, it indicates that the link quality of the transmission link is high. The first electronic device does not need to perform concurrent transmission of the first service. Then, the first electronic device can determine the single transmission link that meets the quality requirements from the first transmission link and the second transmission link (that is, the single transmission link is the optimal link between the first transmission link and the second transmission link). The first electronic device can determine the jitter parameter of the single transmission link. The method for determining the jitter parameter can be as shown in the above formula (2). If the jitter parameter of the single transmission link is less than the second jitter threshold, it indicates that the link quality of the single transmission link is good and can be used to carry the first service alone. Then, the first electronic device can determine the target transmission link from the first transmission link and the second transmission link, that is, the single transmission link between the first transmission link and the second transmission link is determined as the target transmission link. The target transmission link can be used to adjust the transmission type of the first service to single transmission, that is, the first electronic device can transmit the service data of the first service alone through the target transmission link, while other transmission links no longer transmit the service data of the first service. The method provided in this application embodiment can stop concurrent transmission in a timely manner when no transmission abnormality occurs, which can effectively save transmission resources.
[0371] It should be noted that the above embodiments only illustrate the implementation method of determining the target transmission link and performing service scheduling when the service type of the first service is streaming media. In practical applications, when the service type of the first service is file, the first electronic device can also use a similar method to determine the target transmission link and perform service scheduling. Furthermore, the above embodiments only describe the method of determining the target transmission link when the link information includes the operating frequency band of the first transmission link and the operating frequency band of the second transmission link. When the link information includes the operating frequency bands of multiple transmission links, the first electronic device can also use a similar method to determine the target transmission link. For example, if the link information includes the operating frequency bands of the first, second, and third transmission links, and these three transmission links have the same operating frequency band (i.e., the link relationship of the three transmission links is that the three links influence each other), then in response to the first multipath scheduling request, the first electronic device can establish the first service on the optimal link among the three transmission links.
[0372] S705. Send the service data of the first service to the second electronic device through the target transmission link.
[0373] In this embodiment, after determining the target transmission link, the first electronic device can directly send the service data of the first service to the second electronic device through the target transmission link. The method provided in this application enables service scheduling in a multi-link system, improves service transmission efficiency, and enhances the user experience.
[0374] In one embodiment, the multiple transmission links include a third transmission link. The first electronic device sends service data of the third service to the second electronic device through the third transmission link. The service scheduling method provided in this application may further include the following steps: generating a second multipath scheduling request when an interruption of the third transmission link is detected; determining a fourth transmission link from the multiple transmission links in response to the second multipath scheduling request; and sending the service data of the third service to the second electronic device through the fourth transmission link.
[0375] Specifically, a third transmission link can be established between the first electronic device and the second electronic device. This third transmission link can be a different transmission link from the first and second transmission links, or it can be the same as the first or second transmission link. The third service can be the first service, the second service, or a service different from the first and second services. The first electronic device can send the service data of the third service to the second electronic device through the third transmission link. The first electronic device can also detect multiple transmission links. If an interruption is detected in the third transmission link, the first electronic device can generate a second multipath scheduling request. In response to the second multipath scheduling request, the first electronic device can determine a fourth transmission link from the multiple transmission links. This fourth transmission link is a connected transmission link. The first electronic device can send the service data of the third service to the second electronic device through the fourth transmission link, thereby ensuring that the service data of the third service can still be transmitted normally to the second electronic device even if the third transmission link is interrupted. The method provided in this application can utilize multiple links in a multi-link system for service scheduling when a transmission link is interrupted, ensuring the normal transmission of service data. This overcomes the limitation that a single transmission link is prone to interruption, leading to interruption of service data transmission, and is beneficial to improving the transmission performance of services.
[0376] In one embodiment, the service scheduling method provided in this application may further include: generating a third multipath scheduling request when the third transmission link is detected to be restored; and sending service data of a third service to a second electronic device through the third transmission link in response to the third multipath scheduling request.
[0377] Specifically, the first electronic device can detect the status of multiple transmission links. Upon detecting that the third transmission link has recovered, the first electronic device can generate a third multipath scheduling request. In response to the third multipath scheduling request, the first electronic device can send the service data of the third service to the second electronic device through the third transmission link, instead of sending the service data of the third service to the second electronic device through the fourth transmission link. The method provided in this application embodiment allows for service scheduling based on the status of the transmission links, fully utilizing transmission resources in a multi-link system and improving service transmission efficiency.
[0378] Please see Figure 6 This figure is a flowchart illustrating another service scheduling method provided in this application embodiment. This service scheduling method is applied to a second electronic device in a multi-link system, and can correspond to device B in the above embodiment. The multi-link system may include a first electronic device and a second electronic device, and multiple transmission links can be established between the first electronic device and the second electronic device. This service scheduling method includes, but is not limited to:
[0379] S801, establishes multiple transmission links with the first electronic device.
[0380] In this embodiment of the application, the second electronic device can establish multiple transmission links with the first electronic device. These transmission links can be any combination of wireless transmission links such as WIFI direct link, WLAN connection link, Bluetooth link, and cellular network link.
[0381] S802. Obtain link information, wherein the link information indicates the operating frequency band of each of the multiple transmission links.
[0382] In this embodiment, when the second electronic device and the first electronic device establish a link, the second electronic device can obtain the operating frequency points of each of the multiple transmission links, thereby determining the operating frequency band of each transmission link and obtaining link information. The second electronic device can also receive link information sent by the first electronic device. The second electronic device can store the obtained link information in a second local storage information. The second local storage information can be storage information in the transmission module of the second electronic device, storage information in the networking module of the second electronic device, or storage information in other modules of the second electronic device associated with service scheduling. When the second electronic device initiates a transmission service, the second electronic device can use the link information stored in the second local storage information to determine the target transmission link for transmitting the service. At this time, the second electronic device can execute the steps performed by the first electronic device as shown in S701-S705 above. Through the method provided by this embodiment, the link information of multiple transmission links can be determined, which is beneficial for using link information for service scheduling and improving service transmission efficiency.
[0383] S803. Receive service data of a first service from a first electronic device through a target transmission link; the multiple transmission links between the first electronic device and the second electronic device include the target transmission link.
[0384] In this embodiment, the second electronic device can receive service data of the first service from the first electronic device via a target transmission link. The target transmission link is included among the multiple transmission links between the first and second electronic devices. The first electronic device can execute the method shown in steps S701-S705 above to determine the target transmission link and send the service data of the first service to the second electronic device.
[0385] S804. Store or display the service data of the first service.
[0386] In this embodiment, the second electronic device can store or display the service data of the first service. For example, if the first service is a screen mirroring service, the second electronic device can display the service data after receiving it. As another example, if the first service is a file-type service, the second electronic device can store the service data after receiving it.
[0387] In one embodiment, the multiple transmission links include a first transmission link and a second transmission link. The service scheduling method provided in this application may further include the following steps: in response to a concurrent transmission instruction for a first service, determining a data buffer area; receiving service data of the first service from a first electronic device through the first transmission link and the second transmission link, the service data including multiple data packets; storing the multiple data packets into the data buffer area according to the numbering information of the data packets; and displaying the data stored in the data buffer area in response to the completion of data buffer area storage.
[0388] Specifically, when an anomaly occurs in the transmission of streaming media services, packet loss often occurs during the transmission of service data through the transmission link. Due to this packet loss, the data packets received by the second electronic device are incomplete, leading to stuttering when the second electronic device displays streaming media services. The method provided in this application embodiment can solve this problem.
[0389] When the first electronic device initiates redundant concurrency for the first service (or the transmission type of the first service is concurrent transmission), the first electronic device can send a concurrent transmission command to the second electronic device. In response to the concurrent transmission command, the second electronic device can determine a data buffer area for storing one or more data packets. The first electronic device can transmit the service data of the first service through a first transmission link and a second transmission link, and the second electronic device can receive the service data of the first service. This service data includes multiple data packets. Each data packet includes numbering information. The second electronic device can store multiple data packets in the data buffer area sequentially according to the numbering information of the received data packets. For example, if the data buffer area can store three data packets, and the service data received by the second electronic device includes data packets 1 and 2 received through the first transmission link, and data packets 1, 2, and 3 received through the second transmission link, then the second electronic device can store data packets 1 and 2 received through both transmission links in the corresponding positions of the data buffer area, and store data packet 3 received through the second transmission link in the corresponding position of the data buffer area.
[0390] When the data cache area is fully stored (i.e., all corresponding positions in the data cache area contain data packets), the second electronic device can display the data stored in the data cache area. The method provided in this application embodiment can utilize multiple transmission links to transmit service data for the same service, significantly reducing latency and stuttering in streaming media services and effectively improving the user experience.
[0391] The following is combined with Figure 7 The hardware structure diagram shown summarizes the service scheduling method provided in this application. Figure 7 This is a schematic diagram of the hardware structure of an electronic device 100 provided in an embodiment of this application. The electronic device 100 can be as described above. Figure 1A , Figure 1B or Figures 5A-5D The devices mentioned can be mobile phones, tablets, laptops, large-screen devices, central control devices, controlled devices, etc., or they can be devices A, B, first electronic devices, second electronic devices, etc. in the method embodiment, used to execute the methods executed by each device in the business scheduling method embodiment.
[0392] The electronic device 100 may include a processor 101, a memory 102, a wireless communication module 103, a mobile communication module 104, an antenna 103A, an antenna 104A, etc. The wireless communication module 103 may include a WLAN communication module, a Bluetooth communication module, etc. These multiple components can transmit data via a bus.
[0393] Processor 101 may include one or more processing units, such as application processors (APs), modem processors, graphics processing units (GPUs), image signal processors (ISPs), controllers, video codecs, digital signal processors (DSPs), baseband processors, and / or neural network processing units (NPUs). These different processing units may be independent devices or integrated into one or more processors.
[0394] The memory 102 can be used to store computer executable program code, which may include instructions. The processor 101 executes various functional applications and data processing of the electronic device 100 by running the instructions stored in the memory 102, such as performing the various methods provided in the embodiments of this application.
[0395] The wireless communication function of the electronic device 100 can be implemented through antenna 103A, antenna 104A, mobile communication module 104, wireless communication module 103, modem processor, and baseband processor.
[0396] Antennas 103A and 104A can be used to transmit and receive electromagnetic wave signals. Each antenna in electronic device 100 can be used to cover one or more communication frequency bands. Different antennas can also be multiplexed to improve antenna utilization. For example, antenna 103A can be multiplexed as a diversity antenna for a wireless local area network. In some other embodiments, the antennas can be used in conjunction with a tuning switch.
[0397] The mobile communication module 104 can provide solutions for wireless communication, including 2G / 3G / 4G / 5G, applied to the electronic device 100. The mobile communication module 104 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc. The mobile communication module 104 can receive electromagnetic waves via antenna 104A, and perform filtering and amplification on the received electromagnetic waves before transmitting them to a modem processor for demodulation. The mobile communication module 104 can also amplify the signal modulated by the modem processor, and the amplified signal is converted into electromagnetic waves and radiated out via antenna 104A. In some embodiments, at least some functional modules of the mobile communication module 104 may be housed in the processor 101. In some embodiments, at least some functional modules of the mobile communication module 104 and at least some modules of the processor 101 may be housed in the same device.
[0398] The modem processor may include a modulator and a demodulator. The modulator modulates a low-frequency baseband signal to be transmitted into a mid-to-high frequency signal. The demodulator demodulates the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. After processing by the baseband processor, the low-frequency baseband signal is transmitted to the application processor. In some embodiments, the modem processor may be a separate device. In other embodiments, the modem processor may be independent of the processor 101 and may be housed in the same device as the mobile communication module 104 or other functional modules.
[0399] The wireless communication module 103 can provide solutions for wireless communication applications on the electronic device 100, including wireless local area networks (WLAN), Bluetooth (BT), cellular networks, Wi-Fi Direct, global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), and infrared (IR). The wireless communication module 103 can be one or more devices integrating at least one communication processing module. The wireless communication module 103 receives electromagnetic waves via antenna 103A, performs frequency modulation and filtering of the electromagnetic wave signal, and sends the processed signal to processor 101. The wireless communication module 103 can also receive signals to be transmitted from processor 101, perform frequency modulation and amplification, and convert them into electromagnetic waves for radiation via antenna 103A.
[0400] In some embodiments, the antenna 104A of the electronic device 100 is coupled to the mobile communication module 104, and the antenna 103A of the electronic device 100 is coupled to the wireless communication module 103, so that the electronic device 100 can communicate with the network and other devices through wireless communication technology.
[0401] It is understood that the structures illustrated in the embodiments of the present invention do not constitute a specific limitation on the electronic device 100. In other embodiments of this application, the electronic device 100 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
[0402] In this embodiment, the wireless communication module 103 can be used for WIFI connection, data or instruction transmission between electronic devices.
[0403] The operations performed by each device in the electronic device 100 can be specifically referred to in the relevant descriptions of the method embodiments above, and will not be elaborated here.
[0404] For example, Figure 8 The software and hardware architecture of the electronic device 100 provided in the embodiments of this application is shown.
[0405] like Figure 8 As shown, the software architecture of an electronic device can adopt a layered architecture, which divides the system into several layers, each with a clear role and division of labor. Layers communicate with each other through software interfaces. In some embodiments, the system is divided into five layers, from top to bottom: application layer, framework layer, system libraries and Android runtime, hardware abstraction layer (HAL), and driver layer. Among these: the application framework layer, system libraries and Android runtime, and hardware abstraction layer are not listed in the table. Figure 8 As shown in the image.
[0406] The application layer can include a series of applications. For example, the application package can include WLAN applications, Bluetooth applications, call sharing, notification sharing, keyboard and mouse sharing, file sharing, screen mirroring, video and gallery applications, as well as other applications not shown, such as music, camera, browser and other applications.
[0407] The WLAN application is primarily used for enabling, connecting to, and setting up WLAN, while the Bluetooth application is used for enabling, connecting to, and setting up Bluetooth. The call sharing application allows nearby devices to answer calls. The notification sharing application allows nearby devices to receive notifications from this electronic device and supports processing on those devices. The keyboard and mouse sharing application allows this electronic device to share input devices with nearby computers, or allows a computer or tablet's mouse, keyboard, and touchpad to be shared with this electronic device. It also enables cross-device file transfer and cross-device window display and use. The file sharing application allows wireless file sharing with other electronic devices on the same network, enabling rapid file sharing or printing. The screen mirroring application allows this electronic device to connect to a large-screen device to display videos or other content shown on this electronic device, or to connect to a small-screen device to display videos or other content shown on the small-screen device on the large screen of this electronic device. Here, "large screen" and "small screen" refer to the relative sizes of the electronic device's display screen.
[0408] The application layer also includes video transmission service interfaces, message transmission service interfaces, audio transmission service interfaces, file transmission service interfaces, and keyboard / mouse transmission service interfaces, as well as the corresponding services for these interfaces, including video transmission service, message transmission service, audio transmission service, file transmission service, and keyboard / mouse transmission service. The video transmission service, message transmission service, audio transmission service, file transmission service, and keyboard / mouse transmission service are used to implement video transmission, message transmission, audio transmission, file transmission, and keyboard / mouse transmission, respectively. Upper-layer applications use these interfaces to transmit the business data of their created services. For example, after creating a screen mirroring service, the upper-layer application "Screen Casting" calls the video transmission service interface, and the video transmission service responds to this call to transmit the business data of the screen mirroring service.
[0409] The application layer may also include a service scheduling and control engine. This engine can be an application invisible to the user and may include some or all of the following functional modules: multipath scheduling system, bandwidth allocation system, transmission system (also known as the transmission module), link establishment system, and service detection system.
[0410] When an application creates a service, it sends a service scheduling request to the multipath scheduling system.
[0411] A multipath scheduling system is used to respond to service scheduling requests, determine and obtain link information, and based on the link information and service type, identify the target transmission link from the multi-link system to carry the service. After determining the target transmission link, the multipath scheduling system can generate multipath scheduling information and send it to the bandwidth allocation system.
[0412] The bandwidth allocation system is used to respond to received multipath scheduling information, allocate bandwidth to services according to service requirements, and when it is necessary to rate limit file-type services, allocate bandwidth to file-type services based on the rate limit value of the file-type services, and send the allocated bandwidth (i.e., bandwidth parameters) of each service to the sending system.
[0413] The sending system is used to transmit service data of a business at its allocated bandwidth or at a bandwidth value not greater than its allocated bandwidth.
[0414] The link system is used to establish transmission links with other devices.
[0415] The service detection system is used to detect whether a service is experiencing lag, average latency, etc. For example, the service detection system can obtain the transmission latency of each data packet in the service data, and determine the transmission jitter parameter based on the transmission latency, thereby determining whether the service is experiencing lag.
[0416] The application framework layer provides application programming interfaces (APIs) and programming frameworks for applications in the application layer. The framework layer includes predefined functions. Examples include an activity manager, window manager, view system, resource manager, notification manager, audio service, camera service, etc., though this embodiment does not impose any limitations on these.
[0417] The system library can include multiple functional modules. For example: surface manager, media libraries, OpenGL ES, SGL, etc.
[0418] The Hardware Abstraction Layer (HAL) is an interface layer located between the operating system kernel and the hardware circuitry, its purpose being to abstract the hardware. It hides the hardware interface details of a specific platform, providing the operating system with a virtual hardware platform that is hardware-independent and portable across multiple platforms. From a software and hardware testing perspective, both software and hardware testing can be performed separately based on the HAL, making parallel software and hardware testing possible.
[0419] The driver layer includes drivers for various hardware components. This layer may include Bluetooth drivers, Wi-Fi drivers, etc. Specifically, the Bluetooth driver drives the Bluetooth module in the hardware layer, and the Wi-Fi driver drives the Wi-Fi module in the hardware layer.
[0420] The hardware layer includes various hardware modules. These may include Bluetooth modules, Wi-Fi modules, etc.
[0421] The specific implementation of each module / unit in the hardware and software architecture of the above-mentioned electronic device can be found in the relevant descriptions in the above-mentioned method embodiments, and will not be repeated here.
[0422] It should be understood that each step in the above method embodiments can be completed by integrated logic circuits in the processor hardware or by instructions in software form. The method steps disclosed in the embodiments of this application can be directly manifested as being executed by a hardware processor, or being executed by a combination of hardware and software modules in the processor.
[0423] This application also provides an electronic device, which may include a memory and a processor. The memory may be used to store a computer program; the processor may be used to invoke the computer program in the memory, causing the electronic device to execute the method executed by the first electronic device or the second electronic device in any of the above embodiments.
[0424] This application also provides an electronic device, which may include a memory and a processor. The memory may be used to store a computer program; the processor may be used to invoke the computer program in the memory, causing the electronic device to execute the method executed by the first electronic device or the second electronic device in any of the above embodiments.
[0425] This application also provides a chip system, the chip system including at least one processor for implementing the functions involved in the first electronic device or the second electronic device in any of the above embodiments.
[0426] In one possible design, the chip system also includes a memory for storing program instructions and data, which may be located within or outside the processor.
[0427] The chip system can consist of chips or include chips and other discrete components.
[0428] Optionally, the chip system may contain one or more processors. These processors can be implemented in hardware or software. When implemented in hardware, the processor can be a logic circuit, an integrated circuit, etc. When implemented in software, the processor can be a general-purpose processor, implemented by reading software code stored in memory.
[0429] Optionally, the chip system may contain one or more memories. The memory may be integrated with the processor or disposed separately from it; this application embodiment does not limit this. For example, the memory may be a non-transient processor, such as a read-only memory (ROM), which may be integrated with the processor on the same chip or disposed separately on different chips. This application embodiment does not specifically limit the type of memory or the arrangement of the memory and processor.
[0430] For example, the chip system may be a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a system on chip (SoC), a central processor unit (CPU), a network processor (NP), a digital signal processor (DSP), a micro controller unit (MCU), a programmable logic device (PLD), or other integrated chips.
[0431] This application also provides a computer program product comprising: a computer program (also referred to as code or instructions) that, when run, causes a computer to perform the method executed by the first electronic device or the second electronic device in any of the above embodiments.
[0432] This application also provides a computer-readable storage medium storing a computer program (also referred to as code or instructions). When the computer program is run, it causes the computer to perform the method executed by the first electronic device or the second electronic device in any of the above embodiments.
[0433] The various embodiments of this application can be combined arbitrarily to achieve different technical effects.
[0434] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented, in whole or in part, as a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium accessible to a computer or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state disk (SSD)).
[0435] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. This program can be stored in a computer-readable storage medium, and when executed, it can include the processes described in the above method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as ROM or random access memory (RAM), magnetic disks, or optical disks.
[0436] In summary, the above description is merely an embodiment of the technical solution of this application and is not intended to limit the scope of protection of this application. Any modifications, equivalent substitutions, improvements, etc., made based on the disclosure of this application should be included within the scope of protection of this application.
Claims
1. A service scheduling method, characterized in that, Applied to a first electronic device, the method includes: Upon receiving a start operation for the first service or detecting a transmission anomaly in the first service, a first multipath scheduling request is generated. In response to the first multipath scheduling request, a target transmission link is determined from multiple transmission links between the first electronic device and the second electronic device based on link information. The target transmission link is used to carry the first service. The link information indicates the operating frequency band of each transmission link among the multiple transmission links. If the first multipath scheduling request is generated upon receiving the initiation operation, and the link information includes the operating frequency bands of the first and second transmission links, then determining the target transmission link from multiple transmission links between the first and second electronic devices in response to the first multipath scheduling request, based on the link information, includes: determining the target transmission link from the first and second transmission links based on link quality data, in response to the first and second transmission links having the same operating frequency band; wherein the link quality data indicates the link quality of the first and second transmission links; and determining the target transmission link from the first and second transmission links based on service type, in response to the first and second transmission links having different operating frequency bands; wherein the service type is a file type or a streaming media type. When the first multipath scheduling request is generated upon detecting a transmission anomaly in the first service, and the link information includes the operating frequency bands of the first and second transmission links, the step of determining a target transmission link from multiple transmission links between the first and second electronic devices in response to the first multipath scheduling request, based on the link information, includes: determining a target transmission link from the first and second transmission links based on link bearer information when the operating frequency bands of the first and second transmission links are the same; and determining a target transmission link from the first and second transmission links based on transmission type information when the operating frequency bands of the first and second transmission links are different. The transmission type information indicates whether the transmission type of the first service is concurrent transmission or single transmission. The service data of the first service is sent to the second electronic device through the target transmission link.
2. The method as described in claim 1, characterized in that, The method further includes: The link information is obtained from the first local storage information; or, During the process of establishing the multiple transmission links with the second electronic device, the link information is acquired.
3. The method as described in claim 1, characterized in that, The step of determining the target transmission link from the first transmission link and the second transmission link based on link quality data includes: Based on the link quality data, a target transmission link that meets the quality requirements is determined from the first transmission link and the second transmission link; wherein the link quality of the target transmission link is higher than the link quality of the transmission links that do not meet the quality requirements.
4. The method as described in claim 1, characterized in that, The step of determining the target transmission link from the first transmission link and the second transmission link according to the service type includes: In response to the fact that the service type of the first service is the same as the service type of the second service, a target transmission link is determined from the first transmission link and the second transmission link based on the link quality data; The second service is the service that is in the transmission state.
5. The method as described in claim 1, characterized in that, The step of determining the target transmission link from the first transmission link and the second transmission link according to the service type includes: In response to the fact that the service type of the first service is streaming media and the service type of the second service is file, a candidate transmission link is determined from the first transmission link and the second transmission link; Determine whether the candidate transmission link can carry the first service; In response to the fact that the candidate transmission link can carry the first service, the candidate transmission link is determined as the target transmission link; In response to the fact that the candidate transmission link cannot carry the first service, the first transmission link and the second transmission link other than the candidate transmission link are determined as the target transmission link.
6. The method as described in claim 5, characterized in that, Determining whether the candidate transmission link can carry the first service includes: Based on the transmission rate of the candidate transmission link, the service description data of the first service, the service description data of the same-frequency service, and the transmission rate of the same-frequency service, determine whether the candidate transmission link can carry the first service. The co-frequency service is a service transmitted through a co-frequency link, which is a link with the same frequency as the candidate transmission link.
7. The method as described in claim 1, characterized in that, The step of determining the target transmission link from the first transmission link and the second transmission link according to the service type includes: In response to the fact that the service type of the first service is file type and the service type of the second service is streaming media type, a streaming media transmission link is determined from the first transmission link and the second transmission link based on the link quality data; wherein, the streaming media transmission link is a transmission link that does not meet the quality requirements, and the streaming media transmission link is used to carry the second service; The transmission links other than the streaming media transmission link in the first transmission link and the second transmission link are determined as the target transmission link; wherein the link quality of the target transmission link is higher than that of the streaming media transmission link.
8. The method as described in claim 1, characterized in that, The step of determining the target transmission link from the first transmission link and the second transmission link based on the link bearer information includes: In response to a service in which no file type exists among multiple transmission services, a target transmission link is determined from the first transmission link and the second transmission link based on the service bearer information of the first transmission link and the service bearer information of the second transmission link in the link bearer information; Among them, multiple transmission services are services in the transmission state, and the multiple transmission services include the first service, the service type of the first service is streaming media; the service carrying information of the first transmission link indicates whether the first transmission link can carry the multiple transmission services, and the service carrying information of the second transmission link indicates whether the second transmission link can carry the multiple transmission services.
9. The method as described in claim 8, characterized in that, The method further includes: In response to the existence of file-type services among the multiple transmission services, the service rate is limited for the file-type services.
10. The method as described in claim 1, characterized in that, The step of determining the target transmission link from the first transmission link and the second transmission link based on transmission type information includes: In response to the transmission type information indicating that the transmission type of the first service is single transmission and that there is no file type service among the multiple transmission services, the first transmission link and the second transmission link are determined as target transmission links; The plurality of transmission services are services in a transmission state, the target transmission link is used to transmit the first service concurrently, and the service type of the first service is streaming media.
11. The method as described in claim 10, characterized in that, The method further includes: In response to the transmission type information indicating that the transmission type of the first service is single transmission and that there is a file type service in a rate-limited state among the multiple transmission services, the first transmission link and the second transmission link are determined as target transmission links.
12. The method as described in claim 10, characterized in that, The method further includes: In response to the transmission type information indicating that the transmission type of the first service is single transmission, and that there is a file type service in an unrate-limited state among the multiple transmission services, the service rate-limiting process is performed on the file type service in the unrate-limited state.
13. The method as described in claim 10, characterized in that, The method further includes: In response to a concurrent transmission command for the first service, the service data of the first service is sent to the second electronic device through the first transmission link in the target transmission link; The service data of the first service is sent to the second electronic device through the second transmission link in the target transmission link.
14. The method as described in claim 1 or 2, characterized in that, The method further includes: Obtain the transmission delay data of the service data of the first service; The average latency data is determined based on the transmission latency data, and the transmission jitter parameter is determined based on the average latency data and the transmission latency data. In response to the transmission jitter parameter being greater than a first jitter threshold, it is determined that a transmission anomaly has been detected in the first service; In response to the transmission jitter parameter being less than or equal to the first jitter threshold, it is determined that no transmission abnormality has occurred in the first service.
15. The method as described in claim 14, characterized in that, The link information includes the operating frequency band of the first transmission link and the operating frequency band of the second transmission link, and the operating frequency bands of the first transmission link and the second transmission link are different. The method further includes: If the transmission type of the first service is concurrent transmission and no transmission abnormality is detected in the first service, determine the single transmission link that meets the quality requirements from the first transmission link and the second transmission link. In response to the jitter parameter of the single-transmission link being less than a second jitter threshold, a target transmission link is determined from the first transmission link and the second transmission link, the target transmission link being used to adjust the transmission type of the first service to single-transmission.
16. The method as described in claim 1 or 2, characterized in that, The plurality of transmission links includes a third transmission link, through which the first electronic device sends service data of the third service to the second electronic device; the method further includes: If an interruption is detected in the third transmission link, a second multipath scheduling request is generated; In response to the second multipath scheduling request, a fourth transmission link is determined from the plurality of transmission links; The service data of the third service is sent to the second electronic device through the fourth transmission link.
17. The method as described in claim 16, characterized in that, The method further includes: Upon detection that the third transmission link has been restored, a third multipath scheduling request is generated; In response to the third multipath scheduling request, the service data of the third service is sent to the second electronic device through the third transmission link.
18. A service scheduling method, characterized in that, Applied to a second electronic device, the method includes: Service data for a first service is received from a first electronic device via a target transmission link; multiple transmission links between the first electronic device and the second electronic device include the target transmission link; when the first electronic device receives a startup operation that generates a first multipath scheduling request, and the multiple transmission links include the first transmission link and the second transmission link, if the operating frequency bands of the first transmission link and the second transmission link are the same, the target transmission link is determined from the first transmission link and the second transmission link based on link quality data, where the link quality data indicates the link quality of the first transmission link and the link quality of the second transmission link; if the operating frequency bands of the first transmission link and the second transmission link are different, the target transmission link is determined based on the service type. The service type is determined from the first transmission link and the second transmission link as either a file type or a streaming media type. When the first electronic device detects a transmission anomaly in the first service and generates a first multipath scheduling request, and the multiple transmission links include the first transmission link and the second transmission link, if the operating frequency bands of the first transmission link and the second transmission link are the same, the target transmission link is determined from the first transmission link and the second transmission link based on link bearer information; if the operating frequency bands of the first transmission link and the second transmission link are different, the target transmission link is determined from the first transmission link and the second transmission link based on transmission type information, where the transmission type information indicates whether the transmission type of the first service is concurrent transmission or single transmission. Store or display the business data of the first service.
19. The method as described in claim 18, characterized in that, The method further includes: During the process of establishing the multiple transmission links with the first electronic device, the link information is acquired; The link information is stored in the second local storage information.
20. The method as described in claim 18 or 19, characterized in that, The method further includes: In response to a concurrent transmission command for the first service, a data buffer area is determined; Through the first transmission link and the second transmission link, service data of a first service from a first electronic device is received, the service data including multiple data packets; Based on the data packet numbering information, the plurality of data packets are stored in the data cache area; In response to the completion of data caching in the data cache area, the data stored in the data cache area is displayed.
21. An electronic device, characterized in that, The device includes a memory and one or more processors; the memory is coupled to the one or more processors, the memory is used to store computer program code, the computer program code including computer instructions, and the one or more processors call the computer instructions to cause the electronic device to perform the service scheduling method as described in any one of claims 1-17 or 18-20.
22. A computer-readable storage medium comprising instructions, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the service scheduling method as described in any one of claims 1-17, or implements the service scheduling method as described in any one of claims 18-20.
23. A chip system, characterized in that, The chip system is coupled to a memory, and the chip system is used to read and execute a computer program stored in the memory to implement the service scheduling method as described in any one of claims 1-17, or to implement the service scheduling method as described in any one of claims 18-20.