IP Library Granted Patent US 11,540,287
Granted Patent B2
US 11,540,287 · App. 17/384,780 · Granted Dec 27, 2022

Separate IO and control threads on one datapath Pod of a RIC

Inventors: Amit Singh (Woodside, CA); Aditya Gudipati (Sunnyvale, CA)
Assignee: VMWARE, INC.
H04W72/0486H04W12/037H04W12/08H04W72/0433H04W72/0453
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 11,540,287
App. No.
17/384,780
Granted
Dec 27, 2022
Kind
B2
Abstract

To provide a low latency near RT RIC, some embodiments separate the RIC's functions into several different components that operate on different machines (e.g., execute on VMs or Pods) operating on the same host computer or different host computers. Some embodiments also provide high speed interfaces between these machines. Some or all of these interfaces operate in non-blocking, lockless manner in order to ensure that critical near RT RIC operations (e.g., datapath processes) are not delayed due to multiple requests causing one or more components to stall. In addition, each of these RIC components also has an internal architecture that is designed to operate in a non-blocking manner so that no one process of a component can block the operation of another process of the component. All of these low latency features allow the near RT RIC to serve as a high speed IO between the E2 nodes and the xApps.

Claims (26)

1. A non-transitory machine readable medium storing a datapath program for forwarding data messages between a set of base station components and a set of applications interacting with the base station components, the program part of a RAN (Radio Access Network) Intelligent Controller (RIC), the program for execution by at least one processing unit of a computer, the program comprising sets of instructions for:

operating a datapath first thread to forward data messages between the set of base station components and the set of applications interacting with the base station components;

operating a control second thread to perform a set of control operations related to the forwarding operations of the datapath first thread; and

defining a set of buffers through which the first and second threads communicate.

2. The non-transitory machine readable medium of claim 1 , wherein the forwarding of the data messages by the datapath first thread is more critical and requires less latency than the set of control operations performed by the control second thread.

3. The non-transitory machine readable medium of claim 2 , wherein segregating the set of control operations from the data message forwarding reduces load on datapath forwarding operations of the datapath program.

4. The non-transitory machine readable medium of claim 1 , wherein the set of control operations include selecting security keys for encrypting/decrypting communication with the set of applications.

5. The non-transitory machine readable medium of claim 1 , wherein the set of control operations include communications with a set of controllers to receive instructions for configuring the datapath program and configuring the datapath program based on the received instructions.

6. The non-transitory machine readable medium of claim 1 , wherein the set of control operations include forwarding, to a storage, statistics generated by the datapath first thread.

7. The non-transitory machine readable medium of claim 6 , wherein the datapath program operates on a first machine executing on a host computer, while the storage operates on a different, second machine executing on the host computer.

8. The non-transitory machine readable medium of claim 1 , wherein the set of buffers comprise a first circular ring for communications from the first thread to the second thread, and a second circular ring for communications from the second thread to the first thread.

9. The non-transitory machine readable medium of claim 1 , wherein the datapath program operates on a datapath Pod, which is one of a plurality of Pods that forms the RIC, wherein the plurality of Pods also includes a shared data layer (SDL) Pod accessible by the set of applications and a service Pod that provides services to the set of applications.

10. The non-transitory machine readable medium of claim 9 , wherein the set of applications include a set of control plane applications or a set of RAN edge applications.

11. A method for implementing a RAN (Radio Access Network) Intelligent Controller (RIC) to forward data messages between a set of base station components and a set of applications interacting with the base station components, the method comprising:

operating a datapath first thread to forward data messages between the set of base station components and the set of applications interacting with the base station components;

operating a control second thread to perform a set of control operations related to the forwarding operations of the datapath first thread, the first and second threads part of one datapath program; and

defining a set of buffers through which the first and second threads communicate.

12. The method of claim 11 , wherein the forwarding of the data messages by the datapath first thread is more critical and requires less latency than the set of control operations performed by the control second thread.

13. The method of claim 12 , wherein segregating the set of control operations from the data message forwarding reduces load on datapath forwarding operations of the datapath program.

14. The method of claim 11 , wherein the set of control operations include selecting security keys for encrypting/decrypting communication with the set of applications.

15. The method of claim 11 , wherein the set of control operations include communications with a set of controllers to receive instructions for configuring the datapath program and configuring the datapath program based on the received instructions.

16. The method of claim 11 , wherein the set of control operations include forwarding, to a storage, statistics generated by the datapath first thread.

17. The method of claim 16 , wherein the datapath program operates on a first machine executing on a host computer, while the storage operates on a different, second machine executing on the host computer.

18. The method of claim 11 , wherein the set of buffers comprise a first circular ring for communications from the first thread to the second thread, and a second circular ring for communications from the second thread to the first thread.

19. The method of claim 11 , wherein the datapath program operates on a datapath Pod, which is one of a plurality of Pods that forms the RIC, wherein the plurality of Pods also includes a shared data layer (SDL) Pod accessible by the set of applications and a service Pod that provides services to the set of applications.

20. The method of claim 19 , wherein the set of applications include a set of control plane applications or a set of RAN edge applications.

Assignments (3)
CHANGE OF NAME Recorded Aug 5, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 068323/0408 →
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 1, 2021
From: SINGH, AMIT; GUDIPATI, ADITYA
To: VMWARE, INC.
Reel/Frame 058258/0452 →
Cited By (4)
US 12,413,468 US 12,438,769 US 12,530,214 US 12,581,392