IP Library Granted Patent US 9,680,931
Granted Patent B1
US 9,680,931 · App. 14/329,379 · Granted Jun 13, 2017

Message passing for low latency storage networks

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 9,680,931
App. No.
14/329,379
Granted
Jun 13, 2017
Kind
B1
Abstract

A method of communication between networked devices in a local storage area network includes forming a message for in-band communication within a local storage area network. The message includes at least one major task and one or more associated sub tasks for execution within the storage area network. The method further includes establishing a first communication link at least between a first networked device and a second networked device in response to the formation of the message; transmitting the message from the first networked device to at least the second networked device within the local storage area network; and in response to receiving the message, executing the sub tasks within the message with a processor to complete the major task and support local storage area network functionality.

Claims (52)

1. A method of communication between networked devices in a storage area network, the method comprising:

forming a message for in-band communication within the storage area network, the message including at least one major task and one or more associated sub-tasks for execution within the storage area network, the message further including a priority indicator that indicates whether: (i) the message is to be treated with a high priority through the storage area network by being passed through a high priority queue within the storage area network or (ii) the message is to be treated with a normal priority through the storage area network and bypass the high priority queue;

establishing a first communication link between a first networked device and a second networked device in response to the formation of the message;

transmitting the message from the first networked device to at least the second networked device;

in response to receiving the message, executing the one or more sub-tasks within the message with a processor to complete the major task and support local storage area network functionality; and

in response to the one or more sub-tasks being completed by the second networked device: (i) establishing a second communication link between the first networked device and the second networked device and (ii) transmitting a task complete response from the second networked device to at least the first networked device, the task complete response comprising another priority indicator indicating either a high priority acknowledgement or a normal priority acknowledgement.

2. The method of claim 1 , wherein

the message is encoded as a type-length-value (TLV) message.

3. The method of claim 2 , wherein

each of the at least one major task comprises a major task type, a major task length, and a major task value; and

each of the one or more sub-tasks associated with the at least one major task comprises a sub-task type, a sub-task length, and a sub-task value.

4. The method of claim 1 , wherein

the message is communicated in-band between the first networked device and the second networked device by using a Fibre Channel common transport (FCCT) protocol.

5. The method of claim 1 , wherein

the message is communicated in-band between the first networked device and the second networked device by using a Fibre Channel over Ethernet (FCOE) protocol.

6. The method of claim 1 , wherein

the first networked device is a first core processor in a server and the second networked device is a second core processor in the server; and

the message is formed, the first communication link is established, and the message is transmitted through a host adapter of the first networked device.

7. The method of claim 1 , wherein

the first networked device is a master server and the second networked device is a slave server;

the message is formed, the first communication link is established, and the message is transmitted by a first host adapter for the master server; and

the message is received by a second host adapter for the slave server and the one or more sub-tasks executed by the processor in the slave server.

8. The method of claim 1 , wherein

the first networked device is a master server and the second networked device is a storage array, a flash appliance, or a tiered array;

the message is formed, the communication link is established, and the message is transmitted by a first host adapter of the first networked device; and

the message is received by a second host adapter in the storage array, the flash appliance, or the tiered array, and the one or more sub-tasks of the message executed by the processor therein.

9. The method of claim 1 , further comprising:

retiring the first communication link between the first networked device and the second networked device such that the first networked device is released to execute other tasks.

10. The method of claim 1 , further comprising

retiring the second communication link at least between the first networked device and the second networked device such that the first and second networked devices are released to execute other tasks.

11. A local storage network system comprising:

a first server including a first processor to execute instructions to serve a first plurality of clients with data stored in the local storage network system;

a second server including a second processor to execute instructions to serve a second plurality of clients with data stored in the local storage network system;

one or more Fibre Channel host controllers coupled between the first processor and the second processor, each of the one or more Fibre Channel host controllers including a control processor to:

form one or more Storage Area Network (SAN) messages for in-band communication within the local storage network system, the one or more SAN messages include at least one major task and one or more associated sub-tasks for execution within the local storage network system by the second server;

establish a communication link between the first server and the second server;

communicate in-band the one or more SAN messages between the first server and the second server by using the communication link, the one or more SAN messages comprising a priority indicator that indicates whether: (i) the one or more SAN messages are to be treated with a high priority through the local storage network system by being passed through a high priority queue within the local storage network system or (ii) the one or more SAN messages are to be treated with a normal priority through the local storage network system and bypass the high priority queue; and

in response to the one or more sub-tasks being completed by the second server: (i) establishing a second communication link at least between the first server and the second server and (ii) transmitting a task complete response from the second server to the first server, the task complete response comprising another priority indicator indicating either a high priority acknowledgement or a normal priority acknowledgement.

12. A server that facilitates communication between networked devices in a storage area network, the server comprising:

a processor; and

a memory coupled to the processor, the memory comprising instructions that, when executed by the processor, enable the processor to:

form a message for in-band communication within the storage area network, the message including at least one major task and one or more associated sub-tasks for execution within the storage area network, the message further including a priority indicator that indicates that the message is to be treated with a high priority through the storage area network and, therefore, be passed through a high priority queue of the storage area network;

cause a first communication link to be established between a first networked device and a second networked device in response to the forming of the message;

cause the message to be transmitted from the first networked device to the second networked device; and

cause the sub-tasks within the message to be executed to complete the at least one major task and to support storage area network functionality; and

in response to the one or more sub-tasks being completed by the second networked device: (i) establish a second communication link between the first networked device and the second networked device and (ii) transmit a task complete response from the second networked device to the first networked device, the task complete response comprising another priority indicator indicating either a high priority acknowledgement or a normal priority acknowledgement.

13. The server of claim 12 , wherein

the message is encoded as a type-length-value (TLV) message.

14. The server of claim 13 , wherein

the major task comprises a major task type, a major task length, and a major task value; and

each of the one or more sub-tasks associated with the at least one major task comprises a sub-task type, a sub-task length, and a sub-task value.

15. The server of claim 12 , wherein the at least one major task and the one or more associated sub-tasks cause one or more of the following operations to be executed: (i) a server migration; (ii) a cache prefill operation; (iii) a cache auto copy operation; or (iv) a protected write operation.

Assignments (6)
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 047422 FRAME: 0464. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 6, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048883/0702 →
MERGER Recorded Oct 5, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047422/0464 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041710/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037808/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 23, 2015
From: EMULEX CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 036942/0213 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 11, 2014
From: KARNOWSKI, MARK J.; INFANTE, JON
To: EMULEX CORPORATION
Reel/Frame 033300/0782 →