IP Library Granted Patent US 11,416,428
Granted Patent B2
US 11,416,428 · App. 16/781,107 · Granted Aug 16, 2022

Enablement of software defined storage solution for NVME over ethernet fabric management on storage controller

Inventors: Anurag Bhatia (Sugar Hill, GA); Jason Messer (Duluth, GA); Sanjoy Maity (Snellville, GA)
Assignee: AMERICAN MEGATRENDS INTERNATIONAL, LLC
G06F13/28G06F3/0607G06F3/067G06F3/0629G06F8/61G06F9/4408G06F9/5077G06F9/542G06F11/1612G06F11/1662G06F11/3031G06F11/3034G06F13/362G06F13/4221G06F13/4282G06F15/17331H04L41/0213H04L41/32H04L41/5054H04L43/0817H04L43/10H04L67/1097G06F11/2082G06F2213/0026G06F2213/28
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,416,428
App. No.
16/781,107
Granted
Aug 16, 2022
Kind
B2
Abstract

A computer system includes a BMC and a host of the BMC. The BMC receives a first message from a first remote device on a management network. The BMC determines whether the first message is directed to a storage service or fabric service executed on a main processor of a storage controller of the host. The host is a storage device. The storage controller includes an RDMA controller in communication with the main processor through an internal communication channel of the storage controller. The RDMA controller is managed by the storage service. The BMC extracts a service management command from the first message, when the first message is directed to the storage service or fabric service. The BMC sends, through a BMC communication channel established for communicating baseboard management commands between the BMC and the host, a second message containing the service management command to the host.

Claims (62)

1. A method of operating a computer system, the computer system including a baseboard management controller (BMC) and a host of the BMC, comprising:

receiving, at the BMC, a first message from a first remote device on a management network;

determining, at the BMC, whether the first message is directed to a storage service or fabric service executed on a main processor of a storage controller of the host, the host being a storage device, the storage controller including a Remote Direct Memory Access (RDMA) controller that is in communication with the main processor through an internal communication channel of the storage controller, the RDMA controller being managed by the storage service;

extracting a service management command from the first message, when the first message is directed to the storage service or fabric service; and

sending, through a BMC communication channel to the host, a second message containing the service management command to the host, the BMC communication channel established for communicating baseboard management commands between the BMC and the host.

2. The method of claim 1 , wherein the internal communication channel is a bus between the main processor and the RDMA controller.

3. The method of claim 1 , wherein the fabric service manages a fabric connecting one or more drives to the chip set of the central processing unit.

4. The method of claim 3 , wherein the fabric includes one or more PCIe links.

5. The method of claim 1 , further comprising:

generating the second message in accordance with a management framework running on the host.

6. The method of claim 5 , wherein the computer system further includes the host, the method further comprising:

receiving the second message at the management framework;

determining that the second message is directed to one of the storage service and the fabric service;

extracting the service management command from the second message; and

executing the service management command at the one service.

7. The method of claim 1 , further comprising:

sending the first message to a base board management function running on the BMC, when the first message is not directed to the storage service or fabric service running on the host.

8. The method of claim 7 , further comprising:

generating a baseboard management command in accordance with the first message; and

sending the baseboard management command to the host through the BMC communication channel.

9. The method of claim 1 , wherein the computer system further includes the host, the method further comprising:

receiving, at the RDMA controller, a data operation command from a remote device through a storage network; and

(a) retrieving, by the RDMA and through the internal communication channel, user data associated with the data operation command from a memory region of the host and sending the user data to the remote device through the storage network without passing through the main processor, or, (b) receiving, by the RDMA, the user data associated with the data operation command through the storage network and writing, by the RDMA and through the of the host communication channel, the user data to the memory region without passing through the main processor.

10. The method of claim 9 , further comprising:

retrieving, by the main processor, the user data from one or more storage drives connected to the host via the fabric service; and

writing, by the main processor, the user data to the memory region prior to the retrieving the user data from the memory region.

11. A computer system, comprising:

a baseboard management controller (BMC), including:

a first memory, and

first at least one processor coupled to the memory; and

a host of the BMC having a storage controller, including:

a second memory,

a main processor; and

a Remote Direct Memory Access (RDMA) controller;

wherein the first at least one processor is further configured to:

receive, at the BMC, a first message from a first remote device on a management network;

determine, at the BMC, whether the first message is directed to a storage service or fabric service executed on the main processor, wherein the host is a storage device, wherein the RDMA controller is in communication with the main processor through an internal communication channel of the storage controller, wherein the RDMA controller is managed by the storage service;

extract a service management command from the first message, when the first message is directed to the storage service or fabric service; and

send, through a BMC communication channel to the host, a second message containing the service management command to the host, the BMC communication channel established for communicating baseboard management commands between the BMC and the host.

12. The computer system of claim 11 , wherein the internal communication channel is a bus between the main processor and the RDMA controller.

13. The computer system of claim 11 , wherein the fabric service manages a fabric connecting one or more drives to the chip set of the central processing unit.

14. The computer system of claim 13 , wherein the fabric includes one or more PCIe links.

15. The computer system of claim 11 , wherein the first at least one processor is further configured to:

generate the second message in accordance with a management framework running on the host.

16. The computer system of claim 15 , wherein the main processor is further configured to:

receive the second message at the management framework;

determine that the second message is directed to one of the storage service and the fabric service;

extract the service management command from the second message; and

execute the service management command at the one service.

17. The computer system of claim 16 , wherein the RDMA controller is further configured to:

receive, at the RDMA controller, a data operation command from a remote device through a storage network; and

(a) retrieve, by the RDMA and through the internal communication channel, user data associated with the data operation command from a memory region of the host and send the user data to the remote device through the storage network without passing through the main processor, or, (b) receive, by the RDMA, the user data associated with the data operation command through the storage network and write, by the RDMA and through the of the host communication channel, the user data to the memory region without passing through the main processor.

18. The computer system of claim 17 , wherein the main processor is further configured to:

retrieve, by the main processor, the user data from one or more storage drives connected to the host via the fabric service; and

write, by the main processor, the user data to the memory region prior to the retrieving the user data from the memory region.

19. The computer system of claim 11 , further comprising:

sending the first message to a base board management function running on the BMC, when the first message is not directed to the storage service or fabric service running on the host.

20. A non-transitory computer-readable medium storing computer executable code for operating a computer system, the computer system including a baseboard management controller (BMC) and a host of the BMC, comprising code to:

receive, at the BMC, a first message from a first remote device on a management network;

determine, at the BMC, whether the first message is directed to a storage service or fabric service executed on a main processor of a storage controller of the host, the host being a storage device, the storage controller including a Remote Direct Memory Access (RDMA) controller that is in communication with the main processor through an internal communication channel of the storage controller, the RDMA controller being managed by the storage service;

extract a service management command from the first message, when the first message is directed to the storage service or fabric service; and

send, through a BMC communication channel to the host, a second message containing the service management command to the host, the BMC communication channel established for communicating baseboard management commands between the BMC and the host.

Assignments (4)
PATENT SECURITY AGREEMENT Recorded Oct 23, 2024
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: BAIN CAPITAL CREDIT, LP, AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 069229/0834 →
RELEASE OF SECURITY INTEREST Recorded Oct 17, 2024
From: MIDCAP FINANCIAL TRUST
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 069205/0948 →
SECURITY INTEREST Recorded Apr 30, 2024
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: MIDCAP FINANCIAL TRUST, AS COLLATERAL AGENT
Reel/Frame 067274/0834 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 10, 2020
From: BHATIA, ANURAG; MESSER, JASON; MAITY, SANJOY
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 053178/0552 →