JP3329390B2 - 高速一括ファイル転送方法及び装置 - Google Patents
高速一括ファイル転送方法及び装置Info
- Publication number
- JP3329390B2 JP3329390B2 JP53165897A JP53165897A JP3329390B2 JP 3329390 B2 JP3329390 B2 JP 3329390B2 JP 53165897 A JP53165897 A JP 53165897A JP 53165897 A JP53165897 A JP 53165897A JP 3329390 B2 JP3329390 B2 JP 3329390B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- file
- transfer
- storage medium
- packet
- 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.)
- Expired - Lifetime
Links
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/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- 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/04—Protocols for data compression, e.g. ROHC
-
- 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]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5614—User Network Interface
- H04L2012/5617—Virtual LANs; Emulation of LANs
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer And Data Communications (AREA)
Description
ュータ、ワークステーション、各種通信端末等の機器の
間の通信に用いて好適な高速一括ファイル転送方法及び
装置に関する。
量バルクデータをサーバからユーザ端末に配送するサー
ビスがますます重要となる。現状のVOD(ビデオオンデ
マンド)においては、ファイルの転送開始命令だけでな
く映画の一時停止や巻き戻しなどの制御命令も、著しく
増加し、これがサーバプロセッサの負荷となるため、ネ
ットワークの高速化によるメリットを十分に生かすこと
ができない。これに対して、CD−ROM1枚や映画1本に相
当する大容量のバルクデータを数秒ないし数10秒でユー
ザの蓄積メディアに転送し、即座にネットワークを解放
することによりユーザの利便性/経済性が考えられる。
本発明は、これを実現するための方法及び装置を提供す
るものであるが、本発明の背景技術となる各要素技術に
ついて以下、図面を参照して詳細に説明する。
用計算機アーキテクチャを示す図であり、図20Bはファ
イル転送プロトコルを用いて、大容量ファイルを受信す
る際のデータの流れを示す流れ図である。ファイル転送
プロトコル(ftp)はインターネットプロトコル(TCP/I
P)上に載るアプリケーションであり、TCP/IPを含め、
計算機のホストCPU(中央演算装置)でソフトウエアと
して処理される。
期転送モード)リンクを用いた場合のファイル転送プロ
トコル(ftp:file transfer protcol)のプロトコルス
タックであり、実行するハードウエアを併記して示して
いる。TCP、IP及びSNAP/LLCは、それぞれ転送制御プロ
トコル(Transmission Control Protocol)、インター
ネットプロトコル(Internet Protocol)及びサブネッ
トワークアクセスポイント/論理リンク制御(Subnetwo
rk Access Point/Logical Link Control)の略語であ
る。また、それぞれ、AALはATMアダプテーションレイヤ
(ATM Adaptation Layer)、SARはセル分割組立サブレ
イヤ(Segmentation And Reassembly Sublayer)、PHY
は論理プロトコル(Physical Protocal)、S/P変換はシ
リアル/パラレル変換を示す略語である。
イルを受信する際の動作を説明する。なお、送信側につ
いては同様の動作の順番が逆になるだけなので、説明を
省略する。ATM−LAN(ローカルエリアネットワーク:Loc
al Area Network)等の計算機ネットワークE10から送ら
れてきたデータは、まず、ATMアダプタカードE5で受信
され、光モジュールやS/P変換チップ、セル同期チップ
によって、物理レイヤを終端され、53バイトのセルデー
タとして、ATMレイヤチップに渡され、ATMレイヤを終端
される。
h Identifier/仮想チャネル識別子:Virtual Channel Id
entifier)による分離、多重処理が行われる。AALレイ
ヤ(通常タイプ5)ではSARチップにより、セルのヘッ
ダを除いた48バイト(SAR−PDU(プロトコルデータユニ
ット:Protocol Data Uint))の情報をリンクし、CRCチ
ェック(巡回冗長検査:Cyclic Red undancy Check)や
データ長チェックを行い、CPCS(コンバージェンスサブ
レイヤ共通部:Convergence Sublayer Common Part)−P
DUのペイロードを形成する(図20B参照)。CPCS−PDUペ
イロードはユーザデータとして高速の汎用バス(ここで
はPCIバス(Peripheral Component Interconnect Bu
s))E3及びPCIブリッジE4を介して、ホストCPU・E1に
転送される。
ており、CPUはIPレイヤを順次終端して、カプセル化さ
れたファイル転送データの中身を取り出す。そして、ホ
ストCPU・E1は、取り出した転送データの中身をPCIバス
E3を介して、ハードディスクE6に格納する。
od−Ray Tube)、E31はグラフィックボード、E32はキー
ボード、E33はキーボードコントローラであり、PCIバス
E3及びPCIブリッジE4を介してホストCPU・E1と接続され
ている。
コルスタック上で実現されるアプリケーションであり、
その下位のプロトコルの多くがホストCPUで処理されて
いる。特にTCPレイヤはデータの着信応答を行うため、
ホストCPUには大きな負荷がかかっていた。
クから高速でネットワークアダプタカードにデータが伝
送され、アダプタカードからPCIのような高速転送可能
な汎用バスを介してホストCPU側にデータが転送される
場合においても、プロトコルの多くがCPUで処理される
ため、ファイル転送のスループットがCPUの処理能力に
制限されてしまい、高速な計算機ネットワークの能力が
十分活かせないという問題点があった。
転送が介在する場合について説明する。図22は、従来の
ATMリンクを用いた場合のデータ転送の手順と、それを
実現するための装置構成の概略を表している。ファイル
データを格納しているコンテンツサーバB101とコンテン
ツサーバB101内のデータを読み出す端末B102が1台のAT
MスイッチB103に接続されており、それぞれのインタフ
ェース速度が異なるものとする。すなわち、コンテンツ
サーバB101とATMスイッチB103とのインタフェース速度
は155Mbps(Mega bits per second)であり、ATMスイッ
チB103と端末B102とのインタフェース速度は25Mbpsであ
るとする。
にアクセスしてデータを読み出すには、まず、端末B102
がシグナリングによりコンテンツサーバB101とのATMリ
ンクを設定要求し、ATMスイッチB103がコンテンツサー
バB101と端末B102間のATMリンクを設定する。この処理
は図中のCプレーン(呼制御信号転送プレーン)を用い
てなされる。次いで、ATMリンク確立後、コンテンツサ
ーバB101から端末B102へATMセル化されたファイルデー
タが転送され、これは図中のUプレーン(ユーザ情報転
送プレーン)を用いてなされる。
プテーション・レイヤ)以上の上位レイヤ処理は行わ
ず、セルのヘッダ情報のみ(VCI,VPI)を参照して、セ
ルを一方のポートから他方のポートへスイッチングする
だけである。また、ATMスイッチB103の内部には、速度
変換に必要とされる大規模な記憶媒体が存在していな
い。このため、ATMスイッチB103のそれぞれのポートの
インタフェース速度が、上述した如く155Mbpsと25Mbps
というように異なる場合には、スイッチの転送速度が低
速側(この場合は25Mbps)に律則され、高速インタフェ
ース(コンテンツサーバB101−ATMスイッチB103間)が
有効利用できない。
対して、シーケンシャルアクセスするのではなく、映像
データの再生時のように巻き戻し,早送り,一時停止と
いったランダムアクセスを行う場合は、コンテンツサー
バB101に過大な負荷がかかる上、さらに複数の端末から
同時にランダムアクセスされた場合などは、いっそう転
送速度が低下してしまう。
ンクによるファイルのデータ転送では、ATMスイッチB10
3が、異なるインタフェース速度のポート間の大容量フ
ァイルのデータ転送時に必要とされる速度変換のための
大容量記憶媒体を持っていない。したがって、転送速度
が低速インタフェース速度に律則され、高速インタフェ
ースが有効に利用できないという問題点があった。
に加え、映像,音声データファイルのアクセスのように
ファイルへのランダムアクセス時においてコンテンツサ
ーバB101に過大な負荷がかかり、さらにはファイルデー
タの転送速度を低下させる要因となっていた。
ついて説明する。TCP(Transmission Control Protoco
l:転送制御プロトコル)は、計算機間通信で現在広く用
いられているトランスポート層プロトコルである。TCP
は信頼性の高い通信を実現するため、以下のように送/
受信間でハンドシェイクを行い、データにエラーや欠落
のあった場合再送を行っている。なお以下で用いるセグ
メントとはTCPでの転送単位を表し、他のプロトコルに
おけるパケットあるいはフレームに対応する。
番号(SEQ:Sequence Number)をTCPヘッダにマッピング
して送信する。シーケンス番号は、全データストリーム
中におけるそのセグメントの最初のデータ位置をバイト
単位で表したもので、通信確立時に初期化され、以降転
送されたデータのバイト数を加算してゆく。
認番号をTCPヘッダにマッピングして、これをACK(Ackn
owledgement:肯定応答)として送信側に返す。応答確認
番号は、送信側が次に送信すべきシーケンス番号を表
し、データを欠落なく正しい順序で受信できたことを送
信側に通知する目的で使われる。
セグメントを送信する。一定のタイムアウト値以内にAC
Kを受信しなければ、そのセグメントは再送する。TCPの
場合、上記のACKのタイムアウト値以内の未受信による
ものが、再送ための唯一の機構である。図23にTCPによ
る再送処理を示す。
ローコントロールを示すタイムチャートである。図23
は、送信側から受信側へ10バイト×5セグメントのデー
タを転送する例を示している。また、図23は、1回目の
転送時におけるシーケンス番号SEQ=40のセグメント
が、受信側で正しく受信されない場合を示している。送
信側は、5個のセグメントのTCPヘッダにそれぞれSEQ=
10,20,30,40,50のシーケンス番号をマッピングして送信
する。受信側は、SEQ=10,20,30の各セグメントを正し
く受信し、その都度、ACK=20,30,40をTCPヘッダにマッ
ピングして送信する。送信側は、各セグメントの所定の
タイムアウト値以内でACK=20,30,40を受信する。
受信側で正しく受信されないので、送信側ではSEQ=40
のセグメントを送信してから所定のタイムアウト値以内
でACK=50を受信することができない。送信側は、タイ
ムアウト値経過時点でSEQ=40のセグメントにエラーが
発生したものと判断し、SEQ=40のセグメントを再送す
る。また、SEQ=50のセグメントに対するACKも所定のタ
イムアウト値以内で送られてこないことになるので、送
信側はSEQ=50送信時からタイムアウト値が経過した時
点でSEQ=50のセグメントを再送する。
再送を受けるためには常に送信側のタイマ終了を持たな
ければならない。また、エラーの生じたセグメントが1
個だけだった場合でも、それ以降のセグメントをすべて
再送しなければならない。このため一旦エラーが発生す
ると、再送セグメントが累積的に増加してしまうという
問題がある。これらは、特に大容量のバルクデータを多
くのセグメントに分割して転送するようなアプリケーシ
ョンの場合、例えば、受信側からNAK(Negative Acknow
ledgement:否定応答)を返して特定セグメントの強制的
な再送を行う方法に対して、転送効率が著しく低下して
しまう原因となる。さらにTCP等の応答確認は、IP(Int
ernet Protocol:インタネットプロトコル)レイヤまで
の下位レイヤ終端を終えてから行うソフト処理であるた
め、高速処理が困難である。
明は、従来技術において、多くのプロトコル、通信処理
をCPUが処理していたことによるファイル転送時のスル
ープット低下を改善し、高速な計算機ネットワークを十
分に活かす高スループットな高速一括ファイル転送方法
及び装置を提供することを目的とする。
なるATMリンクの速度変換が可能であり、しかも、大容
量ファイルのランダムアクセスなどサーバにかかる大き
な負荷をも分散して高い転送スループットを実現するこ
とにある。
理による応答確認に起因する転送効率の低下を回避し、
データを複数パケットに分割して転送する場合でも高い
スループットが得られるデータ転送方法を提供すること
にある。
ァイルの転送元及びファイルの転送先でそれぞれ、デー
タ転送を行うための汎用データバス、第1の記憶媒体、
及び該第1の記憶媒体より入出力速度が速い第2の記憶
媒体から成る汎用計算機アーキテクチャを用いて、
(a)ファイルの転送元で、通信リンクを設定する前
に、第1の記憶媒体内のファイルデータに対して、少な
くとも圧縮、プロトコル終端、及びフレーミングの中の
いずれか1つの処理を行いながら、該ファイルデータを
汎用データバスを介して第2の記憶媒体へ順次転送する
手順と、(b)前記ファイルの転送元で、前記ファイル
データに対する処理の完了後、通信リンクを設定し、前
記第2の記憶媒体内のファイルデータを、それに対して
処理を施さずに、前記汎用データバスを介して直接、該
汎用データバスに接続されている計算機通信用のネット
ワークアダプタカードへ一括転送し、該ネットワークア
ダプタカードからネットワークへ伝送する手順と、
(c)ファイルの転送先で、前記ネットワークから該転
送先の汎用データバスに接続されているネットワークア
ダプタカードへ伝送された前記ファイルデータを、デー
タの解凍、プロトコル終端、及びフレーミングを含むい
ずれの処理も施さずに、該汎用データバスを介して第2
の記憶媒体へ一括転送し、前記通信リンクを解放する手
順と(d)、前記ファイルの転送先で、前記通信リンク
を解放した後、前記第2の記憶媒体内のデータに対し
て、少なくとも解凍処理、通信処理の中のいずれか1つ
の処理を行いながら、順次処理された前記第2の記憶媒
体内のデータを前記汎用データバスを介して第1の記憶
媒体へ転送する手順とを有し、前記転送元で、前記ファ
イルデータを前記ネットワークアダプタカードから前記
ネットワークへ伝送する場合に、該ファイルデータを1
個または複数個のパケット単位で転送し、かつ該パケッ
トの転送先を指定するネットワークアドレスとして、前
記転送元の第2の記憶媒体内で該パケットに対応するデ
ータが格納されている場所に対応するメモリアドレスを
用いることを特徴とするファイル転送方法である。
ための第1の汎用データバスと、第1の記憶媒体と、前
記第1の記憶媒体より入出力速度が速い第2の記憶媒体
と、前記第1の汎用データバスに接続されている計算機
通信用の第1のネットワークアダプタカードと、通信リ
ンクを設定する前に、前記第1の記憶媒体内のファイル
データに対して、少なくとも圧縮、プロトコル終端、及
びフレーミングの中のいずれか1つの処理を行いなが
ら、該ファイルデータを前記第1の汎用データバスを介
して前記第2の記憶媒体へ順次転送するための第1の転
送手段と、前記ファイルデータに対する処理の完了後、
通信リンクを設定し、前記第2の記憶媒体内のファイル
データに対して処理を施さずに、該ファイルデータを、
前記第1の汎用データバスを介して直接、前記第1のネ
ットワークアダプタカードへ一括転送し、該第1のネッ
トワークアダプタカードからネットワークへ伝送するた
めの伝送手段とを有する転送元計算機と、(b)データ
転送を行うための第2の汎用データバスと、第3の記憶
媒体と、前記第3の記憶媒体より入出力速度が速い第4
の記憶媒体と、前記第2の汎用データバスに接続されて
いる計算機通信用の第2のネットワークアダプタカード
と、前記ネットワークから前記第2のネットワークアダ
プタカードへ伝送された前記ファイルデータを、データ
の解凍、プロトコル終端、及びフレーミングを含むいず
れの処理も施さずに、前記第2の汎用データバスを介し
て前記第4の記憶媒体へ一括転送し、前記通信リンクを
解放するための解放手段と、前記通信リンクを解放した
後、前記第4の記憶媒体内のデータに対して、少なくと
も解凍処理、通信処理の中のいずれか1つの処理を行い
ながら、順次処理された前記第4の記憶媒体内のデータ
を前記第2の汎用データバスを介して前記第3の記憶媒
体へ転送するための第2の転送手段とを有する転送先計
算機とを具備し、前記転送元計算機が、前記ファイルデ
ータを前記第1のネットワークアダプタカードから前記
ネットワークへ伝送する場合に、該ファイルデータを1
個または複数個のパケット単位で転送し、かつ、該パケ
ットの転送先を指定するネットワークアドレスとして、
前記第2の記憶媒体内で該パケットに対応するデータが
格納される場所に対応するメモリアドレスを用いること
を特徴とするファイル転送装置である。
が処理していたプロトコル終端などの多くの処理をデー
タ伝送時には行わないことを特徴とする。ファイルデー
タはホストメモリなどの高速入出力可能なメモリとネッ
トワークアダプタカードとの間で一括して入出力される
ため、ファイル転送のスループットが上がる。これによ
り、ネットワークは短い時間で解放されるため、高速な
計算機ネットワークを有効利用できる。
信側ではネットワークの通信リンク設定前に、ハードデ
ィスクのような低速の大容量記憶媒体から順次蓄積さ
れ、ファイルの受信側では、ネットワークを解放した
後、ディスクに順次に蓄積される。このメモリ、ハード
ディスク間のデータの転送時に、汎用データバスの転送
速度に比べ、ハードディスクの入出力が十分低速である
ため、この差を利用して、プロトコル処理等の処理が可
能となる。
有効利用すため、ネットワークアダプタカードの転送速
度を制限しないよう、ファイルデータを第1又は第3の
記憶媒体より高速の第2又は第4の記憶媒体との間で一
括転送し、この間、中央演算装置による処理を行わな
い。第2又は第4の記憶媒体と第1又は第3の記憶媒体
間のデータ転送はネットワークを解放している間、すな
わち、ファイルの転送元ではファイルの伝送前、ファイ
ルの転送先ではファイルの伝送後に行う。このとき、第
1又は第3の記憶媒体の書き込み速度と汎用データバス
との速度差を利用してデータの圧縮・解凍、プロトコル
終端等の処理を行いながら、第2又は第4の記憶媒体と
第1又は第3の記憶媒体の間で逐次データを転送する。
これにより、ファイル転送の際、ネットワークの高スル
ープットを実現でき、大容量のファイル転送の際にも早
期にネットワークを解放することができる。
クに接続される計算機の構成例とファイルデータの流れ
を示すブロック図である。
ワークに接続される計算機の構成例とファイルデータの
流れを示すブロック図である。
ワークに接続される計算機の構成例とファイルデータの
流れを示すブロック図である。
送先での処理の手順を示す流れ図である。
送元での処理の手順を示す流れ図である。
信から受信までの処理の手順を示す流れ図である。
方法の手順を説明した図である。
ための装置の構成を示すブロック図である。
00,コンテンツサーバD300,ATMスイッチD400をATMで接続
した場合の構成例を示す図である。
次サーバD100に大容量ファイルデータを一括転送する際
のプロトコルスタックとデータの流れを示す図である。
バD100に対してランダムアクセスする際のプロトコルス
タックとデータの流れを示す図である。
量ファイルに同時にアクセスする場合に適用した実施形
態を説明するための図である。
手順を説明するための図である。
る。
図である。
である。
す図である。
ある。
ある。
用計算機アーキテクチャを示すブロック図であり、図20
Bは従来のファイル転送プロトコルを用いて大容量ファ
イルを受信する際のデータの流れを示す流れ図である。
のプロトコルスタックとそれを実行するハードウエアを
まとめた図である。
の手順と、それを実現するための装置構成の概略図であ
る。
Pのフローコントロールを示すタイムチャートを示す図
である。
スク、第2又は第4の記憶媒体としての半導体メモリ
(DRAM:ダイナミックランダムアクセスメモリ;Dynamic
Random Access Memory)から成るホストメモリを用いた
装置構成を有し、本発明によるファイル転送方法を実施
するATMネットワークに接続される計算機の構成例とフ
ァイルデータの流れを示す図である。
されるホストメモリF2、高速の汎用バスであるPCIバスF
3、CPUとPCIバスを結ぶホスト−PCIブリッジF4、物理レ
イヤからAALレイヤまでを終端するATMネットワークアダ
プタカード(あるいはネットワークインターフェースカ
ード)F5、ハードディスクF6、及びATMネットワークF10
である。
ークF10から大容量ファイルが伝送される場合の受信側
の手順について、図1及び図4を参照して説明する。な
お、図4は、図1に示すファイルの受信手順を流れを示
す流れ図である。
からATMネットワークアダプタカードF5に伝送される
(図4のステップB1〜B2)。ATMネットワークアダプタ
カードF5内ではまず光信号の終端やS/P変換、セル同期
といった物理レイヤ(PHY)の終端を行い、ATMレイヤ、
AALへと順次に上位レイヤ側にデータが転送される。ATM
レイヤでは主にVCI/VPIによるセルの多重分離が行わ
れ、AALレイヤではセルの48バイトのペイロードを結合
してCPCS−PDUを構成し、CRCや長さのチェックを行って
からCPCS−PDUのペイロードをユーザデータとして取り
外す。
ータはPCIバスのバスI/Fチップ(Bus I/F)からPCIバス
F3へ転送される。このとき、ATMアダプタカードF5のバ
スI/Fチップはファイルデータの転送先としてホストPCI
ブリッジF4を選択する。ネットワークアダプタカードF5
から転送されたデータはホスト−PCIブリッジF4を介し
てホストメモリF2へ高速に転送される(ステップB2〜B
3)。ホストメモリF2に一括で蓄えられたデータはCPCS
−PDUペイロードのままである。CPCSまではアダプタカ
ードF5内のハードウエアで終端されるため、高速処理が
可能であり、PCIバスF3、ホスト−PCIブリッジF4、DRAM
・F2のデータ転送はすべてハードウエアであるため、ソ
フトウエア処理による転送速度の制限がない。
を終了し、ネットワークF10を解放する。ホットメモリF
2に一括で蓄えられたデータはCPCS−PDUペイロードの状
態であり、圧縮ファイルである場合の解凍処理等は施さ
れていない。これらの処理はCPUによるソフトウエア処
理であるため、従来の方法によってデータ転送中に同時
に処理するとファイル転送のスループットを著しく低下
させてしまう。そこで、本発明では、一旦高速でホスト
メモリF2に圧縮された状態のままファイル転送してしま
い、ネットワークF10を解放した後でCPU・F1が解凍など
の処理を行う。
モリF2に一括で蓄えられたCPCS−PDUペイロードの状態
データに対して通信リンクを確立する(ステップB4)。
そして、CPU・F1は、CPCS−PDUペイロードの状態データ
に対して、フレーミング(ステップB5)、プロトコル終
端(ステップB6)、及び必要に応じてデータ解凍(ステ
ップB7)の処理を行い、転送すべきデータの中身を取り
出し、取り出したデータをハードディスクF6へ格納する
(ステップB8)。
ードディスク、光磁気ディスク、磁気テープ等の大容量
記憶媒体(この例ではハードディスクF6)に蓄積される
が、ハードディスクF6等の連続書き込み、読み出しの最
大速度は汎用バスF3の最大転送速度に比べ、十分低速で
ある。したがって、ホストメモリF2からハードディスク
F6への転送は、PCIバスF3の最大転送速度を連続して使
用した転送とはならず、ハードディスクF6の磁気記憶媒
体への低速の書き込み速度に合わせた、ハードディスク
が備えるバスインターフェイス内のバッファメモリへの
断続的な転送として実行されることになる。
き込みの休止期間にCPU・F1はホストメモリF2内のファ
イルデータに対する解凍などの処理を行うことができる
ので、これらの処理によるハードディスクF6の書き込み
速度の低下は発生しない。
ットワークF10へ大容量ファイルを伝送する送信側の手
順について図1及び図5を参照して説明する。なお、送
信側の手順は、受信側の手順と逆向きの流れとなるもの
であり、この場合、図1に示す矢印を付けた受信側の手
順と逆向きの流れとなる。
する(ステップA1)。CPU・F1は、ハードディスクF6に
格納されているデータを読み出しながら、データ圧縮
(ステップA2),プロトコル終端(ステップA3)及びフ
レーミング(ステップA4)を行って、CPCS−PDUペイロ
ードの状態でデータをホストメモリF2に記憶する(ステ
ップA5)。
ネットワークアダプタカードF5に対してファイルの転送
を指令する(ステップA7)。ネットワークアダプタカー
ドF5は、PCIバスF3を介してホストメモリF2に記憶され
ているCPCS−PDUペイロードの状態のデータを直接読み
出して、AALレイヤでSAR−PDUに分割し、ATMレイヤでAT
Mセルとして、物理レイヤによってATMネットワークF10
へ伝送する(ステップA8)。そして、ファイルの伝送が
終了したところでCPU・F1は通信リンクを解放する。
トコル終端及びフレーミングの処理を行った後のデータ
をホストメモリF2に記憶し、ホストメモリF2に記憶され
たデータをネットワークアダプタF5から直接読み出し
て、ネットワークF10へ伝送するようにしたので、ハー
ドディスクF6からの読み出し処理やホストCPU・F1によ
るデータ処理が、ネットワークアダプタF5の伝送速度を
低下させることはない。
転送先での手順と、図5に示す本発明のファイル転送方
法による転送先での手順を、一連の処理として行う場合
の処理の流れを示したものである。図6において、ステ
ップC1〜C8は図5に示すステップA1〜A8の処理に、ステ
ップC8〜C15は図4に示すステップB1〜B8の処理に、そ
れぞれ対応している。図6に示すようにファイルの転送
元及び転送先の両方で、ホストCPU・F1を介さないホス
トメモリF2とネットワークアダプタカードF5間のデータ
の転送を行うことで、ファイルの転送のスループットを
より大きくすることができる。
形態の変形例について説明する。図2に示す本発明の実
施形態は、第1又は第3の記憶媒体としてハードディス
ク、第2又は第4の記憶媒体としてホストメモリの代わ
りにネットワークアダプタカードと同じ汎用データバス
上に高速入出力可能な半導体メモリによるメモリボード
を配備した実ものである。
されるホストメモリG2、高速の汎用バスであるPCIバスG
3、CPUとPCIバスを結ぶホスト−PCIブリッジG4、物理レ
イヤからAALレイヤまで終端するATMネットワークアダプ
タカードG5、ハードディスクG6、DRAM等で構成されるPC
Iバス上のメモリボードG7、ATMネットワークG10であ
る。なお、図1に示すものと同一の数字を有する符号を
持つ構成は、図1に示す対応する構成と同様のものであ
る。
トワークから大容量ファイルが転送される場合の手順を
説明する。ファイルはATMネットワークG10からATMネッ
トワークアダプタカードG5に伝送される。ATMネットワ
ークアダプタカードG5内では物理レイヤ、ATMレイヤ、A
ALへと順次に終端され、上位レイヤ側にデータを転送す
る。AALレイヤを終端して取り出されたファイルのデー
タはPCIバスのバスI/Fチップ(PCIバスコントローラ)
からPCIバスG3へ転送される。このとき、ATMアダプタカ
ードG5のバスI/Fチップは図1の場合とは異なり、同一
のPCIバスG3上のメモリボードG7をファイルデータの転
送先ターゲットとして指定する。
一PCIバスG3のエージェントであり、ATMネットワークG1
0から高速伝送されたファイルデータをスループット落
とさずにメモリボードG7に書き込むことができる。ま
た、図1の構成に比べ、ホストメモリG2を利用しない
分、大容量のファイル転送に向いた構成と言える。
後、ATMはATMリンクを終了し、ネットワークを解放す
る。PCIバスG3上のメモリボードG7に蓄えられたデータ
はCPCS−PDUペイロードの状態であり、圧縮ファイルで
ある場合の解凍処理等は施されていない。図1の場合と
同様に、これらのファイルデータに対する処理は、ハー
ドディスクへの書き込み速度とバスの転送速度に差を利
用して、ハードディスクに転送する前に逐次CPU・G1で
処理を行う。
設けることで、汎用データバスを拡張して汎用データバ
スをもう一つ新設し、ネットワークアダプタカードとメ
モリボードをこの新設された汎用データバスに接続した
他の実施形態を示す図である。図3に示す各構成は、ホ
ストCPU・H1、DRAM等で構成されるホストメモリH2、高
速の汎用バスであるPCIバスH3a,H3b、CPUとPCIバスを結
ぶホスト−PCIブリッジH4、物理レイヤからAALレイヤま
で終端するATMネットワークアダプタカードH5、バスイ
ンターフェイスを内蔵したハードディスクH6、DRAM等で
構成されるPCIバス上のメモリボードH7、2つのPCIバス
を接続するPCI−PCIブリッジH8、ブリッジにより新たに
拡張されたPCIバスH9、そしてATMネットワークH10であ
る。
M−LAN等のATMネットワークH10から大容量ファイルが転
送される場合の手順について説明する。ファイルはATM
ネットワークH10からATMネットワークアダプタカードH5
に伝送される。ATMネットワークアダプタカードH5内で
は物理レイヤ、ATMレイヤ、AALへと順次に終端され、上
位レイヤ側にデータを転送する。AALレイヤを終端して
取り出されたファイルのデータはPCIバスのバスI/Fチッ
プ(PCIバスコントローラ)からPCIバスH3bへ転送され
る。このとき、このPCIバスH3bは図1、2の場合とは異
なり、ホストのPCIブリッジでCPUやホストメモリに接続
される元から存在しているPCIバスH3aではなく、この図
にあるようにPCI−PCIブリッジH8で新たに構成されたPC
IバスH3bである。この新設されたPCIバスH3bは元からあ
るPCIバスH3aとは独立である。
に示すメモリボードG7と同様なメモリボードH7が接続さ
れ、アダプタカードH5のバスI/Fチップは図2の場合と
同様、同一のPCIバスH3b上のメモリボードH7をファイル
データの転送先ターゲットとして指定する。ネットワー
クアダプタカードH5とメモリボードH7は新設された同一
PCIバスH3bのエージェントであり、ATMネットワークH5
から高速伝送されたファイルデータをスループットを落
とさずにメモリボードH7に書き込むことができる。
リボードH7が搭載されるPCIバスH3bには他のPCIボード
(エージェント)が接続されないため、バスを独占でき
る。通常、元のPCIバスH3aにはグラフィックスボードや
キーボード、その他の周辺機器のインタフェースボード
等が接続されることがあり、ATMネットワークアダプタ
カードとメモリボードがバスを完全に占有できない場合
がある(図20A参照)。この場合、他のPCIエージェント
によるバスリクエストにより、PCIバスのデータ転送の
スループットが低下するときがあるが、図3のようにア
ダプタカードH5とメモリボードH7が搭載されるバスを他
のPCIエージェントとは別のバスにすることにより、ア
ダプタカードH5とメモリボードH7との間の高いスループ
ットを保証することができる。特にバスを占有すること
ができるので大容量ファイルの転送においても高スルー
プットが実現できる。
た後、ATMはATMリンクを終了し、ネットワークを解放す
る。PCI上のメモリボードH7に蓄えられたデータはCPCS
−PDUペイロードの状態であり、圧縮ファイルである場
合の解凍処理等は施されていない。図1の場合と同様
に、これらのファイルデータに対する処理は、ハードデ
ィスクへの書き込み速度とバスの転送速度に差を利用し
て、ハードディスクH6に転送する前に逐次CPU・H1で処
理を行う。このとき、メモリボードH7内のデータはPCI
−PCIブリッジH8を介してCPU・H1が搭載される側のPCI
バスH3aに転送される。PCIバスH3aに転送されたデータ
はCPU・H1に渡って処理された後、CPU・H1が搭載される
側のPCIバスH3aに接続されるハードディスクH6に蓄積さ
れる。
信のATMネットワークアダプタカードからの高い転送速
度を制限しないように、CPUによる処理を施さずにDRAM
等で構成されるメモリに転送する。これにより、ネット
ワークを早期に解放でき、高速なATMネットワークを有
効利用できる。最終的な蓄積先であるハードディスク等
の磁気記憶媒体は連続書き込み速度が遅いため、高速の
汎用バスを断続的に使って転送せざるを得ない。そこで
ハードディスクへのデータ転送が途切れている時間を利
用して解凍等の処理を行う。
よる各実施形態を、ATMネットワーク内で通信速度が異
なるデータ転送が介在する場合に応用するときの実施形
態について説明する。図7において、汎用計算機GPC
は、CPU(中央演算装置),ハードディスクやホストメ
モリ等の大容量記憶媒体MSD,複数のATMアダプタ,これ
らの間のデータ転送を行う汎用データバスGPDBを有する
ものであり、例えば図1に示す実施形態では受信側で用
いるホストCPU・F1とその周辺装置に対応するものであ
る。この場合、汎用計算機GPCはATMスイッチ&2次サー
バSVRとして機能し、ATMのアダプタADP1,ADP2を介して
それぞれ端末T1,T2が接続される。この端末T2が、図1
に示す実施形態では、送信側で用いるホストCPU・F1と
その周辺装置に対応するものである。したがって、図7
に示す実施形態は、図1に示す受信側で用いるホストCP
U・F1とその周辺装置に、さらにネットワークアダプタ
カードを介して他の端末(ここでは端末T1)を接続した
構成に対応している。
9によって通信を実行することができる。
を対応させることによって、汎用データバスGPDBを介し
て複数のATMアダプタ間でATMセルを転送するとともに、
アダプタADP1,ADP2からのデータを大容量記憶媒体MSDに
蓄積させることにより、汎用計算機GPCをATMスイッチ&
2次サーバSVRとして機能させる。
ファイル転送を行う際、端末T1から端末T2に対するリン
ク設定のためのシグナリングセルに含まれる情報要素内
容により、ATMスイッチ&2次サーバSVRが大容量ファイ
ル転送のためのATMリンクであることを認識する。
端末T1との間でシグナリングすることにより、端末T1と
大容量記憶媒体MSDとの間でリンク1を設定する。
ランダムアクセスコマンドが、端末T1からATMスイッチ
&2次サーバSVRへ送られて、大容量記憶媒体MSDのI/F
コントローラ内のFIFOにスタックされる。
端末T2との間でシグナリングすることにより、大容量記
憶媒体MSDと端末T2との間にリンク2を設定する。
イルをリンク2を使って端末T2からシーケンシャルに読
み出し、端末T1に転送する代わりに、汎用データバスGP
DBを介して大容量記憶媒体MSDに一括転送する。
シグナリングによって端末T2とATMスイッチ&2次サー
バSVRとの間のリンク2を解放する。
ーラのFIFOに蓄積されている大容量ファイルへのランダ
ムアクセスコマンドを順次実行し、リンク1を介して、
大容量ファイルデータをATMスイッチ&2次サーバSVRか
ら端末T1へランダムに転送する。
に、ATMスイッチ&2次サーバSVRと端末T1との間でリン
ク解放のためのシグナリングを行い、大容量ファイルの
ランダムなデータ転送を終了する。
する。図8は同実施形態によるATMファイル転送方法を
実現するための装置の構成を示すブロック図であり、同
装置は汎用計算機によるATMスイッチ&2次サーバD100
である。同図に示す各構成は、ホストCPU・C101、DRAM
(ダイナミックRAM)等で構成されるホストメモリC10
2、高速の汎用バスであるPCIバスC103、ホストCPU・C10
1とPCIバスC103を結ぶホスト−PCIブリッジC104、コン
テンツサーバ(後述)側に接続する155MbpsのATMアダプ
タC105、ハードディスクC106、ユーザ端末(後述)側に
接続する25MbpsのATMアダプタC107である。
100とユーザ端末,コンテンツサーバ,ATMスイッチをATM
で接続した場合の構成例を示している。図9に示す各構
成は、図8に示した汎用計算機によるATMスイッチ&2
次サーバD100、PC(パーソナルコンピュータ)などのユ
ーザ端末D200、コンテンツサーバD300、コンテンツサー
バD300とATMスイッチ&2次サーバD100とを結ぶATMスイ
ッチD400である。
がPCIバスで接続されて構成されている。また、コンテ
ンツサーバD300はCPU・D331,ハードディスクD332,ATMア
ダプタD333がそれぞれPCIバスで接続されて構成されて
いる。
する。
ンツサーバD300からATMスイッチ&2次サーバD100に大
容量ファイルデータを一括転送する際のプロトコルスタ
ックとデータの流れを示してある。なお、同図におい
て、SSCFはCO(コネクション)型サービスに固有な機能
であるサービス依存コーディネーション機能,SSCOPは全
てのCOサービスに共通な機能を規定するサービス依存コ
ネクション型プロトコル,SARはセル分割・組立サブレイ
ヤである。
2次サーバD100に対してランダムアクセスする際のプロ
トコルスタックとデータの流れを示してある。まず、ユ
ーザ端末D200はシグナリング(例えばQ.2931といったプ
ロトコル)によってコンテンツサーバD300のATMアドレ
スへATMリンクを設定しようとする。このとき、ATMスイ
ッチ&2次サーバD100は特定のVCI,VPI(VCI=5,VPI=
0)をシグナリングセルと認識し、さらにQ.2931のシグ
ナリングセルで運ばれる情報要素内容により、ユーザ端
末D200がコンテンツサーバD300の大容量ファイル(ハー
ドディスクD332)へアクセスしようとしていることを知
る。
サーバD300を疑似し、ユーザ端末D200との間でシグナリ
ングを行い、ユーザ端末D200とATMスイッチ&2次サー
バD100のハードディスクC106との間でリンク(25Mbps)
を設定する。すなわち本発明では、ユーザ端末D200とコ
ンテンツサーバD300間にATMリンクを設定するのではな
い。そしてこのリンクによって、ユーザ端末D200から見
ると、ATMスイッチ&2次サーバD100が仮想的にコンテ
ンツサーバとなる。また、ユーザ端末D200からコンテン
ツサーバD300に向けて送られた大容量ファイルのランダ
ムアクセスのためのコマンドは、ハードディスクC106の
I/Fコントローラ(PCIバスコントローラ)内のFIFO(Fi
rst In First Out memory:最初に入力された情報を最初
に出力する先入れ先出し型のメモリで図示を省略してあ
る)にスタックされる。
0はユーザ端末D200になりかわり、シグナリング(Q.293
1)によって、ATMスイッチD400を介してコンテンツサー
バD300と155MbPsのATMリンクを設定する(図10のCプレ
ーンのデータの流れを参照)。
端末D200がアクセスするコンテンツサーバD300内の大容
量ファイルをシーケンシャルに読み出し、ATMアダプタC
105内でPHY(物理),ATM,AAL5の各レイヤを終端された
データはCPCS−PDU(CS共通部−プロトコルデータユニ
ット)の形でPCIバスC103に転送され、ホスト−PCIブリ
ッジC104を介して、一旦、ホストメモリC102に蓄積され
る。このとき、ATMアダプタC105内のAAL5以下のレイヤ
の処理は総てハードウエアで実現可能である。
ブリッジC104の転送速度はATMリンクの転送速度(155Mb
ps)に比べて十分高速であるため、155MbpsのATMリンク
のスループットを制限することなく、大容量ファイルを
ホストメモリC102に一括転送することが可能である。
グナリングによってコンテンツサーバD300とATMスイッ
チ&2次サーバD100とのATMリンクを解放する。
は、再び、ホスト−PCIブリッジC104,PCIバスC103を介
してハードディスクC106へ転送される。ここで、前述し
たようにハードディスクC106内のI/FコントローラのFIF
Oには、ユーザ端末D200からの大容量ファイルへのラン
ダムアクセスコマンドがスタックされている。これを順
に実行することで、ATMリンクによって大容量ファイル
データがATMスイッチ&2次サーバD100からATMアダプタ
C107(25Mbps)を介してユーザ端末D200へ逐次転送され
る。
スが終了後、ユーザ端末D200との間でATMリンク解放の
ためのシグナリングが行われて、大容量ファイルのラン
ダムなデータ転送が終了する。
モリやハードディスク等の大容量記憶媒体とデータバス
を有する計算機を端末間に組み込んでATMスイッチ及び
サーバとして機能させ、第1の端末から第2の端末への
アクセスの際に、第2の端末から大容量ファイルを大容
量記憶媒体に一括転送し、その後、第1の端末から計算
機の大容量記憶媒体へランダムアクセス可能としたもの
で、第1の端末側からすると計算機が仮想的に第2の端
末となり、第2の端末からは計算機が第1の端末に見え
る。このように、大容量記憶媒体とATMスイッチを組み
合わせることにより、インタフェース速度の異なるATM
リンクの速度変換が行えるだけでなく、大容量記憶媒体
が2次サーバとして利用できるため、大容量ファイルの
ランダムアクセスといった大きな負荷を分散でき、高い
転送スループットが実現できるという効果が得られる。
るとともに高速な汎用データバスを採用したので、上記
効果に加え、上述した本発明の機能を汎用計算機上で安
価に実現できるという効果が得られる。
台のみATMスイッチ&2次サーバD100に接続する例を示
しているが、ユーザ端末D200の台数は、2台以上の複数
であってもよい。
量ファイルに同時にアクセスする場合に適用した実施形
態を説明するための図である。図12は本発明の一実施形
態におけるファイル転送装置の構成図で、この転送シス
テムは、例えばパーソナルコンピュータから成る送信計
算機1と、送信計算機1のハードディスク2と、例えば
パーソナルコンピュータから成る受信計算機群31〜3n
と、受信計算機群31〜3nのハードディスク群41〜4nと、
送信計算機1と受信計算機群31〜3nとを接続するネット
ワーク5とを備えている。
明する。受信計算機群31〜3nから送信計算機1に対し
て、ファイルへのランダムアクセスの要求があったとす
る。これは、例えば上記系をVODシステムに適用した場
合、送信側計算機はビデオサーバに、受信側計算機群は
クライアントに、ファイルは映画などのビデオソフト
に、ランダムアクセスはこのビデオソフトへの一時停止
や巻きもどしや早送りに相当する。
要求される複数のランダムアクセスにリアルタイムに応
答する代わりに、それぞれの受信計算機に要求されたデ
ータを含むファイルをファイルごと一括して転送し、受
信計算機のハードディスク群41〜4nへコピーする。この
際、例えば受信計算機31に転送が行われている間は、他
の受信計算機群32〜3nからのアクセス要求は一旦送信計
算機1でスタックしておき、受信計算機31への転送が終
了するまではこれらの要求には応答しない。また、一つ
の受信計算機に対する応答は、1つのファイルの中のあ
ちこちの部分へのランダムなアクセスに直接応答するの
ではなく、ファイルの先頭から末尾までのシーケンシャ
ルな読み出しのみを行う。ファイルへのランダムアクセ
スは、各受信計算機のハードディスク上にコピーされた
ファイルに、各受信計算機がローカルで行う。
おいては、クライアントからのランダムアクセスに直接
応答しようとすると、ソフトの割り込み時間とサーバプ
ロセッサの負荷が著しく増加し、サーバに計算機を高性
能化しても収容するクライアントの数を増やすことは困
難である。また、ハードディスクへのアクセスは、読み
書きヘッドが移動してディスクのシリンダに位置付けす
るためのシーク動作速度が機械的に最も遅い。このシー
ク時間がネックとなって、ランダムアクセスはシーケン
シャルな読み書きに比べて著しくスループットが低下す
る。これらは結局、データの読み出しという真際の処理
が細切れに行われ、処理と処理の間の移行時間が全体の
処理に必要な時間を大部分を占めることに起因ずる。
は出来る限り割り込み時間やソフト処理を減らし、また
ハードディスクはシーケンシャルな読み出しに専念する
ことにより、処理と処理との間の移行時間を最小限にす
ることにより、トータルのスループットを向上させてい
る。
順の他の実施形態について説明する。図13は、送信側及
び受信側計算機がそれぞれ接続されたネットワークにお
けるデータ転送手順を示すタイムチャートである。送信
側及び受信側計算機は、それぞれ送信すべきデータを蓄
積するための送信側メモリと、受信データを蓄積するた
めの受信側メモリと受信時刻を計時するためのタイマを
備えている。図1に示す実施形態と比較した場合、図13
に示す送信側計算機は、図1に示す送信側で用いるホス
トCPU・F1とその周辺装置に対応し、図13に示す受信側
計算機は、図1に示す受信側で用いるホストCPU・F1と
その周辺装置に対応している。
落し、SEQ=60のデータにエラーが発生する場合を示し
ている。
その時の通信プロトコル、例えば、UDP/IP(User Datag
ram Protocol:ユーザーデータグラムプロトコル/Intern
et Protocol:インターネットプロトコル)やATM/AAL−
5に応じて、読み出したデータをパケットに分割してネ
ットワークに送信する。送信するパケットには、そのパ
ケットの送信側メモリにおける先頭アドレスとパケット
長を記録しておく。送信側は受信側からの応答確認(AC
K)を持つことなく、通信路の帯域に応じた転送速度で
データ(SEQ=10,20,…,110)を送る。パケットを受信
した受信側計算機は、パケットの欠落やエラーがなけれ
ば送信側にACKを返すことなく受信データをメモリに順
次蓄積してゆく。受信側計算機は、パケットの欠落が発
生した場合には(SEQ=40のパケット)、所定の時間が
経過した後、そのパケットの送信側先頭アドレスとパケ
ット長を付与して送信側に再送要求する(NAK=40)。
また、受信したパケットにエラーがあった場合には(SE
Q=60のパケット)、そのパケットを直ちに廃棄すると
ともに、そのパケットの送信側先頭アドレスとパケット
長を付与して送信側に再送要求する(NAK=60)。受信
機側計算機は、欠落やエラーがあった場合には、欠落あ
るいは廃棄したパケットが格納されるべき受信側メモリ
領域をそのまま空白にしておき、以降受信するエラーの
ないパケットをこの空白領域以降の領域に蓄積して行
く。
場合には、所定時間経過後に送信側に再送要求すること
としているが、欠落が発生した場合に直ちに送信側に再
送要求することも可能である。また、欠落あるいはエラ
ーによってパケット長を得ることができなかったパケッ
トが格納されるべき受信側メモリ領域の容量は、次に正
しく受信したパケット(この場合、SEQ=50のパケッ
ト)に付与されている送信側メモリにおける先頭アドレ
スの値に従って決定することができる。
40)された先頭アドレスとパケット長を用いて再送パケ
ットを選択的に送信側メモリから読み出して再構成し、
受信側へ再送する。そして、再送パケットを受け取った
受信側は、その再送パケットを必要に応じて再構築し、
空白のまま残しておいた対応する受信側メモリ領域に蓄
積する。この場合、受信側からの再送要求には、再送す
べき送信側先頭アドレスとパケット長が付与されている
ので、送信側では、容易に再送パケットを再構成するこ
とができる。また、再送要求のあったパケットの先頭ア
ドレスとパケット長の値をスタックしておけば、途中で
送信を止めずに全データの送信してしまい、複数のパケ
ットの再送を最後にまとめて行うこともできる。
IPを用いた計算機間データ転送に適用する場合について
説明する。この実施形態では、UDPパケットがデータ転
送におけるパケットに相当するものである。従来、IPは
コネクションレス通信のネットワーク層プロトコルとし
て広く普及しているが、データ通信等高い信頼性が要求
される場合、上位のトランスポート層プロトコルには前
述のTCPを用いるのが普通である。しかし、通信路に著
しい輻輳がなく受信側バッファ量が十分であれば、本発
明によるデータ転送方法を用いた上でトランスポート層
にUDPを使えば、十分な信頼性と効率的なデータ転送が
両立できる。
トのサイズは最大が64kBの可変長である。この場合、送
信パケットに付与するパケット長はUDPヘッダのLength
フィールドにマッピングされている。送信側先頭アドレ
スはIPヘッダの未使用のフィールド(例えば最大32ビッ
トのIP Optionフィールド)にマッピングしておく。UDP
では、送信元及び宛先のIPアドレスをマッピングした疑
似ヘッダを付加した上で、ヘッダと全データのチェック
サムを行う。このチェックサムを用いることで通信中の
パケットの損傷を検出することができる。またパケット
の欠落は、受信側のタイムアウト値以内に特定の先頭ア
ドレスのパケットの未到達で判断する。これらを用い
て、前述の方法でデータの転送及び再送要求を行う。
た計算機間データ転送に適用する場合について説明す
る。この実施形態ではCPCS−PDU(Common Part Converg
ence Sublayer−Protocol Data Unit:CS共通部プロトコ
ルデータユニット)がデータ転送におけるパケットに相
当し、ATMセルがデータ転送におけるセルに相当する。A
AL−5はデータ転送の効率化を計る目的で、SAR−PDU
(Segmentation And Reassembly−PDU:セル分割・組立
サブレイヤ)にヘッダやトレイラを設けず、CPCS−PDU
毎にのみエラーチェックを行う。
である。CPCS−PDUのサイズは最大が64kBの可変長であ
る。この場合、送信パケットに付与するパケット長はCP
CS−PDUトレイラのLI(Length Indicator)フィールド
にマッピングされている。送信側先頭アドレスはCPCS−
PDUトレイラの未使用のフィールド(例えば8ビットのC
PCS−UU(CPCSユーザー・ユーザ間情報)フィールドやC
PI(Common Part Identifier:共通部識別子)フィール
ド)にマッピングしておく。CPCSでは複数のSAR−PDUを
まとめてCRC−32(Cyclic Redundancy Check−32:32ビ
ットの巡回冗長符号)のエラーチェックを行う。転送単
位はこのSAR−PDUにATMヘッダを付けたATMセルであるか
ら、セルの欠落と損傷がこのCRC−32チェックで同時に
検出できる。これらを用いて、前述の方法でデータの転
送及び再送要求を行う。
ト毎に行うことをせずに、送信パケットの先頭アドレス
と長さを送受信間で通信することで、転送の高速化とエ
ラー検出されたパケットの再送の効率化を同時に実現で
きる。
データを複数パケットに分割して転送する場合に、パケ
ット毎に応答確認を行うことなく一括して送信するた
め、従来より著しく転送効率を向上させることができ
る。また、通信中のエラーが原因で再送が必要になった
場合、パケットの先頭アドレスとパケット長を送受信間
で通信した上で、受信側から特定パケットを選択的に再
送要求する方法をとる。これにより、再送開始のために
送信側タイマの終了を待つ必要がなく、かつ余分なパケ
ットを再送することもなくなる。さらに再送パケットを
送信側で再構成する時のソフト処理とメモリ管理を最小
限にすることができるため、TCP等と比較してはるかに
簡単で効率的な再送処理が実現できる。また、特に、本
発明のデータ転送方法はバルクデータの転送に用いるの
に好適である。
受信計算機間にルータとしての機能を提供する中継用計
算機を追加した場合の構成に適用する場合の実施形態に
ついて説明する。この実施形態では、中継計算機が、図
1に示す図1に示すホストCPU・F1とその周辺装置の送
信側と受信側の双方の機能を提供するものに対応する。
する場合について以下に説明する。図16に本発明におけ
る転送シーケンス例を示す。この実施形態では、CPCS−
PDUがデータ転送におけるパケットに相当する。CPCS−P
DUのサイズは最大が64kByteの可変長である。
読み出し、CPCS−PDUペイロードにカプセル化する。そ
の際に、該メモリブロックの転送を行うファイルの先頭
からのオフセットアドレスをCPCS−PDUトレイラ部のCPC
S−UUとCPIの16bit部分にマッピングする(図15参
照)。そして、ATMセル化、物理レイヤ終端後、宛先に
向けてデータを送信する(SEQ=10、20、…100)。
ヤ、AALレイヤ終端を行う。AALレイヤ終端時にCPCS−UU
とCPIにマッピングされたアドレス情報を取り出し、該
アドレスとPDUのサイズであるLIの情報をもとに該計算
機に於てデータ転送用に確保したメモリ領域にデータを
CPCS−PDU単位でDMA(Direct Memory Access:ダイレク
トメモリアクセス)転送し、データを蓄積する。データ
を中継する計算機の大容量メモリに一時的に蓄積するこ
とによってリンク間の転送速度に応じて速度変換を行う
ことが可能となる。
信したアドレスと長さの情報をもとに該メモリ領域から
DMA転送により、データを読み出す。これにより、装置
内のデータ転送においてこれまで転送処理やメモリ管理
を集中的に処理していたホストCPUの負荷が軽減される
と共に、転送処理にソフト処理が関与しないため高速化
することができる。
Uペイロードにデータをカプセル化し、CPCS−UU、CPIに
アドレスを格納することによって送信側計算機によって
付与されたアドレス情報の保存を行う。これにより、送
信側計算機から受信計算機まで、エンド・エンドで計算
機間のメモリ間をアドレスとサイズ情報を活用した高速
蓄積転送が可能になる。
る。パケットを中継する計算機と最終的にパケットを受
信する計算機では、データを受信し物理レイヤ、ATMレ
イヤ、AALレイヤ終端を行う。AALレイヤ終端時にCRC−3
2計算によりエラーを検出したデータ(SEQ=40,60)に
ついては、CPCS−PDU単位で直ちにデータを廃棄し、該
計算機にデータを送信した計算機に対してアドレスとPD
U長を含んだ再送要求用セル(NAK=40,60)を送る。
メモリ領域から再送すべきデータを読み出し、再びCPCS
−PDUにカプセル化して再送する。このように、アドレ
スとサイズの情報を付与してデータを転送すると共にデ
ータの中継を行う計算機間で蓄積しながら転送すること
によって送信側計算機と受信側計算機間だけでなく、中
継計算機間においても下位レイヤによるハードウェア処
理を主体として効率良い再送が可能となり、ネットワー
ク全体からみても再送にかかわる負荷が大幅に軽減され
る。
プロトコルを終端するネットワークインタフェースアダ
プタによって構成される汎用計算機アーキテクチャから
成るデータ転送装置の構成例について説明する。図17に
装置構成例を示す。この図に示す各構成は、パケットを
受信し、物理レイヤ、ATMレイヤ、AALレイヤ処理を行う
ネットワークインターフェースアダプタ(あるいはネッ
トワークアダプタカード)C508、C509、C510、及びC51
1、高速な汎用データバスであるPCIバスC506及びC507、
PCIバスとホストバスをインタフェースするホスト−PCI
バスブリッジ回路C504及びC505、ホストバスC503、ホス
トCPU(中央演算装置)C502、DRAMで構成されるホスト
メモリC501である。ネットワークインタフェースアダプ
タC508によってデータを受信し、物理レイヤ、ATMレイ
ヤ終端後、セルヘッダのVPI/VCI値により、転送先の計
算機と接続されているネットワークインタフェースアダ
プタを識別する。そして、同一VPI/VCI値のセルをバッ
ファリングしてAALレイヤまでカード内で終端する。AAL
レイヤ終端時にCRC−32計算によりデータエラーのチェ
ックを行うと共にCPCS−PDUトレイラ部にマッピングさ
れているアドレス情報とサイズを取り出し、ローカルCP
UがホストメモリC501に対してCPCS−PDU単位でDMA転送
をセットする。ホストメモリにおいて転送に使用可能な
領域はあらかじめホストCPUからローカルCPUに対してそ
のベースアドレスとサイズを通知しておく。CPCS−PDU
トレイラ部より取り出したアドレス情報、LIに格納され
ているPDU長、ホストCPUにより通知を受けたデータ蓄積
用ホストメモリ領域のベースアドレス、サイズの情報を
もとにローカルCPUはホストメモリに格納するアドレス
の再計算を行い、新たなアドレスを求めることも可能で
ある。これによりホストメモリをリングバッファとして
使用することも可能になり、転送するファイルサイズ分
のメモリ領域をホストメモリ中に確保できない場合にお
いても効率を損なうことなくデータ転送を行うことがで
きる。そしてネットワークアダプタカードC508のローカ
ルCPUは、VPI/VCI値から決定された転送先のネットワー
クインタフェースアダプタC511のローカルCPUに対して
前記アドレスとサイズ情報を通知する。通知を受けたネ
ットワークインタフェースアダプタC511のローカルCPU
は、DMA転送をセットしホストメモリC501からデータを
読み出す。データを読み出した後、AALレイヤ処理時にC
PCS−PDUトレイラ部(CPCS−UU、CPI)に前記通知を受
けたアドレスをマッピングする。これによりアドレス情
報の保存を行う。その後、ATMレイヤ処理部でセル化さ
れ宛先となる計算機に向けて送信される。
可能であり、ホストバスのデータ転送速度はPCIバス(3
2bit/33MHz=132MB/s)より高速(64bit/66MHz=528MB/
s)であるためPCIバス側からはホストメモリに対してデ
ータ書込と読み出しが同時に行えるようにみえる。例え
ば、ネットワークインタフェースアダプタカードC508で
受信したパケットはPCIバスC507のトラヒック状態に関
係なくホストメモリに書き込むことが可能である。そし
てホストメモリに蓄積したデータはPCIバスC507のトラ
ヒック状態に応じて読み出すことにより、輻輳時にはデ
ータを蓄積し、トラヒック量が少ないときは直ちに読み
出すといった高速かつ柔軟なデータ転送が可能となる。
バストラヒックのコントロールはホストPCIバスブリッ
ジのバスアービトレーション機能によつてハードウェア
により高速に処理される。
に付与されているアドレス情報とサイズ情報を活用する
ことにより、ソフトウェアによるメモリ管理が簡素化さ
れ計算機間の通信において蓄積転送処理を高速化でき
る。さらに、エラーデータの再送を送信側計算機と受信
側計算機間だけでなく中継を行う計算機間で選択的に行
うことができ、TCPと比較して効率的な再送処理が実現
できる。特に、本発明のデータ転送方法はバルクデータ
の転送に好適である。
てパケットに付与するアドレスの他の形態について説明
する。
64ビットのアドレス体系の一例を示す図である。先頭32
ビットはIPアドレスで、TCP/IP通信で通信相手を特走す
るための論理アドレスである。2番目の24ビットは、計
算機内に蓄積されたデータの格納場所を示すメモリアド
レスである。ただし、これはメモリの0番地を起点にし
た絶対アドレスではなく、転送するファイルの先頭位置
を起点とするオフセットアドレスである。3番目の3ビ
ットは計算機のSCSI(Small Computer System Inerfac
e)バスに接続されるSCSIデバイスを認識するSCSI−ID
である。最後の5ビットで通信プロトコルを指定する。
ことが出来る。通信に使われるプロトコルが従来のIP通
信であれば、メモリアドレス以下を読まずにIPパケット
にカプセル化すればIPルータを介した通信がそのまま可
能である。転送メモリブロックにメモリアドレスを付与
して通信するプロトコルでは、2番目のメモリアドレス
(オフセットアドレス)を読み込むようにする。また3
番目のSCSI−IDを使用することにより、計算機内のSCSI
デバイスを直接指定することができる。
信プロトコルや計算機内外を問わないデータ通信機構を
確立することができる。
場合、図19に示すようにパケットにアドレスを付与する
ことができる。図に示すように、通常、IP通信に使われ
るIPの情報はIPヘッダの中に収容される。IP処理される
データにはIPヘッダが付けられ、上位層から渡されたデ
ータをIPヘッダによってカプセル化し、下位層に渡す。
逆に下位層から来たデータはIPヘッダの内容を解析し、
必要に応じて上位層に渡す。IPヘッダの中のオプション
フィールドは可変長の長さを持ち、セキュリティレベル
やソースルートなど特別の目的を除いて通常は使用され
ない。このオプションフィールドに転送メモリブロック
のメモリアドレスをマッピングすることにより、通常の
IPルータを介した本発明によるデータ転送が可能とな
る。
るファイル転送方法を実行するためののプログラムは、
フロッピーディスク、光ディスク、磁気光ディスク等の
記憶媒体に格納して配布させることが可能である。ま
た、インターネットなどのネットワークを使用して配布
することも可能である。
が、本発明は、その精神又は主要な特徴から逸脱するこ
となく、他のいろいろな形で実施することができる。そ
のため、前述の実施形態例はあらゆる点で単なる例示に
すぎず、限定的に解釈してはならない。本発明の範囲
は、特許請求の範囲に示すものであって、明細書本文に
は何ら拘束されない。さらに、特許請求の範囲の均等論
に属する変形や変更は、すべて本発明の範囲内となる。
Claims (14)
- 【請求項1】ファイルの転送元及びファイルの転送先で
それぞれ、データ転送を行うための汎用データバス、第
1の記憶媒体、及び該第1の記憶媒体より入出力速度が
速い第2の記憶媒体から成る汎用計算機アーキテクチャ
を用いて、 ファイルの転送元で、通信リンクを設定する前に、第1
の記憶媒体内のファイルデータに対して、少なくとも圧
縮、プロトコル終端、及びフレーミングの中のいずれか
1つの処理を行いながら、該ファイルデータを汎用デー
タバスを介して第2の記憶媒体へ順次転送する手順と、 前記ファイルの転送元で、前記ファイルデータに対する
処理の完了後、通信リンクを設定し、前記第2の記憶媒
体内のファイルデータを、それに対して処理を施さず
に、前記汎用データバスを介して直接、該汎用データバ
スに接続されている計算機通信用のネットワークアダプ
タカードへ一括転送し、該ネットワークアダプタカード
からネットワークへ伝送する手順と、 ファイルの転送先で、前記ネットワークから該転送先の
汎用データバスに接続されているネットワークアダプタ
カードへ伝送された前記ファイルデータを、データの解
凍、プロトコル終端、及びフレーミングを含むいずれの
処理も施さずに、該汎用データバスを介して第2の記憶
媒体へ一括転送し、前記通信リンクを解放する手順と、 前記ファイルの転送先で、前記通信リンクを解放した
後、前記第2の記憶媒体内のデータに対して、少なくと
も解凍処理、通信処理の中のいずれか1つの処理を行い
ながら、順次処理された前記第2の記憶媒体内のデータ
を前記汎用データバスを介して第1の記憶媒体へ転送す
る手順とを有し、 前記転送元で、前記ファイルデータを前記ネットワーク
アダプタカードから前記ネットワークへ伝送する場合
に、 該ファイルデータを1個または複数個のパケット単位で
転送し、かつ 該パケットの転送先を指定するネットワークアドレスと
して、前記転送元の第2の記憶媒体内で該パケットに対
応するデータが格納されている場所に対応するメモリア
ドレスを用いる ことを特徴とするファイル転送方法。 - 【請求項2】請求項1記載の転送方法において、 ネットワーク層のプロトコルとしてインターネットプロ
トコル(IP)を用い、 IPヘッダのオプション領域に、前記メモリアドレスを付
与すること を特徴とするファイル転送方法。 - 【請求項3】請求項1記載のファイル転送方法におい
て、 前記転送元で、前記ファイルデータを前記ネットワーク
アダプタカードから前記ネットワークへ伝送する場合
に、 該ファイルデータを1個または複数個のパケット単位で
転送し、かつ 該パケットの転送先を指定するネットワークアドレスと
して、ネットワーク層の論理的アドレス、前記転送元の
第2の記憶媒体内で該パケットに対応するデータが格納
されている場所に対応するメモリアドレス、及び前記転
送先の所定のハードウェアを識別するためのハードウェ
アアドレスを統合して定義されたワールドワイドにユニ
ークな一次元のアドレスを用いる ことを特徴とするファイル転送方法。 - 【請求項4】請求項1記載のファイル転送方法におい
て、 前記転送元で、前記ファイルデータを前記ネットワーク
アダプタカードから前記ネットワークへ伝送する場合
に、前記データファイルが1個または複数個のパケット
単位で転送され、 さらに、 前記ファイルの転送元で、前記ファイルデータを該ネッ
トワークアダプタカードから前記ネットワークへ伝送す
る手順が、 送信パケットに前記転送元の第2の記憶媒体における該
パケットに対応するデータの先頭アドレスとパケット長
を付与して、前記転送先からの肯定応答を待たずに該パ
ケットを順次送信する手順と、 前記転送先からパケットの再送要求を受けたときには、
該再送要求を受けたパケットのみを選択的に該転送元の
第2の記憶媒体から読み出して再送する手順を含み、 前記ファイルの転送先で、前記通信リンクを解放する手
順が、 受信したパケットのエラーチェックを行い、途中でデー
タの欠落及び誤りが発生しなかった受信パケットを、前
記転送元へ肯定応答を返すことなく、該転送先の第2の
記憶媒体へ順次蓄積してゆく手順と、 データの欠落及びデータの誤りの中の少なくとも一方が
検出されたパケットについては、直ちにこれを廃棄し、
該パケットの蓄積されるべき記憶領域を該パケット容量
分だけ空けておき、以降受信する欠落及び誤りのないパ
ケットを順次蓄積してゆくとともに、前記検出されたパ
ケットの先頭アドレスとパケット長を前記転送元へ通知
して再送を要求する手順と、 再送パケットを受け取った後、該パケットを前記空けて
おいた記憶領域に蓄積する手順を含む ことを特徴とするファイル転送方法。 - 【請求項5】請求項1記載のファイル転送方法におい
て、 前記ファイルの転送先に、ネットワークインタフェース
カードを介して複数の端末を接続し、 該複数の端末の中の1つである第1の端末が、前記ファ
イルの転送元からデータファイルを読み出す際に、 前記転送先が、前記転送元になり変わり、前記第1の端
末との間で第1の通信リンクを確立し、 前記転送先が、前記第1のリンクを介して前記第1の端
末から送られる前記ファイルへのランダムアクセス要求
をスタックし、 前記転送先が、前記第1の端末になり変わり、前記転送
元との間で第2のリンクを確立し、 前記転送先が、前記第2のリンクを用いて前記データフ
ァイルを前記転送元からシーケンシャルに読み出し、該
読み出したデータファイルを該転送先の第2の記憶媒体
へ一括転送し、 前記転送先が、前記一括転送終了後に前記第2のリンク
を解放し、 前記転送先が、前記第2の記憶媒体内のデータに対し
て、少なくとも解凍処理、通信処理の中のいずれか1つ
の処理を行いながら、順次処理された前記第2の記憶媒
体内のデータを前記汎用データバスを介して該転送先の
第1の記憶媒体へ転送し、 前記転送先が、前記ランダムアクセス要求を順次実行
し、前記第1のリンクを介して前記ファイルデータを該
転送先の第1の記憶媒体から前記第1の端末へランダム
に転送し、 前記転送先が、前記ランダム転送終了後に前記第1のリ
ンクを解放する ことを特徴とするファイル転送方法。 - 【請求項6】請求項5記載の転送方法において、 前記転送元に対して同時に複数の端末から複数のランダ
ムアクセス要求があった場合に、 前記転送先が、前記同時に要求された複数のランダムア
クセス要求を整理して、順次、各端末がランダムアクセ
ス要求したデータファイルを前記転送元から一括してシ
ーケンシャルに読み出す ことを特徴とするファイル転送方法。 - 【請求項7】請求項5記載のファイル転送方法におい
て、 前記転送先をパケットのルータとして機能させ、 前記転送先が前記第2のリンクを用いて前記データファ
イルを前記転送元からシーケンシャルに読み出し、該転
送先の第2の記憶媒体へ一括転送する際に、前記転送元
が、前記データファイルを1個または複数個のパケット
単位で、かつ該パケットに前記転送元の第2の記憶媒体
内で該パケットに対応するデータが格納されている場所
を示すメモリアドレスとサイズの情報を付与して送信
し、 前記転送先が該転送先の第2の記憶媒体内のデータに対
して、少なくとも解凍処理、通信処理の中のいずれか1
つの処理を行いながら、順次処理された該第2の記憶媒
体内のデータを前記汎用データバスを介して該転送先の
第1の記憶媒体へ転送する際に、該転送先が、前記転送
元によって付与されたメモリアドレスとサイズの情報に
元に、該第2の記憶媒体内の受信パケットを該転送先の
第1の記憶媒体に蓄積し、 前記転送先が前記ランダムアクセス要求を順次実行し、
前記第1のリンクを介して前記ファイルデータを該転送
先の第1の記憶媒体から前記第1の端末へランダムに転
送する際に、前記転送先が、前記データファイルを1個
または複数個のパケット単位で、かつ、前記転送元によ
って付与されたメモリアドレスとサイズの情報を再び該
パケットに付与して前記第1の端末へ転送し、 さらに、前記第1の端末において、前記パケットに付与
されたメモリアドレスとサイズの情報を元に該第1の端
末の所定の記憶領域にデータを蓄積する ことを特徴とするデータ転送方法。 - 【請求項8】データ転送を行うための第1の汎用データ
バスと、 第1の記憶媒体と、 前記第1の記憶媒体より入出力速度が速い第2の記憶媒
体と、 前記第1の汎用データバスに接続されている計算機通信
用の第1のネットワークアダプタカードと、 通信リンクを設定する前に、前記第1の記憶媒体内のフ
ァイルデータに対して、少なくとも圧縮、プロトコル終
端、及びフレーミングの中のいずれか1つの処理を行い
ながら、該ファイルデータを前記第1の汎用データバス
を介して前記第2の記憶媒体へ順次転送するための第1
の転送手段と、 前記ファイルデータに対する処理の完了後、通信リンク
を設定し、前記第2の記憶媒体内のファイルデータに対
して処理を施さずに、該ファイルデータを、前記第1の
汎用データバスを介して直接、前記第1のネットワーク
アダプタカードへ一括転送し、該第1のネットワークア
ダプタカードからネットワークへ伝送するための伝送手
段と、 を有する転送元計算機と、 データ転送を行うための第2の汎用データバスと、 第3の記憶媒体と、 前記第3の記憶媒体より入出力速度が速い第4の記憶媒
体と、 前記第2の汎用データバスに接続されている計算機通信
用の第2のネットワークアダプタカードと、 前記ネットワークから前記第2のネットワークアダプタ
カードへ伝送された前記ファイルデータを、データの解
凍、プロトコル終端、及びフレーミングを含むいずれの
処理も施さずに、前記第2の汎用データバスを介して前
記第4の記憶媒体へ一括転送し、前記通信リンクを解放
するための解放手段と、 前記通信リンクを解放した後、前記第4の記憶媒体内の
データに対して、少なくとも解凍処理、通信処理の中の
いずれか1つの処理を行いながら、順次処理された前記
第4の記憶媒体内のデータを前記第2の汎用データバス
を介して前記第3の記憶媒体へ転送するための第2の転
送手段と を有する転送先計算機と を具備し、前記転送元計算機が、前記ファイルデータを
前記第1のネットワークアダプタカードから前記ネット
ワークへ伝送する場合に、該ファイルデータを1個また
は複数個のパケット単位で転送し、かつ、該パケットの
転送先を指定するネットワークアドレスとして、前記第
2の記憶媒体内で該パケットに対応するデータが格納さ
れる場所に対応するメモリアドレスを用いる ことを特徴とするファイル転送装置。 - 【請求項9】請求項8記載の転送装置において、 ネットワーク層のプロトコルとしてインターネットプロ
トコル(IP)を用い、 IPヘッダのオプション領域に、前記メモリアドレスを付
与すること を特徴とするファイル転送装置。 - 【請求項10】請求項8記載のファイル転送装置におい
て、 前記転送元計算機が、前記ファイルデータを前記第1の
ネットワークアダプタカードから前記ネットワークへ伝
送する場合に、該ファイルデータを1個または複数個の
パケット単位で転送し、かつ、該パケットの転送先を指
定するネットワークアドレスとして、ネットワーク層の
論理的アドレス、前記第2の記憶媒体内で該パケットに
対応するデータが格納されている場所に対応するメモリ
アドレス、及び前記転送先計算機内の所定のハードウェ
アを識別するためのハードウェアアドレスを統合して定
義されたワールドワイドにユニークな一次元のアドレス
を用いる ことを特徴とするファイル転送装置。 - 【請求項11】請求項8記載のファイル転送装置におい
て、 前記転送元計算機が、前記ファイルデータを前記第1の
ネットワークアダプタカードから前記ネットワークへ伝
送する場合に、前記データファイルを1個または複数個
のパケット単位で転送し、 さらに、 前記伝送手段が、 送信パケットに前記第2の記憶媒体における該パケット
に対応するデータの先頭アドレスとパケット長を付与し
て、前記転送先計算機からの肯定応答を待たずに該パケ
ットを順次送信する手段と、 前記転送先計算機からパケットの再送要求を受けたとき
には、該再送要求を受けたパケットのみを選択的に前記
第2の記憶媒体から読み出して再送する手段を有し、 前記解放手順が、 受信したパケットのエラーチェックを行い、途中でデー
タの欠落及び誤りが発生しなかった受信パケットを、前
記転送元計算機へ肯定応答を返すことなく、前記第4の
記憶媒体へ順次蓄積してゆく手段と、 データの欠落及びデータの誤りの中の少なくとも一方が
検出されたパケットについては直ちにこれを廃棄し、該
パケットの蓄積されるべき記憶領域を該パケット容量分
だけ空けておき、以降受信する欠落及び誤りのないパケ
ットを順次蓄積してゆくとともに、前記検出されたパケ
ットの先頭アドレスとパケット長を前記転送元計算機へ
通知して再送を要求する手段と、 再送パケットを受け取った後、該パケットを前記空けて
おいた記憶領域に蓄積する手段を有する ことを特徴とするファイル転送装置。 - 【請求項12】請求項8記載のファイル転送装置におい
て、 さらに、前記転送先計算機にネットワークインタフェー
スカードを介して接続された複数の端末を具備し、 該転送先計算機が、 該複数の端末の中の1つである第1の端末が前記転送元
計算機からデータファイルを読み出す際に、 前記転送元計算機になり変わり、前記第1の端末との間
で第1の通信リンクを確立し、 前記第1のリンクを介して前記第1の端末から送られる
前記ファイルへのランダムアクセス要求をスタックし、 前記第1の端末になり変わり、前記転送元計算機との間
で第2のリンクを確立し、 前記第2のリンクを用いて前記データファイルを前記転
送元計算機からシーケンシャルに読み出し、該読み出し
たデータファイルを前記第4の記憶媒体へ一括転送し、 前記一括転送終了後に前記第2のリンクを解放し、 前記第4の記憶媒体内のデータに対して、少なくとも解
凍処理、通信処理の中のいずれか1つの処理を行いなが
ら、順次処理された前記第4の記憶媒体内のデータを前
記第2の汎用データバスを介して前記第3の記憶媒体へ
転送し、 前記ランダムアクセス要求を順次実行し、前記第1のリ
ンクを介して前記ファイルデータを前記第3の記憶媒体
から前記第1の端末へランダムに転送し、 前記ランダム転送終了後に前記第1のリンクを解放する
手段 を有する ことを特徴とするファイル転送装置。 - 【請求項13】請求項12記載の転送装置において、 前記転送先計算機が、前記転送元計算機に対して同時に
複数の端末から複数のランダムアクセス要求があった場
合に、該同時に要求された複数のランダムアクセス要求
を整理して、順次、各端末がランダムアクセス要求した
データファイルを前記転送元計算機から一括してシーケ
ンシャルに読み出す手段を有する ことを特徴とするファイル転送装置。 - 【請求項14】請求項12記載のファイル転送装置におい
て、 前記転送先計算機がパケットのルータとして機能し、 前記転送元計算機が、前記データファイルを、1個また
は複数個のパケット単位で、かつ該パケットに前記転送
元の第2の記憶媒体内で該パケットに対応するデータが
格納されている場所を示すメモリアドレスとサイズの情
報を付与して送信する手段を有し、 前記転送先計算機が、 前記第4の記憶媒体内のデータに対して、少なくとも解
凍処理、通信処理の中のいずれか1つの処理を行いなが
ら、順次処理された該第4の記憶媒体内のデータを前記
第2の汎用データバスを介して前記第3の記憶媒体へ転
送する際に、前記転送元計算機によって付与されたメモ
リアドレスとサイズの情報に元に、該第4の記憶媒体内
の受信パケットを該第3の記憶媒体に蓄積する手段と、 前記ランダムアクセス要求を順次実行し、前記第1のリ
ンクを介して前記ファイルデータを前記第3の記憶媒体
から前記第1の端末へランダムに転送する際に、前記デ
ータファイルを1個または複数個のパケット単位で、か
つ、前記転送先計算機によって付与されたメモリアドレ
スとサイズの情報を再び該パケットに付与して前記第1
の端末へ転送する手段を有し、 前記第1の端末が、前記パケットに付与されたメモリア
ドレスとサイズの情報を元に該第1の端末の所定の記憶
領域にデータを蓄積する手段を有する ことを特徴とするデータ転送装置。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5051196 | 1996-03-07 | ||
JP5051096 | 1996-03-07 | ||
JP8-50511 | 1996-06-25 | ||
JP8-164883 | 1996-06-25 | ||
JP16488396 | 1996-06-25 | ||
JP8-50510 | 1996-06-25 | ||
PCT/JP1997/000655 WO1997033227A1 (fr) | 1996-03-07 | 1997-03-04 | Procede et appareil de transfert de fichiers sequentiels a grande vitesse, et support d'enregistrement pour le stockage d'un programme en charge dudit transfert |
Publications (1)
Publication Number | Publication Date |
---|---|
JP3329390B2 true JP3329390B2 (ja) | 2002-09-30 |
Family
ID=27293976
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP53165897A Expired - Lifetime JP3329390B2 (ja) | 1996-03-07 | 1997-03-04 | 高速一括ファイル転送方法及び装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US6073180A (ja) |
JP (1) | JP3329390B2 (ja) |
WO (1) | WO1997033227A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9698824B2 (en) | 2013-04-12 | 2017-07-04 | Nec Corporation | Data transfer device, data transfer system, method for compressing and transferring data, and program |
US9807189B2 (en) | 2012-10-19 | 2017-10-31 | Nec Corporation | Data transfer device and data transfer system using adaptive compression algorithm |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100231697B1 (ko) * | 1997-09-04 | 2000-01-15 | 정선종 | 단일링에 기반한 댁내망 장치 |
US5941972A (en) | 1997-12-31 | 1999-08-24 | Crossroads Systems, Inc. | Storage router and method for providing virtual local storage |
USRE42761E1 (en) | 1997-12-31 | 2011-09-27 | Crossroads Systems, Inc. | Storage router and method for providing virtual local storage |
JP3148733B2 (ja) * | 1999-02-26 | 2001-03-26 | 株式会社神戸製鋼所 | 信号処理装置及び信号処理システム |
US6996623B1 (en) * | 1999-09-08 | 2006-02-07 | Matsushita Electric Industrial Co., Ltd. | Reception display apparatus and method for displaying screen partially with certain timing even when all data for the screen has not been received, and computer-readable record medium recording such reception display program |
US6889257B1 (en) * | 1999-12-03 | 2005-05-03 | Realnetworks, Inc. | System and method of transmitting data packets |
JP2001186460A (ja) * | 1999-12-22 | 2001-07-06 | Matsushita Electric Ind Co Ltd | データ記録装置 |
US6963993B1 (en) | 2000-09-28 | 2005-11-08 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Fail-over file transfer process |
US20020133624A1 (en) * | 2001-01-16 | 2002-09-19 | Tony Hashem | System and process for routing information in a data processing system |
US7143179B2 (en) * | 2001-05-24 | 2006-11-28 | Yuri Yaport | Method and system for parallel data transmission on demand to an unlimited number of clients without acknowledgment and on the basis of constant data availability |
ITTO20010813A1 (it) * | 2001-08-13 | 2003-02-13 | Telecom Italia Lab Spa | Procedimento per il trasferimento di messaggi tramite udp, relativo sistema e prodotto informatico. |
US7072291B1 (en) | 2001-08-23 | 2006-07-04 | Cisco Technology, Inc. | Devices, softwares and methods for redundantly encoding a data stream for network transmission with adjustable redundant-coding delay |
US6999417B1 (en) * | 2001-11-30 | 2006-02-14 | Cisco Technology, Inc. | Devices, softwares and methods for incorporating burstiness of packet loss metric in QoS based network routing |
JP4039658B2 (ja) * | 2002-02-08 | 2008-01-30 | 株式会社東芝 | ソフトウエア管理方法、通信システム、端末、アクセスポイント、通信システムの端末で用いるセキュリティ対策ファイルのダウンロード方法 |
KR20030080443A (ko) * | 2002-04-08 | 2003-10-17 | (주) 위즈네트 | 하드웨어 프로토콜 프로세싱 로직으로 구현된 인터넷 통신프로토콜 장치 및 상기 장치를 통한 데이터 병렬 처리 방법 |
US7552077B1 (en) | 2002-06-26 | 2009-06-23 | Trading Technologies International, Inc. | System and method for coalescing market data at a network device |
US20040133699A1 (en) * | 2002-12-04 | 2004-07-08 | Tony Hashem | System and method for performing data transfer |
US7783558B1 (en) | 2004-12-28 | 2010-08-24 | Trading Technologies International, Inc. | System and method for providing market updates in an electronic trading environment |
JP4570952B2 (ja) * | 2004-12-28 | 2010-10-27 | 富士通株式会社 | 高速情報処理装置、高速情報処理方法及びそのプログラム |
US7747513B2 (en) | 2006-10-20 | 2010-06-29 | Trading Technologies International, Inc. | System and method for prioritized data delivery in an electronic trading environment |
JP4941557B2 (ja) | 2007-06-27 | 2012-05-30 | 富士通株式会社 | メモリアクセス制御装置 |
US20090190483A1 (en) * | 2008-01-25 | 2009-07-30 | Inventec Corporation | Network transmission system and a testing method thereof |
US9419910B2 (en) * | 2011-09-13 | 2016-08-16 | Nec Corporation | Communication system, control apparatus, and communication method |
US11138525B2 (en) | 2012-12-10 | 2021-10-05 | Trading Technologies International, Inc. | Distribution of market data based on price level transitions |
US10664548B2 (en) | 2013-07-12 | 2020-05-26 | Trading Technologies International, Inc. | Tailored messaging |
US9489322B2 (en) * | 2013-09-03 | 2016-11-08 | Intel Corporation | Reducing latency of unified memory transactions |
US10412151B2 (en) * | 2015-01-26 | 2019-09-10 | Huawei Technologies Co., Ltd. | Method and system for on-demand file repair |
US9888098B2 (en) | 2015-06-15 | 2018-02-06 | International Business Machines Corporation | Orchestrating resources in a multilayer computing environment by sending an orchestration message between layers |
US11650954B2 (en) | 2020-11-13 | 2023-05-16 | Kyndryl, Inc. | Replication continued enhancement method |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01211147A (ja) * | 1988-02-19 | 1989-08-24 | Fujitsu Ltd | ファイル伝送方式 |
JPH07184024A (ja) * | 1991-05-30 | 1995-07-21 | Konica Corp | ファクシミリ装置 |
JP3127523B2 (ja) * | 1991-10-31 | 2001-01-29 | 株式会社日立製作所 | 通信制御装置およびデータ送信方法 |
JP3268875B2 (ja) * | 1993-02-26 | 2002-03-25 | 株式会社野村総合研究所 | 同報ファイル転送方法およびシステム |
US5887187A (en) * | 1993-10-20 | 1999-03-23 | Lsi Logic Corporation | Single chip network adapter apparatus |
JPH07307738A (ja) * | 1994-05-13 | 1995-11-21 | Mitsubishi Electric Corp | プロトコル処理装置 |
JPH0844649A (ja) * | 1994-07-26 | 1996-02-16 | Hitachi Ltd | データ処理装置 |
US5548587A (en) * | 1994-09-12 | 1996-08-20 | Efficient Networks, Inc. | Asynchronous transfer mode adapter for desktop applications |
US5687347A (en) * | 1994-09-19 | 1997-11-11 | Matsushita Electric Industrial Co., Ltd. | Data providing device, file server device, and data transfer control method |
JP3531074B2 (ja) * | 1994-11-28 | 2004-05-24 | 富士通株式会社 | 記憶装置制御システム |
-
1997
- 1997-03-04 JP JP53165897A patent/JP3329390B2/ja not_active Expired - Lifetime
- 1997-03-04 WO PCT/JP1997/000655 patent/WO1997033227A1/ja active Application Filing
- 1997-03-04 US US08/973,323 patent/US6073180A/en not_active Expired - Fee Related
Non-Patent Citations (7)
Title |
---|
1996信学総合大会,B−891 |
1996信学総合大会,B−892 |
1996信学通信大会,B−713 |
1996信学通信大会,B−714 |
1996信学通信大会,B−715 |
信学技報,CS96−33 |
信学技報,CS96−34 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9807189B2 (en) | 2012-10-19 | 2017-10-31 | Nec Corporation | Data transfer device and data transfer system using adaptive compression algorithm |
US9698824B2 (en) | 2013-04-12 | 2017-07-04 | Nec Corporation | Data transfer device, data transfer system, method for compressing and transferring data, and program |
Also Published As
Publication number | Publication date |
---|---|
WO1997033227A1 (fr) | 1997-09-12 |
US6073180A (en) | 2000-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3329390B2 (ja) | 高速一括ファイル転送方法及び装置 | |
US6738821B1 (en) | Ethernet storage protocol networks | |
US6724767B1 (en) | Two-dimensional queuing/de-queuing methods and systems for implementing the same | |
US7031904B1 (en) | Methods for implementing an ethernet storage protocol in computer networks | |
EP0700231B1 (en) | Methods and systems for interprocess communication and inter-network data transfer | |
US20020176430A1 (en) | Buffer management for communication systems | |
US7394814B2 (en) | Method and apparatus for rendering a cell-based switch useful for frame based application protocols | |
US6728213B1 (en) | Selective admission control in a network device | |
JP3682082B2 (ja) | パケットスイッチングネットワークにおけるパケット処理のための装置および方法ならびにフレームリレーネットワークのためのフレーム処理システム | |
Buonadonna et al. | Queue pair IP: a hybrid architecture for system area networks | |
US20050135395A1 (en) | Method and system for pre-pending layer 2 (L2) frame descriptors | |
US6711167B1 (en) | ATM communication apparatus controlling method, ATM communication apparatus and recording medium therefor | |
WO2001018661A1 (en) | Software interface between a parallel bus and a packet network | |
US6804243B1 (en) | Hardware acceleration for segmentation of message packets in a universal serial bus peripheral device | |
US7580410B2 (en) | Extensible protocol processing system | |
JP3152293B2 (ja) | Ipレイヤ処理装置 | |
US6311222B1 (en) | Translator memory management system | |
JPH10313350A (ja) | 通信システム | |
EP0834799A2 (en) | Memory control device | |
US6603768B1 (en) | Multi-protocol conversion assistance method and system for a network accelerator | |
JPH11275102A (ja) | 電力線によるネットワークシステム、データの伝送方法及び記録媒体 | |
JP3605005B2 (ja) | ポイント・ツー・ポイント・プロトコル・ヘッダ情報を選択的に分離するためのシステムおよび方法 | |
JPH11249978A (ja) | データ転送方法および装置 | |
JP3191920B2 (ja) | フレームリレーとatmのインターワーキング用トランク装置 | |
KR100250975B1 (ko) | 외부버스를 지원하는 멀티프로토콜 스택용 광대역 종합통신망 정합장치 및 그 제어 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080719 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080719 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090719 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090719 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100719 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100719 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110719 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120719 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130719 Year of fee payment: 11 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R370 | Written measure of declining of transfer procedure |
Free format text: JAPANESE INTERMEDIATE CODE: R370 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
EXPY | Cancellation because of completion of term |