JPH11265328A - 出力高速化装置及び方法 - Google Patents
出力高速化装置及び方法Info
- Publication number
- JPH11265328A JPH11265328A JP10068769A JP6876998A JPH11265328A JP H11265328 A JPH11265328 A JP H11265328A JP 10068769 A JP10068769 A JP 10068769A JP 6876998 A JP6876998 A JP 6876998A JP H11265328 A JPH11265328 A JP H11265328A
- Authority
- JP
- Japan
- Prior art keywords
- nic
- data
- lan
- transfer
- memory
- 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
- 238000000034 method Methods 0.000 title claims description 15
- 239000000872 buffer Substances 0.000 claims description 37
- 238000005266 casting Methods 0.000 claims description 11
- 230000005540 biological transmission Effects 0.000 claims description 7
- 108700028516 Lan-7 Proteins 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 4
- 239000003999 initiator Substances 0.000 description 2
- 238000007689 inspection Methods 0.000 description 1
Landscapes
- Computer And Data Communications (AREA)
Abstract
(57)【要約】
【課題】 コンピュータネットワークシステムにおい
て、DISKからLAN へのデータ転送のトランザクション性
能を向上する。 【解決手段】 LAN(Local Area Network) (7)を制御
するNIC(Network Interface Card/Chip)(5)と、DISK
(8)を制御するSCSI(Small Computer System Interfa
ce) コントローラ(6)と、NIC (5)とSCSIコントロ
ーラ(6)とを接続するI/O バス(4)と、CPU (1)
と、メモリ(3)と、を有するコンピュータネットワー
クシステムであって、前記SCSIコントローラ(6)は、
DISK(8)のデータを直にNIC (5)に転送する手段を
有し、前記NIC (5)は、そのデータをネットワークの
フレームに加工し、メモリ(3)を介することなく、LA
N (7)にキャストする手段を有する、ことを特徴とす
る出力高速化装置。
て、DISKからLAN へのデータ転送のトランザクション性
能を向上する。 【解決手段】 LAN(Local Area Network) (7)を制御
するNIC(Network Interface Card/Chip)(5)と、DISK
(8)を制御するSCSI(Small Computer System Interfa
ce) コントローラ(6)と、NIC (5)とSCSIコントロ
ーラ(6)とを接続するI/O バス(4)と、CPU (1)
と、メモリ(3)と、を有するコンピュータネットワー
クシステムであって、前記SCSIコントローラ(6)は、
DISK(8)のデータを直にNIC (5)に転送する手段を
有し、前記NIC (5)は、そのデータをネットワークの
フレームに加工し、メモリ(3)を介することなく、LA
N (7)にキャストする手段を有する、ことを特徴とす
る出力高速化装置。
Description
【0001】
【発明の属する技術分野】本発明は、DISKからLAN(Loca
l Area Network) への出力を高速化する方法及び装置に
関し、特に、高度にインテリジェント化されたNIC(Netw
ork Interface Card/Chip)が、SCSI(Small Computer Sy
stem Interface) コントローラとのブロック転送を制御
することにより、DISKからLAN(Local Area Network) へ
の出力を高速化することに関するものである。
l Area Network) への出力を高速化する方法及び装置に
関し、特に、高度にインテリジェント化されたNIC(Netw
ork Interface Card/Chip)が、SCSI(Small Computer Sy
stem Interface) コントローラとのブロック転送を制御
することにより、DISKからLAN(Local Area Network) へ
の出力を高速化することに関するものである。
【0002】
【従来の技術】従来、コンピュータ装置において、DISK
からLAN へのデータの送出は、DISKからメモリへ1セク
タずつ読み込んで、それからソフトウェアがフレームデ
ータを生成して、そのデータをNIC に読み込ませてLAN
上にキャストしていた。
からLAN へのデータの送出は、DISKからメモリへ1セク
タずつ読み込んで、それからソフトウェアがフレームデ
ータを生成して、そのデータをNIC に読み込ませてLAN
上にキャストしていた。
【0003】また、特開平9−298624号公報に
は、「画像データ転送装置」として、画像出力機に画像
メモリを設け、画像入力機から第2の画像メモリへの画
像データの転送と、第2の画像メモリから画像出力機へ
の画像データの転送とを同時に行わせる画像データ転送
装置が開示されている。
は、「画像データ転送装置」として、画像出力機に画像
メモリを設け、画像入力機から第2の画像メモリへの画
像データの転送と、第2の画像メモリから画像出力機へ
の画像データの転送とを同時に行わせる画像データ転送
装置が開示されている。
【0004】
【発明が解決しようとする課題】しかしながら、この従
来技術は、次のような問題点があった。
来技術は、次のような問題点があった。
【0005】第1の問題点は、DISKからのデータの読み
込みによるオーバーヘッドが大きいことである。
込みによるオーバーヘッドが大きいことである。
【0006】その理由は、DISKから1セクタ分のデータ
を読み込む度にDMA を起動する必要があるからである。
DMA 自体に時間がかかり、更にDMA 終了の度にCPU に割
り込みが上がり、割り込み処理をしなければならない為
である。
を読み込む度にDMA を起動する必要があるからである。
DMA 自体に時間がかかり、更にDMA 終了の度にCPU に割
り込みが上がり、割り込み処理をしなければならない為
である。
【0007】第2の問題点は、NIC がフレーム・データ
を読み込むことによるオーバーヘッドが大きいことであ
る。
を読み込むことによるオーバーヘッドが大きいことであ
る。
【0008】その理由は、フレーム・データをすべてソ
フトウェアが作成しなければならからである。この上、
NIC がフレーム・データを読み込む度にDMA が発生する
からである。更にDMA 終了の度にCPU に割り込みが上が
り、割り込み処理をしなければならない為である。
フトウェアが作成しなければならからである。この上、
NIC がフレーム・データを読み込む度にDMA が発生する
からである。更にDMA 終了の度にCPU に割り込みが上が
り、割り込み処理をしなければならない為である。
【0009】また、上述した従来例の公報には、画像デ
ータの転送時に複数のバッファを用いることが記載され
ているに過ぎず、特に、NICを用いた構成に関して
は、開示がない。
ータの転送時に複数のバッファを用いることが記載され
ているに過ぎず、特に、NICを用いた構成に関して
は、開示がない。
【0010】[発明の目的]本発明は、以上の問題点を
解決する出力高速化方法を提供することを目的とし、コ
ンピュータネットワークシステムにおいて、DISKからLA
N へのデータ転送のトランザクション性能を向上するこ
とにある。
解決する出力高速化方法を提供することを目的とし、コ
ンピュータネットワークシステムにおいて、DISKからLA
N へのデータ転送のトランザクション性能を向上するこ
とにある。
【0011】
【課題を解決するための手段】本発明は、上記課題を解
決するための手段として、LAN (Local Area Network)
(7)を制御するNIC (Network Interface Card/Chip)
(5)を有するコンピュータネットワークシステムであ
って、前記NIC (5)は、前記LAN (7)を介して転送
すべきデータを、ネットワークのフレームに加工し、メ
モリを介することなく、LAN (7)にキャストする手段
を有する、ことを特徴とする出力高速化装置を提供する
ものである。
決するための手段として、LAN (Local Area Network)
(7)を制御するNIC (Network Interface Card/Chip)
(5)を有するコンピュータネットワークシステムであ
って、前記NIC (5)は、前記LAN (7)を介して転送
すべきデータを、ネットワークのフレームに加工し、メ
モリを介することなく、LAN (7)にキャストする手段
を有する、ことを特徴とする出力高速化装置を提供する
ものである。
【0012】また、LAN(Local Area Network) (7)を
制御するNIC(Network Interface Card/Chip)(5)と、
DISK(8)を制御するSCSI(Small Computer System Int
erface) コントローラ(6)と、NIC (5)とSCSIコン
トローラ(6)とを接続するI/O バス(4)と、CPU
(1)と、メモリ(3)と、を有するコンピュータネッ
トワークシステムであって、前記SCSIコントローラ
(6)は、DISK(8)のデータを直にNIC (5)に転送
する手段を有し、前記NIC (5)は、そのデータをネッ
トワークのフレームに加工し、メモリ(3)を介するこ
となく、LAN (7)にキャストする手段を有する、こと
を特徴とする出力高速化装置でもある。
制御するNIC(Network Interface Card/Chip)(5)と、
DISK(8)を制御するSCSI(Small Computer System Int
erface) コントローラ(6)と、NIC (5)とSCSIコン
トローラ(6)とを接続するI/O バス(4)と、CPU
(1)と、メモリ(3)と、を有するコンピュータネッ
トワークシステムであって、前記SCSIコントローラ
(6)は、DISK(8)のデータを直にNIC (5)に転送
する手段を有し、前記NIC (5)は、そのデータをネッ
トワークのフレームに加工し、メモリ(3)を介するこ
となく、LAN (7)にキャストする手段を有する、こと
を特徴とする出力高速化装置でもある。
【0013】また、前記NIC (5)は、LAN コントロー
ラ(51)と、フレームのヘッダ部のデータを保持する
ヘッダ用バッファ(53)と、前記SCSIコントローラ
(6)からの転送データを保持する転送用バッファ(5
4)と、該ヘッダ用バッファ(53)及び該転送用バッ
ファ(54)から順次データを読み出して1つのフレー
ムとしてLAN (7)上にキャストする手段と、を有する
ことを特徴とする出力高速化装置でもある。
ラ(51)と、フレームのヘッダ部のデータを保持する
ヘッダ用バッファ(53)と、前記SCSIコントローラ
(6)からの転送データを保持する転送用バッファ(5
4)と、該ヘッダ用バッファ(53)及び該転送用バッ
ファ(54)から順次データを読み出して1つのフレー
ムとしてLAN (7)上にキャストする手段と、を有する
ことを特徴とする出力高速化装置でもある。
【0014】また、前記SCSIコントローラ(6)は、メ
モリ(3)上に格納されたデータ転送情報であるスキャ
ッター・ギャザー・ディスクリプタ(SGD) を参照するこ
とにより、データ転送を行なう、ことを特徴とする出力
高速化装置でもある。
モリ(3)上に格納されたデータ転送情報であるスキャ
ッター・ギャザー・ディスクリプタ(SGD) を参照するこ
とにより、データ転送を行なう、ことを特徴とする出力
高速化装置でもある。
【0015】また、前記スキャッター・ギャザー・ディ
スクリプタ(SGD) は、データを転送するアドレスを保持
するメモリ・アドレスと、DISK上の絶対ブロック・アド
レスを示すロジカル・ブロック・アドレスと、データ転
送するバイト数を示す転送長と、リストの終わりを示す
EOL と、を有することを特徴とする出力高速化装置でも
ある。
スクリプタ(SGD) は、データを転送するアドレスを保持
するメモリ・アドレスと、DISK上の絶対ブロック・アド
レスを示すロジカル・ブロック・アドレスと、データ転
送するバイト数を示す転送長と、リストの終わりを示す
EOL と、を有することを特徴とする出力高速化装置でも
ある。
【0016】また、本発明は、上記課題を解決するため
の手段として、 ・サーバに設けられた、以下の手段、クライアントが指
定したファイルの存在位置を基に、スキャッター・ギャ
ザーディスクリプタ(SGD) のリストを作成する手段、NI
C (5)に、ヘッダ情報とフレームのサイズと送出の回
数を与える手段、NIC (5)にフレームのキャストを指
示する手段、SCSIコントローラ(6)にデータの転送を
指示する手段、 ・SCSIコントローラ(6)に設けられた、以下の手段、
DMA によりメモリ(3)からSGD を1 エントリずつ得る
手段、該SGD を基に、NIC (5)にデータを転送する手
段、 ・NIC (5)に設けられた、以下の手段、前記SCSIコン
トローラ(6)からデータを受信して、バッファに格納
する手段、ヘッダ用バッファ(53)及び転送用バッフ
ァ(54)から順次データを読み出すことによりフレー
ムをLAN (7)上にキャストする手段、を有することを
特徴とする出力高速化装置でもある。
の手段として、 ・サーバに設けられた、以下の手段、クライアントが指
定したファイルの存在位置を基に、スキャッター・ギャ
ザーディスクリプタ(SGD) のリストを作成する手段、NI
C (5)に、ヘッダ情報とフレームのサイズと送出の回
数を与える手段、NIC (5)にフレームのキャストを指
示する手段、SCSIコントローラ(6)にデータの転送を
指示する手段、 ・SCSIコントローラ(6)に設けられた、以下の手段、
DMA によりメモリ(3)からSGD を1 エントリずつ得る
手段、該SGD を基に、NIC (5)にデータを転送する手
段、 ・NIC (5)に設けられた、以下の手段、前記SCSIコン
トローラ(6)からデータを受信して、バッファに格納
する手段、ヘッダ用バッファ(53)及び転送用バッフ
ァ(54)から順次データを読み出すことによりフレー
ムをLAN (7)上にキャストする手段、を有することを
特徴とする出力高速化装置でもある。
【0017】また、前記転送用バッファ(54)が、DI
SK(8)のセクタ・サイズより大きい場合、複数のデー
タ・ブロックを一度に送出するべく、前記SGD のメモリ
・アドレスに、 転送用バッファ+セクタ・サイズ×n( n:整数 0,1,
2,…) を設定する、ことを特徴とする出力高速化装置でもあ
る。
SK(8)のセクタ・サイズより大きい場合、複数のデー
タ・ブロックを一度に送出するべく、前記SGD のメモリ
・アドレスに、 転送用バッファ+セクタ・サイズ×n( n:整数 0,1,
2,…) を設定する、ことを特徴とする出力高速化装置でもあ
る。
【0018】また、DISK(8)上の連続したセクタのデ
ータを転送する場合は、前記SGD の転送長を、 セクタ・サイズ×n( n:自然数 1,2,3,…) とする、ことを特徴とする出力高速化装置でもある。
ータを転送する場合は、前記SGD の転送長を、 セクタ・サイズ×n( n:自然数 1,2,3,…) とする、ことを特徴とする出力高速化装置でもある。
【0019】また、LAN (7)を制御するNIC (5)
と、DISK(8)を制御するSCSIコントローラ(6)と、
NIC (5)とSCSIコントローラ(6)を接続するI/O バ
ス(4)と、CPU (1)と、メモリ(3)と、を有する
コンピュータネットワークシステムにおいて、前記SCSI
コントローラ(6)は、DISK(8)のデータを直にNIC
(5)に転送し、前記NIC (5)は、そのデータをネッ
トワークのフレームに加工し、メモリ(3)を介するこ
となく、LAN (7)にキャストする、ことを特徴とする
出力高速化方法でもある。
と、DISK(8)を制御するSCSIコントローラ(6)と、
NIC (5)とSCSIコントローラ(6)を接続するI/O バ
ス(4)と、CPU (1)と、メモリ(3)と、を有する
コンピュータネットワークシステムにおいて、前記SCSI
コントローラ(6)は、DISK(8)のデータを直にNIC
(5)に転送し、前記NIC (5)は、そのデータをネッ
トワークのフレームに加工し、メモリ(3)を介するこ
となく、LAN (7)にキャストする、ことを特徴とする
出力高速化方法でもある。
【0020】また、クライアントがサーバからファイル
をダウンロードする際に、クライアントが指定したDISK
(8)上のファイルを、LAN (7)にキャストするた
め、先ず、サーバは、指定されたファイルのファイル・
システムを解析するステップ( F2) ;該解析により該
当のファイルが、DISK(8)上のどのセクタに存在する
かを認識し、これを基に、スキャッター・ギャザー・デ
ィスクリプタ(SGD) のリストを作成するステップ(F
3) ;NIC (5)に、ヘッダ情報とフレームのサイズと
送出の回数を与えるステップ( F4) ;NIC (5)にフ
レームのキャストを指示するステップ( F5) ;それに
続いてSCSIコントローラ(6)にデータの転送を指示す
るステップ( F6) ;SCSIコントローラ(6)は、DMA
によりメモリ(3)からSGD を1エントリ得るステップ
( F7) ;SGD を基に、NIC (5)にデータを転送する
ステップ( F8) ;NIC (5)は、受信したデータによ
り、ヘッダ用バッファ(53)及び転送用バッファ(5
4)から順次データを読み出すことにより、フレームを
LAN (7)上にキャストするステップ( F9) ;SCSIコ
ントローラ(6)は、EOL が1 かどうかを検査するステ
ップ( F10);この検査の結果、0ならば、前記DMA
によりメモリ(3)からSGD を1エントリ得るステップ
(F7)から再開し、1 ならば、終了するステップ( F
11) ;を有することを特徴とする出力高速化方法でも
ある。
をダウンロードする際に、クライアントが指定したDISK
(8)上のファイルを、LAN (7)にキャストするた
め、先ず、サーバは、指定されたファイルのファイル・
システムを解析するステップ( F2) ;該解析により該
当のファイルが、DISK(8)上のどのセクタに存在する
かを認識し、これを基に、スキャッター・ギャザー・デ
ィスクリプタ(SGD) のリストを作成するステップ(F
3) ;NIC (5)に、ヘッダ情報とフレームのサイズと
送出の回数を与えるステップ( F4) ;NIC (5)にフ
レームのキャストを指示するステップ( F5) ;それに
続いてSCSIコントローラ(6)にデータの転送を指示す
るステップ( F6) ;SCSIコントローラ(6)は、DMA
によりメモリ(3)からSGD を1エントリ得るステップ
( F7) ;SGD を基に、NIC (5)にデータを転送する
ステップ( F8) ;NIC (5)は、受信したデータによ
り、ヘッダ用バッファ(53)及び転送用バッファ(5
4)から順次データを読み出すことにより、フレームを
LAN (7)上にキャストするステップ( F9) ;SCSIコ
ントローラ(6)は、EOL が1 かどうかを検査するステ
ップ( F10);この検査の結果、0ならば、前記DMA
によりメモリ(3)からSGD を1エントリ得るステップ
(F7)から再開し、1 ならば、終了するステップ( F
11) ;を有することを特徴とする出力高速化方法でも
ある。
【0021】[作用]本発明による出力高速化方法は、
高度にインテリジェント化されたNIC(Network Interfac
e Card/Chip)が、SCSI(Small Computer System Interfa
ce) コントローラとのブロック転送を制御することによ
り、DISKからLAN(Local Area Network) への出力を高速
化するものである。
高度にインテリジェント化されたNIC(Network Interfac
e Card/Chip)が、SCSI(Small Computer System Interfa
ce) コントローラとのブロック転送を制御することによ
り、DISKからLAN(Local Area Network) への出力を高速
化するものである。
【0022】図1は、本発明のシステム構成図である
が、図1において、SCSIコントローラ6はDISK8のデー
タを直にNIC 5に転送する。NIC 5は、そのデータをネ
ットワークのフレームに加工し、LAN 7にキャストす
る。
が、図1において、SCSIコントローラ6はDISK8のデー
タを直にNIC 5に転送する。NIC 5は、そのデータをネ
ットワークのフレームに加工し、LAN 7にキャストす
る。
【0023】これにより、メモリ3を介すことなくデー
タを転送出来るので、トランザクション性能を向上する
ことができる。
タを転送出来るので、トランザクション性能を向上する
ことができる。
【0024】
【実施例】以下、本発明の実施例について、図面を参照
しながら説明する。
しながら説明する。
【0025】[構成の説明]図1は、本発明のシステム
構成図である。図1を参照すると、実施例のシステム
は、LAN 7を制御するNIC 5と、DISK8を制御するSCSI
コントローラ6を有している。NIC 5とSCSIコントロー
ラ6は、I/O バス4に接続されている。ホスト・ブリッ
ジ2は、CPU 1とメモリ3とI/O バス4とを接続し、そ
れ等の間のアクセスを制御するクロスバ・スイッチであ
る。
構成図である。図1を参照すると、実施例のシステム
は、LAN 7を制御するNIC 5と、DISK8を制御するSCSI
コントローラ6を有している。NIC 5とSCSIコントロー
ラ6は、I/O バス4に接続されている。ホスト・ブリッ
ジ2は、CPU 1とメモリ3とI/O バス4とを接続し、そ
れ等の間のアクセスを制御するクロスバ・スイッチであ
る。
【0026】NIC 5は、メモリ3上のデータをネットワ
ークのフレームとしてLAN 7上にキャストする。逆にLA
N 7上のフレームをメモリ3上にライトする。
ークのフレームとしてLAN 7上にキャストする。逆にLA
N 7上のフレームをメモリ3上にライトする。
【0027】同様に、SCSIコントローラ6は、メモリ3
上のデータをDISK8にライトしたり、逆にDISK8上のデ
ータをメモリ3にライトする。
上のデータをDISK8にライトしたり、逆にDISK8上のデ
ータをメモリ3にライトする。
【0028】メモリ3のデータ転送には、DMA(Direct M
emory Access) を用い、CPU 1を使用したソフトウェア
転送ではない。
emory Access) を用い、CPU 1を使用したソフトウェア
転送ではない。
【0029】次に、NIC 5の詳細な構成について説明す
る。図2は、NIC 5の詳細な構成図である。
る。図2は、NIC 5の詳細な構成図である。
【0030】図1におけるNIC 5は、図2に示すよう
に、LAN コントローラ51とバッファ52を有する。更
にバッファ52は、ヘッダ用バッファ53と転送用バッ
ファ54を有する。
に、LAN コントローラ51とバッファ52を有する。更
にバッファ52は、ヘッダ用バッファ53と転送用バッ
ファ54を有する。
【0031】ヘッダ用バッファ53は、フレームのヘッ
ダ部のデータを保持する。
ダ部のデータを保持する。
【0032】転送用バッファ54は、SCSIコントローラ
6からの転送データを保持する。
6からの転送データを保持する。
【0033】ヘッダ用バッファ53及び転送用バッファ
54から順次データを読み出すことにより、NIC 5は、
読み出したデータを、1つのフレームとしてLAN 7上に
キャストすることが出来る。
54から順次データを読み出すことにより、NIC 5は、
読み出したデータを、1つのフレームとしてLAN 7上に
キャストすることが出来る。
【0034】次に、SCSIコントローラ6の詳細な構成に
ついて説明する。
ついて説明する。
【0035】図1におけるSCSIコントローラ6は、メモ
リ3上の、図3に示す様なスキャッター・ギャザー・デ
ィスクリプタ(SGD) のリストを解釈する。図3における
メモリ・アドレスは、データを転送するアドレスを保持
し、ロジカル・ブロック・アドレスは、DISK上の絶対ブ
ロック・アドレスを示し、転送長は、データ転送するバ
イト数を示し、EOL は、リストの終わりを示す。例え
ば、EOL が1 の場合、リストの終わりとする。
リ3上の、図3に示す様なスキャッター・ギャザー・デ
ィスクリプタ(SGD) のリストを解釈する。図3における
メモリ・アドレスは、データを転送するアドレスを保持
し、ロジカル・ブロック・アドレスは、DISK上の絶対ブ
ロック・アドレスを示し、転送長は、データ転送するバ
イト数を示し、EOL は、リストの終わりを示す。例え
ば、EOL が1 の場合、リストの終わりとする。
【0036】メモリ・アドレスには、転送用バッファ5
4内のアドレスが設定される。
4内のアドレスが設定される。
【0037】[動作の説明]次に、図1のシステムの動
作について、図を参照して説明する。
作について、図を参照して説明する。
【0038】通常、クライアントがサーバからファイル
をダウンロードするには、サーバは、クライアントが指
定したDISK8上のファイルを、LAN 7にキャストしてい
くことになる。
をダウンロードするには、サーバは、クライアントが指
定したDISK8上のファイルを、LAN 7にキャストしてい
くことになる。
【0039】この過程を、図4のフローチャートを参照
しながら説明していく。
しながら説明していく。
【0040】先ず、サーバは、指定されたファイルのフ
ァイル・システムを解析する( ステップF2) 。
ァイル・システムを解析する( ステップF2) 。
【0041】ここで、該当のファイルが、DISK8上のど
のセクタに存在するかを認識していく。これを基に、図
3に示したスキャッター・ギャザー・ディスクリプタの
リストを作成する( ステップF3) 。
のセクタに存在するかを認識していく。これを基に、図
3に示したスキャッター・ギャザー・ディスクリプタの
リストを作成する( ステップF3) 。
【0042】セクタの位置を、図3のロジカル・ブロッ
ク・アドレスに設定していく。図3のメモリ・アドレス
には、転送用バッファ54のエントリ・アドレスを設定
する。また、転送長には、セクタ・サイズを設定する。
ク・アドレスに設定していく。図3のメモリ・アドレス
には、転送用バッファ54のエントリ・アドレスを設定
する。また、転送長には、セクタ・サイズを設定する。
【0043】NIC 5にヘッダ情報とフレームのサイズと
送出の回数を与える( ステップF4) 。
送出の回数を与える( ステップF4) 。
【0044】ヘッダ情報は、例えば、IEEE802 に準拠し
たものである。フレームのサイズは、ヘッダのサイズに
セクタ・サイズを加えたものである。送出の回数は、該
当のファイルが使用しているセクタの数である。
たものである。フレームのサイズは、ヘッダのサイズに
セクタ・サイズを加えたものである。送出の回数は、該
当のファイルが使用しているセクタの数である。
【0045】NIC 5にフレームのキャストを指示する(
ステップF5) 。
ステップF5) 。
【0046】それに続いてSCSIコントローラ6にデータ
の転送を指示する( ステップF6)。
の転送を指示する( ステップF6)。
【0047】このとき、SCSIコントローラ6に対して、
ステップF3で作成したスキャッター・ギャザー・ディ
スクリプタのリストのエントリ・アドレスを与える。
ステップF3で作成したスキャッター・ギャザー・ディ
スクリプタのリストのエントリ・アドレスを与える。
【0048】SCSIコントローラ6は、DMA によりメモリ
3からSGD を1 エントリ得る( ステップF7) 。
3からSGD を1 エントリ得る( ステップF7) 。
【0049】SGD を基に、SCSIコントローラ6は、NIC
5にデータを転送する( ステップF8) 。
5にデータを転送する( ステップF8) 。
【0050】SGD で指定されたロジカル・ブロック・ア
ドレスより指定されたバイト数をリードし、NIC 5にそ
のデータを転送する。
ドレスより指定されたバイト数をリードし、NIC 5にそ
のデータを転送する。
【0051】実際の転送は、以下の通りである。SCSIコ
ントローラ6がイニシエータとなり、NIC 5がターゲッ
トとなってI/O バス4を通じて転送する。イニシエータ
であるSCSIコントローラ6がレディをアサートし、ター
ゲットであるNIC 5がレディをアサートすると、データ
転送が行われる。
ントローラ6がイニシエータとなり、NIC 5がターゲッ
トとなってI/O バス4を通じて転送する。イニシエータ
であるSCSIコントローラ6がレディをアサートし、ター
ゲットであるNIC 5がレディをアサートすると、データ
転送が行われる。
【0052】I/O バス4がPCI ローカル・バスの場合、
図5に示すような高速・バック・ツー・バック・トラン
ザクションとなる。
図5に示すような高速・バック・ツー・バック・トラン
ザクションとなる。
【0053】NIC 5は、ヘッダ用バッファ53及び転送
用バッファ54から順次データを読み出すことによりフ
レームをLAN 7上にキャストする( ステップF9) 。
用バッファ54から順次データを読み出すことによりフ
レームをLAN 7上にキャストする( ステップF9) 。
【0054】SCSIコントローラ6は、EOL が1 かどうか
を検査する( ステップF10) 。
を検査する( ステップF10) 。
【0055】この検査の結果、0 ならば、ステップF7
から再開し、1 ならば終了( ステップF11) となる。
から再開し、1 ならば終了( ステップF11) となる。
【0056】なお、NIC 5が指示された転送回数と、SC
SIコントローラ6が実際に要求した転送回数が合わない
場合は、ステップF8の転送が失敗するだけであり、他
への影響は無い。
SIコントローラ6が実際に要求した転送回数が合わない
場合は、ステップF8の転送が失敗するだけであり、他
への影響は無い。
【0057】[他の実施例]次に、本発明の他の実施例
について図面を参照して詳細に説明する。
について図面を参照して詳細に説明する。
【0058】図2に示した転送用バッファ54が、DISK
8のセクタ・サイズより大きい場合、複数のデータ・ブ
ロックを一度に送出することが出来る。
8のセクタ・サイズより大きい場合、複数のデータ・ブ
ロックを一度に送出することが出来る。
【0059】このとき、図3に示したSGD のメモリ・ア
ドレスには、 転送用バッファ54+セクタ・サイズ×n( n:整数
0,1,2,…) を設定する。
ドレスには、 転送用バッファ54+セクタ・サイズ×n( n:整数
0,1,2,…) を設定する。
【0060】また、DISK8上の連続したセクタのデータ
を転送する場合は、図3に示したSGD の転送長を、 セクタ・サイズ×n( n:自然数 1,2,3,…) とすることにより対応出来る。
を転送する場合は、図3に示したSGD の転送長を、 セクタ・サイズ×n( n:自然数 1,2,3,…) とすることにより対応出来る。
【0061】これらにより、更に性能を向上させること
が出来る。
が出来る。
【0062】
【発明の効果】第1の効果は、DISKからLAN へのデータ
の送出が高速化されることである。
の送出が高速化されることである。
【0063】その理由は、メモリを介さずに直にSCSIコ
ントローラからNIC にデータが転送されるからである。
ントローラからNIC にデータが転送されるからである。
【0064】第2の効果は、CPU の負荷が軽減されるこ
とである。
とである。
【0065】その理由は、DISK上の複数のセクタのデー
タ転送が一度の指示で行えるため、データ転送の度に割
り込みが発生しないからである。
タ転送が一度の指示で行えるため、データ転送の度に割
り込みが発生しないからである。
【0066】第3の効果は、特別なハードウェアを必要
としないので、小型マシンにも適用できることである。
としないので、小型マシンにも適用できることである。
【0067】その理由は、SCSIコントローラとNIC で全
ての処理を行っているためである。
ての処理を行っているためである。
【図1】本発明の実施例のシステム構成図である。
【図2】本発明の実施例のNIC 5の詳細な構成図であ
る。
る。
【図3】本発明の実施例のSGD のメモリ・アドレスの構
成図である。
成図である。
【図4】本発明の実施例の動作を示すフローチャートで
ある。
ある。
【図5】本発明の実施例の高速・バック・ツー・バック
・トランザクションのタイミングチャートである。
・トランザクションのタイミングチャートである。
1 CPU 2 ホスト・ブリッジ 3 メモリ 4 I/O バス 5 NIC 6 SCSIコントローラ 7 LAN 8 DISK
Claims (10)
- 【請求項1】 LAN (Local Area Network)(7)を制御
するNIC (Network Interface Card/Chip) (5)を有す
るコンピュータネットワークシステムであって、 前記NIC (5)は、前記LAN (7)を介して転送すべき
データを、ネットワークのフレームに加工し、メモリを
介することなく、LAN (7)にキャストする手段を有す
る、ことを特徴とする出力高速化装置。 - 【請求項2】 LAN(Local Area Network) (7)を制御
するNIC(Network Interface Card/Chip)(5)と、 DISK(8)を制御するSCSI(Small Computer System Int
erface) コントローラ(6)と、 NIC (5)とSCSIコントローラ(6)とを接続するI/O
バス(4)と、 CPU (1)と、メモリ(3)と、を有するコンピュータ
ネットワークシステムであって、 前記SCSIコントローラ(6)は、DISK(8)のデータを
直にNIC (5)に転送する手段を有し、 前記NIC (5)は、そのデータをネットワークのフレー
ムに加工し、メモリ(3)を介することなく、LAN
(7)にキャストする手段を有する、ことを特徴とする
出力高速化装置。 - 【請求項3】 前記NIC (5)は、 LAN コントローラ(51)と、 フレームのヘッダ部のデータを保持するヘッダ用バッフ
ァ(53)と、 前記SCSIコントローラ(6)からの転送データを保持す
る転送用バッファ(54)と、 該ヘッダ用バッファ(53)及び該転送用バッファ(5
4)から順次データを読み出して1つのフレームとして
LAN (7)上にキャストする手段と、を有することを特
徴とする請求項2記載の出力高速化装置。 - 【請求項4】 前記SCSIコントローラ(6)は、 メモリ(3)上に格納されたデータ転送情報であるスキ
ャッター・ギャザー・ディスクリプタ(SGD) を参照する
ことにより、データ転送を行なう、ことを特徴とする請
求項2記載の出力高速化装置。 - 【請求項5】 前記スキャッター・ギャザー・ディスク
リプタ(SGD) は、データを転送するアドレスを保持する
メモリ・アドレスと、 DISK上の絶対ブロック・アドレスを示すロジカル・ブロ
ック・アドレスと、 データ転送するバイト数を示す転送長と、 リストの終わりを示すEOL と、を有することを特徴とす
る請求項2記載の出力高速化装置。 - 【請求項6】 ・サーバに設けられた、以下の手段、 クライアントが指定したファイルの存在位置を基に、ス
キャッター・ギャザーディスクリプタ(SGD) のリストを
作成する手段、 NIC (5)に、ヘッダ情報とフレームのサイズと送出の
回数を与える手段、 NIC (5)にフレームのキャストを指示する手段、 SCSIコントローラ(6)にデータの転送を指示する手
段、 ・SCSIコントローラ(6)に設けられた、以下の手段、 DMA によりメモリ(3)からSGD を1 エントリずつ得る
手段、 該SGD を基に、NIC (5)にデータを転送する手段、 ・NIC (5)に設けられた、以下の手段、 前記SCSIコントローラ(6)からデータを受信して、バ
ッファに格納する手段、 ヘッダ用バッファ(53)及び転送用バッファ(54)
から順次データを読み出すことによりフレームをLAN
(7)上にキャストする手段、を有することを特徴とす
る請求項2記載の出力高速化装置。 - 【請求項7】 前記転送用バッファ(54)が、DISK
(8)のセクタ・サイズより大きい場合、複数のデータ
・ブロックを一度に送出するべく、 前記SGD のメモリ・アドレスに、 転送用バッファ+セクタ・サイズ×n( n:整数 0,1,
2,…) を設定する、ことを特徴とする請求項5記載の出力高速
化装置。 - 【請求項8】 DISK(8)上の連続したセクタのデータ
を転送する場合は、前記SGD の転送長を、 セクタ・サイズ×n( n:自然数 1,2,3,…) とする、ことを特徴とする請求項5記載の出力高速化装
置。 - 【請求項9】 LAN (7)を制御するNIC (5)と、 DISK(8)を制御するSCSIコントローラ(6)と、 NIC (5)とSCSIコントローラ(6)を接続するI/O バ
ス(4)と、 CPU (1)と、メモリ(3)と、を有するコンピュータ
ネットワークシステムにおいて、 前記SCSIコントローラ(6)は、DISK(8)のデータを
直にNIC (5)に転送し、 前記NIC (5)は、そのデータをネットワークのフレー
ムに加工し、メモリ(3)を介することなく、LAN
(7)にキャストする、ことを特徴とする出力高速化方
法。 - 【請求項10】 クライアントがサーバからファイルを
ダウンロードする際に、クライアントが指定したDISK
(8)上のファイルを、LAN (7)にキャストするた
め、 先ず、サーバは、指定されたファイルのファイル・シス
テムを解析するステップ( F2) ;該解析により該当の
ファイルが、DISK(8)上のどのセクタに存在するかを
認識し、これを基に、スキャッター・ギャザー・ディス
クリプタ(SGD) のリストを作成するステップ(F3) ;
NIC (5)に、ヘッダ情報とフレームのサイズと送出の
回数を与えるステップ( F4) ;NIC (5)にフレーム
のキャストを指示するステップ( F5) ;それに続いて
SCSIコントローラ(6)にデータの転送を指示するステ
ップ( F6) ;SCSIコントローラ(6)は、DMA により
メモリ(3)からSGD を1エントリ得るステップ( F
7) ;SGD を基に、NIC (5)にデータを転送するステ
ップ( F8) ;NIC (5)は、受信したデータにより、
ヘッダ用バッファ(53)及び転送用バッファ(54)
から順次データを読み出すことにより、フレームをLAN
(7)上にキャストするステップ( F9) ;SCSIコント
ローラ(6)は、EOL が1 かどうかを検査するステップ
( F10);この検査の結果、0ならば、前記DMA によ
りメモリ(3)からSGD を1エントリ得るステップ(F
7)から再開し、1 ならば、終了するステップ( F1
1) ;を有することを特徴とする請求項9記載の出力高
速化方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP06876998A JP3307318B2 (ja) | 1998-03-18 | 1998-03-18 | 出力高速化装置及び方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP06876998A JP3307318B2 (ja) | 1998-03-18 | 1998-03-18 | 出力高速化装置及び方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH11265328A true JPH11265328A (ja) | 1999-09-28 |
| JP3307318B2 JP3307318B2 (ja) | 2002-07-24 |
Family
ID=13383281
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP06876998A Expired - Fee Related JP3307318B2 (ja) | 1998-03-18 | 1998-03-18 | 出力高速化装置及び方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3307318B2 (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100676674B1 (ko) * | 2004-12-13 | 2007-02-01 | 한국전자통신연구원 | 데이터 고속 입출력을 위한 데이터 입출력 가속 장치 및 그운용 방법 |
| KR100823734B1 (ko) | 2006-07-07 | 2008-04-21 | 한국전자통신연구원 | iSCSI를 위한 데이터 가속 장치 및 이를 이용한iSCSI 저장 시스템 |
| US7472205B2 (en) | 2002-04-24 | 2008-12-30 | Nec Corporation | Communication control apparatus which has descriptor cache controller that builds list of descriptors |
-
1998
- 1998-03-18 JP JP06876998A patent/JP3307318B2/ja not_active Expired - Fee Related
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7472205B2 (en) | 2002-04-24 | 2008-12-30 | Nec Corporation | Communication control apparatus which has descriptor cache controller that builds list of descriptors |
| KR100676674B1 (ko) * | 2004-12-13 | 2007-02-01 | 한국전자통신연구원 | 데이터 고속 입출력을 위한 데이터 입출력 가속 장치 및 그운용 방법 |
| KR100823734B1 (ko) | 2006-07-07 | 2008-04-21 | 한국전자통신연구원 | iSCSI를 위한 데이터 가속 장치 및 이를 이용한iSCSI 저장 시스템 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP3307318B2 (ja) | 2002-07-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6978331B1 (en) | Synchronization of interrupts with data packets | |
| US6735642B2 (en) | DMA doorbell | |
| US8929381B2 (en) | Header replication in accelerated TCP (Transport Control Protocol) stack processing | |
| CN111126589B (zh) | 神经网络数据处理装置、方法和电子设备 | |
| US6421742B1 (en) | Method and apparatus for emulating an input/output unit when transferring data over a network | |
| US6145015A (en) | Multimedia data transferring method | |
| US6477610B1 (en) | Reordering responses on a data bus based on size of response | |
| US6735662B1 (en) | Method and apparatus for improving bus efficiency given an array of frames to transmit | |
| CN101636721A (zh) | 用于处理未知长度传输的dmac | |
| US20100131692A1 (en) | Bus bridge apparatus and bus bridge system | |
| US11449456B2 (en) | System and method for scheduling sharable PCIe endpoint devices | |
| JP3639319B2 (ja) | 並列計算機システム,データ転送制御方法および送受信制御装置 | |
| JP3307318B2 (ja) | 出力高速化装置及び方法 | |
| US6684272B1 (en) | Throughput enhancement for a universal host controller interface in a universal serial bus | |
| US7010579B1 (en) | Direct data routing system | |
| JP2001249888A (ja) | ファイバチャンネルノードにおける効果的なi/o操作完了のための方法及びシステム | |
| US7409486B2 (en) | Storage system, and storage control method | |
| CN117579570A (zh) | 一种基于PCIe的数据传输方法、装置和系统 | |
| US6134623A (en) | Method and system for taking advantage of a pre-stage of data between a host processor and a memory system | |
| CN110532110A (zh) | 一种在多核场景中自动切换外送数据的uart主控系统 | |
| KR940009104B1 (ko) | 시스템간의 데이타 전송방법 | |
| JPH03241442A (ja) | ストアバッファ制御方式 | |
| JPH08110894A (ja) | 並列計算機システム | |
| JPH0612364A (ja) | データ転送回路 | |
| JPH02272955A (ja) | 任意受信データ割り込み方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |