JPH0716200B2 - 通信ネツトワークアクセス方法及び装置 - Google Patents

通信ネツトワークアクセス方法及び装置

Info

Publication number
JPH0716200B2
JPH0716200B2 JP10325690A JP10325690A JPH0716200B2 JP H0716200 B2 JPH0716200 B2 JP H0716200B2 JP 10325690 A JP10325690 A JP 10325690A JP 10325690 A JP10325690 A JP 10325690A JP H0716200 B2 JPH0716200 B2 JP H0716200B2
Authority
JP
Japan
Prior art keywords
reservation
command
cycle
count
cycle number
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 - Lifetime
Application number
JP10325690A
Other languages
English (en)
Other versions
JPH02296431A (ja
Inventor
メーデイ・エム・ナセツヒ
エルヴィン・アー・ツルフルー
Original Assignee
インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン
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 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン filed Critical インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン
Publication of JPH02296431A publication Critical patent/JPH02296431A/ja
Publication of JPH0716200B2 publication Critical patent/JPH0716200B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/403Bus networks with centralised control, e.g. polling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2852Metropolitan area networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)

Description

【発明の詳細な説明】 A.産業上の利用分野 本発明は折重ね式バス構成又は2重バス構成の単方向バ
ス構造及びこれらのバス間に接続された複数のステーシ
ヨンを有する通信ネツトワークにおける伝送媒体へのア
クセスに関する。さらに詳しくいえば、本発明は循環予
約手法の原理に基づいて伝送媒体へのアクセスを調整す
るための方法及び装置に関する。
B.従来の技術及びその課題 複数のノード又はステーシヨンが共通の伝送媒体へのア
クセス権を獲得するような幾つか種類のネツトワークが
知られている。そのようなシステムの例としてたとえば
衝突検知を有する単一バスネツトワーク、トークンリン
グネツトワーク、トークンバツシングバスネツトワーク
などがある。最近、共通の伝送媒体への複数のアクセス
に関する別の技術を提供するネツトワークに対する関心
が高まつている。これらのシステムは2つの並列的なバ
スを有し、これにより情報の伝送を互いに反対方向で行
うようにしている。先頭のステーシヨンによつてスロツ
トが一定の間隔で送出され、これらのスロツトはデータ
伝送のためノードステーシヨンによつて使用される。各
ノードステーシヨンは通過するスロツトのアクセス制御
フイールドにおいてアクセス要求を事前に伝送すること
によつてアクセスの要求をしなければならない。各ノー
ドステーシヨンは自己のアクセス要求を出す前に他のス
テーシヨン(要求伝送方向において上流に所在する)か
らのアクセス要求の数を保存し、自己のデータの伝送の
ための次の空スロツトを占める前に、示されたカウント
値と同じだけの空きスロツトを通過させる(他のステー
シヨンによる使用のため)。
そのようなシステムの例が、R.M.Newmanらによる“The
QPSX MAN"、IEEE Communications Magazine、第26
巻第4号(1988年4月)第20頁ないし第28頁、及び“Di
stributed Queue Dual Bus(DQDB) Metropolitan
Area Network(MAN)”、Draft D6(Proposed IEE
E Standard 802.6)、1988年11月15日、に記載されて
いる。
これらの公知の分散型待ち行列システムは限定的な数の
ステーシヨンを有するネツトワークにはよく適合する
が、容認できない不利益を伴つており、ステーシヨンの
数が数百に達し、かつ、伝送バスの長さが数キロメート
ルのオーダであるときにはそのシステムは非能率的とな
る場合がある。
これらの欠点は特に、上流に所在するステーシヨン(要
求の伝送方向において)が優先されるよう各ステーシヨ
ンが要求を送る前に空のアクセス要求フイールドを待た
なければならないという事実に起因する一定のステーシ
ヨンについての“不公平さ”と、中断なく1つのデータ
パケツトの各部分を送りたいと欲するステーシヨンのた
めに一連の連続的なスロツトの利用可能性を保証するこ
とができないことである。
S.B.Caloらによる“Poll Actuated Multiple Access
Technique for Broadgathering Systems" IBM T
echnical Dis−closure Bulletin、第30巻第1号(19
87年6月)第72頁ないし第75頁に示される論文におい
て、複数のステーシヨンが接続された2重バスシステム
が開示されている。これらのバスへのアクセスを制御す
るため、歩調手段がネツトワークの一方の端に設けら
れ、ポーリング手段がネツトワークの他方の端に設けら
れる。歩調手段は時間をデータ伝送のためにステーシヨ
ンで使用できる連続的なスロツトに区分する。ポーリン
グ手段はオペレーシヨンサイクルによつてフレームサイ
クル構造を義務付ける。各ステーシヨンは任意のサイク
ルにおいて限定された数だけのスロツトを用いることが
できる。
この手法によれば、そのトポロジー的な状況によつて特
定のステーシヨンがシステムを支配する(他のステーシ
ヨンのために空スロツトを残さない)という可能性はな
くなる。しかしながら、その一方でこの手法は欠点があ
る。各ステーシヨンに対して許容されるスロツトの数は
中央管理機構で固定され(すなわち決められ)てしまう
ので、アクテイビテイの非常に大きいステーシヨンが必
要な数のスロツトを1サイクルで伝送できず、一方でア
クテイビテイの小さいステーシヨンが1サイクルで1つ
もスロツトを使用しないというような状況がしばしば発
生しうる。したがつて伝送ネツトワークの最適な利用が
できない。
したがつて本発明の目的は全てのステーシヨンがそのシ
ステムにおける位置とは無関係に現在の必要度に応じて
公平な取扱いを受けることのできる、バス通信ネツトワ
ークのための多重アクセス方法及び装置を提供すること
である。
本発明の他の目的はステーシヨンによる前のアクセス要
求に基づいて各ステーシヨンに妥当な時間内に伝送媒体
への必要なアクセスを保証する多重アクセス方法及び装
置を提供することである。
本発明の他の目的は互いに反対方向の単一方向バスを有
するネツトワークに接続されたステーシヨンに対して、
各ステーシヨンの現在の必要度に応じてアクセス権を正
確かつ個別的に適合させ、かつ、各ステーシヨンの公平
な取扱いを保証する多重アクセス手法を提供することで
ある。
本発明の他の目的は各ステーシヨンに対して各自の数の
スロツトが以前に要求された場合に連続的な空スロツト
のシーケンスの利用可能性を保証する、互いに反対方向
の単一方向バスを有する通信ネツトワークのための多重
アクセス手法を提供することである。
C.課題を解決するための手法 この目的を達成するため、互いに反対方向の2つの単一
方向性のバスと、該バスに接続された複数のステーシヨ
ンと、上記バス上に一定の間隔でタイムスロツトを生成
する少なくとも1つの先頭ユニツトとを有する通信ネツ
トワークへのアクセスを調整するための本発明の方法は
下記の(a)ないし(f)のステツプを含む。
(a)連続的なサイクルの間、順次的なサイクル番号と
初期値がゼロの予約カウントとを有する予約コマンドを
上記バス上に定期的に発行するステツプ。
(b)各ステーシヨンによつて当該ステーシヨンのデー
タ伝送のためのスロツト要求の数を表わす要求カウント
だけ上記予約カウントを増分するステツプ。
(c)各ステーシヨンにおいて予約カウントを増分する
のに用いられた各要求カウントと予約コマンドのサイク
ル番号とを自己のローカル予約待ち行列に記憶するステ
ツプ。
(d)全てのステーシヨンを通つた各予約コマンドにつ
いて、当該予約コマンドに含まれていたサイクル番号及
び関連する累算された予約カウントを大域予約待ち行列
に記憶するステツプ。
(e)上記連続的なサイクルの各サイクルごとに、対応
するサイクル番号を有するサイクル開始コマンドを発行
し、そのサイクル番号について上記大域予約待ち行列に
おいて記憶された累算された予約カウントに等しい数の
空スロツトのシーケンスを上記サイクル開始コマンドに
続いて送出するステツプ。
(f)各ステーシヨンにおいて、自己のサイクル番号を
有する開始コマンドを検出した後にデータ伝送のための
r個の空スロツトをアクセスするステツプ(ただし、r
は当該ステーシヨンの上記ローカル予約待ち行列におい
て記憶された対応するサイクル番号を有する要求カウン
トである)。
また、この目的を達成するため、互いに反対方法の2つ
の単一方向性のバスと、該バスに接続された複数のステ
ーシヨンと、上記バス上にタイムスロツトを生成する少
なくとも1つの先頭ユニツトとを含み、各ステーシヨン
は通過する予約フイールドの内容を修正することによつ
てスロツトのアクセスを要求し未処理のアクセス要求に
関するレコードを保存するような通信ネツトワークにお
ける複数のアクセス要求を処理する本発明の装置は、 (a)上記先頭ユニツトの各々において、 順次的なサイクル番号と初期値がゼロの予約カウントと
を有する予約コマンドを定期的に送出する手段と、 サイクル番号及び関連する予約カウントを有するエント
リを各位置に順番に記憶していく大域予約待ち行列と、 予約コマンドを受取つて該受取つた各予約コマンドから
サイクル番号及び累算された予約カウントを上記大域予
約待ち行列における1つの位置に転送する手段と、 順次的なサイクル番号を有する開始コマンドを送出し、
該開始コマンドの送出後に対応するサイクル番号を有す
る大域予約待ち行列において記憶された予約カウントに
等しい数の空スロツトを送出する手段と、 (b)上記ステーシヨンの各々において、 サイクル番号と関連するローカルに要求されたスロツト
カウントとを有するエントリを各位置に順番に記憶して
いくローカル予約待ち行列と、 バスを伝播する予約コマンドからサイクル番号を抽出し
て当該予約コマンドにおける予約カウントをローカルに
要求されたスロツトカウントだけ増分する手段と、 抽出されたサイクル番号とローカルに要求されたスロツ
トカウントを一緒に上記ローカル予約待ち行列における
1つの位置に挿入する手段と、 バスを伝播する開始コマンドにおけるサイクル番号と上
記ローカル予約待ち行列の1つの位置におけるサイクル
番号とを比較して、一致するサイクル番号を記憶する位
置におけるスロツトカウントの値によつて示される数の
空スロツトでデータを伝送する手段と、 を有することを特徴としている。
以下、本発明の作用を実施例とともに説明する。
D.実施例 1)環境システム(基本ネツトワーク) 第1A図及び第1B図は本発明を適用しうる通信ネツトワー
クの2つの形式を示した図である。これらのネツトワー
クは2つのバス(又はバスセグメント)から成り、これ
らのバスの間に多数のステーシヨン(ノード)が接続さ
れる。各バスを介する情報は一方向のみで流れる。した
がって、2つのバスで情報は互いに反対方向に流れる。
2重バス構成と呼ばれる第1A図のネツトワークは2つの
分離したバスA(11)及びB(13)を含む。2つの先頭
ユニツト HE−A(15)及びHE−B(17)は双方のバス
に接続される。各先頭ユニツトはデータ伝送のためのバ
スに沿つてノードステーシヨン(19−1、19−2、…、
19−N)で使用されるタイムスロツトを送出する。これ
については後で説明する。特別の予約手法はステーシヨ
ンによるバス上のスロツトへのアクセスを調整するのに
使用される。
折り重ね式バス構成と呼ばれる第1B図に示されるネツト
ワークは、実質的には、複数のノードステーシヨン(25
−1、25−2、…、25−N)と、単一の先頭ユニツト
(27)と、バスA及びバスB又はアウトバウンドバス
(31)及びインバウンドバス(33)とそれぞれ呼ばれる
2つのバスセグメントから成る折り重ね式バスとを有す
る。折り重ね接続(29)は2つのバスセグメントを相互
接続するために最後のステーシヨンNのところに設けら
れる。その先頭ユニツトはアウトバウンドバス(A)に
タイムスロツトを送出しインバウンドバス(B)で返送
タイムスロツトを受取るため両方のバスセグメントに接
続されている。第1A図の2重式バスネツトワークにおけ
るように、2つのバスセグメント上の情報は互いに反対
方向で流れる。同じアクセス機構をこの折り重ね式バス
システム上で用いることもできる。
説明の簡単のため、“バス”という用語は以下、2重式
バスシステムの2つの別個のバスの各々、及び折り重ね
式バスシステムの2つのバスセグメントの各々いずれの
場合にも用いられるものとする。また、簡単のため、以
下では先頭ユニツトは単に先頭、ノードステーシヨンは
単にステーシヨンということがある。
第1A図の2重式バスシステム上では全てが重複するとい
う事実(たとえば、バスBへのアクセスのためのバスA
上の要求、及びバスAへのアクセスのためのバスB上の
要求)に起因する説明の複雑さを避けるため、以下、本
発明を第1B図の折り重ね式バスシステムに関連してだけ
説明する。しかしながら、本発明はそのような2重式バ
スシステムにおいてもうまく適用されることに留意され
たい。そのために必要な変更については最後に言及す
る。
2)スロツト構造 第2図は情報の転送のためにバス上で使用されるタイム
スロツトのフオーマツトを示す図である。これらのスロ
ツトは先頭ユニツトで連続的に生成される。各スロツト
は70バイトを有し、アクセス制御フイールド(ACF)及
びデータセグメントフイールドを含む。データセグメン
トフイールドにおける情報は、送信すべき実際のデータ
の他、ヘツダを含んでいてもよい。ヘツダには宛先アド
レスや、本アクセス機構が用いられるアプリケーシヨン
に特定された他の制御情報が含まれる。これは本発明と
は直接の関係がないのでこれ以上の説明は省略する。
アクセス制御フイールドACFは2バイトすなわち16ビツ
トで構成される。1ビツトのフイールドであるB/Fフイ
ールドはデータセグメントフイールドが既にデータを含
むか(ビジー)又はまだ利用可能か(フリー)どうかを
示す。2ビツトの優先フイールド(PRI)は各スロツト
が4つの優先順位のどれに属するのかを示す。このフイ
ールドの内容は複数の未処理のアクセス予約の間の最高
の優先順位を示すもので、先頭ユニツトによつてセツト
される。
ACFの残りの部分によつて13ビツトの媒体アクセス制御
(MAC)コマンドが伝達される。MACコマンドは先頭ユニ
ツトによつて生成されたスロツトに挿入される。この
他、様々なコマンドを設けることができる。本実施例で
選択したものは第6図を参照して第4節に示されてい
る。
3)本発明の原理 第3図、第4図及び第5図を参照しながら本発明の主要
な特徴を説明する。循環予約式多重アクセス手法の基本
的なオペレーシヨンは2つのMACコマンドを必要とす
る。すなわち、予約コマンドと開始コマンドである。第
3図で示したように、時間は各々が整数個のスロツトか
ら成る可変長のサイクルに副分割される。1つのサイク
ルは、先頭ユニツトで発行された番号付きの開始コマン
ドによつて開始される。番号iを有するサイクルを開始
する前に先頭ユニツトは長さ値(予約されたスロツトカ
ウント)がゼロにセツトされたサイクルiについて番号
付けされた予約コマンドを発行する。送信すべきデータ
を有するステーシヨンは十分な数のスロツトについての
要求をバス上で通過するのが観測される次の予約コマン
ドに挿入し、そのサイクル番号と要求したスロツトカウ
ントとをローカルの予約待ち行列に記録する。要求され
たスロツトの数を表わす値を予約コマンドにおいて既に
累積された長さ値に加えることによって、1つの要求が
予約コマンドに挿入される。
第4図は1つのサイクル(x)について予約コマンド及
びスロツトセグメントの内容が折重ね式バスを伝播する
場合にどのように進んでいくかを示す図である。第4図
の(A)においては、様々な場面における予約コマンド
が示されている。RES(x,n)は長さ値nを有するサイク
ルxの予約コマンドを表わしている。図からわかるよう
に、まず、先頭ユニツトがサイクル番号が“x"にセツト
されかつその長さがゼロにセツトされた予約コマンドを
生成する。ここでステーシヨンN1がサイクルxにおいて
2セグメントのフレームを送信したいものと仮定する。
ステーシヨンN1は予約コマンドの長さ引数を増分するこ
とによつて2つのスロツトを予約する。同様に、ステー
シヨンN2及びN3は自己の要求した量だけ長さ引数をそれ
ぞれ増分する(この例では、それぞれ1及び3であ
る)。この結果、予約コマンドが先願ユニツトに戻る
と、その長さ引数はサイクルxについてこれらのステー
シヨンで要求された合計6個のスロツトを示すことにな
る。
第4図の(B)、(C)及び(D)は予約コマンドに応
答して先頭ユニツトで生成された6個のスロツトのシー
ケンスを示す図である。これらのスロツトは2つの開始
コマンドST(x)及びST(x+1)の間で発行される。
1つのスロツトにおける数(N1、N2、N3)はどのステー
シヨンによつてデータセグメントがそのスロツトに挿入
されたかを示している。図からわかるように、サイクル
xが始まると、サイクルが“x"にセツトされた開始コマ
ンドが生成される。各ステーシヨンはこのコマンドを受
取ると、次のスロツトでサイクルxが始まるとわかる。
次にこのステーシヨンは自己のローカル予約待ち行列を
チエツクする。もしこれがそのサイクルで予約を有して
いれば、そのサイクルにおける最初の空スロツトを待
つ。そのスロツトをビジーにセツトした後、それは予約
済みのフレームの最初のセグメントを送信する。多重セ
グメントフイールドの場合、要求された(既に要求され
た)と同じ数のスロツトを用いて全体のフレームを送信
する。1つのフレームの全てのデータセグメントは連続
的なスロツトで送信される(すなわち、他のステーショ
ンからのデータセグメントに干渉するスロツトはな
い)。
第4図の例においては、サイクルxの開始後、2つのス
ロツトがステーシヨンN1で使用される。これらの後に
は、ステーシヨンN2で使用された1つのスロツトとステ
ーシヨンN3で使用された3つのスロツトが続く。ここ
で、サイクル(x+1)の開始がすぐに続くようサイク
ル(x+1)は空でないと仮定する。(折重ね式バス構
成の場合、ステーシヨンはインバウンドバスを通過する
スロツトからデータセグメントをコピーすることによつ
てそのデータセグメントの受信を行う。
第5図は折重ね式バスを介するMACコマンド及びデータ
セグメントを有するスロツトの部分的なシーケンスを示
す図である。この図は開始コマンドで発行されたサイク
ルの番号(図中、丸で示す)と、予約コマンドで発行さ
れたサイクルの番号(図中、四角で示す)と、任意のス
ロツトで伝送されるデータセグメントのための起点ステ
ーシヨンの識別子(図中、サイクル番号が付加されてい
る)とを含む。各予約コマンドは3つの部分(RES1、RE
S2、RES3)から成る。これについては次節で説明する。
先頭ユニツトは戻つてきた各予約コマンドを評価して、
各サイクル番号とともに、全てのステーシヨンで要求さ
れたスロツトの累算された合計の数をサイクル長さ値と
して大域予約待ち行列に記憶する。各サイクルのエント
リが大域予約待ち行列の先頭に達すると、先頭ユニツト
は番号付けされた開始コマンドを発行し、その後、大域
予約待ち行列に記憶された長さ値が示す数と同じだけの
空スロツトを生成する。
各ステーシヨンは、番号付きの開始コマンドをみた後、
最初の空スロツトを待つてそのステーシヨンのローカル
予約待ち行列において各サイクル番号とともに記憶され
た長さ値によつて示される数と同じだけのデータ伝送の
ための空スロツトを使用する。未処理のキユーされたア
クセス予約の数を調整するためのコマンドがさらに存在
するが(たとえば、“確認”及び“拒否”)、これにつ
いては次節でさらに詳しく説明する。
4)媒体アクセス制御コマド(MACコマンド) 第6図は本発明に基づいて使用されるMACコマンドのフ
オーマツトを示す図である。MACコマンドは6つ存在
し、これらは各コマンドの先頭にある3ビツトのオペコ
ードによつて区別される。各MACコマンドは他にそのコ
マンドが有効である優先クラスを示す2ビツトのフイー
ルド(PRI)を伝達する。
予約コマンド(A、B、C)はシーケンスで(3つの分
離したスロツトで)発行される3つの部分(RES1、RES
2、RES3)から成る。第1の部分RES1(A)はサイクル
番号を伝達し、第2及び第3の部分(RES2、RES3)は2
つの8ビツトフイールドを伝達する。この2つの8ビツ
トフイールドで16ビツトの2進数が形成される。これは
そのサイクルで要求されたスロツトの合計数(すなわ
ち、サイクルの長さ)を示すものである。RES2(B)に
おける数は合計の長さ値の下位部分を構成し、RES3
(C)における数はその上位部分を構成する。
長さフイールドのサイズしたがつてMACコマンドのサイ
ズ及び予約コマンドを各部分に分配することは設計の問
題である。これはシステムにおけるステーシヨンの数、
各スロツトのデータセグメント長などに応じて決まる。
必要な全てのパラメータ(優先度、サイクル番号及び合
計の長さ値)を伝達するのに十分な長さを有する1部分
から成る予約コマンドを用いることも可能である。この
場合、MACコマンドの構造は比較的長くなり、これは望
ましくない。というのは、多くのスロツトはコマンドを
全く伝達せず(NOOP)、伝送容量が浪費されるからであ
る。そこで、本実施例の解決法(各々8ビツトのパラメ
ータを有する3つの部分から成る予約コマンド)は良好
な妥協案として選択された。
確認コマンド(D)は優先順位及びサイクル番号を伝達
する。これは全てのステーシヨンに、各サイクル番号に
ついてのそれぞれの予約が受諾され有効化された(確認
された)ことを示すものである。
開始コマンド(E)は優先順位及びサイクル番号を伝達
する。開始コマンドを載せるスロツトは当該サイクルに
ついて発行される空スロツトのカウントには含まれな
い。開始コマンドのスロツトは実際には前のサイクルの
最後のスロツトであり、そのセグメントで当該サイクル
からの最後のデータセグメントを伝達する。
拒否コマンド(F)は後で説明するバツクプレツシヤ機
構をインプリントするために設けられる。このコマンド
は将来的な使用のために予約されたフイールドを有して
いる。拒否コマンドの用法については次節でさらに詳し
く説明する。
回復コマンド(G)は伝送エラーのような事象によつて
システムが作動不能になつた状況からの回復のために設
けられる。回復コマンドはアクシヨンフイールドを伝達
する。このアクシヨンフイールドの内容によつて各ステ
ーシヨンの実行すべきステツプが決まる。
NOOPコマンド(H)はMACコマンドによつて制御される
アクシヨンが全く要求されない場合にバス上に発行され
る任意のスロツトに挿入されるものである。
5)先頭ユニツトの待ち行列のアーキテクチヤ 第7図は循環予約多重アクセス手法を実現するために先
頭ユニツトに設けられた待ち行列及びレジスタを示す図
である。
大域予約待ち行列(GRQ)41はゼロでない各サイクルに
ついて、サイクル番号及びサイクルの長さ(予約された
スロツトの数)から成るエントリを保持する。現サイク
ルレジスタ(CCR)43は現サイクルの番号と、そのサイ
クルについて残りの長さ値を保持する。先頭ステーシヨ
ンによつて、1つのスロツトが生成されるたびに、その
長さ値が1つだけ減分される。現サイクルレジスタにお
ける長さ値がゼロに到達すると、新しいエントリ(もし
あれば)が大域予約待ち行列からフエツチされ、新しい
エントリのサイクル番号を有する開始コマンドがアウト
バウンドバスに発行される。
予約タイマ45は一定の間隔で予約コマンドのデイスパツ
チングを生じさせる。連続する予約コマンド間の時間的
な間隔は最もきびしいスループツトの要件で決まる。こ
れはシステム構成時に選択されセツトされる。現サイク
ル番号を各予約コマンドに挿入できるよう、この予約タ
イマに関連して1つのカウンタが設けられる。このカウ
ンタは拒否コマンドが発行された場合に初期値にリセツ
トすることができる。これについては後で説明する。
これらのユニツトは循環予約多重アクセス手法の基本的
なオペレーシヨンには十分である。しかしながら、バツ
クプレツシヤ機構を設けることもできる。これにより、
新しい予約を初期的に仮りの状態に保つて、一定の状況
の場合にこれを拒否する(取消す)ことができる。この
機構を用いて、予約スロツトの数によつて大域予約待ち
行列の長さを事前に選択された値以下に維持する。この
値は伝送媒体の不十分な利用度を引き起こさない範囲で
可能な限り小さい値にすべきものである。この機能はハ
ードウエア及び性能上の利点の双方を有する。予約待ち
行列に必要なサイズは可能な限り小さいサイズに維持さ
れるので、ハードウエア的にはわずかで足りる。また、
送信すべきフレーム(データセグメントの)を有する低
い負荷のステーシヨンは自己の予約が待ち行列の先頭に
到達する前に長時間待つ必要がないので、性能も向上す
る。このステーシヨンの性能は他のステーシヨンによつ
て提示された負荷によつて厳格には影響されない。さら
に詳しくいえば、各ステーシヨンにおける最大のアクセ
ス遅延は最小にされる。1つのフレームのアクセス遅延
はそのフレームが実際に伝送されるまでにローカルデー
タ待ち行列の先頭に到達したときからの経過時間として
定義される。
バツクプレツシヤ機構は1つのしきい値パラメータを必
要とする。このしきい値はネツトワークをフルに利用す
ることを保証するための最小の値にセツトされる。この
最小値はそれによつてアクセス遅延が最小になることを
理由に選択される。
バツクプレツシヤしきい値BTはBT=INT(a)+Kに選
択することができる。ただし、a=d/T(dは往復の遅
延)、T=スロツト伝送時間、INT(a)はaの整数部
分を意味し、Kは実施例に依存する整数でだいたい1な
いし3である。
カウンタ47はスロツト予約の現在の数を表わす値を保持
するために設けられている。1つのエントリを大域予約
待ち行列に転送するたびに、カウンタ47の内容はその長
さ値にだけ増分される。先頭ステーションによつて生成
された各スロツトごとに、このカウンタの値は1つだけ
減分される。新しいエントリが大域予約待ち行列に転送
されると、2つのオペレーシヨンが遂行される。第1
に、サイクル番号を有する確認コマンドがデイスパツチ
され、これにより、各サイクルの予約が確認されたこと
を全てのステーシヨンに示す。第2に、このカウンタの
内容が1つのしきい値と絶えず比較される。カウンタの
内容が所与のしきい値を超えたときは、まだ確認されて
いない全ての未処理の予約が拒否されたことを全てのス
テーシヨンに示すための拒否コマンドが発行される。ス
テーシヨンは先頭ステーシヨンが予約コマンドの送信を
再開したときに対応するフレームのために新しい予約を
とることになる。
戻つてきた拒否コマンド及び予約コマンドを適切に処理
するため、先頭ユニツトはエラステイツクバツフア(EB
U)49を有する。予約コマンド又は拒否コマンドが戻つ
てきたときは、オペコード及び予約コマンドの場合には
サイクル番号及び累算された予約値(長さ)がまずエラ
ステイツクバツフアに挿入される。予約のエントリ(関
連する長さ値を有するサイクル番号)はゲート51(その
ゲートが開いていれば)を介してアウトバウンドバス上
のスロツトのベースで(すなわち、アウトバウンドバス
のスロツトクロツクの制御の下で)大域予約待ち行列に
転送される。そうでないとき、すなわち、ゲートが転送
時に閉じているときは、エラステイツクバツフアからの
各エントリは廃棄される。
ゲートは次のようにして制御される。拒否コマンドが発
行されたとき(すなわち、スロツト予約の数がそのしき
い値を超えたとき)、ゲートは閉じる。各拒否コマンド
は先頭ユニツトに戻つてきたとき、エラステイツクバツ
フア49に入力される(オペコードのみ)。拒否コマンド
のオペコードがエラステイツクバツフアの先頭から読み
取られると、ゲートが再び開く。これにより、バスを通
過する途中で拒否コマンドによつてステーシヨンにおい
て拒否された全ての予約エントリもエラステイツクバツ
フアから廃棄され、したがつて大域予約待ち行列に入力
されないことが保証される。
先頭ユニツトは拒否コマンドを発行した後、予約コマン
ドの発行を停止する。先頭ユニツトは拒否コマンドが有
効であつた最小のサイクル番号を記録し、過負荷状態が
終了した場合、そのサイクル番号から始まる予約コマン
ドの発行を再開する。
6)ステーシヨンの待ち行列のアーキテクチヤ 第8図は循環予約多重アクセス手法を実現するために各
ステーシヨンに設けられる待ち行列及びレジスタを示す
図である。
確認予約待ち行列(CRQ)53はサイクル番号及びそのス
テーシヨンによつて予約されたスロツトの数(長さ)か
ら成るエントリを各サイクルについて保持する。現サイ
クルレジスタ(CCR)55は現サイクルの番号と、そのサ
イクルについて予約されたスロツトの残りの数を表わす
長さ値とを保持する。開始コマンドがステーシヨンによ
つて受取られると、そのサイクル番号は確認予約待ち行
列において含まれるものと比較される。これらが一致し
た場合は、そのエントリは現サイクルレジスタに転送さ
れる。
仮予約待ち行列(TRQ)57は、そのステーシヨンが1つ
の予約を通過する予約コマンドに入力した場合に、サイ
クル番号及び予約されたスロツトの数(長さ)から成る
エントリを受取るために設けられる。確認コマンドがス
テーシヨンで観測されたときは、そのサイクル番号は仮
予約待ち行列57における先頭のエントリと比較され、こ
れらが一致した場合には、この先頭のエントリが確認予
約待ち行列53に転送される。
エントリ/リエントリ待ち行列(ERQ)59を設けること
により、新しい予約(要求)の入力及び拒否された予約
の正しい処理が可能となる。そのステーシヨンが拒否コ
マンドを受取ったときは、常に、仮予約待ち行列57の全
てのエントリがエントリ/リエントリ待ち行列59の先頭
にただちに転送される。
予約コマンドがそのステーシヨンに到着しかつERQ57が
空でないときは、4つのオペレーシヨンが遂行される。
第1に、ERQの先頭のエントリからの長さ値が予約コマ
ンドにおける長さ値に加えられる(簡単のため、このオ
ペレーシヨンは図には示していない)。第2に、予約コ
マンドのサイクル番号がERQの先頭のエントリに入力さ
れる。第3に、ERQの先頭のエントリがデキユーされ、
その長さ値が予約コマンドのサイクル番号とともにTRQ
にエンキユーされる。第4に、ERQが空になつたとき
に、そのステーシヨンのより上位の層にデータセグメン
トの次のフレームの長さを(新しい予約のための要求と
して)送信するためのクレジツトが与えられる。
7)ポインタを有するRAMにおけるステーシヨンの待ち
行列のインプリメンテーシヨン 各ステーシヨンにおいて設けられた3つの待ち行列(す
なわち、CRQ、TRQ及びERQ)は分離した記憶ユニツトに
存在させる必要はない。これらは第9図に示すような4
つのポインタを使用する単一のRAMにおいてインプリメ
ントすることができる。これが可能なのは、これら3つ
の待ち行列に一度入力された全てのエントリは厳密に同
じ順序で残っているという理由による。
第9図からわかるように、3つの待ち行列53、57及び59
に対して、単のランダムアクセスメモリ(RAM)61及び
4つのポインタレジスタ63、65、67及び69が設けられ
る。(RAMのアドレスの増加する方向は図において上部
から下部に向かう方向である)。
第1のポインタレジスタ63は確認予約待ち行列の先頭位
置を示すポインタCRQ−HEAD−PTRを含む。第2のポイン
タレジスタ65は仮予約待ち行列の先頭位置を示すポイン
タTRQ−HERD−PTRを含む。第3のポインタレジスタ67は
エントリ/リエントリ待ち行列の先頭位置を示すポイン
タERQ−HEAD−PTRを含む。第4のポインタレジスタ69は
次のエントリを入力すべき場合にエントリ/リエントリ
待ち行列の末尾位置を示すポインタERQ−NEXT−PTRを含
む。
新しいエントリはERQ−NEXT−PTRで示される既存の記憶
されたリストの末尾に加えられるだけである。エントリ
を1つの待ち行列の先頭から次の待ち行列の末尾に移動
すべきときは、常に、対応するポインタの値が1つだけ
増分される。たとえば、エントリをTRQからCRQに移動す
る場合、レジスタ65における値は1つだけ増分される。
このように、エントリを移動する必要は全くなく、ポイ
ンタレジスタにおける値を変更するだけでよい。
はじめに、全ての待ち行列が空の場合、4つの全てのポ
インタレジスタの値は同じである。新しいエントリがあ
るたびに、レジスタ69の値が増分される。仮予約待ち行
列57の全体の内容をエントリ/リエントリ待ち行列59に
戻す場合(拒否コマンドに応答して)、レジスタ67には
レジスタ65の値がロードされる。
これらの待ち行列及びポインタが動作中にRAMの端から
端まで動くので、RAMの用い方としてはもちろんこれを
循環的に使用しなければならない(最上位のアドレスが
使用されたときは最下位のアドレスから始まる)。
8)ステーシヨンにおける循環予約多重アクセスのイン
プリメンテーシヨン 第10図は本発明に基づく循環予約多重アクセスのために
各ステーシヨン に必要な機能ユニツトをインプリメン
トする回路を示す図である。これは第8図及び第9図に
示した原理に対応するものである。
ここで、ステーシヨン間において情報は光フアイバを介
する光学的信号の形式でバス31及び33を介して転送され
ると仮定する。アウトバウンドバス31においては、光/
電気コンバータ及びデコーダ71ならびに電気/光コンバ
ータ及びデコーダ(E/O)73がこれらの間の電気的バス
セクシヨン31Aと共に存在する。インバウンドバス33に
おいては、光/電気コンバータ及びデコーダ(O/E)75
ならびに電気/光コンバータ及びデコーダ(E/O)77が
これらの間の電気的バスセクシヨン33Aと共に存在す
る。コンバータ71はライン79にクロツク信号を送出し、
コンバータ75はライン81にクロツク信号を送出する。
MACコマンドデコーダ83はバス31Aに接続され、自己の出
力ライン85に検出されたMACコマンドの識別子を送出
し、自己の出力ライン87に検出されたMACコマンドに含
まれるパラメータ(すなわち、サイクル番号又は長さ
値)を送出する。MACコマンドデコーダは、さらに、各
スロツトのACFにおけるB/Fフイールドをチエツクして、
ライン88を介して伝送制御ユニツトに“フリー”信号を
供給する。
MACコマンドデコーダ83によつて供給される情報はプロ
トコルプロセツサ及びポインタマネジヤ(PPM)89に与
えられる。PPM89は予約待ち行列を管理し、その予約及
びアクセスのプロシージヤを制御する。その機能は以下
にリストされる。予約待ち行列の場合、ランダムアクセ
スメモリ(RAM)91が設けられ、これは第9図のRAM61に
対応する。
通過スロツトにおけるアクセス制御フイールドACFの内
容(B/Fフイールド及びMACコマンド)を変更するため
に、変更ユニツト93をバス31Aに設ける。変更ユニツト9
3はライン95を介して伝送制御ユニツト97から制御信号
を受取り、ライン99を介してPPM89からパラメータ値を
受取る。伝送制御ユニツト97はライン101を介してPPM89
と待ち行列RAM91との間で交換される。
ローカルデータを通過スロツトに挿入するために、以下
のユニツトが設けられる。ライン107を介してステーシ
ヨンからデータセグメントを受取るデータセグメントバ
ッファ105と、バス31Aに挿入されライン111によつてデ
ータセグメントバツフア105に接続されるマルチプレク
サ109である。(データセグメントバツフア105は待ち時
間をなくしかつ同時的な読取り/書込みを可能とするた
めの交互的なオペレーシヨン用にダブルバツファとして
インプリメントされる。)ライン113及び115を介する伝
送制御ユニツト101から供給される信号の制御の下で、
バツフア105からのデータセグメントはバス31Aを介する
データストリームに挿入することができる(そうでない
ときは、データストリームはマルチプレクサによつて変
更されずに通過する)。ライン115を介する制御信号
は、データセグメントが伝送される場合にさらにデータ
を要求するためによりステーシヨンのより上位の層にも
供給される。
アクセス要求に応じてライン117を介してそのステーシ
ヨンのより上位の層により供給された長さ値はRAM91に
おける待ち行列に挿入することができ、PPM89は他のア
クセス要求を供給できるようそのステーシヨンにライン
119を介してクレジット信号を送ることができる(ライ
ン117を介する長さ値又はスロツトカウントの形で)。
PPM89及び伝送制御ユニツト93の機能は以下の通りであ
る(ライン85を介して供給されMACコマンドの識別子に
よつて、及び待ち行列の内容によつて制御される)。
以下のリストにおいて、“LOC−LENGTH"は予約コマンド
への挿入のためステーシヨンによつてローカルに供給さ
れる長さ値(要求されたスロツトの数)を意味し、“LS
−LENGTH"及び“MS−LENGTH"は予約コマンドにおいて累
算された長さ値(スロツトの数)の下位部分及び上位部
分をそれぞれ意味する。
a)予約コマンド(RES1、RES2、RES3)が検出された場
合 a1)RES1からサイクル番号をコピーする(87) ERQ91における先頭のエントリが空でないときは、サイ
クル番号を挿入し、長さ値をコピーしてLOC−LENGTHと
して記憶し、エントリをERQからTRQに転送する(ポイン
タを変更することによつて)。
a2)RES2からLS−LENGTHをコピーする(87) LS−LENGTHにLOC−LENGTHを加え、新しいLS−LENGTH(9
9)をRES2に挿入し、MS−LENGTHのためにLS−LENGTHか
らの桁上げを保持する。
a3)RES3からMS−LENGTHをコピーする(87) MS−LENGTHに桁上げを加え、新しいMS−LENGTHをRES3に
挿入し(99)、(ERQが空であるば)そのステーシヨン
のより上位の層にクレジツト信号を送る(119)。
b)開始コマンドが検出された場合 サイクル番号をコピーし(87)、サイクル番号とERQ(9
1)の先頭とを比較する。もし一致すれば、“サイクル
アクティブ”ラツチをセツトする。
c)“サイクルアクテイブ”ラツチがセツトされた場合 各スロツトごとに、空かどうかをチエツクする(88)。
空であれば、マルチプレクサ付勢信号(113)を送り、
データ(115)を送り、スロツトビジー(95)をセツト
し、待ち行列(91)の先頭における長さを減分する。
待ち行列(91)の先頭において長さがゼロかどうかチエ
ツクする。もしそうなら(ポインタを変更することによ
つて)次のエントリを待ち行列(91)の先頭に転送し、
“サイクルアクテイブ”ラツチをリセツトする。
d)確認コマンドが検出された場合 サイクル番号をコピーし(87)、TRQ(91)の先頭と比
較する。もし一致すれば、エントリをTRQからCPQに転送
する(ポインタを変更することによつて)。
e)拒否コマンドが検出された場合 エントリをTRQからERQの先頭に転送する(ERQの先頭に
ついてのポインタをTRQの先頭のポインタに変更するこ
とによつて)。
インバウンドバス33Aを通過するスロツトからデータを
受取るために、以下のユニツトが設けられる。フレーム
受信バツフア121とアドレスデコーダ123である。これら
は両方ともバスに接続される。アドレスデコーダはその
ステーシヨンのローカルアドレス又はそのステーシヨン
を含むグループアドレス(特定のシステムのために定義
されたセグメントヘッダにおいて2)を検出したとき
は、ライン125を介してそのステーシヨンのより上位の
層にデータセグメントの到着を知らせて、ライン127を
介する信号によつてフレーム受信バツフアを制御してバ
スを通過するセグメントからデータを受信する。このデ
ータセグメントはライン129を介してそのステーシヨン
のより上位の層に対して利用可能となる。
種々のユニツト(特にコンバータ71及び75)は要求に応
じてライン79及び81を介して供給されるクロック信号を
受取る。
9)先頭ユニツトにおける循環予約多重アクセスのイン
プリメンテーシヨン 第11図は本発明に基づく循環予約多重アクセス手法のた
め先頭ユニツトに必要な機能ユニツトをインプリメント
する回路を示す図である。これは第7図に示した原理に
対応している。
ここで、情報は光フアイバを介する光学的信号の形でバ
ス31及び33を介して転送されるものと仮定する。アウト
バウンドバス31の場合、電気的バスセクシヨン31Aに接
続された電気/光コンバータ及びエンコーダ(E/O)131
が存在する。インバウンドバス33の場合、電気的バスセ
クシヨン33Aに接続された光/電気コンバータ及びデコ
ーダ(O/E)133が存在する。コンバータ133はライン134
を介してクロツク信号を供給する(さらにライン134Aを
介して別のスロツトクロツク信号を供給する)。
クロツク発生器135はライン136を介して先頭ユニツトに
おける全てのユニツトのためのシステムクロツク信号を
供給する(さらにライン136Aを介して別のスロツトクロ
ツク信号を供給する)。
スロツト生成器137は第2図に示すフオーマツトを有す
るタイムスロツトを一定の間隔で生成する。スロツト生
成器137はMACコマンド優先付けユニツト139からMACコマ
ンドフイールドへ挿入すべき情報を受取る。この優先付
けユニツト139が必要なのは次の理由による。すなわ
ち、先頭ユニツトの異なるユニツトが異なるMACコマン
ドを生成し、そのようなコマンドが2つ同時に発生した
場合に優先度の選択を行わなければならないからであ
る。この選択については後で説明する。
予約タイマ141は予約コマンドを所定の間隔で生成し、
ライン143及びライン145を介してオペコード及びコマン
ドパラメータ(サイクル番号及びゼロにセツトされた長
さ値)をMACコマンド優先付けユニツト139へそれぞれ供
給する。
予約タイマ141はライン147を介して供給されるデータに
よつて所望の値にセツトできる(システム構成時に)間
隔を持つたタイマを有する。予約タイマの停止及び前の
値へのサイクル番号のリセツトを付勢するために、この
ユニツトはさらに各確認コマンドのサイクル番号と、
“禁止信号”とを受取る。これらの詳細については後で
説明する。
サイクル生成器149は適時に開始コマンドを生成してラ
イン151及び153を介してそのオペコード及びサイクル番
号をMACコマンド優先付けユニツト139にそれぞれ供給す
る。サイクル生成器149は第7図に示す現サイクルレジ
スタ43を有する。ライン155を介して、現サイクルレジ
スタ43は1つのスロツトが生成され伝送されるたびにス
ロツト生成器137から制御信号を受取って現サイクルレ
ジスタにおける長さ値を減分する。この値がゼロになる
と、対応する標識信号がライン157を介して大域予約待
ち行列に供給され、この待ち行列が新しいサイクルのた
めライン159を介してサイクル生成器149に先頭のエント
リを転送する。
大域予約待ち行列のために1つの記憶ユニツト161が設
けられる(第7図の待ち行列41に対応する)。待ち行列
のオペレーシヨンを制御するため、及び大域予約待ち行
列の長さを管理するため、制御ユニツト163が設けられ
る。その機能は後でもつと詳しく説明する。大域予約待
ち行列161はエラステイツクバツフア169(これは第7図
のエラステイツクバツフア49に対応する)からゲート16
7を介してライン165上の入力を受取る。GRQ161へ転送さ
れるエントリ(すなわち、サイクル番号及び長さ値)も
ライン165を介して制御ユニツト163に転送される。ゲー
ト167は制御ユニツト163からの“拒否”信号(ライン17
1)によつて閉じることができ、一方、エラステイツク
バツフア169からの制御信号(ライン173)によつて開く
ことができる。これは拒否コマンドのオペコードが先頭
のエントリにあらわれた場合に活動化される。ゲート16
7はライン136Aを介してスロツトクロツク信号を受取つ
て、スロツト時間ごとにエラステイツクバツフアから大
域予約待ち行列へのエントリの転送を付勢する。ライン
173を介する制御信号(拒否オペコード検出)も制御ユ
ニツト163に供給される。
MACコマンドデコーダ175及びアセンブルレジスタ177は
インバウンドバスセクシヨン33Aに接続され、戻ってく
るスロツトで伝達されるMACコマンドの内容を受取る。
3つの予約コマンドの部分のうちの1つ又は拒否コマン
ドがMACコマンドデコーダによつて検出されると、対応
するコード化標識がライン179を介してアセンブルレジ
スタに転送される。
アセンブルレジスタ177は、MACコマンド標識の制御の下
で、3つの連続的な予約コマンドの部分(RES1、RES2、
RES3)の各シーケンスから、サイクル番号及び2つの長
さ値を単一のエントリに累算する。このエントリは次に
エラステイツクバツフア169に転送される。拒否コマン
ドが受信されたときは、アセンブルレジスタはオペコー
ドだけを抽出して、これを1つのエントリとしてエラス
テイツクバツフア169に転送する。
制御ユニツト163は、1つのエントリがエラステイツク
バツフアから大域予約待ち行列に転送された場合に、ラ
イン185及びライン187を介してオペコード及びサイクル
番号をそれぞれMACコマンド優先付けユニツト139に供給
することによつて1つの確認コマンドの生成を生じさせ
る。確認サイクル番号がさらにライン187を介して予約
タイマ141に供給される。既に述べたように、制御ユニ
ツトは拒否コマンドを発行すべき場合に“拒否”信号を
ライン171に出す。この信号がゲート165に供給されて、
ゲートが閉じる。この信号と同時に、拒否コマンドのオ
ペコードがライン189を介してMACコマンド優先付けユニ
ツト139に供給されて、次の可能なスロツトへのMACコマ
ンドの挿入が行われる。さらにこれと同時に、ライン19
1に“禁止”信号が出されて予約タイマ141を停止させる
ためそこに供給される。未処理のスロツト予約の数がし
きい値よりも小さくなると、制御ユニツト163は予約タ
イマへの“禁止”信号ライン191を非活動化して、予約
タイマの動作の再開を付勢する。
MACコマンド優先付けユニツト139、予約タイマ141及び
制御ユニツト163の機能及び動作を以下でさらに詳しく
説明する。
MACコマンド優先付けユニツト139は自分の受取った各コ
マンドのオペコードを関連するパラメータとともに一時
的に記憶してこれらを以下の優先度でスロツト生成器13
7に送る。優先度の高い順にいうと、これは、1)開始
コマンド、2)確認コマンド、3)拒否コマンド、4)
予約コマンドである。1つの予約コマンドは常に3つの
部分(RES1、RES2、RES3)で生成されるため、間に入る
開始コマンド、確認コマンド又は拒否コマンドによつて
割込まれる場合がある。これは望ましくないので、以下
のルールを実施してもよい。すなわち、予約コマンドの
第1の部分(RES1)の伝送の後、その第2の部分(RES
2)及び第3の部分(RES3)を、他のコマンドの到着と
は無関係に常に直ちに次々と伝送することである。
予約タイマ141は自己のタイマと、予約コマンドが発行
されるたびに1つだけ増分されるサイクルカウンタとを
有する。予約タイマ141は以下の機能を遂行する。すな
わち、最後に発行された確認コマンドのサイクル番号
(ライン187を介して受取ったもの)を一定のレジスタ
に保持し、“禁止”信号ライン191が活動化されたとき
に自己のタイマを停止し、サイクルカウンタの値を最後
の確認コマンドについて記憶されたサイクル番号に1を
加えた値にリセツトし、“禁止”信号ライン191が非活
動化されたときに自己のタイマを再始動することであ
る。
制御ユニツト163は以下の手段を有する。すなわち、残
りの累算された予約カウントを保持するためのカウンタ
(第7図の47に対応する)と、確認コマンドのオペコー
ド及び拒否コマンドのオペコードをそれぞれ供給するた
めのレジスタ/生成器と、最後に確認されたサイクルの
番号に1を加えたものを保持し転送するためのレジスタ
と、そのしきい値を保持するレジスタと、そのカウント
(残りの長さ又は予約スロツトの数)としきい値とを比
較するための比較器である。
以下の機能が種々の制御情報及びステータス情報に応答
して制御ユニツト163によつて実行される。
a)スロツト予約の残りの数についてのカウント(47)
を保持し、そのカウントを、GPQに転送すべきスロツト
予約の数(165)だけ増分し、先頭ユニツトによつてス
ロツトが生成されるたびに(155)カウントを1つだけ
減分する。
d)カウントの各増分の後、確認されたサイクル番号
(187)をMACコマンド優先付けユニツト及び予約タイマ
に転送し、確認コマンドのオペコード(185)をMACコマ
ンド優先付けユニツトに送る。
c)GRQの長さについてのしきい値を保持し、カウント
の各増分の後にそのカウントとしきい値とを比較する。
しきい値を超えたときは、バツフアとGRQとの間のゲー
トに拒否/閉成通知(171)を送り、拒否コマンドのオ
ペコード(189)をMACコマンド優先付けユニツトに送
り、予約タイマへの“禁止”信号ラインを活動化する。
d)“拒否コマンド受信”標識(173)があったとき
は、予約タイマへの“禁止”信号ラインを非活動化す
る。
10)バツクプレツシヤ機構の概要 第12図はバツクプレツシヤ機構の作用を説明する図であ
る。図の上方では、矢印が先頭ユニツトで発行されるMA
Cコマンドを表わしている。Ri、Ci及びSiはサイクルi
についての予約コマンド、確認コマンド及び開始コマン
ドをそれぞれ表わしている。RJは拒否コマンドを表わ
す。図の下方には、戻つてくるMACコマンドが示されて
いる。最下位の行は先頭ユニツトに到着しエラステイツ
クバツフアに入力されたときのコマンドを示している。
その上の行はエラステイツクバツフアからGRQに転送さ
れているコマンドを示す。図に示す階段構造はGRQにお
ける確認された予約の数及びCCRにおける残りのものを
表わしている。b=10のところの線はバツクプレツシヤ
のしきい値を表わす。ただし、値10は単なる例にすぎな
い。
ここで、図の始まりのところにおいて、サイクル1、2
及び3についての予約コマンドが発行されバス上を伝播
していると仮定する。まず、R1が4つ分の長さで戻つ
て、バツフアを介してGRQに渡される。このとき、確認
コマンドC1が発行され、次のスロツト時間で開始コマン
ドS1が早くも発行される。4つの予約が未処理であり、
これらはスロツトが生成されるたびに1つだけ減分され
る。この間荷、予約コマンドR4が発行される。次にR2が
戻つて、バツフアを介してGRQに入力される。したがつ
てその内容は14(残りの2に新たな12を加えたもの)に
上がる。これはしきい値を超えている。その結果、確認
コマンドC2を送つた後、先頭ユニツトは次のスロツト時
間で拒否コマンドを発行する。エラステイツクバツフア
とGRQとの間のバツフアは、図の下方の行の間の実線で
示されるように、直ちに閉じられる。したがつて、R3及
びR4は先頭ユニツトに戻つてきた場合、エラステイツク
バツフアに挿入されるが、GRQには転送されない。RJコ
マンドが戻つてきた場合にのみ、遅れて到着した予約を
GRQに転送できるよう、ゲートが再び開けられる。
残りのスロツト予約の合計の数がしきい値よりも小さい
場合は、先頭ユニツトは確認された最後のサイクルの後
の番号から始まる予約コマンドの発行を再開することが
できる。最後の確認コマンドはC2であつたので、次の予
約コマンドはサイクル3に関するものである。これは、
合計の予約数がしきい値より下がつた場合に発行される
コマンドR3′によつて示される。その後、一定の予約間
隔で、さらに予約コマンドが発行される。R4′は繰返さ
れたものであるが、R5及びR6は新しいものである。図か
らわかるように、R3′及び後のR4′はエラステイツクバ
ツフアに到着すると、普通に挿入され、後でGRQに転送
することができる。確認コマンドC3及びC4ならびに後続
の開始コマンドS3及びS4は適時に発行される。
これは、GRQにおけるスロツト予約の数にCCRにおけるも
のとを加えたものがせいぜい1つ分のサイクル長しかし
きい値を超えることができないことを意味する。
11)2重バス構成のための変更 これまでの説明は戻つてきたMACコマンドを受取る先頭
ユニツトを1つしか持たない折重ね式バスシステムにつ
いて行つてきた。第1A図で示したような2重バスシステ
ムの場合、一定の変更が必要である。これを第13図を参
照しながら説明する。
バスAへのアクセスは図の上部(A)で示した。先頭ユ
ニツトHE−AはバスAを介するデータ伝送のための空の
スロツトを生成する。バスAに挿入されるデータもバス
Aから受信しなければならない。というのは、これらの
スロツトは他方でバスを介しては戻らないからである。
先頭ユニツトHE−AはさらにバスAのサイクルについて
確認コマンド、開始コマンド及び拒否コマンドを発行す
る。この他、先頭ユニツトHE−AはバスAへのアクセス
要求についての大域予約待ち行列を保持している。しか
しながら、バスAへのアクセスについての予約コマンド
はバスB上では反対方向に移動しなければならない。し
たがつて、これらは先頭ユニツトHE−Bによつて発行さ
れる。これは先頭ユニツトHE−Bが先頭ユニツトHE−A
のためにするサービスである。バツクプレツシヤの機構
がなければ、これが必要な全てとなる。というのは、サ
ービスを行う先頭ユニツトHE−Bは大域予約待ち行列の
ステータス及びバスAを介するデータ伝送について知る
必要がないからである。
バツクプレツシヤ機構及びしたがつて拒否コマンドが用
いられる場合は、拒否状況の後、幾つかの予約コマンド
を繰返さなければならない。したがつて、先頭ユニツト
HE−Bは先頭ユニツトHE−AのGRQにおける予約のステ
ータスに関して一定の情報を持っていなければならな
い。これは次のようにして処理される。
先頭ユニツトHE−Bは先頭ユニツトHE−Aからの確認コ
マンドを認識するため、及び最も遅れて確認されたサイ
クル番号を記憶するための手段を具備する。先頭ユニツ
トHE−Bは、さらに、先頭ユニツトAからの拒否コマン
ドを認識するため、及びその予約タイマのカウンタ(こ
れは予約コマンドを発行するために用いられる)へ最も
遅れて確認されたサイクルの番号に1を加えたものを挿
入するための手段を具備する。先頭ユニツトHE−Bは、
さらに、ステーシヨンによる使用のため、特定のマーキ
ング(たとえば、予約フイールドにおいて)を有する拒
否コマンドをバスBを介して逆に送る。このマーキング
は先頭ステーシヨンHE−Aが戻つてきた自己のコマンド
と先頭ユニツトHE−Bによつて発行された本来の拒否コ
マンドとを区別できるようするために必要となる。その
後、より小さい番号から始まる予約コマンドが単に発行
される。これは、先頭ユニツトHE−Bが拒否コマンドを
受取った際に現状空前のサイクル番号へ単にバツクアツ
プするにすぎないことを意味している。
第13図の下部(B)は全ての機能が交換された場合、す
なわち、予約がバスAで行われ先頭ユニツトHE−Aが先
頭ユニツトHE−Bのためのサービスとして予約コマンド
を発行する場合におけるバスBの伝送の状況を示してい
る。
12)優先順位の取扱い これまでの説明は単一の優先順位レベルに関して行って
きた。しかしながら、第2図のスロツトフオーマツトを
参照して述べたように、複数の優先順位レベルを設ける
ことも可能である。各々の優先順位レベルについて、待
ち行列及び関連する回路(予約タイマなど)を重複させ
なければならない。しかしながらスロツト生成器及びMA
Cコマンド優先付けユニツトは一度設けるだけでよい。
より高い優先順位を有するMACコマンドを発行しなけれ
ばならないときは、常に、それはより低い優先順位のコ
マンドに対して先取した優先順位を有する。さらに、よ
り低い優先順位についての1サイクルのスロツトはより
高い優先順位についての1サイクルのスロツトの開始に
よつて割込まれる。
第14図には異なる優先順位が2つしかない簡単な例の場
合のこのような状況が示されている。ここでは、低い優
先順位及び高い優先順位に対してそれぞれ大域予約待ち
行列193L及び193Hが存在する。この図には、低優先順位
MACコマンド生成器195L及び高優先順位MACコマンド生成
器195Hがそれぞれ示されている。これらはMACコマンド
を生成することのできる第11図に示したユニツトの全て
を表わすものであり、各優先順位ごとに重複して設けら
れる。MACコマンド優先付けユニツトの機能は参照番号1
97に示した。これは優先順位先取の原理に基づいて異な
る優先順位レベルのMACコマンドを併合する付加的な機
能(同じ優先順位の異なるMACコマンドの間の優先度を
調整するという機能の他に)を有する。
結果的なスロツトシーケンスがMACコマンド優先付けユ
ニツト197の出力のところに示されている。まず、低優
先順位のx番目のサイクルについて開始コマンドST
(L、x)が発行されている。このサイクル及び優先順
位レベルが幾つかのスロツトが発行された。次に、高優
先順位のy番目のサイクルについて開始コマンドST
(H、y)が発行された。低優先順位のスロツトの発行
は直ちに中断される。ただし、このサイクル(L、x)
の残りの長さは対応するレジスタに保存される。高優先
順位の開始コマンドが発行されると、高優先順位のサイ
クルyに必要な全ての空スロツトが続く。その後、低優
先順位の空スロツトの生成が再開され、残りの数のスロ
ツトが発行される。こうして、高優先順位のサイクルが
全く必要ないのであれば、低優先順位の次の開始コマン
ドST(L、x+1)が発行され、その後、そのサイクル
の空スロツトが続く。
13)付加的な変更 ノードステーシヨンにおける先頭機能 第1A図、第1B図、第13図(A)、第13図(B)及びそれ
らに関連する説明では、先頭ユニツトの機能は別個の装
置に設けられ、各ステーシヨンはそのシステムの単なる
ユーザーであると仮定していた。しかしながら、先頭ユ
ニツトについて別個の装置を必要としないよう、先頭ユ
ニツトの機能と1つのユーザステーシヨンの機能を1つ
の装置内にまとめることも可能である。さらに、先頭ユ
ニツトの機能に必要な手段を各ステーシヨンの装置に設
けることも可能である。これは冗長的なやり方ではある
が、このようにすれば、ネツトワークの再構成はいつで
も行うことが可能となる。換言すれば、このシステムは
個別的なセクシヨンで作動できるが、又は、先頭機能を
含む障害ステーシヨンをネツトワークから分離して残り
のシステムで作動可能とすることができる。
MACコマンドの経済的な発行 スロツトフオーマツトの例(第2図)及びスロツトシー
ケンスの例(第5図)において、各スロツトがMACコマ
ンドのためのスペースを有するACFフイールドを伝達す
るということが示されている。本発明を用いることので
きる別のやり方は、B/Fフイールド及び優先フイールド
だけを含む(データセグメントフイールドの他に)デー
タスロツトと、MACコマンドのための別個の制御スロツ
トを設けることである。そのような場合、これらのデー
タスロツトの他に、1つ又は複数のMACコマンドを伝達
する単一の制御スロツトが続くことになる。この制御ス
ロツトはこれらのデータスロツトと同じサイズにしても
よいし、1つのデータスロツトよりもずっと短い小型の
スロツトにしてもよい。
この解決法は特定のシステムにおいてMACコマンドの平
均的な数が生成される合計のスロツト数に比べて小さい
場合に有利である。換言すれば、この解決法によると、
実際には有益な情報を伝達しない多数のNOOPコマンドの
伝達をなくすことができる。
E.発明の効果 以上説明したように本発明は個々のステーシヨンの伝送
の必要度が異なる場合でも伝送ネツトワークの利用を最
適化できるという効果を奏する。この最適化の達成はネ
ツトワークの速度と距離との積には依存しない。
本発明は、さらに、他のステーシヨンが全く伝送の要求
を持たないという状況において1つ又は複数のステーシ
ヨンがネツトワークの全部の要量を利用できるという効
果を奏する。
本発明は、さらに、過負荷状態におけるアクセス要求の
レートを下げるため、現在の伝送の必要度に応じて各ス
テーシヨンに作用するバツクプレツシヤ機構を適用する
ことができるという効果を奏する。
本発明は、さらに、この多重アクセス手法を複数の優先
順位レベルの各々に個別的に使用できるという効果を奏
する。
この他、本発明を用いるシステムにおいて、全ての大域
制御情報が先頭ユニツトに集中化される。したがつて、
この情報を複製する場合における不整合の問題がなくな
る。しかも、ノードの状態はローカルな情報しか持たな
いので、新たに活動化されたノードステーシヨンによる
状態の獲得の必要はない。
【図面の簡単な説明】
第1A図及び第1B図は本発明を適用することのできるバス
構成を示す図、第2図はバスで使用されるスロツトのフ
オーマツトを示す図、第3図は本発明に基づくバスシス
テムの循環オペレーシヨンを説明する図、第4図は本発
明に基づく循環予約及びアクセス機構を説明する図、第
5図はスロツトの部分的なシーケンスの例を示す図、第
6図は本発明に基づくMACコマンドのフオーマツトを示
す図、第7図は先頭ユニツトにおける予約待ち行列の構
成を示す図、第8図はステーシヨンにおける予約待ち行
列の構成を示す図、第9図はステーシヨンにおける予約
待ち行列の他の実施例を示す図、第10図はステーシヨン
における回路の構成を示す図、第11図は先頭ユニツトに
おける回路の構成を示す図、第12図はバツクプレツシヤ
機構の動作を説明する図、第13図は本発明を2重バスシ
ステムに適用した場合における変更を説明する図、第14
図は異なる優先順位の取扱いを説明する図である。
フロントページの続き (56)参考文献 特開 昭54−114903(JP,A) 特開 昭57−101463(JP,A) 特開 昭62−224131(JP,A) 特開 昭62−500978(JP,A) 米国特許4763320(US,A)

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】互いに反対方向の2つの単一方向性のバス
    と、該バスに接続された複数のステーシヨンと、上記バ
    ス上に一定の間隔でタイムスロツトを生成する少なくと
    も1つの先頭ユニツトとを有する通信ネツトワークへの
    アクセスを調整するための下記の(a)ないし(f)の
    ステツプを含む方法。 (a)連続的なサイクルの間、順次的なサイクル番号と
    初期値がゼロの予約カウントとを有する予約コマンドを
    上記バス上に定期的に発行するステツプ。 (b)各ステーシヨンによつて当該ステーシヨンのデー
    タ伝送のためのスロツト要求の数を表わす要求カウント
    だけ上記予約カウントを増分するステツプ。 (c)各ステーシヨンにおいて予約カウントを増分する
    のに用いられた各要求カウントと予約コマンドのサイク
    ル番号とを自己のローカル予約待ち行列に記憶するステ
    ツプ。 (d)全てのステーシヨンを通つた各予約コマンドにつ
    いて、当該予約コマンドに含まれていたサイクル番号及
    び関連する累算された予約カウントを大域予約待ち行列
    に記憶するステツプ。 (e)上記連続的なサイクルの各サイクルごとに、対応
    するサイクル番号を有するサイクル開始コマンドを発行
    し、そのサイクル番号について上記大域予約待ち行列に
    おいて記憶された累算された予約カウントに等しい数の
    空スロツトのシーケンスを上記サイクル開始コマンドに
    続いて送出するステツプ。 (f)各ステーシヨンにおいて、自己のサイクル番号を
    有する開始コマンドを検出した後にデータ伝送のための
    r個の空スロツトをアクセスするステツプ(ただし、r
    は当該ステーシヨンの上記ローカル予約待ち行列におい
    て記憶された対応するサイクル番号を有する要求カウン
    トである)。
  2. 【請求項2】互いに反対方向の2つの単一方向性のバス
    と、該バスに接続された複数のステーシヨンと、上記バ
    ス上にタイムスロツトを生成する少なくとも1つの先頭
    ユニツトとを含み、各ステーシヨンは通過する予約フイ
    ールドの内容を修正することによつてスロツトのアクセ
    スを要求し未処理のアクセス要求に関するレコードを保
    存するような通信ネツトワークにおける複数のアクセス
    の要求を処理する装置であつて、 (a)上記先頭ユニツトの各々において、 順次的なサイクル番号と初期値がゼロの予約カウントと
    を有する予約コマンドを定期的に送出する手段と、 サイクル番号及び関連する予約カウントを有するエント
    リを各位置に順番に記憶していく大域予約待ち行列と、 予約コマンドを受取つて該受取つた各予約コマンドから
    サイクル番号及び累算された予約カウントを上記大域予
    約待ち行列における1つの位置に転送する手段と、 順次的なサイクル番号を有する開始コマンドを送出し、
    該開始コマンドの送出後に対応するサイクル番号を有す
    る大域予約待ち行列において記憶された予約カウントに
    等しい数の空スロツトを送出する手段と、 (b)上記ステーシヨンの各々において、 サイクル番号と関連するローカルに要求されたスロツト
    カウントとを有するエントリを各位置に順番に記憶して
    いくローカル予約待ち行列と、 バスを伝播する予約コマンドからサイクル番号を抽出し
    て当該予約コマンドにおける予約カウントをローカルに
    要求されたスロツトカウントだけ増分する手段と、 抽出されたサイクル番号とローカルに要求されたスロツ
    トカウントを一緒に上記ローカル予約待ち行列における
    1つの位置に挿入する手段と、 バスを伝播する開始コマンドにおけるサイクル番号と上
    記ローカル予約待ち行列の1つの位置におけるサイクル
    番号とを比較して、一致するサイクル番号を記憶する位
    置におけるスロツトカウントの値によつて示される数の
    空スロツトでデータを伝送する手段と、 を有する通信ネツトワークアクセス装置。
JP10325690A 1989-04-21 1990-04-20 通信ネツトワークアクセス方法及び装置 Expired - Lifetime JPH0716200B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP89810299.1 1989-04-21
EP19890810299 EP0393293B1 (en) 1989-04-21 1989-04-21 Method and apparatus for cyclic reservation multiple access in a communications system

Publications (2)

Publication Number Publication Date
JPH02296431A JPH02296431A (ja) 1990-12-07
JPH0716200B2 true JPH0716200B2 (ja) 1995-02-22

Family

ID=8203145

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10325690A Expired - Lifetime JPH0716200B2 (ja) 1989-04-21 1990-04-20 通信ネツトワークアクセス方法及び装置

Country Status (3)

Country Link
EP (1) EP0393293B1 (ja)
JP (1) JPH0716200B2 (ja)
DE (1) DE68920028T2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69013886T2 (de) * 1990-04-11 1995-05-18 Ibm Mehrfachzugriffssteuerung für ein Kommunikationssystem mit Reservierungsblockübermittlung.
EP0503212B1 (en) * 1991-03-15 1995-12-27 International Business Machines Corporation Communications network and method of regulating access to the busses in said network
DE69116676D1 (de) * 1991-03-27 1996-03-07 Ibm Einfüge- und Entfernungssignalisierung in LAN Systemen
NL9200405A (nl) * 1992-03-04 1993-10-01 Nederland Ptt Werkwijze ter verbetering van de overdracht van datapakketten met verschillende prioriteiten volgens het dqdb protocol.
US5898801A (en) 1998-01-29 1999-04-27 Lockheed Martin Corporation Optical transport system
DE19922497A1 (de) * 1999-05-15 2000-11-16 Moeller Gmbh Datenübertragungsverfahren
JP4082858B2 (ja) 2000-10-30 2008-04-30 富士通株式会社 ネットワークアクセス制御方法及びそれを用いたネットワークシステム及びそれを構成する装置
US20020101874A1 (en) * 2000-11-21 2002-08-01 Whittaker G. Allan Physical layer transparent transport information encapsulation methods and systems
AT412315B (de) * 2002-01-17 2004-12-27 Bernecker & Rainer Ind Elektro Anlage zum übertragen von daten
AT500350B8 (de) * 2003-10-03 2007-02-15 Bernecker & Rainer Ind Elektro Anlage zum übertragen von daten in einem seriellen, bidirektionalen bus
CN101690019B (zh) 2007-07-06 2014-01-08 默勒有限公司 通过开放式现场总线控制总线联网的设备的系统和方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3424866C2 (de) * 1984-07-06 1986-04-30 Messerschmitt-Bölkow-Blohm GmbH, 8012 Ottobrunn Verfahren und Anordnung zur Übertragung von Daten, insbesondere in einem Flugzeug
EP0203165B1 (en) * 1984-12-03 1992-11-04 The University Of Western Australia Queueing protocol

Also Published As

Publication number Publication date
EP0393293B1 (en) 1994-12-14
DE68920028D1 (de) 1995-01-26
EP0393293A1 (en) 1990-10-24
JPH02296431A (ja) 1990-12-07
DE68920028T2 (de) 1995-07-06

Similar Documents

Publication Publication Date Title
US5185737A (en) Method and apparatus for cyclic reservation multiple access in a communications system
US5115430A (en) Fair access of multi-priority traffic to distributed-queue dual-bus networks
US5761430A (en) Media access control for isochronous data packets in carrier sensing multiple access systems
US5761431A (en) Order persistent timer for controlling events at multiple processing stations
EP0179550B1 (en) Controlled star network
US5136582A (en) Memory management system and method for network controller
CA2124452C (en) Method and apparatus for processing data within stations of a communication network
US5210750A (en) Method and apparatus for distributed queue multiple access in a communication system
EP0459758A2 (en) Network adapter having memories configured as logical FIFOs to transmit and receive packet data
US5173898A (en) Multiple-access control for a communication system with order pad passing
EP0459757A2 (en) Network adapter
JPH0732398B2 (ja) バス・アクセス制御方法
EP0381868B1 (en) Method and system for transmitting buffered data packets on a communications network
US5119374A (en) Method of and system for implementing multiple levels of asynchronous priority in FDDI networks
JPH0716200B2 (ja) 通信ネツトワークアクセス方法及び装置
US5276682A (en) Medium access technique for LAN systems
US5347514A (en) Processor-based smart packet memory interface
WO2002001785A1 (en) Media access control for isochronous data packets in carrier sensing multiple access systems
JPH0715448A (ja) 通信ネットワークおよびこのネットワーク中のバスへのアクセスの調整方法
EP0413066B1 (en) Communications system
US5214649A (en) Insert/remove signalling in lan systems
EP0459756A2 (en) Fiber distributed data interface network
US5271008A (en) Unidirectional bus system using reset signal
Chen A versatile access scheduling scheme for real-time local area networks