JP2001007819A - データ伝送方法及びスイッチングノード装置 - Google Patents

データ伝送方法及びスイッチングノード装置

Info

Publication number
JP2001007819A
JP2001007819A JP17958699A JP17958699A JP2001007819A JP 2001007819 A JP2001007819 A JP 2001007819A JP 17958699 A JP17958699 A JP 17958699A JP 17958699 A JP17958699 A JP 17958699A JP 2001007819 A JP2001007819 A JP 2001007819A
Authority
JP
Japan
Prior art keywords
node
packet
segment
switching
port
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
JP17958699A
Other languages
English (en)
Inventor
Kenji Fujisawa
謙二 藤澤
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP17958699A priority Critical patent/JP2001007819A/ja
Publication of JP2001007819A publication Critical patent/JP2001007819A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

(57)【要約】 【課題】 例えば、IEEE1394の非同期伝送を行
なう際に、バスを有効に利用できるようにしたデータ伝
送方法及びスイッチングノードを提供する。 【解決手段】 アービトレーションを行なえるスイッチ
ングノードM3、M6、M11を設ける。スイッチング
ノードM3、M6、M11は、その先に子ノードがいる
と検出されたポートがそのセグメントのアービトレーシ
ョンを行なう権限を持つ。また、スイッチングノードM
3、M6、M11は、複数のポートと宛て先のノードア
ドレスとの関係を示す経路情報を記憶する。スイッチン
グノードM3、M6、M11により、シリアルバスを複
数のセグメントに分割し、セグメント毎にアービトレー
ションを行なう。これにより、セグメントが異なれば、
パケットの伝送を同時に行なうことができ、バスの使用
効率がを向上される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、例えば、IEE
E(Institute Of Electrical and ElectronicsEnginee
rs )1394の非同期通信に用いて好適なデータ伝送
方法及びスイッチングノード装置に関する。
【0002】
【従来の技術】パーソナルコンピュータで画像や音声を
取り込んだり、各ディジタルAV(Audio Visual)機器
間でディジタルビデオデータやディジタルオーディオデ
ータを転送する際のインターフェースとして、IEEE
1394が注目されている。IEEE1394は、高速
データ転送、リアルタイム転送をサポートしたシリアバ
スであり、非同期通信とアイソクロノス通信とが行なえ
る。IEEE1394では、シリアルバスを採用したこ
とにより、動作の高信頼性、耐久性、小型化とともに、
低コスト化が図れる。
【0003】IEEE1394は、自由度の高いトポロ
ジーであり、接続方式としては、デイジーチェーンとツ
リー型の分岐とが使用できる。ツリー型の分岐では、最
大63台までのノードを接続できる。
【0004】IEEE1394では、電源投入時にコン
フィグレーションが生起される他、ノードが追加又は削
除されるときに、コンフィグレーションが生起される。
コンフィグレーションは、バス初期化、ツリー識別、自
己識別の3つのフェーズで行なわれる。このプロセスで
ツリー式のトポロジーが形成され、物理ノード番号が各
ノードに割り振られ、管理レイヤが必要なノードに関す
る情報が送られる。したがって、IEEE1394で
は、ホット状態、つまり、電源が入っている状態で、ケ
ーブルの抜き指しを行なうことができる。
【0005】図12は、このようなIEEE1394を
使って構成されたトポロジーの一例である。図12にお
いて、ノードM101〜M113は、IEEE1394
のノードである。ノードM101〜M113は、具体的
には、IEEE1394のインターフェースを備えたパ
ーソナルコンピュータ、CD−ROMドライブ、ハード
ディスクドライブ、スキャナ、ディジタルカメラ等であ
る。これらの機器間でディジタルデータを伝送するため
に、各機器間がIEEE1394のディジタルインター
フェースにより、図12に示すようなツリー状のトポロ
ジーで、システムが構成される。
【0006】電源投入時やノードが追加又は削除される
ときに、コンフィグレーションが生起される。コンフィ
グレーションでは、上述したように、バスの初期化、ツ
リー識別、自己識別の3つのフェーズで行なわれ、物理
ノード番号が各ノードに割り振られ、管理レイヤが必要
なノードに関する情報が送られる。
【0007】図12では、ノードM104がルートのノ
ードである。また、各ノードM101〜M113のポー
トに付加されている「p」又は「ch」は、そのポート
は、親ノードに繋がっているか、子ノードに繋がってい
るかを示したものである。例えば、ノードM102は、
ノードM101の親ノードである。したがって、ノード
M101中、ノードM102に繋がるポートには、親ノ
ードが繋がることを示す「p」が付されている。反対
に、ノードM101は、ノードM102の子ノードであ
る。したがって、ノードM102中、ノードM101と
繋がるポートには、子ノードが繋がることを示す「c
h」が付されている。
【0008】各ノードに示される番号#1、#2、#
3、... は、各ノードに割り振られたノードアドレスで
ある。例えば、ノードM101のノードアドレスは#
0、ノードM102のノードアドレスは#1、ノードM
107のノードアドレスは、#9である。
【0009】また、各ノードに示される括弧内の数は通
信速度を示している。例えば、ノードM101の通信速
度はS100(100Mbit/秒)、ノードM102
の通信速度はS400(400Mbit/秒)、ノード
M107の通信速度はS200(200Mbit/秒)
である。
【0010】通常アービトレーションでは、自己識別が
完了すると、ノードはパケットを送るための通常のアー
ビトレーション方法を使用できる。各ノードは、アービ
トレーションによってバスを使用する権利を得る。
【0011】アービトレーションには、非同期アービト
レーションと、アイソクロノスアービトレーションとが
ある。また、非同期アービトレーションでは、フェアア
ービトレーションが利用される。このアービトレーショ
ンを実際に行なうのは、従来では、ルートに位置するノ
ードM104である。
【0012】
【発明が解決しようとする課題】上述のように、IEE
E1394では、送信権のアービトレーションを行いな
がらパケット伝送を行なっており、1つのバスの全帯域
を共有している。そして、従来では、アービトレーショ
ンは、ルートのノードM104のみが行なっている。こ
のため、隣接した2台の間の通信であっても、バス全体
の帯域を消費することになり、無駄が多い。
【0013】つまり、例えば、隣同士にあるノードM1
01からノードM102にデータを送りたいとする。こ
の場合、従来では、たとえ隣同士にあるノードM101
からM102にパケットを送る場合でも、ルートとなっ
ているノードM104がアービトレーションを行なっ
て、ノードM101からノードM102にデータを送る
ようにバスを割り当てて、データを送るようにしてお
り、この間、バスが占有され、他のパケットは伝送でき
ない。このように、たとえ隣同士にあるノード間でデー
タを送る場合であっても、バスの全体の帯域を割り当て
る必要があり、その間、他のデータを伝送することがで
きない。
【0014】したがって、この発明の目的は、例えば、
IEEE1394の非同期伝送を行なう際に、バスを有
効に利用できるようにしたデータ伝送方法及びスイッチ
ングノードを提供することにある。
【0015】
【課題を解決するための手段】この発明は、複数のノー
ドをシリアルバスを介して接続し、アービトレーション
を行なってバスの使用権を割り当てて、複数のノード間
でパケットを伝送するようにしたデータ伝送方法におい
て、アービトレーションを行なえるスイッチングノード
によりバスを複数のセグメントに分割し、スイッチング
ノードによりセグメント内のノードについてセグメント
毎にアービトレーションを行なうようにしたことを特徴
とするデータ伝送方法である。
【0016】この発明は、複数のノードをシリアルバス
を介して接続し、アービトレーションを行なってバスの
使用権を割り当てて、複数のノード間でパケットを伝送
するのに用いられるスイッチングノードにおいて、複数
のポートと、複数のポートを切り替えるスイッチング手
段と、複数のポートと宛て先のノードアドレスとの関係
を示す経路情報が記憶された記憶手段と、受信されたパ
ケットの宛て先と経路情報とに応じてスイッチング手段
を制御する制御手段と、その先に子ノードがいるポート
があればアービトレーションを行なう手段とを備え、シ
リアルバスを複数のセグメントに分割し、セグメント内
のノードについてセグメント毎にアービトレーションを
行なうようにしたことを特徴とするスイッチングノード
装置である。
【0017】スイッチングノードにより、IEEE13
94のバスが複数のセグメントに分割され、各セグメン
ト毎に、アービトレーションが行なわれる。このため、
各セグメント毎にパケットの伝送を行なうことができ、
セグメントが異なれば、パケットの伝送を同時に行なう
ことができる。また、バスをセグメント化することによ
り、各セグメント毎にノードの伝送速度が決まる。これ
により、IEEE1394のバス全体の転送量を増や
し、使用効率を向上させることができる。
【0018】
【発明の実施の形態】以下、この発明の実施の形態につ
いて図面を参照して説明する。図1は、この発明が適用
されたIEEE1394バスにより実現されたトポロジ
ーの一例を示すものである。
【0019】図1において、ノードM1〜M13は、I
EEE1394のノードである。ノードM1〜M13
は、具体的には、IEEE1394のインターフェース
を有するパーソナルコンピュータ、CD−ROMドライ
ブ、ハードディスクドライブ、スキャナ、ディジタルカ
メラ等である。これらの機器間でディジタルデータを伝
送するために、各機器間は、IEEE1394のディジ
タルインターフェースにより、図1に示すようなツリー
状のトポロジーで接続される。
【0020】IEEE1394では、電源投入時又はノ
ードの挿抜時に、コンフィグレーションが生じる。コン
フィグレーションでは、バスの初期化、ツリー識別、自
己識別の3つのフェーズで行なわれる。このプロセスで
ツリー式のトポロジーが形成され、物理ノード番号が各
ノードに割り振られ、管理レイヤが必要なノードに関す
る情報が送られる。
【0021】なお、後に詳述するように、IEEE13
94のインターフェースを有するノードM1〜M13の
うち、ノードM3、M6、M11は、ルータ機能を有す
るスイッチングノードとされている。スイッチングノー
ドは、IEEE1394バスをいくつかのセグメントに
分け、適宜、アービトレーションやパケットの中継処理
を行なうためのものである。
【0022】バスの初期化では、電源投入時又はノード
の挿抜時に、バスリセットが発生し、すべてのノードが
トポロジーに関する情報が消去される。バスがリセット
された後に分かる情報は、そのノードは2つ以上のノー
ドに接続されている「ブランチ」なのか、1つだけのノ
ードに接続された「リーフ」なのか、全く接続されてい
ない孤立している状態なのかということだけである。
【0023】なお、ツリー状のトポロジーで、ツリーの
末端となるノードはリーフ、それ以外のノードはブラン
チである。図1では、例えば、ノードM1はその下流に
ノードが接続されていないのでリーフであり、ノードM
2はその下流にノードM1があり、その上流にノードM
3があるので、ブランチである。
【0024】バスの初期化後に、ツリー識別が行なわれ
る。ツリー識別により、1つのノードがルートとされ、
全ての物理的な接続は、ルートのノードに向かうような
道筋となる。
【0025】ルートとなるノードの選択は、以下のよう
になされる。バスリセット後、各ノード毎に夫々決めら
れた時間が経過後、リーフのノードから順に、parent_
notifyという信号が出力される。ブランチのノードは、
各ポートからのparent_notifyを受け取る。ブランチノ
ードは、parent_notifyを受け取っていないポートが1
つになり、予めノード毎に夫々決められた時間が経過す
るまで待つ。時間が経過すると、ブランチノードは残っ
たポートにparent_notifyを出し、同時にparent_noti
fyを受け取ったポートにchild _notifyという信号を送
る。この作業が繰り返され、最後に全てのポートからpa
rent_notifyを受け取り、child _notifyを送り返した
ノードがルートとなる。
【0026】各ノードでは、ルート方向に接続されてい
るポートは「親ポート」、ルート方向から遠い方向に接
続されているポートは「子ポート」として扱われる。ま
た、接続されていないポートは、「切」として、アービ
トレーションには参加されない。このツリー識別のプロ
セスが終了されると、ツリー識別の完了となる。
【0027】図1に示す例では、ルートとなっているノ
ードは、ノードM4である。また、各ノードM1〜M1
3のポートに付加されている「p」又は「ch」は、そ
のポートは、親ノードに繋がっているか、子ノードに繋
がっているかを示したものである。
【0028】なお、ルートは、決まった1つに決定され
るものではない。各ノードの電源を入れるタイミングに
よっては、ルートがリーフになることもある。
【0029】自己識別では、各ノードがアドレスで使用
するphisical_IDを選択して、バス接続に関する管理情
報が作成される。この情報は、低レベルの電力管理シス
テムのトポロジーを構築するために必要とされる。
【0030】自己識別のプロセスでは、ルートノードか
ら始められる。ルートノードは、予め割り振られている
ポート番号の小さい方から順に、下位のノードにケーブ
ルの制御を渡す。ルートは、下位のノードがノード自体
のself-ID を割り当て、ident _doneをルートに対して
送信するのを待つ。ident _doneを受け取ると、ルート
ノードは次のノードに制御を渡し、全ての接続されたノ
ードの番号が決まれば、ルートノード自体の番号を決め
る。下位のノードも同様の方法で自己識別が行なわれ
る。子ポートがあれば、そのノードに制御を渡し、も
し、子ポートがないリーフノードであれば、ノード自体
の番号が決められる。
【0031】self-ID パケットには、phisical_IDや管
理情報などが含まれており、ベース速度で転送される。
self-ID パケットには、そのノードが持っているポート
の情報も含まれる。このため、self-ID パケットの数は
ポートの数に依存し、ポートの数が多ければパケットの
数も多くなり、1つのノードから最大4パケットまで送
信される。例えば、最初にself-ID パケットを送ったノ
ードは、phisical_IDを「0」とし、次にself-ID パケ
ットを送ったノードはphisical_IDが「1」となり、以
下、順次番号が選択される。
【0032】self-ID 内の管理情報には、リンクレイヤ
の電源を入れるために必要な電力のコードPOWER _CLAS
S 、各ポートの数と接続状況を示すp0から最大p26
まで、データ転送速度の限度を示すPHY _SPEED 、バス
リセットを発効したノードであるかを示すinitialed _
reset 等が含まれている。接続状況には、未接続、子ポ
ートに接続、親ポートに接続等がある。
【0033】なお、各ポートはバスリセット後に受け取
ったのself-ID パケット数を数えることにより、phisic
al_IDを決めることができる。このため、self-ID パケ
ットの情報を必要とするノードがself-ID パケットを復
号化する。したがって、必ずしも全てのノードがself-I
D パケットを復号化する必要はない。
【0034】図1中、各ノードM1、M2、... に示さ
れる番号#0、#1、... は、ノードのアドレスであ
る。また、各ノードM1、M2、... に示される括弧内
の数、S100、S400は通信速度を示している。
【0035】自己識別が完了すると、ノードはパケット
を送るための通常のアービトレーション方法を使用でき
る。各ノードは、アービトレーションによってバスを使
用する権利を得る。
【0036】アービトレーションとは、各ノードがシリ
アルバスを使用する権利を得るための方法である。アー
ビトレーションには、非同期アービトレーションと、ア
イソクロノスアービトレーションとがある。また、非同
期アービトレーションでは、フェアアービトレーション
が利用される。フェアアービトレーションでは、フェア
ネスインターバルという考えを基に、均等にバスが割り
当てられる。つまり、フェアネスインターバルでは、バ
ス上に信号が流れる期間と、サブアクションギャップと
呼ばれる短いアイドリング期間がいくつか合わさせられ
た期間、さらに、それに続くアービトレーションリセッ
トギャップからなっている。各サブアクションギャップ
の後に、次のバスの利用者を決めるためのアービトレー
ションが行なわれる。
【0037】各ノードには、以下のようにして、公正に
アクセス権が与えられる。つまり、アービトレーション
に参加するノードは、ひとつのフェアネスインターバル
に一度だけバスを利用する権利が与えられる。各ノード
には、ノード変数としてarb_enableという値がある。
この値があるときだけ間だけ、アービトレーションに参
加できる。
【0038】arb _enableはarb _reset _gap の期間
にセットされ、バスの利用者になったときにクリアされ
る。arb _enableがクリアされたノードは、次のフェア
ネスインターバル期間まで、つまり、arb _reset _ga
p が発生してarb _enableがセットされるまで、アービ
トレーションに参加できない。
【0039】アービトレーションに参加した最後のノー
ドがバスを利用し終わると、フェアネスインターバル期
間は終了する。この終了後は、アービトレーションに参
加したすべてのノードのarb _enableがクリアされるの
で、バスをアクセスすることができなくなる。
【0040】このアービトレーションを実際に行なうの
は、バス全体では、ルートに位置するノード(ノードM
4)であるが、この例では、後に説明するように、バス
を複数のセグメントに分けることができる。バスをセグ
メントに分割したときには、TreeIDによってその先に子
ノードがいると検出されたポートが、そのセグメントの
アービトレーションを行なう権限を持つ。このポートを
プロキシルートポート(proxy root port )と称するこ
とにする。
【0041】なお、CYCLE _START パケットは、本来の
ルートノード(ノードM4)が生成し、これをリーフに
向かって、スイッチングノード(ノードM3、M6、M
11)がプロキシルートポートから中継する。
【0042】アービトレーションでは、優先度の高いノ
ードが必ず勝ち、バスの使用権を得る。優先度の高いノ
ードは、従来では、ルートに近い方のノードである。こ
の例では、バスを複数のセグメントに分けることがで
き、このときには、そのセグメント内では、プロキシル
ートポートに近い方のノードが優先度の高いノードとな
る。
【0043】なお、アービトレーションは、上述のよう
に、フェアネスインターバルの考え方で行なっているた
め、アクセスできる機会は均等に与えられる。
【0044】アービトレーションでバスの権利が得られ
ると、サブアクションに移り、データの転送が実行され
る。非同期転送のサブアクションでは、データの転送
後、受信したノードは、その転送されたデータに対する
受信結果をack で返して応答する。すなわち、非同期パ
ケットを中継する際、要求パケットに対してはack _pe
nding 、応答パケットに対してはack _completeという
確認結果が返される。これにより、目的のノードにデー
タが転送されたことが確認される。
【0045】このように、図1に示したIEEE139
4のトポロジーでは、ノードM3、M6、M11がルー
タ機能を有するスイッチングノードとされている。この
ようなスイッチングノードM3、M6、M11を用いる
ことにより、以下に示すように、バスを複数のセグメン
トに分割して使用することができる。このことについ
て、以下に説明する。
【0046】ルータ機能を有するスイッチングノードM
3、M6、M11は、複数のポートと、各ポート間の接
続状態を設定するスイッチングブロックと、各ポートと
これに対応する宛て先のアドレスとの関係を示す経路表
が記憶すると共に、パケットバッファのためのメモリと
を有している。
【0047】図2は、このようなスイッチングノードM
3、M6、M11の一例を示すものである。図2に示す
ように、スイッチングノードは、複数のポートP0、P
1、P2、... を有している。スイッチングブロック1
1により、これらのポートP0、P1、P2、... の接
続状態が設定される。また、このスイッチングノードに
は、ノード全体の動作を制御するCPU(Central Proc
essing Unite)12と、経路表を記憶すると共に、パケ
ットバッファのためのメモリ13とが設けられる。経路
表には、各ポートとこれに対応する宛て先のアドレスと
の関係を示す経路が記されている。
【0048】図3、図4、及び図5は、スイッチングノ
ードM3、M6、及びM11に設けられる経路表の一例
である。
【0049】図1に示すように、スイッチングノードM
3のポートP0から先には、ノードM4、M5、M6、
M7、M9があり、これらのノードM4、M5、M6、
M7、M9のノードアドレスは、夫々、#12、#1
1、#10、#9、#8である。また、スイッチングノ
ードM3のポートP1から先には、ノードM2、M1が
あり、これらのノードM2、M1のノードアドレスは、
夫々、#1、#0である。また、スイッチングノードM
3のポートP2から先には、ノードM8、M11、M1
0、M12、M13があり、これらのノードM8、M1
1、M10、M12、M13のノードアドレスは、夫
々、#6、#5、#2、#4、#3である。これによ
り、図3に示すように、スイッチングノードM3におけ
る宛て先アドレス#0〜#12に対するポート番号の対
応表が作成され、これが経路表となる。
【0050】また、スイッチングノードM6のポートP
0から先には、ノードM5、M9、M4、M3、M2、
M1、M8、M11、M10、M12、M13があり、
これらのノードM5、M9、M4、M3、M2、M1、
M8、M11、M10、M12、M13のアドレスは、
夫々、#11、#8、#12、#7、#1、#0、#
6、#5、#2、#4、#3である。また、スイッチン
グノードM6のポートP1から先には、ノードM7があ
り、このノードM7の宛て先アドレスは#9である。こ
れにより、図4に示すように、スイッチングノードM6
における宛て先アドレス#0〜#12に対するポート番
号の対応表が作成され、これが経路表となる。
【0051】同様に、図5に示すように、スイッチング
ノードM11における宛て先アドレス#0〜#12に対
するポート番号の対応表が作成され、これが経路表とな
る。
【0052】なお、自己識別のフェーズで、SelfIDパケ
ットが転送される。上述の経路表は、SelfIDパケットの
中身を解析し、バス内のトポロジーを調べることにより
作成することもできるが、各SelfIDパケットをどのポー
トから受信したかを検出することにより、より容易に経
路表を作成することができる。
【0053】上述の図3〜図5の例では、宛て先のアド
レスに対するポート番号を経路表としているが、図6〜
図8に示すように、ポート番号に対する宛て先アドレス
を経路表としても良い。
【0054】このようにルータ機能を有するスイッチン
グノードM3、M6、M11を使うことにより、図9に
示すように、IEEE1394のバスを複数のセグメン
トに分割して使用することができるようになる。
【0055】図9に示すように、ノードM1と、ノード
M2とにより、セグメントAが構成される。このセグメ
ントAに繋がるスイッチングノードM3のポートP1は
子ノードに繋がっている。前述したように、ルータ機能
を有するスイッチングノードでは、その先に子ノードが
いると検出されたポートがそのセグメントのアービトレ
ーションを行なう権限を持つ。したがって、セグメント
A内では、スイッチングノードM3のポートP1がプロ
キシルートポートとなる。
【0056】セグメントA内では、プロキシルートポー
トとなっているスイッチングノードM3のポートP1が
アービトレーションを行なって、セグメントA内でのパ
ケットの伝送を行なう。セグメントA内でのパケットの
転送では、他のセグメントから独立して行なわれる。
【0057】セグメントA内のノードから、セグメント
Aの外にあるノードに対してパケットが送られるときに
は、スイッチングノードM3にある経路表(図3)が参
照される。そして、この経路表に従って、ポートが選択
される。
【0058】また、セグメントAの外からセグメントA
内にあるノードに対してパケットが送られてきたときに
は、スイッチングノードM3の経路表(図3)が参照さ
れる。そして、この経路表に従って、ポートが選択され
る。
【0059】ノードM4と、ノードM5と、ノードM9
により、セグメントBが構成される。このセグメントB
に繋がっているスイッチングノードM3のポートP0は
親ノードに繋がっている。また、セグメントBに繋がっ
ているスイッチングノードM6のポートP0は親ノード
に繋がっている。ルータ機能を有するスイッチングノー
ドでは、その先に子ノードがいると検出されたポートが
そのセグメントのアービトレーションを行なう権限を持
つので、これらのスイッチングノードM3のポートP0
及びスイッチングノードM6のポートP0は、何れも、
プロキシルートポートにはならない。このセグメントB
では、ルートであるノードM4がアービトレーションを
行なう。
【0060】セグメントB内では、ルートのノードM4
がアービトレーションを行なって、セグメントB内でパ
ケットの転送を行なう。セグメントB内でパケットの転
送では、セグメントB内で独立してパケットの伝送が行
なわれる。
【0061】セグメントB内のノードから、セグメント
Bの外にあるノードに対してパケットが送られるときに
は、スイッチングノードM3又はスイッチングノードM
6の経路表(図3、図4)が参照される。そして、この
経路表に従って、ポートが選択される。
【0062】また、セグメントBの外からセグメントB
内にあるノードに対してパケットが送られてきたときに
は、スイッチングノードM3又はM6の経路表(図3、
図4)が参照される。そして、この経路表に従って、ポ
ートが選択される。
【0063】ノードM7により、セグメントCが構成さ
れる。セグメントCと繋がれるスイッチングノードM6
のポートP1は子ノードに繋がっている。ルータ機能を
有するスイッチングノードでは、その先に子ノードがい
ると検出されたポートがそのセグメントのアービトレー
ションを行なう権限を持つ。したがって、セグメントC
内では、スイッチングノードM6のポートP1がプロキ
シルートポートとなる。
【0064】セグメントC内では、プロキシルートポー
トとなっているスイッチングノードM6のポートP1が
アービトレーションを行なって、セグメントC内でパケ
ットの転送を行なう。セグメントC内でパケットの転送
では、セグメントC内で独立してパケットの伝送が行な
われる。
【0065】セグメントC内のノードから、セグメント
Cの外にあるノードに対してパケットが送られるときに
は、スイッチングノードM6の経路表(図4参照)が参
照される。そして、この経路表に従って、ポートが選択
される。
【0066】また、セグメントCの外からセグメントC
内にあるノードに対してパケットが送られてきたときに
は、スイッチングノードM6の経路表(図4)が参照さ
れる。そして、この経路表に従って、ポートが選択され
る。
【0067】ノードM8により、セグメントDが構成さ
れる。セグメントDと繋がっているスイッチングノード
M3のポートP2は子ノードに繋がっている。これに対
して、セグメントDと繋がっているスイッチングノード
M11のポートP0は親ノードに繋がっている。ルータ
機能を有するスイッチングノードでは、その先に子ノー
ドがいると検出されたポートがそのセグメントのアービ
トレーションを行なう権限を持つ。したがって、セグメ
ントD内では、スイッチングノードM3のポートP2が
プロキシルートポートとなる。これに対して、スイッチ
ングノードM11のポートP0は、その先に親ノードが
繋がっているので、プロキシルートポートとはならな
い。
【0068】セグメントD内では、プロキシルートポー
トとなっているスイッチングノードM3のポートP2が
アービトレーションを行なって、セグメントD内でパケ
ットの転送を行なう。セグメントD内でパケットの転送
では、セグメントD内で独立してパケットの伝送が行な
われる。
【0069】セグメントD内のノードから、セグメント
Dの外にあるノードに対してパケットが送られるときに
は、スイッチングノードM3又はM11の経路表(図
4、図5)が参照される。そして、この経路表に従っ
て、スイッチングノードM3又はM6により、ポートが
選択される。
【0070】また、セグメントDの外からセグメントD
内にあるノードに対してパケットが送られてきたときに
は、スイッチングノードM3又はM11の経路表(図
4、図5)が参照される。そして、この経路表に従っ
て、ポートが選択される。
【0071】ノードM10により、セグメントEが構成
される。セグメントEと繋がっているノードM11のポ
ートP1は子ノードに繋がっている。ルータ機能を有す
るスイッチングノードでは、その先に子ノードがいると
検出されたポートがそのセグメントのアービトレーショ
ンを行なう権限を持つ。したがって、セグメントE内で
は、ノードM11のポートP1はプロキシルートポート
となる。
【0072】セグメントE内では、プロキシルートポー
トとなっているノードM11のポートP1がアービトレ
ーションを行なって、セグメントE内でパケットの転送
を行なう。セグメントE内でパケットの転送では、セグ
メントE内で独立してパケットの伝送が行なわれる。
【0073】セグメントE内のノードから、セグメント
Eの外にあるノードに対してパケットが送られるときに
は、ノードM11の経路表(図5)が参照される。そし
て、この経路表に従って、ポートが選択される。
【0074】セグメントEの外からセグメントE内にあ
るノードに対してパケットが送られるときには、ノード
M11の経路表(図5)が参照される。そして、この経
路表に従って、ポートが選択される。
【0075】ノードM12、M13により、セグメント
Fが構成される。セグメントFと繋がっているスイッチ
ングノードM11のポートP2は子ノードに繋がってい
る。ルータ機能を有するスイッチングノードでは、その
先に子ノードがいると検出されたポートがそのセグメン
トのアービトレーションを行なう権限を持つ。したがっ
て、セグメントF内では、ノードM11のポートP2が
プロキシルートポートとなる。
【0076】セグメントF内では、プロキシルートポー
トとなっているノードM11のポートP2がアービトレ
ーションを行なって、セグメントF内でパケットの転送
を行なう。セグメントF内でパケットの転送では、セグ
メントF内で独立してパケットの伝送が行なわれる。
【0077】セグメントF内のノードから、セグメント
Fの外にあるノードに対してパケットが送られるときに
は、ノードM11の経路表(図5)が参照される。そし
て、この経路表に従って、ポートが選択される。
【0078】セグメントFの外からセグメントF内にあ
るノードに対してパケットが送られるときには、ノード
M11の経路表が参照される。そして、この経路表に従
って、ポートが選択される。
【0079】例えば、ノードM1(ノードアドレス#
0)からノードM2(ノードアドレス#1)にパケット
を伝送するとする。ノードM1とノードM2は、共に同
じセグメントA内にある。したがって、この場合には、
スイッチングノードM3のポートP1がアービトレーシ
ョンを行なって、ノードM1からノードM2へのパケッ
トの転送が行なわれる。
【0080】このように、同一セグメントA内にあるノ
ードM1からM2にデータの伝送を行なうときには、セ
グメントA内で独立してパケットの伝送が行なわれる。
このため、他のセグメントで同時にパケットの伝送を行
なうことが可能である。
【0081】つまり、例えば、ノードM1からノードM
2にパケットを伝送すると同時に、ノードM12(ノー
ドアドレス#4)からノードM13(ノードアドレス#
3)にパケットの伝送を行なうとする。ノードM1とノ
ードM2は、共に同じセグメントA内にあり、ノードM
12とノードM13は共に同じセグメントB内にあり、
互いに異なるセグメントにあるので、ノードM1からノ
ードM2へのパケットの伝送とノードM12からノード
M13へのパケットの伝送を同時に行なうことができ
る。
【0082】また、セグメントの間をパケット伝送する
場合にも、同様に、そのパケットの伝送に使用されてい
ないセグメントでは、同時に、他のパケットを伝送する
ことができる。
【0083】例えば、ノードM1(ノードアドレス#
0)からノードM13(ノードアドレス#3)へのパケ
ットの伝送を行なう場合には、ノードM1からスイッチ
ングノードM3のポートP1へパケットが伝送され、ス
イッチングノードM3の経路表により、ポートP1から
ポートP2へ中継され、そのパケットは、ノードM8を
介して、スイッチングノードM11のポートP0に伝送
され、スイッチングノードM11の経路表により、ポー
トP0からポートP2へ中継され、そのパケットは、ノ
ードM11のポートP2からノードM13に伝送され
る。この場合、セグメントAと、セグメントDと、セグ
メントFとの間をパケットが伝送される。この時、これ
ら以外のセグメント、すなわち、セグメントB、セグメ
ントC、セグメントEでは、同時に、他のパケットを伝
送できる。例えば、ノードM1からノードM13へのパ
ケットの伝送を行なう場合には、これと同時に、ノード
M7(ノードアドレス#9)とノードM4(ノードアド
レス#12)との間で、パケットの伝送を行なうことが
可能である。
【0084】このように、各セグメント間でパケットを
伝送していくとき、非同期パケットを中継する際には、
各スイッチングノードにおいて要求パケットに対しては
ack_pending 、応答パケットに対しては、acks_compl
eteという確認パケットを代理で返送し、サブアクショ
ンをセグメント内で終了させ、送信権を他のノードに譲
渡させている。
【0085】例えば、ノードM1(ノードアドレス#
0)からノードM13(ノードアドレス#3)に、READ
_REQUEST のパケットの伝送を行なう場合には、スイッ
チングノードM3とスイッチングノードM11を経由す
る。この場合、図10Aに示すように、パケットが伝送
される。
【0086】つまり、スプリットトランザクションで
は、図10Aに示すように、ノードM1からREAD_REQU
EST のパケットが送信され、このREAD_REQUEST のパケ
ットがノードM1からスイッチングノードM3に送られ
る。このREAD_REQUEST のパケットがノードM1からス
イッチングノードM3に送られると、スイッチングノー
ドM3でack _pending が代理で返送される。そして、
スイッチングノードM3からスイッチングノードM11
にREAD_REQUEST のパケットが送られる。スイッチング
ノードM3からスイッチングノードM11にREAD_REQU
EST のパケットが送られると、スイッチングノードM1
1でack _pending が代理で返送される。そして、スイ
ッチングノードM11からノードM13にREAD_REQUES
T のパケットが届けられる。スイッチングノードM11
からノードM13にREAD_REQUESTのパケットが送られ
ると、ノードM13からack _pending が返送される。
【0087】ノードM13にREAD_REQUEST のパケット
が送られると、ノードM13は、このREAD_REQUEST の
パケットの要求に応じてREAD_RESPを応答をする。
【0088】ノードM13からのREAD_RESPのパケット
は、ノードM13からスイッチングノードM11に送ら
れる。ノードM13からスイッチングノードM11にRE
AD_RESPのパケットが送られると、スイッチングノード
M11からでack _completeが代理で返送される。そし
て、スイッチングノードM11からスイッチングノード
M3にREAD_RESPのパケットが送られる。スイッチング
ノードM11からスイッチングノードM3にREAD_RESP
のパケットが送られると、スイッチングノードM3から
でack _completeが代理で返送される。そして、スイッ
チングノードM3からノードM1にREAD_RESPのパケッ
トが送られる。スイッチングノードM3からノードM1
にREAD_RESPのパケットが送られると、ノードM1から
ack _completeが返送される。
【0089】また、ユニファイドトランザクションで
は、要求パケットに対して、スイッチングノードにより
応答パケットが生成される。
【0090】例えば、ノードM1からノードM13へ
に、WRITE _REQUEST のパケットの伝送を行なう場合に
は、図10Bに示すように、ノードM1からWRITE _R
EQUESTのパケットが送信され、このWRITE
_REQUEST のパケットがスイッチングノードM3に送ら
れる。WRITE _REQUEST のパケットがノードM1からス
イッチングノードM3に送られると、スイッチングノー
ドM3でack _pending が代理で返送される。そして、
スイッチングノードM3からスイッチングノードM11
にWRITE _REQUEST のパケットが送られる。スイッチン
グノードM3からスイッチングノードM11にWRITE _
REQUEST のパケットが送られると、スイッチングノード
M11でack _pending が代理で返送される。
【0091】そして、スイッチングノードM11は、WR
ITE _REQUEST のパケットを受け取ると、スイッチング
ノードM11からノードM13にWRITE _REQUEST のパ
ケットを届ける。
【0092】スイッチングノードM11からノードM1
3にWRITE _REQUEST のパケットが送られると、ノード
M13でack _completeが返送される。ack _complete
を受信したスイッチングノードM11は、WRITE _RESP
パケットを生成する。
【0093】また、スイッチングノードM11からのWR
ITE _RESPのパケットは、スイッチングノードM3に送
られる。スイッチングノードM11からスイッチングノ
ードM3にWRITE _RESPのパケットが送られると、スイ
ッチングノードM3からでack _completeが代理で返送
される。そして、スイッチングノードM3からノードM
1にWRITE _RESPのパケットが送られる。スイッチング
ノードM3からノードM1にWRITE _RESPのパケットが
送られると、ノードM1からでack _completeが返送さ
れる。
【0094】図11は、スイッチングノードM3、M
6、M11の動作を示すフローチャートである。
【0095】図11において、パケットを受信したら
(ステップST1)、パケットの種類が判断される(ス
テップST2)。ステップST2で、転送されてきたパ
ケットがCYICLE_START パケットであると判断された
ら、下流のノードに転送されて(ステップST3)、ス
テップST1にリターンされる。ステップST2で、転
送されてきたパケットが同期パケットであると判断され
たら、タイムスタンプを調整して他のポートにパケット
が転送される(ステップST4)。
【0096】ステップST2で、転送されてきたパケッ
トが非同期パケットであると判断されたら、宛て先アド
レスと経路表が参照され、そのパケットが転送不要か否
かが判断される(ステップST5)。送られてきたパケ
ットが転送不要なら、ステップST1にリターンされ
る。
【0097】送られてきたパケットを転送する必要があ
る場合には、そのパケットが要求パケットか応答パケッ
トかが判断される(ステップST6)。応答パケットな
ら、ack _complet が返送され(ステップST7)、経
路表で参照される宛て先ノードのポートへパケットが転
送され(ステップST8)、ステップST1にリターン
される。
【0098】ステップST6で、送られてきたパケット
が要求パケットなら、ack _pending が返送され(ステ
ップST9)、経路表で参照される宛て先ノードのポー
トへパケットが転送される(ステップST10)。但
し、非ブロードキャストの場合のみである。
【0099】そして、送信結果が判断され(ステップS
T11)、スプリットトランザクションの場合、ack _
pending を受信し、ステップST1にリターンされる。
ユニファイドトランザクションでWRITE _RESPONSEを生
成して(ステップST12)、ステップST1にリター
ンされる。
【0100】ところで、IEEE1394をセグメント
化して扱わない場合には、伝送速度は、経路上のノード
の最低速度で決まってしまう。図9のノードM1からノ
ードM13へ転送する場合、経路上の最低速度のノード
M1により律速されS100(100Mbit/秒)と
なる。
【0101】これに対して、この例では、各セグメント
毎に、独立してパケットが伝送される。したがって、各
セグメント毎に速度が決められる。なお、ノードの速度
は、IEEE1394の規格にあるSPEED _MAP と呼ば
れる速度管理機構により示される。
【0102】ノードM1は経路上の最低速度S100で
送信する。スイッチングノードM3は、次のスイッチン
グノードM11までの最低速度S400で転送する。ス
イッチングノードM11は、ノードM13までの最低速
度S200で転送する。
【0103】このように、IEEE1394をセグメン
ト化して扱わない場合には、伝送速度は経路上のノード
の最低速度で決まってしまうが、バスをセグメント化す
ると、各セグメント毎に伝送速度が変更可能であり、使
用効率が向上される。
【0104】なお、上述の例では、IEEE1394の
非同期伝送モードでパケットを伝送する場合について説
明したが、この発明は、他のシリアル通信でパケットを
伝送する場合にも同様に適用できる。
【0105】
【発明の効果】この発明によれば、スイッチングノード
により、IEEE1394のバスが複数のセグメントに
分割され、各セグメント毎に、アービトレーションが行
なわれる。このため、各セグメント毎にパケットの伝送
を行なうことができ、セグメントが異なれば、パケット
の伝送を同時に行なうことができる。また、バスをセグ
メント化することにより、各セグメント毎にノードの伝
送速度が決まる。これにより、IEEE1394のバス
全体の転送量を増やし、使用効率を向上させることがで
きる。
【図面の簡単な説明】
【図1】この発明が適用されたIEEE1394のトポ
ロジーの一例のブロック図である。
【図2】スイッチングノードの一例のブロック図であ
る。
【図3】経路表の一例の説明に用いる略線図である。
【図4】経路表の一例の説明に用いる略線図である。
【図5】経路表の一例の説明に用いる略線図である。
【図6】経路表の他の例の説明に用いる略線図である。
【図7】経路表の他の例の説明に用いる略線図である。
【図8】経路表の他の例の説明に用いる略線図である。
【図9】この発明が適用されたIEEE1394のトポ
ロジーにおけるセグメントの分割の説明に用いるブロッ
ク図である。
【図10】セグメント毎のサブアクションの説明に用い
る略線図である。
【図11】スイッチングノードの説明に用いるフローチ
ャートである。
【図12】従来のIEEE1394のトポロジーの一例
のブロック図である。
【符号の説明】
M3、M6、M11... スイッチングノード、P0、P
1、P2... ポート

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 複数のノードをシリアルバスを介して接
    続し、アービトレーションを行なって上記シリアルバス
    の使用権を割り当てて、上記複数のノード間でパケット
    を伝送するようにしたデータ伝送方法において、 アービトレーションを行なえるスイッチングノードによ
    り上記シリアルバスを複数のセグメントに分割し、 上記スイッチングノードにより上記セグメント内のノー
    ドについて上記セグメント毎にアービトレーションを行
    なうようにしたことを特徴とするデータ伝送方法。
  2. 【請求項2】 上記スイッチングノードは、経路情報を
    有し、上記経路情報に基づいて、受信したパケットの中
    継先を判断するようにした請求項1に記載のデータ伝送
    方法。
  3. 【請求項3】 上記スイッチングノードによりパケット
    を中継する際に、上記スイッチングパケットが確認パケ
    ットを返送するようにした請求項2に記載のデータ伝送
    方法。
  4. 【請求項4】 上記各セグメント内のノードの速度に基
    づいて、セグメント毎に最適な速度で中継を行なうよう
    にした請求項1に記載のデータ伝送方法。
  5. 【請求項5】 複数のノードをシリアルバスを介して接
    続し、アービトレーションを行なって上記シリアルバス
    の使用権を割り当てて、上記複数のノード間でパケット
    を伝送するのに用いられるスイッチングノードにおい
    て、 複数のポートと、 上記複数のポートを切り替えるスイッチング手段と、 上記複数のポートと宛て先のノードアドレスとの関係を
    示す経路情報が記憶された記憶手段と、 受信されたパケットの宛て先と上記経路情報とに応じて
    上記スイッチング手段を制御する制御手段と、 その先に子ノードがいるポートがあればアービトレーシ
    ョンを行なう手段とを備え、 上記シリアルバスを複数のセグメントに分割し、上記セ
    グメント内のノードについて上記セグメント毎にアービ
    トレーションを行なうようにしたことを特徴とするスイ
    ッチングノード装置。
  6. 【請求項6】 経路情報を有し、上記経路情報に基づい
    て、受信したパケットの中継先を判断するようにした請
    求項5に記載のスイッチングノード装置。
  7. 【請求項7】 上記スイッチングノードによりパケット
    を中継する際に、上記スイッチングパケットが確認パケ
    ットを返送するようにした請求項6に記載のスイッチン
    グノード装置。
  8. 【請求項8】 上記各セグメント内のノードの速度に基
    づいて、セグメント毎に最適な速度で中継を行なうよう
    にした請求項6に記載のスイッチングノード装置。
JP17958699A 1999-06-25 1999-06-25 データ伝送方法及びスイッチングノード装置 Pending JP2001007819A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17958699A JP2001007819A (ja) 1999-06-25 1999-06-25 データ伝送方法及びスイッチングノード装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17958699A JP2001007819A (ja) 1999-06-25 1999-06-25 データ伝送方法及びスイッチングノード装置

Publications (1)

Publication Number Publication Date
JP2001007819A true JP2001007819A (ja) 2001-01-12

Family

ID=16068329

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17958699A Pending JP2001007819A (ja) 1999-06-25 1999-06-25 データ伝送方法及びスイッチングノード装置

Country Status (1)

Country Link
JP (1) JP2001007819A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019219956A1 (en) 2018-05-18 2019-11-21 Ab Sandvik Materials Technology Tube inspection system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019219956A1 (en) 2018-05-18 2019-11-21 Ab Sandvik Materials Technology Tube inspection system
WO2019219955A1 (en) 2018-05-18 2019-11-21 Ab Sandvik Materials Technology Tube inspection system

Similar Documents

Publication Publication Date Title
US6445711B1 (en) Method of and apparatus for implementing and sending an asynchronous control mechanism packet used to control bridge devices within a network of IEEE STD 1394 serial buses
JP3663385B2 (ja) 非サイクル有向グラフで接続された構成要素間の通信方法
CA2503597C (en) Method and apparatus for unique address assignment, node self-identification and topology mapping for a directed acyclic graph
US8094678B2 (en) Method of and apparatus for providing reserved bandwidth to ethernet devices over switched ethernet including a home network wall plate having a combined IEEE 1394 and ethernet modified HUB
US6519657B1 (en) Method and device for identifying an active 1394A node attached to a 1394B network
US20090210548A1 (en) Method of and apparatus for providing isochronous services over switched ethernet including a home network wall plate having a combined ieee 1394 and ethernet modified hub
US7187655B1 (en) Information communication method and apparatus
US20020061025A1 (en) Data transmitting and receiving apparatus and data transmitting and receiving method
EP1150460A1 (en) Electronic equipment, and method for controlling state of physical layer circuit thereof
US7251703B1 (en) Method of time stamping to enable device bridging over dissimilar buses
US7933281B2 (en) Method of bus configuration to enable device bridging over dissimilar buses
JP3630971B2 (ja) データ通信方法、装置、システム、及び記憶媒体
EP1156423A2 (en) Information processing apparatus, information processing method and bridge utilizing the same
JP2001007819A (ja) データ伝送方法及びスイッチングノード装置
JP2004064665A (ja) データ転送装置及び送信装置及び受信装置及びそれらの制御方法
JP2003229857A (ja) シリアルバスシステム、シリアルバスの帯域管理機器および通信機器
JPH11177589A (ja) データ転送装置およびデータ転送装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP2001148710A (ja) タイムアウト制御装置、端末装置、タイムアウト制御システムおよびタイムアウト処理方法
JP2002366508A (ja) データ転送方法
JP2003198555A (ja) ネットワーク管理装置
JP2005044078A (ja) 通信方法、印刷装置及びホスト装置
JP2004289857A (ja) プリント方法、通信方法、プリント制御装置、及び通信制御装置
JP2006134222A (ja) 情報処理装置及び方法
WO2001011477A1 (en) Method and device for bus sharing
JPH11284649A (ja) ネットワークシステム及びネットワーク管理装置及び方法