Interference measurement method, electronic equipment and computer readable storage medium
By measuring the changes in round trip time and data rate on the channel, quantifying the interference type, the interference problem of electronic devices when transmitting data is solved, ensuring real-time service quality and improving user experience.
Patent Information
- Application Number
- CN202411263837.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-10
- Publication Date
- 2025-08-12
AI Technical Summary
Electronic devices may be disturbed when transmitting data, resulting in a decline in service quality and affecting user experience. It is difficult for existing technology to detect and respond to interference in a timely manner.
By measuring the changes in round trip time and data rate on the channel, differential calculations are performed to quantify interference and determine the type of interference, thereby selecting the appropriate response.
Effectively identify and respond to interference, ensure the quality of real-time services, reduce delays, and improve user experience.
Smart Images

Figure CN120474644A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of terminals and communication technologies, and in particular to an interference measurement method, an electronic device, and a computer-readable storage medium. Background Art
[0002] Electronic devices may be subject to interference from other electromagnetic waves when transmitting data. This interference can degrade the quality of service provided by these devices, impacting the user experience. When interference occurs on a link, electronic devices must promptly detect it. This helps subsequent electronic devices select effective countermeasures based on the interference detection results. Summary of the Invention
[0003] The present invention provides an interference measurement method, an electronic device, and a computer-readable storage medium. In this method, when interference occurs on a channel, the electronic device can quantify the interference on the channel and determine the type of interference, thereby helping to select a reasonable and effective interference response method.
[0004] In a first aspect, the present application provides an interference measurement method, the method comprising: measuring an increase in a first round-trip time (RTT) of a first service; measuring a first data rate and a second data rate of a second service, the first data rate being the data rate of the second service when no interference is added to the first channel, and the second data rate being the data rate of the second service when the first interference is added to the first channel; estimating a first duration occupied by the first interference in a first time period based on the first data rate and the second data rate, wherein the smaller the second data rate is than the first data rate, the longer the first duration occupied by the first interference in the first time period; determining that the type of the first interference is the same as the type of the first service when the deviation of the first RTT increase relative to the first duration exceeds a first threshold, and determining that the type of the first interference is the same as the type of the second service when the deviation of the first RTT increase relative to the first duration does not exceed the first threshold; wherein the first service and the second service are also transmitted on the first channel, the first electronic device running the first service and the second service has no communication connection with the second electronic device causing the first interference, and the first electronic device running the first service and the second service is not the same electronic device as the second electronic device causing the first interference.
[0005] Among them, the first service, the second service and the first interference all run on the first channel. The first interference may be a service running on the first channel, which will compete with the first service and the second service for the resources of the first channel. Then the first electronic device needs to determine the service type of the first interference in order to determine which response method is more effective. Among them, the first electronic device can quantify the first interference based on the increase in the first round-trip time RTT of the first service, the first data rate and the second data rate of the second service, so as to determine whether the first interference periodically sends fixed-size data packets when sending data (that is, the first interference is of the same type as the first service), or continuously sends packets and the size of the data packets is not fixed (that is, the first interference is of the same type as the second service), thereby providing a beneficial effect for the subsequent selection of an appropriate interference response method.
[0006] In conjunction with the first aspect, in some embodiments, the first service is a real-time service, and the second service is a file transfer service. Real-time services may include, for example, screen projection, video, voice calls, and the like. Because real-time services are more sensitive to the latency of data transmission on the channel, the first electronic device may, after determining the first interference type, limit the speed of the file transfer service, i.e., the second service, to prioritize ensuring that the real-time service is not affected by the first interference, thereby ensuring that users have a better experience when using the real-time service.
[0007] In combination with the first aspect, in some embodiments, the first RTT increase is the RTT increase of the first service that increases the most in the first time period relative to before the first interference increases.
[0008] That is to say, the first electronic device selects the R-Task that is most severely affected by the first interference to represent the channel resources that the first service yields to after being affected by the first interference. This is because the RTT value reduction of some R-Task services affected by the first interference may be small, so the RTT increase with the largest increase among multiple R-Tasks indicates that the channel resources (i.e., the channel transmission time) yielding to the first interference are more significant. It is not limited to the RTT increase with the largest increase in the first service within the first time period relative to before the first interference increases. The first RTT increase can also be the average of the RTT increases of all R-Tasks within the first time period for one or more R-Tasks included in the first service.
[0009] In combination with the first aspect, in some embodiments, the second service includes N services, the first data rate includes the data rates of the N services when no interference is added in the first channel, and the second data rate includes the data rates of the N services when the first interference is added in the first channel, and N is a positive integer.
[0010] In combination with the first aspect, in some embodiments, the data rate of the i-th service among the N services in the first channel without adding interference is T i , the data rate T′ of the i-th service among N services when the first interference is added in the first channel i , i is the index value, the first duration is t, and the first duration t satisfies the following formula:
[0011]
[0012] Wherein, α is determined based on the time ratio of the first service and the second service in the second time period. i is the modulation and coding strategy (MCS) rate of the link of the i-th service among N services.
[0013] Here, the first interference is assumed to be an R-Task, and the channel transmission time during which the F-Task is affected by the first interference is taken as the total transmission time of the first interference in the first time period, that is, the value of t.
[0014] In conjunction with the first aspect, in some embodiments, the first service includes M services, where M is a positive integer, and the time proportion occupied by the first service in the second time period is R1. The time proportion R1 occupied by the first service in the second time period satisfies the following formula:
[0015]
[0016] Among them, G i is the data rate of the i-th service in the second time period among the M services, RT i is the MCS rate of the link of the i-th service among the M services.
[0017] In combination with the first aspect, in some embodiments, the time proportion occupied by the second service in the second time period is R2, and the time proportion R2 occupied by the second service in the second time period satisfies the following formula:
[0018]
[0019] Among them, E i is the data rate of the i-th service among the N services in the second time period.
[0020] In combination with the first aspect, in some embodiments, the sum of the time proportion R1 occupied by the first service in the second time period and the time proportion R2 occupied by the second service in the second time period is 1.
[0021] That is, the first service and the second service are considered to be all services running on the first channel during the second time period. Both services occupy the second time period, so the sum of their time proportions in the second time period is 1. In this way, the overhead proportion α can be calculated. Calculating α can more accurately calculate the time occupied by the first interference in the first channel, eliminating interference from the overhead of the first and second services.
[0022] In combination with the first aspect, in some embodiments, the second time period is a time period in which the RTT value of the first service or the second service is minimum when no interference is added in the first channel.
[0023] In other words, the first electronic device can periodically measure the RTT value of the first service or the second service on the first channel, and then select the time period with the minimum RTT value as the second time period. The first electronic device will measure the data rate of the first service and the second service in the second time period. Since the RTT value is the smallest during the second time period, it can be roughly considered that the channel state is optimal during the second time period. Therefore, the second time period can also be called the "zero interference" time period. The overhead ratio α calculated based on the first service and the second service in the second time period will be more accurate, which ensures that the subsequent quantification of the first interference based on α will also be more accurate.
[0024] In conjunction with the first aspect, in some embodiments, the deviation of the first RTT increase relative to the first duration is σ, and the deviation σ of the first RTT increase relative to the first duration satisfies the following formula:
[0025]
[0026] Among them, max(D′ i -D i ) is the first RTT increase, D′ i is the RTT of the i-th service among the M services when the first interference is added to the first channel, D i is the RTT of the i-th service among the M services when no interference is added to the first channel, and P is the number of times the first service transmits application layer data in the first time period.
[0027] In combination with the first aspect, in some embodiments, when the deviation of the first RTT increase relative to the first duration exceeds a first threshold, determining that the type of the first interference is the same as the type of the first service includes: when the value of σ exceeds β, determining that the type of the first interference is the same as the type of the first service; when the deviation of the first RTT increase relative to the first duration does not exceed the first threshold, determining that the type of the first interference is the same as the type of the second service includes: when the value of σ does not exceed β, determining that the type of the first interference is the same as the type of the second service.
[0028] The method of calculating the deviation is not limited to dividing the first RTT increase by the first duration, and can also be subtracting the two, etc. The embodiment of the present application does not limit the method of calculating the deviation. Each deviation calculation method may have a different threshold for judging the interference type. The first threshold may take different values based on the deviation calculation method. Among them, the threshold corresponding to the deviation when dividing the first RTT increase by the first duration may be the second threshold β. Among them, max(D′ i -D i ) can be regarded as the channel transmission time that the first service actually "yields" due to the influence of the first interference after the first interference occurs, and t / P is the channel transmission time that theoretically gives up to the first interference when the first interference is used as an R-Task after the first interference occurs. When the type of the first interference is the same as the type of the first service, that is, the first interference sends data packets according to a preset period (for example, a data packet is sent every 8ms), and the size of each data packet sent is not much different. Since there is a certain time interval between the first interference sending data packets every two times, the utilization rate of the channel transmission time that the first interference actually "yields" due to the influence of the first interference on the first service is low, and t / P may be lower than max(D′ i -D i ) is much less. When the type of the first interference is the same as that of the second service, that is, there is no gap when the first interference sends data packets, the utilization rate of the channel transmission time actually "yielded" by the first interference to the first service is higher, and t / P may be relatively closer to max(D ′ i -D i ). Therefore, when the type of the first interference is the same as the type of the second service, the deviation σ of the first RTT increase relative to the first duration is smaller than when the type of the first interference is the same as the type of the second service.
[0029] In combination with the first aspect, in some embodiments, when it is determined that the type of the first interference is the same as the type of the first service, a first speed limit mechanism is used to limit the speed of the second service; when it is determined that the type of the first interference is the same as the type of the second service, a second speed limit mechanism is used to limit the speed of the second service.
[0030] It is understandable that when the type of the first interference is the same as the type of the first service, since the first interference is periodic packet transmission and the data rate is stable, a small speed limit on the F-Task in the second service can effectively reduce the delay of the R-Task in the first service. When the type of the first interference is the same as the type of the second service, since the first interference sends packets without intervals and the size of each data packet sent is uncertain, a small speed limit may cause the time occupied by the first interference on the first channel to continue to increase, which will have little effect on improving the RTT value of the first service. Therefore, the F-Task in the second service can be more speed-limited to ensure the service quality of the R-Task. In this way, the first electronic device can select a more appropriate interference processing method based on the type of the first interference, thereby helping the R-Task reduce delays when interference occurs on the first channel and ensuring the user experience when using real-time services.
[0031] In a second aspect, the present application provides an electronic device comprising a display screen, a memory, and a processor coupled to the memory; the display screen is used to display an interface, the memory stores a computer program, and when the processor executes the above computer program, the electronic device implements any one of the methods described in the above first aspect.
[0032] In a third aspect, the present application provides a computer-readable storage medium, which stores a computer program or computer instructions, and the aforementioned computer program or computer instructions are executed by a processor to implement any method described in the first aspect.
[0033] In a fourth aspect, an embodiment of the present application provides a computer program product. When the computer program product is executed by a processor, the method described in any one of the above-mentioned first aspects will be implemented.
[0034] In a fifth aspect, an embodiment of the present application provides a chip, which includes a processor and a memory, wherein the memory is used to store computer programs or computer instructions, and the processor is used to execute the computer programs or computer instructions stored in the memory, so that the chip executes any method described in the first aspect above.
[0035] The solutions provided in the second to fifth aspects are used to implement or cooperate with the corresponding methods provided in the first aspect, and therefore can achieve the same or corresponding beneficial effects as the corresponding methods in the first aspect, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0036] Figure 1 is a schematic diagram of a communication system 10 provided in an embodiment of the present application;
[0037] Figure 2This is a schematic diagram of a scenario in which a service is affected by interference, provided by an embodiment of the present application;
[0038] Figure 3 1 is a schematic diagram of the hardware structure of an electronic device 100 provided in an embodiment of the present application;
[0039] Figure 4 1 is a schematic diagram of the software and hardware architecture of the electronic device 100 provided in an embodiment of the present application;
[0040] Figure 5 is a flowchart of the interference detection method provided in an embodiment of the present application;
[0041] Figure 6 This is a schematic diagram of a single air interface RTT measurement provided by an embodiment of the present application;
[0042] Figure 7 Schematic diagram of dual-air interface RTT measurement based on dense feedback provided in an embodiment of the present application;
[0043] Figure 8 This is a schematic structural diagram of a communication device provided in an embodiment of the present application;
[0044] Figure 9 This is a schematic diagram of the structure of a chip provided in an embodiment of the present application. DETAILED DESCRIPTION
[0045] The terms used in the following examples of the present application are for the purpose of describing specific embodiments only and are not intended to limit the present application. As used in the specification and appended claims of the present application, the singular expressions "a," "an," "said," "above," "the," and "this" are intended to include plural expressions as well, unless the context clearly indicates otherwise. It should also be understood that the term "and / or" used in the present application refers to and encompasses any or all possible combinations of one or more of the listed items.
[0046] In the following, the terms "first" and "second" are used for descriptive purposes only and should not be understood to imply or suggest relative importance or implicitly indicate the number of the technical features indicated. Therefore, the features defined as "first" and "second" may explicitly or implicitly include one or more of the features. In the description of the embodiments of this application, unless otherwise specified, "plurality" means two or more.
[0047] Figure 1 Schematic diagram of a communication system 10 provided in an embodiment of the present application.
[0048] like Figure 1As shown, the communication system 10 is composed of a central control device (Controller) and one or more agent devices (Agent). Signaling interaction can be performed between the central control device and the agent devices.
[0049] The central control device can be an electronic device with certain computing capabilities. The central control device can obtain global information such as channel status, service status, scheduling policy information in the communication system 10, and then allocate traffic on one or more channels in the communication system 10 based on the global information.
[0050] A proxy device can be an electronic device used to implement one or more services. Multiple proxy devices can establish at least one link between them, which is used to transmit service data. The proxy device can obtain local information such as the channel status of the link associated with its service and the service status, and feed this local information back to the central control device.
[0051] The one or more services mentioned above may include real-time services and file transfer services.
[0052] (1) Real-time services: generate data to be transmitted at a fixed period. For example, the screen projection service usually generates a video frame every 16 milliseconds. In order to ensure the real-time transmission of the service, the service usually requires a smaller average transmission delay. Real-time services may include screen projection services, video call services, voice call services, etc. In the embodiment of the present application, real-time services may also be referred to as R-Tasks.
[0053] (2) File transfer service: When a service is initiated, the content and amount of data to be transferred can be clearly specified. Requirements for the data transfer completion time (i.e., average transfer rate) can also be set. File transfer services may include video file transfer services, text file transfer services, image file transfer services, web page transfer services, etc. In the embodiments of the present application, a file transfer service may also be referred to as a T-Task.
[0054] It is understandable that the application layer can identify the service type of each service based on the characteristics of each service.
[0055] In some embodiments, in order to ensure the smoothness of business data transmission, the proxy device can transmit business data to one or more proxy devices through multiple channels. For example, the proxy device can transmit R-Task data packets through two channels, and the two channels can be called channel 1 and channel 2 respectively. The proxy device can split the application layer data packet of the R-Task business into W user datagram protocol (UDP) packets, and the H UDP packets can be numbered 1, 2, 3, ..., H, H+1, ..., W from front to back in the transmission order. Among them, the proxy device can transmit the 1st to Hth UDP packets through channel 1 and transmit the H+1th to Wth UDP packets through channel 2. The proxy device as the receiving end can splice the UDP packets transmitted from the two channels in the order of numbering to eliminate disorder.
[0056] In some embodiments, the central control device may periodically send status information of one or more channels to the proxy devices. Each proxy device may determine the scheduling strategy for each service based on the channel status information and the proxy device's own service status. The central control device may determine the channel status based on the round-trip time (RTT) of the data transmitted on the channel. RTT refers to the total delay from the start of data transmission by the sender to the receipt of an acknowledgment from the receiver (the receiver immediately sends an acknowledgment upon receiving the data). For details on how to calculate RTT, please refer to the description of subsequent embodiments and will not be expanded upon here.
[0057] Taking R-Task as an example, the central control device can set two RTT thresholds, which may include a busy RTT threshold and a timeout RTT threshold. When the RTT of data transmitted by an R-Task on a channel exceeds the busy threshold, the central control device can determine that the channel is busy for the R-Task transmission. When the RTT of data transmitted by an R-Task on a channel exceeds the timeout RTT threshold, the central control device can determine that the R-Task transmission on the channel has timed out. The central control device can use multiple identifiers to mark the channel status. For example, the central control device can classify the channel status as red, yellow, and green. When the RTT of all R-Task service data in a channel is lower than the corresponding busy RTT threshold, the channel is in a green light state; when the RTT of all R-Task service data in a channel is higher than the corresponding busy RTT threshold, but lower than the timeout RTT threshold, the channel is in a yellow light state; when the RTT of one R-Task service data in a channel is higher than the corresponding timeout RTT threshold, the channel is in a red light state. In some embodiments, the central control device can periodically send the channel status indicated by red, green, or yellow lights to the proxy device, and the proxy device can determine the scheduling strategy for each service based on the channel status and its own service status. When one or more services of a proxy device are transmitted over multiple channels, the central control device can determine the channel status of each channel based on the above method and then send the channel status of each channel to the proxy device. The proxy device can then determine the service scheduling strategy based on the channel status of multiple channels. For example, when a proxy device is transmitting service data over a single channel, if the proxy device determines that the channel status of that channel is red, the proxy device can switch the service running on that channel from single-channel transmission to dual-channel transmission. In some embodiments, the proxy device itself can also determine the channel status of the channel where its service data packet is located.
[0058] Among them, the central control device and the agent device in the communication system 10 can communicate through short-range communication. The above-mentioned short-range communication methods may include, for example, wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication technology (NFC), infrared technology (IR), etc. The links in the communication system 10 can operate on the same channel or the same frequency band. The same frequency band refers to the same 2.4GHz, 5GHz or other frequency bands. A frequency band can include multiple channels. For example, the available channels of indoor access points (APs) in the 5GHz band can be divided into 13 channels, namely 36, 40, 44, 48, 52, 56, 60, 64, 149, 153, 157, 161, and 165. The same channel of the present application may be any channel provided by the above-mentioned 2.4 GHz or 5.0 GHz or other frequency bands. Taking wireless fidelity (WiFi) as an example of a short-range communication method, the links in the communication system 10 working on the same channel may mean that the links established between multiple electronic devices in a communication system can work under the same local area network, that is, belong to the same basic service set (BSS), or belong to the same extended service set (ESS). Alternatively, some links in the communication system 10 belong to the same BSS or ESS, some links belong to a WiFi direct network, and other links belong to other networks of the same frequency band or the same channel. The links in the communication system 10 working on the same frequency band may mean that the channels on which the links in the communication system work belong to the same frequency band, such as belonging to a frequency band in 2.4 GHz, 5 GHz or other frequency bands.
[0059] In some embodiments, the central control device can be one of the proxy devices among multiple proxy devices. That is, in addition to obtaining global information within the communication system 10 and scheduling the services of other proxy devices based on the global information, the central control device can also transmit service data with other proxy devices, thereby realizing one or both of the aforementioned R-Task or T-Task services.
[0060] In the embodiment of the present application, the communication system 10 may also be referred to as a scheduling system, or a quality of service (QOS) system.
[0061] In some embodiments, services running in the communication system 10 may be affected by interference, resulting in a decrease in the service quality of service (QoS). QoS can be represented by parameters such as data transmission delay, bandwidth, and packet loss rate.
[0062] Figure 2 This is a schematic diagram of a scenario in which a service is affected by interference, provided in an embodiment of the present application.
[0063] like Figure 2 As shown, the communication system 20 can be regarded as a specific example of the communication system 10. The communication system 20 can include a central control device and multiple proxy devices. The multiple proxy devices can include, for example, mobile phone 1, mobile phone 2, mobile phone 3 and a large-screen device.
[0064] Mobile phone 1 can project its screen onto a large-screen device. Link 21 can carry the projection service between mobile phone 1 and the large-screen device. Mobile phone 1 can also transfer files to mobile phone 2. Link 22 can carry the file transfer service between mobile phones 1 and 2. Mobile phone 2 can transfer files to mobile phone 3. Link 23 can carry the file transfer service between mobile phones 2 and 3.
[0065] It is not limited to one link carrying one service. A link can also carry multiple services. The multiple services can be services of the same type, for example, all R-Tasks, or the multiple services can be services of different types, for example, multiple services include both R-Tasks and T-Tasks. The embodiments of the present application do not limit this.
[0066] The link may include a switching node, for example, link 22 between mobile phone 1 and mobile phone 2 may include a switching node, such as a router. Alternatively, the link may not include a switching node, for example, mobile phone 2 and mobile phone 3 may use a WiFi direct connection, which is not limited in this embodiment of the present application.
[0067] The central control device can be connected to multiple proxy devices to obtain information such as the service status and channel status of the multiple proxy devices.
[0068] The communication system 20 may include mobile phones 4 and 5 outside, and a link 24 carrying services may be provided between mobile phones 4 and 5. Since mobile phones 4 and 5 are outside the communication system 20, electronic devices inside the communication system 20 cannot obtain the service type carried on the link 24.
[0069] Among them, link 21, link 22 and link 23 in the communication system 20 can operate on the same channel. For example, link 21, link 22 and link 23 all operate on channel 36 of the 5GHz frequency band. When the channel on which link 24 operates is the same as that of link 21, link 22 and link 23, the unknown service on link 24 will compete with the services running on links 21, link 22 and link 23 in the communication system 20 for channel resources, thereby interfering with the services within the communication system 20. This may result in a reduction in the file transfer speed in the file transfer services carried by links 22 and link 23, or a freeze in the screen projection service carried by link 21.
[0070] It should be noted that Figure 2 The scenario in which the services are affected by interference is only an example. The communication system 20 may include more Figure 2 More or fewer proxy devices may be included than shown. Figure 2 The embodiments of the present application do not limit this. In addition to the interference caused by the services running between the two mobile phones on the services within the communication system 20, the services of other types of electronic devices (such as mobile phones and tablets) or other radiators may also cause interference to the communication system 20. It is not limited to one interference. There may be multiple interferences outside the communication system 20 that affect the services within the communication system 20. In addition, in addition to the interference caused by the external communication system 20 on the services within the communication system 20, there may also be interference between multiple services within the communication system 20.
[0071] In order to solve the interference problem caused by the above-mentioned multiple links running services on the same channel, the embodiments of the present application provide an interference measurement method, an electronic device and a computer-readable storage medium. In this method, when the electronic device detects that there is interference affecting the QOS of the service on the channel, the electronic device can perform differential calculations on the RTT value and throughput rate changes on the channel, thereby quantifying the degree of impact of the interference. The electronic device can determine the type of service that is similar to the interference based on the above-mentioned quantification results, thereby helping the electronic device to select appropriate measures to deal with the interference. Among them, the interference measurement method can be applied to electronic devices inside the communication system to detect interference outside the communication system, for example, Figure 2 The central control device or proxy device shown can use the interference measurement method to detect the interference generated by the link 24. Alternatively, the interference measurement method can also be applied to detect the interference generated by the electronic device within the communication system to the services of other electronic devices within the communication system, for example, Figure 2 The file transfer service on link 23 may also interfere with the screen projection service and file transfer service associated with mobile phone 1. Mobile phone 1 may also detect the interference caused by the file transfer service on link 23 through an interference measurement method.
[0072] Here, the electronic device 100 provided in an embodiment of the present application is first introduced.
[0073] Figure 3 Schematic diagram of the hardware structure of an electronic device 100 provided in an embodiment of the present application.
[0074] The central control device and the proxy device mentioned above can both be electronic devices 100. The electronic device 100 can be an intelligent terminal device, and can be of various types. The embodiments of the present application do not limit its specific type. For example, the electronic device 100 can be a mobile phone, and can also include a tablet computer, a desktop computer, a laptop computer, a handheld computer, a notebook computer, a smart screen, a wearable device, an augmented reality (AR) device, a virtual reality (VR) device, an artificial intelligence (AI) device, a car machine, a smart headset, a game console, and can also be an Internet of Things (IOT) device or a smart home device such as a smart TV, etc. Without being limited to this, it can also include a laptop computer with a touch-sensitive surface or touch panel, a desktop computer with a touch-sensitive surface or touch panel, and other non-portable terminal devices, etc.
[0075] 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. The above-mentioned multiple components may transmit data via a bus.
[0076] The processor 101 may include one or more processing units. For example, the processor 101 may include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU). The different processing units may be independent devices or integrated into one or more processors.
[0077] The memory 102 can be used to store computer executable program codes, which may include instructions. The processor 101 executes the instructions stored in the memory 102 to execute various functional applications and data processing of the electronic device 100, such as executing various methods provided in the embodiments of the present application.
[0078] The wireless communication function of the electronic device 100 can be implemented through the antenna 103A, the antenna 104A, the mobile communication module 104, the wireless communication module 103, the modem processor and the baseband processor.
[0079] Antenna 103A and antenna 104A can be used to transmit and receive electromagnetic wave signals. Each antenna in electronic device 100 can be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve antenna utilization. For example, antenna 103A can be reused as a diversity antenna for a wireless local area network. In other embodiments, the antennas can be used in conjunction with a tuning switch.
[0080] The mobile communication module 104 can provide solutions for wireless communications including 2G / 3G / 4G / 5G applied to the electronic device 100. The mobile communication module 104 may include at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), etc. The mobile communication module 104 can receive electromagnetic waves through the antenna 104A, and perform processing such as filtering and amplifying the received electromagnetic waves, and then transmit them to the modulation and demodulation processor for demodulation. The mobile communication module 104 can also amplify the signal modulated by the modulation and demodulation processor, and the amplified signal is converted into electromagnetic waves and radiated out through the antenna 104A. In some embodiments, at least some of the functional modules of the mobile communication module 104 can be set in the processor 101. In some embodiments, at least some of the functional modules of the mobile communication module 104 can be set in the same device as at least some of the modules of the processor 101.
[0081] The modem processor may include a modulator and a demodulator. The modulator is used to modulate the low-frequency baseband signal to be transmitted into a medium- or high-frequency signal. The demodulator is used to demodulate 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 being processed by the baseband processor, the low-frequency baseband signal is passed to the application processor. In some embodiments, the modem processor may be an independent device. In other embodiments, the modem processor may be independent of the processor 101 and be provided in the same device as the mobile communication module 104 or other functional modules.
[0082] The wireless communication module 103 can provide wireless communication solutions including wireless local area networks (WLAN), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR), etc. applied to the electronic device 100. 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 the antenna 103A, frequency modulates and filters the electromagnetic wave signals, and sends the processed signals to the processor 101. The wireless communication module 103 can also receive the signal to be sent from the processor 101, frequency modulate it, amplify it, and convert it into electromagnetic waves for radiation through the antenna 103A.
[0083] 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.
[0084] It is understood that the structure shown in the embodiment of the present invention does not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 may include Figure 3 More or fewer components may be shown, or some components may be combined or separated, or the components may be arranged differently. Figure 3 The components shown may be implemented by hardware, software or a combination of software and hardware.
[0085] Figure 4 Schematic diagram of the software and hardware architecture of the electronic device 100 provided in an embodiment of the present application.
[0086] like Figure 4 As shown, the software architecture of the electronic device can adopt a layered architecture, which divides the system into several layers, and each layer has a clear role and division of labor. The layers communicate with each other through software interfaces. In some embodiments, the system is divided into five layers, from top to bottom, namely, the application layer, the application framework layer (framework), the system library and the Android runtime (android runtime), the hardware abstraction layer (hardware abstract layer, HAL), the driver layer and the hardware layer. Among them: the application framework layer, the system library and the Android runtime, the hardware abstraction layer, not shown in Figure 4Shown in.
[0087] The application layer (application) can include a series of applications. For example, the application package can include WLAN applications, Bluetooth applications, application connection, call sharing, notification sharing, keyboard and mouse sharing, file sharing, screen projection, video and gallery applications, as well as other applications not shown, such as music, camera, browser, WeChat, etc. TM ,Tik Tok TM and other applications.
[0088] Among them, the WLAN application is mainly used to realize the opening, connection and setting of WLAN, etc., and the Bluetooth application is used to realize the opening, connection and setting of Bluetooth, etc. The application continuation application is used to realize the content and usage status of the application between this electronic device and nearby devices. The call sharing application is used to realize that nearby devices answer and continue calls from this electronic device. For example, the smart screen can answer calls from this electronic device, and tablets and computers also support making calls. Notification sharing is used to realize that nearby devices receive notifications from this electronic device and support processing on these devices. Keyboard and mouse sharing is used to share input devices with this electronic device and nearby computers, or the mouse, keyboard and touchpad of the computer or tablet are shared with this electronic device. It can also realize cross-device file transfer and cross-device window display and use. The file sharing application is used to realize wireless sharing of files with other electronic devices in the same network, and realize extremely fast sharing or printing of files. The screen projection application is used to realize the linking of this electronic device with a large-screen device to realize the display of videos and other content displayed on this electronic device through the large-screen device, or to realize the linking of this electronic device with a small-screen device to realize the display of videos and other content displayed on the small-screen device through the large screen of this electronic device. Here, "large screen" and "small screen" refer to the relative sizes of the display screens of electronic devices.
[0089] The application layer also includes a video transmission service interface, a message transmission service interface, an audio transmission service interface, a file transfer service interface, a keyboard and mouse transmission service interface, and a file stream transmission service interface, as well as the services corresponding to these interfaces, including video transmission service, message transmission service, audio transmission service, file transfer service, keyboard and mouse transmission service, and file stream transmission service. Among them, the video transmission service, message transmission service, audio transmission service, file transfer service, keyboard and mouse transmission service, and file stream transmission service are used to implement video transmission, message transmission, audio transmission, file transfer, keyboard and mouse transmission, and file stream transmission, respectively. The upper-layer application realizes the transmission of the business data it creates by calling these interfaces. For example, after the upper-layer application "screen projection" creates the screen projection service, it calls the video transmission service interface, and the video transmission service responds to the call to realize the transmission of the business data of the screen projection service.
[0090] The application layer may also include a QoS control engine, which may be an application invisible to the user. The QoS control engine may include: a QoS monitoring system, an information update system, an interference measurement system, a QoS scheduling system, and a QoS bandwidth allocation system.
[0091] The QOS monitoring system is used to monitor changes in service information of services and changes in link information of links, so as to trigger the information updating system to update service information and link information when the above information changes.
[0092] The information update system is used to collect its own business information and link information, as well as receive business information and link information from other devices in the QOS system. The above business information may include the bandwidth requirements of the business. Link information may include the maximum effective rate of the link. Among them, the central control device can receive the business information and link information of each proxy device through the information update system, or send the channel status on the link (such as the red light status, yellow light status or green light status of the channel) and the quantified results of the newly added interference to the proxy device; the proxy device can collect its own business information and link information through the information update system, and can also receive business information and link information of other proxy devices through the information update system, or the channel status of each link in the QOS system, etc.
[0093] In some embodiments, when it is identified that service information or link information is updated, increased, or decreased in the QOS system, the information update system can also be used to send a scheduling request to the QOS scheduling system to trigger the rescheduling of the service. For example, the proxy device can use the information update system to select a suitable scheduling method based on the status of the channel where its own service is located, the quantitative results of the impact of the new interference on the QOS system, and the local service information and link information, and then schedule its own service. The above scheduling may include speed limiting the service, lifting the speed limit on the service, switching the service data from single-channel transmission to dual-channel transmission, or switching the service data from dual-channel transmission to single-channel transmission, etc. Alternatively, the central control device can also use the information update system to schedule the service of the proxy device based on the channel status, service information, and interference quantification results in the QOS system.
[0094] In some embodiments, the information update system is further configured to implement measurement of the highest effective rate of a link in the QOS system.
[0095] The interference measurement system can quantify the impact of new interference on the QOS system based on the link's maximum effective rate, RTT, and other data. After detecting new interference, the interference measurement system can send the quantification results to the information update system.
[0096] The QOS scheduling system is used to implement scheduling methods such as speed limiting and channel switching in response to scheduling requests. Taking file speed limiting as an example, QOS can determine whether the current QOS system includes file transfer services or whether the electronic device itself includes file transfer services. If file transfer services are included, the speed limit value for the file transfer service is recalculated and the requested bandwidth for non-file transfer services and the speed limit value for the file transfer service are sent to the QOS bandwidth allocation system.
[0097] The QOS bandwidth allocation system can be used to allocate bandwidth to non-file transfer services based on the bandwidth requested by non-file transfer services received, and to allocate bandwidth to non-file transfer services based on the speed limit value of file transfer services, and to distribute the allocated bandwidth to each service.
[0098] The application framework layer provides an application programming interface (API) and programming framework for applications in the application layer. The framework layer includes some predefined functions. For example, it may include an activity manager, a window manager, a view system, a resource manager, a notification manager, an audio service, a camera service, etc., which are not limited in this embodiment of the application.
[0099] The system library can include multiple functional modules, such as surface manager, media libraries, OpenGL ES, SGL, etc.
[0100] The Hardware Abstraction Layer (HAL) is an interface layer between the operating system kernel and the hardware circuitry. Its purpose is to abstract the hardware. It hides the details of the platform-specific hardware interfaces and provides the operating system with a virtual hardware platform, making it hardware-independent and portable across multiple platforms. From the perspective of software and hardware testing, both hardware and software testing can be performed independently within the HAL, enabling parallel testing of both software and hardware.
[0101] The driver layer includes drivers for various hardware. This layer can include Bluetooth drivers, Wi-Fi drivers, and more. The Bluetooth driver is used to drive the Bluetooth module in the hardware layer. The Wi-Fi driver is used to drive the Wi-Fi module in the hardware layer.
[0102] The following describes the interference measurement method provided by the embodiment of the present application. Figure 5 As shown, the method includes but is not limited to the following steps:
[0103] S501: Measure an increase in a first round-trip time (RTT) of a first service.
[0104] S502. Measure a first data rate and a second data rate of a second service, where the first data rate is the data rate of the second service when no interference is added to the first channel, and the second data rate is the data rate of the second service when the first interference is added to the first channel.
[0105] The first service, the second service, and the first interference perform data transmission on the same channel. The first service may be a real-time service, and the second service may be a file transfer service. Optionally, the second service may be in a state where the file transfer speed is not restricted. The real-time service may send data packets at preset intervals, for example, every 8 milliseconds or every 16 milliseconds, while the file transfer service may send data packets without intervals.
[0106] In some embodiments, the first electronic device running the first service and the second service has no communication connection with the second electronic device causing the first interference. Figure 2 Taking the scenario shown as an example, the first electronic device can be an electronic device inside the communication system 20 (such as a central control device), and a first service (such as a screen projection service on link 21) and a second service (such as a file transfer service on link 22 and a file transfer service on link 23) are running inside the communication system 20. The first electronic device can obtain the data rate, RTT value, link MCS, etc. of one or more first services and second services running inside the communication system 20. The second electronic device can be a mobile phone 4 outside the communication system 20. Then the unknown service running on the second electronic device will compete with the service inside the communication system 20 for channel resources, and the interference caused by the second electronic device to the communication system 20 can be called the first interference. Furthermore, the first electronic device, such as the central control device, can measure the increase in the first round-trip time RTT of the first service inside the communication system 20 and the first data rate and second data rate of the second service to quantify the first interference.
[0107] In some embodiments, the first electronic device running the first service and the second service is not the same electronic device as the second electronic device causing the first interference. Figure 2 Taking the scenario shown as an example, the first electronic device may be mobile phone 1, which runs a first service (such as the screen projection service on link 21) and a second service (such as the file transfer service on link 22). The second electronic device may be mobile phone 3 (or mobile phone 2), and the file transfer service run by mobile phone 3 on link 23 will also compete for resources with the service of mobile phone 1, causing interference to the service run by mobile phone 1. The interference caused by mobile phone 3 to mobile phone 1 here can also be referred to as the first interference. Furthermore, mobile phone 1 can measure the first RTT increase of the first service it runs and the first data rate and second data rate of the second service, thereby quantifying the interference caused by the file transfer service on link 23.
[0108] In some embodiments, the first service may include M real-time services, where M is a positive integer, that is, the first service includes M real-time services, or is referred to as including M R-Tasks. The first electronic device may measure the RTT values of the M real-time services included in the first service when no interference is added in the first channel, and the RTT values of the M real-time services when the first interference is added in the first channel, thereby determining the first RTT increase. The first RTT increase may be the RTT increase that increases the most for the first service in the first time period relative to before the first interference is added. The above-mentioned first time period may refer to a unit time period. Let the RTT of the i-th R-Task among the M R-Tasks when no interference is added in the first channel be D i , when the first interference is added to the first channel, the RTT of the i-th service among the M services can be D′ i , then the RTT increase of the i-th R-Task is (D′ i -D i ). Then the first RTT increase can be the maximum value among the RTT increases of the M R-Tasks, recorded as max(D′ i -D i ).
[0109] In some cases, the first service sends more than one application data packet within the first time period, and the RTT increase of the i-th R-Task may refer to the average value of the RTT changes of all application data packets sent by the i-th R-Task in the first service within the first time period.
[0110] The first electronic device may also measure a first data rate and a second data rate of a second service. The second service may include N file transfer services, also referred to as N F-tasks, where N is a positive integer. The first data rate includes the data rates of the N F-tasks when no interference is added to the first channel.
[0111] S503: Estimate a first duration of the first interference in the first time period based on the first data rate and the second data rate, wherein the smaller the second data rate is than the first data rate, the longer the first duration of the first interference in the first time period.
[0112] In the first time period, the first channel includes the first service, the second service, and the first interference, wherein the first electronic device may use the first interference as an R-Task in the first service to quantify the interference.
[0113] In other words, the services running in the first time period are simulated as including only the first and second services. Because the first interference will occupy the resources of the second service, causing the data rate of the second service to decrease, the first electronic device can determine the resources "occupied" from the second service by the first interference based on the first data rate and the second data rate of the second service. Here, the time during which the first interference transmits data in the first time period, i.e., the first duration, is used to represent the resources "occupied" from the second service by the first interference.
[0114] The data rate of the i-th F-task in N F-tasks when no interference is added to the first channel is recorded as T i , the data rate of the i-th F-task in N F-tasks when the first interference is added to the first channel is recorded as T′ i , let the first duration be t, then the first duration t satisfies the following formula:
[0115]
[0116] Wherein, α is the time ratio occupied by the first service and the second service in the second time period (also called the zero interference time period) to transmit additional data (also called overhead). The calculation method of α can be referred to in the subsequent introduction and will not be expanded here. i is the modulation and coding strategy MCS rate of the link of the i-th F-Task in N services.
[0117] It can be understood that after the first interference occurs in the first channel, the data rate of the i-th F-Task decreases by T i -T′ i , the length of time occupied by the i-th F-Task in the unit time period (i.e., the first time period) is reduced by Multiplying the length of time occupied by the i-th F-task in a unit time period by 1 + α gives the resources preempted from the i-th F-task by the first interferer, i.e., the transmission time on the first channel preempted from the i-th F-task by the first interferer. Adding up the data transmission time preempted from all F-tasks by the first interferer gives the approximate total data transmission time of the first interferer in the first time period.
[0118] Among them, α is determined based on the time ratio of the first service and the second service in the "zero interference time period" (also referred to as the second time period). Let the time ratio of the first service in the second time period be R1, and the time ratio of the second service in the second time period be R2, then R1+R2=1. The above-mentioned "zero interference time period" can be the time period in which the RTT value of the first service or the second service is the smallest when no interference is added to the first channel. Taking the second time period as the time period in which the RTT value of the first service is the smallest as an example, the first electronic device can periodically measure the RTT value when the M R-Tasks in the first service send data packets, and then the first electronic device can use the time period with the smallest RTT value as the "zero interference time period", that is, the second time period. The first electronic device can measure the data rate of the first service and the second service in the second time period, and determine the value of α based on the above data rate.
[0119] Then the time ratio R1 occupied by the first service in the second time period satisfies the following formula:
[0120]
[0121] Among them, RT i is the MCS rate of the link of the i-th R-Task among M R-Tasks, G i is the data rate of the i-th service in the M services in the second time period, and the above data can be obtained by the first electronic device. It can be understood that (1+α)G i It can be seen that the total data transmission volume of the i-th Task in the unit time period (the second time period) includes both the effective data transmitted by the i-th R-Task (coefficient 1 multiplied by G i The corresponding data volume), and also includes the additional overhead of the i-th R-Task in addition to the effective data transmission (the coefficient α multiplied by G i The data transmission volume is divided by the MCS rate RT of the link of the i-th R-Task. i That is, the time proportion of the i-th R-task performing data transmission in the second time period is obtained. The total time proportion of the M R-tasks performing data transmission in the second time period is obtained by adding up the M time proportions.
[0122] Similarly, the time ratio R2 occupied by the second service in the second time period satisfies the following formula:
[0123]
[0124] Among them, FT i is the MCS rate of the link of the i-th F-Task among N F-Tasks, E iis the data rate of the ith F-task in the N F-tasks in the second time period. The explanation of the formula of R2 can refer to R1 and will not be repeated here.
[0125] In the second time period, R-Task and F-Task occupy the total transmission time of the first channel, and the time ratio occupied by the two should be 1. Let the sum of r1 and R2 be 1, and the value of the overhead ratio α can be obtained.
[0126] S504. When the deviation of the first RTT increase relative to the first duration exceeds a first threshold, determine that the type of the first interference is the same as the type of the first service; when the deviation of the first RTT increase relative to the first duration does not exceed the first threshold, determine that the type of the first interference is the same as the type of the second service.
[0127] The first electronic device can determine the first threshold value based on the deviation of the first RTT increase relative to the first duration. The first threshold value, the above deviation can be determined by subtracting the first RTT increase from the first duration, wherein the first RTT increase can be a minuend or a subtrahend. Alternatively, the deviation can also be determined by dividing the first RTT increase by the first duration, and the first RTT increase can be a dividend or a divisor. Alternatively, the above deviation can also be calculated in other ways, which is not limited in the embodiments of the present application. The first electronic device can determine the service type with the first interference approximation based on the relationship between the above deviation and the first threshold value corresponding to the deviation calculation method.
[0128] The deviation of the first RTT increase relative to the first duration is denoted as σ. In some embodiments, the deviation σ of the first RTT increase relative to the first duration satisfies the following formula:
[0129]
[0130] Among them, max(D′ i -D i ) is the increase in the first RTT, and P is the number of application-layer data transmissions by the M R-Tasks during the first time period. t / P is the approximate time allotted by the first interference within each transmission period. Here, the increase in the first RTT represents the time taken to preempt the M R-Task services after the first interference occurs, or the actual amount of data transmission time lost by the R-Task after the first interference occurs. t / P also represents the theoretical time taken to preempt the R-Task services after the first interference occurs, if the first interference is analogized to an R-Task.
[0131] When the type of the first interference is the same as (or similar to) the type of the first service, it means that the first interference may be a real-time service. The data rate of the first interference is relatively stable, and it sends a data packet at a fixed period. In this way, when transmitting data, the first interference cannot fully utilize the resources actually lost by the first service and the second service after the first interference occurs (expressed in data transmission time). In other words, when the type of the first interference is a real-time service, the data transmission time theoretically occupied by the first interference (expressed in t / P) may be longer than the actual data transmission time lost by the R-Task after the first interference occurs (max(D′) i -D i ) is much smaller.
[0132] In contrast, when the type of the first interference is the same (or similar) to that of the second service, it indicates that the first interference may be a file transfer service, and there is no interval when the first interference is transmitting data. The first interference can make better use of the resources (expressed in data transmission time) that are "relinquished" from the first channel by the first service and the second service. Thus, when the type of the first interference is a file transfer service, the data transmission time theoretically occupied by the first interference (expressed in t / P) is equal to the actual data transmission time lost by the R-Task after the first interference occurs (max(D′) i -D i )The difference may be small.
[0133] This means that when the first interference type is real-time service, the deviation σ of the first RTT increase relative to the first duration is greater than when the first interference type is file transfer service.
[0134] The first electronic device can compare σ with a threshold value β. When the value of σ exceeds β, the first electronic device determines that the type of the first interference is the same as the type of the first business; when the value of σ does not exceed β, the first electronic device determines that the type of the first interference is the same as the type of the second business.
[0135] Since real-time services have high requirements for network transmission latency, the first electronic device can limit the file transfer speed based on the type of the first interference after determining the type of the first interference, and allocate more channel resources to the real-time service, thereby ensuring that users' use of real-time services is not affected by interference. When it is determined that the type of the first interference is the same as the type of the first service, the data rate of the first interference is relatively stable, so that a small speed limit is imposed on the F-Task, and the first interference will not continue to consume channel resources; when it is determined that the type of the first interference is the same as the type of the second service, when the F-Task is speed-limited, the first interference may continue to seize channel resources, which still cannot ensure that the RTT value of the R-Task is reduced to a more ideal state. In this case, the first electronic device needs to limit the F-Task more, thereby reducing the impact of the first interference on the R-Task.
[0136] In some embodiments, when the type of the first interference is similar to the type of the first service, the first electronic device may use a first speed limit mechanism to limit the speed of the second service; when the type of the first interference is similar to the type of the second service, the first electronic device may use a second speed limit mechanism to limit the speed of the second service.
[0137] Exemplarily, the first rate limiting mechanism can be a simulation-based rate limiting mechanism. For example, the first electronic device divides the channel transmission time into uniform time slices and uses the CSMA mechanism to determine the time slice allocation. When the first electronic device detects that the first interference is affecting the first channel, causing the channel status of the first channel to change to red, it initiates rate limit calculation. The first electronic device can adjust the overhead transmission ratio α in the simulator so that the data rate of the F-Task in the simulator roughly matches the measured data rate. The first electronic device can then record the approximate RTT of the R-Task in this scenario and adjust the amount of newly added interference data in the simulator so that the data rate of the F-Task in the simulator roughly matches the measured data rate after the increased interference. In the presence of newly added interference, the simulator determines the relationship between the F-Task rate limit and the reduction in the R-Task RTT. Finally, a fitting method is used to determine the F-Task rate limit: this rate limit can proportionally reduce the R-Task RTT to within the timeout threshold. If the channel still cannot be brought out of the red state, an adaptive rate limiting mechanism can be further employed.
[0138] Alternatively, the first speed limit mechanism can also be an adaptive speed limit mechanism. The adaptive speed limit mechanism infers the speed limit value that can return the channel to the green or yellow light state through two small speed limits. Assume that there are M R-Task services and N F-Task services on the channel. Then the first electronic device can take the speed limit ratio γ1 to limit the speed of the N F-Tasks. At this time, the RTT of the M R-Task services is If the RTT of M R-Tasks still exceeds a certain threshold after speed limiting, another speed limit ratio γ2 is used to limit the speed of N F-Tasks. At this time, the RTT of M R-Task services is If the RTT of M R-Tasks still exceeds a certain threshold after speed limiting, the first electronic device can determine the speed limit ratio of each R-Task service in turn. Taking the i-th R-Task service as an example, if the RTT of the R-Task does not exceed the threshold, the speed limit ratio applicable to the service is 0; otherwise, the speed limit ratio applicable to the service can be calculated using a polynomial function fitting method: wherein the first electronic device sets the RTT timeout time to Let γ be the speed limit ratio. Then the first electronic device can calculate the fitting curve for the i-th R-Task as: in
[0139] In this way, the first electronic device can calculate the service speed limit ratio applicable to the i-th R-Task The first electronic device can then use the maximum of the service rate limit ratios applicable to the M R-Tasks to limit the speed of the F-Task. In other words, the first electronic device will calculate the rate limit value that will reduce the RTT of each R-Task to the preset threshold by fitting the curve, and then use the highest rate limit value to limit the speed of the F-Task, thereby ensuring that the R-Task service is not affected by interference.
[0140] The above-mentioned second speed limit mechanism may also be an adaptive speed limit mechanism. Alternatively, the above-mentioned second speed limit mechanism may also be a simple speed limit mechanism. For example, when the first electronic device determines that the first channel is a red light, the first electronic device limits the speed of F-Task and reduces the file transfer speed by half. When the first electronic device determines that the state of the first channel is a yellow light, the first electronic device does not change the speed limit ratio of the F-Task service. When the first electronic device determines that the channel state of the first channel is a green light, the first electronic device may gradually relax the file speed limit. For example, the first electronic device may increase the MCS rate according to a preset ratio at every preset time. The above-mentioned preset ratio may be, for example, 5%, 10%, etc.
[0141] Optionally, the first electronic device may execute the above detection method when the RTT of the first service is higher than a certain threshold and / or the RTT of the second service is higher than a certain threshold.
[0142] Figure 6 This is a schematic diagram of a single air interface RTT measurement provided in an embodiment of the present application.
[0143] like Figure 6As shown in Figure 1, the sending device Tx sends an application layer data packet to the receiving device Rx at time t1. At this time, the sending device Tx will record the timestamp t1 of sending the application layer data packet. Taking R-Task as an example, the application layer data packet can contain W UDP packets, which are numbered from l1 to l w , where W is an integer greater than 1. After receiving the application layer data packet, the receiving device Rx can send an acknowledgment (ACK) packet to the transmitting device. The transmitting device Tx can record the arrival timestamp t2 of the ACK packet. The RTT value is then the difference between the sending timestamp t1 and the arrival timestamp t2: t2 - t1.
[0144] In some embodiments, the transmitting end device Tx and the receiving end device Rx use dual channels (corresponding to dual air interfaces) to transmit data. Figure 6 The single air interface RTT measurement method shown measures the RTT value on each channel in sequence, or the transmitting end device Tx and the receiving end device Rx can also calculate the RTT values on two channels at a time.
[0145] Figure 7 This is a schematic diagram of a dual-air interface RTT measurement based on dense feedback provided in an embodiment of the present application.
[0146] Among them, the receiving device Rx will feedback an ACK data packet to the transmitting device Tx every time it receives an application layer data packet, thereby calculating the RTT value of the dual air interface. Taking the transmitting device Tx sending an application layer data packet to the receiving device Rx through the 2.4GHz and 5GHz dual channels as an example, the transmitting device Tx can send the data packet on the dual air interface and record the sending time as t1. Assuming that the 5G air interface is transmitted first, the receiving end records the time as t 5G When the 2.4G air interface transmission is completed, that is, the application layer data packet is successfully restored, the receiving device Rx records the time as t 2.4G Among them, the receiving device Rx can 5G -t 2.4G The ACK packet is fed back to the transmitter Tx, and the time when the transmitter Tx receives and records the ACK packet is t2. The transmitter Tx can calculate the RTT of the 2.4G air interface as t2-t1, and the RTT of the 5G air interface as t2-t1+t 5G -t 2.4G .
[0147] The transmitting end device Tx and the receiving end device Rx can be a pair of electronic devices running the first service and / or the second service, such as mobile phone 1 and large screen device, mobile phone 1 and mobile phone 2, mobile phone 2 and mobile phone 3 in the communication system 20. For example, mobile phone 1 and large screen device can be connected through Figure 6 or Figure 7 The RTT measurement method shown measures the RTT of the R-Task on the link 21. Mobile phone 1 can communicate with mobile phone 2 through Figure 6 or Figure 7 The illustrated method measures the RTT of the F-Task on link 22. This RTT value can then be sent to the central control device, which can then determine the interference caused by the unknown service on link 24 to the communication system 20 based on the RTT values of the first and second services running on the first channel within the entire system. Alternatively, mobile phone 1 can also determine the interference caused by the service on link 23 to its own R-Task based on the aforementioned RTT value.
[0148] The RTT calculation method is not limited to the above method, and other methods for calculating RTT may also be used. The embodiments of the present application do not limit this.
[0149] The following describes the apparatus for executing the above method provided in the embodiment of the present application. Figure 8 As shown, Figure 8 1 is a schematic diagram of the structure of a communication device provided in an embodiment of the present application. The communication device may be an electronic device in an embodiment of the present application, or a chip or chip system in an electronic device.
[0150] like Figure 8 As shown, the communication device 800 may include a communication unit 801 and a processing unit 802. The communication device 800 transmits a first service and a second service on a first channel via the communication unit 801. The communication device running the first service and the second service has no communication connection with the communication device causing the first interference, and the communication device running the first service and the second service are not the same electronic device.
[0151] Among them, the communication unit 801 is used to measure the increase in the first round-trip time RTT of the first service; the communication unit 801 is also used to measure the first data rate and the second data rate of the second service, the first data rate is the data rate of the second service when no interference is added to the first channel, and the second data rate is the data rate of the second service when the first interference is added to the first channel; the processing unit 802 is used to estimate the first duration occupied by the first interference in the first time period based on the first data rate and the second data rate, wherein the smaller the second data rate is than the first data rate, the longer the first duration occupied by the first interference in the first time period; the processing unit 802 is also used to determine that the type of the first interference is the same as the type of the first service when the deviation of the first RTT increase relative to the first duration exceeds a first threshold, and determine that the type of the first interference is the same as the type of the second service when the deviation of the first RTT increase relative to the first duration does not exceed the first threshold.
[0152] In some embodiments, the second service includes N services, the first data rate includes the data rates of the N services when no interference is added in the first channel, and the second data rate includes the data rates of the N services when the first interference is added in the first channel, where N is a positive integer.
[0153] In some embodiments, the data rate of the i-th service among the N services in the first channel without adding interference is T i , the data rate T′ of the i-th service among N services when the first interference is added in the first channel i , i is the index value, the first duration is t, and the first duration t satisfies the following formula:
[0154]
[0155] Wherein, α is determined based on the time ratio of the first service and the second service in the second time period. i is the modulation and coding strategy (MCS) rate of the link of the i-th service among N services.
[0156] In some embodiments, the first service includes M services, where M is a positive integer. The time ratio occupied by the first service in the second time period is R1. The time ratio R1 occupied by the first service in the second time period satisfies the following formula:
[0157]
[0158] Among them, G i is the data rate of the i-th service in the second time period among the M services, RT i is the MCS rate of the link of the i-th service among the M services.
[0159] In some embodiments, the time proportion occupied by the second service in the second time period is R2, and the time proportion R2 occupied by the second service in the second time period satisfies the following formula:
[0160]
[0161] Among them, E i is the data rate of the i-th service among the N services in the second time period.
[0162] In some embodiments, the sum of the time proportion R1 occupied by the first service in the second time period and the time proportion R2 occupied by the second service in the second time period is 1.
[0163] In some embodiments, the second time period is a time period in which the RTT value of the first service or the second service is minimum when no interference is added in the first channel.
[0164] In some embodiments, the deviation of the first RTT increase relative to the first duration is σ, and the deviation σ of the first RTT increase relative to the first duration satisfies the following formula:
[0165]
[0166] Among them, max(D′ i -D i ) is the first RTT increase, D′ i is the RTT of the i-th service among the M services when the first interference is added to the first channel, D i is the RTT of the i-th service among the M services when no interference is added to the first channel, and P is the number of times the first service transmits application layer data in the first time period.
[0167] In some embodiments, the processing unit 802 determines that the type of the first interference is the same as the type of the first service when the deviation of the first RTT increase relative to the first duration exceeds a first threshold, including: the processing unit 802 determines that the type of the first interference is the same as the type of the first service when the value of σ exceeds β; the processing unit 802 determines that the type of the first interference is the same as the type of the second service when the deviation of the first RTT increase relative to the first duration does not exceed the first threshold, including: the processing unit 802 determines that the type of the first interference is the same as the type of the second service when the value of σ does not exceed β.
[0168] In some embodiments, when it is determined that the type of the first interference is the same as the type of the first business, the processing unit 802 is also used to use the first speed limit mechanism to limit the speed of the second business; when it is determined that the type of the first interference is the same as the type of the second business, the processing unit 802 is also used to use the second speed limit mechanism to limit the speed of the second business.
[0169] Figure 9 This is a schematic diagram of the structure of a chip provided in an embodiment of the present application. Figure 9 As shown, the chip 900 includes one or more (including two) processors 901 , a communication line 902 and a communication interface 903 . Optionally, the chip 900 also includes a memory 904 .
[0170] In some embodiments, the memory 904 stores the following elements: executable modules or data structures, or a subset thereof, or an extended set thereof.
[0171] The method described in the above embodiment of the present application can be applied to the processor 901, or implemented by the processor 901. The processor 901 may be an integrated circuit chip with signal processing capabilities. During implementation, the steps of the above method can be completed by an integrated logic circuit of hardware in the processor 901 or instructions in the form of software. The above-mentioned processor 901 can be a general-purpose processor (for example, a microprocessor or a conventional processor), a digital signal processor, an application specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic device, discrete gate, transistor logic device or discrete hardware component, and the processor 901 can implement or execute the disclosed methods, steps and logic block diagrams in the embodiments of the present application.
[0172] The steps of the method disclosed in the embodiments of the present application can be directly implemented as being executed by a hardware decoding processor, or can be implemented by a combination of hardware and software modules in the decoding processor. The software module can be located in a storage medium mature in the art, such as a random access memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable read-only memory (EEPROM). The storage medium is located in the memory 904, and the processor 901 reads the information in the memory 904 and completes the steps of the above method in combination with its hardware.
[0173] The processor 901 , the memory 904 , and the communication interface 903 may communicate with each other via a communication line 902 .
[0174] In the above embodiment, the instructions stored in the memory for execution by the processor may be implemented in the form of a computer program product, wherein the computer program product may be pre-written in the memory or downloaded and installed in the memory in the form of software.
[0175] The present application embodiment also provides a computer program product, which includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function according to the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. 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 a wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) method. The computer-readable storage medium can be any available medium that a computer can store or a data storage device such as a server or data center that includes one or more available media integrations. For example, available media can include magnetic media (e.g., floppy disk, hard disk or tape), optical media (e.g., digital versatile disc (DVD)), or semiconductor media (e.g., solid state disk (SSD)).
[0176] The embodiments of the present application also provide a computer-readable storage medium. The computer-readable storage medium stores a computer program or instructions. When the computer program or instructions are executed by a processor, the above-mentioned method is implemented. The methods described in the above embodiments can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. If implemented in software, the functions can be stored as one or more instructions or codes on a computer-readable medium or transmitted on a computer-readable medium. Computer-readable media can include computer storage media and communication media, and can also include any medium that can transfer a computer program from one place to another. The storage medium can be any target medium that can be accessed by a computer.
[0177] As a possible design, computer-readable media may include compact disc read-only memory (CD-ROM), RAM, ROM, EEPROM or other optical disc storage; computer-readable media may include magnetic disk storage or other magnetic disk storage devices. Moreover, any connecting line may also be appropriately referred to as a computer-readable medium. For example, if the software is transmitted from a website, server or other remote source using a coaxial cable, fiber optic cable, twisted pair, DSL or wireless technologies such as infrared, radio and microwave, the coaxial cable, fiber optic cable, twisted pair, DSL or wireless technologies such as infrared, radio and microwave are included in the definition of medium. Disks and optical discs as used herein include compact discs (CDs), laser discs, optical discs, DVDs, floppy disks and Blu-ray discs, where disks generally reproduce data magnetically, while optical discs reproduce data optically using lasers. Combinations of the above should also be included within the scope of computer-readable media.
[0178] As described above, the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the above embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the above embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present application.
[0179] As used in the above embodiments, the term “when…” may be interpreted to mean “if…” or “after…” or “in response to determining…” or “in response to detecting…”, depending on the context. Similarly, the phrases “upon determining…” or “if (stated condition or event) is detected” may be interpreted to mean “if determining…” or “in response to determining…” or “upon detecting (stated condition or event)” or “in response to detecting (stated condition or event)”, depending on the context.
[0180] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. 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 a wired (e.g., coaxial cable, optical fiber, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.) method. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrations. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state hard disk).
[0181] Those skilled in the art will appreciate that all or part of the process steps in the above-described method embodiments can be implemented by a computer program instructing the relevant hardware. The program can be stored in a computer-readable storage medium, and when executed, the program can include the process steps in the above-described 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.
Claims
1. An interference measurement method, characterized in that: The method comprises: Measuring an increase in a first round trip time (RTT) of a first service; measuring a first data rate and a second data rate of a second service, where the first data rate is a data rate of the second service when no interference is added to the first channel, and the second data rate is a data rate of the second service when the first interference is added to the first channel; estimating a first duration of the first interference in a first time period based on the first data rate and the second data rate, wherein the smaller the second data rate is than the first data rate, the longer the first duration of the first interference in the first time period; If a deviation of the first RTT increase with respect to the first duration exceeds a first threshold, determining that the type of the first interference is the same as the type of the first service; and if a deviation of the first RTT increase with respect to the first duration does not exceed the first threshold, determining that the type of the first interference is the same as the type of the second service; The first service and the second service are also transmitted on the first channel, the first electronic device running the first service and the second service has no communication connection with the second electronic device causing the first interference, and the first electronic device running the first service and the second service is not the same electronic device as the second electronic device causing the first interference.
2. The method according to claim 1, characterized in that The first RTT increase is the maximum increase in RTT of the first service during the first time period relative to the increase before the first interference increases.
3. The method according to claim 2, characterized in that The second service includes N services, the first data rate includes the data rates of the N services when no interference is added in the first channel, and the second data rate includes the data rates of the N services when the first interference is added in the first channel, and N is a positive integer.
4. The method according to claim 3, characterized in that The data rate of the i-th service among the N services when no interference is added in the first channel is T i , the data rate T′ of the i-th service among the N services when the first interference is added in the first channel i , i is an index value, the first duration is t, and the first duration t satisfies the following formula: The α is determined based on the time ratio of the first service and the second service in the second time period. i is the modulation and coding strategy MCS rate of the link of the i-th service among the N services.
5. The method according to claim 4, characterized in that The first service includes M services, where M is a positive integer. The time proportion occupied by the first service in the second time period is R1. The time proportion R1 occupied by the first service in the second time period satisfies the following formula: Among them, G i is the data rate of the i-th service in the M services during the second time period, RT i is the MCS rate of the link of the i-th service among the M services.
6. The method according to claim 5, characterized in that The time proportion occupied by the second service in the second time period is R2, and the time proportion R2 occupied by the second service in the second time period satisfies the following formula: Among them, the E i is the data rate of the i-th service among the N services in the second time period.
7. The method according to claim 6, characterized in that The sum of the time proportion R1 occupied by the first service in the second time period and the time proportion R2 occupied by the second service in the second time period is 1.
8. The method according to any one of claims 4 to 7, characterized in that The second time period is a time period in which the RTT value of the first service or the second service is minimum when no interference is added to the first channel.
9. The method according to claim 8, characterized in that The deviation of the first RTT increase relative to the first duration is σ, and the deviation σ of the first RTT increase relative to the first duration satisfies the following formula: Among them, max(D′ i -D i ) is the first RTT increase, D′ i is the RTT of the i-th service among the M services when the first interference is added to the first channel, D i is the RTT of the i-th service among the M services when no interference is added to the first channel, and P is the number of times the first service transmits application layer data in the first time period.
10. The method according to claim 9, characterized in that When a deviation of the first RTT increase relative to the first duration exceeds a first threshold, determining that the type of the first interference is the same as the type of the first service includes: when a value of σ exceeds a second threshold β, determining that the type of the first interference is the same as the type of the first service; When the deviation of the first RTT increase relative to the first duration does not exceed the first threshold, determining that the type of the first interference is the same as the type of the second service includes: when the value of σ does not exceed the second threshold β, determining that the type of the first interference is the same as the type of the second service.
11. The method according to any one of claims 1 to 10, characterized in that When it is determined that the type of the first interference is the same as the type of the first service, a first speed limit mechanism is used to limit the speed of the second service; when it is determined that the type of the first interference is the same as the type of the second service, a second speed limit mechanism is used to limit the speed of the second service.
12. The method according to any one of claims 1 to 11, characterized in that The type of the first service is a real-time service, and the type of the second service is a file transfer service.
13. An electronic device, characterized in that: The electronic device includes: a memory and a processor coupled to the memory; the memory stores a computer program, and when the processor executes the computer program, the electronic device implements the method according to any one of claims 1 to 12.
14. A computer-readable storage medium storing computer instructions, characterized in that: When the computer instructions are executed on an electronic device, the electronic device is caused to perform the method according to any one of claims 1 to 12.
15. A computer program product comprising computer instructions, characterized in that When the computer instructions are executed by a processor, the method according to any one of claims 1 to 12 is implemented.