JP4494289B2 - 通信システムおよびネットワークインタフェースボード - Google Patents

通信システムおよびネットワークインタフェースボード Download PDF

Info

Publication number
JP4494289B2
JP4494289B2 JP2005157789A JP2005157789A JP4494289B2 JP 4494289 B2 JP4494289 B2 JP 4494289B2 JP 2005157789 A JP2005157789 A JP 2005157789A JP 2005157789 A JP2005157789 A JP 2005157789A JP 4494289 B2 JP4494289 B2 JP 4494289B2
Authority
JP
Japan
Prior art keywords
data
token
packet
transmission
node
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 - Fee Related
Application number
JP2005157789A
Other languages
English (en)
Other versions
JP2006333376A (ja
Inventor
顕 岡田
邦昭 小西
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2005157789A priority Critical patent/JP4494289B2/ja
Publication of JP2006333376A publication Critical patent/JP2006333376A/ja
Application granted granted Critical
Publication of JP4494289B2 publication Critical patent/JP4494289B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Small-Scale Networks (AREA)

Description

本発明は、通信システムおよびネットワークインタフェースボードに関し、より詳細には、ネットワークに接続された複数の計算機機能を有する通信ノード間で通信を行う通信システム、および通信ノードに装着されるネットワークインタフェースボードに関する。
リング型のトポロジを有するネットワークにおいて、通信ノード間のデータ通信を行う方法として、トークンリング方式が知られている(例えば、非特許文献1参照)。トークンリング方式においては、通信ノードにデータの送信権を与えるトークンと呼ばれるパケットが、リング状のデータ伝送路を片方向に周回し、トークンを受信した通信ノードのみがデータを送信することができる。
図12に、従来のトークンリング方式の通信システムにおけるデータ交換手順を示す。4つの通信ノード1100、1200、1300、1400が、リング状のデータ伝送路1000を介して接続されている。図12(a)示したように、通信ノードにデータ送信権を与えるトークン1500は、データ伝送路1000上を反時計周りに巡回している。
通信ノードB1200が、トークン1500を受信した際に、通信ノードB1200から通信ノードD1400に送信すべきデータがあった場合、通信ノードB1200は、トークン1500を破棄して、データ1600を送出する(図12(b))。データ1600は、宛先情報などの情報を有するヘッダを含み、以後、データBDという。このとき、宛先情報の送信先ネットワークアドレスは、通信ノードD1400であり、送信元ネットワークアドレスは、通信ノードB1200である。データBD1600は、通信ノードC1300によって受信される。通信ノードC1300は、ヘッダから取得した送信先ネットワークアドレスから自局宛のデータではないと判断し、データBD1600をそのまま伝送路に送出する(図12(c))。その後、データBD1600は、通信ノードD1400によって受信される。
通信ノードD1400は、ヘッダから取得した送信先ネットワークアドレスから自局宛のデータであると認識すると、データBD1600を自局内に取り込む。通信ノードD1400は、データBD(1600)のヘッダの送信元ネットワークアドレスと送信先ネットワークアドレスとを入れ替え、データBD1600を取得したことをヘッダに明示したデータ1700を送出する(図12(d))。データ1700を、以後、ACK付データBDという。ACK付データBD1700は、通信ノードA1100によって受信される。通信ノードA1100は、ヘッダから取得した送信先ネットワークアドレスから自局宛のデータではないと判断し、ACK付データBD1700をそのまま伝送路に送出する(図12(e))。その後、ACK付データBD1700は、通信ノードB1200によって受信される。
通信ノードB1200は、ヘッダから取得した送信先ネットワークアドレスから自局宛のデータであると認識すると、ACK付データBD1700を自局内に取り込む。通信ノードB1200は、ヘッダを読取り、このACK付データBDが自局から送出したデータBDに対する応答であり、送信先ネットワークアドレスの通信ノードD1400にデータBD1600が無事に受信されたことを確認する。通信ノードB1200は、ACK付データBD1700を破棄し、トークン1500を送出する(図12(f))。
図12においては、リング状のデータ伝送路1000を1個のトークンしか巡回しない場合について説明したが、複数のトークンを巡回させて、ネットワークの帯域利用効率を高めたアペンドトークンパッシング方式も知られている。どちらの場合においても、通信ノードはトークンを受信したときにのみ、自局の通信ノードのデータを送出することができる。
ISO/IEC 8802-5
従来のトークンリング方式またはアペンドトークンパッシング方式を利用した通信システムは、トークンを受信した通信ノードのみがデータを送信し、かつデータがリング状のデータ伝送路を片方向に流れるため、基本的にデータの衝突が生じないという特徴を有する。一方で、通信ノードは、トークンを受信しない限りデータを送信することができない。従って、ネットワークが広域になった場合には、トークンを受信する間隔が長くなり、緊急性を有するデータを送出したい場合であっても、トークンを受信するまで待たなければならないという問題があった。
本発明の目的は、トークンを受信してデータを送出するトークン利用データ送信方式と、トークンを受信しなくても必要に応じてデータを送出することができるトークン非利用データ送信方式の両方を共存させることにより、通信ノード間での柔軟なデータ通信を実現する通信システムおよびネットワークインタフェースボードを提供することにある。
また、本発明の目的は、データ伝送路長に応じて、複数の送信権を付与するトークンを用いることにより、データ伝送路の帯域利用効率を高めることにある。
本発明は、このような目的を達成するために、請求項1に記載の発明は、N(Nは1以上の整数)台の計算機ノードが論理的なリングネットワークを形成し、各々の前記計算機ノード間でトークンリング方式によりデータの交換を行う通信システムであって、前記計算機ノードは、自局の計算機ノードからトークン利用データパケットを送出、またはデータを送出する権利を付与するデータ送信権付与トークンパケットを送出してから、データ送信権付与トークンパケットを受信して自局の計算機ノードから送出したトークンリング方式によるトークン利用データパケット、または前記データ送信権付与トークンパケットを受信した数(FP)と、他局の計算機ノードが送出したトークン利用データパケットを受信した数(DP)との合計(CN)がN以上のとき、前記自局の計算機ノードのデータをトークン利用データパケットとして前記リングネットワークに送出することを特徴とする。
請求項2に記載の発明は、請求項1に記載の通信システムにおいて、前記N台の計算機ノードのうち、任意の1台の計算機ノードをマスタノードとし、他の計算機ノードをスレーブノードとしたとき、前記マスタノードは、パケットを受信するたびに初期値0にリセットして時間を計測し、計測された時間値が、予め定められた値になったときに、前記データ送信権付与トークンパケットを送出することを特徴とする。
請求項に記載の発明は、請求項1または2に記載の前記計算機ノードは、前記データ送信権付与トークンパケットまたは前記自局の計算機ノードから送出した前記トークン利用データパケットを受信することなく、前記自局の計算機ノードのデータをトークンリング方式によらないトークン非利用データパケットとして前記リングネットワークに送出することを特徴とする。
請求項に記載の発明は、N(Nは1以上の整数)台の計算機ノード(100〜103)が論理的なリングネットワークを形成し、各々の前記計算機ノード間でトークンリング方式によりデータの交換を行う通信システムにおける、前記計算機ノードのネットワークインタフェースボード(130)において、自局の計算機ノードのデータを、トークンリング方式によるトークン利用データパケットとして格納するトークン利用データバッファと、トークンリング方式によらないトークン非利用データパケットとして格納するトークン非利用データバッファとを含む送信データ格納部(530)と、受信したパケット信号の信号種別を解析する受信パケット信号解析部(510)と、前記送信データ格納部に格納されているデータパケットと、前記受信パケット信号解析部から入力されたデータ信号のいずれかを出力する送信制御部(540)と、前記受信パケット信号解析部で解析された信号種別ごとに、データ信号のパケットの数を計測することであって自局の計算機ノードからトークン利用データパケットを送出、または前記データ送信権付与トークンパケットを送出してから、データ送信権付与トークンパケットを受信して自局の計算機ノードから送出したトークン利用データパケット、または前記データ送信権付与トークンパケットを受信した数と、他局の計算機ノードが送出したトークン利用データパケットを受信した数との合計がN以上のとき、前記送信データ格納部と前記送信制御部とを制御して、前記トークン利用データバッファに格納されているトークン利用データパケットを、前記送信制御部から前記リングネットワークに送出する送受信制御管理部(560)とを備えたことを特徴とする。
請求項に記載の発明は、請求項に記載のネットワークインタフェースボードにおいて、前記N台の計算機ノードのうち、任意の1台の計算機ノードをマスタノードとし、他の計算機ノードをスレーブノードとしたとき、前記マスタノードの前記送信制御部(540)は、予めデータ送信権付与トークンパケットを格納(545)し、前記送受信制御管理部(560)は、前記受信パケット信号解析部がパケット信号を受信するたびに初期値0にリセットして、時間を計測する受信タイマ機能部(563)を含み、該受信タイマ機能部の時間値が予め定められた値になったときに、前記送信制御部を制御して、予め格納された前記データ送信権付与トークンパケットを送出することを特徴とする。
以上説明したように、本発明によれば、予め定められた時間に応じて、新たなデータ送信権付与トークンパケットを送出する機能を具備していることから、計算機ノードが構成する論理的リングの長さに応じて複数のデータを、論理的リングのデータ転送路上に送ることが可能となる。
通信システムを構成する計算機ノードが形成する論理的リングの伝送路距離に応じて、複数のデータを論理的リングのデータ伝送路上に送ることができ、通信システムの通信路の帯域利用効率を高めることができる。
また、トークンを利用したデータ伝送(トークン利用データ通信)と、トークンを利用しないデータ転送(トークン非利用データ通信)を共存させることによって、柔軟なデータ通信を実現することができる。
以下、図面を参照しながら本発明の実施形態について詳細に説明する。本実施形態では、通信ノードとしてネットワークインタフェースボードを搭載した計算機ノードを例に説明する。ここでは、計算機ノード数Nを4として説明しているが、これに限定されるものではない。
図1に、本発明の実施例1にかかる通信システムの構成を示す。計算機ノード100〜103は、それぞれネットワークインタフェースボード130a〜dを有し、光導波路120a〜dを介して4×4アレイ導波路回折格子110に接続されている。4×4アレイ導波路回折格子110は、石英系光導波路のアレイ導波路回折格子を用い、入力ポートおよび出力ポートをそれぞれ4個有している。光導波路120a〜dは、石英系のシングルモード光ファイバである。
(4×4アレイ導波路回折格子)
4×4アレイ導波路回折格子は、入力ポートに入力する光の波長によって出力するポートが異なる波長ルーティング特性を有している。表1は、実施例1で用いる4×4アレイ導波路回折格子110の入出力ポートと波長との関係を示している。
Figure 0004494289
入力ポート1にλ1、λ2、λ3、λ4の波長の光が入力すると、各波長の光は、それぞれ出力ポート1、出力ポート2、出力ポート3、出力ポート4に出力される。入力ポート2にλ1、λ2、λ3、λ4の波長の光が入力すると、各波長の光は、それぞれ出力ポート2、出力ポート3、出力ポート4、出力ポート1に出力される。入力ポート3にλ1、λ2、λ3、λ4の波長の光が入力すると、各波長の光は、それぞれ出力ポート3、出力ポート4、出力ポート1、出力ポート2に出力される。入力ポート4にλ1、λ2、λ3、λ4の波長の光が入力すると、各波長の光は、それぞれ出力ポート4、出力ポート1、出力ポート2、出力ポート3に出力される。
(計算機ノード)
図2に、実施例1にかかる計算機ノードの内部構成を示す。ただし、図2においては、本実施例に関わる部分のみを抽出して図示している。計算機ノード100〜103は、計算機ノード内の各部品の制御やデータの演算・加工処理を司る中央処理部(CPU:Central Processing Unit)を有する。CPU210は、電気バス信号線260を介して、第1の記憶媒体220と接続され、電気バス信号線270とデータ入出力制御部240と電気バス信号線280とを介して、第2の記憶媒体230と接続されている。また、CPU210は、電気バス信号線250および電気バス信号線251により、ネットワークインタフェースボード130と接続されている。CPU210は、メモリコントローラを内蔵した集積電子デバイスを用いる。
第1の記憶媒体220は、ネットワークインタフェースボード130から受信したデータを格納したり、ネットワークインタフェースボード130に送信するデータを格納する。実施例1では、DDR−SDRAM(Double-Data Rate Synchronous Dynamic Random Access Memory)を用いるが、これに限らない。第2の記憶媒体230は、通信データを格納する。実施例1では、磁気ディスクを用いるが、これに限らない。データ入出力制御部240は、CPU210と第2の記憶媒体230との間で行われるデータの読み書きを制御する。また、データ入出力制御部240は、光信号送信部制御信号線241を介して、ネットワークインタフェースボード130に搭載されている光信号送信部430を制御する。
ネットワークインタフェースボード130は、電気バス信号線250,251に接続するための電気信号線コネクタ部310,320と、光ファイバ490,491と接続された光信号送信部430と光信号受信部440とを有している。
(パケット信号)
実施例1にかかる通信システムにおいて、データ伝送路上を流れるパケット信号の種類について説明する。
データ送信権付与トークンパケット:
このパケットを受信した計算機ノードは、通信システムにおいて予め定められた条件を満足しているときに、データを送出する権利が与えられる。
トークン利用データパケット:
計算機ノードがデータ送信権付与トークンパケットを受信し、予め定められた条件を満足しているときに送出することができ、自局の計算機ノードから送信する通信データを格納したパケット。ただし、自局のトークン利用データパケットを受信した際にも、予め定められた条件を満足しているときには、自局の計算機ノードから送信する通信データを格納したトークン利用データパケットを送出することができる。
計算機ノードにとって、データ送信権付与トークンパケット、および自局から送出したトークン利用データパケットを受信することは、トークン利用データパケットの送出の必要条件である。ただし、データ送信権付与トークンパケット、または自局から送出したトークン利用データパケットを受信したとしても、上述したように、予め通信システムとして定めた条件を満足しなければ、自局の計算機ノードから送信する通信データを格納したトークン利用データパケットを送出することができない。
トークン非利用データパケット:
データ送信権付与トークンパケットを受信せずに、計算機ノードから送出されるデータパケット。トークン非利用データパケットには、以下の3種類がある。
(1)1対1通信パケット:
通信システムのネットワークに接続されている送信先ネットワークアドレスに該当する1台の計算機ノードが、パケットに格納されている通信データを、計算機ノード内の第1記憶媒体に書き込むパケット。
(2)マルチキャスト通信パケット:
通信システムのネットワークに接続されている複数の計算機ノードが、パケットに格納されている通信データを、計算機ノード内の第1記憶媒体に書き込むパケット。
ブロードキャスト通信パケット:
通信システムのネットワークに接続されているすべての計算機ノードが、パケットに格納されているデータを計算機ノード内の第1記憶媒体に書き込むパケット。
(3)制御トークンパケット:
データ送信権付与トークンパケットを受信せずに、計算機ノードから送出され、通信システムの管理および制御に関わる情報を格納したパケット。
(通信システム)
実施例1にかかる通信システムは、各計算機ノードが通信データを送出する場合に、以下の二通りの通信方式を利用して、計算機ノード間でのデータ交換を行うことができる。
(通信方式1:トークン利用データ通信)
トークン利用データ通信においては、各計算機ノードは、データ送信権付与トークンパケットまたは自局から送出したトークン利用データパケットを受信し、予め定められた条件を満足しているときにデータを送出する権利を有する。自局から計算機ノードの他局の計算機ノードに送る通信データを、トークン利用データパケットとして送出する。
トークン利用データ通信は、通信システムを構成する計算機ノードが論理的にリングを形成している場合にのみ利用される。ある計算機ノードが送出したトークン利用データパケットは、リング状のデータ伝送路を、各計算機ノードをホッピングしながら片方向に流れ、トークン利用データパケットを送信した計算機ノードに戻る。
ここで、ホッピングするとは、トークン利用データパケットが計算機ノードによって受信されると、トークン利用データパケットに格納されている通信データが、計算機ノードの第1の記憶媒体220にデータとして取得されると同時に、トークン利用データパケットは、計算機ノードの光信号送信部430から次の計算機ノードに向けて送出されることを意味する。このように、トークン利用データ通信によって、ある計算機ノードから送出されたトークン利用データパケットは、送信元を除く他のすべての計算機ノードに受信され、トークン利用データパケットに格納されている通信データが各計算機ノードの第1の記憶媒体220に保存される。
(通信方式2:トークン非利用データ通信)
トークン非利用データ通信においては、各計算機ノードは、データ送信権付与トークンパケットを受信することなく、自局から通信データを送出することができる。
(パケット信号のフレーム構造)
図3に、実施例1にかかる通信システムに用いられるパケット信号のフレーム構造を示す。パケット信号のフレームは、複数の領域に分かれており、各領域は“1”または“0”のビットの組み合わせで表現される。フレームは、ヘッダ308と、通信データまたは“パッド”が格納されるデータフィールド306と、パケットのエラー検出に用いる4バイトのエラー検出フィールド307とから構成されている。“パッド”とは、パケットの全体のフレームサイズをある値以上にするために挿入されるビットであり、意味のある情報をもたない。本実施例ではパッド内のビットはすべて“1”とする。
ヘッダ308は、送信先の計算機ノードのネットワークアドレスを表す6バイトの送信先ネットワークアドレスフィールド301と、送信元の計算機ノードのネットワークアドレスを表す6バイトの送信元ネットワークアドレスフィールド302と、パケットの種類を表す3ビットのパケット識別フィールド303と、各計算機ノードに付与されているノード番号を表す1バイトのノード番号フィールド304と、マルチキャストのグループを表す4ビットのマルチキャストグループフィールド305とを含む。ヘッダ308を解析することによってパケットに関する各種属性を知ることができる。
パケット識別フィールド303内のビットパターンは、次のように定義する。
001:データ送信権付与トークンパケット
010:トークン利用データパケット
011:トークン非利用データパケットの1対1通信パケット
100:トークン非利用データパケットのマルチキャスト通信パケット
101:トークン非利用データパケットのブロードキャスト通信パケット
110:制御トークンパケット。
なお、実施例1においては、データ送信権付与トークンパケットの送信先ネットワークアドレスフィールド301および送信元ネットワークアドレスフィールド302は、すべて“1”である。
(ネットワークインタフェースボード)
図4に、実施例1にかかるネットワークインタフェースボードの構成を示す。計算機ノード100〜103のCPU210に接続された電気バス信号線250,251は、電気バス信号線コネクタ部410,420と電気バス信号線480,481とを介して、データ送受信制御部470と電気的に接続されている。データ送受信制御部470は、電気バス信号線482,483を介してデータ変換処理部450と接続され、データ変換処理部450は、電気バス信号線484,485を介してシリアル−パラレル相互変換部460と接続される。
データ送受信制御部470は、CPU210からのデータ信号を解析し、制御してデータ変換処理部450に送出する。詳細は(データ送受信制御部)の項で後述する。また、データ変換処理部450から入力されるデータ信号を解析し、制御してCPU210に送出する。詳細は(データ送受信制御部)の項で後述する。
データ変換処理部450は、データ送受信制御部470から入力されたSPI−4.2(System Packet Interface Level 4,Phase 2)に準拠したデータ信号を、IEEE802.3規格に準拠した10ギガビットイーサネット(登録商標)のXAUI(10 Gigabit Attachment Unit Interface)信号に変換して、シリアル−パラレル相互変換部460に出力する。また、シリアル−パラレル相互変換部460から入力された10ギガビットイーサネット(登録商標)のXAUI信号をSPI−4.2に準拠したデータ信号に変換して、データ送受信制御部470に出力する。
シリアル−パラレル相互変換部460は、データ変換処理部450から入力されたパラレルのXAUI信号をシリアルの電気信号に変換して、電気信号線486を介して光信号送信部430に出力する。また、電気信号線487を介して光信号受信部440から入力されたシリアルの電気信号をパラレルのXAUI信号に変換して、データ変換処理部450に出力する。
また、ネットワークインタフェースボード130は、外部から電源供給を行うための電源供給用コネクタ488を備えている。データ変換処理部のデータ信号として、SPI−4.2に準拠したデータ信号、10ギガビットイーサネット(登録商標)のXAUI信号を用いているが、これに限るものではない。
実施例1では、光信号送信部430の光信号送出器431として、波長可変光源内蔵の光信号送出器を用いる。波長可変光源として、発光素子に注入する電流によって波長を制御する超周期構造回折格子ブラック反射型レーザ(SSG−DBRレーザ)を用いるが、これに限るものではない。
(データ送受信制御部)
図5に、実施例1にかかるネットワークインタフェースボードのデータ送受信部の構成を示す。CPU210からのデータ信号は、ホストデータ種別解析部520と送信データ格納部530と送信制御部540とを経由して、データ変換処理部450に送出される。一方、データ変換処理部450からのデータ信号は、受信パケット信号解析部510と受信パケット信号格納部550とを経由して、CPU210に送出される。また、データ送受信制御部470は、これら構成要素を制御する送受信制御管理部560を含む。
受信パケット信号解析部510は、データ変換処理部450からのデータ信号を、入力ポート511を介して入力する。データ信号から図3に示したパケット信号のフレームを識別し、ヘッダ308から、入力したパケット信号の情報(パケットの種類、送信元ネットワークアドレス、送信先ネットワークアドレス、ノード番号、マルチキャストグループ)を取得する。取得した情報は、解析結果出力ポート512を介して送受信制御管理部560に送られる。
受信パケット信号解析部510は、入力したパケット信号のヘッダ308を解析して、次の場合には、パケット信号を第1のパケット信号出力ポート513を介して送信制御部540の第1の入力ポート541に入力する。(1)他局の計算機ノードから自局の計算機ノード宛に送られたパケット信号ではない場合、(2)パケット信号がトークン利用データパケット、トークン非利用データパケット、またはデータ送信権付与トークンパケットの場合である。
入力したパケット信号のヘッダ308の送信先ネットワークアドレスフィールド302が、自局の計算機ノードのネットワークアドレスと一致した場合には、受信パケット信号解析部510に入力したパケット信号を、第2のパケット信号出力ポート514を介して受信パケット信号格納部550に入力する。受信パケット信号格納部550に入力されたパケット信号は、電気バス信号線481、電気バス信号線コネクタ部420、電気バス信号線251を介してCPU210に送られる。パケット信号は、CPU210の処理によってパケット信号に格納されている通信データが第1の記憶媒体220に格納される。
入力したパケット信号のヘッダ308の送信先ネットワークアドレスフィールド302が、すべてが“1”の場合、または入力したパケット信号のマルチキャストグループフィールド305が、自局の計算機ノードが所属するマルチキャストグループと同じである場合には、受信パケット信号解析部510に入力したパケット信号を、第1のパケット信号出力ポート513を介して送信制御部540の第1の入力ポート541に入力する。同時に、第2のパケット信号出力ポート514を介して受信パケット信号格納部550に入力する。受信パケット信号格納部550に入力されたパケット信号は、上述したように、CPU210で処理されて、第1の記憶媒体220に格納される。
また、入力したパケット信号が制御トークンパケットの場合には、制御トークンパケットの情報を、解析結果出力ポート512を介して送受信制御管理部560に送り、パケット信号を、第1のパケット信号出力ポート513を介して送信制御部540の第1の入力ポート541に入力する。入力したパケット信号が自局の計算機ノードが送信したパケット信号の場合には、第1のパケット信号出力ポート513を介して送信制御部540の第1の入力ポート541に入力する。
ホストデータ種別解析部520は、CPU210からのデータ信号の種別を解析し、解析結果情報を、出力ポート521から電気制御信号線524を介して送受信制御管理部560に送る。データ信号が、計算機ノード間の通信データの場合には、出力ポート522を介して送信データ格納部530にデータ信号を送出する。同時に、出力ポート522から送出したデータ信号が、トークン利用データパケットの通信データとトークン非利用データパケットの通信データのどちらであるかを示す情報を、電気制御線523を介して送信データ格納部530に通知する。
送信データ格納部530は、ホストデータ種別解析部520から送られたデータ信号を格納し、送信制御部540から電気制御信号線546を介して送られた制御信号に基づいて、格納しているデータ信号を、出力ポート531を介して送信制御部540に送る。
図6に、データ送受信部における送信データ格納部の構成を示す。送信データ格納部530は、ホストデータ種別解析部520から入力されるデータ信号のうち、トークン利用データパケットを格納するトークン利用データバッファ620と、トークン非利用データパケットを格納するトークン非利用データバッファ630とを備える。さらに、ホストデータ種別解析部520から入力されるデータ信号を、送信データ格納管理部610からの情報に基づいて、トークン利用データバッファ620またはトークン非利用データバッファ630のどちらかに振り分ける第1のセレクタ640と、送信データ格納管理部610からの情報に基づいて、トークン利用データバッファ620またはトークン非利用データバッファ630に格納されているデータ信号を、データ出力ポート531から出力する第2のセレクタ650とを含む。
ホストデータ種別解析部520から電気制御線523を介して通知された情報に基づいて、送信データ格納管理部610は、データ信号の種別(トークン利用データまたはトークン非利用データ)を識別する。送信データ格納管理部610は、電気制御線611を介して第1のセレクタ640を制御し、入力されたデータ信号を、トークン利用データバッファ620またはトークン非利用データバッファ630のどちらか一方に出力する。
また、送信データ格納管理部610は、送信制御部540から電気制御信号線546を介して、トークン利用データバッファ620のデータ格納状態の問合せを受け付ける。トークン利用データバッファ620にデータ信号が格納されている場合には、電気制御線612を介して第2のセレクタ650を制御し、トークン利用データバッファ620に格納されているデータ信号を出力ポート531を介して送信制御部540に出力する。一方、トークン利用データバッファ620にデータ信号が格納されていない場合には、送信データ格納管理部610は、トークン利用データがないことを、電気制御信号線546を介して送信制御部540に通知する。
送信データ格納管理部610は、トークン非利用データバッファ630にデータが入力されたとき、トークン非利用データの送出リクエストを、電気制御信号線546を介して送信制御部540に通知する。この通知は、送信制御部540から、送出リクエストに対する送出許可の応答があるまで定期的に送信される。送信制御部540から送出リクエストに対する送出許可の応答があった場合には、送信データ格納管理部610は、第2のセレクタ650を電気制御線612を介して制御し、トークン非利用バッファに格納されているデータ信号を出力ポート531を介して送信制御部540に出力する。
図5に示したデータ送受信制御部470の送信制御部540は、受信パケット解析部510の出力ポート513から出力され、入力ポート541から入力されたパケット信号を出力ポート543から出力し、データ変換処理部450に送出する。受信パケット信号解析部510の説明で述べたように、パケット信号が入力されるのは、(1)他局の計算機ノードから自局の計算機ノード宛に送られたパケット信号ではない場合、(2)トークン利用データパケット、トークン非利用データパケット、またはデータ送信権付与トークンパケットの場合である。また、データ信号格納部530の出力ポート531から入力ポート542を介して入力されたデータ信号(以下、「ホストデータ信号」という)を、出力ポート543から出力し、データ変換処理部450に送出する。
入力ポート541から入力するパケット信号と、入力ポート542から入力するホストデータ信号とが同時に入力された場合、送受信制御部540は、予め定められた規則に従って、どちらか一方の信号を先に出力ポート543から出力し、その後、もう一方の信号を出力ポート543から出力する。実施例1では、入力ポート541から入力するパケット信号を優先する。ただし、入力ポート541から入力したパケット信号が、自局の計算機ノードが送出したトークン利用データパケット、トークン非利用データパケットまたは制御トークンパケットの場合には、パケット信号破棄部544において、これらパケットを破棄する。
送信制御部540は、自局の計算機ノードがトークン利用データパケットを送出する条件を満足しているかどうかを、電気制御信号線562を介して送受信制御管理部560に問い合わせる。トークン利用データパケットの送出条件を満足している場合には、送信制御部540は、電気制御信号線546を介して送信データ格納部530のデータ格納状態を問い合わせる。送信データ格納部530のトークン利用データバッファ620にデータ信号が格納されていれば、送信制御部540は、送信データ格納部530からデータ信号を取り出し、出力ポート543からトークン利用データパケットとして送出する。
一方、自局の計算機ノードがトークン利用データパケットを送出する条件を満足していない場合、または送信データ格納部530のトークン利用データバッファ620にデータが格納されていない場合には、送信制御部540のデータ送信権付与トークンパケット生成部545から出力ポート543に、データ送信権付与トークンパケットを送出する。
図5に示したデータ送受信制御部470の送受信制御管理部560は、データ送受信部470内の各構成要素の制御ならびに管理を行う。また、送受信制御管理部560には、受信パケット信号解析部510から送られてくるパケット信号の種別情報に基づいて、パケット信号の種別ごとにパケット信号の数を計測するパケット信号種別計測部561と、データ送信権付与トークンパケット、トークン利用パケット、トークン非利用データパケットまたは制御トークンパケットが、受信パケット信号解析部510に入力されるたびに時間を計測する受信タイマ機能部563とを備えている。
受信タイマ機能部563で計測される時間Tは、データ送信権付与トークンパケット、トークン利用データパケット、トークン非利用データパケットまたは制御トークンパケットが受信されるごとにリセットされ、初期値T=0に設定されて再計測が開始される。
送受信制御管理部560は、ホストデータ種別解析部520から電気制御信号線524を介して送られてくる情報をもとに、データ送受信部470内の各機能部を制御する。
(論理的リングの形成)
図7に、実施例1にかかる通信システムを構成する計算機ノードが形成する論理的なリングネットワークを示す。図1で示したように、計算機ノード100〜103は、それぞれ4×4アレイ導波路回折格子110の入出力ポート1〜4に接続されている。実施例1で用いる計算機ノード100〜103のノード番号と、パケットのヘッダ308に含まれるノード番号フィールド304とを下記に示す。
ノード番号 ノード番号フィールド304
計算機ノード100 #1 “00000001”
計算機ノード101 #2 “00000010”
計算機ノード102 #3 “00000011”
計算機ノード103 #4 “00000100”
また、計算機ノードに設定された6バイトのネットワークアドレスを、16進法表記で下記に示す。
ネットワークアドレス
計算機ノード100 0A:0B:0C:0D:00
計算機ノード101 0A:0B:0C:0D:01
計算機ノード102 0A:0B:0C:0D:02
計算機ノード103 0A:0B:0C:0D:03。
実施例1において、通信システムの各計算機ノードがデータ通信を行う準備として、ネットワーク上の計算機ノードが送出する信号の流れが、リング状のデータ伝送路を流れるように、論理的な伝送パスを設定する。表1に示したように、4×4アレイ導波路回折格子110の入出力ポートと波長との関係から、各計算機ノードのネットワークインタフェースボード130に搭載されている光信号送出器431の波長を設定する。実施例1では、各計算機ノードのユーザが、光信号送出器431に内蔵された波長可変光源の波長を、データ入出力制御部240から光信号送信部制御信号線241を介して変更する。
実施例1では、計算機ノード100〜103から出力される光信号の波長をλ4とする。計算機ノード100から出力された波長λ4の光信号は、4×4アレイ導波路回折格子110の波長ルーティングによって、入力ポート1から出力ポート4を経て、計算機ノード103に受信される。同様にして、計算機ノード103が出力した光信号は計算機ノード102に受信され、計算機ノード102が出力した光信号は計算機ノード101に受信され、計算機ノード101が出力する光信号は計算機ノード100に受信される。これにより、図7に示したように、計算機ノード100〜計算機ノード103は、物理的にはスター状の構成を有するが、光信号の流れはリング状になり、論理的なリングネットワークを形成する。図7において、140は光信号の流れを示している。
(トークン利用データパケットを用いた通信)
実施例1では、通信システムを構成する計算機ノードのうち、1台の計算機ノード(実施例1では計算機ノード100とする)をマスタノードとし、マスタノード以外の計算機ノード(実施例1では計算機ノード101〜103)をスレーブノードとする。計算機ノード100〜103が論理的なリングネットワークを形成すると、各計算機ノードは、トークン非利用データパケットを用いた通信が可能な状態となる。同時に、通信システムにおいては、トークン利用データパケットを用いた通信の動作を開始する。
以下に、トークン利用データパケットを用いた通信の動作の規則について説明する。ここで、論理的なリングネットワークを構成する計算機ノードのノード数をNとする。実施例1では、N=4である。
規則1:
マスタノードの計算機ノードは、通信システムの起動後、通信起動時用データ(MDATA0)をトークン利用データパケットとして1個送出する。このパケットは、ネットワークインタフェースボード130の送信制御部540のデータ送信権付与トークンパケット生成部545に予め用意されており、トークン利用データパケットを用いた通信の通信起動時に用いる。このとき、トークン利用データパケットのヘッダ308の各フィールドを下記に示す。データフィールド306には、MDATA0が格納される。
送信先ネットワークアドレスフィールド302 0A:0B:0C:0D:00
送信元ネットワークアドレスフィールド303 0A:0B:0C:0D:00
パケット識別フィールド303 010
ノード番号フィールド304 00000001
マルチキャストグループフィールド305 11111111 。
規則2:
マスタノードの計算機ノードは、データ送信権付与トークンパケットまたはトークン利用データパケットを送出後、通信システムを運用する前に、システムの管理者によって定められた時間IFGの間に、データ送信権付与トークンパケット、トークン利用データパケット、トークン非利用データパケットまたは制御トークンパケットを受信しなかった場合には、データ送信権付与トークンパケットを送出する。
規則3:
スレーブノードの計算機ノードは、通信システムの起動後、初めてデータ送信権付与トークンパケットを受信したときに限り、通信起動時用データ(MDATA0)をトークン利用データパケットとして送出する。このとき、トークン利用データパケットのヘッダ308の各フィールドを下記に示す。データフィールド306には、MDATA0が格納される。
送信先ネットワークアドレスフィールド302 送信元計算機ノードのネットワークアドレス
送信元ネットワークアドレスフィールド303 送信元計算機ノードのネットワークアドレス
パケット識別フィールド303 010
ノード番号フィールド304 送信元計算機ノードのノード番号
マルチキャストグループフィールド305 11111111 。
規則4:
各計算機ノードは、次の場合に、データ送受信部470の送信データ格納部530内のトークン利用データバッファ620に格納されたデータ信号を送出することができる。
(1)自局の計算機ノードからトークン利用データパケットを送出、または送信制御部540のデータ送信権付与トークンパケット生成部545からデータ送信権付与トークンパケットを送出してから、
(2)受信パケット信号解析部510に入力したデータ送信権付与トークンパケットまたは自局の計算機ノードから送出されたトークン利用データパケットの数FP、他局の計算機ノードが送出したトークン利用データパケットの数DPをカウントし(トークン非利用データパケットはカウントされない)、その合計のカウント数CN(=FP+DP)がN以上のとき。
このとき、受信したパケットが自局の計算機ノードから送出されたトークン利用データパケットのとき、トークン利用データパケットは、パケット信号破棄部544において破棄される。また、送信データ格納部530のトークン利用データバッファ620にデータ信号が格納されていない場合には、計算機ノードは、送信制御部540のデータ送信権付与トークンパケット生成部545からデータ送信権付与トークンパケットを送出する。
図8に、実施例1にかかるマスタノードの動作フローを示し、図9に、実施例1にかかるスレーブノードの動作フローを示す。ここで、FTOKENはデータ送信権付与トークンパケット、DTOKENはトークン利用データパケット、NONTOKEN Dはトークン非利用データパケット、CTOKENは制御トークンパケット、MDATA0はトークン利用データパケットを用いた通信の通信起動時に用いる通信起動時用データ、SEND Cはデータ送受信部470の送信制御部540、CNは受信パケット信号解析部510に入力したデータ送信権付与トークンパケットまたは自局の計算機ノードから送出されたトークン利用データパケットの数FPと、他局の計算機ノードが送出したトークン利用データパケットの数DPの合計カウント数(CN=FP+DP)、Tは受信タイマ機能部563で計測される時間、IFGは通信システムの管理者があらかじめ定めた時間である。
(マスタノードのフロー)
実施例1の通信システムにおけるマスタノードは、通信システムの通信が起動すると(801)、トークン利用データ通信とトークン非利用データ通信とがそれぞれ起動する(802、803)。最初に、トークン利用データ通信について説明する。
トークン利用データ通信を起動すると(802)、マスタノードは、ネットワークインタフェースボード130のデータ送受信部470内の送信制御部540に用意されている通信起動時用データ(MDATA0)を送出する(804)。同時に、送受信制御管理部560のパケット信号種別計測部561のカウントと、受信タイマ機能部563のタイマとを起動する(805)。
受信パケット信号解析部510は、光信号受信部431がFTOKEN、DTOKEN、NONTOKEN DまたはCTOKENの光信号(パケット信号)を受信しないとき(806のN側)、受信タイマTの値がIFGになるまで計測を継続する(806のN側→807→808のN側→806→806のN側を繰り返す)。
Tの値がIFGに等しくなったとき(808のY側)、CN=Nでないならば(809のN側)、マスタノードは、データ送受信部470内の送信制御部540に設けられているデータ送信権付与トークンパケット(FTOKEN)生成部545からFTOKENを出力する。同時に、受信タイマTをリセット(初期値0に戻し再計測)し、カウント数CNに1を加え(810)、ステップ806の状態に移行する。
一方、Tの値がIFGに等しくなったとき(808のY側)、CN=Nならば(809のY側)、マスタノードは、送信データ格納部530のトークン利用データバッファ620に送出すべきデータ信号があるかを確認する(828)。送出するデータ信号がない場合(828のN側)には、データ送信権付与トークンパケット(FTOKEN)生成部545からFTOKENを出力する(830)。また、送出するデータがある場合(828のY側)には、DTOKENを送出する(829)。そして、CNの初期化(CN=1)、Tの初期化(T=0)を行って再計測を開始し(831)、ステップ806の状態に移行する。
受信パケット信号解析部510は、光信号受信部431がFTOKEN、DTOKEN、NONTOKEN DまたはCTOKENの光信号(パケット信号)を受信したとき(806のY側)、受信タイマTをリセット(T=0)して再計測を開始し(811)、ステップ806の状態に戻り、次の光信号の受信に備える。同時に、受信した光信号がFTOKENであり(812のY側)かつCN≧Nの場合(813のY側)には、ステップ828の状態へ移行する。受信した光信号がFTOKENであり(812のY側)かつCN<Nの場合(813のN側)には、CNに1を加え、受信したFTOKENを送出する(814)。
一方、受信した光信号がFTOKENではなく(812のN側)、DTOKENであり(815のY側)かつ自局の計算機ノードが送出したDTOKENの場合(816のY側)には、そのDTOKENを削除し(817)、CN≧Nの場合(818のY側)には、ステップ828へ移行する。CN≧Nでない場合(818のN側)には、CNに1を加え、データ送信権付与トークンパケット(FTOKEN)生成部545からFTOKENを出力する(836)。受信した光信号がDTOKENであり(815のY側)かつ自局の計算機ノードが送出したDTOKENでない場合(816のN側)には、CNに1を加え(819)、受信したDTOKENのデータを自局の計算機ノードに取り込むと同時に、このDTOKENを送出する(820)。
受信した光信号がDTOKENではなく(815のN側)、かつNONTOKEN DおよびCTOKENでない場合(821のN側)には、その光信号を破棄する(822)。受信した光信号がDTOKENではなく(815のN側)、かつNONTOKEN DまたはCTOKENであり(821のY側)、かつNONTOKEN DまたはCTOKENが他局の計算機ノード宛である場合(823のY側)には、受信したNONTOKEN DまたはCTOKENのデータをそのまま光信号送信部430から送出する(824)。一方、NONTOKEN DまたはCTOKENが他局の計算機ノード宛ではなく(823のN側)、自局の計算機ノード宛のみのNONTOKEN DまたはCTOKENの場合(825のY側)には、受信したNONTOKEN DまたはCTOKENのデータを自局の計算機ノードに取り込む(826)。自局の計算機ノード宛のみのNONTOKEN DまたはCTOKENでない場合(825のN側)には、NONTOKEN DまたはCTOKENのデータを自局の計算機ノードに取り込むと同時に、光信号送信部(430)から送出する(827)。
次に、マスタノードのトークン非利用データ通信について説明する。トークン非利用データ通信を起動すると(803)、マスタノードのネットワークインタフェースボード130の送受信制御管理部560は、データ送受信部470内の送信データ可能部530にあるトークン非利用データバッファ630に、トークン非利用データ(NONTOKEN D)、または制御トークンデータ(CTOKEN)が存在しているかを確認する(832)。トークン非利用データバッファ630にNONTOKEN DまたはCTOKENがあり(832のY側)、かつ送信制御部540においてDTOKENと送出の競合がない場合(833のN側)には、トークン非利用データバッファ630のNONTOKEN DまたはCTOKENを送出して(834)、ステップ832の状態に移行する。一方、トークン非利用データバッファ630にNONTOKEN DまたはCTOKENがあり(832のY側)、かつ送信制御部540においてDTOKENとの送出が競合する場合(833のY側)には、DTOKENを送出した後に、NONTOKEN DまたはCTOKENを送出し(835)、ステップ832の状態に移行する。
なお、上述したフローのステップ814では、CNに1を加え、受信したFTOKENを送出しているが、受信したFTOKENをパケット信号破棄部544において破棄し、送信制御部540に備わっているデータ送信権付与トークンパケット信号生成部545から新たなFTOKENを送出してもよい。
(スレーブノードのフロー)
図9に、実施例1にかかるスレーブノードの動作フローを示す。実施例1の通信システムにおけるスレーブノードは、通信システムの通信が起動すると(901)、トークン利用データ通信とトークン非利用データ通信とがそれぞれ起動する(902、903)。最初に、トークン利用データ通信について説明する。
トークン利用データ通信を起動すると(902)、スレーブノードは、初めてデータ送信権付与トークンパケット(FTOKEN)を受信するまで待機する(904のN側)。スレーブノードは、初めてFTOKENを受信すると(904のY側)、ネットワークインタフェースボード130のデータ送受信部470内の送信制御部540(SEND Cと記述している)に用意されている通信起動時用データ(MDATA0)を送出する(905)。同時に、ネットワークインタフェースボード130の送受信制御管理部560にあるパケット信号種別計測部561のカウンタを起動する(906)。ここで、カウンタ値CNの初期値は1である。
受信パケット信号解析部510は、光信号受信部431がFTOKEN、DTOKEN、NONTOKEN DまたはCTOKENの光信号(パケット信号)を受信すると(907のY側)、ステップ907の状態に戻り、次の光信号の受信に備える。同時に、受信した光信号がFTOKENであり(908のY側)かつCN≧Nの場合(909のY側)には、送信データ格納部530のトークン利用データバッファ620に送出すべきデータがあるかを確認する(924)。送出するデータがない場合(924のN側)には、データ送信権付与トークンパケット(FTOKEN)生成部545からFTOKENを出力する(925)。また、送出するデータがある場合(924のY側)には、DTOKENを送出する。そして、CNの初期化(CN=1)を行って再計測を開始し(927)、ステップ907の状態に移行する。受信した光信号がFTOKENであり(908のY側)かつCN<Nの場合(909のN側)には、CNに1を加え、受信したFTOKENを送出する(910)。
一方、受信した光信号がFTOKENではなく(908のN側)、DTOKENであり(911のY側)かつ自局の計算機ノードが送出したDTOKENの場合(912のY側)には、そのDTOKENを削除し(913)、CN≧Nの場合(914のY側)には、ステップ924へ移行する。CN≧Nでない場合(914のN側)には、CNに1を加え、データ送信権付与トークンパケット(FTOKEN)生成部545からFTOKENを出力する(932)。受信した光信号がDTOKENであり(911のY側)かつ自局の計算機ノードが送出したDTOKENでない場合(912のN側)には、CNに1を加え(915)、受信したDTOKENのデータを自局の計算機ノードに取り込むと同時に、このDTOKENを送出する(916)。
受信した光信号がDTOKENではなく(911のN側)、かつNONTOKEN DおよびCTOKENでない場合(917のN側)には、その光信号を破棄する(918)。受信した光信号がDTOKENではなく(911のN側)、かつNONTOKEN DまたはCTOKENであり(917のY側)、かつNONTOKEN DまたはCTOKENが他局の計算機ノード宛である場合(919のY側)には、受信したNONTOKEN DまたはCTOKENのデータをそのまま光信号送信部430から送出する(920)。一方、NONTOKEN DまたはCTOKENが他局の計算機ノード宛ではなく(919のN側)、自局の計算機ノード宛のみのNONTOKEN DまたはCTOKENの場合(921のY側)には、受信したNONTOKEN DまたはCTOKENのデータを自局の計算機ノードに取り込む(922)。自局の計算機ノード宛のみのNONTOKEN DまたはCTOKENでない場合(921のN側)には、NONTOKEN DまたはCTOKENのデータを自局の計算機ノードに取り込むと同時に、光信号送信部(430)から送出する(923)。
次に、スレーブノードのトークン非利用データ通信について説明する。トークン非利用データ通信を起動すると(903)、スレーブノードのネットワークインタフェースボード130の送受信制御管理部560は、データ送受信部470内の送信データ格納部530にあるトークン非利用データバッファ630に、トークン非利用データ(NONTOKEN D)、または制御トークンデータ(CTOKEN)が存在しているかを確認する(928)。トークン非利用データバッファ630に、NONTOKEN D、またはCTOKENがあり(928のY側)、かつ送信制御部540においてDTOKENとの送出の競合がない(929のN側)場合には、トークン非利用データバッファ630のNONTOKEN DまたはCTOKENを送出して(930)、ステップ928の状態に移行する。一方で、トークン非利用データバッファ630にNONTOKEN DまたはCTOKENがあり(928のY側)、かつ送信制御部540においてDTOKENとの送出が競合する場合(929のY側)には、DTOKENを送出した後に、NONTOKEN DまたはCTOKENを送出し(931)、ステップ928の状態に移行する。
なお、上述したフローのステップ910では、CNに1を加え、受信したFTOKENを送出しているが、受信したFTOKENをパケット信号破棄部544において破棄し、送信制御部540に備わっているデータ送信権付与トークンパケット信号生成部545から新たなFTOKENを送出してもよい。
上述したように、実施例1の通信システムにおいては、トークンを利用したデータ転送と、トークンを利用しないデータ転送とを共存させることによって、柔軟なデータ通信を実現することができる。トークン利用データ通信の場合には、マスタノードが受信するデータの時間間隔(IFG)に応じて、新たなデータ送信権付与トークンパケットを送出する機能を具備していることから、計算機ノードが構成する論理的リングの長さに応じて複数のデータを、論理的リングのデータ転送路上に送ることができ、通信システムの通信路の帯域利用効率を高めることができる。
実施例2は、トークン利用データパケットを用いた通信における規則1および規則3の内容が、実施例1と異なる。
以下に、本発明の第2実施例の第1実施例と異なる内容をもつ規則1および規則3について記述する。規則2、規則4は、本発明第1実施例と同じである。
規則1’:
マスタノードの計算機ノードは、通信システムの起動後、自局の計算機ノードのトークン利用データパケット、またはネットワークインタフェースボード130の送信制御部540のデータ送信権付与トークンパケット信号生成機能部545からデータ送信権付与トークンパケット信号を送出する。
規則3’:
スレーブノードは、通信システムのトークン利用データ通信の起動後、初めてデータ送信権付与トークンパケット信号を受信したときに、自局の計算機ノードのトークン利用データバッファ620にデータ信号が存在する場合には、トークン利用データパケットとして送出し、存在しない場合には、受信したデータ送信権付与トークンパケット信号を送出する。ただし、受信したデータ送出権付与トークンパケット信号を、パケット信号破棄部544において破棄し、送信制御部540に備わっているデータ送信権付与トークンパケット生成機能部からデータ送信権付与トークンパケットを送出してもよい。
図10に、実施例2にかかるマスタノードの動作フローを、図11に、実施例2にかかるスレーブノードの動作フローを示す。ここで、FTOKENはデータ送信権付与トークンパケット、DTOKENはトークン利用データパケット、NONTOKEN Dはトークン非利用データパケット、CTOKENは制御トークンパケット、CNは受信パケット信号解析部510に入力したデータ送信権付与トークンパケット信号または自局の計算機ノードから送出されたデータトークンパケット信号の数FPと、他局の計算機ノードが送出したトークン利用データパケットの数DPの合計カウント数(CN=FP+DP)、Tは受信タイマ機能部563で計測される時間、IFGは通信システムの管理者があらかじめ定めた時間である。
(マスタノードのフロー)
実施例2の通信システムにおけるマスタノードは、通信システムの通信が起動すると(1001)、トークン利用データ通信とトークン非利用データ通信とがそれぞれ起動する(1002、1003)。最初に、トークン利用データ通信について説明する。
トークン利用データ通信を起動すると(1002)、自局の計算機ノードの送信データ格納部530のトークン利用データバッファ620にデータが存在する場合(1028のY側)には、トークン利用データパケット(DTOKEN)を送出する(1029)。自局の計算機ノードの送信データ格納部530のトークン利用データバッファ620にデータが存在しない場合(1028のN側)には、データ送信権付与トークンパケット信号生成機能部545からデータ送信権付与トークンパケット信号FTOKENを送出する(1030)。同時に、送受信制御管理部560にあるパケット信号種別計測部561のカウンタと受信タイマ機能部563のタイマとを起動する(1031)。
受信パケット信号解析部510は、光信号受信部431がFTOKEN、DTOKEN、NONTOKEN DまたはCTOKENの光信号(パケット信号)を受信しないとき(1006のN側)、受信タイマTの値がIFGになるまで計測を継続する(1006のN側→1007→1008のN側→1006→1006のN側を繰り返す)。
Tの値がIFGに等しくなったとき(1008のY側)、CN=Nでないならば(1009のN側)、マスタノードは、データ送受信部470内の送信制御部540に設けられているデータ送信権付与トークンパケット(FTOKEN)生成部545からFTOKENを出力する。同時に、受信タイマTをリセット(初期値0に戻し再計測)し、カウント数CNに1を加え(1010)、ステップ1006の状態に移行する。
一方、Tの値がIFGに等しくなったとき(1008のY側)、CN=Nならば(1009のY側)、マスタノードは、送信データ格納部530のトークン利用データバッファ620に送出すべきデータ信号があるかを確認する(1028)。送出するデータ信号がない場合(1028のN側)には、データ送信権付与トークンパケット(FTOKEN)生成部545からFTOKENを出力する(1030)。また、送出するデータがある場合(1028のY側)には、DTOKENを送出する。そして、CNの初期化(CN=1)、Tの初期化(T=0)を行って再計測を開始し(1031)、ステップ1006の状態に移行する。
受信パケット信号解析部510は、光信号受信部431がFTOKEN、DTOKEN、NONTOKEN DまたはCTOKENの光信号(パケット信号)の受信したとき(1006のY側)、受信タイマTをリセット(T=0)して再計測を開始し(1011)、ステップ1006の状態に戻り、次の光信号の受信に備える。同時に、受信した光信号がFTOKENであり(1012のY側)かつCN≧Nの場合(1013のY側)には、ステップ1028の状態へ移行する。受信した光信号がFTOKENであり(1012のY側)かつCN<Nの場合(1013のN側)には、CNに1を加え、受信したFTOKENを送出する(1014)。
一方、受信した光信号がFTOKENではなく(1012のN側)、DTOKENであり(1015のY側)かつ自局の計算機ノードが送出したDTOKENの場合(1016のY側)には、そのDTOKENを削除し(1017)、CN≧Nの場合(1018のY側)には、ステップ1028へ移行する。CN≧Nでない場合(1018のN側)には、CNに1を加え、データ送信権付与トークンパケット(FTOKEN)生成部545からFTOKENを出力する(1036)。受信した光信号がDTOKENであり(1015のY側)かつ自局の計算機ノードが送出したDTOKENでない場合(1016のN側)には、CNに1を加え(1019)、受信したDTOKENのデータを自局の計算機ノードに取り込むと同時に、このDTOKENを送出する(1020)。
受信した光信号がDTOKENではなく(1015のN側)、かつNONTOKEN DおよびCTOKENでない場合(1021のN側)には、その光信号を破棄する(1022)。受信した光信号がDTOKENではなく(1015のN側)、かつNONTOKEN DまたはCTOKENであり(1021のY側)、かつNONTOKEN DまたはCTOKENが他局の計算機ノード宛である場合(1023のY側)には、受信したNONTOKEN DまたはCTOKENのデータをそのまま光信号送信部430から送出する(824)。一方、NONTOKEN DまたはCTOKENが他局の計算機ノード宛ではなく(1023のN側)、自局の計算機ノード宛のみのNONTOKEN DまたはCTOKENの場合(1025のY側)には、受信したNONTOKEN DまたはCTOKENのデータを自局の計算機ノードに取り込む(1026)。自局の計算機ノード宛のみのNONTOKEN DまたはCTOKENでない場合(1025のN側)には、NONTOKEN DまたはCTOKENのデータを自局の計算機ノードに取り込むと同時に、光信号送信部430から送出する(1027)。
マスタノードのトークン非利用データ通信は、実施例1と同じであるので、動作の説明は省略する。
なお、上述したフローのステップ1014では、CNに1を加え、受信したFTOKENを送出しているが、受信したFTOKENをパケット信号破棄部544において破棄し、送信制御部540に備わっているデータ送信権付与トークンパケット信号生成部545から新たなFTOKENを送出してもよい。
(スレーブノードのフロー)
図11に、実施例2にかかるスレーブノードの動作フローを示す。実施例2の通信システムにおけるスレーブノードは、通信システムの通信が起動すると(1101)、トークン利用データ通信とトークン非利用データ通信とがそれぞれ起動する(1102、1103)。最初に、トークン利用データ通信について説明する。
トークン利用データ通信を起動すると(1102)、スレーブノードは、初めてデータ送信権付与トークンパケット(FTOKEN)を受信するまで待機する(1104のN側)。スレーブノードは、初めてFTOKENを受信すると(1104のY側)、自局の計算機ノードのトークン利用データバッファ620にデータ信号が存在する場合(1124のY側)には、データ信号をトークン利用データパケット信号として送出する(1126)。データ信号が存在しない場合(1124のN側)には、送信制御部540にあるデータ送信権付与トークンパケット生成機能部545からデータ送信権付与トークンパケットを送出する(1125)。同時に、ネットワークインタフェースボード130の送受信制御管理部560にあるパケット信号種別計測部561のカウンタを起動する(1127)。ここで、カウンタ値CNの初期値は1である。
受信パケット信号解析部510は、光信号受信部431がFTOKEN、DTOKEN、NONTOKEN DまたはCTOKENの光信号(パケット信号)を受信すると(1107のY側)、ステップ1107の状態に戻り、次の光信号の受信に備える。同時に、受信した光信号がFTOKENであり(1108のY側)かつCN≧Nの場合(1109のY側)には、送信データ格納部530のトークン利用データバッファ620に送出すべきデータがあるかを確認する(1124)。送出するデータがない場合(1124のN側)には、データ送信権付与トークンパケット(FTOKEN)生成部545からFTOKENを出力する(1125)。また、送出するデータがある場合(1124のY側)には、DTOKENを送出する。そして、CNの初期化(CN=1)を行って再計測を開始し(1127)、ステップ1107の状態に移行する。受信した光信号がFTOKENであり(1108のY側)かつCN<Nの場合(1109のN側)には、CNに1を加え、受信したFTOKENを送出する(1110)。
一方、受信した光信号がFTOKENではなく(1108のN側)、DTOKENであり(1111のY側)かつ自局の計算機ノードが送出したDTOKENの場合(1112のY側)には、そのDTOKENを削除し(1113)、CN≧Nの場合(1114のY側)には、ステップ1124へ移行する。CN≧Nでない場合(1114のN側)には、CNに1を加え、データ送信権付与トークンパケット(FTOKEN)生成部545からFTOKENを出力する(1132)。受信した光信号がDTOKENであり(1111のY側)かつ自局の計算機ノードが送出したDTOKENでない場合(1112のN側)には、CNに1を加え(1115)、受信したDTOKENのデータを自局の計算機ノードに取り込むと同時に、このDTOKENを送出する(1116)。
受信した光信号がDTOKENではなく(1111のN側)、かつNONTOKEN DおよびCTOKENでない場合(1117のN側)には、その光信号を破棄する(1118)。受信した光信号がDTOKENではなく(1111のN側)、かつNONTOKEN DまたはCTOKENであり(1117のY側)、かつNONTOKEN DまたはCTOKENが他局の計算機ノード宛である場合(1119のY側)には、受信したNONTOKEN DまたはCTOKENのデータをそのまま光信号送信部430から送出する(1120)。一方、NONTOKEN DまたはCTOKENが他局の計算機ノード宛ではなく(1119のN側)、自局の計算機ノード宛のみのNONTOKEN DまたはCTOKENの場合(1121のY側)には、受信したNONTOKEN DまたはCTOKENのデータを自局の計算機ノードに取り込み(1122)。自局の計算機ノード宛のみのNONTOKEN DまたはCTOKENでない場合(1121のN側)には、NONTOKEN DまたはCTOKENのデータを自局の計算機ノードに取り込むと同時に、光信号送信部430から送出する(1123)。
スレーブノードのトークン非利用データ通信は、実施例1と同じであるので、動作の説明は省略する。
なお、上述したフローのステップ1110では、CNに1を加え、受信したFTOKENを送出しているが、受信したFTOKENをパケット信号破棄部544において破棄し、送信制御部540に備わっているデータ送信権付与トークンパケット信号生成部545から新たなFTOKENを送出してもよい。
上述したように、実施例2の通信システムにおいては、トークンを利用したデータ転送と、トークンを利用しないデータ転送とを共存させることによって、柔軟なデータ通信を実現することができる、トークン利用データ通信の場合には、マスタノードが受信するデータの時間間隔(IFG)に応じて、新たなデータ送信権付与トークンパケットを送出する機能を具備していることから、計算機ノードが構成する論理的リングの長さに応じて複数のデータを、論理的リングのデータ伝送路上に送ることができ、通信システムの通信路の帯域利用効率を高めることができる。
本発明の実施例1にかかる通信システムの構成を示す図である。 実施例1にかかる計算機ノードの内部構成を示すブロック図である。 実施例1にかかる通信システムに用いられるパケット信号のフレーム構造を示す図である。 実施例1にかかるネットワークインタフェースボードの構成を示すブロック図である。 実施例1にかかるネットワークインタフェースボードのデータ送受信部の構成を示すブロック図である。 実施例1にかかるネットワークインタフェースボードのデータ送受信部における送信データ格納部の構成を示すブロック図である。 実施例1にかかる通信システムを構成する計算機ノードが形成する論理リングネットワークを示す図である。 実施例1にかかるマスタノードの動作フローを示すフローチャートである。 実施例1にかかるスレーブノードの動作フローを示すフローチャートである。 実施例2にかかるマスタノードの動作フローを示すフローチャートである。 実施例2にかかるスレーブノードの動作フローを示すフローチャートである。 従来のトークンリング方式の通信システムにおけるデータ交換手順を示す図である。
符号の説明
100〜103 計算機ノード
110 4×4アレイ導波路回折格子
120 光導波路
130 ネットワークインタフェースボード
210 CPU
220 第1の記憶媒体
230 第2の記憶媒体
240 データ入出力制御部
250,251,260,270,280,480〜485 電気バス信号線
310,320,410,420 電気バス信号線コネクタ部
430 光信号送信部
440 光信号受信部
450 データ変換処理部
460 シリアル−パラレル相互変換部
470 データ送受信制御部
486,487 電気信号線
488 電源供給用コネクタ
490,491 光ファイバ
510 受信パケット信号解析部
520 ホストデータ種別解析部
530 送信データ格納部
540 送信制御部
544 パケット信号破棄部
545 データ送信権付与トークンパケット生成部
550 受信パケット信号格納部
560 送受信制御管理部
561 パケット信号種別計測部
563 受信タイマ機能部
610 送信データ格納管理部
620 トークン利用データバッファ
630 トークン非利用データバッファ
640 第1のセレクタ
650 第2のセレクタ

Claims (9)

  1. N(Nは1以上の整数)台の計算機ノードが論理的なリングネットワークを形成し、各々の前記計算機ノード間でトークンリング方式によりデータの交換を行う通信システムであって、前記計算機ノードは、
    自局の計算機ノードからトークン利用データパケットを送出、またはデータを送出する権利を付与するデータ送信権付与トークンパケットを送出してから、データ送信権付与トークンパケットを受信して自局の計算機ノードから送出したトークンリング方式によるトークン利用データパケット、または前記データ送信権付与トークンパケットを受信した数と、他局の計算機ノードが送出したトークン利用データパケットを受信した数との合計がN以上のとき、
    前記自局の計算機ノードのデータをトークン利用データパケットとして前記リングネットワークに送出することを特徴とする通信システム。
  2. 前記N台の計算機ノードのうち、任意の1台の計算機ノードをマスタノードとし、他の計算機ノードをスレーブノードとしたとき、
    前記マスタノードは、パケットを受信するたびに初期値0にリセットして時間を計測し、計測された時間値が、予め定められた値になったときに、前記データ送信権付与トークンパケットを送出することを特徴とする請求項1に記載の通信システム。
  3. 前記計算機ノードは、
    前記データ送信権付与トークンパケットまたは前記自局の計算機ノードから送出した前記トークン利用データパケットを受信することなく、前記自局の計算機ノードのデータをトークンリング方式によらないトークン非利用データパケットとして前記リングネットワークに送出することを特徴とする請求項1または2に記載の通信システム。
  4. N(Nは1以上の整数)台の計算機ノードが論理的なリングネットワークを形成し、各々の前記計算機ノード間でトークンリング方式によりデータの交換を行う通信システムにおける、前記計算機ノードのネットワークインタフェースボードにおいて、
    自局の計算機ノードのデータを、トークンリング方式によるトークン利用データパケットとして格納するトークン利用データバッファと、トークンリング方式によらないトークン非利用データパケットとして格納するトークン非利用データバッファとを含む送信データ格納部と、
    受信したパケット信号の信号種別を解析する受信パケット信号解析部と、
    前記送信データ格納部に格納されているデータパケットと、前記受信パケット信号解析部から入力されたデータ信号のいずれかを出力する送信制御部と、
    前記受信パケット信号解析部で解析された信号種別ごとに、データ信号のパケットの数を計測することであって自局の計算機ノードからトークン利用データパケットを送出、または前記データ送信権付与トークンパケットを送出してから、データ送信権付与トークンパケットを受信して自局の計算機ノードから送出したトークン利用データパケット、または前記データ送信権付与トークンパケットを受信した数と、他局の計算機ノードが送出したトークン利用データパケットを受信した数との合計がN以上のとき、前記送信データ格納部と前記送信制御部とを制御して、前記トークン利用データバッファに格納されているトークン利用データパケットを、前記送信制御部から前記リングネットワークに送出する送受信制御管理部と
    を備えたことを特徴とするネットワークインタフェースボード。
  5. 前記N台の計算機ノードのうち、任意の1台の計算機ノードをマスタノードとし、他の計算機ノードをスレーブノードとしたとき、
    前記マスタノードの前記送信制御部は、予めデータ送信権付与トークンパケットを格納し、
    前記送受信制御管理部は、前記受信パケット信号解析部がパケット信号を受信するたびに初期値0にリセットして、時間を計測する受信タイマ機能部を含み、該受信タイマ機能部の時間値が予め定められた値になったときに、前記送信制御部を制御して、予め格納された前記データ送信権付与トークンパケットを送出することを特徴とする請求項に記載のネットワークインタフェースボード。
  6. 前記N台の計算機ノードのうち、任意の1台の計算機ノードをマスタノードとし、他の計算機ノードをスレーブノードとしたとき、
    前記スレーブノードの前記送受信制御管理部は、初めてデータ送信権付与トークンパケットを受信したときに限り、前記送信制御部を制御して、通信起動時用データをトークン利用データパケットとして送出し、
    前記スレーブノードの送受信制御管理部は、前記トークン利用データバッファにデータパケットが格納されていない場合には、前記送信制御部を制御して、予め格納された前記データ送信権付与トークンパケットを送出することを特徴とする請求項またはに記載のネットワークインタフェースボード。
  7. 前記N台の計算機ノードのうち、任意の1台の計算機ノードをマスタノードとし、他の計算機ノードをスレーブノードとしたとき、
    前記スレーブノードの送受信制御管理部は、初めてデータ送信権付与トークンパケットを受信したときに限り、前記送信制御部を制御して、通信起動時用データをトークン利用データパケットとして送出し、
    前記スレーブノードの送受信制御管理部は、前記トークン利用データバッファにデータパケットが格納されていない場合には、前記送信制御部を制御して、前記受信パケット信号解析部から入力されたデータ信号のうち受信した前記データ送信権付与トークンパケットを送出することを特徴とする請求項またはに記載のネットワークインタフェースボード。
  8. 前記N台の計算機ノードのうち、任意の1台の計算機ノードをマスタノードとし、他の計算機ノードをスレーブノードとしたとき、
    前記スレーブノードの前記送受信制御管理部は、初めてデータ送信権付与トークンパケットを受信したときに、前記送信制御部を制御して、前記トークン利用データバッファにデータパケットが存在する場合にはトークン利用データパケットとして送出し、前記トークン利用データバッファにデータパケットが存在しない場合には、前記受信パケット信号解析部から入力されたデータ信号のうち受信した前記データ送信権付与トークンパケット信号を送出し、
    前記スレーブノードの送受信制御管理部は、前記トークン利用データバッファにデータパケットが格納されていない場合には、前記送信制御部を制御して、予め格納された前記データ送信権付与トークンパケットを送出することを特徴とする請求項またはに記載のネットワークインタフェースボード。
  9. 前記N台の計算機ノードのうち、任意の1台の計算機ノードをマスタノードとし、他の計算機ノードをスレーブノードとしたとき、
    前記スレーブノードの前記送受信制御管理部は、初めてデータ送信権付与トークンパケットを受信したときに、前記送信制御部を制御して、前記トークン利用データバッファにデータパケットが存在する場合にはトークン利用データパケットとして送出し、前記トークン利用データバッファにデータパケットが存在しない場合には、前記受信パケット信号解析部から入力されたデータ信号のうち受信した前記データ送信権付与トークンパケット信号を送出し、
    前記スレーブノードの送受信制御管理部は、前記トークン利用データバッファにデータパケットが格納されていない場合には、前記送信制御部を制御して、前記受信パケット信号解析部から入力されたデータ信号のうち受信した前記データ送信権付与トークンパケットを送出することを特徴とする請求項またはに記載のネットワークインタフェースボード。
JP2005157789A 2005-05-30 2005-05-30 通信システムおよびネットワークインタフェースボード Expired - Fee Related JP4494289B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005157789A JP4494289B2 (ja) 2005-05-30 2005-05-30 通信システムおよびネットワークインタフェースボード

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005157789A JP4494289B2 (ja) 2005-05-30 2005-05-30 通信システムおよびネットワークインタフェースボード

Publications (2)

Publication Number Publication Date
JP2006333376A JP2006333376A (ja) 2006-12-07
JP4494289B2 true JP4494289B2 (ja) 2010-06-30

Family

ID=37554541

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005157789A Expired - Fee Related JP4494289B2 (ja) 2005-05-30 2005-05-30 通信システムおよびネットワークインタフェースボード

Country Status (1)

Country Link
JP (1) JP4494289B2 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003169063A (ja) * 2001-11-30 2003-06-13 Fuji Electric Co Ltd リング型ネットワークのアクセス制御方法および端末装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59138148A (ja) * 1983-01-28 1984-08-08 Canon Inc リングネツトワ−ク伝送制御方式
JPS6182548A (ja) * 1984-09-28 1986-04-26 Sumitomo Electric Ind Ltd ト−クン送出権決定方法
JPS61224537A (ja) * 1985-03-29 1986-10-06 Hitachi Ltd リングネツトワ−クの送信権管理方式
JPS62269441A (ja) * 1986-05-16 1987-11-21 Nec Corp 伝送システム
JPS63199540A (ja) * 1987-02-16 1988-08-18 Toshiba Corp デ−タ伝送方法及び装置
JPH01240044A (ja) * 1988-03-22 1989-09-25 Nec Corp トークンパッシング送信規制装置
JPH0252541A (ja) * 1988-08-17 1990-02-22 Omron Tateisi Electron Co Lanにおけるデータ伝送方式
JPH0326131A (ja) * 1989-06-23 1991-02-04 Nec Eng Ltd 帯域割当装置
JPH0376339A (ja) * 1989-08-17 1991-04-02 Fujitsu Ltd 通信ノード優先順位制御方式

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003169063A (ja) * 2001-11-30 2003-06-13 Fuji Electric Co Ltd リング型ネットワークのアクセス制御方法および端末装置

Also Published As

Publication number Publication date
JP2006333376A (ja) 2006-12-07

Similar Documents

Publication Publication Date Title
USRE47365E1 (en) Systems and methods for using active optical cable segments
CN1659833B (zh) 用于确定光纤信道结构中路由特征的方法和装置
JP4209428B2 (ja) 非サイクル有向グラフで接続された構成要素間の通信方法
JP6093867B2 (ja) インターコネクトにおける不均一なチャネル容量
CA2408532C (en) Method and apparatus for unique address assignment, node self-identification and topology mapping for a directed acyclic graph
US9253085B2 (en) Hierarchical asymmetric mesh with virtual routers
JP2006190280A (ja) バスの抽象化
EP3296781B1 (en) On-chip optical interconnection structure and network
WO2003063424A2 (en) Method and system for simultaneous management of multiple tokens on a communication ring
KR20170129150A (ko) 데카르트 어드레싱을 이용한 저전력 및 저 지연 디바이스 열거
US20020061025A1 (en) Data transmitting and receiving apparatus and data transmitting and receiving method
CN105812063B (zh) 基于统计复用的光片上网络系统及通信方法
JP2008522550A (ja) マルチレート光トランスポンダ
JP4494289B2 (ja) 通信システムおよびネットワークインタフェースボード
KR101766792B1 (ko) 하이브리드 광학 네트워크-온-칩 시스템 및 하이브리드 광학 네트워크-온-칩 시스템에서의 데이터 송수신 방법
US11212214B2 (en) Parallel computer system, method of controlling a parallel computer system, and a non-temporary computer-readable medium that stores a program
KR20070068844A (ko) Utp/광 통합 네트워크의 이더넷 스위치/라우터 및 그방법
US9774498B2 (en) Hierarchical asymmetric mesh with virtual routers
JP3860017B2 (ja) データ通信方法、送受信回路、該送受信回路を備えた情報機器および情報通信ネットワーク
KR20030022864A (ko) 단일 cpu에 의한 적층된 스위치 그룹의 대역내 관리
WO2024188011A1 (zh) 一种通信系统以及通信装置
JP2001203729A (ja) 点対点構造を有するバックプレーンシステム
US20160006802A1 (en) Data sharing system
JP2002124957A (ja) 半二重光通信方式におけるid番号取得方法及び光無線通信システム
JPH11252113A (ja) 無線通信制御方法および無線通信装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070814

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091015

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091215

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20100205

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100215

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100205

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100407

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

Free format text: PAYMENT UNTIL: 20130416

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140416

Year of fee payment: 4

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

LAPS Cancellation because of no payment of annual fees