JP2004274376A - 情報処理装置及び再送制御方法 - Google Patents

情報処理装置及び再送制御方法 Download PDF

Info

Publication number
JP2004274376A
JP2004274376A JP2003062145A JP2003062145A JP2004274376A JP 2004274376 A JP2004274376 A JP 2004274376A JP 2003062145 A JP2003062145 A JP 2003062145A JP 2003062145 A JP2003062145 A JP 2003062145A JP 2004274376 A JP2004274376 A JP 2004274376A
Authority
JP
Japan
Prior art keywords
packet
transmission
copy
transmission data
stored
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
Application number
JP2003062145A
Other languages
English (en)
Other versions
JP3727928B2 (ja
Inventor
Noboru Tanabe
昇 田邊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2003062145A priority Critical patent/JP3727928B2/ja
Publication of JP2004274376A publication Critical patent/JP2004274376A/ja
Application granted granted Critical
Publication of JP3727928B2 publication Critical patent/JP3727928B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Communication Control (AREA)

Abstract

【課題】再送による信頼性のある通信を遅延時間の増加やハードウェア使用量の増加を抑制しつつ実現することを可能にする情報処理装置を提供すること。
【解決手段】ホスト1から与えられた送信データをPIOデータ保持部3に保持する。パケット生成部4は送信データをもとに該送信データの記憶場所の情報を含む送信パケットを生成し、これを通信リンク制御部5がネットワークへ送出する。このとき、送信データの記憶領域は解放しない。該送信パケットに対して該送信データの記憶場所の情報を含むNACKパケットが受信された場合には、その記憶場所に送信データが未だ記憶されているので、これをもとに送信パケット生成して再送する。ACKパケットが受信された場合には、送信データの記憶領域を開放する。
【選択図】 図1

Description

【0001】
【発明の属する技術分野】
本発明は、パーソナルコンピュータやワークステーション等の主たる情報処理装置(主装置)に装着されるネットワークインタフェース等の情報処理装置及び再送制御方法に関する。
【0002】
【従来の技術】
情報処理装置間の通信においては、DMA(Direct Memory Access)転送方式が代表的である。DMA転送方式では、送信前に送信するパケットのイメージを主記憶上に作成した後に、DMAコントローラが起動されるために、受信側におけるCRCエラーの検出等に伴う再送要求応答が返ってきた場合、主記憶上のパケットイメージを用いて再度DMA転送を実行することで再送を実現することができる。しかし、そのような主記憶上へのパケットイメージの準備やDMAコントローラの設定が終了しないと送信が開始されないために、通信オーバーヘッドが高く、短いパケットの送信ではバンド幅が低下してしまうという問題がある。
【0003】
一方、近年、CPUの性能向上を背景に通信遅延の削減を目的として、PIO(Programmed I/O)方式の通信が見直されるようになってきた。Memory Channel(例えば、非特許文献1参照)、DIMMnet−1(例えば、非特許文献2、3参照)などがその方式を採用し、PCクラスタ構築用ネットワークインタフェースのように遅延時間の低減が重要な用途に用いられている。ところが、これらのネットワークインタフェースの場合は、PIO方式の通信の本質的な問題として、送信前に必ずしも送信パケットのイメージが主記憶上にあるとは限らないという問題があり、送信パケットのイメージが主記憶上にない場合は受信側からの再送要求が来たとしてもハードウェア的に再送を行おうにも、送るべきパケットイメージが主記憶に存在しないために再送を実現することができない。そこで、これらのシステムでは、使い方を制限して主記憶上にパケットイメージを作ってからその場所を指定するようなDMA転送方式と同様なAPIを介して、ソフトウェア的に再送を実現するしかなく、折角の本来のハードウェアが有する低遅延性が、信頼性のある通信を行おうとすると、あまり生かされなくなってしまうという問題があった。
【0004】
そこで、組み込み用途での基板内または筐体内インターコネクトとして開発されたRapidIO(例えば、非特許文献4参照)では、その規格書によると、ハードウェアによる再送機構が組み込まれていることが明らかになっている。ただし、ここで行われている再送は通信リンクの出力側と入力側で行われている再送であって、これはDMA通信のみならずPIO通信においても出来上がったパケットを通信リンクの出力側で全て記憶しておくことにより実現される。ところが、この方式では、中継するスイッチで大量のパケットを記憶しなければならないことになるので、パケットの最大長を短くしなければならず、そのことはDMA通信を併用する場合の通信バンド幅を低下させる原因ともなる。また、通信リンクに必要なハードウェア量が多くなってしまい、実現する上でのコストが上昇してしまう。さらに、通信エラーの頻度が少ない場合や、中継スイッチが多いシステム環境では、中継スイッチでの遅延時間が余分に増加してしまい、ノード間の通信遅延時間が増加してしまうという問題があった。
【0005】
【非特許文献1】
Fillo and Gillett ”Architecture andImplementation of MEMORY CHANNEL 2 ”, Digital Technical Journal, Vol.9 (1) (1997)
【0006】
【非特許文献2】
田邊, 濱田, 山本, 今城, 中條, 工藤, 天野 : DIMMスロット搭載型ネットワークインタフェースDIMMnet−1とその低遅延通信機構AOTF, 情報処理学会論文誌ハイパフォーマンスコンピューティングシステム, Vol.43, No.SIG(HPS7) (2003)
【0007】
【非特許文献3】
田邊, 山本, 濱田, 中條, 工藤, 天野 : DIMMスロット搭載型ネットワークインタフェースDIMMnet−1とその高バンド幅通信機構BOTF, 情報処理学会論文誌, Vol.43, No.4, pp.866−878 (2002)
【0008】
【非特許文献4】
RapidIO Trade Association “RapidIO Interconnect Specification, Revision1.2”(2002)
【0009】
【発明が解決しようとする課題】
以上説明したように、再送によって信頼性のある通信を行うためには、DMA通信方式でもPIO通信方式でも、遅延時間の増大や短いパケット送信におけるバンド幅低下が発生するという問題があった。そのハードウェアによる解決法においても、ハードウェア量が多く必要になってしまうという問題があった。
【0010】
本発明は、上記事情を考慮してなされたもので、再送による信頼性のある通信を遅延時間の増加やハードウェア使用量の増加を抑制しつつ実現することを可能にする情報処理装置及び再送制御方法を提供することを目的とする。
【0011】
【課題を解決するための手段】
本発明は、主装置に接続される情報処理装置において、
前記主装置から与えられた送信データを記憶する記憶手段と、
前記送信データをもとに、前記記憶手段上の前記送信データの記憶場所を示す標識情報を含む送信パケットを生成する生成手段と、
前記生成手段が生成した前記送信パケットを送信する送信手段と、
前記送信手段が送信した前記送信パケットに対する応答パケットを受信する受信手段と、
前記受信手段が前記応答パケットとしてNACKパケットを受信した場合には、前記生成手段に、前記記憶手段上の該NACKパケットに含まれる前記標識情報により示される記憶場所に記憶している前記送信データをもとに送信パケットを再度生成させ、該再度生成した送信パケットを送信する再送信手段とを備えたことを特徴とする。
【0012】
また、本発明は、主装置に接続される情報処理装置において、
前記主装置から与えられた送信データを記憶する記憶手段と、
前記記憶手段に記憶した送信データをもとに送信パケットを生成する生成手段と、
前記生成手段が生成した前記送信パケットのコピーを保存するためのキャッシュメモリと、
前記コピーを保存するための外部メモリと、
前記コピーを前記キャッシュメモリに保存し、該コピーを保存したことにより前記キャッシュメモリの記憶容量が不足した場合には、前記コピーを前記外部メモリに保存する保存手段と、
前記保存手段に保存した前記送信パケットを送信する送信手段と、
前記送信手段が送信した送信パケットに対する応答パケットを受信する受信手段と、
前記受信手段が前記応答パケットとしてNACKパケットを受信した場合には、前記送信手段に、該応答パケットの応答対象である、前記キャッシュメモリ又は前記外部メモリに保存している前記送信パケットのコピーを用いて、該送信パケットを送信する再送信手段とを備えたことを特徴とする。
【0013】
また、本発明は、主装置に接続される情報処理装置において、
前記主装置から与えられた送信データを記憶する記憶手段と、
前記記憶手段に記憶した送信データをもとに送信パケットを生成する生成手段と、
前記主装置から与えられた前記送信データのコピーを保存するためのキャッシュメモリと、
前記コピーを保存するための外部メモリと、
前記コピーを前記キャッシュメモリに保存し、該コピーを保存したことにより前記キャッシュメモリの記憶容量が不足した場合には、前記コピーを前記外部メモリに保存する保存手段と、
前記生成手段が生成した前記送信パケットを送信する送信手段と、
前記送信手段が送信した送信パケットに対する応答パケットを受信する受信手段と、
前記受信手段が前記応答パケットとしてNACKパケットを受信した場合には、前記生成手段に、前記キャッシュメモリ又は前記外部メモリに保存している該応答パケットの応答対象である前記送信パケットを生成するときのもととなった送信データのコピーを用いて、前記送信パケットを再度生成させ、この再度生成した送信パケットを送信する再送信手段とを備えたことを特徴とする。
【0014】
また、本発明は、主装置に接続される情報処理装置における再送制御方法であって、
前記主装置から与えられた送信データを記憶するステップと、
記憶した前記送信データをもとに、前記送信データの記憶場所を示す標識情報を含む送信パケットを生成するステップと、
生成した前記送信パケットを送信するステップと、
送信した前記送信パケットに対する応答パケットを受信するステップと、
前記応答パケットとしてNACKパケットを受信した場合には、該NACKパケットに含まれる前記標識情報により示される記憶場所に記憶している前記送信データをもとに、前記送信パケットを再度生成し、この生成した送信パケットを送信するステップとを有することを特徴とする。
【0015】
また、本発明は、主装置に接続される情報処理装置における再送制御方法であって、
前記主装置から与えられた送信データを記憶するステップと、
記憶した前記送信データをもとに送信パケットを生成するステップと、
生成した前記送信パケットのコピーをキャッシュメモリに保存し、該コピーを保存したことによりキャッシュメモリの記憶容量が不足した場合には、該コピーを外部メモリに保存するステップと、
保存した前記送信パケットを送信するステップと、
送信した前記送信パケットに対する応答パケットを受信するステップと、
前記応答パケットとしてNACKパケットを受信した場合には、該応答パケットの応答対象である、前記キャッシュメモリ又は前記外部メモリに保存している前記送信パケットのコピーを用いて、該送信パケットの再送を行うステップとを有することを特徴とする。
【0016】
また、本発明は、主装置に接続される情報処理装置における再送制御方法であって、
前記主装置から与えられた送信データを記憶するステップと、
記憶した前記送信データをもとに送信パケットを生成するステップと、
前記主装置から与えられた前記送信データのコピーをキャッシュメモリに保存し、該コピーを保存したことにより前記キャッシュメモリの記憶容量が不足した場合には、該コピーを外部メモリに保存するステップと、
生成した前記送信パケットを送信するステップと、
送信した前記送信パケットに対する応答パケットを受信するステップと、
前記応答パケットとしてNACKパケットを受信した場合には、前記キャッシュメモリ又は前記外部メモリに保存している該応答パケットの応答対象である前記送信パケットを生成するときのもととなった送信データのコピーを用いて、前記パケットを再度生成し、この再度生成した送信パケットを送信するステップとを有することを特徴とする。
【0017】
本発明によれば、再送による信頼性のある通信を遅延時間の増加やハードウェア使用量の増加を抑制しつつ実現することができる。
【0018】
【発明の実施の形態】
以下、図面を参照しながら発明の実施の形態を説明する。
【0019】
(第1の実施形態)
以下では、情報処理装置の一例としてネットワークインタフェース装置に本発明を適用した場合を例にとって説明する。
【0020】
図1に、本実施形態に係るネットワークインタフェース装置(情報処理装置)の構成例を示す。
【0021】
図1に示されるように、ホストコンピュータ(以下、ホストと呼ぶ)1とのインタフェースをとるホストバスインタフェース部2を介して、ホスト1からの書き込みデータを保持するPIOデータ保持部3と、パケット生成部4と、通信リンク制御部5と、受信制御部6と、ACK主導型資源管理制御部7を備えている。
【0022】
なお、図4に示した従来のネットワークインタフェースと比較すると、従来例ではACK主導型ではない資源管理制御部を用いているのに対し、本実施形態ではACK主導型の資源管理制御部7を用いている点が相違している。
【0023】
このACK主導型資源管理制御部7は、状態フラグ8を有している。状態フラグ8は、PIOデータ保持部3の所定の資源(例えば、一定のメモリ領域ごと)に対応して設けられ、各状態フラグは、対応するPIOデータ保持部3の資源が使用中かあるいは開放されているかを示す。
【0024】
ホスト1は、状態フラグ8をポーリングして、それが解放状態にある場合は、その状態フラグ8に対応するPIOデータ保持部3の資源を使った新たな送信を開始することができる。
【0025】
まず、ホスト1は、ホストバスインタフェース部2を介して、資源管理制御部7の状態フラグ8を読み出してPIOデータ保持部3の所定の資源が書き込み可能な状態にあることを確認し、PIOデータ保持部3に送信するパケットを生成するのに必要な情報をプログラムにより書き込む。PIOデータ保持部3は、例えば、DIMMnet−1を用いる場合、前掲の非特許文献2に記載のAOTF送信機構におけるトランザクションFIFOや、非特許文献3に記載のBOTF送信機構におけるWindowメモリが、これに相当する。パケット生成部4は、PIOデータ保持部3にホスト1から書き込まれたデータをもとにパケットを生成し、通信リンク制御部5に伝送し、通信リンク制御部5がこのパケットをネットワークへ送出する。なお、これまでの基本的な動作は、従来例と同様で構わない。
【0026】
しかし、その際に、従来例とは異なり、本実施形態では生成したパケットのもととなったデータのPIOデータ保持部3における場所を特定可能な「資源管理情報」を当該パケット内に組み込む。この情報としては、例えば、AOTF送信機構に適用する場合は、トランザクションFIFOを構成するメモリのアドレス、BOTF送信機構に適用する場合は、WindowメモリのWindow−IDや、それらと同等の情報を有する情報であればよい。
【0027】
さらに、好ましくは、ヘッダー情報に対する誤り検出訂正符合や、CRC等のパケット本体に対する誤り検出符号や、送信元や送信先を記したルーティング情報や、生成したパケットの時間的順序関係を示すパケットシーケンス番号などがパケットに付加された上で、ネットワークへ送出される。
【0028】
また、ホスト1からPIOデータ保持部3に送信するパケットを生成するのに必要な情報が書き込まれると、資源管理制御部7は、対応する状態フラグ8を、使用中を示す状態に更新する。
【0029】
受信側のネットワークインタフェース11は、ネットワークを介して通信リンク制御部5から入ってきたパケットが、ヘッダーとボディ部の双方にエラーが無く、無事にパケットヘッダで指定された受信が行われた場合は、ヘッダーに記載された送信元に資源管理情報を付けてACKパケットを、パケット生成部4で生成し、通信リンク制御部5から返送する。一方、例えばヘッダーにはエラーが無く、パケットボディ部にCRCエラーが検出された等の何らかの理由で再送が必要な場合は、再送を送信元に要求するために、ヘッダーに記載された送信元に資源管理情報を付けてNACKパケットを、パケット生成部4で生成し、通信リンク制御部5から返送する。そして、ACKパケットまたはNACKパケットが送信側のネットワークインタフェース11に届く。
【0030】
図4の従来例ではパケット生成部104がパケット生成を完了した段階で、PIOデータ保持部103上のパケット生成に用いた資源を解放してしまう。よって、再送に用いるべきパケット生成用データはネットワークインタフェース側には残っていないので、ホスト側に割り込みをかけるなどして、事前にソフトウェア的にコピーされたパケット生成用データを用いて、再送を行うしかない。従って、従来はProgrammed I/O方式を用いて送信元と送信先の二点間で再送を行う場合は、DMA方式と同様に、パケットを送信する前に、パケットを生成するのに必要なデータを主記憶上にソフトウェア的にコピーしておく必要があり、送信遅延時間を大きなものにしていた。
【0031】
これに対して本実施形態では、パケット生成部4がパケット生成を完了した段階でPIOデータ保持部3上の当該パケット生成に用いた資源を解放するのではなく、ACKパケットを送信側の通信リンク制御部5を介して受信制御部6が受信した場合に、はじめて、受信制御部6の制御よって、ACK主導型資源管理部7が該ACKパケットのヘッダー内の資源管理情報をもとに、保持されていた資源を解放し、それに対応する状態フラグ8を、解放中を示す状態に更新する。
【0032】
NACKパケットを送信側の通信リンク制御部5を介して受信制御部6が受信した場合には、未だPIOデータ保持部3上の当該パケット生成に用いた資源が解放されていないので、受信制御部6の制御よって、パケット生成部4は、該NACKパケットのヘッダー内の資源管理情報をもとに対応するPIOデータ保持部3上のデータを用いて再びパケットを生成し、通信リンク制御部5を介してネットワークにパケットを再送する。
【0033】
ここで、好ましくは、再送した回数を計数するカウンタを更新し、過去数回分の再送が生じた送信先やパケットシーケンス番号等を記録するとよい。上記カウンタが一定回数になるとホスト1への割り込みが発生し、ホスト1は過去数回分の再送が生じた送信先やパケットシーケンス番号をもとに、どの部分がどの程度不安定かということを解析して適切な対処を行うことができる。それ以外の再送に関わる処理(例えば送信起動前のパケットイメージの作成やそれを用いた再送起動など)はホスト1では行われず、上記のようにハード的に再送が行われているので、少ない頻度でしか再送が発生しない状況では遅延時間の短縮化がなされる。
【0034】
また、RapidIOにおける経路上の全ての通信リンク間で行われる再送とは異なり、本実施形態では通信の送信元と送信先の二点間で行われる再送であるので、通過点におけるハードウェアや処理が簡略化され、コストの低下と遅延時間の短縮が達成される。
【0035】
なお、上記の例では再送自体を完全にハード的に実現した例を示したが、再送の発生頻度は少ないということを前提に、再送要求が来たことをホストに割り込みで通知し、ヘッダー内の資源管理情報をもとにホストからソフト的に再度送信を起動するように構成してもよい。
【0036】
(第2の実施形態)
図2に、本実施形態に係るネットワークインタフェース装置(情報処理装置)の構成例を示す。
【0037】
第1の実施形態(図1)との相違は、キャッシュメモリ12、メモリ制御部13、外部メモリ14が追加されている点と、資源管理制御部72が、ACK主導型ではなく、図4と同様にパケット生成完了時に資源解放が行われるタイプである点である。
【0038】
以下では、第1の実施形態と相違する点を中心に説明する。
【0039】
図1の構成例は、ACKパケットが戻ってくるまで資源管理制御部7のそのACKパケットに対応する資源が解放されないために、ホスト1側は送信用のデータ書き込みを行える状態であっても、資源管理制御部7上の資源が全てACKパケット待ち状態になってしまっていて書き込みが遅延される状況もあり得る。
【0040】
一方、本実施形態では、資源管理制御部72が従来例と同様にパケット生成完了時に資源解放が行われるタイプであるので、第1の実施形態に比べて早期に資源解放が行われるので上記の遅延が発生する確率が低下する。
【0041】
パケット生成時の動作としては、「ホスト1からの書き込みデータに基づいて生成したパケットのコピーをキャッシュメモリ12に保存することを試みること」をメモリ制御部13が行う。キャッシュメモリ12は比較的小容量のメモリであり、キャッシュメモリ12が溢れていない場合は外部メモリ14へのアクセスを発生させることなく、キャッシュメモリ12に生成したパケットのコピーが蓄積されていく。
【0042】
パケットのコピーは、たとえば送信パケットやそれに対応する応答パケットに付加されているパケットシーケンシャル番号等の、送信パケットを識別することが可能な情報とともに管理される。
【0043】
一方、キャッシュメモリ12が溢れた場合は外部メモリ14に生成したパケットのコピーを保存する。このため、キャッシュメモリというLSI上の少ないハードウェアを使用するにも関わらず、キャッシュメモリ容量を越える多数のパケットに対してACKパケットが届かない状況にも対応することが可能となる。なお、キャッシュメモリ12が溢れて外部メモリ14にアクセスが発生した場合は、外部メモリ14を受信パケット退避などの何らかの用途で用いている場合はアクセス競合のために性能低下が起きる可能性が発生する。
【0044】
上記のような生成したパケットをキャッシュメモリ12または外部メモリ14に蓄積している状態にある送信側にACKパケットが返送されてきた場合は、パケットの送信が成功したことによって再送の必要が無くなったため、そのACKパケットに対応するパケットのコピーをキャッシュメモリ12または外部メモリ14から削除する。
【0045】
一方、NACKパケットが返送されてきた場合は再送が必要なので、そのACKパケットに対応するパケットのコピーをキャッシュメモリ12または外部メモリ14から読み出して再送を行うことができる。
【0046】
以上のようにして、キャッシュメモリが溢れないうちにACKパケットまたはNACKパケットが帰ってくるようなネットワークがあまり混雑していない状況では外部メモリへのアクセスもなく、PIO方式の送信であるにもかかわらず送信前にソフト的にパケット生成用データをメモリ上にコピーすることなく、再送を実現できる。
【0047】
(第3の実施形態)
図3に、本実施形態に係るネットワークインタフェース装置(情報処理装置)の構成例を示す。
【0048】
第2の実施形態(図2)との相違は、キャッシュメモリ12、メモリ制御部13、外部メモリ14がパケット生成部4から出力されるパケットを格納していく構成ではなく、ホストバスインタフェース2からの書き込みデータをPIOデータ保持部3への格納と並行して行えるように構成されている点である。
【0049】
以下では、第2の実施形態と相違する点を中心に説明する。
【0050】
PIOデータ保持部3へ格納されるPIOデータのコピーは、たとえば送信パケットやそれに対応する応答パケットに付加されるPIOデータシーケンシャル番号等の、PIOデータを識別することが可能な情報とともに管理される。
【0051】
ACKパケットが帰ってきた場合の動作は、第2の実施形態と同様である。
【0052】
一方、NACKパケットが返送されてきた場合は再送が必要なので、そのACKパケットに対応するパケットのもととなった書き込みデータのコピーを、キャッシュメモリ12または外部メモリ14から読み出して再送を行う。
【0053】
NACKパケットが帰ってきて再送が発生する場合は、パケット生成部4での処理が繰り返されるので、本実施形態の方が若干性能が低くなるが、再送自体はそれほど多くの頻度では発生しない状況では両者の性能差はわずかである。
【0054】
第2の実施形態でも本実施形態でも、送信前にソフト的にパケット生成用データをメモリ上にコピーすることなく、ハード的に再送用のデータがコピーされていくために、従来例と比べて遅延時間を短くすることができ、キャッシュメモリ12による少ないハードウェア量で多くのACKパケットが届かないパケットに対して対応することが可能である点も、同様の効果がある。
【0055】
なお、第2の実施形態と本実施形態は、パケットとパケット生成用にホストから書き込まれるデータの大小関係や、再送時のパケット生成にかかる時間と再送頻度に伴うその重要性に応じて、いずれの構成の方が優れるかが変動する。例えば、再送時のパケット生成にかかる時間の短さが、キャッシュメモリがミスヒットした場合のペナルティに比べて重要であったり、パケットの方がホストから書き込まれるデータよりもデータ量が少なくて済む場合などは、第2の実施形態の構成が適する。その逆の場合は、第3の実施形態の構成が適する。概ね、CRC等の付加によってパケットの方がホストから書き込まれる元データよりも大きくなるので、少ない記憶データ量で済む第3の実施形態の構成がキャッシュメモリのヒット率が向上するために適する場合が多いと考えられる。その差は、パケット長が短くてCRCの比率が高くなる場合ほど大きくなる。
【0056】
なお、各実施形態で例示した構成は一例であって、それ以外の構成を排除する趣旨のものではなく、例示した構成の一部を他のもので置き換えたり、例示した構成の一部を省いたり、例示した構成に別の機能を付加したり、それらを組み合わせたりすることなどによって得られる別の構成も可能である。また、例示した構成と論理的に等価な別の構成、例示した構成と論理的に等価な部分を含む別の構成、例示した構成の要部と論理的に等価な別の構成なども可能である。また、例示した構成と同一もしくは類似の目的を達成する別の構成、例示した構成と同一もしくは類似の効果を奏する別の構成なども可能である。
【0057】
また、各種構成部分についての各種バリエーションは、適宜組み合わせて実施することが可能である。
【0058】
本発明は、上述した実施の形態に限定されるものではなく、その技術的範囲において種々変形して実施することができる。
【0059】
【発明の効果】
本発明によれば、再送による信頼性のある通信を遅延時間の増加やハードウェア使用量の増加を抑制しつつ実現することができる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係る情報処理装置の構成例を示す図
【図2】同実施形態に係る情報処理装置の他の構成例を示す図
【図3】同実施形態に係る情報処理装置のさらに他の構成例を示す図
【図4】従来の情報処理装置について説明するための図
【符号の説明】
1…ホストコンピュータ、2…ホストバスインタフェース、3…PIOデータ保持部、4…パケット生成部、5…通信リンク制御部、6…受信制御部、7…ACK主導型資源管理制御部、10…LSI、11…ネットワークインタフェース、12…キャッシュメモリ、13…メモリ制御部、14…外部メモリ、72…資源管理制御部

Claims (9)

  1. 主装置に接続される情報処理装置において、
    前記主装置から与えられた送信データを記憶する記憶手段と、
    前記送信データをもとに、前記記憶手段上の前記送信データの記憶場所を示す標識情報を含む送信パケットを生成する生成手段と、
    前記生成手段が生成した前記送信パケットを送信する送信手段と、
    前記送信手段が送信した前記送信パケットに対する応答パケットを受信する受信手段と、
    前記受信手段が前記応答パケットとしてNACKパケットを受信した場合には、前記生成手段に、前記記憶手段上の該NACKパケットに含まれる前記標識情報により示される記憶場所に記憶している前記送信データをもとに送信パケットを再度生成させ、該再度生成した送信パケットを送信する再送信手段とを備えたことを特徴とする情報処理装置。
  2. 前記記憶手段上のある記憶場所が使用中か又は未使用かを示すフラグ情報を、前記主装置から読み取り可能に保持する保持手段と、
    前記主装置から与えられた前記送信データを前記記憶手段に記憶している場合に、前記保持手段に保持する、前記記憶手段上の該送信データの記憶場所に対応するフラグ情報を、使用中を示す状態に更新し、前記受信手段が前記応答パケットとしてACKパケットを受信した場合には、前記保持手段に保持する前記フラグ情報のうち、該ACKパケットに含まれる前記標識情報により示される前記記憶手段上の記憶場所に対応するフラグ情報を、未使用を示す状態に更新する手段とを更に備えたことを特徴とする請求項1に記載の情報処理装置。
  3. 主装置に接続される情報処理装置において、
    前記主装置から与えられた送信データを記憶する記憶手段と、
    前記記憶手段に記憶した送信データをもとに送信パケットを生成する生成手段と、
    前記生成手段が生成した前記送信パケットのコピーを保存するためのキャッシュメモリと、
    前記コピーを保存するための外部メモリと、
    前記コピーを前記キャッシュメモリに保存し、該コピーを保存したことにより前記キャッシュメモリの記憶容量が不足した場合には、前記コピーを前記外部メモリに保存する保存手段と、
    前記保存手段に保存した前記送信パケットを送信する送信手段と、
    前記送信手段が送信した送信パケットに対する応答パケットを受信する受信手段と、
    前記受信手段が前記応答パケットとしてNACKパケットを受信した場合には、前記送信手段に、該応答パケットの応答対象である、前記キャッシュメモリ又は前記外部メモリに保存している前記送信パケットのコピーを用いて、該送信パケットを送信する再送信手段とを備えたことを特徴とする情報処理装置。
  4. 前記保存手段は、前記受信手段が前記応答パケットとしてACKパケットを受信した場合に、前記キャッシュメモリ又は前記外部メモリに保存している、該応答パケットの応答対象である送信パケットの前記コピーを破棄することを特徴とする請求項3に記載の情報処理装置。
  5. 主装置に接続される情報処理装置において、
    前記主装置から与えられた送信データを記憶する記憶手段と、
    前記記憶手段に記憶した送信データをもとに送信パケットを生成する生成手段と、
    前記主装置から与えられた前記送信データのコピーを保存するためのキャッシュメモリと、
    前記コピーを保存するための外部メモリと、
    前記コピーを前記キャッシュメモリに保存し、該コピーを保存したことにより前記キャッシュメモリの記憶容量が不足した場合には、前記コピーを前記外部メモリに保存する保存手段と、
    前記生成手段が生成した前記送信パケットを送信する送信手段と、
    前記送信手段が送信した送信パケットに対する応答パケットを受信する受信手段と、
    前記受信手段が前記応答パケットとしてNACKパケットを受信した場合には、前記生成手段に、前記キャッシュメモリ又は前記外部メモリに保存している該応答パケットの応答対象である前記送信パケットを生成するときのもととなった送信データのコピーを用いて、前記送信パケットを再度生成させ、この再度生成した送信パケットを送信する再送信手段とを備えたことを特徴とする情報処理装置。
  6. 前記保存手段は、前記受信手段が前記応答パケットとしてACKパケットを受信した場合に、前記キャッシュメモリ又は前記外部メモリに保存している、該応答パケットの応答対象である送信パケットのもととなった送信データの前記コピーを破棄することを特徴とする請求項5に記載の情報処理装置。
  7. 主装置に接続される情報処理装置における再送制御方法であって、
    前記主装置から与えられた送信データを記憶するステップと、
    記憶した前記送信データをもとに、前記送信データの記憶場所を示す標識情報を含む送信パケットを生成するステップと、
    生成した前記送信パケットを送信するステップと、
    送信した前記送信パケットに対する応答パケットを受信するステップと、
    前記応答パケットとしてNACKパケットを受信した場合には、該NACKパケットに含まれる前記標識情報により示される記憶場所に記憶している前記送信データをもとに、前記送信パケットを再度生成し、この生成した送信パケットを送信するステップとを有することを特徴とする再送制御方法。
  8. 主装置に接続される情報処理装置における再送制御方法であって、
    前記主装置から与えられた送信データを記憶するステップと、
    記憶した前記送信データをもとに送信パケットを生成するステップと、
    生成した前記送信パケットのコピーをキャッシュメモリに保存し、該コピーを保存したことによりキャッシュメモリの記憶容量が不足した場合には、該コピーを外部メモリに保存するステップと、
    保存した前記送信パケットを送信するステップと、
    送信した前記送信パケットに対する応答パケットを受信するステップと、
    前記応答パケットとしてNACKパケットを受信した場合には、該応答パケットの応答対象である、前記キャッシュメモリ又は前記外部メモリに保存している前記送信パケットのコピーを用いて、該送信パケットの再送を行うステップとを有することを特徴とする再送制御方法。
  9. 主装置に接続される情報処理装置における再送制御方法であって、
    前記主装置から与えられた送信データを記憶するステップと、
    記憶した前記送信データをもとに送信パケットを生成するステップと、
    前記主装置から与えられた前記送信データのコピーをキャッシュメモリに保存し、該コピーを保存したことにより前記キャッシュメモリの記憶容量が不足した場合には、該コピーを外部メモリに保存するステップと、
    生成した前記送信パケットを送信するステップと、
    送信した前記送信パケットに対する応答パケットを受信するステップと、
    前記応答パケットとしてNACKパケットを受信した場合には、前記キャッシュメモリ又は前記外部メモリに保存している該応答パケットの応答対象である前記送信パケットを生成するときのもととなった送信データのコピーを用いて、前記パケットを再度生成し、この再度生成した送信パケットを送信するステップとを有することを特徴とする再送制御方法。
JP2003062145A 2003-03-07 2003-03-07 情報処理装置及び再送制御方法 Expired - Fee Related JP3727928B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003062145A JP3727928B2 (ja) 2003-03-07 2003-03-07 情報処理装置及び再送制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003062145A JP3727928B2 (ja) 2003-03-07 2003-03-07 情報処理装置及び再送制御方法

Publications (2)

Publication Number Publication Date
JP2004274376A true JP2004274376A (ja) 2004-09-30
JP3727928B2 JP3727928B2 (ja) 2005-12-21

Family

ID=33124147

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003062145A Expired - Fee Related JP3727928B2 (ja) 2003-03-07 2003-03-07 情報処理装置及び再送制御方法

Country Status (1)

Country Link
JP (1) JP3727928B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008005315A (ja) * 2006-06-23 2008-01-10 Fujitsu Ltd データ通信プログラム
JP2009267705A (ja) * 2008-04-24 2009-11-12 Canon Inc 通信方法及び画像形成装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008005315A (ja) * 2006-06-23 2008-01-10 Fujitsu Ltd データ通信プログラム
JP4757109B2 (ja) * 2006-06-23 2011-08-24 富士通株式会社 データ通信プログラム
US8228799B2 (en) 2006-06-23 2012-07-24 Fujitsu Limited Data communication apparatus and computer product
JP2009267705A (ja) * 2008-04-24 2009-11-12 Canon Inc 通信方法及び画像形成装置

Also Published As

Publication number Publication date
JP3727928B2 (ja) 2005-12-21

Similar Documents

Publication Publication Date Title
Kleinpaste et al. Software support for outboard buffering and checksumming
CN109936510B (zh) 多路径rdma传输
US9836431B2 (en) Secure handle for intra-and inter-processor communications
US6393023B1 (en) System and method for acknowledging receipt of messages within a packet based communication network
US9071525B2 (en) Data receiving apparatus, data receiving method, and program storage medium
US7707346B2 (en) PCI express multi-root IOV endpoint retry buffer controller
US8943507B2 (en) Packet assembly module for multi-core, multi-thread network processors
US20060117119A1 (en) Enhanced power reduction capabilities for streaming direct memory access engine
US6826148B1 (en) System and method for implementing a routing scheme in a computer network using intention packets when fault conditions are detected
US7788437B2 (en) Computer system with network interface retransmit
US20230156102A1 (en) Packet processing method, network device, and related device
US7564860B2 (en) Apparatus and method for workflow-based routing in a distributed architecture router
US20080263171A1 (en) Peripheral device that DMAS the same data to different locations in a computer
US7817572B2 (en) Communications apparatus and communication method
JP5880551B2 (ja) 再送制御システム及び再送制御方法
US6741561B1 (en) Routing mechanism using intention packets in a hierarchy or networks
JP4807828B2 (ja) ブロードバンド・エンジンのためのエンベロープ・パケット・アーキテクチュア
CN111290875B (zh) Harq数据存储管理方法、装置和harq数据缓存器
JP3727928B2 (ja) 情報処理装置及び再送制御方法
Cooper An argument for soft layering of protocols
US20160352832A1 (en) Enhancing data consistency in cloud storage system by entrance data buffering
US20080034106A1 (en) Reducing power consumption for bulk data transfers
JP2008148181A (ja) 通信装置及び通信制御方法
KR20010095103A (ko) 데이터 블록 전송 방법 및 장치
JP2004128786A (ja) パケット再送制御装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050208

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050411

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: 20050927

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050929

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081007

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091007

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101007

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111007

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111007

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121007

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131007

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees