JPH03139936A - 経路選択方法 - Google Patents

経路選択方法

Info

Publication number
JPH03139936A
JPH03139936A JP2247668A JP24766890A JPH03139936A JP H03139936 A JPH03139936 A JP H03139936A JP 2247668 A JP2247668 A JP 2247668A JP 24766890 A JP24766890 A JP 24766890A JP H03139936 A JPH03139936 A JP H03139936A
Authority
JP
Japan
Prior art keywords
node
tree
network
nodes
path
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.)
Granted
Application number
JP2247668A
Other languages
English (en)
Other versions
JP2505064B2 (ja
Inventor
Jr Leo J Bartolanzo
レオ・ジヨセフ・バートランゾ・ジユニア
Robert D Clouston
ロバード・ドナルド・クラウストン
John E Mcginn
ジヨン・アーネスト・マツクギン
William E Siddall
ウイリアム・エドワード・シダル
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH03139936A publication Critical patent/JPH03139936A/ja
Application granted granted Critical
Publication of JP2505064B2 publication Critical patent/JP2505064B2/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
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/48Routing tree calculation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/48Routing tree calculation
    • H04L45/488Routing tree calculation using root node determination

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 A、産業上の利用分野 本発明はデータ通信ネットワークに関し、さらに具体的
には、以前の経路選択動作中にキャッシュに記憶された
部分ツリーを使って、2つの7一ド間で好ましい経路を
選択するための技術に関するものである。
B、従来技術及びその課題 以下の説明では、データ通信ネットワークは、ネットワ
ーク・ノードと、通信リンクを介して相互接続された端
末ノード(エンド・ノードともいう。以下、同じ。)と
の集合体として一般的に定義することができる。ネット
ワーク・ノードは、それ自体とその隣接ノードとの間で
のメツセージの経路指定、2つのノード間でメツセージ
を伝送するための経路の選択、接続された端末ノードに
対するディレクトリ・サービスの提供等の、特定の機能
をネットワーク内で提供するデータ処理システムとして
特徴づけることができる。ノード間のリンクは、通常の
ケーブル接続等の永続通信すンクでも、ダイヤル呼出し
電話接続等、必要なときにだけ使用可能になるリンクで
もよい。端末ノードの例は、ネットワーク内の他のノー
ドに経路指定や経路選択やディレクトリ・サービスを提
供しない、表示端末、知能ワークステーション、印刷装
置等の装置である。ネットワーク・/−ド、端末ノード
、及びノード間のリンクを総称してネットワーク資源と
呼ぶ。ネットワーク内の種々のノード及びリンクの物理
的構成及び特性を、ネットワークのトポロジと呼ぶ。
ある端末ノードにいるユーザが別の端末ノードにいる別
のユーザとデータを交換するためには、ネットワークを
介して経路を確立しなければならない。その経路は、第
1のユーザがいる端末ノード(起点端末ノード)、第2
のユーザがいる端末ノード(宛先端末ノード)、多分1
つまたは複数のネットワーク・ノード、及び経路上のノ
ードを接続するリンクまたは伝送グループを含む。伝送
グループは通常、グループ内の個々のリンクよりも大き
な容量を存する単一の論理的リンクを形成する、同様の
特性をもつ1組の並列リンクとして定義される。以下の
考察では、伝送グループという用語は単一の物理的リン
クをも意味するものと仮定する。これらの用語は以下の
説明では同義に使用する。
理想的なネッ1−ワークでは、両ユーザ間の経路にどれ
だけ多くのノード及び伝送グループが含まれていようと
、第1のユーザから供給されたデータは、無料で、遅延
なしに、完全な信頼性及び完全な機密保護をもって第2
のユーザに伝送される。
あいにく、実際のデータ通信ネットワークはこれらの理
想的特性を欠いている。様々な量の遅延が異なる経路を
介して導入される可能性がある。ある皿の伝送グループ
が、他のものよりも多くの費用がかかったり多くの遅延
を導入したりすることがある。伝送されるデータの保全
性が、ある伝送グループ上で、他のものよりも良好に保
護されることがある。L記で論じなかったその他の「欠
点」も実際のネットワークには存在する。
実際のネットワークのノード及び伝送グループは異なる
特性を有するので、ノード及び伝送グループに重みを割
り当て、あるユーザから別のユーザへのネットワークを
通る最適のまたは重みが最小の経路を計算する際に、割
り当てられた重みを使用するのが常套手段である。この
重みは一般に、特定の7−ドまたは伝送グループがどれ
だけ厳密に所定の性能基準を溝だすかを示す。たとえば
、遅延特性のみに基づく重みが割り当てられた場合は、
高遅延の伝送グループは低遅延の伝送グループよりも大
きな重みを割り当てられることになる。
ある端末ノードにいる第1のユーザからネットワークを
介して別の端末ノードにいる第2のユーザに至る「最良
」の経路を決定する際に、ネットワーク・ノード(通常
、起点端末ユーザのために働くネッ!・ワーク・ノード
)は、可能な種々の経路におけるノード及び伝送グルー
プの重みを合計する。重み合計が最小の経路は最小重み
経路と呼ばれ、両ユーザ間の「最良の」経路と見なされ
る。
経路選択機能を実行するネットワーク・ノードは、ネッ
トワーク内の種々の7−ド及び伝送グループの特性及び
重みにアクセスしなければならない。
この情報は、ノードに記憶されたトポロジ・データベー
スの形を取る。
起点ノードからネットワーク内の他のノードへ延びる最
小重み経路は、ツリーによって表される。
このツリーは単に、経路上にあるノード、及びこれらの
ノードをそれぞれ経路上の次のノードに接続するのに使
用される伝送グループを示すマツプである。経路の計算
または選択中にツリーを作成するための周知の技術が2
つある。第1の技術によれば、所望の宛先に達するまで
1度に1つのノードのツリーだけを作成する。ツリーは
、両ユーザ間でセツションを確立するために使用された
後で放棄される。第2の技術によれば、ネットワーク全
体についてツリーを作成し、次に将来の経路選択動作で
使用できるようにキャッシュまたは記憶装置に記憶する
第1の技術の利点は、所望の宛先に達すると計算が終了
するので、特定のツリーを作成するために最小の計算し
か必要でないことである。第1の技術の欠点は、同じ2
つのノード間に同じ経路を何回確立する必要があっても
、経路を選択するたびにツリーを作成しなければならな
いことである。
非常に安定したネットワーク、すなわちネットワーク資
源の状況がほとんど変化しないようなネットワークでは
、第2の技術、すなわち、完全なネットワーク・ツリー
を作成し記憶する方法を採用するのが有利であり得る。
ツリーはキャッシュに記憶されるので、後続の経路選択
動作で使用することができる。しかし、非常に安定した
ネットワークでさえ、第2の手法に欠点がないわけでは
ない。
ネットワークが比較的複雑な場合は、最初にツリーを作
成するのに相当の時間を要する。近くの2つの7一ド間
でのセツションの確立は、完全なネットワーク・ツリー
が作成されるまで遅延される。
もっと重要な問題は、非常に安定であると特徴づけるこ
とができる通信ネットワークがほとんどないことである
。資源が頻繁にネットワークに追加され、あるいはネッ
トワークから除去される。たとえ特定の資源がネットワ
ークに留まっていても、他の資源の状況が変化する可能
性がある。これらの変化のあるものはネットワーク内の
好ましい、または重みが最小の経路を変更して、ネット
ワーク全体にわたるツリーを無効にする。したがって、
「実際の」ネットワークのための完全なネットワーク・
ツリーがしばしば古くなり、ルートから作成し直さなけ
ればならなくなる。前述のように、完全なツリーを作成
するには、時間及びネットワーク資源を要する。
C8課題を解決するための手段 本発明は、ネットワーク内の任意の2つのノードを接続
するツリーを作成するのに必要な計算の数を減らすもの
である。本発明はまた、通常のネットワーク動作中に作
成しなければならないツリーの数を減らすものである。
本発明は、ノード及び相互接続リンクを含むデータ通信
ネットワークで使用される。ネットワーク内のノードの
少なくとも1つは、ノード間の好ましい経路を計算し、
各経路計算の結果をツリーの形で記憶するための手段を
含む。本発明は、記憶されたツリーを使って、記憶され
たツリーに第2のノードが含まれているかどうかにかか
わらず、第1のノードから第2のノードに至る好ましい
経路を計算するのを支援する方法である。この方法は、
第1のノードを起点ノードまたはルート・ノードとして
をするツリーを検索するステップを含む。
検索されたツリーが第2の7−ドを含む場合は、それを
その記憶された形で使って、第2のノードへの好ましい
経路を決定する。検索されたツリーが第2のノードを含
まない場合は、ツリーを第2のノードまで延長する。次
に延長したツリーを使って、第1のノードから第2のノ
ードに至る好ましい経路を決定する。
D、実施例 第1図は、異なるノードが、それらのノードによって実
行される機能に基づいて区別されるタイプのデータ通信
ネットワークの概略図である。このネットワークは、端
末ノード(EN)及びネットワーク・ノード(NN)を
含む。前述のように、ネットワーク・ノードは、経路選
択や、接続された端末ノードに対するディレクトリ・サ
ービスの提供等の特定の機能を実行するデータ処理シス
テムとして特徴づけることができる。端末ノードもデー
タ処理システムを含むことができるが、経路指定や他の
7−ドに対するディレクトリ・サービスは行なわない。
ノードは、隣接ノーと間でデータを伝送するための物理
的または論理的媒体である、−時的または永続的リンク
または伝送グループによって接続することができる。第
1図を見るとわかるように、すべての端末ノードは、少
なくとも1つのネットワーク・ノー1!に接続されてい
る。端末ノードは複数のネットワーク・ノーとに接続す
ることができ、また同じネットワーク・ノードに対して
並列接続を有することもできる。たとえば、端末/−ド
10はネットワーク・ノード12に対するg3−リンク
、ならびにネットワーク・ノード14に対する並列リン
クを有する。端末ノードに対してディレクトリ・サービ
スまたは経路指定サービスを行なうネットワーク・ノー
ドを、その端末ノードのネットワーク・ノード・サーバ
(NNS)と呼ぶことがある。
経路選択処理について論じる際、ノードを、そのノード
がこの処理で果たす役割を定義する名前で呼ぶことがで
きる。起点ノードは通常、それ自体と第2の7−ドの間
で経路を確立するようにとの要求を開始する端末ノード
である。要求の目標は通常別の端末ノードであるが、宛
先ノードまたは単に宛先と呼ばれる。起点ノード及び宛
先ノードは通常、端末ノードであるが、ネットワーク・
ノードもそれらのどちらか一方または両方の役割を果た
すことができる。たとえば、ノード10で入力されたデ
ータが、端末ノード16との間でセツションを確立すべ
きことを示した場合は、端末ノード10は起点ノードと
して特徴づけられ、一方、端末ノード16は宛先ノード
として特徴づけられることになる。また、ネットワーク
・ノード12で実行されるプログラムが、ネットワーク
・ノード18への経路の確立を要求することができる。
その場合は、ネットワーク・ノード12は起点ノードに
なり、一方、ネットワーク・ノード18は宛先ノードに
なることになる。経路選択要求を出す起点端末ノードに
直接接続されたネットワークは、起点ネットワーク・ノ
ードまたはONNと呼ぶことがある。同様に、経路選択
要求の宛先である端末ノードに接続されたネットワーク
・ノードは、宛先ネットワーク・ノードまたはDNNと
呼ぶことがある。
ネットワーク・ツリーの作成において、他の用語が出て
くることがある。ツリーのルート・ノードとは、ツリー
がそこから始まるノードである。
目標ノードとは、ツリーが到達する最後のノードである
。ツリーのルート・ノード及び目1票ノードは、ルート
・ノードと目標ノードが同一ノードである自明の場合以
外は、それぞれ他の1つのノードに接続される。自明で
ない場合の他のノードは、2つの7−ドに接続された中
間ノードである。ツリー内のノードが3つ以上の他のノ
ードに接続されることはない。
第1図に示したタイプのネットワークでは、起点端末ノ
ードと宛先端末ノードの間で経路を確立する際に使用で
きるツリーが複数あることがある。
たとえば、端末ノード10と端末ノード20の間に経路
を確立する際は、少なくとも2本のツリーがある。一方
のツリーのルートはネットワーク・ノード12であり、
もう一方のツリーのルートはネッ)・ワーク・ノード1
4である。ネットワーク・ノード18及び22は共に、
ネットワーク・ノードのみから成るツリーの可能な目標
ノードである。
第2図は、ネッ)・ワーク・ノードがステージングまた
は連結された処理で経路を計算するように構成されたタ
イプのネットワークで実行される経路選択処理を示す。
起点端末ノードが複数のネットワーク・ノードに接続さ
れるか、または宛先端末ノードが複数のネット・ワーク
・ノードに接続されている場合は、起点端末ノードに対
してサービスを行なうネットワーク・ノードは、起点端
末ノードに接続されたすべてのネットワーク・ノードを
、宛先端末ノートに接続されたすべてのネットワーク・
ノーとに接続するツリーまたは経路を形成する。ネット
ワーク・ノード・サーバは次に、種々のツリーの重みを
、起点端末ノードをそのネットワーク・ノードに接続し
、宛先端末ノードをそのネットワーク・ノードに接続す
る様々なリンクの重みと連結する。この連結によって、
2つの端末ノード間の最小重み経路が得られる。
第2図は、第1図に示すタイプのネットワーク中の2つ
の端末ノード間の経路を選択する際に実行される処理全
体の流れ図である。前述のように、ネットワーク・ノー
ドのみが最初にツリーに含まれ、起点端末ノードに直接
接続されたネットワーク・ノードの数と同じだけのツリ
ーがある。任意の経路選択動作における最初のステップ
24は、起点ノード及び宛先ノードを識別することであ
る。
この情報は、この両ノードの間でセツションを確立しよ
うとするユーザ、またはそのようなセツションの要求を
出したアプリケー7ョン・プログラムが提供する。起点
ノードに直接接続されたネットワーク・ノードの第1の
リストが作成される(ステップ26)。そのようなノー
ドは、この説明や図面ではONNと呼ぶことがある。宛
先ノードに直接接続されたネットワーク・ノードの第2
のリストもステップ28で作成しなければならない。
2つのリストが作成されると、起点ネットワーク・ノー
ドの1つが選択され(ステップ30)、ネットワーク・
ノード・サーバが、選択されたONNがルート・ノード
となっている記憶されたツリーを含むかどうかを判定す
るための検査が行なわれる(ステップ32)。ツリーが
見つからなかった場合は、選択されたONNから第2の
リスト上の各DNHに至る新しいツリーを作成しなけれ
ばならない(ステップ34)。ステップ32で記憶され
たツリーが見つかった場合は、ツリーが、ステップ28
で作成されたリスト上のI) N Nをすべて含むかど
うか判定するため、さらに検査が行なわれる(ステップ
36)。ツリーが、識別されたDNNを含まない不完全
なまたは部分的なツリーであるとすると、次に、識別さ
れたDNNをすべて含むようにツリーを延長しなければ
ならない(ステップ38)。ツリーを延長するために取
らなければならないステップは後で説明する。
ブロック32.34.36.38で示される動作が完了
すると、選択されたONNから識別された各DNHに延
びるツリーが存在する。ツリーを新たに作成するか、ま
たはその元の記憶された形から延長した場合は、新しい
ツリーがキャッシュに記憶され(ステップ40)、選択
されたO N Nから各DNNへの最良のまたは重みが
最小の経路を選択するために使用される(ステップ42
)。
ステップ2θで生成されたリスト上のすべてのONNに
ついてこの処理が実行されたかどうか調べるため、検査
44が行なわれる。まだの場合は、別のONNを選択し
て、ステップ30から始めて動作シーケンスが繰り返さ
れる。
前の動作で作成されたツリーは、ONNから各DNNに
至る各経路を表す数値を含む。起点ノードから宛先ノー
ドに至る最適のまたは重みが最小の経路を選択するには
、これらの値を、起点ノードとONNの間及び宛先ノー
ドとDNNの間のリンクに対する既知の重みと組み合わ
さなければならない。この組合せまたは連結動作は、ブ
ロック46で示されている。
第2図では、端末ノードが経路選択動作を実行できない
ネットワークを仮定している。すべての7−ドが経路選
択動作を実行することができるネットワークの場合は、
同じ基本ステップが起点ノードによって実行されること
になる。リスト1は単一項目を有する。同様に、リスト
2も単一項目をイアする。そのようなネットワークでは
、第2rIIJに関して先に説明したプログラムが、単
一バスで最小重み経路を計算し、ループまたは反復は必
要でないことになる。
前述のように、キャッシュ記憶機構で見つかった既存の
ツリーを、可能なりNNをすべて含む、新しい延長され
たツリーの基礎として使■することができる。第3図は
、既存の部分ツリーを延長するために実行されるステッ
プの流れ図である。
この処理は、ステップ48で、キャンシュに記憶された
ツリーを呼び戻すことから始まる。記憶されたツリーが
呼び戻されると、ツリーに追加すべき次のノードを決定
するための一連のステップ(ブロック50で表す)が実
行される。ブロック50で表される動作は後で第4図に
関してさらに詳しく説明する。これらの動作は、それ自
体は通常の動作である。最小重みノードを追加すること
によってツリーが延長されると(ステップ52)、追加
されたノードが、識別された宛先ネットワーク・ノード
の1つであるかどうかを調べるため、検査54が行なわ
れる。追加されたノードが宛先ネットワーク・ノードで
ある場合は、可能な宛先ネットワーク・ノードがすべて
ツリーに組み入れられたかどうか判定するため、さらに
検査56が行なわれる。組み入れられていた場合は、処
理は終了する。組み入れられていない場合は、処理は動
作50から繰り返す。
追加されたノードが宛先ネットワーク・ノードでなかっ
たとすると、追加されたノードからツリーの作成を続行
するのが宵益かどうか判定するため、一連の動作が実行
される。これらの動作は、そのネットワーク・ノードを
通って宛先ノードに至る任意の既知の経路を、追加され
たノードを通、って確立される任意の経路と比較するも
のである。追加されたノードを通る経路が既に宛先ノー
ドへの既知の経路よりも大きな重みを有する場合は、追
加されたノードを通る経路の重みが常に宛先ノードに至
る既知の経路を上回るので、追加されたノードからツリ
ーを延長する利点は全くない。このステップ・シーケン
スは、可能な宛先ネットワーク・ノードを選択する動作
58から始まる。選択された宛先ネットワーク・ノード
に至る最良の現経路があるかどうか調べるため、検査6
0が行なわれる。動作60で選択された宛先ネットワー
ク・ノードを通る宛先ノードへの可能な経路が既に存在
することがわかった場合は、動作62で、追加されたノ
ードを通る経路の重みを現在の経路の重みと比較する。
追加されたノードを通る経路の重みが既知の現経路より
も大きい場合は、追加されたノーとが、このツリーに関
連する後続の経路計算で無視される(ブロック64)。
しかし、選択された宛先ネットワーク・ノードを通る宛
先ノードへの現経路がないか、または追加されたノード
を通る経路に割り当てられた重みがどの現在の経路の重
みよりも小さい場合は、同じタイプの比較を行なうべき
宛先ネットワーク・ノードが他にあるかどうか調べるた
め、検査66が行なわれる。他にも宛先ネットワーク・
ノードがある場合は、ステップ58から始まるステップ
・シーケンスを繰り返す。可能な宛先ネットワーク・ノ
ードがすべて考慮された場合は、ブロック5゜で始まる
ステップ・シーケンスにより、ツリーは単一ノードだけ
再び延長される。動作54及び56で可能な宛先ネット
ワーク・ノードがすべて既にツリーに追加されていると
きは、第3図によって定義される副処理は終了し、プロ
グラム制御は第2図のブロック38の出力点に戻る。
上述のように、ツリーを単一ノードだけ延長するため、
動作50で既知の動作が実行される。これらの動作は、
キャッシュに記憶された部分ツリーが延長されようと、
新しいツリーがその経路がら作成されようと、同じであ
る。第4図は、単一ブロック50内の諸ステップの流れ
図である。第4図によって定義される動作では2セツト
のノードを使用する。ノード・セットTは、既にツリー
にあるノードから成る。ノード・セットSは、既にツリ
ー内にあるノードに直接接続された他のノードを含む。
経路計算処理の最初のステップ(ブロック68)は、ツ
リーに追加された最後の7−ドを識別することである。
ツリーがない場合は、このノードはルート・ノードまた
は起点ネットワーク・ノードで表される。ステップ70
で、最後の(またはルート)ノードからのリンクの1つ
が選択され、このリンクが、その経路を介して確立され
るセツションのタイプに適しているかどうか判定するた
め、リンクの特性が検査される(ステップ72)。適当
な特性を備えたリンクは通常、正しいサービス・クラス
を有すると言われる。リンクの特性が受は入れられるも
のであるとすると、リンクの反対端にあるノードが既に
ツリーにあるかどうかを判定するため、検査74を行な
わなければならない。相手ノードがまだツリー内にない
とすると、選択されたノードから選択されたリンクを通
って相手ノードに至る経路の重みが計算され(ステップ
76)、経路情報及び重み値またはベクトルがセット5
に記憶される。ツリー内に選択されたノードからのリン
クが他にもあるかどうか調べるため、さらに検査が行な
われる(ステップ77)。他にもリンクがある場合は、
それらのリンクの1つが選択され、ステップ70から始
まる処理が繰り返される。
最初にステップ22で選択されたリンクの特性が受は入
れられないものであることがわがっていた場合、または
ステップ74で選択されたリンクに関する相手ノードが
既にツリー内にあったことが判明した場合は、そのリン
クを通る経路の重みを計算する試みは行なわれない。そ
の代り、プログラムは、リンクが他にあるかどうが調べ
るためステップ77の入力に直接分岐する。
ツリー・ノードからの受入れ可能な経路の重みがすべて
計算され、セット5に追加されると、それらの経路の重
みが比較される。セット5は、直前の一連の動作で確立
された経路、及び以前にツリーに追加された他のノード
に関して処理が実行されたときに確立され、保管された
経路を含むことができる。保管されたセットにおける最
小重み経路が選ばれ(ステップ79)、選択された経路
内のノードに至る他のすべての保管された経路は、第4
図によって定義される動作が終了する前に放棄される。
上述の処理を第5図及び第6図に関して例示する。第5
図は、中間ノードと共に起点ノードON及び宛先ノード
DNを含む通信ネットワークの概略図である。このネッ
トワークに関して2つの部分ツリーが以前に生成されて
いたものと仮定する。
第1の部分ツリーはノードA、B1Dを含む。第2の部
分ツリーはノードC,Gから成る。さらに、ノードON
にいるユーザが、ノードDNにいるユーザとセツション
を確立しようとするものと仮定する。
第5図では、考察される例が単純になるように、リンク
のみに数値重みが割り当てられている。普通は、各7−
ドにも数値重みが割り当てられるはずである。ノードの
重みを7−ドを通る任意の経路の重みに加えて、全経路
重みを決定する。
ノードONとノードDNの間の最小重み経路を選択する
際に、ノードON(ノードA及びノードC)に直接接続
されたノードが識別され、第1のリストに含まれる。同
様に、ノードDN(ノードE及びノードF)に直接接続
されたノードが識別され、第2のリストに含まれる。ノ
ードAまたはノードCを有するどの部分ツリーも識別さ
れ、キャッシュ記憶機構で検索される。この例では、部
分ツIJ −A B D及びCGがキャッシュ記憶機構
で検索される。このことはそれぞれ第6図の82及び8
4で示されている。以下の考察では、部分ツリーABD
をノードE及びFにまで完全に延長するために必要な動
作は、それらの動作が、ツリーCGに関して何らかの類
似動作が実行される前に完了した場合と同様に考察され
る。実際には、2つのツリーを延長するために必要な計
算は、プロセッサがインターリーブ・モードで実行する
ことが可能である。
本発明の一実施例によれば、ツリー内に既にあるノード
に直接接続された1セントのノード(セ・ソトS)をそ
のツリーと一緒に記憶することができる。本発明の別の
実施例では、部分ツリーがキヤ・ノシュで検索された後
、セットSが作り直される。
記憶されたツリーABDに関する初期セットSはノード
C,E1Fから成る。ツリー内に既にあるノードからセ
ットS内のノードに至る経路の重みが計算され、−時的
に保管される。このことは86に示されている。ノード
Eに至る経路は、保管されたセット中で最小の重みを有
するので、そのツリーがノードDを通ってEまで延長さ
れる(ブロック88)。ノードEに至るもう1つの経路
ABEは放棄される。延長されたツリーは90でボされ
ている。この例では、ツリー内のノードに直接接続され
たネットワーク・ノードはすべて既にセットS内にある
か、またはそれ自体がツリー内にあるので、新しいノー
ドがセットSに追加されることはない。−時的経路AB
DCとABDFの重みが比較される(ブロック92)。
後者の経路は小さい重みを宵するので、その経路上のノ
ードFがツリーに追加される(ブロック94)。ノード
Fのツリーへの追加により、ツリーは、両方の宛先ネッ
トワーク・ノードまで延び(96)、その経路重みは9
8に示されている。起点ノードONから宛先ノードDN
に至る全経路の重みを確定するには、これらのツリー経
路の重ろをONからA1及びノードEとFのそれぞれか
らDNに至る経路の重みと組み合わさなければならない
。この連結によって、経路重みが得られ(100)、ノ
ードONNからノードAを通ってノードDNHに至る最
も可能性が高い経路として経路ABDEが選択される(
102)。
部分ツリーCGに関しても同様の計算を行なわなければ
ならない。このツリー内の7−ドに直接接続されたノー
ドのセットSはノードD、F、Hから成る。104に示
すように、ツリー内に既にあるノードとセラ)S内のノ
ードとの間に幾つかのリンクがある。経路CFが最小の
重みを有する。
ツリーはノードCから直接ノードFに延長され(ブロッ
ク106)、経路CGFは放棄される。
延長されたツリーは108に示されている。セットSに
新しいノードは追加されない。
ノードFはリスト2上のノードの1つであることに留意
されたい。第3図に関して先に説明した処理の結果、ノ
ードF及びノードGを通って最終的に宛先ノードに至る
どの経路も、必然的に経路CFの重みよりも大きい重み
を有することがわかるはずである。そのため、ノードG
に直接接続されたノードは多分ノードFへの最小重み経
路の一部、となることはできず、将来の計算では無視さ
れることになる。
経路CDはそのセットにおける最小重み経路であるので
、ノードDがツリーに追加され(ブロック112)、1
14に示すような部分ツリーが得られる。Dが追加され
ると、ノードBとEから成るノードの新しいセットSが
得られる。ノードDを通ってそれらのノードに至る経路
の重みは116で示されている。ノードEへの経路が最
小の重みを有するので、ノードEがツリーに追加されて
(ブロック118)、ブロック120に示すツリーが得
られる。ツリーへのノードEの追加により、第2のリス
ト上の両方のノード(EとF)が、ノードCをルートと
するツリーに含まれる。
起点ノードONからルート・ノードCを通って宛先ノー
ドDHに至る経路の全重みを確定するため、経路重みが
連結され(122)、ルート・ノードCを通る起点ノー
ドと宛先ノードの間の最小mみ経路として、経路CFが
選択される(ブロック124)。
ルート・ノードCを通るネットワーク中の経路は、ルー
ト・ノードAを通るネットワーク中の経路よりも小さい
重みを有するので、経路Cを通る経路が、起点ノードと
宛先ノードの間の最小重み経路として最終的に選択され
る。
上述の計算はキャッシュに記憶された部分ツリーから始
まるので、これらのツリーをルート選択処理の一環とし
て完全に作り直す必要はない。記憶されたツリーは経路
から所望の宛先にだけ延び、ネットワーク全体を包含し
ないので、ネットワーク資源の状況の変化によってツリ
ーが無効になる機会は少ない。
第7図は、ネットワーク資源の状況が変化したとき、記
憶されたツリーを保持するかそれとも放棄するかを決定
する際に従うステップを示す。検査126でネットワー
ク資源が削除されており、かつその資源がツリーまたは
セットSのいずれかに含まれることがわかった場合は、
動作129で、ツリーはキャッシュから捨てられる。そ
うでない+R’=は、サービス・クラス定義の変化また
は資源の特性の変化によってそのツリーに含まれる任意
のノードの重みが変化したかどうか、検査128が行な
われる。サービス・クラスに変化があった場合は、この
ツリーは放棄される。変化がなかった場合は、リンク特
性が変化したかどうかさらに検査130が行なわれる。
リンク特性に変化がなかった場合は、維持処理は終了す
る。しかし、ネットワークのどこかでリンク特性が変化
した場合は、そのリンクがツリー内にあるか、またはツ
リー内。
のノードをセラ)S内のノードの1つに接続しているか
どうか、検査132が行なわれる。動作132でイエス
の結果が出た場合は、続いて、そのリンクのサービス・
クラスの重みが変わったかどうか、134で検査が行な
われる。変わった場合は、記憶されたツリーは放棄され
る。変わらなかった場合は、維持シーケンスが終了する
。更新されたリンクがツリー内にもなく、ツリー・ノー
ドをセットSノードに接続しているのでもない場合は、
並列リンクがそれらの要件を満たすかどうか調べるため
、さらに検査136が行なわれる。並列リンクがある場
合は、並列リンクのサービス・クラスが格下げされたか
どうか、検査138を行なわなければならない。並列リ
ンクのサービス・クラスが変更された場合は、そのツリ
ーは放棄される。
しかし、並列リンクがない場合、あるいは並列リンクの
サービス・クラスが格下げされていない場合は、リンク
の両端がツリー内またはセットS内にあるかどうか調べ
るため、さらに検査1.40が行なわれる。両端がツリ
ー内またはセットS内にある場合は、ツリーは放棄され
る。両端がそれらの中にない場合は、2つの7−ドの一
方のみがツリー内またはセットS内にあるかどうか検査
142が行なわれる。検査142の結果がNoの場合は
、どちらの7−ドもツリー内にもセットS内にもなく、
維持処理は終了する。検査142の結果がYESのt合
は、2つの7−ドのどちらか一方がツリー内またはセッ
トS内にある。ツリー内にあるノードが有限重みを有す
るか、またはルート・ノードであるか調べるため、検査
144が行なわれる。これらの条件のどちらも存在しな
い場合は、維持動作は終了する。どちらかの条件が存在
する場合は、ツリーは放棄される。
本発明の好ましい実施例について説明したが、当業者な
ら本発明の基本概念を知れば、それらの実施例の変形及
び変更を思いつくことができるはずである。したがって
、頭足の特許請求の範囲は、好ましい実施例のみならず
、本発明の真の精神及び範囲に含まれる変形及び変更を
も含むものと解釈すべきである。
E0発明の詳細 な説明したように本発明によれば、ネットワーク内の任
意の2つの7−ドを接続するツリーを作成するのに必要
な計算量が減ぜられ、また作成すべきツリーの数も減ぜ
られるという効果がある。
【図面の簡単な説明】
第1図は、本発明を実施することができるタイプのデー
タ通信ネットワークの概略図である。 第2図は、完全にまたは部分的に記憶可能なキャッシュ
記憶されたツリーを使った、経路選択の処理全体の流れ
図である。 第3図は、記憶された部分ツリーを延長するために実行
される具体的ステップの流れ図である。 第4図は、任意のツリーが作成されるとき、そのツリー
にもう1つノードを追加するために必要なステップの流
れ図である。 第S図は、異なる重みを有するリンクを示すネットワー
クの概略図である。 第6図は、部分ツリーが既にキャッシュに記憶されてい
る第5図のネットワークにおける経路選択処理を示す状
態図である。 第7図は、ネットワーク資源の変化に応じて、以前に記
憶したツリーを保持するかどうかを決定する際に使用さ
れる方法ステップの流れ図である。 10.16.20・・・・端末ノード、12.14.1
8.22・・・・ネットワーク・ノード。

Claims (6)

    【特許請求の範囲】
  1. (1)端末ノードと、所与のルート・ノードから所与の
    宛先ノードへの最小重み経路を有するツリーの形で経路
    指定情報を記憶する手段を含むネットワーク・ノードと
    を有するデータ通信ネットワークにおいて、ルート・ノ
    ードに対してサービスを行なうネットワーク・ノードで
    実行される、所与のルート・ノードから所与の宛先ノー
    ドへの経路を選択する方法であって、 (a)所与の宛先ノードに対してサービスを行なう各ネ
    ットワーク・ノードを識別するステップと、 (b)所与のルート・ノードに関するツリーが記憶域に
    既に存在するかどうかを判定するステップと、 (c)既存のツリーが、所与の宛先ノードに対してサー
    ビスを行なうすべてのネットワーク・ノードを含むかど
    うかを判定するステップと、 (d)既存のツリーが所与の宛先ノードに対してサービ
    スを行なうすべてのネットワーク・ノードを含む場合、
    既存のツリー内の最小重み経路を選択するステップと、 (e)宛先ノードに対してサービスを行なうすべてのネ
    ットワーク・ノードがツリーに含まれるまで、部分ツリ
    ーを延長するステップと、 (f)完成したツリーを使って最小重み経路を選択する
    ステップと を含む上記方法。
  2. (2)端末ノードと、ネットワーク内のルート・ノード
    と目標ノードの間の好ましい経路を表すツリーを計算し
    て記憶する手段を含むネットワーク・ノードとを有する
    データ通信ネットワークにおいて、記憶されたツリーに
    目標ノードが含まれていてもいなくても、ルート・ノー
    ドから目標ノードへの好ましい経路を計算する際に、ネ
    ットワーク・ノードで実行される、記憶されたツリーを
    使用して経路を選択する方法であって、 (a)目標ノードに接続された各ネットワーク・ノード
    を識別するステップと、 (b)ルート・ノードに接続されたネットワーク・ノー
    ドを含む任意の既存のツリーを記憶域から検索するステ
    ップと、 (c)既存のツリーが、目標ノードに接続されたすべて
    のネットワーク・ノードを含む場合は、その既存のツリ
    ーを使って、ルート・ノードに接続されたネットワーク
    ・ノードから、目標ノードに接続されたネットワーク・
    ノードへの好ましい経路を選択するステップと、 (d)既存のツリーが、目標ノードに接続されたすべて
    のネットワーク・ノードを含まない場合は、そのような
    ネットワーク・ノードがすべて含まれるまで、既存のツ
    リーを延長するステップと、 (e)延長されたツリーを使って、ルート・ノードに接
    続されたネットワーク・ノードから、目標ノードに接続
    されたネットワーク・ノードへの好ましい経路を計算す
    るステップと を含む上記方法。
  3. (3)複数のノードと、上記ノードの少なくとも幾つか
    を相互接続するリンクとを有し、上記ノードの少なくと
    も1つが、ノード間の好ましい経路を計算し各経路計算
    の結果をツリーの形で記憶する手段を含むように構成さ
    れたデータ通信ネットワークにおいて、記憶されたツリ
    ーに第2のノードが含まれているかどうかにかかわらず
    、第1のノードから第2のノードへの好ましい経路を計
    算する際に、記憶されたツリーを使用して経路を選択す
    る方法であって、 (a)第1のノードを起点ノードまたはルート・ノード
    として有するツリーを検索するステップと、 (b)検索されたツリーが第2のノードを含む場合は、
    そのツリーを使って第1のノードから第2のノードへの
    好ましい経路を決定するステップと、 (c)検索されたツリーが第2のノードを含まない場合
    は、そのツリーが第2のノードを含むまでツリーを延長
    するステップと、 (d)延長されたツリーを使って、第1のノードから第
    2のノードへの好ましい経路を決定するステップと を含む上記方法。
  4. (4)さらに、将来の経路計算で使用できるように、延
    長されたツリーを記憶するステップを含む、請求項3に
    記載の方法。
  5. (5)さらに、記憶されたツリーに含まれるノードの1
    つに直接接続されたネットワーク内の各ノードの識別を
    記憶するステップを含む、請求項4に記載の方法。
  6. (6)さらに、ネットワーク資源の状況の変化に応じて
    、記憶されたツリーを維持するステップを含み、上記維
    持ステップは、 (a)記憶されたツリーが、それが記憶されて以降にそ
    の状況が変化したネットワーク資源を含むかどうか判定
    するステップと、 (b)記憶されたツリーがその状況変化の影響を受けた
    かどうか判定するステップと、 (c)影響を受けたツリーをすべて記憶域から除去する
    ステップと を含む、請求項4に記載の方法。
JP2247668A 1989-10-13 1990-09-19 経路選択方法 Expired - Lifetime JP2505064B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US42142389A 1989-10-13 1989-10-13
US421423 1989-10-13

Publications (2)

Publication Number Publication Date
JPH03139936A true JPH03139936A (ja) 1991-06-14
JP2505064B2 JP2505064B2 (ja) 1996-06-05

Family

ID=23670448

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2247668A Expired - Lifetime JP2505064B2 (ja) 1989-10-13 1990-09-19 経路選択方法

Country Status (4)

Country Link
US (1) US5321815A (ja)
EP (1) EP0423053B1 (ja)
JP (1) JP2505064B2 (ja)
DE (1) DE69025846T2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8953492B2 (en) 2011-11-10 2015-02-10 Fujitsu Limited Route determination device, node device, and route determination method

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3043439B2 (ja) * 1990-12-28 2000-05-22 富士通株式会社 データ処理装置におけるネットワーク記憶方法
NL9200279A (nl) * 1992-02-14 1993-09-01 Nederland Ptt Werkwijze voor het detecteren van een routeringslus in een telecommunicatienetwerk, telecommunicatienetwerk voor toepassing van de werkwijze en detectiemiddelen voor toepassing in het telecommunicatienetwerk.
US5561790A (en) * 1992-03-24 1996-10-01 International Business Machines Corporation Shortest path determination processes for use in modeling systems and communications networks
CA2094410C (en) * 1992-06-18 1998-05-05 Joshua Seth Auerbach Distributed management communications network
US5438575A (en) * 1992-11-16 1995-08-01 Ampex Corporation Data storage system with stale data detector and method of operation
JP3084066B2 (ja) * 1993-12-24 2000-09-04 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン 情報ネットワークにおける帯域幅予約接続の経路指定
US5483674A (en) * 1994-01-07 1996-01-09 Cimet; Israel A. Method for establishing a logical connection between sites, site controllers, and a switching center in a radio communication system
US5694546A (en) 1994-05-31 1997-12-02 Reisman; Richard R. System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list
US5452294A (en) * 1994-07-05 1995-09-19 Motorola, Inc. Method and apparatus for adaptive route selection in communication networks
ZA9510190B (en) * 1994-11-30 1996-06-13 British Telecomm Routing in a communications network
JP2943677B2 (ja) * 1995-12-06 1999-08-30 日本電気株式会社 非同期転送モード通信方式における回線迂回制御システム
US6662205B1 (en) 1996-10-01 2003-12-09 International Business Machines Corporation Scaleable and extensible system management architecture with dataless endpoints
US6748446B2 (en) * 1996-11-29 2004-06-08 Canon Kabushiki Kaisha Communication method and apparatus with modification of routing path by intermediate relay apparatus
DE19715396A1 (de) * 1997-04-14 1998-10-15 Philips Patentverwaltung Übertragungssystem mit mehreren Netzelementen
US6584075B1 (en) * 1997-06-30 2003-06-24 Sun Microsystems, Inc. Efficient caching of routing information for unicast and multicast connections
US6412006B2 (en) * 1998-02-10 2002-06-25 3Com Corporation Method and apparatus for sending delay sensitive information assisted by packet switched networks
US6633544B1 (en) * 1998-06-24 2003-10-14 At&T Corp. Efficient precomputation of quality-of-service routes
US6185612B1 (en) 1998-10-29 2001-02-06 Novell, Inc. Secure distribution and use of weighted network topology information
US6275470B1 (en) 1999-06-18 2001-08-14 Digital Island, Inc. On-demand overlay routing for computer-based communication networks
JP3336614B2 (ja) * 1999-10-14 2002-10-21 日本電気株式会社 木構造通信路の設計方法、及び、通信路の木構造解
US7421486B1 (en) 2000-04-05 2008-09-02 Microsoft Corporation Context translation methods and systems
US7743074B1 (en) * 2000-04-05 2010-06-22 Microsoft Corporation Context aware systems and methods utilizing hierarchical tree structures
US7076255B2 (en) * 2000-04-05 2006-07-11 Microsoft Corporation Context-aware and location-aware cellular phones and methods
US7213048B1 (en) * 2000-04-05 2007-05-01 Microsoft Corporation Context aware computing devices and methods
US7096029B1 (en) 2000-04-05 2006-08-22 Microsoft Corporation Context aware computing devices having a common interface and related methods
US6944679B2 (en) 2000-12-22 2005-09-13 Microsoft Corp. Context-aware systems and methods, location-aware systems and methods, context-aware vehicles and methods of operating the same, and location-aware vehicles and methods of operating the same
US7493565B2 (en) * 2000-12-22 2009-02-17 Microsoft Corporation Environment-interactive context-aware devices and methods
US7072956B2 (en) * 2000-12-22 2006-07-04 Microsoft Corporation Methods and systems for context-aware policy determination and enforcement
WO2003015376A1 (en) * 2001-08-04 2003-02-20 Kontiki, Inc. Method and apparatus for dynamically configuring network communication parameters for an application
US10489449B2 (en) 2002-05-23 2019-11-26 Gula Consulting Limited Liability Company Computer accepting voice input and/or generating audible output
US8611919B2 (en) 2002-05-23 2013-12-17 Wounder Gmbh., Llc System, method, and computer program product for providing location based services and mobile e-commerce
JP3997844B2 (ja) * 2002-06-12 2007-10-24 日本電気株式会社 経路計算方法、経路計算プログラム及び経路計算装置
US7401132B1 (en) * 2002-12-20 2008-07-15 Symantec Operating Corporation Method and system for creating a peer-to-peer overlay network
US7359905B2 (en) * 2003-06-24 2008-04-15 Microsoft Corporation Resource classification and prioritization system
US20040267875A1 (en) * 2003-06-30 2004-12-30 Hennessey Wade L. Method and apparatus for establishing peering rules for distributed content delivery
US7450524B2 (en) * 2003-06-30 2008-11-11 Kontiki, Inc. Method and apparatus for determining network topology in a peer-to-peer network
US8300798B1 (en) 2006-04-03 2012-10-30 Wai Wu Intelligent communication routing system and method
JP5108956B2 (ja) * 2008-11-19 2012-12-26 日本電信電話株式会社 経路計算順決定方法、プログラムおよび計算装置
WO2010058797A1 (ja) * 2008-11-19 2010-05-27 日本電信電話株式会社 経路計算方法、プログラムおよび計算装置
US20150195189A1 (en) * 2014-01-07 2015-07-09 Alcatel Lucent Usa, Inc. Multiple tree routed selective randomized load balancing
US11436507B2 (en) 2019-11-21 2022-09-06 International Business Machines Corporation Normalizing weights of weighted tree leaf nodes

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3703006A (en) * 1970-10-28 1972-11-14 Collins Radio Co Algorithm for synthesizing economical data communication network
US4466060A (en) * 1982-02-11 1984-08-14 At&T Bell Telephone Laboratories, Incorporated Message routing in a computer network
DE3687400T2 (de) * 1985-11-04 1993-07-15 Ibm Digitale nachrichtenuebertragungsnetzwerke und aufbau von uebertragungswegen in diesen netzwerken.
US4914571A (en) * 1987-06-15 1990-04-03 International Business Machines Corporation Locating resources in computer networks
US4987536A (en) * 1988-05-12 1991-01-22 Codex Corporation Communication system for sending an identical routing tree to all connected nodes to establish a shortest route and transmitting messages thereafter
US4873517A (en) * 1988-06-23 1989-10-10 International Business Machines Corporation Method for selecting least weight end node to end node route in a data communications network

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8953492B2 (en) 2011-11-10 2015-02-10 Fujitsu Limited Route determination device, node device, and route determination method

Also Published As

Publication number Publication date
JP2505064B2 (ja) 1996-06-05
DE69025846T2 (de) 1996-09-26
EP0423053A3 (en) 1994-10-19
US5321815A (en) 1994-06-14
EP0423053A2 (en) 1991-04-17
EP0423053B1 (en) 1996-03-13
DE69025846D1 (de) 1996-04-18

Similar Documents

Publication Publication Date Title
JPH03139936A (ja) 経路選択方法
JP4394759B2 (ja) 複製データベースに対する問合せ方法及びこの方法を利用したネットワーク
CN100409618C (zh) 确定网元的连接性解决方案的技术
EP0348328B1 (en) Method of selecting least weight routes in a communications network
US6041049A (en) Method and apparatus for determining a routing table for each node in a distributed nodal system
US7000011B1 (en) Designing interconnect fabrics
JPH0241053A (ja) データ通信ネツトワークにおけるルート選択方法
US6188695B1 (en) System and method for multi-node data synchronization
JPH07273760A (ja) オンライン永久仮想回路をルーティングするための方法
JPH0685819A (ja) コンピュータシステム
JPH07271688A (ja) 多数の仮想回路を決定する方法
CN1167554A (zh) 通信网络中的路由选择
CN110601994B (zh) 云环境下微服务链感知的负载均衡方法
US7308494B1 (en) Reprovisioning technique for an interconnect fabric design
US20030065758A1 (en) Module-building method for designing interconnect fabrics
US8954445B2 (en) System and method for efficiently representing and managing a computer facility
US6067573A (en) Technique for reducing the flow of topology information in a computer network to only nodes that require the information
US20040122944A1 (en) Method and system of locating computers in distributed computer system
JPH05328421A (ja) コンピュータ制御された電話交換方式
CN113610530A (zh) 跨新旧系统的账户多级联动系统及方法
CN100393067C (zh) 同步数字体系设备业务自动配置路由选择方法
JP2003174476A (ja) 帯域管理装置及び帯域管理方法
Pesic et al. Three heuristics for improving centralized routing in large long-haul computer communication networks
JPH0715469A (ja) ルーチングデータ自動生成機能
IL147422A (en) Technique of determining connectivity solutions for network elements