(57)【要約】【課題】  専用線を用いたり、パケットヘッダ部にて多ビットを占有したりすることなくフロー制御を行う。【解決手段】  受信側のユニット１０３の受信バッファ１０８の状態を示す情報を送信側のユニット１０２に送信する際に、クレジット情報付与判定部１１１にて、受信側のユニット１０３から送信側のユニット１０２に送信するパケットデータにその情報を付与することが可能かどうか判断し、可能であると判断された場合、ヘッダ修正部１１０にてパケットデータ内のヘッダの1ビットにその情報を付与して、送信側のユニット１０２へ送信する。これにより、送信側のユニット１０２では、受信側のユニット１０３の受信バッファ１０８の状態を示す情報が得られる。【選択図】図１
2006054750.tif 000002
【特許請求の範囲】
【請求項１】
データ回線上にてパケットデータを送受信する２つの装置からなり、前記２つの装置は、該２つの装置のうち他方の装置から送信されたパケットデータを一時保持する受信バッファを有し、該受信バッファの状態を前記他方の装置に通知するフロー制御方式であって、
前記２つの装置はそれぞれ、
該２つの装置のうち他方の装置に送信するパケットデータに、前記受信バッファの状態を示す情報を付与することが可能かどうか判断する情報付与判断手段と、
前記情報付与判断手段により可能と判断された場合に、前記他方の装置に送信するパケットデータ内のヘッダの１ビットに前記受信バッファの状態を示す情報を付与する付与手段とを有するフロー制御方式。
【請求項２】
請求項１に記載のフロー制御方式において、
前記２つの装置はそれぞれ、
前記受信バッファから掃かれたパケットデータが複数に分割されたブロックの数をインクリメントするカウンタを有し、
前記付与手段は、前記カウンタにおけるカウント値を、前記他方の装置に送信するパケットデータ内のヘッダの１ビットに付与することを特徴とするフロー制御方式。
【請求項３】
請求項１または請求項２に記載のフロー制御方式において、
前記２つの装置はそれぞれ、
通知された受信バッファの状態を示す情報を、送信されてきたパケットデータから抽出する抽出手段と、
前記２つの装置のうち他方の装置に送信したパケットデータのブロック数をインクリメントし、前記抽出手段にて抽出された情報に基づいて、前記受信バッファから掃かれたパケットデータのブロック数をデクリメントするカウンタとを有することを特徴とするフロー制御方式。
【請求項４】
データ回線上にて２つの装置間でパケットデータを送受信する場合、前記２つの装置のうち前記パケットデータを受信する側となる装置内の受信バッファの状態を前記パケットデータの送信側となる装置に通知するフロー制御方法であって、
前記パケットデータの受信側となる装置から前記パケットデータの送信側となる装置へ送信されるパケットデータに、前記受信バッファの状態を示す情報を付与することが可能かどうかを判断する処理と、
前記情報の付与が可能と判断された場合に、前記パケットデータ内のヘッダの１ビットに前記受信バッファの状態を示す情報を付与する処理と、
前記受信バッファの状態を示す情報が付与されたパケットデータを、前記パケットデータの受信側となる装置から前記パケットデータの送信側となる装置に送信する処理とを有するフロー制御方法。
【請求項５】
請求項４に記載のフロー制御方法において、
前記受信バッファから掃かれた前記パケットデータのブロック数をインクリメントする処理と、
前記インクリメントされたパケットデータのブロック数を前記パケットデータ内のヘッダの１ビットに付与する処理とを有することを特徴とするフロー制御方法。
【請求項６】
請求項４または請求項５に記載のフロー制御方法において、
通知された受信バッファの状態を示す情報を、送信されてきたパケットデータから抽出する処理と、
前記パケットデータの送信側となる装置から送信されたパケットデータのブロック数をインクリメントし、前記抽出された前記受信バッファの状態を示す情報に基づいて、前記受信バッファから掃かれたパケットデータのブロック数をデクリメントする処理とを有することを特徴とするフロー制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケットデータを送受信する送受信装置間にてフロー制御を行うフロー制御方式に関する。
【背景技術】
【０００２】
従来より、パケットデータを送受信する際の送受信装置間におけるフロー制御は、バックプレッシャー方式や、クレジット方式等が用いられている。フロー制御は、一般に受信側装置に具備された受信バッファから受信データがあふれないように、送信側装置においてデータ送信を制御することで行われている。
【０００３】
バックプレッシャー方式は、受信側装置に具備された受信バッファ内に蓄積されたデータ量がある規定値に達した場合、受信側装置から送信側装置に対して送信停止の指示信号を送出し、受信バッファ内に蓄積されたデータ量が規定値を下回った後、送信再開の指示信号を送出するというフロー制御である。
【０００４】
クレジット方式においては、送信側装置において送信データのブロック数をカウントする隣接クレジットカウンタ（以下、ＮＣＣと称する）を設け、１ブロック送信する度にＮＣＣがインクリメントされる。受信側装置においても、受信バッファから掃かれた受信データのブロック数をカウントする自クレジットカウンタ（以下、ＳＣＣと称する）が設けられており、受信バッファからデータが1ブロック掃かれる毎にＳＣＣがインクリメントされる。
【０００５】
送信側装置においては、ＮＣＣがある閾値に到達すると、データの送信が停止される。一般的には、この閾値は受信バッファのサイズによって定義されている。
【０００６】
受信側装置のＳＣＣのカウンタ値はクレジット情報として送信側装置に通知され、その後ＳＣＣのカウンタ値が通知されたクレジット情報の値分だけ減算される。送信側装置では、ＮＣＣのカウント値から通知されたクレジット情報の値が差し引かれ、送信側装置において、受信側装置の受信バッファの状態が把握されるため、適切なフロー制御が行われる。
【０００７】
ここで、クレジット情報に着目すると、フロー制御を常時行うためには、クレジット情報を受信側装置から送信側装置へ常に通知する必要がある。
【０００８】
そのための一つの方法として、クレジット情報専用の専用線を設け、その専用線により送受信装置間でのクレジット情報の受け渡しを行う方法がある。
【０００９】
また、もう一つの方法に、データ回線上にクレジット専用のパケットデータを流す方法もある。
【００１０】
さらに、専用線や専用データを設けず、通常の送受信データ内にクレジット情報を埋め込む方法も考えられている（例えば、特許文献１，２参照。）。
【特許文献１】特開平０９−２３３０８２号公報
【特許文献２】特開２０００−２３６３５１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、クレジット情報の専用の専用線を設けた場合、ハードウェアの増大につながってしまうという問題点がある。
【００１２】
また、データ回線上にクレジット専用のパケットデータを流した場合、通常のデータ転送が行われていない場合であれば、性能に影響なくクレジット情報を転送することができるが、通常の送受信データが連続している場合、その通常の送受信データ間にクレジット専用のパケットデータを挟みこむことによって、性能が低下してしまうという問題点がある。また、それに対して、通常の送受信データが連続した場合にクレジット専用のパケットデータを挟み込まないようにすると、クレジット情報の転送が全く出来なくなり、それにより、送信側装置においてＮＣＣが閾値に達し、受信側装置の受信バッファに余裕があるにも関わらず、送信側装置からのデータ送信が停止されてしまうことになる。
【００１３】
さらに、通常の送受信データ内にクレジット情報を埋め込む場合は、送受信データのパケットのペイロード部にはクレジット情報を埋め込むことができないため、通常、パケットのルーティング制御等の情報を含むヘッダ部に、このクレジット情報を埋め込むことになるが、クレジット情報に多ビットを費やしてしまうと、他の機能に制約が生じてしまうという問題点がある。
【００１４】
本発明は、上述したような従来の技術が有する問題点を鑑みてなされたものであって、専用線を用いたり、パケットヘッダ部にて多ビットを占有したりすることなくフロー制御を行うことができるフロー制御方式を提供することを目的とする。
【課題を解決するための手段】
【００１５】
上記目的を達成するために本発明は、
データ回線上にてパケットデータを送受信する２つの装置からなり、前記２つの装置は、該２つの装置のうち他方の装置から送信されたパケットデータを一時保持する受信バッファを有し、該受信バッファの状態を前記他方の装置に通知するフロー制御方式であって、
前記２つの装置はそれぞれ、
該２つの装置のうち他方の装置に送信するパケットデータに、前記受信バッファの状態を示す情報を付与することが可能かどうか判断する情報付与判断手段と、
前記情報付与判断手段により可能と判断された場合に、前記他方の装置に送信するパケットデータ内のヘッダの１ビットに前記受信バッファの状態を示す情報を付与する付与手段とを有する。
【００１６】
また、前記２つの装置はそれぞれ、
前記受信バッファから掃かれたパケットデータのブロック数をインクリメントするカウンタを有し、
前記付与手段は、前記カウンタにおけるカウント値を、前記他方の装置に送信するパケットデータ内のヘッダの１ビットに付与することを特徴とする。
【００１７】
また、前記２つの装置はそれぞれ、
通知された受信バッファの状態を示す情報を、送信されてきたパケットデータから抽出する抽出手段と、
前記２つの装置のうち他方の装置に送信したパケットデータのブロック数をインクリメントし、前記抽出手段にて抽出された情報に基づいて、前記受信バッファから掃かれたパケットデータのブロック数をデクリメントするカウンタとを有することを特徴とする。
【００１８】
また、データ回線上にて２つの装置間でパケットデータを送受信する場合、前記２つの装置のうち前記パケットデータを受信する側となる装置内の受信バッファの状態を前記パケットデータの送信側となる装置に通知するフロー制御方法であって、
前記パケットデータの受信側となる装置から前記パケットデータの送信側となる装置へ送信されるパケットデータに、前記受信バッファの状態を示す情報を付与することが可能かどうかを判断する処理と、
前記情報の付与が可能と判断された場合に、前記パケットデータ内のヘッダの１ビットに前記受信バッファの状態を示す情報を付与する処理と、
前記受信バッファの状態を示す情報が付与されたパケットデータを、前記パケットデータの受信側となる装置から前記パケットデータの送信側となる装置に送信する処理とを有する。
【００１９】
また、前記受信バッファから掃かれた前記パケットデータのブロック数をインクリメントする処理と、
前記インクリメントされたパケットデータのブロック数を前記パケットデータ内のヘッダの１ビットに付与する処理とを有することを特徴とする。
【００２０】
また、通知された受信バッファの状態を示す情報を、送信されてきたパケットデータから抽出する処理と、
前記パケットデータの送信側となる装置から送信されたパケットデータのブロック数をインクリメントし、前記抽出された前記受信バッファの状態を示す情報に基づいて、前記受信バッファから掃かれたパケットデータのブロック数をデクリメントする処理とを有することを特徴とする。
【００２１】
上記のように構成された本発明においては、受信側となる装置内のカウンタにて、受信バッファから掃かれたパケットデータのブロック数がカウントされ、情報付与判断手段にて、送信側となる装置に送信されるパケットデータに、受信バッファの状態を示す情報として、カウンタにてカウントされたカウント値を付与することが可能かどうか判断される。情報付与判断手段にて可能と判断された場合に、付与手段にて、送信側となる装置に送信されるパケットデータ内のヘッダの1ビットに、受信バッファの状態を示す情報が付与され、送信側となる装置に送信され、送信側となる装置にて、受信バッファの状態を示す情報が得られる。
【００２２】
このように、受信側となる装置から送信側となる装置へ送信されるパケットデータ内のヘッダの１ビットに、受信バッファの状態を示す情報が付与されるので、専用線を用いたり、パケットヘッダ部にて多ビットを占有したりすることなくフロー制御を行うことができる。
【発明の効果】
【００２３】
以上説明したように本発明においては、データ回線上にてパケットデータを送受信する２つの装置からなり、２つの装置は、２つの装置のうち他方の装置から送信されたパケットデータを一時保持する受信バッファを有し、受信バッファの状態を他方の装置に通知するフロー制御方式であって、２つの装置はそれぞれ、２つの装置のうち他方の装置に送信するパケットデータに、受信バッファの状態を示す情報を付与することが可能かどうか判断する情報付与判断手段と、情報付与判断手段により可能と判断された場合に、他方の装置に送信するパケットデータ内のヘッダの１ビットに受信バッファの状態を示す情報を付与する付与手段とを有する構成であるため、専用線を用いたり、パケットヘッダ部にて多ビットを占有したりすることなくフロー制御を行うことができる。
【発明を実施するための最良の形態】
【００２４】
以下に、本発明の実施の形態について図面を参照して説明する。
【００２５】
図１は、本発明のフロー制御方式の実施の一形態を示すブロック図である。
【００２６】
本形態は図１に示すように、パケットデータが通過しているデータ回線１０１上で、パケットデータを送信する送信側装置となるユニット１０２と、ユニット１０２から送信されたパケットデータを受信する受信側装置となるユニット１０３とからなり、ユニット１０２内には、パケットデータが送信された際、送信されたパケットデータが複数に分割されたブロックであるフリットの数毎に加算指示を出力するＮＣＣ加算指示部１０５と、ＮＣＣ加算指示部１０５から出力されたパケットデータをユニット１０３に対して出力する送信部１１３と、ユニット１０３から送信されたパケットデータを受信する受信部１１４と、受信部１１４において受信されたパケットデータ内に付与されたクレジット情報に基づいて減算指示を出力するＮＣＣ減算指示部１０６と、ＮＣＣ加算指示部１０５から出力された加算指示あるいはＮＣＣ減算指示部１０６から出力された減算指示に基づいて送信パケットデータのフリット数をカウントするＮＣＣ制御部１０４とが設けられている。また、ユニット１０３内には、ユニット１０２から送信され、ユニット１０３にて受信されたパケットデータを一時保持する受信バッファ１０８と、受信バッファ１０８からパケットデータが掃かれた際に、掃かれたパケットデータのフリット数毎に加算指示を出力するＳＣＣ加算指示部１０９と、ＳＣＣ加算指示部１０９から出力された加算指示に基づいて、受信バッファ１０８から掃かれたパケットデータのフリット数をカウントするＳＣＣ制御部１０７と、ＳＣＣ制御部１０７におけるカウント値をデータ回線１１２上に通過しているパケットデータにクレジット情報として付与することが可能かどうかを判断するクレジット情報付与判定部１１１と、クレジット情報付与判定部１１１によってパケットデータにクレジット情報を付与することが可能と判断された場合にパケットデータのヘッダ部分にクレジット情報を付与することによりヘッダ部分を修正するヘッダ修正部１１０と、ヘッダ修正部１１０によってヘッダ部分が修正されたパケットデータをユニット１０２へ送信する送信部１１５とが設けられており、ユニット１０３からユニット１０２にパケットデータが送信される。
【００２７】
図２は、図１に示したＮＣＣ制御部１０４の構成を示す図である。
【００２８】
図２に示すように、図１に示したＮＣＣ制御部１０４は、ＮＣＣ加算指示部１０５から出力されたＮＣＣ加算指示と、ＮＣＣ減算指示部１０６から出力されたＮＣＣ減算指示とに基づいて、送信パケットデータのフリット数の加算と減算とのいずれを行うかを判断する選択指示部２０１と、選択指示部２０１における判断結果に基づいて出力が制御されるセレクタ２０２と、セレクタ２０２の出力の値を保持するカウンタであるＮＣＣ２０３と、ＮＣＣ２０３の値をインクリメントする加算器２０５と、ＮＣＣ２０３の値をデクリメントする減算器２０４とから構成されている。
【００２９】
図３は、図１に示したＮＣＣ減算指示部１０６の構成を示す図である。
【００３０】
図３に示すように、図１に示したＮＣＣ減算指示部１０６は、ユニット１０３から送信され、ユニット１０２内の受信部１１４にて受信されたパケットデータのヘッダ部とヘッダ内のクレジット情報が格納されている部分とを判断し、クレジットフリットが有効かどうかを判断する選択指示部３０１と、選択指示部３０１における判断結果に基づいて、クレジットフリットが有効かどうかを示すフラグを選択するセレクタ３０２と、セレクタ３０２の出力を保持するクレジットフリット有効フラグ３０３と、クレジットフリット有効フラグ３０３にて有効フラグが付与されたフリットのうち無効のフリット部分をマスクする無効フリットマスク部３０４とから構成されている。
【００３１】
図４は、図１に示したＳＣＣ制御部１０７の構成を示す図である。
【００３２】
図４に示すように、図１に示したＳＣＣ制御部１０７は、ＳＣＣ加算指示部１０９から出力された加算指示と、クレジット情報付与判定部１１１から出力されたクレジット減算指示とに基づいて、受信バッファ１０８から掃かれたパケットデータのフリット数の加算と減算とのいずれを行うかを判断する選択指示部４０１と、選択指示部４０１における判断に基づいて出力が制御されるセレクタ４０２と、セレクタ４０２の出力の値を保持するカウンタであるＳＣＣ４０６と、ＳＣＣ４０６の値をインクリメントする加算器４０３と、クレジット情報付与判定部１１１から出力されたクレジット減算値をＳＣＣ４０６から出力された値から減算する減算器４０４と、減算器４０４から出力された値をさらにインクリメントする加算器４０５とから構成されている。
【００３３】
図５は、図１に示したユニット１０３からユニット１０２に送信されるパケットデータ中に埋め込まれるクレジット情報の位置を説明するための図である。
【００３４】
図５に示すように、図１に示したユニット１０３からユニット１０２に送信されるパケットデータは、ヘッダ部５０１と、データ部５０２とからなり、ヘッダ部５０１内に、制御情報５０３以外の１ビットをＣＦＬＡＧ５０４としてクレジット情報格納エリアが確保されている。ＣＦＬＡＧ５０４が１であるヘッダを有するパケットは、クレジット情報として用いられることが可能であり、そのパケットのフリット数（パケット長）がカウントされることにより、返却されたクレジット情報を取り出すことが可能である。
【００３５】
以下に、上記のように構成されたフロー制御方式の動作について説明する。
【００３６】
図６は、図１に示したフロー制御方式の動作を説明するための図である。なお、図６においては、データ回線１０１上を４フリット長のパケットデータ（パケット１−１）と、５フリット長のパケットデータ（パケット１−２）とが、通過している例を示している。
【００３７】
ＮＣＣ加算指示部１０５において、上述した２つのパケットデータの有効フリットが検出されると、まず、ＮＣＣ制御部１０４に対して加算指示が出力される。この加算指示は、タイムスロットＴ１，Ｔ２，Ｔ４，Ｔ５，Ｔ７〜Ｔ１１に示すように「１」が出力される。
【００３８】
すると、ＮＣＣ制御部１０４内の選択指示部２０１において、セレクタ２０２に対して、加算器２０５から出力された値を出力する指示が与えられる。
【００３９】
図７は、図２に示した選択指示部２０１における選択論理を示す図である。
【００４０】
図７に示すように、選択指示部２０１においては、ＮＣＣ加算指示部１０５からの加算指示のみが与えられた場合、セレクタ２０２に対して、加算器２０５から出力された値を出力する指示が与えられ、ＮＣＣ減算指示部１０６からの減算指示のみが与えられた場合、セレクタ２０２に対して、減算器２０４から出力された値を出力する指示が与えられる。また、ＮＣＣ加算指示部１０５からの加算指示とＮＣＣ減算指示部１０６からの減算指示とが与えられた場合や、加算指示と減算指示のいずれも与えられなかった場合は、ＮＣＣ２０３から出力された値を出力する指示がセレクタ２０２に対して与えられる。
【００４１】
タイムスロットＴ１，Ｔ２，Ｔ４，Ｔ５，Ｔ７〜Ｔ１１においては、ＮＣＣ加算指示が「１」であるため、ＮＣＣ２０３の値が加算器２０５によりインクリメントされ、ＮＣＣ２０３に保持される。そのときの値をタイムスロットＴ２〜Ｔ１２に示す。
【００４２】
次に、パケット１−１とパケット１−２とがユニット１０２内の送信部１１３から送信され、ユニット１０３内の受信バッファ１０８において受信され、一時保持される。受信バッファ１０８において一時保持されたパケット１−１とパケット１−２とが、受信バッファ１０８から掃かれた際に、ＳＣＣ加算指示部１０９において、パケット１−１とパケット１−２の有効フリットがそれぞれ検出されると、ＳＣＣ制御部１０７に対して加算指示が出力される。この加算指示は、図６のタイムスロットＴ５，Ｔ６，Ｔ９〜Ｔ１５に示すように「１」が出力される。
【００４３】
すると、ＳＣＣ制御部１０７内の選択指示部４０１において、セレクタ４０２に対して、加算器４０３から出力された値を出力する指示が与えられる。
【００４４】
図８は、図４に示した選択指示部４０１における選択論理を示す図である。
【００４５】
図８に示すように、選択指示部４０１においては、ＳＣＣ加算指示部１０９からの加算指示のみが与えられた場合、セレクタ４０２に対して、加算器４０３から出力された値を出力する指示が与えられ、クレジット情報付与判定部１１１からの減算指示のみが与えられた場合、セレクタ４０２に対して、減算器４０４から出力された値を出力する指示が与えられる。また、ＳＣＣ加算指示部１０９からの加算指示とクレジット情報付与判定部１１１からの減算指示とが与えられた場合、セレクタ４０２に対して、加算器４０５から出力された値を出力する指示が与えられ、ＳＣＣ加算指示部１０９からの加算指示とクレジット情報付与判定部１１１からの減算指示のいずれも与えられなかった場合は、ＳＣＣ４０６から出力された値を出力する指示がセレクタ４０２に対して与えられる。
【００４６】
このようにしてセレクタ４０２から出力された値は、ＳＣＣ４０６に保持される。
【００４７】
ここで、ユニット１０３でのクレジット情報を送信側装置であるユニット１０２に通知する必要がある。データ回線１１２上を９フリット長のパケットデータ（パケット２−１）と、３フリット長のパケットデータ（パケット２−２）とが、通過している例をタイムスロットＴ１〜Ｔ１２に示す。
【００４８】
図９は、図１に示したクレジット情報付与判定部１１１の選択論理を示す図である。なお、パケット長の情報は、図５に示した制御情報５０３内に埋め込まれている。
【００４９】
図９に示すように、データ回線１１２を通過するパケットデータにクレジット情報を付与することが可能かどうか判断するクレジット情報付与判定部１１１においては、クレジット情報はパケット中の全フリット数（パケット長）に一致させる必要があるため、クレジット情報付与判定部１１１に到達したパケットデータのパケット長とＳＣＣ４０６に保持された値とが比較され、パケット長がＳＣＣ４０６に保持された値よりも大きな場合、ＳＣＣ制御部１０７に対してクレジット減算指示は出力されない。つまり、パケットにクレジット情報は付与されない。この場合、選択指示部４０１に対しては「０」が出力される。
【００５０】
一方、パケット長が、ＳＣＣ４０６に保持された値以下の場合、クレジット情報付与判定部１１１からＳＣＣ制御部１０７に対してクレジット減算指示が出力される。つまり、パケットにクレジット情報が付与される。この場合、選択指示部４０１に対しては「１」が出力される。
【００５１】
クレジット情報付与判定部１１１においては、タイムスロットＴ１において、パケット２−２のパケット長が９フリットであることが検出される。そのときのＳＣＣ４０６に保持された値は「０」であるため、図９に示したクレジット情報付与判定部１１１の選択論理に基づいて、クレジット情報の付与は行われず、ＳＣＣ制御部１０７に対するＳＣＣ４０６の減算指示も出力されない。
【００５２】
タイムスロットＴ１０においてパケット２−２がクレジット情報付与判定部１１１に到達し、パケット長が３フリットであることが検出されると、そのときのＳＣＣ４０６に保持された値は「３」であるため、クレジット情報付与判定部１１１からＳＣＣ制御部１０７に対して、クレジット減算指示とクレジット減算値である「３」とが出力される。
【００５３】
クレジット情報付与判定部１１１から出力されたクレジット減算指示がＳＣＣ制御部１０７にて受信されると、ＳＣＣ制御部１０７内の選択指示部４０１において、図８に示す選択論理に基づいて、セレクタ４０２に対して、減算器４０４から出力された値をＳＣＣ４０６へ出力する指示が与えられる。
【００５４】
減算器４０４においては、クレジット情報付与判定部１１１から出力されたクレジット減算値である「３」が、タイムスロットＴ１０のＳＣＣ４０６に保持された値である「３」から減算されて「０」になるが、同時に、ＳＣＣ加算指示部１０９からのＳＣＣ加算指示が与えられているため、加算器４０５において、「０」に「１」が加算され、その結果である「１」がセレクタ４０２に対して出力され、セレクタ４０２からＳＣＣ４０６へ出力される（タイムスロットＴ１１）。
【００５５】
ＳＣＣ加算指示部１０９では、さらにパケット１−２が受信されるため、ＳＣＣ加算指示が行われ（タイムスロットＴ１１〜Ｔ１５）、ＳＣＣ４０６に保持された値はインクリメントされていく（タイムスロットＴ１２〜Ｔ１６）。
【００５６】
クレジット情報付与判定部１１１において図９に示した選択論理に基づいてクレジット情報付与不可能と判断されたパケット２−１は、ヘッダ修正部１１０に入力され、パケットヘッダ部５０１内のＣＦＬＡＧ５０４に「０」がセットされ、また、クレジット情報付与可能と判断されたパケット２−２は、ヘッダ修正部１１０に入力され、パケットヘッダ部５０１内のＣＦＬＡＧ５０４に「１」がセットされ、送信部１１５からユニット１０２に送信される（タイムスロットＴ１，Ｔ１０）。
【００５７】
ユニット１０３内の送信部１１５から送信されたパケット２−１とパケット２−２とが、ユニット１０２内の受信部１１４にてそれぞれ受信され、受信部１１４にて受信されたパケット２−１とパケット２−２とが、受信部１１４からＮＣＣ減算指示部１０６に対してそれぞれ出力される。ＮＣＣ減算指示部１０６内の選択指示部３０１においては、パケット２−１が受信されると、ヘッダ部５０１の識別が行われ、ＣＦＬＡＧ５０４のエリアを参照して、「０」であることが検出される。
【００５８】
図１０は、図３に示した選択指示部３０１における選択論理を示す図である。
【００５９】
選択指示部３０１においては、ヘッダ部５０１が識別され、またＣＦＬＡＧ５０４のエリアが「０」であることが検出されると、クレジットフリット有効フラグ３０３に対して「０」を出力する指示がセレクタ３０２に与えられる。
【００６０】
選択指示部３０１においてヘッダ部５０１以外が認識された場合は、選択指示部３０１によって、クレジットフリット有効フラグ３０３の値、すなわち、「０」をクレジットフリット有効フラグ３０３に対して出力する指示がセレクタ３０２に与えられる。
【００６１】
同様に、選択指示部３０１において、パケット２−２が受信されると、ヘッダ部５０１の識別が行われ、ＣＦＬＡＧ５０４のエリアを参照して、ＣＦＬＡＧ５０４が「１」であることが検出され、クレジットフリット有効フラグ３０３に対して「１」を出力する指示が選択指示部３０１からセレクタ３０２に与えられる。
【００６２】
選択指示部３０１においてヘッダ部５０１以外が認識された場合は、選択指示部３０１によって、クレジットフリット有効フラグ３０３の値、すなわち、「１」をクレジットフリット有効フラグ３０３に対して出力する指示がセレクタ３０２に与えられる。
【００６３】
クレジットフリット有効フラグ３０３では、セレクタ３０２の出力値がセットされ、無効フリットマスク部３０４に出力される。無効フリットマスク部３０４においては、有効フリットではない部分についてのマスクが行われる。したがって、有効フリット分だけがＮＣＣ減算指示部１０６からＮＣＣ制御部１０４へＮＣＣ減算指示として与えられ、タイムスロットＴ１５〜Ｔ１７の間、選択指示部２０１において、ＮＣＣ減算指示部１０６から与えられた減算指示に従って、セレクタ２０２において減算器２０４から出力された値を出力する指示が与えられる。それにより、ＮＣＣ２０３に保持された値が、ユニット１０３から送信されたクレジット情報分だけ、減算されることになる。
【００６４】
なお、ユニット１０３において、送信するパケットが存在しない場合は、その時点でＳＣＣの値を記載したクレジット情報専用パケットをユニット１０２へ送信し、ユニット１０２のＮＣＣ２０３において、送信パケットデータのフリット数を減算する方法も考えられる。
【００６５】
また、本形態においては、ユニット１０２からユニット１０３にパケットデータが送信される場合を例に挙げて説明したが、ユニット１０２，１０３には同じ構成要素が含まれており、ユニット１０３からユニット１０２にパケットデータを送信することも考えられ、その場合においても、上述したものと同様の処理が行われる。
【図面の簡単な説明】
【００６６】
【図１】本発明のフロー制御方式の実施の一形態を示すブロック図である。
【図２】図１に示したＮＣＣ制御部１０４の構成を示す図である。
【図３】図１に示したＮＣＣ減算指示部１０６の構成を示す図である。
【図４】図１に示したＳＣＣ制御部１０７の構成を示す図である。
【図５】図１に示したユニット１０３からユニット１０２に送信されるパケットデータ中に埋め込まれるクレジット情報の位置を説明するための図である。
【図６】図１に示したフロー制御方式の動作を説明するための図である
【図７】図２に示した選択指示部２０１における選択論理を示す図である。
【図８】図４に示した選択指示部４０１における選択論理を示す図である。
【図９】図１に示したクレジット情報付与判定部１１１の選択論理を示す図である。
【図１０】図３に示した選択指示部３０１における選択論理を示す図である。
【符号の説明】
【００６７】
１０１，１１２    データ回線
１０２，１０３    ユニット
１０４    ＮＣＣ制御部
１０５    ＮＣＣ加算指示部
１０６    ＮＣＣ減算指示部
１０７    ＳＣＣ制御部
１０８    受信バッファ
１０９    ＳＣＣ加算指示部
１１０    ヘッダ修正部
１１１    クレジット情報付与判定部
１１３，１１５    送信部
１１４    受信部
２０１，３０１，４０１    選択指示部
２０２，３０２，４０２    セレクタ
２０３    ＮＣＣ
２０４，４０４    減算器
２０５  ４０３，４０５  加算器
３０３    クレジットフリット有効フラグ
３０４    無効フリットマスク部
４０６    ＳＣＣ
５０１    ヘッダ部
５０２    データ部
５０３    制御情報
５０４    ＣＦＬＡＧ
【図１】
2006054750.tif 000003
【図２】
2006054750.tif 000004
【図３】
2006054750.tif 000005
【図４】
2006054750.tif 000006
【図５】
2006054750.tif 000007
【図６】
2006054750.tif 000008
【図７】
2006054750.tif 000009
【図８】
2006054750.tif 000010
【図９】
2006054750.tif 000011
【図１０】
2006054750.tif 000012