JP5611889B2 - データ転送装置、データ送信システムおよびデータ送信方法 - Google Patents
データ転送装置、データ送信システムおよびデータ送信方法 Download PDFInfo
- Publication number
- JP5611889B2 JP5611889B2 JP2011110650A JP2011110650A JP5611889B2 JP 5611889 B2 JP5611889 B2 JP 5611889B2 JP 2011110650 A JP2011110650 A JP 2011110650A JP 2011110650 A JP2011110650 A JP 2011110650A JP 5611889 B2 JP5611889 B2 JP 5611889B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- file
- read
- unit
- storage 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.)
- Active
Links
Images
Classifications
-
- 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
-
- 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/061—Improving I/O performance
-
- 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/38—Information transfer, e.g. on bus
-
- 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
-
- 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/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- 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/0658—Controller construction 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/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
図1は第1の実施形態に係るデータ送信システムの概略構成を示すブロック図である。点線矢印は制御の流れ、実線矢印はストレージから読み出したデータの流れ、太線矢印はそのうちの送信データの流れを示す。
データ転送装置11は、ストレージ装置13に対してコマンドを発行するコマンド発行部101(第一発行部、第二発行部)、発行したコマンドの応答通知を受け取り、ホストCPU内の該当構成要素(図1の構成例ではメタデータ読み出し指示部202、送信データ読み出し指示部204)に振り分ける通知振り分け部102、ストレージ装置13から読み出されたデータを受け取り必要なデータを抽出する送信データ抽出部103、抽出されたデータをネットワーク14に送信する通信処理部104を有する。通信処理部104は、前述したTOEに相当する。データ転送装置11の具体的な実装の形態としては、FPGA、専用LSIなどが想定され、PCIカード等の通信カードとして実装してもよいが、その限りではない。
第2の実施形態は、データ転送用に複数の通信コネクションが設定され、コネクション毎に独立してフロー制御を行う例を示している。例えばNASのようなネットワークストレージやVODサーバで複数のクライアント端末、あるいは、クライアント端末上の複数のアプリケーションから同時に読み出し要求やコンテンツ配信要求を受けた場合等、複数の独立したコネクションでストレージ装置13からデータを読み出してネットワーク14に送信する動作を可能とする。
Claims (10)
- ブロック単位でデータを管理するストレージ装置に記憶されているファイルのデータを読み出して送信するデータ転送装置であって、
第一ファイルのデータが前記ストレージ装置のどの位置に記憶されているかを示す第一マップ情報を含むメタデータを受け取って前記メタデータを解析することにより前記第一マップ情報を取得する外部のホストCPUにより取得された前記第一マップ情報に基づく前記第一ファイルのデータの読み出し指示に基づき、前記第一ファイルのデータを格納したブロックの読み出しコマンドを生成し、前記読み出しコマンドを前記ストレージ装置に送る発行部と、
前記読み出しコマンドに応じて前記ストレージ装置から読み出されるブロックデータを受け取り、前記外部のホストCPUから前記第一マップ情報を受け取り、前記第一マップ情報に基づき、前記ブロックデータから前記第一ファイルのデータを抽出する送信データ抽出部と、
前記送信データ抽出部により抽出された前記第一ファイルのデータを送信する通信処理部と、
を備えたデータ転送装置。 - 前記外部のホストCPUからの要求を受けて、前記第一マップ情報を含むメタデータの読み出しコマンドを生成し、前記読み出しコマンドを前記ストレージ装置に送る第一発行部をさらに備え、
前記外部のホストCPUは、前記読み出しコマンドに応じて前記ストレージ装置から送出されるメタデータを受け取る
請求項1に記載のデータ転送装置。 - 通信カードとして構成された
ことを特徴とする請求項1または2に記載のデータ転送装置。 - ブロック単位でデータを管理するストレージ装置に記憶されているファイルのデータを送信するデータ送信システムであって、
CPUとデータ転送装置とを備え、
前記CPUは、
前記ストレージ装置に格納された第一ファイルのデータの送信指示を生成する第一アプリ処理部と、
前記送信指示に基づき、前記第一ファイルのデータが前記ストレージ装置上のどの位置に記憶されているかを示す第一マップ情報を含むメタデータの読み出し指示を生成するメタデータ読み出し指示部と、を備え、
前記データ転送装置は
前記メタデータの読み出し指示に基づき、前記メタデータの読み出しコマンドを生成し、前記ストレージ装置に送る第一発行部を備え、
前記CPUは、前記ストレージ装置から返される前記メタデータを受け取って前記メタデータを解析することにより前記第一マップ情報を取得し、前記第一マップ情報に基づき前記第一ファイルのデータの読み出し指示を生成する送信データ読み出し指示部を備え、
前記データ転送装置は、前記第一ファイルのデータの読み出し指示に基づき、前記第一ファイルのデータを格納したブロックの読み出しコマンドを生成し、前記読み出しコマンドを前記ストレージ装置に送る第二発行部と、
前記読み出しコマンドに応じて前記ストレージ装置から読み出されるブロックデータを受け取り、前記第一マップ情報に基づき、前記ブロックデータから前記第一ファイルのデータを抽出する送信データ抽出部と、
前記送信データ抽出部により抽出された前記第一ファイルデータを、送信する通信処理部と、
を備えたデータ送信システム。 - 前記CPUは、
第二アプリ処理部と、
アプリデータ読み出し指示部と、
アプリデータ抽出部と、をさらに備え、
前記第二アプリ処理部は、第二ファイルのデータの取得指示を生成し、
前記第一発行部は、前記取得指示に基づき、前記第二ファイルのデータが前記ストレージ装置上のどの位置に記憶されているかを示す第二マップ情報を含むメタデータの読み出しコマンドを生成して、前記ストレージ装置に送り、
前記アプリデータ読み出し指示部は、前記ストレージ装置から返される前記メタデータを受け取り、前記メタデータを解析することにより前記第二マップ情報を取得し、前記第二マップ情報に基づく前記第二ファイルのデータの読み出し指示を生成し、
前記第二発行部は、前記第二ファイルのデータの読み出し指示に基づき、前記第二ファイルのデータを格納したブロックの読み出しコマンドを生成し、前記読み出しコマンドを前記ストレージ装置に送り、
前記アプリデータ抽出部は、前記ストレージ装置から読み出されるブロックデータを受け取り、前記第二マップ情報に基づき、前記ブロックデータから前記第二ファイルのデータを抽出し、抽出したデータを前記第二アプリ処理部に渡すことを特徴とする請求項4に記載のデータ送信システム。 - 前記データ転送装置は、
フロー制御部と、
データバッファ部と、
バッファ管理部をさらに備え、
前記第一アプリ処理部は、前記第一ファイルのデータを送信するコネクションを指定し、
前記データバッファ部は、コネクション毎のバッファを有し、前記送信データ抽出部により抽出されたデータを、前記第一アプリ処理部により指定されたコネクションに対応するバッファにバッファリングし、
前記通信処理部は、前記データバッファにおける前記バッファから前記データを読み出して送信し、
前記バッファ管理部は、前記指定されたコネクションに対応する前記バッファの空き状態を把握し、
前記フロー制御部は、前記送信データ読み出し指示部による前記送信データ読み出し指示を受け、読み出し指示された前記第一ファイルのデータのうち、まだ読み出されていない、前記空き状態に応じたサイズ分のデータの読み出し指示を生成して、前記第二発行部に送る、
ことを特徴とする請求項4に記載のデータ送信システム。 - 前記CPUは、
第三アプリ処理部と、
アプリデータ書き込み要求部と、
アプリデータ書き込み部と、をさらに備え、
前記第三アプリ処理部は、前記ストレージ装置上に存在しないアプリデータの送信指示を生成し、前記アプリデータを送信するコネクションを指定し、
前記バッファ管理部は、前記第三アプリ処理部により指定されたコネクションに対応するバッファの空き状態を把握し、
前記フロー制御部は、前記バッファの空き状態に応じたサイズ分のデータの書き込み許可信号を生成し、
前記アプリデータ書き込み部は、前記書き込み許可信号に基づいて、前記アプリデータのうち、まだ書き込んでいない前記サイズ分のデータを特定して、前記バッファに書き込み、
前記通信処理部は、前記コネクションに対応するバッファからデータを読み出して送信する、
ことを特徴とする請求項6に記載のデータ送信システム。 - 前記第三アプリ処理部は、前記第一アプリ処理部と同じコネクションを指定する
ことを特徴とする請求項7に記載のデータ送信システム。 - ブロック単位でデータを管理するストレージ装置に記憶されているファイルデータを読み出して送信するデータ送信方法であって、
CPUが前記ストレージ装置に格納された第一ファイルのデータの送信指示を生成するステップと、
前記CPUが、前記送信指示に基づき、前記第一ファイルのデータが前記ストレージ装置上のどの位置に記憶されているかを示す第一マップ情報を含むメタデータの読み出し指示を生成するステップと、
データ転送装置が、前記メタデータの読み出し指示に基づき、前記メタデータの読み出しコマンドを生成し、前記ストレージ装置に送るステップと、
前記CPUが、前記ストレージ装置から返される前記メタデータを受け取って解析することにより前記メタデータに含まれる第一マップ情報を取得し、前記第一マップ情報に基づき前記第一ファイルのデータの読み出し指示を生成するステップと、
前記データ転送装置が、前記第一ファイルのデータの読み出し指示に基づき、前記第一ファイルのデータを格納したブロックの読み出しコマンドを生成し、前記読み出しコマンドを前記ストレージ装置に送るステップと、
前記データ転送装置が、前記読み出しコマンドに応じて前記ストレージ装置から読み出されるブロックデータを受け取り、前記第一マップ情報に基づき、前記ブロックデータから前記第一ファイルのデータを抽出するステップと、
前記データ転送装置が、前記抽出された前記第一ファイルデータを送信するステップと、
を備えたデータ送信方法。 - ブロック単位でデータを管理するストレージ装置に記憶されているファイルのデータを読み出して送信するためのデータ転送プログラムであって、
第一ファイルのデータが前記ストレージ装置のどの位置に記憶されているかを示す第一マップ情報を含むメタデータを受け取って解析することにより前記第一マップ情報を取得する外部のホストCPUにより取得された前記第一マップ情報に基づく前記第一ファイルのデータの読み出し指示に基づき前記第一ファイルのデータを格納したブロックの読み出しコマンドを生成し、前記読み出しコマンドを前記ストレージ装置に送る発行手順と、
前記読み出しコマンドに応じて前記ストレージ装置から読み出されるブロックデータを受け取り、前記外部のホストCPUから前記第一マップ情報を受け取り、前記第一マップ情報に基づき、前記ブロックデータから前記第一ファイルのデータを抽出する送信データ抽出手順と、
前記送信データ抽出手順により抽出された前記第一ファイルのデータを送信する通信処理手順と、
をコンピュータに実行させるためのデータ転送プログラム。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011110650A JP5611889B2 (ja) | 2011-05-17 | 2011-05-17 | データ転送装置、データ送信システムおよびデータ送信方法 |
PCT/JP2012/057252 WO2012157335A1 (en) | 2011-05-17 | 2012-03-14 | Data transferring apparatus,data transmission system and data transmitting method |
KR1020137024392A KR101541633B1 (ko) | 2011-05-17 | 2012-03-14 | 데이터 전송 장치, 데이터 송신 시스템 및 데이터 송신 방법 |
CA2829554A CA2829554A1 (en) | 2011-05-17 | 2012-03-14 | Data transferring apparatus, data transmission system and data transmitting method |
EP12715450.8A EP2710456A1 (en) | 2011-05-17 | 2012-03-14 | Data transferring apparatus,data transmission system and data transmitting method |
US14/020,974 US9544370B2 (en) | 2011-05-17 | 2013-09-09 | Data transferring apparatus, data transmission system and data transmitting method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011110650A JP5611889B2 (ja) | 2011-05-17 | 2011-05-17 | データ転送装置、データ送信システムおよびデータ送信方法 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2012242961A JP2012242961A (ja) | 2012-12-10 |
JP2012242961A5 JP2012242961A5 (ja) | 2013-05-30 |
JP5611889B2 true JP5611889B2 (ja) | 2014-10-22 |
Family
ID=45976990
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011110650A Active JP5611889B2 (ja) | 2011-05-17 | 2011-05-17 | データ転送装置、データ送信システムおよびデータ送信方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9544370B2 (ja) |
EP (1) | EP2710456A1 (ja) |
JP (1) | JP5611889B2 (ja) |
KR (1) | KR101541633B1 (ja) |
CA (1) | CA2829554A1 (ja) |
WO (1) | WO2012157335A1 (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5611889B2 (ja) | 2011-05-17 | 2014-10-22 | 株式会社東芝 | データ転送装置、データ送信システムおよびデータ送信方法 |
JP2015055933A (ja) * | 2013-09-10 | 2015-03-23 | 株式会社東芝 | 負荷軽減装置、サーバ装置及び負荷軽減方法 |
JP5571238B1 (ja) * | 2013-09-13 | 2014-08-13 | 株式会社東芝 | データ配信装置、データ配信装置の制御方法及び制御プログラム |
JP6175389B2 (ja) | 2014-03-13 | 2017-08-02 | 株式会社東芝 | 通信装置、情報処理装置、通信方法および通信プログラム |
JP2015179328A (ja) | 2014-03-18 | 2015-10-08 | 株式会社東芝 | データ転送装置、データ受信システムおよびデータ受信方法 |
CN104202387B (zh) * | 2014-08-27 | 2017-11-24 | 华为技术有限公司 | 一种元数据恢复方法及相关装置 |
CN104580471A (zh) * | 2015-01-12 | 2015-04-29 | 浪潮电子信息产业股份有限公司 | 一种提升元数据集群性能的方法 |
CN105554113A (zh) * | 2015-11-27 | 2016-05-04 | 广州多益网络科技有限公司 | 一种可容纳大量玩家的游戏处理方法及*** |
KR102532173B1 (ko) * | 2017-06-23 | 2023-05-16 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 메모리 액세스 기술 및 컴퓨터 시스템 |
US11314450B2 (en) | 2018-10-31 | 2022-04-26 | Samsung Electronics Co., Ltd. | Method of operating storage device, storage device performing the same and method of operating storage system using the same |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4632574B2 (ja) | 2001-05-25 | 2011-02-16 | 株式会社日立製作所 | 記憶装置およびファイルデータのバックアップ方法およびファイルデータのコピー方法 |
US7596634B2 (en) * | 2002-12-12 | 2009-09-29 | Millind Mittal | Networked application request servicing offloaded from host |
WO2004077211A2 (en) | 2003-02-28 | 2004-09-10 | Tilmon Systems Ltd. | Method and apparatus for increasing file server performance by offloading data path processing |
JP4477365B2 (ja) * | 2004-01-29 | 2010-06-09 | 株式会社日立製作所 | 複数インタフェースを有する記憶装置、および、その記憶装置の制御方法 |
JP4343760B2 (ja) | 2004-04-28 | 2009-10-14 | 株式会社日立製作所 | ネットワークプロトコル処理装置 |
JP5204195B2 (ja) | 2010-10-29 | 2013-06-05 | 株式会社東芝 | データ送信システムおよびデータ送信プログラム |
JP5611889B2 (ja) | 2011-05-17 | 2014-10-22 | 株式会社東芝 | データ転送装置、データ送信システムおよびデータ送信方法 |
-
2011
- 2011-05-17 JP JP2011110650A patent/JP5611889B2/ja active Active
-
2012
- 2012-03-14 EP EP12715450.8A patent/EP2710456A1/en not_active Withdrawn
- 2012-03-14 KR KR1020137024392A patent/KR101541633B1/ko active IP Right Grant
- 2012-03-14 WO PCT/JP2012/057252 patent/WO2012157335A1/en active Application Filing
- 2012-03-14 CA CA2829554A patent/CA2829554A1/en not_active Abandoned
-
2013
- 2013-09-09 US US14/020,974 patent/US9544370B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
KR101541633B1 (ko) | 2015-08-03 |
JP2012242961A (ja) | 2012-12-10 |
US9544370B2 (en) | 2017-01-10 |
KR20130132606A (ko) | 2013-12-04 |
WO2012157335A1 (en) | 2012-11-22 |
CA2829554A1 (en) | 2012-11-22 |
EP2710456A1 (en) | 2014-03-26 |
US20140012948A1 (en) | 2014-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5611889B2 (ja) | データ転送装置、データ送信システムおよびデータ送信方法 | |
US11724185B2 (en) | Methods implementing doorbell register/file identification table with high-speed data communication fabric for cloud gaming data storage and retrieval | |
JP5204195B2 (ja) | データ送信システムおよびデータ送信プログラム | |
WO2013038730A1 (ja) | データ転送装置、データ送信システム、データ送信方法およびプログラム | |
US10491672B2 (en) | Data transfer device, data receiving system and data receiving method | |
JP2023532484A (ja) | クラウドゲーム用高速セーブデータストレージ | |
CN115129625A (zh) | ***设备中的增强的存储协议仿真 | |
US20230328008A1 (en) | Network interface and buffer control method thereof | |
US8762432B2 (en) | Methods and systems for using distributed allocation tables | |
WO2017072868A1 (ja) | ストレージ装置 | |
KR101470857B1 (ko) | iSCSI 스토리지 시스템을 이용한 네트워크 분산 파일 시스템 및 방법 | |
US8943237B1 (en) | Performance improvement for attached multi-storage devices | |
TWI845935B (zh) | 實施用於雲端遊戲資料儲存及擷取之高速資料通信組構之系統及方法 | |
US11144206B2 (en) | Method and system for sharing data reduction metadata with storage systems | |
JP2003345698A (ja) | データ共有システム及びディスク装置へのアクセス方法並びにプログラム | |
WO2015037259A1 (ja) | データ配信装置、データ配信装置の制御方法及び記録媒体 | |
JP2015055933A (ja) | 負荷軽減装置、サーバ装置及び負荷軽減方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130411 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130917 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20131118 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140204 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140407 |
|
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: 20140805 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140903 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5611889 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |