JP2018504689A - リモート・ダイレクト・メモリ・アクセス操作を実行するデータ転送方法、システム、およびプログラム - Google Patents
リモート・ダイレクト・メモリ・アクセス操作を実行するデータ転送方法、システム、およびプログラム Download PDFInfo
- Publication number
- JP2018504689A JP2018504689A JP2017533309A JP2017533309A JP2018504689A JP 2018504689 A JP2018504689 A JP 2018504689A JP 2017533309 A JP2017533309 A JP 2017533309A JP 2017533309 A JP2017533309 A JP 2017533309A JP 2018504689 A JP2018504689 A JP 2018504689A
- Authority
- JP
- Japan
- Prior art keywords
- protocol header
- file
- data
- transport layer
- memory device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0661—Format or protocol conversion arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/326—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the transport layer [OSI layer 4]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Communication Control (AREA)
- Bus Control (AREA)
Abstract
Description
12、28:中央処理ユニット(CPU)
14:ストレージ・デバイス
16、26:メモリ・デバイス
18:通信ポート
20:通信ネットワーク
22:コンピュータ・システム
24:サーバ
30:大容量記憶装置
32:直接データ経路
34:トランスポート層
36:アプリケーション層
200:変換
202:ファイル・プロトコル・デバイス
204:ファイラ
206、316:ブロック・プロトコル・デバイス
208、302、402:ユーザ空間
210:ファイル・システム
212:ファイル入力/出力(I/O)機能
214:ファイルからブロックへのヘッダ変換操作
216:RDMAブロックI/O機能
300、400:要求
304、404:カーネル空間
306:ファイルシステム・コア
308、322:リモート・データ・メモリ・アクセス(RDMA)操作
310、410:ネットワーク・ファイル・システム(NFS)サーバ
312:仮想ファイル・システム(VFS)
314:カーネル拡張
408:NFS RDMA操作
500、600:方法
Claims (21)
- メモリ・デバイスによる、リモート・ダイレクト・メモリ・アクセス(RDMA)操作における効率的なデータ転送のための方法であって、
前記データのファイル・プロトコル・ヘッダをブロック・プロトコル・ヘッダに置き換えることを含み、前記ブロック・プロトコル・ヘッダは、中央処理ユニット(CPU)による外部からの操作なしに、ソースからターゲットまでの、トランスポート層を通る直接データ経路上での転送を可能にする、方法。 - 前記ファイル・プロトコル・ヘッダを置き換えることと併せて、関連する前記データのチャンクへの少なくとも1つのポインタを設定することをさらに含む、請求項1に記載の方法。
- 前記ファイル・プロトコル・ヘッダが表すファイルのディスク割り当てスキームを解決することをさらに含む、請求項1に記載の方法。
- 前記ブロック・プロトコル・ヘッダを生成することをさらに含む、請求項3に記載の方法。
- 前記ファイル・プロトコル・ヘッダを構文解析することをさらに含む、請求項1に記載の方法。
- 入ってくるファイル・プロトコル要求を受け取ることをさらに含む、請求項1に記載の方法。
- 前記トランスポート層を通る前記直接データ経路を開始することをさらに含み、前記直接データ経路上での前記データの伝送を容易にするように、前記トランスポート層はアプリケーション層を認識するように構成され、前記アプリケーション層はトランスポート層を認識するように構成される、請求項1に記載の方法。
- リモート・ダイレクト・メモリ・アクセス(RDMA)操作における効率的なデータ転送のためのシステムであって、
メモリ・デバイスを含み、前記メモリ・デバイスは、
前記データのファイル・プロトコル・ヘッダをブロック・プロトコル・ヘッダに置き換え、前記ブロック・プロトコル・ヘッダは、中央処理ユニット(CPU)による外部からの操作なしに、ソースからターゲットまでの、トランスポート層を通る直接データ経路上での転送を可能にする、システム。 - 前記メモリ・デバイスは、前記ファイル・プロトコル・ヘッダを置き換えることと併せて、関連する前記データのチャンクへの少なくとも1つのポインタを設定する、請求項8に記載のシステム。
- 前記メモリ・デバイスは、前記ファイル・プロトコル・ヘッダが表すファイルのディスク割り当てスキームを解決する、請求項8に記載のシステム。
- 前記メモリ・デバイスは、前記ブロック・プロトコル・ヘッダを生成する、請求項10に記載のシステム。
- 前記メモリ・デバイスは、前記ファイル・プロトコル・ヘッダを構文解析する、請求項8に記載のシステム。
- 前記メモリ・デバイスは、入ってくるファイル・プロトコル要求を受け取る、請求項8に記載のシステム。
- 前記メモリ・デバイスと通信するトランスポート層及びアプリケーション層をさらに含み、前記メモリ・デバイスは、前記トランスポート層を通る前記直接データ経路を開始し、前記直接データ経路上での前記データの伝送を容易にするように、前記トランスポート層はアプリケーション層を認識するように構成され、前記アプリケーション層はトランスポート層を認識するように構成される、請求項8に記載のシステム。
- メモリ・デバイスによる、リモート・ダイレクト・メモリ・アクセス(RDMA)操作における効率的なデータ転送のためのコンピュータ・プログラムであって、前記コンピュータ・プログラムは、コンピュータ可読プログラム・コード部分を含み、前記コンピュータ可読プログラム・コード部分は、
前記データのファイル・プロトコル・ヘッダをブロック・プロトコル・ヘッダに置き換える第1の実行可能部分を含み、前記ブロック・プロトコル・ヘッダは、中央処理ユニット(CPU)による外部からの操作なしに、ソースからターゲットまでの、トランスポート層を通る直接データ経路上での転送を可能にする、コンピュータ・プログラム。 - 前記ファイル・プロトコル・ヘッダを置き換えることと併せて、関連する前記データのチャンクへの少なくとも1つのポインタを設定する第2の実行可能部分をさらに含む、請求項15に記載のコンピュータ・プログラム。
- 前記ファイル・プロトコル・ヘッダが表すファイルのディスク割り当てスキームを解決する第2の実行可能部分をさらに含む、請求項15に記載のコンピュータ・プログラム。
- 前記ブロック・プロトコル・ヘッダを生成する第3の実行可能部分をさらに含む、請求項17に記載のコンピュータ・プログラム。
- 前記ファイル・プロトコル・ヘッダを構文解析する第2の実行可能部分をさらに含む、請求項15に記載のコンピュータ・プログラム。
- 入ってくるファイル・プロトコル要求を受け取る第2の実行可能部分をさらに含む、請求項15に記載のコンピュータ・プログラム。
- 前記トランスポート層を通る前記直接データ経路を開始する第2の実行可能部分をさらに含み、前記直接データ経路上での前記データの伝送を容易にするように、前記トランスポート層はアプリケーション層を認識するように構成され、前記アプリケーション層はトランスポート層を認識するように構成される、請求項15に記載のコンピュータ・プログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/589,758 | 2015-01-05 | ||
US14/589,758 US10469581B2 (en) | 2015-01-05 | 2015-01-05 | File storage protocols header transformation in RDMA operations |
PCT/EP2015/080915 WO2016110410A1 (en) | 2015-01-05 | 2015-12-22 | File storage protocols header transformation in rdma operations |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2018504689A true JP2018504689A (ja) | 2018-02-15 |
JP2018504689A5 JP2018504689A5 (ja) | 2020-01-23 |
JP6737981B2 JP6737981B2 (ja) | 2020-08-12 |
Family
ID=55068987
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017533309A Active JP6737981B2 (ja) | 2015-01-05 | 2015-12-22 | リモート・ダイレクト・メモリ・アクセス操作を実行するデータ転送方法、システム、およびプログラム |
Country Status (5)
Country | Link |
---|---|
US (1) | US10469581B2 (ja) |
JP (1) | JP6737981B2 (ja) |
DE (1) | DE112015005887T5 (ja) |
GB (1) | GB2550308B (ja) |
WO (1) | WO2016110410A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10331613B2 (en) | 2015-10-30 | 2019-06-25 | Netapp, Inc. | Methods for enabling direct memory access (DMA) capable devices for remote DMA (RDMA) usage and devices therof |
US11146416B2 (en) * | 2015-12-24 | 2021-10-12 | Intel Corporation | Universal interface for sensor devices |
CN117651084B (zh) * | 2024-01-26 | 2024-04-19 | 井芯微电子技术(天津)有限公司 | 一种异构协议报文处理方法、装置、电子设备及存储介质 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6226680B1 (en) | 1997-10-14 | 2001-05-01 | Alacritech, Inc. | Intelligent network interface system method for protocol processing |
US20030126247A1 (en) * | 2002-01-02 | 2003-07-03 | Exanet Ltd. | Apparatus and method for file backup using multiple backup devices |
US7181439B1 (en) | 2003-04-25 | 2007-02-20 | Network Appliance, Inc. | System and method for transparently accessing a virtual disk using a file-based protocol |
US7685254B2 (en) * | 2003-06-10 | 2010-03-23 | Pandya Ashish A | Runtime adaptable search processor |
US20060034283A1 (en) | 2004-08-13 | 2006-02-16 | Ko Michael A | Method and system for providing direct data placement support |
US7797440B2 (en) * | 2005-03-09 | 2010-09-14 | Vudu, Inc. | Method and system for managing objects distributed in a network |
US8073899B2 (en) * | 2005-04-29 | 2011-12-06 | Netapp, Inc. | System and method for proxying data access commands in a storage system cluster |
US7761766B2 (en) * | 2005-11-15 | 2010-07-20 | I365 Inc. | Methods and apparatus for modifying a backup data stream including logical partitions of data blocks to be provided to a fixed position delta reduction backup application |
US9331955B2 (en) | 2011-06-29 | 2016-05-03 | Microsoft Technology Licensing, Llc | Transporting operations of arbitrary size over remote direct memory access |
US8982703B2 (en) * | 2012-12-18 | 2015-03-17 | Mellanox Technologies Ltd. | Routing support for lossless data traffic |
-
2015
- 2015-01-05 US US14/589,758 patent/US10469581B2/en active Active
- 2015-12-22 JP JP2017533309A patent/JP6737981B2/ja active Active
- 2015-12-22 DE DE112015005887.7T patent/DE112015005887T5/de active Pending
- 2015-12-22 WO PCT/EP2015/080915 patent/WO2016110410A1/en active Application Filing
- 2015-12-22 GB GB1711856.3A patent/GB2550308B/en active Active
Also Published As
Publication number | Publication date |
---|---|
GB2550308B (en) | 2019-05-01 |
US20160197992A1 (en) | 2016-07-07 |
US10469581B2 (en) | 2019-11-05 |
JP6737981B2 (ja) | 2020-08-12 |
DE112015005887T5 (de) | 2017-09-28 |
GB2550308A (en) | 2017-11-15 |
GB201711856D0 (en) | 2017-09-06 |
WO2016110410A1 (en) | 2016-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108228082B (zh) | 存储系统和用于存储控制的方法 | |
US8793448B2 (en) | Transparent data migration within a computing environment | |
US20140289462A9 (en) | Processor agnostic data storage in a pcie based shared storage environment | |
US10678437B2 (en) | Method and device for managing input/output (I/O) of storage device | |
US9256377B2 (en) | Consistent distributed storage communication protocol semantics in a clustered storage system | |
US9654497B2 (en) | Virus-release-date-based priority virus scanning | |
WO2017162175A1 (zh) | 一种数据传输方法及装置 | |
US20110258290A1 (en) | Bandwidth-Proportioned Datacenters | |
US9442672B2 (en) | Replicating data across controllers | |
US9420033B2 (en) | Managing file transfer commands | |
JP6737981B2 (ja) | リモート・ダイレクト・メモリ・アクセス操作を実行するデータ転送方法、システム、およびプログラム | |
US9460182B2 (en) | Networking-assisted input/output order preservation for data replication | |
US20070121621A1 (en) | Integrated active-active fibre channel capability in SATA and SAS devices | |
CN112783419B (zh) | 分布式存储方法及装置、电子设备和存储介质 | |
US11038798B2 (en) | Storing data in association with a key within a hash table and retrieving the data from the hash table using the key | |
US10841378B2 (en) | Storage network tiering | |
US9715477B2 (en) | Shared-bandwidth multiple target remote copy | |
US9396023B1 (en) | Methods and systems for parallel distributed computation | |
US11194742B2 (en) | Detecting potentially overlapping input/output queues | |
US7698424B1 (en) | Techniques for presenting multiple data storage arrays to iSCSI clients as a single aggregated network array | |
Dalessandro et al. | iSER storage target for object-based storage devices | |
US20180337883A1 (en) | In-band ldap over ficon | |
US20070121633A1 (en) | Active-active fibre channel capability in SATA and SAS devices | |
US20230026565A1 (en) | Method of inputting and outputting data, electronic device and computer program product | |
US20220244878A1 (en) | Method, device, and computer program product for managing storage system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170713 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180817 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190710 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190716 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20190912 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20191113 |
|
A524 | Written submission of copy of amendment under article 19 pct |
Free format text: JAPANESE INTERMEDIATE CODE: A524 Effective date: 20191113 |
|
RD12 | Notification of acceptance of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7432 Effective date: 20191113 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20191114 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20200414 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20200420 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20200420 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200417 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6737981 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |