IP Library Granted Patent US 10,019,401
Granted Patent B1
US 10,019,401 · App. 15/087,978 · Granted Jul 10, 2018

Virtualized target channel adapter

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 10,019,401
App. No.
15/087,978
Granted
Jul 10, 2018
Kind
B1
Abstract

A target channel adapter in configured to generate and maintain for each of a plurality of endpoints a corresponding set of metadata. Each endpoint is associated with a corresponding set of storage modules and the set of metadata corresponding to each endpoint is associated with accessing storage locations in the set of storage modules associated with that endpoint. The target channel adapter is configured to use the set of metadata to provide to a remote client associated with a media access controller access to data stored in one or more of said storage modules.

Claims (38)

1. A system, comprising:

a plurality of endpoints;

a media access controller, wherein the media access controller is associated with an Ethernet interface and the plurality of endpoints are each PCIe endpoints, and wherein the Ethernet interface is exposed separately and independently through a virtualized RoCE Engine to each PCIe endpoint;

a target channel adapter coupled with the plurality of endpoints and coupled with the media access controller, wherein the target channel adapter is a transport layer engine logic circuit configured to:

generate and maintain for each of the plurality of endpoints a corresponding set of metadata,

wherein each endpoint is associated with a corresponding set of storage modules and the set of metadata corresponding to each endpoint is associated with accessing storage locations in the set of storage modules associated with that endpoint; and

use the set of metadata and a memory access logic shared across the plurality of endpoints to provide to a remote client associated with the media access controller access to data stored in one or more of said storage modules.

2. The system of claim 1 , wherein each PCIe endpoint is coupled with a four-lane PCIe Gen3 switch.

3. The system of claim 1 , wherein the system is exposed separately and independently at least in part by using a separate Physical Function.

4. The system of claim 1 , wherein providing to the remote client access to data is done over RDMA.

5. The system of claim 1 , wherein the corresponding set of metadata for each Ethernet PCIe pair comprises an RoCE context state.

6. The system of claim 5 , wherein the RoCE context state comprises one or more of the following: a set of queue-pairs and a table.

7. The system of claim 5 , wherein the transport layer engine logic circuit configured to use the set of metadata and a memory access logic comprises the transport layer engine logic circuit being configured to:

receive a request for access to a requested storage module;

map the request to an assigned endpoint associated with the requested storage module;

retrieve the RoCE context state associated with the assigned endpoint; and

service the request using the RoCE context state.

8. The system of claim 1 , wherein a client bus associated with the media access controller is different from a storage bus associated with the plurality of endpoints.

9. The system of claim 8 , wherein the client bus is associated with an Ethernet protocol and the storage bus is PCIe.

10. The system of claim 9 , wherein the Ethernet protocol is at least one of the following: 10 GbE, 25 GbE, 40 GbE, and 100 GbE.

11. The system of claim 1 , wherein the media access controller is coupled to four transceivers.

12. The system of claim 1 , further comprising:

a controller module coupled with the plurality of endpoints and configured to direct control requests; and

a memory buffer coupled with the target channel adapter and configured to accept data associated with the push transfer.

13. The system of claim 12 , wherein the controller module is further configured to direct a read request to a push read transfer, wherein the push read transfer comprises using the controller module only for control traffic.

14. The system of claim 13 , wherein the controller module is further configured to direct a read request to a push read transfer, wherein the push read transfer comprises using the controller module to push data from a storage module to a RDMA accessible memory associated with a client associated with the media access controller.

15. The system of claim 14 , wherein using the controller module to push data comprises first writing data from one or more storage modules to the memory buffer over PCIe, and second writing data from the memory buffer to the client over Ethernet.

16. The system of claim 1 , wherein a client associated with the media access controller can address each of the plurality of endpoints as a different device.

17. A method, comprising:

configuring a target channel adapter to generate and maintain for each of a plurality of endpoints a corresponding set of metadata;

wherein the plurality of endpoints are each PCIe endpoints, and wherein an Ethernet interface is exposed separately and independently through a virtualized RoCE Engine to each PCIe endpoint;

wherein each endpoint is associated with a corresponding set of storage modules and the set of metadata corresponding to each endpoint is associated with accessing storage locations in the set of storage modules associated with that endpoint; and

wherein the target channel adapter is configured to use the set of metadata to provide to a remote client associated with a media access controller access to data stored in one or more of said storage modules.

18. A computer program product, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

configuring a target channel adapter to generate and maintain for each of a plurality of endpoints a corresponding set of metadata;

wherein the plurality of endpoints are each PCIe endpoints, and wherein an Ethernet interface is exposed separately and independently through a virtualized RoCE Engine to each PCIe endpoint;

wherein each endpoint is associated with a corresponding set of storage modules and the set of metadata corresponding to each endpoint is associated with accessing storage locations in the set of storage modules associated with that endpoint; and

wherein the target channel adapter is configured to use the set of metadata to provide to a remote client associated with a media access controller access to data stored in one or more of said storage modules.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (047648/0422) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060160/0862 →
RELEASE OF SECURITY INTEREST AT REEL 047648 FRAME 0346 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058298/0510 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 12, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 047648/0422 →
PATENT SECURITY AGREEMENT (CREDIT) Recorded Oct 12, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047648/0346 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 3, 2017
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 041872/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2016
From: WILDE, TODD
To: EMC CORPORATION
Reel/Frame 038973/0344 →