IP Library Granted Patent US 11,570,282
Granted Patent B2
US 11,570,282 · App. 16/686,825 · Granted Jan 31, 2023

Using high speed data transfer protocol

Inventors: Douglas E. LeCrone (Hopkinton, MA); Paul A. Linstead (Shrewsbury, MA)
Assignee: EMC IP Holding Company LLC
H04L69/163H04L67/1097H04L69/161H04L69/166
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,570,282
App. No.
16/686,825
Granted
Jan 31, 2023
Kind
B2
Abstract

Using high speed data transfer protocol to transfer data between a host and a storage system includes determining if a portion of data is a candidate for being transferred using the high speed data transfer protocol if the portion is not a candidate for high speed data transfer, transferring the data using a relatively low speed data transfer protocol if the portion is a candidate for high speed data transfer, attempting to transfer the data using the high speed data transfer protocol, and if transferring the data using the high speed data transfer protocol is unsuccessful, transferring the data using the relatively low speed data transfer protocol. The high speed data transfer protocol may use a first connection and the relatively low speed data transfer protocol may use a second connection. The first connection may be a PCIe or InfiniBand connection. The second connection may be a FICON connection.

Claims (32)

1. A method of using high speed data transfer protocol to transfer data between a host and a storage system, comprising:

determining if a portion of data is a candidate for being transferred using the high speed data transfer protocol by determining if the portion of the data has been preloaded into the cache memory of the storage system in anticipation of the portion of the data needing to be accessed by the host or if the portion of the data has been recently accessed by the host, wherein the storage system is a stand-alone device coupled to the host and wherein data is transferred between the host and the storage system in a mixed mode that provides for some of the data to be transferred to the storage system using the high speed data transfer protocol and some of the data is transferred to the storage system using a relatively low speed data transfer protocol;

if the portion of the data is not a candidate for high speed data transfer, transferring the portion of the data using the relatively low speed data transfer protocol to transfer the data via a low speed connection from the host to the storage system;

if the portion of the data is a candidate for high speed data transfer, attempting to transfer the portion of the data using the high speed data transfer protocol to transfer the data via a high speed connection from the host to the storage system; and

if transferring the portion of the data using the high speed data transfer protocol is unsuccessful, transferring the portion of the data using the relatively low speed data transfer protocol to transfer the data via the low speed connection from the host to the storage system.

2. A method, according to claim 1 , wherein the high speed data transfer protocol is zHyperlink.

3. A method, according to claim 1 , wherein the relatively low speed data transfer protocol is zHPF.

4. A method, according to claim 1 , wherein the high speed connection is one of: a PCIe connection or an InfiniBand connection.

5. A method, according to claim 1 , wherein the low speed connection is an ANSI FC-SB-3 Single-Byte Command Code Sets-3 Mapping Protocol for Fibre Channel connection.

6. A method, according to claim 1 , wherein relatively large portions of data are split up into smaller portions that are examined for possible transfer using the high speed data transfer protocol.

7. A method, according to claim 1 , wherein a drivers layer on the host determines if a portion of the data is a candidate for being transferred using the high speed data transfer protocol.

8. A non-transitory computer readable medium, according to claim 1 , wherein a drivers layer on the host determines if a portion of the data is a candidate for being transferred using the high speed data transfer protocol.

9. A method, according to claim 1 , wherein determining if the portion of the data has been preloaded into the cache memory of the storage system includes determining if related blocks of data have already been accessed by the host.

10. A non-transitory computer readable medium containing software that uses high speed data transfer protocol to transfer data between a host and a storage system, the software comprising:

executable code that determines if a portion of data is a candidate for being transferred using the high speed data transfer protocol by determining if the portion of the data has been preloaded into the cache memory of the storage system in anticipation of the portion of the data needing to be accessed by the host or if the portion of the data has been recently accessed by the host, wherein the storage system is a stand-alone device coupled to the host and wherein data is transferred between the host and the storage system in a mixed mode that provides for some of the data to be transferred to the storage system using the high speed data transfer protocol and some of the data is transferred to the storage system using a relatively low speed data transfer protocol;

executable code that transfers the portion of the data using the relatively low speed data transfer protocol to transfer the data via a low speed connection from the host to the storage system if the portion of the data is not a candidate for high speed data transfer;

executable code that attempts to transfer the portion of the data using the high speed data transfer protocol to transfer the data via a high speed connection from the host to the storage system if the portion of the data is a candidate for high speed data transfer; and

executable code that transfers the portion of the data using the relatively low speed data transfer protocol to transfer the data via the low speed connection from the host to the storage system if transferring the portion of the data using the high speed data transfer protocol is unsuccessful.

11. A non-transitory computer readable medium, according to claim 10 , wherein the high speed data transfer protocol is zHyperlink.

12. A non-transitory computer readable medium, according to claim 10 , wherein the relatively low speed data transfer protocol is zHPF.

13. A non-transitory computer readable medium, according to claim 10 , wherein the high speed connection is one of: a PCIe connection or an InfiniBand connection.

14. A non-transitory computer readable medium, according to claim 10 , wherein the low speed connection is an ANSI FC-SB-3 Single-Byte Command Code Sets-3 Mapping Protocol for Fibre Channel connection.

15. A non-transitory computer readable medium, according to claim 10 , wherein relatively large portions of data are split up into smaller portions that are examined for possible transfer using the high speed data transfer protocol.

16. A non-transitory computer readable medium, according to claim 10 , wherein determining if the portion of the data has been preloaded into the cache memory of the storage system includes determining if related blocks of data have already been accessed by the host.

17. A storage system, comprising:

one or more physical storage units coupled to one or more disk adapters;

at least one host adapter coupled to the one or more disk adaptors;

at least one zHyperlink board coupled to the one or more disk adapters; and

at least one processor provided on the one or more disk adapters, the at least one host adapter, or both, the at least one processor having a non-transitory computer readable medium containing software that uses high speed data transfer protocol to transfer data between a host and a storage system, the software including executable code that determines if a portion of data is a candidate for being transferred using the high speed data transfer protocol by determining if the portion of the data has been preloaded into the cache memory of the storage system in anticipation of the portion of the data needing to be accessed by a host coupled to the storage system or if the portion of the data has been recently accessed by the host, wherein the storage system is a stand-alone device coupled to the host and wherein data is transferred between the host and the storage system in a mixed mode that provides for some of the data to be transferred to the storage system using the high speed data transfer protocol and some of the data is transferred to the storage system using a relatively low speed data transfer protocol, executable code that transfers the portion of the data using the relatively low speed data transfer protocol to transfer the data via a low speed connection from the host to the storage system if the portion of the data is not a candidate for high speed data transfer, executable code that attempts to transfer the portion of the data using the high speed data transfer protocol to transfer the data via a high speed connection from the host to the storage system if the portion of the data is a candidate for high speed data transfer, and executable code that transfers the portion of the data using the relatively low speed data transfer protocol to transfer the data via the low speed connection from the host to the storage system if transferring the portion of the data using the high speed data transfer protocol is unsuccessful.

18. A storage system, according to claim 17 , wherein determining if the portion of the data has been preloaded into the cache memory of the storage system includes determining if related blocks of data have already been accessed by the host.

19. A storage system, according to claim 17 , wherein the high speed data transfer protocol is zHyperlink and the relatively low speed data transfer protocol is zHPF.

20. A storage system, according to claim 17 , wherein the high speed connection is one of: a PCIe connection or an InfiniBand connection and the low speed connection is an ANSI FC-SB-3 Single-Byte Command Code Sets-3 Mapping Protocol for Fibre Channel connection.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 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 060438/0742 →
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 (052216/0758) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0680 →
RELEASE OF SECURITY INTEREST AF REEL 052243 FRAME 0773 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0152 →
SECURITY INTEREST Recorded Jun 5, 2020
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 053311/0169 →
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 26, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052243/0773 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 24, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052216/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2019
From: LECRONE, DOUGLAS E.; LINSTEAD, PAUL A.
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 051038/0525 →