Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The NB-IoT is constructed in a cellular network, and supports the upgrade and evolution on the existing LTE network, so that the existing spectrum resources of operators can be fully utilized, and the spectrum utilization rate is improved; since NB-IoT is created based on a traffic model with low rate and low traffic frequency, a large number of users can be supported; and electric saving technologies such as eDRXPSM are also supported, so that the power consumption of the terminal can be reduced. NB-IoT network architecture referring to fig. 1, the terminal 11, base station (eNodeB) comprising first base station (eNodeB1)121 and second base station (eNodeB2)122, IoT core network 13, IoT platform 14, and application server 15 are included. The terminal 11 is connected to the base station through an air interface; the base station mainly undertakes air interface access processing, cell management and other related functions, and is connected with the IoT core network 13 through an S1-lite interface; the IoT core network 13 undertakes the function of interacting with the non-access stratum of the terminal 11, and forwards IoT service data to the IoT platform 14 for processing; the IoT platform 14 aggregates IoT service data obtained from various access networks, and forwards the IoT service data to the corresponding service application server 15 according to different types of IoT service data for processing; the application server 15 is a final aggregation point of IoT service data, and performs operations such as data processing according to the needs of customers.
In the default state of NB-IoT, there are three operating states, and three state switching processes in the NB-IoT network are shown in fig. 2, including: connected (connected) state: the terminal is in a connection state after being registered to access a network and can send and receive data, when no data interaction exists, the inactivity timer is started, when the inactivity timer is overtime, namely after the no data interaction in the connection state exceeds a period of time, the terminal enters an Idle (Idle) state, wherein the overtime time of the inactivity timer is configurable. Idle state: the method can receive and transmit data, and enters a connected state when receiving downlink data, when entering an Idle state, an activation timer (T3324) is started, a period TAU timer (T3412) is started, when the activation timer is overtime, namely, after no data interaction in the Idle state exceeds a period of time, the PSM is entered, wherein the overtime time of the activation timer can be configured. PSM: in this state, the terminal closes the transceiver and does not monitor paging of the wireless side, so that although the terminal is still registered in the network, signaling is not reachable, downlink data cannot be received, power is low, and when the periodic TAU timer is overtime or the terminal has MO data to be transmitted, the terminal enters a connected state.
In the NB-IoT network, the overtime of an activation timer is determined by the terminal and the MME through non-access stratum message negotiation. The time length of the activation timer determined by the method is longer, so that the time length of the terminal entering the PSM from the idle state is longer, and when the power consumption of the terminal is larger and the time length of the activation timer is longer, the terminal is more power consumption. For example, with k tasks as a group, power consumption is calculated:


when the terminal does the task n, the terminal is in a connection state: pm _ n represents the power consumption of the terminal in a connection state, and Tm _ n represents the time length of the terminal in the connection state; in the idle state: p _ idle _ n represents the power consumption of the terminal in the idle state, and T _ idle _ n represents the duration of the terminal in the idle state; in the PSM: p _ PSM _ n represents the power consumption of the terminal in the PSM, and T _ PSM _ n represents the time length of the terminal in the PSM; in awake state (i.e. terminal awake from PSM): p _ wake _ n represents power consumption of the terminal in an awake state, and T _ wake _ n represents a duration of the terminal in the awake state.
Based on the NB-IoT network architecture and the switching process of the three working states under the NB-IoT network, the present application provides a terminal power saving method, which is applied to a network side device, and as shown in fig. 3, specifically includes the following steps:
301. and when the terminal is determined to enter an idle state, acquiring the service packet length of k continuous historical tasks on the terminal and the timeout time of an activation timer of the k historical tasks.
The terminal is in a connection state after being registered and accessed to the network, and is responsible for sending and receiving data when a task is in progress, when the network side equipment monitors that the task data on the terminal is transmitted, the data transmission is not carried out any more, the inactive timer is started, when the inactive timer is overtime, the network side equipment sends the overtime information of the inactive timer to the terminal, the terminal enters an Idle (Idle) state, namely the terminal enters the Idle (Idle) state after no data interaction in the connection state exceeds a period of time, and the network side equipment starts a period TAU timer (T3412).
And acquiring the service packet length of k continuous historical tasks and the timeout time of the activation timer of the k historical tasks on the terminal. Preferably, the service packet length of the historical task executed on the terminal and the timeout time of the activation timer of the historical task are obtained within a period of time before the current task, for example, within a period of time before the current task, 10 historical tasks are executed on the terminal, and the same activation timer is used, so that k is 10; for another example, if 10 historical tasks are executed on the terminal in a period of time before the current task, wherein 3 historical tasks are configured as a first activation timer, and the other 7 historical tasks are configured as a second activation timer, the number of the historical tasks executed closest to the current time is selected and recorded as a k value, and the timeout time of the configured activation timer is obtained.
The initial value of the timeout time of the activation timer is determined by the terminal and the MME through negotiation of non-access stratum messages.
302. And calculating the average service packet length of the k historical tasks according to the service packet lengths of the k historical tasks.
Further according to the formula
Calculating k calendarsAnd the average service packet length of the historical tasks, wherein k represents the number of the historical tasks, packet _ average represents the average service packet length of the historical tasks, and packet _ n represents the service packet length of the nth historical task.
303. And determining that the average value of the service packet length of the current task is larger than the average service packet length of the historical task, and calculating an adjusting coefficient according to the average value of the service packet length of the current task and the average service packet length of the historical task.
For example, when k is 10, after the 10 th task is executed, the current task and the previous 9 executed tasks are history tasks, if there is one currently executed task, the current task is the 11 th task, and if there are three currently executed tasks, the current task is the 11 th-13 th task, where the present application does not provide for a counting manner of the tasks executed in parallel.
Further, according to the formula M ═ (packet ═ u ═k+1-packet _ average)/packet _ average/a% calculation of the adjustment factor, wherein packet _k+1The average value of the service packet lengths of the current tasks is represented, for example, if there is one task currently being executed, the service packet length of the task is represented, and if there are three tasks currently being executed, the average value of the service packet lengths of the current tasks is taken. packet _ average indicates the average service packet length of the historical task, and M is an integer, where M is rounded down, for example, if the calculation result of M is 3.7, then the rounded down is 3; a is constant, e.g., a may be 10.
Further, determining that the average value of the service packet lengths of the current task is less than or equal to the average service packet length of the historical tasks, starting a target activation timer of the current task, wherein the current task is a task being executed on the terminal, and the timeout time of the target activation timer is set to be the timeout time of the activation timers of the k historical tasks, for example, when the timeout time of the activation timers of the k historical tasks is 15s, the service packet length of the current task is 20 bytes, and the average service packet length of the historical tasks is 25 bytes, the timeout time of the target activation timer of the current task is set to be the timeout time of the activation timers of the k historical tasks of 15 s.
304. And calculating the timeout time of the target activation timer of the current task according to the timeout time and the adjustment coefficient of the activation timers of the k historical tasks.
Further, the timeout time of the target activation Timer of the current task is calculated according to a formula Timer _ k +1 ═ Timer _ k-M × Tstep, where Timer _ k +1 represents the timeout time of the target activation Timer, Timer _ k represents the timeout time of the activation timers of k historical tasks, M represents an adjustment coefficient, and Tstep represents the minimum step size of the adjustment timeout time of the target activation Timer.
When Timer _ k +1 is not greater than 0, the adjustment coefficient M is adjusted so that the timeout time of the target activation Timer, Timer _ k +1, is greater than the minimum value of 0, for example, Timer _ k is 20s, M is 3, Tstep is 7, then Timer _ k +1 is calculated so that Timer _ k-M is Tstep is 20-21 is-1, and when the adjustment coefficient is adjusted so that M is 2, then Timer _ k +1 is Timer _ k-M, Tstep is 20-14 is 6s, and therefore, the timeout time of the target activation Timer T3324 is adjusted to 6 s.
305. A target activation timer is started.
306. And when the target activation timer is overtime, determining that the terminal enters the low power consumption mode PSM.
The network side equipment determines that the target activation timer is overtime, sends target activation timer overtime information to the terminal, the terminal enters the PSM after receiving the information, and the terminal closes a transceiver under the PSM at the terminal side without monitoring paging of the wireless side, so that although the terminal is still registered in the network, signaling is not accessible, downlink data cannot be received, and the power is very low; on the network side, when the target activation timer is overtime, the MME judges that the terminal enters PSM, and rejects downlink service and paging of the terminal, so that the terminal and the network are synchronous about the information that the terminal enters the power saving mode. The network side equipment determines that a period TAU timer is overtime, sends the period TAU timer overtime information to the terminal, and when the terminal receives the period TAU timer overtime information or the terminal has MO data to be transmitted, the terminal enters a connection state again, wherein the network side equipment can control the time of the terminal in the PSM by configuring the overtime time of the period TAU timer (T3412 timer).
In the scheme, when the terminal is determined to enter an idle state, the service packet length of k continuous historical tasks on the terminal and the timeout time of an activation timer of the k historical tasks are obtained; calculating the average service packet length of the k historical tasks according to the service packet lengths of the k historical tasks; determining that the average value of the service packet length of the current task is larger than the average service packet length of the historical task, and calculating an adjustment coefficient according to the average value of the service packet length of the current task and the average service packet length of the historical task; calculating the overtime time of a target activation timer of the current task according to the overtime time and the adjustment coefficient of the activation timers of the k historical tasks; starting a target activation timer; and when the target activation timer is overtime, determining that the terminal enters the low power consumption mode PSM. According to the method and the device, the adjustment coefficient is calculated through the service packet length of the task, and the overtime of the target activation timer is calculated according to the adjustment coefficient, so that the condition that the overtime of the target activation timer is determined by directly using the terminal and the MME through non-access stratum message negotiation is avoided, the setting of the overtime of the target activation timer is more reasonable, the terminal is enabled to be switched to the PSM from an idle state as soon as possible, and the power consumption of the terminal is reduced.
When the terminal power saving method is implemented by using functional modules, referring to fig. 4, an embodiment of the present invention provides a terminal power saving device, which is used for implementing the terminal power saving method, and certainly, the functional module division provided by the terminal power saving device shown in fig. 4 is only an example, and is also feasible when other forms of functional module division are used, where the terminal power saving device is applied to a network-side device, and may be the network-side device itself or a chip or a functional entity thereon. Specifically, the method comprises the following steps:
an obtaining module 41, configured to obtain service packet lengths of k consecutive historical tasks on a terminal and timeout times of activation timers of the k historical tasks when determining that the terminal enters an idle state; a calculating module 42, configured to calculate an average service packet length of the k historical tasks acquired by the acquiring module 41 according to the service packet lengths of the k historical tasks; the calculating module 42 is further configured to determine that the average value of the service packet lengths of the current task is greater than the average service packet length of the historical task, and calculate an adjustment coefficient according to the average value of the service packet lengths of the current task and the average service packet length of the historical task, where the current task is a task being executed on a terminal; the calculating module 42 is further configured to calculate the timeout time of the target activation timer of the current task according to the timeout times of the activation timers of the k historical tasks and the adjustment coefficient; a starting module 43 for starting the target activation timer; a determining module 44, configured to determine that the terminal enters the low power consumption mode PSM when the target activation timer expires.
Optionally, the calculating module 42 is specifically configured to calculate the formula
And calculating the average service packet length of the k historical tasks, wherein k represents the number of the historical tasks, packet _ average represents the average service packet length of the historical tasks, and packet _ n represents the service packet length of the nth historical task.
The calculating module 42 is specifically configured to (packet) according to the formula M ═ ik+1-packet _ average)/packet _ average/a% calculating the adjustment coefficient, wherein packet _k+1And the average value of the service packet length of the current task is represented, the packet _ average represents the average service packet length of the historical task, M is an integer, and a is a constant.
Optionally, the calculating module 42 is specifically configured to calculate the timeout time of the target activation Timer of the current task according to a formula Timer _ k +1 ═ Timer _ k-M × Tstep, where Timer _ k +1 represents the timeout time of the target activation Timer, Timer _ k represents the timeout time of the activation timers of the k historical tasks, M represents the adjusting coefficient, and Tstep represents the minimum step size of the adjustment timeout time of the target activation Timer.
Optionally, the calculating module 42 is specifically configured to adjust the adjusting coefficient M to enable the timeout time Timer _ k +1 of the target activation Timer to take a minimum value greater than 0 when the Timer _ k +1 is less than or equal to 0.
Optionally, the starting module 43 is further configured to start a target activation timer of the current task when it is determined that the average value of the service packet lengths of the current task is smaller than or equal to the average service packet length of the historical task, where the current task is a task being executed on a terminal, and the timeout time of the target activation timer is set as the timeout time of activation timers of k tasks.
Optionally, the initial value of the timeout time of the activation timer is determined by the terminal and the mobility management entity MME through negotiation of a non-access stratum message.
In the case of using an integrated module, the terminal power saving device includes: the device comprises a storage unit, a processing unit and an interface unit. The processing unit is used for controlling and managing the action of the terminal power saving device. And the interface unit is used for information interaction between the terminal power saving device and other equipment. And a storage unit for storing program codes and data of the terminal power saving device.
For example, the processing unit is a processor, the storage unit is a memory, and the interface unit is a communication interface. The terminal power saving device shown in fig. 5 includes a communication interface 501, a processor 502, a memory 503, and a bus 504, wherein the communication interface 501 and the processor 502 are connected to the memory 503 through the bus 504.
The processor 502 may be a general-purpose Central Processing Unit (CPU), a microprocessor, an Application-Specific Integrated Circuit (ASIC), or one or more Integrated circuits configured to control the execution of programs in accordance with the teachings of the present disclosure.
The Memory 503 may be a Read-Only Memory (ROM) or other type of static storage device that can store static information and instructions, a Random Access Memory (RAM) or other type of dynamic storage device that can store information and instructions, an Electrically Erasable Programmable Read-Only Memory (EEPROM), a Compact Disc Read-Only Memory (CD-ROM) or other optical Disc storage, optical Disc storage (including Compact Disc, laser Disc, optical Disc, digital versatile Disc, blu-ray Disc, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited to these. The memory may be self-contained and coupled to the processor via a bus. The memory may also be integral to the processor.
The memory 503 is used for storing application program codes for executing the scheme of the application, and the processor 502 controls the execution. The communication interface 501 is used for information interaction with other devices, for example, to support information interaction between the terminal power saving device and other devices, for example, to acquire data from other devices or to transmit data to other devices. The processor 502 is configured to execute application program code stored in the memory 503 to implement the methods described in the embodiments of the present application.
Also, a computing storage medium (or media) is provided, which includes instructions that when executed perform the method operations performed by the terminal power saving device in the above embodiments. Additionally, a computer program product is also provided, comprising the above-described computing storage medium (or media).
All relevant contents of each step related to the above method embodiment may be referred to the functional description of the corresponding functional module, and the function thereof is not described herein again.
It should be understood that, in various embodiments of the present invention, the sequence numbers of the above-mentioned processes do not mean the execution sequence, and the execution sequence of each process should be determined by its function and inherent logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
It is clear to those skilled in the art that, for convenience and brevity of description, the specific working processes of the above-described systems, apparatuses and units may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus, and method may be implemented in other ways. For example, the above-described device embodiments are merely illustrative, and for example, the division of the units is only one logical functional division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U disk, a removable hard disk, a read-only memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
The above description is only for the specific embodiments of the present invention, but the scope of the present invention is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present invention, and all the changes or substitutions should be covered within the scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the appended claims.