Method for a communication device, communication device and computer program product
By adjusting the data packet transmission duration in real time within the communication device, the negative impact of temperature control on throughput and latency performance in existing technologies is resolved, achieving a balance between temperature control and user experience, and ensuring timely transmission of data packets.
Patent Information
- Application Number
- CN202511408911.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-28
- Publication Date
- 2025-12-30
AI Technical Summary
Existing technologies have a significant negative impact on throughput and latency performance when controlling the temperature of communication devices, especially when data packet traffic is unbalanced, making it impossible to effectively balance temperature control and user experience.
By controlling the discontinuous duration of data packet transmission within the temperature control cycle, the temperature sensor detects the temperature in real time, dynamically adjusts the allowed transmission duration, and accumulates the actual packet transmission duration to ensure timely data packet transmission and avoid unnecessary transmission bans.
This reduces the negative impact of temperature control on throughput and latency performance, ensures timely transmission of important data packets, and optimizes the user experience.
Smart Images

Figure CN121240130A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of communication technology, and more specifically to methods for use in communication devices, communication devices, and computer program products. Background Technology
[0002] A sustained increase in the temperature of a communication device can damage it, thus requiring temperature control by limiting data packet transmission. Current methods for controlling the temperature of communication devices can have a significant negative impact on throughput and latency performance. Summary of the Invention
[0003] According to at least one embodiment of the present disclosure, a method for a communication device is provided, comprising: determining a first duration for which data packets are allowed to be transmitted within a control period for temperature control of the communication device based on the temperature of the communication device; within the control period, in response to the existence of a data packet to be transmitted and the actual transmission duration not exceeding the first duration, scheduling the transmission of the data packet to be transmitted, and updating the actual transmission duration by accumulating the duration spent transmitting the data packet to be transmitted; and resetting the actual transmission duration to zero at the end of the control period.
[0004] According to at least one embodiment of this disclosure, a communication device is also provided, comprising: at least one processor; at least one memory storing instructions that, when executed by the at least one processor, cause the at least one processor to: determine, based on the temperature of the communication device, a first duration for which data packets are permitted to be transmitted within a control period for temperature control of the communication device; within the control period, in response to the existence of a data packet to be transmitted and an actual transmission duration not exceeding the first duration, schedule the transmission of the data packet to be transmitted and update the actual transmission duration by accumulating the duration spent transmitting the data packet to be transmitted; and at the end of the control period, reset the actual transmission duration to zero.
[0005] According to at least one embodiment of the present disclosure, a computer-readable storage medium is also provided, having stored thereon instructions that, when executed by a processor, cause the processor to: determine, based on the temperature of the communication device, a first duration for which data packets are permitted to be transmitted within a control period for temperature control of the communication device; within the control period, in response to the existence of a data packet to be transmitted and the actual transmission duration not exceeding the first duration, schedule the transmission of the data packet to be transmitted and update the actual transmission duration by accumulating the duration spent transmitting the data packet to be transmitted; and at the end of the control period, reset the actual transmission duration to zero.
[0006] According to at least one embodiment of this disclosure, a computer program product is also provided, having instructions stored thereon that, when executed by a processor, cause the processor to: determine, based on the temperature of the communication device, a first duration for which data packets are permitted to be transmitted within a control cycle for temperature control of the communication device; within the control cycle, in response to the existence of a data packet to be transmitted and the actual transmission duration not exceeding the first duration, schedule the transmission of the data packet to be transmitted and update the actual transmission duration by accumulating the time spent transmitting the data packet to be transmitted; and at the end of the control cycle, reset the actual transmission duration to zero.
[0007] Therefore, this disclosure includes the actual time spent sending data packets in the actual packet sending time to achieve discontinuous packet sending time control, so that the data packets that need to be sent can be sent in a timely manner, and the negative impact on the throughput and latency performance of the communication device caused by the need to control the temperature of the communication device is reduced to a lower level. Attached Figure Description
[0008] To more clearly illustrate the technical solutions of the embodiments of this disclosure, the accompanying drawings used in the description of the embodiments will be briefly introduced below. The accompanying drawings in the following description are merely exemplary embodiments of this disclosure.
[0009] Figure 1 A schematic diagram of a method for a communication device according to the prior art is shown;
[0010] Figure 2 A flowchart illustrating a method for a communication apparatus according to an embodiment of the present disclosure is shown;
[0011] Figure 3 A flowchart illustrating a method for a communication device according to another embodiment of the present disclosure; and
[0012] Figure 4 A schematic block diagram of a communication device according to at least one embodiment of the present disclosure is shown. Detailed Implementation
[0013] The technical solutions in the embodiments of this disclosure are described below by way of example with reference to the accompanying drawings. Clearly, the described embodiments are only a part of the embodiments of this disclosure, and not all of them. All other embodiments obtained by those skilled in the art based on the embodiments of this disclosure without creative effort should fall within the protection scope of this disclosure.
[0014] In this disclosure, words such as "exemplary" and "for example" are used to illustrate, explain, or describe. Any embodiment or design described as an "exemplary" in this disclosure should not be construed as being more preferred or advantageous than other embodiments or designs. Rather, the term "exemplary" is intended to present concepts in a specific form.
[0015] It should be understood that the term "embodiment" used throughout this specification means that a specific feature, structure, or characteristic associated with an embodiment is included in at least one embodiment of this disclosure. Therefore, throughout this specification, various embodiments do not necessarily refer to the same embodiment. Furthermore, these specific features, structures, or characteristics can be combined in any suitable manner in one or more embodiments.
[0016] The ordinal numbers such as "first" and "second" mentioned in the embodiments of this disclosure are used to distinguish multiple objects, and are not used to limit the size, content, order, timing, priority, or importance of multiple objects. For example, "first information" and "second information" do not indicate a difference in the amount of information, content, priority, or importance.
[0017] The terms "when," "if," and "if" mentioned in the embodiments of this disclosure refer to the network element performing corresponding processing under specific objective circumstances. They do not limit the time, do not require the network element to perform a judgment action, and do not imply any other limitations.
[0018] In the embodiments of this disclosure, "B corresponding to A" means that B is associated with A, and B can be determined based on A. However, it should also be understood that determining B based on A does not mean that B can be determined solely based on A; B can also be determined based on A and / or other information.
[0019] In the embodiments of this disclosure, "at least one" refers to one or more, and "more than one" refers to two or more. "And / or" describes the relationship between related objects, meaning there are three possible relationships. For example, A and / or B can represent: A alone, A and B simultaneously, and B alone, where A and B can be singular or plural. The character " / " typically indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, covering any combination of single or plural items. For example, at least one of a, b, or c can represent: a, b, c, ab, ac, bc, or abc, where a, b, and c can be single or multiple.
[0020] It should be understood that the communication devices and methods mentioned in this disclosure can be widely applied to a variety of communication scenarios, including but not limited to wired or wireless local area networks, wide area networks, the Internet of Things, vehicle-to-everything (V2X) networks, cellular mobile communication systems, and various existing or future communication systems.
[0021] It should be understood that the communication devices mentioned in this disclosure include any device capable of sending or forwarding data packets via wired or wireless communication, including but not limited to wired communication devices such as routers, switches, and network interface devices, as well as wireless communication devices such as wireless routers, mobile phones, tablets, laptops, walkie-talkies, drone communication modules, and vehicle-to-everything (V2X) communication devices.
[0022] As mentioned earlier, a continuous rise in the temperature of a communication device can damage it, so it is necessary to control the temperature of the communication device by limiting the transmission of data packets.
[0023] Figure 1 A schematic diagram of a method for a communication device according to the prior art is shown.
[0024] refer to Figure 1 In existing technology, different temperature control levels can be triggered based on the temperature of the communication device. Each level corresponds to a different duty cycle, which represents the percentage of the control cycle during which data packets are allowed to be transmitted. The control cycle for temperature control of the communication device has a fixed duration over a certain period, which can be changed according to the user's needs.
[0025] For example, in one instance, for a certain communication device, the correspondence between temperature control levels and duty cycles is preset as follows: when the temperature is less than or equal to 75°C, the duty cycle is 100%; when the temperature is greater than 75°C but less than or equal to 85°C, the duty cycle is 50%; and when the temperature is greater than 95°C, the duty cycle is 30%. The control cycle duration is preset to 100ms. If the detected temperature of the communication device is 98°C, and the corresponding duty cycle is 30%, then the communication device will be in the Tx on (i.e., transmission enabled) state for the first 30ms of the control cycle to allow the transmission of scheduled data packets, and in the Tx off (i.e., transmission disabled) state for the next 70ms to prohibit the transmission of scheduled data packets. This ensures that the temperature of the communication device can be maintained within the desired temperature range. Figure 1 As shown.
[0026] However, this approach can have a significant negative impact on the throughput and latency performance of the communication device. This is because it may result in no data packets being sent when transmission is permitted, and data packets being prohibited from transmission when transmission is needed. For example, in cases of high data packet traffic, a data packet might arrive while the communication device is in a Tx off state, but it cannot be sent promptly and can only be sent after the communication device enters the next Tx on state, thus causing latency. Conversely, in cases of low data packet traffic, even if the communication device is in a Tx on state, there may be no data packets to send, and the Tx off state setting may waste opportunities that could otherwise be used for data transmission. Even worse, the data packet traffic might be so low that even if data packet transmission is not prohibited throughout the entire control cycle, the communication device's temperature may not exceed the desired temperature. In this case, the temperature control gain from this approach is weak or nonexistent, but it causes a significant deterioration in latency performance.
[0027] In view of this, this disclosure proposes a new solution that reduces the negative impact on the throughput and latency performance of the communication device while achieving temperature control of the communication device, thus finding a better solution for balancing the temperature control of the communication device and the user experience.
[0028] Figure 2 A flowchart illustrating a method for a communication device according to an embodiment of the present disclosure is shown.
[0029] refer to Figure 2 According to one embodiment of this disclosure, the method 200 for a communication device may include steps S210 to S270. This method may be performed by the communication device.
[0030] In step S210, a first duration T1 for which data packets are allowed to be sent within a control cycle used for temperature control of the communication device is determined based on the temperature of the communication device.
[0031] The temperature of a communication device can be detected in real time using a temperature sensor. The temperature sensor can be integrated into the communication device or operate independently. The temperature of the communication device can be characterized by the temperature of its temperature-sensitive components. For example, in one instance, a temperature sensor is placed near a chip in the communication device (e.g., a baseband processor, RF chip, etc.), and the detected temperature of that chip is used to characterize the temperature of the communication device. In other instances, depending on specific cooling requirements, the temperature of components such as power amplifiers, RF front-end modules, power modules, batteries, memory, and antennas may also be used to characterize the temperature of the communication device.
[0032] The communication device can be preset with temperature control settings as described above, that is, the correspondence between temperature and the duty cycle of the control period. Thus, based on the temperature sensor's detection results and the duration of the control period, the first duration T1 for which data packets are allowed to be transmitted within the control period can be determined. It should be understood that in subsequent control periods, as the temperature of the communication device detected by the temperature sensor changes, the determined first duration T1 also changes accordingly. It should also be understood that when the duration of the control period is relatively fixed, the preset temperature control settings of the communication device can also directly indicate the correspondence between temperature and the first duration T1.
[0033] For example, in one instance, the control cycle duration is preset to 100ms, and the temperature control settings are preset as follows: 100% duty cycle when the temperature is less than or equal to 75℃; 50% duty cycle when the temperature is greater than 75℃ but less than or equal to 85℃; and 30% duty cycle when the temperature is greater than 95℃. Given that the temperature sensor detects a temperature of 98℃ for the communication device, it can be determined that the allowed duration for sending data packets in the following control cycle is 100ms * 30% = 30ms.
[0034] In step S220, it is checked whether there is a data packet to be sent. For example, the presence of a data packet to be sent can be detected based on the send queue status or hardware buffer / register flags. If there is a data packet to be sent, proceed to step S230. Otherwise, if there is no data packet to be sent, proceed to step S260.
[0035] In step S230, it is determined whether the actual packet transmission duration T_total is less than or equal to the first duration T1 allowed to transmit data packets within the control period determined in step S210. The actual packet transmission duration T_total represents the duration already used to transmit data packets within the control period. In each control period, the initial value of the actual packet transmission duration T_total is zero (as described later with respect to step S260, the actual packet transmission duration T_total will be reset to zero at the end of the control period). If the actual packet transmission duration T_total is less than or equal to the first duration T1, proceed to step S240. Conversely, if the actual packet transmission duration T_total is greater than the first duration T1, the transmission of the data packets to be sent is not scheduled, and the process proceeds to step S260.
[0036] In step S240, the transmission of data packets to be sent is scheduled. For example, the transmission order of each data packet to be sent can be determined based on factors such as Quality of Service (QoS) priority, network status, available bandwidth, and power control policy, and the transmission of each data packet to be sent can be scheduled accordingly.
[0037] In step S250, the actual packet transmission time T_total is updated by accumulating the time spent sending the data packet to be sent in step S240. For example, if 3ms are spent sending the data packet in step S240, the value of the actual packet transmission time T_total can be incremented by 3ms.
[0038] In step S260, it is determined whether the control cycle has ended, that is, whether the duration T of the control cycle, for example, 100ms, has elapsed. If it is determined that the control cycle has not ended, the process returns to step S220 to continue detecting whether any new data packets to be sent have arrived. If it is determined that the control cycle has ended, the process proceeds to step S270.
[0039] In step S270, the actual packet transmission duration T_total is reset to zero, so that the initial value of the actual packet transmission duration T_total is zero at the beginning of the next control cycle.
[0040] In this way, method 200 only includes the actual time spent sending data packets in the actual packet transmission time T_total, thus achieving discontinuous packet transmission time control. Furthermore, method 200 allows the scheduling of data packet transmission as long as the actual packet transmission time does not exceed the allowable packet transmission time corresponding to the temperature control level. Only when the actual packet transmission time exceeds the allowable packet transmission time corresponding to the temperature control level does it prohibit data packet transmission in the subsequent time of the control cycle. This ensures that the data packets that need to be sent are sent in a timely manner, thereby minimizing the negative impact on the throughput and latency performance of the communication device caused by temperature control.
[0041] Furthermore, considering that some data packets are sensitive to latency, delays in sending them could severely impact user experience. For example, command data packets become meaningless due to excessive latency, as their execution time has passed; sensor data packets lose their decision-making value if they miss the real-time window; voice data packets cause desynchronization due to excessive latency; video data packets cause stuttering and desynchronization due to excessive latency; and online game data packets cause delayed actions and sluggish operation feedback due to excessive latency. Therefore, this disclosure further proposes that after the actual packet transmission time T_total exceeds a first duration T1, these special types of data packets can be allowed to pass within a certain time range to ensure their timely transmission.
[0042] Figure 3 A flowchart illustrating a method for a communication device according to another embodiment of the present disclosure is shown.
[0043] refer to Figure 3Method 300 according to another embodiment of this disclosure includes steps S310 to S380. Steps S310 to S370 are the same as steps S210 to S270 in the aforementioned method 200, and will not be repeated here for simplicity. The differences between method 300 and method 200 will be described below.
[0044] like Figure 3 As shown, at step S330, the actual packet transmission duration T_total is compared with the first duration T1 allowed to transmit data packets within the control period determined at step S310. If the actual packet transmission duration T_total is less than or equal to the first duration T1, the process proceeds to step S340 to schedule the transmission of the data to be sent. Conversely, if the actual packet transmission duration T_total is greater than the first duration T1, the process proceeds to step S380.
[0045] In step S380, the communication device may further detect whether a predetermined condition is met, and if the predetermined condition is met, proceed to step S340 to schedule the transmission of these data packets, and if the predetermined condition is not met, proceed to step S360 to determine whether the control cycle has ended, and reset T_total to zero when the control cycle ends.
[0046] In one example, the predetermined conditions may include that the data packet type is a delay-sensitive data packet and that the actual packet transmission duration T_total is less than or equal to a second duration T2. Here, the second duration T2 is greater than the first duration T1 but less than the duration T of a control cycle. In other words, for delay-sensitive data packets, they are allowed to continue to have a transmission duration of ΔT after the actual packet transmission duration T_total exceeds T1, where ΔT = T2 - T1. For example, in one instance, the user sets the second duration T2 to be 10ms longer than T1, i.e., ΔT = 10ms. In this instance, when a data packet to be transmitted is detected and T_total is greater than T1, the communication device will further detect whether the data packet type is a delay-sensitive data packet. For example, the communication device can determine that the data packet is a voice data packet based on its QoS classification as VO, thus determining that the data packet is a delay-sensitive data packet. Simultaneously, the communication device also detects that the actual packet transmission duration T_total is less than the second duration T2. Therefore, the communication device will schedule the transmission of the data packet.
[0047] In this way, method 300 further considers latency-sensitive data packets based on method 200, allowing the communication device to continue sending such data packets within a certain range beyond the duty cycle corresponding to the temperature control setting, thereby ensuring that the transmission of such data packets has low latency and optimizing the user experience.
[0048] In another example, the predetermined condition could be that the data packet type is a delay-sensitive data packet and its traffic is less than a predetermined threshold, and the actual packet transmission duration T_total is less than or equal to a second duration T2. In other words, only for delay-sensitive data packets with traffic less than the predetermined threshold, the communication device allows them to continue having a transmission duration of ΔT after the actual packet transmission duration T_total exceeds T1. For example, in another instance, when a data packet to be transmitted is detected and T_total is greater than T1, the communication device will further detect the type and traffic of the data packet, and also detect whether the actual packet transmission duration T_total is less than the second duration T2. If the data packet type is a delay-sensitive data packet and its traffic is less than the predetermined threshold, and the actual packet transmission duration T_total is less than the second duration T2, the communication device will schedule the transmission of the data packet; otherwise, it will not schedule the transmission of the data packet.
[0049] In this way, the size of the delay-sensitive data packet is also taken into account. The communication device is allowed to continue sending small delay-sensitive data packets within a certain range beyond the duty cycle corresponding to the temperature control level, but is not allowed to continue sending large delay-sensitive data packets. This can avoid the time spent sending delay-sensitive data packets being too long, resulting in insufficient time for temperature reduction.
[0050] Figure 4 A schematic block diagram of a communication device according to at least one embodiment of the present disclosure is shown.
[0051] refer to Figure 4 The communication device 400 according to at least one embodiment of the present disclosure may include at least one processor 410 and at least one memory 420. The at least one processor 410 and at least one memory 420 may communicate via a bus 430. Instructions may be stored on the at least one memory 420, which, when executed by the at least one processor 410, may cause the at least one processor 410 to perform the aforementioned methods 200 and 300. Additionally, the communication device 400 may also include a temperature sensor 430 for detecting the temperature of the communication device 400.
[0052] At least one processor 410 may include an integrated circuit chip with signal processing capabilities. For example, it may include a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), an off-the-shelf programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It may implement or perform the steps of methods 200 and 300 disclosed in some embodiments of this disclosure. The general-purpose processor may be a microprocessor or any conventional processor, and may be based on an x86 or ARM architecture.
[0053] Methods 200 and 300 according to this disclosure can also be implemented using a computing device. The computing device may include a bus, one or more CPUs, read-only memory (ROM), random access memory (RAM), a communication port connected to a network, input / output components, a hard disk, etc. Storage devices in the computing device, such as ROM or hard disk, may store various data or files and program instructions used to perform the aforementioned methods 200 and 300. The computing device may also include a user interface.
[0054] This disclosure also provides a computer-readable storage medium. Instructions are stored on this computer storage medium. When the instructions are executed by a processor, the aforementioned method 200 or 300 can be performed. In some embodiments of this disclosure, the computer-readable storage medium may be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. Non-volatile memory may be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Volatile memory may be random access memory (RAM), which serves as an external cache. By way of example, but not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous interconnected dynamic random access memory (SLDRAM), and direct memory bus random access memory (DR RAM). It should be noted that the memory used in the methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0055] This disclosure also provides a computer program product including instructions stored in a computer-readable storage medium. A processor of a communication device or computing device reads the instructions from the computer-readable storage medium and executes the instructions, causing the communication device or computing device to perform the aforementioned method 200 or 300.
[0056] It should be noted that the various exemplary embodiments of this disclosure can be implemented in hardware or dedicated circuitry, software, firmware, logic, or any combination thereof. Some aspects can be implemented in hardware, while others can be implemented in firmware or software that can be executed by a controller, microprocessor, or other computing device. When aspects of some embodiments of this disclosure are illustrated or described as block diagrams, flowcharts, or using some other graphical representation, it will be understood that the blocks, apparatuses, systems, techniques, or methods described herein can be implemented as non-limiting examples in hardware, software, firmware, dedicated circuitry or logic, general-purpose hardware or controllers or other computing devices, or some combination thereof.
[0057] It should be noted that the flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of communication devices, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0058] The exemplary embodiments of this disclosure described in detail above are merely illustrative and not restrictive. Those skilled in the art will understand that various modifications and combinations can be made to these embodiments or their features without departing from the principles and spirit of this disclosure, and such modifications should fall within the scope of this disclosure.
Claims
1. A method for a communication device, characterized by, The method comprises: determining, based on a temperature of the communication device, a first duration of time allowed for transmitting data packets within a control period for temperature control of the communication device; in response to there being a data packet to be transmitted and an actual packet transmission duration not exceeding the first duration of time within the control period, scheduling transmission of the data packet to be transmitted, and updating the actual packet transmission duration by accumulating a duration of time taken to transmit the data packet to be transmitted; and at the end of the control period, resetting the actual packet transmission duration to zero.
2. The method of claim 1, wherein, The method further comprises: in response to there being the data packet to be transmitted and the actual packet transmission duration exceeding the first duration of time within the control period, scheduling transmission of the data packet to be transmitted if a predetermined condition is met, and updating the actual packet transmission duration by accumulating a duration of time taken to transmit the data packet to be transmitted, otherwise not scheduling transmission of the data packet to be transmitted.
3. The method of claim 2, wherein, The predetermined condition comprises: the data packet to be transmitted is a first type of data packet and the actual packet transmission duration does not exceed a second duration of time, wherein the second duration of time is greater than the first duration of time and less than a duration of the control period.
4. The method of claim 3, the predetermined condition further comprises: a traffic of the data packet to be transmitted is less than a predetermined threshold.
5. The method of claim 1, wherein, The method further comprises: in response to there being the data packet to be transmitted and the actual packet transmission duration exceeding the first duration of time within the control period, not scheduling transmission of the data packet to be transmitted.
6. The method of claim 3, wherein, The first type of data packet comprises latency sensitive data packets.
7. The method of claim 6, wherein, The latency sensitive data packets comprise voice type and / or video type data packets.
8. A communication device, characterized by The communication device comprises: at least one processor; at least one memory coupled to the at least one processor, having instructions stored thereon, which when executed by the at least one processor, cause the at least one processor to perform the method of any one of claims 1-7.
9. The communication device of claim 8, further comprising: a temperature sensor configured to monitor the temperature of the communication device.
10. A computer program product having instructions stored thereon, which when executed by a processor, cause the processor to perform the method of any one of claims 1-7.