IP Library Granted Patent US 8,539,109
Granted Patent B1
US 8,539,109 · App. 11/075,970 · Granted Sep 17, 2013

Third party direct memory access protocol extension to separate data path from control path

Inventors: Whay Sing Lee (Milpitas, CA); Richard W. Meyer (Redwood City, CA); Charles D. Binford (Wichita, KS); Rodney A. Dekoning (Wichita, KS); William Stronge (Westford, MA)
Assignee: Oracle America, Inc.
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 8,539,109
App. No.
11/075,970
Granted
Sep 17, 2013
Kind
B1
Abstract

A network communication system and method providing a communication protocol extension for direct memory access operations allowing the separation of the command and data paths. The identification of the communication path to a third-party device is provided to a direct-memory-access initiator allowing the passing of data directly to the third-party device.

Claims (32)

1. A network system for separating control path and data path comprising:

a first node, communicatively linked to an interconnection fabric, for initiating an operation command;

a second node, logically connected to the first node and communicatively linked to the interconnection fabric, for receiving the operation command and conducting a third-party remote direct memory access operation by generating a remote direct memory access request based on the operation command, and sending the remote direct memory access request;

a third node, logically connected to the second node and communicatively linked to the interconnection fabric, for receiving the remote direct memory access request;

a first communication path in the interconnection fabric for communicating the operation command between the first node and the second node; and

a second communication path in the interconnection fabric for communicating the remote direct memory access request between the second node and third node;

wherein the second node responds to the first node with a status report upon the completion of the third-party remote direct memory access operation.

2. The system of claim 1 , wherein the operation command further comprises a first access privileges specifier identifying the access privileges between the first node and the second node.

3. The system of claim 1 , wherein the operation command further comprises:

an access privileges specifier identifying the access privileges between the first node and the second node; and

a communication path identifier identifying the first communication path.

4. The system of claim 1 , wherein the remote direct memory access request further comprises:

an access privileges specifier identifying the access privileges between the second node and the third node; and

a communication path identifier identifying the second communication path.

5. The system of claim 1 , further comprising a third-party remote direct memory access map, logically connected to the second node, containing a list of one or more access privilege specifier and communication path identifier pairs, wherein each access privilege specifier and communication identifier pair is associated with a second access privilege specifier and a second communication path identifier pair.

6. The system of claim 5 , wherein the operation command further comprises a first access privileges specifier and communications path identifier pair, and the third-party remote direct memory access request further comprises a second access privileges specifier and communications path identifier pair selected from the third-party remote direct memory access map.

7. A network system for separating control and data paths within a server system, comprising:

an interconnection fabric for communicatively linking one or more devices in a server system;

a first server of the server system initiating a read or write command;

a second server of the server system linked to the first server via the interconnection fabric, wherein the second server receives the read or write command over a first communication path of the interconnection fabric and sends a remote direct memory access request generated based on the read or write command over the interconnection fabric; and

a third server of the server system linked to the second server via the interconnection fabric, wherein the third server receives the remote direct memory access request over a second communication path of the interconnection fabric, whereby the read or write command and the remote direct memory access request are transferred in the interconnection fabric over separate paths.

8. A network system for separating control path and data path comprising:

a first node, communicatively linked to an interconnection fabric, for initiating an operation command;

a second node, logically connected to the first node and communicatively linked to the interconnection fabric, for receiving the operation command and conducting a third-party remote direct memory access operation by generating a remote direct memory access request based on the operation command, and sending the remote direct memory access request;

a third node, logically connected to the second node and communicatively linked to the interconnection fabric, for receiving the remote direct memory access request;

a first communication path in the interconnection fabric for communicating the operation command between the first node and the second node; and

a second communication path in the interconnection fabric for communicating the remote direct memory access request between the second node and third node;

wherein the operation command further comprises a communication path identifier identifying the first communication path and wherein the remote direct memory access request further comprises a communication path identifier identifying the second communication path.

9. The network system of claim 8 , wherein the second node responds to the first node with a status report upon the completion of the third-party remote direct memory access operation.

10. The network system of claim 8 , wherein the operation command further comprises an access privileges specifier identifying the access privileges between the first node and the second node; and wherein the remote direct memory access request further comprises an access privileges specifier identifying the access privileges between the second node and the third node.

11. The network system of claim 8 , further comprising a third-party remote direct memory access map, logically connected to the second node, containing a list of one or more access privilege specifier and communication path identifier pairs, wherein each access privilege specifier and communication identifier pair is associated with a second access privilege specifier and a second communication path identifier pair and further wherein the operation command further comprises a first access privileges specifier and communications path identifier pair and the third-party remote direct memory access request further comprises a second access privileges specifier and communications path identifier pair selected from the third-party remote direct memory access map.

12. The network system of claim 8 , wherein the second node determines the second communication path based on a looking up a communications path identifier in the operations command in a list of path identifier and communication path pairs stored in memory accessible within the network system.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037311/0206 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 9, 2005
From: LEE, WHAY SING; MEYER, RICHARD W.; BINFORD, CHARLES D.; DEKONING, RODNEY A.; STRONGE, WILLIAM
To: SUN MICROSYSTEMS, INC., A DELAWARE CORPORATION
Reel/Frame 016376/0211 →