JP2000194675A - 並列計算機システム - Google Patents

並列計算機システム

Info

Publication number
JP2000194675A
JP2000194675A JP10367614A JP36761498A JP2000194675A JP 2000194675 A JP2000194675 A JP 2000194675A JP 10367614 A JP10367614 A JP 10367614A JP 36761498 A JP36761498 A JP 36761498A JP 2000194675 A JP2000194675 A JP 2000194675A
Authority
JP
Japan
Prior art keywords
message
packet
information
transmission
register
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.)
Pending
Application number
JP10367614A
Other languages
English (en)
Inventor
Nozomi Chiba
望 千葉
Hamilton Patrick
ハミルトン パトリック
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP10367614A priority Critical patent/JP2000194675A/ja
Publication of JP2000194675A publication Critical patent/JP2000194675A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】 メッセージの再構成に要する時間の増大によ
るシステム全体の性能劣化を押さえることができる並列
計算機システム。 【解決手段】 ノード900に設けられるネットワーク
インタフェースアダプタNIA3は、システムバス10
とNIA3とのインタフェースを司るバス制御部4、ネ
ットワークにメッセージを送出するセンダ5、ネットワ
ークからのメッセージを受信するレシーバ6により構成
される。そして、レシーバ6は、メッセージ受信結果を
送信側ノードに報告するackパケットをプロセッサの
処理を介さずに生成する機能を有している。センダ5か
ら他のノードに伝送するメッセージは、複数のパケット
に分割されて送信される。その際、メッセージを再構成
するための情報を、ネットワークにより形成されるハー
フチャネル毎に管理する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、複数のプロセッシ
ングノードをネットワークにより相互に接続した構成の
並列計算機システムに係り、特に、1つのノードが複数
のノードからのメッセージを同時に受信する場合がある
場合に使用して好適な並列計算機システムに関する。
【0002】
【従来の技術】並列計算機システムは、通常、複数のプ
ロセッシングノードをネットワークを介して接続して構
成されている。近年、この種の並列計算機システムとし
て、プロセッシングノード数が何千にもなるものが発表
されており、このような大規模な並列計算機システム
は、全てのプロセッシングノードを1対1に接続するこ
とが不可能となっている。
【0003】プロセッシングノード接続のトポロジに
は、様々なものが知られているが、前述のような大規模
のシステムにおいては、プロセッシングノード間通信経
路の一部が重複することは避けられない。そして、その
重複した部分でメッセージの衝突が発生すると、メッセ
ージが待たされるため、ネットワーク全体の稼働率が低
下する。特に、メッセージが長い場合、待たされる時間
が長くなり、ネットワーク稼働率に重大な影響を及ぼす
ことになる。
【0004】このような問題を解決するために、メッセ
ージをより短いパケットに分割する方法が通常採用され
る。このようにパケット単位で通信を行うことにより、
重複する経路おいて、メッセージ全部が通過するのを待
たなくてもよくなるため、あるメッセージが通信経路を
占有することがなくなり、ネットワークの稼働率の低下
を抑えることができる。しかし、メッセージを受信する
ノードは、パケットから分割される前のメッセージを再
構成する必要があり、そのための新たなオーバーヘッド
が発生する。また、あるプロセッシングノードに到着す
るメッセージは、通常1つではないため、各ノードは、
到着したパケットがどのメッセージに属するのかを判定
する必要がある。
【0005】なお、前述したメッセージ分割・再構成に
関する従来技術として、例えば、特表平7−50550
9号公報等に記載された技術が知られている。
【0006】また、メッセージをパケットに分割する手
法はTCP/IPでも用いられる。これは、あるルータ
の入力側の経路における通信可能なメッセージの最大長
が、ルータの出力側の経路のそれよりも大きい場合、メ
ッセージを分割する必要が出てくるためである。このT
CP/IPに用いられる技術も並列計算機システムに応
用することが可能である。
【0007】
【発明が解決しようとする課題】前述した従来技術は、
メッセージ再構成のオーバーヘッドを低減するために、
再構成に必要な情報をメッセージ毎に持たせ、かつ、再
構成に必要な情報をハードウェア、例えば、メッセージ
受信処理を行う部分等が保持し、ソフトウェアの手助け
なしにハードウェアがメッセージの再構成を行うように
することにより、メッセージの再構成に要する時間を短
縮することができるものである。
【0008】しかし、前述した従来技術は、並列計算機
のノード数の増加に伴い、並列計算機システム内部で授
受されるメッセージ数が飛躍的に増大し、それに伴いあ
る1つのノードが同時に受信するメッセージ数も増大し
てきているため、ハードウェアが保持することができる
メッセージの再構成に必要な情報の数を同時に受信する
メッセージ数が越える場合があり、その場合、ハードウ
ェアだけでメッセージの再構成を行なうことができず、
メッセージの再構成に要する時間が増大し、システム全
体の性能が劣化してしまうという問題点を生じている。
【0009】本発明の目的は、前述した従来技術の問題
点を解決し、各プロセッシングノードがソフトウェアの
手助けなしにメッセージの再構成を可能とし、メッセー
ジの再構成に要する時間の増大によるシステム全体の性
能劣化を押さえることができる並列計算機システムを提
供することにある。
【0010】
【課題を解決するための手段】本発明によれば前記目的
は、複数のプロセッシングノードと、これらのプロセッ
シングノードを相互に接続するネットワークとを備えて
構成され、プロセッシングノード相互間でメッセージの
送受信を行う並列計算機システムにおいて、前記プロセ
ッシングノードのそれぞれが、メッセージを複数のパケ
ットに分割してネットワークに送出する機能と、該分割
されたパケットを元のメッセージに再構成する機能と、
前記ネットワークによりプロセッシングノード相互間に
形成されるメッセージ通信経路であるハーフチャネル毎
にメッセージ再構成のための情報とを備えることにより
達成される。
【0011】また、前記目的は、前記メッセージ再構成
のための情報が、メッセージ再構成が完了したか否かを
示す情報、前記ハーフチャネルにおける通信状態を示す
ハーフチャネル通信状態情報、メッセージ受信のために
行うアドレス変換情報及び該アドレス変換の結果の情
報、次に受信すべきパケットのシーケンス番号及びメッ
セージ長の情報のうち少なくとも1つの情報を含むこと
により達成される。
【0012】また、前記目的は、前記プロセッシングノ
ードのそれぞれが、受信側となったとき、送信元のプロ
セッシングノードへメッセージ受信を報告するためのa
ckパケットを送信する機能を有し、前記メッセージ再
構成のための情報がackパケットを生成するための情
報を含むことにより達成される。
【0013】また、前記目的は、前記ハーフチャネル通
信状態情報が、ハーフチャネルが開いているか否かを示
す情報とハーフチャネルにおいてエラーが発生したか否
かを示す情報とを含むことにより達成される。
【0014】さらに、前記目的は、前記メッセージ再構
成のための情報に含まれる情報のうち少なくとも1つが
メッセージを複数に分割した一部のパケット、特に、先
頭のパケットに格納されることにより達成される。
【0015】
【発明の実施の形態】以下、本発明による並列計算機シ
ステムの一実施形態を図面により詳細に説明する。
【0016】図1は本発明の一実施形態による並列計算
機システムの全体構成を示すブロック図である。図1に
おいて、1はプロセッサユニット、2は主記憶装置、3
はネットワークインタフェースアダプタ(NIA)、4
はバス制御部、5はセンダ、6はレシーバ、7はネット
ワーク、10はシステムバス、11〜18、20、30
は信号線、900〜903はプロセッシングノード0〜
3(以下、単にノードという)である。
【0017】図1に示す並列計算機システムは、計算処
理を行うノード900〜903と、ノード相互間でメッ
セージを転送するネットワーク7と、これらを接続する
信号線14〜18とにより構成されている。ここで、信
号線14は、ノード900がネットワーク7を介して他
のノードへ送出するメッセージを、信号線15は、ノー
ド900がネットワーク7を介して他のノードから受信
するメッセージを伝える。また、信号線16〜18は、
ノード900における信号線14と15とを1つにまと
めて表した信号線であり、それぞれ、ノード901〜9
03とネットワーク7とを接続している。なお、図示の
本発明の実施形態は、ノード数を4個としているが、本
発明は、ノード数が2個以上であれば有効である。
【0018】ノード900は、OSやユーザアプリケー
ションを実行する1つ以上のプロセッサユニット1、デ
ータを格納するための主記憶装置2、ネットワーク7と
ノード900とのインタフェースを司るNIA3、プロ
セッサユニット1と主記憶装置2とNIA3とを接続す
るシステムバス10、システムバス10とプロセッサユ
ニット1とを接続する信号線11、システムバス10と
主記憶装置2とを接続する信号線12、システムバス1
0とNIA3とを接続する信号線13により構成され
る。
【0019】NIA3は、システムバス10とNIA3
とのインタフェースを司るバス制御部4、ネットワーク
にメッセージを送出するセンダ5、ネットワークからの
メッセージを受信するレシーバ6により構成される。そ
して、レシーバ6は、メッセージ受信結果を送信側ノー
ドに報告するackパケットをプロセッサの処理を介さ
ずに生成する機能を有している。また、バス制御部4と
センダ5との間の信号線20は、センダ5が主記憶装置
2に書き込まれているメッセージデータをネットワーク
7に送出するためにやりとりする信号を伝える。バス制
御部4とレシーバ6との間の信号線30は、レシーバが
パケットを受信しメッセージを主記憶装置2に書き込む
ためにやりとりする信号を伝える。センダ5とレシーバ
6との間の信号線40は、レシーバで生成されるack
パケットを送出するためにやりとりする信号を伝える。
【0020】図2はネットワークに構成されるハーフチ
ャネルを説明する図であり、以下、ハーフチャネルにつ
いて説明する。図2において、50〜60はスイッチ
(SW)であり、他の符号は図1の場合と同一である。
【0021】本発明の実施形態によるネットワーク7
は、3段のSWを持ち、各SWがパケットヘッダのルー
ティング情報に従ってメッセージを出力するポートを切
り替えることにより、メッセージのルーティングを行
う。図2には、同一ノードのセンダを左側にレシーバを
右側に示しており、メッセージは左から右へ送られる。
【0022】ハーフチャネルとは、あるノードからある
ノードへ設けられていてメッセージの追い越しがなく論
理的に区別されたメッセージ通信経路のことである。メ
ッセージの追い越しを禁止する理由は、分割したメッセ
ージの再構成をメッセージ毎ではなく、ハーフチャネル
毎に行うためである。すなわち、いま、あるメッセージ
0の途中で別のメッセージ1が割り込むと、メッセージ
0を再構成するための情報(以下、MRTEという)が
メッセージ1のMRTEにより上書きされて失われてし
まう。そのため、メッセージ1の後にメッセージ0のパ
ケットを受信してもメッセージの再構成を行うことがで
きない。このようなことを回避するために、本発明の実
施形態ではメッセージの追い越しを禁止することとす
る。
【0023】なお、ハーフチャネルは、物理的には同じ
経路であってもかまわない、また、同一ノード間に複数
あってもかまわない。同一ノード間で複数のハーフチャ
ネルを持つことにより、システムの信頼性を向上させる
ことができる。また、メッセージに通常通信、緊急通信
のように優先順位がある場合、それぞれのハーフチャネ
ルを分けることにより、緊急通信メッセージを通常通信
メッセージより先に通信することが可能となる。
【0024】図2に示す例は、ノード901からノード
902へのハーフチャネルは、太線で示す物理的かつ論
理的に区別された4本の経路とし、システム全体で16
本のハーフチャネルが存在するものとする。それぞれの
ハーフチャネルは、ノード番号とハーフチャネル番号と
により識別される。また、各ハーフチャネルは、ハーフ
チャネルが開いているか閉じているか、ハーフチャネル
でエラーが発生したか否かの組み合わせにより4つの状
態がある。
【0025】本発明の実施形態は、パケットに順番につ
けられるシーケンス番号により、各ハーフチャネル毎に
パケットの消失等のエラーを検出する。そして、本発明
の実施形態は、シーケンス番号によるエラー検出を簡単
に行うため、同一ハーフチャネルのメッセージ追い越し
だけでなくパケット追い越しも禁止する。パケットの追
い越しが無いため、メッセージ受信ノードは、パケット
のシーケンス番号が、2、3、5、6・・・のように不
連続になるとパケットが消失したことを検出することが
できる。
【0026】受信ノードのレシーバ6がメッセージを受
信し、それを主記憶装置2に書き込むのは、ハーフチャ
ネルが開いていてかつエラーが発生していない場合に限
られ、それ以外の3つの状態ではレシーバ6は受け取っ
たメッセージを破棄する。ハーフチャネルを開くために
は、ハーフチャネルオープンBitが1のパケットを送
信する。ハーフチャネルオープンBitは、メッセージ
送信を制御するためにライブラリが作成するメッセージ
送信情報(後述)内に設定されている。センダ5は、こ
のハーフチャネルオープンBitを、先頭パケットのパ
ケットヘッダにのみコピーする。これは、レシーバ6が
メッセージの途中からパケットを受信し始めることはな
く、後続パケットにハーフチャネルオープンBitの必
要がないためである。
【0027】また、ハーフチャネルオープンBitが1
の先頭パケットをレシーバ6が受け取った場合、レシー
バ6は、ハーフチャネルを開くとともに、以前に発生し
たエラーをクリアし、正常なメッセージの受信処理を再
開する。
【0028】図3は主記憶装置に格納される情報の内容
を説明する図、図4はメッセージ送信情報、メッセージ
受信情報、PTE、MRTE、ルーティング情報の詳細
を説明する図、図5はMRTEサーチ方法を説明する図
であり、次に、これらについて説明する。
【0029】図3に示すように、主記憶装置2は、ユー
ザが使用する領域であるユーザ空間70、ページテーブ
ル90、分割されたメッセージを再構成するためのMR
TEの集合であるMRT100、ルーティング情報の集
合であるルーティングテーブル120を持つ。ユーザ空
間70は、ユーザプログラムやデータを格納する領域で
ある。本発明の実施形態は、1ユーザに対するものとし
てで説明するが、本発明はマルチユーザの場合にも有効
である。
【0030】ユーザ空間70内には、仮想ポート制御ブ
ロック(以下、PCBという)80、送信バッファ87
及び受信バッファ88が備えられる。PCB80は、ユ
ーザが他のノードとの通信を行うために必要なメッセー
ジ送信情報0 82とメッセージ送信情報1 83、メ
ッセージ受信情報0 84とメッセージ受信情報18
5、及び、メッセージ送信情報0 82のアドレスを示
す送信情報アドレス81を持っている。前述において、
メッセージ送信情報0 82は、現在処理中あるいはこ
れから処理を開始するメッセージ送信情報であり、メッ
セージ送信情報1 83は、すでにセンダ5が送信処理
を終了したメッセージ送信情報である。メッセージ送信
情報1 83のように、送信処理を終了したメッセージ
送信情報は、相手側での受信がうまくいかなかった場合
のメッセージ再送に備えて、受信が正常に完了するまで
PCB80内に残される。
【0031】また、前述の送信情報アドレス81は、必
ずPCB80の先頭に配置されいるものとする。すなわ
ち、PCB80の先頭のアドレス81と送信情報0 8
2のアドレスとは等しい。前述のメッセージ送信情報8
2、83やメッセージ受信情報84、85は、それぞれ
1つのメッセージの送信制御情報及び受信制御情報を持
つ。メッセージ通信を行うためには、メッセージ送信情
報とメッセージ受信情報との対をソフトウェアが準備す
る必要がある。
【0032】本発明の実施形態は、センダ5がメッセー
ジ送出要求を受け取る前に、これらメッセージ送信情報
とメッセージ受信情報とをソフトウェアが準備するもの
とする。また、メッセージ送信情報は、PCB80内に
1つしかない。しかし、複数のメッセージ送信情報を連
結して1度のメッセージ送出要求により複数のメッセー
ジを連続して送出するアーキテクチャであってもよい。
また、メッセージ受信情報は、受信処理中のメッセージ
の数だけ存在する。図3に示す例では2つのメッセージ
を受信中である。
【0033】メッセージ送信情報82、83は、送信バ
ッファ87内にあるメッセージデータの先頭の仮想アド
レスを持ち、メッセージ受信情報84、85は、受信し
たメッセージを書き込むべき受信バッファ88内の領域
の先頭の仮想アドレスを持つ。送信バッファ87は、ユ
ーザが他ノードに対して送信するメッセージデータを格
納するバッファであり、また、受信バッファ88は、他
ノードからユーザが受信するメッセージデータを格納す
るバッファである。これらの仮想アドレスを実アドレス
へ変換するためにページテーブル90が用いられる。
【0034】ページテーブル90は、ページテーブルエ
ントリ(以下、PTEという)の集合である。ページテ
ーブル90には、PCBの先頭実アドレスを格納するP
CB用PTEと、仮想アドレスから実アドレスを参照す
るためのアドレス変換用PTEと、アドレス変換情報
(後述)からメッセージ受信情報の実アドレスを参照す
るための受信情報用PTEとの3種類がある。図3に示
す例において、PTEi91がPCB用PTEであり、
PTEj92とPTEk93とがアドレス変換用PTE
であり、PTEl94が受信情報用PTEである。この
ページテーブル90は、カーネルにより管理されてい
る。
【0035】PCB80、送信バッファ87、受信バッ
ファ88へのアクセスは、ページテーブル90を介して
行われるため、ユーザがOS空間に誤ってアクセスする
ことがなくなり、ユーザ−OS間のプロテクションを実
現することができる。本発明の実施形態において、PC
B用PTEであるPTEi91は、ページテーブル90
の先頭に配置されるものとし、ページテーブル90の先
頭実アドレスは、システムを立ち上げるときに、センダ
5が持つページテーブルベースレジスタへ格納される。
【0036】MRT100とルーティングテーブル12
0とは、それぞれ前述したMRTEとルーティング情報
との集合体であり、MRTE及びルーティング情報の数
は、ハーフチャネルと同じ数だけある。本発明の実施形
態は、ハーフチャネル数が16本であるとしているの
で、MRTE及びルーティング情報も16個ある。
【0037】次に、図4を参照して、メッセージ送信情
報82、メッセージ受信情報84、アドレス変換用PT
EであるPTEj92、受信情報用PTEであるPTE
l94、MRTE101、ルーティング情報121の詳
細を説明する。なお、PTEk93、MRTE102〜
116及びルーティング情報122〜136について
も、それぞれPTEj92、MRTE101及びルーテ
ィング情報121と同じ内容を持つ。
【0038】メッセージ送信情報82は、ソースノード
番号150、ハーフチャネル番号151、送信するメッ
セージの先頭の仮想アドレスである送信データアドレス
152、送出すべきメッセージのByte数であるメッ
セージ長153、ハーフチャネルを開くことを指示する
ハーフチャネルオープンBit154、アドレス変換情
報155、センダ5がメッセージ送信を完了したか否か
を示す送信完了Bit156、メッセージの受信ノード
でメッセージ受信が完了したか否かを示す受信完了Bi
t157、メッセージの受信ノードでメッセージ受信の
際に何らかのエラーが発生したか否かを示す受信状態情
報158により構成される。
【0039】前述のアドレス変換情報155は、例え
ば、受信先のプロセスIDである。一般に、並列計算機
は、各ノードで複数のプロセスが実行されており、主記
憶上領域のプロセス間プロテクションにはアドレス変換
が用いられる。また、レシーバは、どのプロセスが受信
したメッセージを受け取るかを判定し、メッセージデー
タを主記憶へライトする。
【0040】このため、本発明の実施形態においては、
ノード内でのメッセージの宛先に関する情報を総称して
アドレス変換情報とする。また、前述したように、本発
明の実施形態におけるレシーバ6は、メッセージを受信
するとメッセージ送信元ノードへackパケットをプロ
セッサの処理を介さずに返送する機能を有しており、こ
のackパケットが受信完了Bit157及び受信状態
情報158を送信元ノードへ伝える。送信元ノードのプ
ロセッサユニット1は、送信完了Bitによりメッセー
ジ送信完了を検出する。また、受信完了Bit157と
受信状態情報158とからメッセージ送信が正常に完了
したか否かを検出し、エラーがある場合はメッセージを
再送するなどの処理を行うことができる。
【0041】メッセージ受信情報84は、受信が完了し
たか否かを示す受信完了Bit160、メッセージ受信
が正常に完了したか否かを示す受信状態情報161、受
信したメッセージを受信バッファ88のどこに書き込む
かを示す受信データアドレス162により構成される。
メッセージ受信ノードのプロセッサユニット1は、受信
完了Bit160によりメッセージ受信の完了を検出す
る。
【0042】アドレス変換用PTEであるPTEj92
は、PTEタイプ(アドレス変換用PTEの場合0)1
91、仮想アドレス192、仮想アドレス192に対応
する実アドレス193により構成される。また、受信情
報用PTEであるPTEl94は、PTEタイプ(受信
情報用PTEの場合1)195、アドレス変換情報19
6、対応するメッセージ受信情報の実アドレス197に
より構成される。
【0043】MRTE101は、宛先ノード番号17
0、ハーフチャネル番号171、対応するハーフチャネ
ルが開いており通信可能な状態か否かを示すハーフチャ
ネル有効Bit172、対応するハーフチャネルでエラ
ーが発生したか否かを示すエラー発生Bit173、メ
ッセージの再構成が完了したか否かを示す再構成完了B
it174、次に受信すべきシーケンス番号である次シ
ーケンス番号175、あと何Byteのデータを受信す
れば受信が完了するのかを示す残りメッセージ長17
6、メッセージ受信に必要なアドレス変換の情報である
アドレス変換情報177、該アドレス変換情報177を
用いてアドレス変換を行って取得したメッセージ受信情
報アドレス(実アドレス)178、メッセージデータの
受信バッファ88内ライトアドレス(実アドレス)17
9、ackパケットが伝える受信状態情報がどのメッセ
ージ送信情報のものかを示すメッセージ送信情報アドレ
ス180、メッセージ受信の際に何らかのエラーが発生
したか否かを示す受信状態情報181を持って構成され
ている。
【0044】なお、前述したメッセージ受信受信82に
含まれるソースノード番号とMRTE101に含まれる
宛先ノード番号とにおいて、ソースと宛先という言葉
は、メッセージ送受信に関するソースと宛先という意味
である。ackパケットの送受信の場合、送信元ノード
と受信先ノードとがメッセージ送受信の場合と逆になる
ため注意を要する。
【0045】ルーティング情報121は、図2に示した
SW00〜SW03の出力ポートを示すSW0i出力ポ
ート185、SW10〜SW13の出力ポートを示すS
W1j出力ポート186、SW20〜SW23の出力ポ
ートを示すSW2k出力ポート187、及び、シーケン
ス番号188を持って構成される。このように、本発明
の実施形態は、パケットの順番を示すシーケンス番号を
ハーフチャネル毎に管理している。
【0046】次に、図5を参照して、MRTE0〜15
のサーチ方法を説明する。本発明の実施形態において、
各MRTEは8Byteであり、また、ノード数は4で
あり、ハーフチャネル番号は0〜3であるとする。
【0047】レシーバ6は、後述するがMRTベースレ
ジスタ412を持ち、OSは、システム立ち上げ時にM
RT100の先頭の実アドレスを、レシーバ6MRTベ
ースレジスタ412へ格納する。レシーバ6は、MRT
ベースレジスタ412の値とハーフチャネル番号を16
倍した値とソースノード番号を64倍した値とを加算し
目的のMRTEの実アドレスを算出する。
【0048】図には示していないが、ルーティング情報
のサーチも同様に行うことができる。すなわち、ルーテ
ィング情報も8Byteであるとすると、センダ5は、
ルーティングテーブル120の先頭の実アドレスを格納
するルーティング情報ベースレジスタを持ち、ルーティ
ング情報ベースレジスタの値と宛先ノード番号を64倍
したものとハーフチャネル番号を16倍したものとを加
算し、目的のルーティング情報の実アドレスを算出する
ことができる。
【0049】図6はセンダ5の構成を示すブロック図で
ある。図6において、200は送信シーケンス制御部、
210はメッセージ送信情報レジスタ、211は送信情
報アクセスレジスタ、212はルーティングテーブルベ
ースレジスタ、213はFirstBitレジスタ、2
14はシーケンス番号レジスタ、215は送出バッフ
ァ、216はページテーブルベースレジスタ、220は
送信情報セレクタ、221は比較器、222は減算器、
223は加算器、224はインクリメンタ、225は送
出データセレクタ225、226は固定長データレジス
タ、227はシーケンス番号セレクタである。
【0050】センダ5は、プロセッサの指示によりメッ
セージをパケットに分割してネットワークに送出する。
本発明の実施形態におけるセンダ5は、メッセージをパ
ケットに分割する機能を有していることと、先頭のパケ
ット(以下先頭パケット)と2番目以降のパケット(以
下後続パケット)とでは異なるパケットヘッダを生成す
る機能を有していることが特徴である。そして、センダ
5は、メッセージをメッセージの先頭からある一定のデ
ータ長(以下、固定データ長という)毎に区切り、最後
のパケットのデータ長のみ固定データ長と同じ、また
は、短くなるように分割する。本発明の実施形態では固
定データ長を128Byteとするが、仮にメッセージ
長が576Byteであるならば、先頭から4個のパケ
ットのデータ長は128Byteずつであり、最終パケ
ットのデータ長が64Byteとなる。メッセージ長が
128Byte以下であればセンダ5は1パケットのみ
送出する。
【0051】図6示すようにセンダ5は、センダ5の動
作を司る送信シーケンス制御部200、主記憶2から読
み出したメッセージ送信情報を格納するメッセージ送信
情報レジスタ210、メッセージ送信情報のアドレスを
格納する送信情報アドレスレジスタ211、該ルーティ
ングテーブル120の先頭の実アドレスを格納するルー
ティング情報ベースレジスタ212、センダ5がこれか
ら送出するパケットが先頭パケットであれば1の値を後
続パケットであれば0の値を持つFirstBitレジ
スタ213、送出するパケットのシーケンス番号を保持
するシーケンス番号レジスタ214、送出バッファ21
5、図3により説明したページテーブル90の先頭の実
アドレスを格納するページテーブルレジスタ216、メ
ッセージ送信情報レジスタ210の入力をセレクトする
送信情報セレクタ220、比較器221、減算器22
2、加算器223、インクリメンタ224、送出バッフ
ァ215の入力をセレクトする送出データセレクタ22
5、固定データ長を格納する固定データ長レジスタ22
6、シーケンス番号レジスタ214への入力をセレクト
するシーケンス番号セレクタ227を備えて構成され
る。
【0052】センダ5は、さらに、送信シーケンス制御
部200がバス制御部4と授受する信号を伝える信号線
230、バス制御部4からのデータを伝える信号線23
1、メッセージ送信情報レジスタ270の出力をバス制
御部4や送出データセレクタ255等へ伝える信号線2
35、シーケンス番号レジスタ214の出力をバス制御
部4や送出データセレクタ255等へ伝える信号線26
6、送信シーケンス制御部200とレシーバ6との間で
授受されるackパケット送出の制御信号等を伝える信
号線240、レシーバ6からのackパケットデータを
送出データセレクタ255へ伝える信号線241、ペー
ジテーブルレジスタ216の出力をレシーバ6へ伝える
信号線274、送信シーケンス制御部200の出力を送
信情報セレクタ220へ伝える信号線260、加算器2
23及び減算器222の出力を送信情報セレクタ220
へそれぞれ伝える信号線261及び262、固定データ
長レジスタ226の出力を送出データセレクタ255等
へ伝える信号線267、比較器221の出力を送出デー
タセレクタ255等へ伝える信号線240、送信情報ア
ドレスレジスタ211の出力を送出データセレクタ25
5へ伝える信号線264、FirstBitレジスタ2
13の出力を送出データセレクタ255へ伝える信号線
265、インクリメンタ224の出力をシーケンス番号
セレクタ227へ伝える信号線275、送信情報セレク
タ220の出力をメッセージ送信情報レジスタ210へ
伝える信号線270、送信情報セレクタ220を送信シ
ーケンス制御部200が制御するための信号線251、
シーケンス番号セレクタ227の出力をシーケンス番号
レジスタ214へ伝える信号線273、シーケンス番号
セレクタ227を送信シーケンス制御部200が制御す
るための信号線272、送出データセレクタ255の出
力を送出バッファ215へ伝える信号線271、送出デ
ータセレクタ255を送信シーケンス制御部200が制
御するための信号線256、送信情報アドレスレジスタ
211を送信シーケンス制御部200が制御するための
信号線250、メッセージ送信情報レジスタ210を送
信シーケンス制御部200が制御するための信号線25
2、ルーティングテーブルベースレジスタ212を送信
シーケンス制御部200が制御するための信号線25
3、FirstBitレジスタ213を送信シーケンス
制御部200が制御するための信号線254、シーケン
ス番号レジスタ255を送信シーケンス制御部200が
制御するための信号線255、送出バッファ215を送
信シーケンス制御部200が制御するための信号線25
7、ページテーブルベースレジスタ216を送信シーケ
ンス制御部200が制御するための信号線258を有し
ている。
【0053】なお、図6において、送信シーケンス制御
部200が各レジスタを制御するための信号線250等
は、各レジスタの出力を送信シーケンス制御部200へ
伝えるため、双方向の矢印で示してある。また、信号線
20は、信号線230と231と235と275とを、
信号線40は信号線240と241と274とをまとめ
たものである。
【0054】図6に示すメッセージ送信情報レジスタ2
10は、図4に示すメッセージ送信情報84の内容を全
て格納するが、パケット送出毎に、メッセージ長のフィ
ールドから固定データ長を減算していく。すなわち、メ
ッセージ送信情報レジスタ210内のメッセージ長のフ
ィールドは、あと何Byteのデータを送出すべきかを
示す。このメッセージ長のフィールドに格納されている
値を残りメッセージ長と呼ぶ。先頭パケットを送出する
まで、主記憶装置2上のメッセージ送信情報84が持つ
メッセージ長153と前述の残りメッセージ長とは同一
である。また、メッセージ送信情報レジスタ210内の
送信データアドレスのフィールドは、パケットを送出す
るまで、主記憶装置2上のメッセージ送信情報84が持
つ送信データアドレス152と同一であるが、パケット
送出毎に送信データアドレスと固定データ長とを加算し
ていく。すなわち、このメッセージ送信情報レジスタ2
10内の送信データアドレスフィールドは、次に送出す
べきデータの仮想アドレスを示す。この送信データアド
レスフィールドに格納されている値を次データアドレス
と呼ぶ。また、送出バッファ215の管理方法はFIF
Oであり、書き込まれた順番でネットワーク7にデータ
を送出する。
【0055】次に、前述したように構成されるセンダに
おける各種のパケットの送出の処理について説明する。
【0056】図7はセンダのメッセージ送信動作の処理
の全体を説明するフローチャート、図8は送信パケット
のフォーマットを説明する図、図9は図7におけるFi
rst・Lastパケットの生成送出の処理を説明する
フローチャート、図10は図7におけるFirst・N
OT Lastパケットの生成送出の処理を説明するフ
ローチャート、図11は図7におけるNOT Firs
t・NOT Lastパケットの生成送出の処理を説明
するフローチャート、図12は図7におけるNOT F
irst・Lastパケットの生成送出の処理を説明す
るフローチャート、図13は図7におけるackパケッ
ト送出の処理を説明するフローチャートである。
【0057】まず、図7に示すフローを参照してセンダ
5のメッセージ送信動作の全体を説明する。なお、以下
の処理における制御は、送信シーケンス制御部200に
より行われる。
【0058】(1)まず、センダ5がレシーバ6からa
ckパケットの送出要求を受けているか否かを判定す
る。センダ5が送出するパケットには大きく分けてメッ
セージパケットとackパケットとがあるが、レシーバ
6は後述するようにackパケットをセンダ5が送出す
るまで次のメッセージを受信しない。そのため、センダ
5においてackパケット送出をメッセージパケット送
出よりも優先させ、システム全体がデッドロックを引き
起こすことを防止する。この判定で、ackパケット送
出要求がある場合、図13により後述するackパケッ
ト送出の処理を行う(ステップF100)。
【0059】(2)ステップF100の判定で、ack
パケット送出要求がレシーバ6からきていない場合、プ
ロセッサユニットからのメッセージ送出要求があるか否
かを判定し、メッセージ送出要求がない場合、ステップ
F100の処理に戻る(F101)。
【0060】(3)ステップF101の判定で、プロセ
ッサユニットからのメッセージ送出要求があった場合、
センダ5は、ページテーブルレジスタ216を参照し、
DMAアクセスによりページテーブル90(図3)の先
頭からPCB80の実アドレスを読み出す。本発明の実
施形態において、センダ5がDMAアクセスにより主記
憶装置2からデータをリード、あるいは、主記憶装置2
へデータをライトする場合、センダ5は、バス制御部4
に対してDMAアクセス要求、データのアドレス、デー
タサイズを信号線20を介して伝える。データをリード
する場合、バス制御部4は、センダ5へデータを信号線
20を介して伝える。レシーバ6がDMAアクセスを行
う場合も同様である。すでに説明したように、PCB8
0の先頭には送信情報アドレス81があるため、センダ
5は、PCBの先頭アドレスを用いて送信情報アドレス
81を読み出し、送信情報アドレス81を送信情報アド
レスレジスタ211へ格納する(ステップF102)。
【0061】(4)センダ5は、送信情報アドレス81
によりDMAアクセスを行ってメッセージ送信情報82
を読み出し、読み出したメッセージ送信情報を、送信情
報セレクタ220を介してメッセージ送信情報レジスタ
210へ格納する(ステップF103)。
【0062】(5)センダ5は、FirstBitレジ
スタ213を1にセットする。本発明の実施形態は、メ
ッセージ先頭の先頭パケットと2個目以降の後続パケッ
トとではパケットヘッダのフォーマットが異なるため、
センダ5は、FirstBitレジスタ213を用いて
先頭パケットを送出したか否かを区別する。先頭パケッ
トと後続パケットとでパケットヘッダのフォーマットが
異なるのは、次の理由による。
【0063】すなわち、パケットヘッダが持つ情報は、
ルーティング情報等のように各パケットヘッダに必要な
情報と、メッセージ長等のようにメッセージ全体あるい
はハーフチャネルに関する情報であり分割されたパケッ
トの内1つのパケットヘッダのみが持てばよい情報(以
下メッセージ情報)との2種類がある。パケットヘッダ
は、ネットワークを流れる総データ量に対して実際のデ
ータであるパケットデータの割合を減少させ、ネットワ
ークのスループットを減少させるという状況を引き起こ
すため短い方がよい。
【0064】このため本発明の実施形態は、メッセージ
情報を先頭パケットのパケットヘッダにのみ格納し、後
続パケットのパケットヘッダを短くする。その結果、先
頭パケットと後続パケットとでパケットヘッダのフォー
マットが異なる(パケットフォーマットの詳細について
は後述する)。そして、FirstBitレジスタ21
3の値が1の場合、センダ5がまだメッセージの先頭の
パケットを送出していないことを示すものとしている
(ステップF104)。
【0065】(6)センダ5が送出するメッセージパケ
ットには、先頭かつ最終であるパケット、先頭であるが
最終でないパケット、先頭でなくかつ最終でないパケッ
ト、先頭でなくかつ最終であるパケットの4種類があ
り、これらのパケットの種類を判定する。メッセージ長
が固定データ長よりも短い場合は先頭かつ最終であるパ
ケットのみを送出する。メッセージ長が固定データ長よ
りも長い場合は、先頭であるが最終でないパケット、先
頭でなくかつ最終でないパケット、先頭でなくかつ最終
であるパケットの順に送出する。このため、センダ5
は、先頭パケットかそうでないかを前述のFirstB
itレジスタ213の値により判定する。また最終パケ
ットについては、該メッセージ送信情報レジスタ210
(図6)に保持している残りメッセージ長と、メッセー
ジ分割の単位である固定データ長(個々で説明している
では128Byte)とを比較器221を用いて比較
し、残りメッセージ長が固定データ長以下であれば最終
パケットと判定する(ステップF105)。
【0066】(7)ステップF105での送出パケット
の判定で、送出パケットが、先頭かつ最終である場合、
先頭であるが最終でない場合、それぞれ、図9、図10
により後述するFirst・Lastパケットの生成送
出の処理、First・NOTLastパケットの生成
送出の処理を行う。また、送出パケットが、先頭でなく
かつ最終でない場合、先頭でなくかつ最終である場合、
それぞれ、図11、図12により後述するNOT Fi
rst・NOT Lastパケットの生成送出の処理、
NOT First・Lastパケットの生成送出処理
を行う。
【0067】(8)図9、図12により後述する処理の
終了後、DMAアクセスによりメッセージ送信情報82
の送信完了Bit156に1を書き込む。プロセッシン
グノードは、このメッセージ送信情報82をポーリング
することにより、メッセージ送信処理が完了したことを
検出することができる。この処理の後、送信シーケンス
制御部は、ステップF100の処理に戻って、ここから
の処理を繰り返す(ステップF106)。
【0068】(9)図10、図11により後述する処理
の終了後、これらの処理で送信したメッセージ送信情報
レジスタ210内の次データアドレスに送出したデータ
長である128を加算し、また、メッセージ送信情報レ
ジスタ210内の残りメッセージ長から128を減算す
る。送信シーケンス制御部200は、これらの処理の
後、ステップF105からの処理に戻り、残りのメッセ
ージを送出する(ステップF108、F109)。
【0069】図10〜図13による各種のパケットの生
成送出の処理の説明の前に、図8を参照して各種のパケ
ットのフォーマット構成について説明する。
【0070】図8に示すパケットは、図の下方向に進行
するように示されており、先頭パケットは、ルーティン
グ情報301、パケットが先頭パケットであるか否かを
示すFirstBit302、最終パケットであるか否
かを示すLastBit303、ソースノード番号30
4、ハーフチャネル番号305、パケットデータ長30
6、シーケンス番号307、ハーフチャネルオープンB
it308、アドレス変換実施形態309、送信情報ア
ドレス310、メッセージ長311、及び、パケットデ
ータ312により構成されている。また、後続パケット
は、先頭パケットの先頭のルーティング情報からシーケ
ンス番号までと同様のルーティング情報321、Fir
stBit322、LastBit323、ソースノー
ド番号324、ハーフチャネル番号325、パケットデ
ータ長326、シーケンス番号327を有すると共に、
パケットデータ328を有して構成されている。さら
に、ackパケットは、ルーティング情報341、宛先
ノード番号342、ハーフチャネル番号343、送信情
報アドレス344、送信状態情報345、及び、シーケ
ンス番号346により構成されている。
【0071】次に、図9に示すフローを参照して、Fi
rst・Lastパケットの生成の処理を説明する。
【0072】(1)ルーティング情報を主記憶装置2か
ら読み出し、このルーティング情報を送出バッファ21
5とシーケンス番号レジスタ214とに書き込む。セン
ダ5は、読み出したルーティング情報のうち図4に示す
SW0i出力ポート185〜SW2k出力ポート187
を送出バッファ215へ書き込み、また、読み出したル
ーティング情報のうちシーケンス番号をシーケンス番号
レジスタ214へ書き込む(ステップF110)。
【0073】(2)FirstBitレジスタ213の
値を送出バッファ215に書き込む。パケットヘッダの
FirstBitは、その値が“1”の場合先頭パケッ
トであり、“0”の場合後続パケットであることを示
す。この場合、FirstBitレジスタ213の値は
“1”であるため、図8に示す先頭パケットのFirs
tBit302には“1”が書き込まれる(ステップF
111)。
【0074】(3)最終パケットであるか否かを区別す
るLastBitを書き込む。実際には、図6における
比較器221の出力を送出バッファ215に書き込む。
この場合、比較器221は“1”を出力しているため、
図8に示す先頭パケットのLastBit303には
“1”が書き込まれる(ステップF112)。
【0075】(4)ソースノード番号を書き込む。ソー
スノード番号は、図4に示したようにメッセージ送信情
報82が持つ。このメッセージ送信情報は、図6のメッ
セージ送信情報レジスタ210に格納されており、送信
シーケンス制御部200は、信号線235を介して送出
バッファ215へソースノード番号を書き込む。これに
より、図8に示す先頭パケットのソースノード番号30
4に必要な情報が書き込まれる(ステップF113)。
【0076】(5)ハーフチャネル番号を書き込む。ハ
ーフチャネル番号も、前述と同様に、メッセージ送信情
報レジスタ210から送出バッファ215へ書き込ま
れ、先頭パケットのハーフチャネル番号305に必要な
情報が書き込まれる(ステップF114)。
【0077】(6)ハーフチャネルオープンBitを書
き込む。このBitも、メッセージ送信情報レジスタ2
10から送出バッファ215へ書き込まれ、先頭パケッ
トのハーフチャネルオープンBit308として格納さ
れる。このBitは、ハーフチャネルを論理的に開き、
かつ、ハーフチャネルでエラーが発生していた場合にエ
ラーをクリアするためのBitである(ステップF11
5)。
【0078】(7)残りメッセージ長をパケットデータ
長として書き込む処理を行う。First・Lastパ
ケットの場合、メッセージ長が固定データ長である12
8Byteより短いため、図4に示したメッセージ長1
53の値がパケットデータ長となり、先頭パケットのパ
ケットデータ長306に書き込まれる(ステップF11
6)。
【0079】(8)アドレス変換情報を書き込む処理を
行う。アドレス変換情報も、前述のメッセージ送信情報
レジスタ210に格納されており、送出バッファ215
に書き込まれ、先頭パケットのアドレス変換情報309
として格納される。レシーバ6は、このアドレス変換情
報からメッセージ受信情報の実アドレスを得ることがで
きる(ステップF117)。
【0080】(9)送信情報アドレスレジスタ211の
値を信号線264を介して送出バッファ215に書き込
むことにより、先頭パケットの送信情報アドレス310
として格納する。この値は、図8に示すackパケット
が持つ受信状態情報345をどの送信情報へ書き込むか
を指定する(ステップF118)。
【0081】(10)送信シーケンス制御部200は、パ
ケットにシーケンス番号307を書き込むと共に、シー
ケンス番号レジスタ214が格納するシーケンス番号を
インクリメントする。シーケンス番号は、パケット送出
毎にインクリメントされる。シーケンス番号レジスタ2
14の値は、インクリメンタ224によりインクリメン
トされ、シーケンス番号セレクタ227を介して、再び
シーケンス番号レジスタ214へ格納される(ステップ
F119、F120)。
【0082】(11)残りメッセージ長をメッセージ長3
11として書き込む処理を行う。前述のようにFirs
t・Lastパケットの場合、図4に示すメッセージ長
153は、パケットデータ長306と等しく、この値が
メッセージ長311に書き込まれる(ステップF12
1)。
【0083】(12)以上の処理によりFirst・La
stパケットのパケットヘッダの書き込みが完了する。
そして、次に、送信するデータをユーザ空間70上の送
信バッファ87から読み出して、送信データを送出バッ
ファ215へ書き込む。メッセージ送信情報レジスタ2
10は、送信データアドレス(仮想アドレス)を持つ。
センダ5は、ページテーブルベースレジスタ261を参
照してアドレス変換用PTEを先頭から順番に読み出
し、アドレス変換用PTEと送信データアドレスとの仮
想アドレスを比較し、適合するアドレス変換用PTEか
ら送出すべきデータの実アドレスを得る。このデータの
実アドレスを用いてDMAアクセスを行い、送出すべき
データを送信バッファ87から読み出す。読み出した残
りデータ長分のメッセージデータを送出バッファ215
に書き込むことによりFirst・Lastパケットの
生成が完了する。完成したFirst・Lastパケッ
トは、送出バッファ215からネットワーク7に送出さ
れる(ステップF122)。
【0084】(13)その後、FirstBitレジスタ
213に“0”をセットする。但し、First・La
stパケットの場合、後続パケットを送出しないので、
このステップの処理を省略してもよい(ステップF12
3)。
【0085】(14)前述によりインクリメントされたシ
ーケンス番号を主記憶装置2のルーティング情報へ書き
戻す処理を行う。これにより、次に今回と同一のルーテ
ィング情報を読み出された場合、シーケンス番号がイン
クリメントされている。以上により、First・La
stパケット送出の処理が終了し、前述した図7に示す
ステップF106の処理に進む(ステップF124)。
【0086】次に、図10に示すフローを参照して、F
irst・NOT Lastパケット生成の処理動作を
説明する。First・NOT Lastパケット生成
フローの大部分は、前述したFirst・Lastパケ
ットと同一であるため、以下では、異なる部分を中心に
説明する。
【0087】(1)ステップF130、F131の処理
は、前述のステップF110、F111における処理と
同様である。ステップF131の処理後、パケットヘッ
ダのLastBitフィールド303に“0”を書き込
む処理を行う。First・Lastパケットは、残り
メッセージ長(=メッセージ長)が、固定データ長(=
128Byte)よりも大きいため、図6における比較
器221の出力は0である。そのため、パケットヘッダ
のLastBitフィールド303には“0”が書き込
まれる(ステップF130〜F132)。
【0088】(2)ステップF133〜F135の処理
は、前述のステップF113〜F115における処理と
同様である。ステップF135の処理後、パケットが持
つデータ長が固定データ長の128Byteであるた
め、パケットヘッダのパケットデータ長フィールド30
6に、固定データ長レジスタ226の出力128が信号
線267を介して書き込まれる(ステップF133〜F
136)。
【0089】(3)ステップF137〜F141の処理
は、前述のステップF117〜F121における処理と
同様である。但し、ステップF141で書き込まれるメ
ッセージ長は、ステップF121の処理における場合と
異なり、128よりも大きい値である。ステップF14
1の処理後、128Byteのデータを読み出す。前述
したステップF122の処理では全メッセージデータを
読み出したが、ここでは、128Byteのみを読み出
すところが異なる(ステップF137〜F142)。
【0090】(4)ステップF143〜F144の処理
は、前述のステップF123〜F124における処理と
同様である。本発明の実施形態は、ルーティング情報を
パケット送出毎に、主記憶装置2から読み出し、シーケ
ンス番号をインクリメントして、主記憶装置2へ書き込
んでいる。しかし、固定データ長よりも長いメッセージ
を頻繁に送出するような場合、ルーティング情報をキャ
ッシュすることにより、後続パケットの送出時間を短縮
することができる。また、頻繁に使用するハーフチャネ
ルにある程度の偏りがある場合、ルーティング情報を複
数個キャッシュすることにより、更なる性能向上を期待
できる。以上により、First・NOTLastパケ
ット送出の処理が終了し、前述した図7に示すステップ
F108の処理に進む(ステップF124)。
【0091】次に、図11、図12に示すフローを参照
して、NOT First・NOTLastパケット生
成とNOT First・Lastパケット生成の処理
動作を説明する。図8に示したように、後続パケットの
パケットヘッダは、先頭パケットのパケットヘッダか
ら、ハーフチャネルオープンBit、アドレス変換情
報、送信情報アドレス、及びメッセージ長を除いたもの
である。
【0092】このため、図11に示すNOT Firs
t・NOT Lastパケット生成の処理は、図10で
説明したFirst・NOT Lastパケット生成の
処理からステップF135〜F138の処理を除いたも
のであり、ステップF151の処理で書き込む値が
“0”である点が図10のステップF131の場合の処
理と相違する。
【0093】また、図12に示すNOT First・
Lastパケット生成の処理は、図9により説明したF
irst・Lastパケット生成の処理からステップF
115〜F118の処理を除いたものであり、ステップ
F171の処理で書き込む値が“0”である点が図9の
ステップF111の場合の処理と相違する。
【0094】図11、図12の処理が終了すると、図1
1に示すNOT First・NOT Lastパケッ
トの処理の場合、図7により説明したステップF108
へ、図12に示すNOT First・Lastパケッ
トの処理の場合、図7により説明したステップF106
へそれぞれ進む。
【0095】次に、図13に示すフローを参照して、図
7のステップF100におけるackパケットを送出す
る処理を説明する。なお、ackパケットの送出は、セ
ンダ5がレシーバ6からackパケットの送出要求を受
けたときに行われる。また、またackパケットは、図
8で説明したように、ルーティング情報341、宛先ノ
ード番号342、ハーフチャネル番号343、メッセー
ジ送信情報アドレス344、受信状態情報345、シー
ケンス番号346を持って構成されている。これらのa
ckパケットの内容のうちルーティング情報341とシ
ーケンス番号346とがセンダ5が管理する情報であ
り、その他の情報がレシーバ6が管理する情報である。
【0096】(1)センダ5は、ackパケットの送出
を決めると、まず、ackパケットのルーティング情報
を主記憶装置2から取得し、この情報を図6に示す送出
バッファ215及びシーケンス番号レジスタ214へ書
き込む。このとき、後述するように、レシーバ6は、a
ck送出要求と共に、ルーティング情報をサーチするた
めに必要なソースノード番号とハーフチャネル番号とも
信号線240を介してセンダ5へ伝えている。このソー
スノード番号は、メッセージパケットが持っていたソー
スノード番号であり、ackパケットを送信するノード
から見れば宛先ノードに当たる。また、本発明の実施形
態において、メッセージのハーフチャネル番号とそのメ
ッセージに対するackパケットのハーフチャネル番号
とが同一であるとすると、センダ5がレシーバ6から受
信するハーフチャネル番号は、メッセージパケットが持
っていたハーフチャネル番号と同一である(ステップF
190)。
【0097】(2)次に、センダ5は、ackパケット
の送出処理を開始したことを示すack送出バッファ書
きみ込開始信号をレシーバ6へ信号線240を介して送
出する。後述するように、レシーバ6は、このack送
出バッファ書きみ込開始信号を受けると、宛先ノード番
号342、ハーフチャネル番号343、メッセージ送信
情報アドレス344、受信状態情報345をMRTEレ
ジスタ411から順にセンダ5へ伝えてくるので、セン
ダ5は、受け取ったこれらの情報を送出バッファ215
に書き込む。これにより、ackパケット送出処理を終
了する(ステップF191〜F195)。
【0098】なお、前述のステップF192〜F195
の処理は、図18により後述するステップF256〜F
259に対応する。
【0099】(3)レシーバ6がack送出バッファ書
き込み完了信号を、図18のステップ260の処理によ
りセンダ5に伝えてくるので、センダ5は、このack
送出バッファ書き込み完了信号を受け、シーケンス番号
レジスタ214の値を送出バッファ215へ書き込む
(ステップF196、F197)。
【0100】(4)その後、シーケンス番号をインクリ
メントし、インクリメントしたシーケンス番号を主記憶
装置2上の該当するルーティング情報へライトする。以
上の処理で、センダ5は、ackパケット送出処理を終
了し、ステップF100の処理に戻る(ステップF19
8、F199)。
【0101】図14はレシーバ6の構成を示すブロック
図である。図14において、400は受信シーケンス制
御部、410はパケット格納バッファ、411はMRT
Eレジスタ、412はMRTEベースレジスタ、413
はメッセージ受信情報レジスタ、420はMRTEセレ
クタ、421は加算器、422は減算器、423は比較
器、424はインクリメンタ、425は受信情報セレク
タである。
【0102】レシーバ6は、受信シーケンス制御部40
0、ネットワーク7からのパケットを格納するパケット
格納バッファ410、MRTEを保持するMRTEレジ
スタ411、図5により説明したMRT100の先頭の
実アドレスを格納するMRTEベースレジスタ412、
メッセージ受信情報を格納するメッセージ受信情報レジ
スタ413、MRTEレジスタ411への入力をセレク
トするMRTEセレクタ420、加算器421、減算器
422、比較器423、インクリメンタ424、メッセ
ージ受信情報レジスタ413の入力をセレクトする受信
情報セレクタ425を備えて構成されている。
【0103】また、レシーバ6は、受信シーケンス制御
部400がバス制御部4との間で授受する信号線43
3、パケット格納バッファ410の出力をバス制御部4
等に伝える信号線430、受信シーケンス制御部400
がパケット格納バッファ410を制御するための信号線
440、MRTEレジスタ411の出力をバス制御部4
やセンダ5等に伝える信号線241、受信シーケンス制
御部400がMRTEレジスタ411を制御するための
信号線442、メッセージ受信情報レジスタ413の出
力をバス制御部4に伝える信号線436、加算器421
と減算器422及びインクリメンタ424の出力をMR
TEセレクタ420へそれぞれ伝える信号線454と4
55及び457、比較器423の出力をMRTEセレク
タ420と受信シーケンス制御部400とへ伝える信号
線456、受信シーケンス制御部400からのデータを
MRTEセレクタ420へ伝える信号線458、バス制
御部4からのデータをMRTEセレクタ420へ伝える
信号線432、受信シーケンス制御部400がMRTE
セレクタ420を制御するための信号線441、MRT
Eセレクタ420の出力をMRTEレジスタ411へ伝
える信号線446、バス制御部4からのデータを受信情
報セレクタ425へ伝える信号線435、受信シーケン
ス制御部400からのデータを受信情報セレクタ425
へ伝える信号線453、受信シーケンス制御部400が
受信情報セレクタ425を制御するための信号線44
3、受信情報セレクタ425の出力をメッセージ受信情
報レジスタ413へ伝える信号線447、受信シーケン
ス制御部400がメッセージ受信情報レジスタ413を
制御するための信号線444、バス制御部4からのデー
タをMRTEベースレジスタ412へ伝える信号線43
4、受信シーケンス制御部400がMRTEベースレジ
スタ412を制御するための信号線445を備えてい
る。
【0104】なお、図14において、受信シーケンス制
御部400が各レジスタを制御するための信号線440
等は、各レジスタの出力を送信シーケンス制御部200
へ伝えるため、双方向の矢印で示している。また、信号
線30は信号線430、241、432、435、43
6、433をまとめたものである。さらに、MRTEレ
ジスタ411は、図4により説明したMRTE101の
内容を全て保持するが、受信シーケンス制御部400
は、パケットを受け取るに従ってMRTEレジスタ41
1の各フィールドを更新していく。
【0105】図15はレシーバのメッセージ受信動作の
処理の全体を説明するフローチャート、図16は図15
における先頭パケットの受信処理を説明するフローチャ
ート、図17は図15における後続パケットの受信処理
を説明するフローチャート、図18は最終パケット判定
の処理を説明するフローチャートである。
【0106】まず、図15に示すフローを参照して、メ
ッセージ受信動作の処理の全体を説明する。
【0107】(1)パケットをネットワーク7から受信
したか否かを判定する。パケットを受信した否かは、パ
ケット格納バッファ410が判定し、信号線440を介
して受信シーケンス制御部へ伝える。パケットが受信さ
れていなければ、パケットの受信を監視する(ステップ
F200)。
【0108】(2)ステップF200でパケットの受信
が判定されると、受信したパケットがackパケットで
あるか否か、すなわち、ackパケットかメッセージパ
ケットかを判定する(ステップF280)。
【0109】(3)ステップF280で、受信したパケ
ットがackパケットでなくメッセージパケットである
と判定された場合、パケットヘッダが持つソースノード
番号とハーフチャネル番号とから図5により説明した方
法でMRTEの実アドレスを計算する。そして、計算し
た実アドレスを使用してDMAアクセスによりMRTE
を主記憶装置2から読み出す(ステップF201、F2
02)。
【0110】(4)受け取ったパケットのハーフチャネ
ルオープンBitが“1”であるか否かを判定する(ス
テップF203)。
【0111】(5)ステップF203の判定で、ハーフ
チャネルオープンBitが“1”であった場合、ハーフ
チャネルが開いているか否かを示すハーフチャネル有効
Bitを“1”にする。本発明の実施形態は、このハー
フチャネル有効Bitが“1”場合にハーフチャネルが
開いているものとする(ステップF204)。
【0112】(6)次に、エラー発生Bitを“0”に
する。エラー発生Bitは、ハーフチャネルでエラーが
発生した場合に“1”、エラーがない場合に“0”の値
を取るものとする(ステップF205)。
【0113】(7)受信シーケンス制御部400は、次
シーケンス番号フィールドにパケットのシーケンス番号
に1を加えたものを書き込み、先頭パケットを受信する
ために再構成完了Bitを“1”にする。再構成完了B
it172は、再構成途中であれば“0”であり、再構
成が完了していてメッセージとメッセージとの間であれ
ば“1”であるものとする(ステップF206、F20
7)。
【0114】前述のステップF204〜205、F20
7の処理は、図14における信号線442を介して行わ
れる。また、ステップF206の処理は、パケットのシ
ーケンス番号を信号線451を介して一旦MRTEレジ
スタ411へ格納した後に、インクリメンタ424を用
いて更新したシーケンス番号を再びMRTEレジスタへ
格納する処理である。ステップF204〜F207の処
理により、RTEを更新してメッセージ受信を可能とす
ることができる。
【0115】(8)ステップF203の判定で、ハーフ
チャネルオープンBitが“0”であった場合、ハーフ
チャネル有効Bitが“1”でありかつエラー発生Bi
tが“0”であるか、それ以外かを判定する。すなわ
ち、ハーフチャネルが開いていてかつエラーが発生して
いない状態がメッセージを受信することができる状態で
あるので、これにより、ハーフチャネルがメッセージを
受信できる状態であるか否かを判定する。メッセージが
受信できない状態と判定した場合、図18により後述す
る最終パケット判定の処理に移行する(ステップF20
8)。
【0116】(9)ステップF208の判定で、メッセ
ージが受信可能であった場合、シーケンス番号のチェッ
クを行う。すなわち、MRTEレジスタ411から次シ
ーケンス番号を読み出し、受け取ったパケットのシーケ
ンス番号と一致するか否かを比較器423を用いて判定
する(ステップF209)。
【0117】(10)ステップF209で、シーケンス番
号が一致しない場合、シーケンス番号が不連続であり、
パケットが消失したかあるいは誤ってルーティングして
きたかのエラーが発生したことを示しており、この場
合、MRTEレジスタ411のエラー発生Bitフィー
ルドに“1”を書き込み、後述する最終パケット判定の
処理へ移行する(ステップF212)。
【0118】(11)ステップF209で、シーケンス番
号が一致する場合、シーケンス番号が正しいことを示し
ており、MRTEレジスタ411の次シーケンス番号フ
ィールドに、インクリメンタ424を用いて1を加算す
る。1を加算した次シーケンス番号フィールドの値が、
次に受信すべきパケットのシーケンス番号である(ステ
ップF210)。
【0119】(12)受信シーケンス制御部400は、受
け取ったパケットが先頭パケットであるか否か、再構成
完了Bitが“1”であるか否かを判定することによ
り、メッセージの再構成を正しく先頭パケットから行っ
ているかを判定する。受け取ったパケットが先頭パケッ
トでありかつ再構成完了Bitが“1”であれば、図1
6により後述する先頭パケット受信の処理に進む。受け
取ったパケットが先頭パケットでなく後続パケットであ
りかつ再構成完了Bitが“0”であれば、図17によ
り後述する後続パケット受信の処理へ進む。また、受信
したパケットが先頭パケットでありかつ再構成完了Bi
tが“0”の場合、及び、受信したパケットが後続パケ
ットでありかつ再構成完了Bitが“1”である場合、
エラーであるので、シーケンス番号のエラーの場合と同
様に、ステップF212の処理に移行する(ステップF
211)。
【0120】(13)ステップF280で、受信したパケ
ットがackパケットであると判定された場合、前述し
たステップF209でのチェックと同様な方法で、シー
ケンス番号のチェックを行う。チェックの結果、シーケ
ンス番号エラーが発生していた場合、エラー発生Bit
を“1”にした後に、ステップF200からの処理に戻
る(ステップF281、F284)。
【0121】(14)ステップ281のチェックで、シー
ケンス番号が正しい場合、MRTEレジスタ411の次
シーケンス番号フィールドに1を加算し、ackパケッ
トの送信情報アドレス344フィールドを参照し、該当
するメッセージ送信情報へ受信完了Bit(=1)とa
ckパケットが持つ受信状態情報とを書き込む。ack
パケットが送信情報アドレスを持っているために、セン
ダ5は、ackパケットの到着を待たずに次の送信処理
を開始することができるできる。この場合、図3に示す
ように、メッセージ送信情報82が処理中であり、既に
送信処理が終了したメッセージ送信情報83に対してa
ckパケットが到着する(ステップF282、F28
3)。
【0122】次に、図16に示すフローを参照して、先
頭パケット受信の処理について説明する。
【0123】(1)先頭パケット受信の処理を開始する
と、まず、MRTEレジスタ411の再構成完了Bit
フィールドを“0”にし、再構成を開始したことを明示
し、先頭パケットのパケットヘッダから、メッセージ
長、アドレス変換情報、メッセージ送信情報アドレスを
MRTEレジスタ411へコピーする。これらの情報
は、先頭パケットにのみあり、レシーバ6は、MRTE
レジスタ411にコピーした情報に基づいて後続パケッ
トの受信を行う(ステップF220〜F223)。
【0124】(2)次に、アドレス変換情報に基づい
て、処理中のメッセージに対応するメッセージ受信情報
のアドレスを取得する。すなわち、受信シーケンス制御
部400は、信号線240を介してセンダ5から受けた
ページテーブルベースレジスタ216の値を参照し、図
3に示すページテーブル90からPTEを順番に読み出
し、アドレス変換情報と一致するメッセージ受信情報用
PTEから、メッセージ受信情報の実アドレスを取得し
て、MRTEレジスタ411へ書き込む。メッセージ受
信情報の実アドレスをMRTEに保持することにより、
後にメッセージ受信情報へ受信完了Bit等のライトを
行う際に、再度アドレス変換を行う手間を省くことがで
きるため、メッセージ受信処理に要する時間を短縮する
ことができる(ステップF224)。
【0125】(3)ステップF224で取得したメッセ
ージ受信情報の実アドレスを用いて、DMAアクセスに
よりメッセージ受信情報をPCB80から読み出し、図
14における信号線435を介して、読み出した情報を
メッセージ受信情報レジスタ413へ書き込む(ステッ
プF225)。
【0126】(4)ステップF225で取得したメッセ
ージ受信情報から取り出した受信データアドレス(仮想
アドレス)に基づいて、ページテーブル90のアドレス
変換用PTEを参照し、データを書き込むべき受信バッ
ファ88内の実アドレスを取得する。アドレス変換用P
TEの読み出し方法は、メッセージ送信処理の場合と同
様であるため省略する。そして、取得した実アドレスを
メッセージ受信情報の実アドレスと同じくMRTEへ書
き込む。このように、データを書き込むべき受信バッフ
ァ88内の実アドレスをMRTEへ保持することによ
り、パケット受信する度にアドレス変換を行わなくて済
み、メッセージ受信処理にかかる時間を短縮することが
できる(ステップF226)。
【0127】(5)次に、パケットのデータを図3に示
す受信バッファ88へ書き込む。さらに、残りメッセー
ジ長からパケットデータ長を減算し、メッセージライト
アドレスにパケットデータ長を加算する。すなわち、あ
と何Byteのデータを受信すべきか、次に受信したデ
ータをどこに書き込むかの情報を、パケット受信毎にM
RTEレジスタ411に書き込んでいき、これらが終了
した後、図18により後述する最終パケット判定の処理
に移行する(ステップF227〜F229)。
【0128】次に、図17に示すフローを参照して、後
続パケット受信の処理について説明する。
【0129】後続パケット受信処理の場合、MRTEの
準備が前述の先頭パケット受信処理で済んでいるため、
図16により説明したステップF227〜F229の処
理に対応するステップF240〜F242の処理のみを
行えばよく、ここでは、これ以上の説明を省略する。
【0130】次に、図18に示すフローを参照して、最
終パケット判定の処理について説明する。
【0131】(1)まず、受信したパケットのLast
Bitから、受信したパケットが最終パケットか否かを
判定する。最終パケットでない場合、MRTEレジスタ
411の値を主記憶装置2に書き込み、次のパケットの
受信の処理を行う(ステップF250、F262)。
【0132】(2)ステップF250で、受信したパケ
ットが最終パケットであると判定した場合、先頭パケッ
トが持っていた図8に示すメッセージ長311分のメッ
セージデータを受信したか否かを判定する。実際にはM
RTEレジスタ411の残りメッセージ長フィールドの
値が“0”であれば全てのデータを受信したと判定し、
もし“0”でない場合にはエラーである(ステップF2
51)。
【0133】(3)次に、メッセージ受信状態情報をM
RTEレジスタへ書き込む。ここでメッセージ受信状態
情報とは、メッセージを正常に受信したか、エラーが発
生した場合はどんなエラーか等を示す情報である。この
情報は、ackパケットにより送信元ノードへ伝えられ
る。さらに、再構成完了Bitを“1”にセットし、メ
ッセージの再構成が完了し、次に受信するメッセージパ
ケットが先頭パケットであることを示す(ステップF2
52、ステップF253)。
【0134】(4)レシーバ6は、ackパケットの送
出要求を信号線240を介してセンダ5へ伝え、これに
対する応答としてレシーバ6からのack送出バッファ
書きみ込開始信号の到来を監視する(ステップF25
4、F254)。
【0135】(5)ステップF254で、ack送出バ
ッファ書きみ込開始信号を受けると、レシーバ6は、宛
先ノード番号342、ハーフチャネル番号343、メッ
セージ送信情報アドレス344、メッセージ受信状態情
報345をMRTEレジスタ411から順にセンダ5へ
伝える。また、レシーバ6は、ack送出バッファ書き
込み完了信号をセンダ5に伝える。すでにセンダの処理
動作として前述したように、センダ5は、受け取った情
報を送出バッファ215に書き込む(ステップF256
〜F260)。
【0136】前述のステップF256〜F260の処理
は、図13により説明したセンダののackパケット送
出のフローにおけるステップF192〜F196の処理
に対応する。
【0137】(6)レシーバ6は、前述によりackパ
ケットを生成した後、受信完了Bitと受信状態情報と
をユーザ空間70のメッセージ受信情報に書き込み、受
信シーケンス制御部400が、MRTEレジスタ411
からメッセージ受信情報の実アドレスを読み出して、D
MAアクセスにより受信完了Bitと受信状態情報とを
書き込み、MRTEレジスタ411の値を主記憶2に書
き込む(ステップF261、F262)。
【0138】前述した本発明の実施形態におけるレシー
バ6は、MRTEをパケット受信毎に主記憶装置2から
読み出し、かつ、主記憶装置2へ書き込んでいるが、本
発明は、MRTEをレシーバ6に複数個キャッシュする
ことによりさらに性能の向上を図ることができる。
【0139】また、前述した本発明の実施形態発明の実
施の形態は、MRTEを主記憶装置上に保持するとして
説明したが、本発明は、システムのノード数によって
は、MRTEをNIA3が持つレジスタに格納し、メッ
セージ再構成の処理時間をさらに短くすることもでき
る。この場合の構成は、前述した本発明の実施形態にお
けるレシーバが持つMRTEレジスタが複数個となるこ
とと、MRTEに関するDMAアクセスがなくなること
以外、メッセージ送受信の処理はほとんど同一である。
【0140】
【発明の効果】以上説明したように本発明によれば、M
RTEをハーフチャネル毎に備えることにより、パケッ
ト分割されたメッセージをハードウェアにより高速に再
構成することができる。また、本発明によれば、前述の
MRTEがメッセージ受信に必要な様々な情報を持って
おり、これにより、メッセージ受信処理全体を高速化す
ることができる。
【図面の簡単な説明】
【図1】本発明の一実施形態による並列計算機システム
の全体構成を示すブロック図である。
【図2】ネットワークに構成されるハーフチャネルを説
明する図である。
【図3】主記憶装置に格納される情報の内容を説明する
図である。
【図4】メッセージ送信情報、メッセージ受信情報、P
TE、MRTE、ルーティング情報の詳細を説明する図
である。
【図5】MRTEサーチ方法を説明する図である。
【図6】センダ5の構成を示すブロック図である。
【図7】センダのメッセージ送信動作の処理の全体を説
明するフローチャートである。
【図8】送信パケットのフォーマットを説明する図であ
る。
【図9】図7におけるFirst・Lastパケットの
生成送出の処理を説明するフローチャートである。
【図10】図7におけるFirst・NOT Last
パケットの生成送出の処理を説明するフローチャートで
ある。
【図11】図7におけるNOT First・NOT
Lastパケットの生成送出の処理を説明するフローチ
ャートである。
【図12】図7におけるNOT First・Last
パケットの生成送出の処理を説明するフローチャートで
ある。
【図13】図7におけるackパケット送出の処理を説
明するフローチャートである。
【図14】レシーバ6の構成を示すブロック図である。
【図15】レシーバのメッセージ受信動作の処理の全体
を説明するフローチャートである。
【図16】図15における先頭パケットの受信処理を説
明するフローチャートである。
【図17】図15における後続パケットの受信処理を説
明するフローチャートである。
【図18】最終パケット判定の処理を説明するフローチ
ャートである。
【符号の説明】
1 プロセッサユニット 2 主記憶装置 3 ネットワークインタフェースアダプタ(NIA) 4 バス制御部 5 センダ 6 レシーバ 7 ネットワーク 10 システムバス 11〜18、20、30 信号線 900〜903 プロセッシングノード0〜3 50〜60 スイッチ(SW) 200 送信シーケンス制御部 210 メッセージ送信情報レジスタ 211 送信情報アクセスレジスタ 212 ルーティングテーブルベースレジスタ 213 FirstBitレジスタ 214 シーケンス番号レジスタ 215 送出バッファ 216 ページテーブルベースレジスタ 220 送信情報セレクタ 221 比較器 222 減算器 223 加算器 224 インクリメンタ 225 送出データセレクタ225 226 固定長データレジスタ 227 シーケンス番号セレクタ 400 受信シーケンス制御部 410 パケット格納バッファ 411 MRTEレジスタ 412 MRTEベースレジスタ 413 メッセージ受信情報レジスタ 420 MRTEセレクタ 421 加算器 422 減算器 423 比較器 424 インクリメンタ 425 受信情報セレクタ

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 複数のプロセッシングノードと、これら
    のプロセッシングノードを相互に接続するネットワーク
    とを備えて構成され、プロセッシングノード相互間でメ
    ッセージの送受信を行う並列計算機システムにおいて、
    前記プロセッシングノードのそれぞれは、メッセージを
    複数のパケットに分割してネットワークに送出する機能
    と、分割されたパケットを元のメッセージに再構成する
    機能と、前記ネットワークによりプロセッシングノード
    相互間に形成されるメッセージ通信経路であるハーフチ
    ャネル毎にメッセージ再構成のための情報とを備えるこ
    とを特長とする並列計算機システム。
  2. 【請求項2】 前記メッセージ再構成のための情報は、
    メッセージ再構成が完了したか否かを示す情報、前記ハ
    ーフチャネルにおける通信状態を示すハーフチャネル通
    信状態情報、メッセージ受信のために行うアドレス変換
    情報及び該アドレス変換の結果の情報、次に受信すべき
    パケットのシーケンス番号及びメッセージ長の情報のう
    ち少なくとも1つの情報を含むことを特長とする並列計
    算機システム。
  3. 【請求項3】 前記プロセッシングノードのそれぞれ
    は、受信側となったとき、送信元のプロセッシングノー
    ドへメッセージ受信を報告するためのackパケットを
    送信する機能を有し、前記メッセージ再構成のための情
    報がackパケットを生成するための情報を含むことを
    特長とする請求項1または2記載の並列計算機システ
    ム。
  4. 【請求項4】 前記ハーフチャネル通信状態情報は、ハ
    ーフチャネルが開いているか否かを示す情報とハーフチ
    ャネルにおいてエラーが発生したか否かを示す情報とを
    含むことを特徴とする請求項2または3記載の並列計算
    機システム。
  5. 【請求項5】 前記メッセージ再構成のための情報に含
    まれる情報のうち少なくとも1つが一部のパケットに格
    納されていることを特徴とする請求項2、3または4記
    載の並列計算機システム。
  6. 【請求項6】 前記メッセージ再構成のための情報に含
    まれる情報のうち少なくとも1つが格納されたパケット
    は、メッセージを分割したパケットのうちの先頭のパケ
    ットであることを特長とする請求項5記載の並列計算機
    システム。
JP10367614A 1998-12-24 1998-12-24 並列計算機システム Pending JP2000194675A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10367614A JP2000194675A (ja) 1998-12-24 1998-12-24 並列計算機システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10367614A JP2000194675A (ja) 1998-12-24 1998-12-24 並列計算機システム

Publications (1)

Publication Number Publication Date
JP2000194675A true JP2000194675A (ja) 2000-07-14

Family

ID=18489759

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10367614A Pending JP2000194675A (ja) 1998-12-24 1998-12-24 並列計算機システム

Country Status (1)

Country Link
JP (1) JP2000194675A (ja)

Similar Documents

Publication Publication Date Title
US7616562B1 (en) Systems and methods for handling packet fragmentation
US7773599B1 (en) Packet fragment handling
US5361334A (en) Data processing and communication
US4550397A (en) Alternate paths in a self-routing packet switching network
JP3384686B2 (ja) 通信ネットワークから情報を受信するための方法および装置
US6272134B1 (en) Multicast frame support in hardware routing assist
US7782857B2 (en) Logical separation and accessing of descriptor memories
US6795886B1 (en) Interconnect switch method and apparatus
US7680116B1 (en) Optimized buffer loading for packet header processing
US7693169B2 (en) Transmission apparatus and frame transmission method
JP2571343B2 (ja) トークン・スター・ブリッジ
JPH0981487A (ja) ネットワークデータ転送方法
US20110238938A1 (en) Efficient mirroring of data across storage controllers
JP2002508124A (ja) 多層スイッチング・ネットワーク要素中でパケット・フィールドを置換するための機構
US6185207B1 (en) Communication system having a local area network adapter for selectively deleting information and method therefor
US7239630B1 (en) Dedicated processing resources for packet header generation
US7158520B1 (en) Mailbox registers for synchronizing header processing execution
US7792146B2 (en) Technique for controlling selection of a peek adapter or a read adapter from multiple adapters of a high speed switch
US7180893B1 (en) Parallel layer 2 and layer 3 processing components in a network router
JP2005527898A (ja) チャネル・アダプタ障害に対する冗長性を提供する方法
US10609188B2 (en) Information processing apparatus, information processing system and method of controlling information processing system
JP2000194675A (ja) 並列計算機システム
JP2778520B2 (ja) マルチキャスト方法及び交換スイッチ
WO2024040959A1 (zh) 一种报文转发处理方法、装置、存储介质及电子装置
CN116248583A (zh) 车载控制器的通信冗余配置方法、装置、车辆及存储介质