IP Library Granted Patent US 12,464,452
Granted Patent B2
US 12,464,452 · App. 18/191,850 · Granted Nov 4, 2025

Adaptive load based power saving in communication network

Inventors: Praveen Kumar Alur Shivaswamy (Bangalore, IN); Venkatarao Malempati (Bangalore, IN); Jay Navali (Massachusetts, MA); Venkateswara Reddy Peram (Bangalore, IN); Arun Shankar Shivashankarappa (Bangalore, IN); Mahesh Sivapuram (Bangalore, IN); Lokesh Chimbili (Bangalore, IN)
Assignee: RAKUTEN SYMPHONY, INC.
H04W52/0203
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,464,452
App. No.
18/191,850
Granted
Nov 4, 2025
Kind
B2
Abstract

An apparatus includes a first processor; and a memory having instructions stored thereon that, when executed by the first processor, cause the apparatus to monitor a flow of data packets on a network plane. The apparatus is also caused to calculate a packet rate of the flow of the data packets. The apparatus is further caused to compare the packet rate with a first threshold value. The apparatus is additionally caused to, in response to determining the packet rate is less than the first threshold value, cause an operating state of a second processor communicatively coupled with the apparatus to change from an active state to a sleep state.

Claims (90)

1 . An apparatus, comprising:

a first processor; and

a memory having instructions stored thereon that, when executed by the first processor, cause the apparatus to:

monitor a flow of data packets on a network plane;

calculate a packet rate of the flow of the data packets;

compare the packet rate with a first threshold value; and

in response to determining the packet rate is less than the first threshold value, modify a schedule of data packet flow to refrain from sending newly received packets to a worker thread executed by a second processor communicatively coupled with the apparatus and cause an operating state of the second processor to change from an active state to a sleep state in response to determining the worker thread processes all packets in a packet queue of the second processor until empty.

2 . The apparatus of claim 1 , wherein the apparatus is further caused to:

compare the packet rate with a second threshold value higher than the first threshold value; and

in response to determining the packet rate is greater than the second threshold value, cause the operating state of the second processor to change from the sleep state to the active state.

3 . The apparatus of claim 2 , wherein

the first threshold value is a first percentage of a maximum packet rate,

the second threshold value is a second percentage of the maximum packet rate, and

one or more of the first percentage or the second percentage is variable based on a predefined schedule.

4 . The apparatus of claim 1 , wherein

the worker thread is a first worker thread that processes the data packets,

the second processor comprises a first logical core and a second logical core,

the first logical core is allocated to the first worker thread,

the second logical core is allocated to a second worker thread that processes the data packets, and

the apparatus causes the operating state of the second processor to change from the active state to the sleep state by:

causing at least one of the first logical core or the second logical core to enter the sleep state in response to determining the packet rate is below the first threshold value.

5 . The apparatus of claim 4 , wherein the sleep state is a first sleep state, and the apparatus is further caused to:

monitor the packet queue of the second processor, the packet queue having one or more to-be-processed data packets; and

in response to determining the packet queue is fully drained of the one or more to-be-processed data packets, cause the second processor to enter a second sleep state that is a deeper sleep state than the first sleep state.

6 . The apparatus of claim 4 , wherein

a third processor communicatively coupled with the apparatus comprises a third logical core and a fourth logical core,

the third logical core is allocated to a third worker thread that processes the data packets,

the fourth logical core is allocated to a fourth worker thread that processes the data packets, and

the apparatus is further caused to:

compare the packet rate with a second threshold value higher than the first threshold value;

cause the operating state of the at least one of the first logical core or the second logical core to change from the sleep state to the active state in response to determining the packet rate is greater than the second threshold value; and

cause an operating state of at least one of the third logical core or the fourth logical core to be in the active state in response to determining the packet rate is greater than the first threshold value and less than the second threshold value.

7 . The apparatus of claim 4 , wherein

a third processor communicatively coupled with the apparatus comprises a third logical core and a fourth logical core,

the third logical core is allocated to a third worker thread that processes the data packets,

the fourth logical core is allocated to a fourth worker thread that processes the data packets, and

the apparatus is further caused to:

compare the packet rate with a second threshold value higher than the first threshold value;

cause the operating state of the at least one of the first logical core or the second logical core to change from the sleep state to the active state in response to determining the packet rate is greater than the second threshold value; and

cause an operating state of at least one of the third logical core or the fourth logical core to change from the active state to a peak utilization state in response to determining the packet rate is greater than the first threshold value and less than the second threshold value, wherein the at least one of the third worker thread or the fourth worker thread in the peak utilization state processes the data packets at a speed that is faster than the at least one of the third worker thread or the fourth worker thread processes the data packets in the active state.

8 . The apparatus of claim 7 , wherein the at least one of the third logical core or the fourth logical core is caused to be in the peak utilization state at a time during which the at least one of the first logical core or the second logical core is in the sleep state.

9 . The apparatus of claim 1 , wherein the network plane is a radio access network plane.

10 . A method, comprising:

monitoring, by a first processor, a flow of data packets on a network plane;

calculating a packet rate of the flow of the data packets;

comparing the packet rate with a first threshold value; and

in response to determining the packet rate is less than the first threshold value, modifying a schedule of data packet flow to refrain from sending newly received packets to a worker thread executed by a second processor communicatively coupled with the first processor and causing an operating state of the second processor to change from an active state to a sleep state in response to determining the worker thread processes all packets in a packet queue of the second processor until empty.

11 . The method of claim 10 , further comprising:

comparing the packet rate with a second threshold value higher than the first threshold value; and

in response to determining the packet rate is greater than the second threshold value, causing the operating state of the second processor to change from the sleep state to the active state.

12 . The method of claim 11 , wherein

the first threshold value is a first percentage of a maximum packet rate,

the second threshold value is a second percentage of the maximum packet rate, and

one or more of the first percentage or the second percentage is variable based on a predefined schedule.

13 . The method of claim 10 , wherein

the worker thread is a first worker thread that processes the data packets,

the second processor comprises a first logical core and a second logical core,

the first logical core is allocated to the first worker thread,

the second logical core is allocated to a second worker thread that processes the data packets, and

causing the operating state of the second processor to change from the active state to the sleep state comprises:

causing at least one of the first logical core or the second logical core to enter the sleep state in response to determining the packet rate is below the first threshold value.

14 . The method of claim 13 , wherein the sleep state is a first sleep state, and the method further comprises:

monitoring the packet queue of the second processor, the packet queue having one or more to-be-processed data packets; and

in response to determining the packet queue is fully drained of the one or more to-be-processed data packets, causing the second processor to enter a second sleep state that is a deeper sleep state than the first sleep state.

15 . The method of claim 13 , wherein

a third processor communicatively coupled with the first processor comprises a third logical core and a fourth logical core,

the third logical core is allocated to a third worker thread that processes the data packets,

the fourth logical core is allocated to a fourth worker thread that processes the data packets, and

the method further comprises:

comparing the packet rate with a second threshold value higher than the first threshold value;

causing the operating state of the at least one of the first logical core or the second logical core to change from the sleep state to the active state in response to determining the packet rate is greater than the second threshold value; and

causing an operating state of at least one of the third logical core or the fourth logical core to be in the active state in response to determining the packet rate is greater than the first threshold value and less than the second threshold value.

16 . The method of claim 13 , wherein

a third processor communicatively coupled with the first processor comprises a third logical core and a fourth logical core,

the third logical core is allocated to a third worker thread that processes the data packets,

the fourth logical core is allocated to a fourth worker thread that processes the data packets, and

the method further comprises:

comparing the packet rate with a second threshold value higher than the first threshold value;

causing the operating state of the at least one of the first logical core or the second logical core to change from the sleep state to the active state in response to determining the packet rate is greater than the second threshold value; and

causing an operating state of at least one of the third logical core or the fourth logical core to change from the active state to a peak utilization state in response to determining the packet rate is greater than the first threshold value and less than the second threshold value, wherein the at least one of the third worker thread or the fourth worker thread in the peak utilization state processes the data packets at a speed that is faster than the at least one of the third worker thread or the fourth worker thread processes the data packets in the active state.

17 . The method of claim 16 , wherein the at least one of the third logical core or the fourth logical core is caused to be in the peak utilization state at a time during which the at least one of the first logical core or the second logical core is in the sleep state.

18 . The method of claim 10 , wherein the network plane is a radio access network plane.

19 . A non-transitory computer readable medium having instructions stored thereon that, when executed by a first processor, cause an apparatus to:

monitor a flow of data packets on a network plane;

calculate a packet rate of the flow of the data packets;

compare the packet rate with a first threshold value; and

in response to determining the packet rate is less than the first threshold value, modifying a schedule of data packet flow to refrain from sending newly received packets to a worker thread executed by a second processor communicatively coupled with the first processor and causing an operating state of the second processor to change from an active state to a sleep state in response to determining the worker thread processes all packets in a packet queue of the second processor until empty.

20 . The non-transitory computer readable medium of claim 19 , wherein the apparatus is further caused to:

compare the packet rate with a second threshold value higher than the first threshold value; and

in response to determining the packet rate is greater than the second threshold value, cause the operating state of the second processor to change from the sleep state to the active state.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2024
From: ALTIOSTAR NETWORKS, INC.
To: RAKUTEN SYMPHONY, INC.
Reel/Frame 068533/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 29, 2024
From: ALTIOSTAR NETWORKS INDIA PRIVATE LIMITED
To: RAKUTEN SYMPHONY, INC.
Reel/Frame 068447/0107 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 8, 2023
From: ALUR SHIVASWAMY, PRAVEEN KUMAR; MALEMPATI, VENKATARAO; NAVALI, JAY; PERAM, VENKATESWARA REDDY; SHIVASHANKARAPPA, ARUN SHANKAR; SIVAPURAM, MAHESH; CHIMBILI, LOKESH
To: ALTIOSTAR NETWORKS INDIA PRIVATE LIMITED; ALTIOSTAR NETWORKS, INC.
Reel/Frame 063265/0566 →
Continuity (1)
Related Publication 20240334322A1 · Oct 3, 2024
References Cited (4)
US 20120159261A1 · Maybee · 2012 [cited by examiner]
US 20140089603A1 · Krishnapura · 2014 [cited by examiner]
US 20140115366A1 · Joo · 2014 [cited by examiner]
US 20160140070A1 · Araujo · 2016 [cited by examiner]