JP3575682B2 - Packet transmission network path control method and recording medium recording the program - Google Patents

Packet transmission network path control method and recording medium recording the program Download PDF

Info

Publication number
JP3575682B2
JP3575682B2 JP2000246673A JP2000246673A JP3575682B2 JP 3575682 B2 JP3575682 B2 JP 3575682B2 JP 2000246673 A JP2000246673 A JP 2000246673A JP 2000246673 A JP2000246673 A JP 2000246673A JP 3575682 B2 JP3575682 B2 JP 3575682B2
Authority
JP
Japan
Prior art keywords
node
ant
packet
adjacent
destination
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2000246673A
Other languages
Japanese (ja)
Other versions
JP2002064538A (en
Inventor
康則 鮫島
敏明 宮崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2000246673A priority Critical patent/JP3575682B2/en
Publication of JP2002064538A publication Critical patent/JP2002064538A/en
Application granted granted Critical
Publication of JP3575682B2 publication Critical patent/JP3575682B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、パケット伝送ネットワークの中継などに利用される経路制御方法に関し、特に隣接ノードを識別する蟻、中継ノードの探索を行う蟻を導入したアントネットアルゴリズムを用いる経路制御方法およびそのプログラムを記録した記録媒体に関する。
【0002】
【従来の技術】
従来より、蟻エージェントを用いたアントネットアルゴリズムに関する提案としては、例えば“Mobile Agents for Adaptive Routing”(Gianni Di Caro and Marco Dorigo,in Proc.of the 31st Hawaii Int’1Conf.on Systems Sciences,pp.6−9,Jan.,1998)では、アントネットアルゴリズムを提案している。また、特願平10−285458号明細書および図面に記載された『ルータ装置の制御方法及び制御装置』(ATR)では、アントネットアルゴリズムに基づくルータ装置において、ルーチングロックを回避する手法を提案している。
上記の従来技術においては、予め決まったネットワーク・トポロジ(網形態)に対するアルゴリズムを提案しているが、複数のノードが隣接ノードを知らない初期状態の場合には、隣接ノードのルーチングテーブルへの登録方法が明らかではなかった。また、経路を知らないノードにパケットを伝送する方法も、明らかではなかった。
【0003】
【発明が解決しようとする課題】
前述のように、従来の方法では、パケット伝送ネットワークを介して出発ノードから宛先ノードに向けてパケットを送信する場合に、各ノードのルーチングテーブルをアントネットアルゴリズムに基づいて学習により構築することにより、出発ノードおよび出発ノードから発せられたパケットを受け取ったノードは上記ルーチングテーブルを参照して、そのパケットをルーチングするが、これは予め決まったネットワーク・トポロジの場合であって、任意のノードが隣接ノードを知らない初期状態では、隣接ノードに関する情報をルーチングテーブルへ登録する方法が明らかではなく、またルーチングテーブルにエントリのない宛先ノードへパケットを伝送する方法も明らかではなかった。
【0004】
そこで、本発明の目的は、これら従来の課題を解決し、ルーチングテーブルをアントネットアルゴリズムに基づき学習により構築し、出発ノードおよび出発ノードから発せられたパケットを受け取ったノードがそのルーチングテーブルを用いて該パケットをルーチングする場合に、各ノードが隣接ノードを知らない初期状態から徐々にルーチングテーブルを生成することができ、かつ出発ノード、または出発ノードから発せられたパケットを受け取ったノードが、自己のルーチングテーブルにエントリのない宛先ノードへもパケット伝送を行うことが可能なパケット伝送ネットワークの経路制御方法を提供することにある。
【0005】
【課題を解決するための手段】
上記目的を達成するため、本発明のパケット伝送ネットワークの経路制御方法は、▲1▼パケット伝送ネットワークを介して出発ノードから宛先ノードに向けてパケットを送信する場合に、各ノードのルーチングテーブルをアントネットアルゴリズムに基づき学習により構築するとともに、上記出発ノードおよび該出発ノードから発せられたパケットを受け取ったノードは該ルーチングテーブルを用いて該パケットをルーチングする経路制御方法において、
該複数のノードが隣接ノードを知らない初期状態の場合に、各ノードは自ノードのIDを含んだ『隣接識別蟻』を全リンクに送出し、
かつ、該『隣接識別蟻』を受け取った隣接ノードは、該『隣接識別蟻』の中のノードIDを見ることにより、該リンクにより隣接するノードが何かを識別し、
各隣接ノードは、該隣接ノードのルーチングテーブルに自分に隣接するノードのIDを書き込むことを特徴としている(請求項1)。
これにより、パケット伝送ネットワークを構成する各ノードが隣接ノードを知らない初期状態に、各ノードが自ノードのIDを含んだ『隣接識別蟻』を全リンクに送出することで、隣接ノード双方において相手を認識することができ、その結果、ノードの追加などのトポロジ変化に対応することができる。
【0006】
また、▲2▼出発ノードまたは出発ノードから発せられたパケットを受け取ったノードのルーチングテーブルに、宛先ノードIDの記録がない場合には、
該ノードは、該宛先ノードIDを含む『中継ノード探索蟻』を該パケットが通ったリンク以外の全てのリンクに送出し、
該『中継ノード探索蟻』を受け取ったノードは、該宛先ノードIDを見ることにより、自分のルーチングテーブル中に該宛先ノードIDがないときには、改めて該『中継ノード探索蟻』を該『中継ノード探索蟻』が通ったリンク以外の全リンクに送出し、
自分のルーチングテーブル中に該宛先ノードIDがあるときには、該宛先ノードIDを持っているノードの情報と、該『中継ノード探索蟻』を送出したノードから、該宛先ノードIDを持っているノードまでの遅延情報と、を持った該『中継ノード探索蟻』を、もとの来た経路を通って該『中継ノード探索蟻』を送出したノードまで送り返すことも特徴としている(請求項2)。
これにより、各ノードが予め全てのノードの情報を持つ必要がなく、パケット伝送の必要な際に宛先のエントリを作成することができる。
▲3▼上記▲1▼または▲2▼に記載の処理ステップをプログラムに変換し、そのプログラムを記録媒体に格納することも特徴としている。
これにより、任意のコンピュータに記録媒体を実装することで、本発明を容易に実現できる。
【0007】
【発明の実施の形態】
以下、本発明の実施例を、図面により詳細に説明する。
図1は、各蟻のパケット構成例を示す図である。
図1(a)は『隣接識別蟻』のパケットのデータ内容を示しており、蟻識別子10と送信元ノードのID11が記述されている。図1(b)は『隣接識別蟻』を受け取ったノードが返送する『応答蟻』のパケットのデータ内容を示しており、これも蟻識別子10(前記蟻識別子とは異なる値)と送信元ノード(隣接識別蟻を受け取ったノード)のID11が記述されている。図1(c)は『中継ノード探索蟻』のパケットのデータ内容を示しており、蟻識別子10(他の2つの蟻識別子と異なる値)と送信元ノードのID11と、宛先ノードのID12と、シーケンス番号13と、スタックデータとして、通過ノードのID14とトリップ時間15(1つ前のノードから『通過ノード』までの伝搬遅延時間)と、その他のデータ16(通過ノード数(中継ノードも含む)に宛先ノード(1つ)を加えた分のスタックデータ)とが記述されている。シーケンス番号13は、異なる『中継ノード探索蟻』を識別するために送出元が付ける。なお、『中継ノード探索蟻』において、従来の蟻と比較して太枠内のシーケンス番号13が本発明で新たに必要な項目である。
本発明においては、『隣接識別蟻』を導入することにより、隣接ノードの認識ができるので、ネットワークトポロジ(網形態)の変更、つまりノードの追加にも対応可能となる。また、『中継ノード探索蟻』を導入することにより、予め全てのノード情報を持たなくても、パケット伝送に必要な宛先エントリの作成が可能となる。
【0008】
(第1の実施例)
図2は、本発明の第1の実施例(請求項1に対応)を示すリンクアップ(応答蟻無し)時の各ノードの処理フローチャートである。
ここで、応答蟻無しとは、リンクの両端ノード(出発ノード)でリンクアップ検知が可能な場合に限定される。
先ず、ノードが立ち上がったならば、またはリンクアップしたならば(ステップ101)、リンクの両端のノードは隣接ノードを知るために、自ノードIDを含む『隣接識別蟻』を該リンクに送出する(ステップ102)。隣接ノードからの『隣接識別蟻』を受け取ったならば(ステップ103)、他の処理に比べて最優先で出発ノードIDを自分のルーチングテーブルに反映する。また、本蟻の送受信が終了しないうちは、本リンクを使用した蟻やデータパケットの送受信は行わない。各隣接ノードは、受信した『隣接識別蟻』の出発ノードIDのノードに対する確率を、本蟻が受信されたリンクに対して1/(受信したリンク数)とし、他のリンクを0とすることで(ステップ104)、リセット(リターン)する(ステップ105)。
【0009】
図3(a)は、本発明の第1の実施例(請求項1に対応)を示すリンクアップ(応答蟻有り)時の処理フローチャートである。
先ず、ノードが立ち上がったならば、またはリンクアップしたならば(ステップ111)、リンクアップを検知したノードは隣接ノードを知るために、自ノードIDを含む『隣接識別蟻』を該リンクに送出する(ステップ112)。隣接ノードからの『隣接識別蟻』または『応答蟻』を受け取ったならば(ステップ114)、他の処理に比べて最優先で出発ノードIDを自分のルーチングテーブルに反映する。また、本蟻の送受信が終了しないうちは、本リンクを使用した蟻やデータパケットの送受信は行わない。そして、受信した『隣接識別蟻』または『応答蟻』の出発ノードIDに対する確率を、本蟻が受信されたリンクに対して1/(受信したリンク数)とし、他のリンクを0とすることで(ステップ114)、受け取った蟻が『応答蟻』であればリセット(リターン)する(ステップ119)。一方、受け取った蟻が『隣接識別蟻』であれば(ステップ115)、それに対して自ノードIDを含んだ『応答蟻』を返送する(ステップ116)。そして、リセット(リターン)する(ステップ119)。
【0010】
図3(b)は、応答蟻生処理のフローチャートである。
隣接ノードがリンクアップを検知しない場合には、『応答蟻生成処理』を行って、隣接ノードに対するエントリを生成し、応答蟻を返送する。
すなわち、ノードが『隣接識別蟻』を受信したならば(ステップ151)、該ノードに対する確率は蟻を受信したリンクに対して1/(受信したリンク数)とし、他を0とする(ステップ152)。次に、自ノードIDを含んだ応答蟻を返送する(ステップ153)。そして、リセット(リターン)する(ステップ154)。
【0011】
図4(1)(2)は、図2,3におけるリンクアップ時の処理例を示す図である。
ここで、図中のルーチングテーブルのエントリの記載方法について説明すると、a,n Pは、リンクnに対する宛先a宛のパケットの送出確率Pを意味している。
図4(1)は、図2に示した『応答蟻』無しの場合の処理である。ノードbとノードd間、およびノードcとノードd間において、リンクアップによって『隣接識別蟻』が双方から送出される場合を示している。ノードb,d、ノードc,dの双方から『隣接識別蟻』が送出され、それを受け取ったノードは、ルーチングテーブルにその蟻内に示されたノードIDを追加し、かつリンク毎の送出確率を設定する。ここでは、『隣接識別蟻』を受け取ったリンクに対する確率を1.0、他の合計を0.0とする。また、他のノードを宛先とする該リンクに対する送出確率を設定する。ここでは、0.0とする。具体的な確率値は、実装時に変更可能とする。
この場合のノードbのルーチングテーブルには、最初は宛先a,リンク2の確率が1.0、宛先c,リンク2の確率が1.0、のみ登録されていたが、ノードdからの『隣接識別蟻』のノードIDの登録により、宛先d,リンク1の確率が1.0、宛先d,リンク2の確率が0.0、宛先a,リンク1の確率が0.0、宛先c,リンク1の確率も0.0が追加されている。ノードc、ノードdのルーチングテーブルについても、ノードbと全く同じようにして、受け取った『隣接識別蟻』からノードIDと送出確率を設定する。
【0012】
図4(2)は、図3に示した『応答蟻』有りの場合の処理である。立ち上がったノードdから『隣接識別蟻』がノードb側とノードc側の双方に送出され、それを受け取ったノードb,cからは、それに対して自ノードIDを含んだ『応答蟻』を返送する。他の処理は図4(1)と同じである。なお、本実施例では、リンクの片側のノードdのみがリンクアップ検知が可能であるため、ノードdからのみ『隣接識別蟻』を送出したが、変形例として、双方から『隣接識別蟻』を送出し、それに対して双方から『応答蟻』を返送することも可能である。
図4(1)(2)のルーチングテーブルから明らかなように、『応答蟻』有りと無しとではテーブルは全く同じ内容になる。
【0013】
(第2の実施例)
図5は、本発明の第2の実施例(請求項2に対応)を示す新規経路生成に関する処理フローチャートである。
図5(a)は『中継ノード探索蟻』の前進蟻の処理を示し、図5(b)は新規経路生成を必要とするノードの処理を示し、図5(c)『中継ノード探索蟻』の後退蟻の処理を示す。なお、中継ノードとは、通過ノードとして前進蟻が到着したノードで、最初に宛先ノードへの経路を知っているノードのことである。
前進蟻の処理では、『中継ノード探索蟻』を受け取ったノードは、宛先ノードへの経路を持っていないことを知ったとき、それが通ってきたリンク以外の全リンクに『中継ノード探索蟻』の前進蟻を送出することで、中継ノードを検知する。また、後退蟻の処理では、中継ノードが、いま来た経路を出発ノードに至るまで『中継ノード探索蟻』の後退蟻を送出する。
先ず、図5(b)における『新規経路生成の処理』では、データパケットの出発ノード、または出発ノードから発せられた該パケットを受け取ったノードが、経路を知らない宛先ノードへ、または確率0のノードへ該パケットを送る場合には(ステップ131)、パケットを時間t(0より大きな値、必要に応じて決める)の間、一旦、キューイングしておき、自分のID(送信元ノードID)と宛先ID、さらにシーケンス番号を載せて宛先へのパケットを中継するノードを探索する蟻『中継ノード探索蟻』をパケットが到着したリンク以外の全てのリンクへ送出する(ステップ132)。以下、前進蟻の処理になる。
【0014】
前進蟻の処理では、図5(a)に示すように、任意のノードが『中継ノード探索蟻』の前進蟻を受信したならば(ステップ121)、同一の送信元、シーケンス番号の蟻を既に受信したか否かを判別し(ステップ122)、受信していれば、今受信した蟻を捨てる(ステップ123)。一方、受信していなければ、自分のルーチングテーブルに送信元ノードIDがなければ、それを自分のルーチングテーブルに追加する(確率は1/リンク数)。また、送信元とシーケンス番号のペアでその蟻を覚えておくこととする(ステップ124)。これにより、ループを回避すると共に、トポロジ変更後の同じ宛先への蟻にも対処可能とする。
『中継ノード探索蟻』を受け取ったノードは、自分のルーチングテーブルに宛先IDへの経路を持っているか否かを調べる(ステップ125)。しかし、持っている場合には、ソースリンク以外で、送出確率が0よりも大きなリンクがあれば(ステップ126)、従来の前進蟻の処理に加えて、そのノードが持つ宛先IDと、宛先IDへの伝搬遅延の平均値を載せて、『中継ノード探索蟻』に対する後退蟻を、前進蟻の通過ノードに沿って送出する(ステップ127)。また、自分のルーチングテーブルに宛先IDへの経路がないか、あるいはソースリンク以外への送出確率が0であるならば、『中継ノード探索蟻』をコピーしてソースリンク以外の全リンクに送出する(ステップ128)。そして、リセット(リターン)する(ステップ129)。
【0015】
一方、図5(b)において、データを時間tの間キューイングして、『中継ノード探索蟻』をデータが到着したリンク以外の全リンクに送出した後(ステップ132)、時間tの間に上記送信元ノードが後退蟻を受け取ったならば(ステップ133)、その通過ノードおよび宛先ノードの中で自分のルーチングテーブルにないノードIDをルーチングテーブルに反映する(ステップ134)。ルーチングテーブルは、この後退蟻が到着する前を等確率であったと仮定して、通常の伝搬遅延情報を更新した後、確率を更新する。そして、ルーチングテーブルに従って、データパケットを送出する(ステップ136)。一方、時間tの間に後退蟻を受け取らなかった場合には(ステップ133)、キューイングされていたデータパケットを破棄する(ステップ135)。そして、リセット(リターン)する(ステップ137)。
また、図5(c)に示すように、送信元ノード以外のノードが『中継ノード探索蟻』の後退蟻を受信したならば(ステップ141)、従来の処理に加えて、その通過ノードおよび宛先ノードの中で自分のルーチングテーブルにないノードIDを自分のルーチングテーブルに反映する(ステップ142)。ルーチングテーブルは、この後退蟻が到着する前を等確率であったと仮定して、従来手法の伝搬遅延情報を更新した後に、確率を更新する。そして、リセット(リターン)する(ステップ143)。
【0016】
図6および図7は、図5における新規経路生成の例を示す説明図である。
ここで、図6,図7中の蟻の持つ情報を説明すると、〔j (Ti,j)〕は、ノードjのノードIDと蟻が通った際のノードiからノードjへの遅延を示しており、〔a,b,seq〕は、aからb宛の蟻でシーケンス番号seqを持つ、ことを示している。
図6、図7では、(1)から(6)へ処理が流れている。送信元ノードfが宛先ノードaへデータパケットを送りたい場合で、かつaがfへの経路を持っていない場合には、該パケットを時間tだけキューイングして(以上、図6(1)参照)、『中継ノード探索蟻』を全リンクへ送出する。この場合の送信元ノードfは、データパケットを生成するノードと考えているが、別ノードで生成されたデータパケットを転送途中で受け取ったノードであってもよい。後者の場合には、データパケットが到着したリンク以外へ蟻エージェントを送出する(以上、図6(2)参照)。
【0017】
該『中継ノード探索蟻』は送信元ノードIDf、宛先IDa、シーケンス番号seqを持って送信元ノードfを出発し、途中ノードd,eにおいて、ノードIDと該蟻の伝搬遅延を持って、さらにノードb、cに到達する(以上、図6(3)参照)。
ノードb,cは宛先ノードaへの経路を持っており、かつソースリンク2以外への確率が0より大きいので(各ルーチングテーブルのa,1 1.0参照)、それぞれb,cが中継ノードとなる。そこで、b,cにおいては、dからb、およびeからcまでの実測の伝搬遅延だけでなく、b,cからaへの平均伝搬遅延を持って、送信元ノードfへ従来のアントネットの後退蟻と同一の方法(中継ノード探索蟻の持っている経路の通りに戻る)で戻る。図(4)に示すように、蟻の持つ情報は、a Tb,a、b Td,b、d Tf,d、f,a,seqおよびa Tc,a、c Te,c、eTf,e、f,a,seqである(以上、図7(4)参照)。
【0018】
後退蟻が中継ノードのb,cからそれぞれ送信元ノードfに戻る際には、途中ノードd,eはaへの宛先を持っていないので、それをルーチングテーブルに追加する。その際に、この蟻を受け取る前を等確率(この場合には、各リンクとも0.5)と考えて確率を計算する(以上、図7(5)参照)。すなわち、ノードdのルーチングテーブルには、a,1 i、a,2 jが追加され、ノードeのルーチングテーブルには、a,1 q、a,2 rが追加される。
ノードfに後退蟻が到着したならば、途中ノードと同様にして、ルーチングテーブルに自分の知らないノードIDを追加する。どちらか一方の後退蟻が先に送信元ノードfに到着した時点で、送信元ノードfはデータパケットを各リンクへ送出確率に従って送出する(以上、図7(6)参照)。ここでは、送信元ノードfのルーチングテーブルには、b,1 k、b,2 l、c,1 m、c,2 n、a,1 o、a,2 pが追加される。
【0019】
図2のリンクアップ(応答蟻無し)時の処理フロー、図3のリンクアップ(応答蟻有り)時の処理フロー、および図5の新規経路生成に関する処理フローの各ステップをプログラムに変換し、変換されたプログラムをCD−ROMなどの記録媒体に格納しておけば、ネットワーク上の任意のノードのコンピュータに上記記録媒体を装着してプログラムを実行させることにより、本発明の経路制御方法を容易に実現できる。また、媒体を装着したコンピュータからネットワークを介して他の任意のコンピュータにプログラムをダウンロードすることによっても、本発明の方法を容易に実現できる。
【0020】
【発明の効果】
以上説明したように、本発明によれば、パケット伝送ネットワークを介して出発ノードから宛先ノードに向けてパケットを送信する場合、各ノードのルーチングテーブルを蟻エージェントを用いてアントネットアルゴリズムに基づき学習により構築するとともに、出発ノードおよび出発ノードから発せられたパケットを受け取ったノードは該ルーチングテーブルを用いて該パケットをルーチングする際に、これに先立って、パケット伝送ネットワークを構成する各ノードが隣接ノードを知らない初期状態であるとき、各ノードが自ノードのIDを含んだ『隣接識別蟻』を全リンクに送出することで、隣接ノード双方で相手を認識できるので、ノードの追加などのトポロジ変化に対応することができる。また、『中継ノード探索蟻』による宛先ノードに対する中継ノードの探索により、各ノードが予め全てのノードの情報を持つ必要がなく、パケット伝送の必要な際に宛先エントリを作成することができる。
【図面の簡単な説明】
【図1】本発明で利用する『隣接識別蟻』『応答蟻』および『中継ノード探索蟻』のデータ構成図である。
【図2】本発明の第1の実施例を示すリンクアップ(応答無し)時の処理フローチャートである。
【図3】本発明の第1の実施例を示すリンクアップ(応答有リ)時の処理フローチャートである。
【図4】図2、図3におけるリンクアップ時の処理例を示す説明図である。
【図5】本発明の第2の実施例を示す新規経路生成に関する処理フローチャートである。
【図6】本発明の第2の実施例を示す新規経路生成の手順(1〜3)説明図である。
【図7】本発明の第2の実施例を示す新規経路生成の手順(4〜6)説明図である。
【符号の説明】
10…蟻識別子、11…送信元ノードのIDなどの情報、
12…宛先ノードのIDなどの情報、13…シーケンス番号、
14…通過ノード、15…トリップ時間、16…その他の情報、
a〜f…ノード、1,2はリンク番号。
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a route control method used for relaying a packet transmission network and the like, and particularly records a route control method using an Antnet algorithm introducing an ant for identifying an adjacent node, an ant for searching for a relay node, and a program thereof. It relates to a recording medium.
[0002]
[Prior art]
2. Description of the Related Art Heretofore, proposals regarding an Antnet algorithm using an ant agent include, for example, “Mobile Agents for Adaptive Routing” (Gianni Di Caro and Marco Dorigo, in Proc. 9, Jan., 1998) proposes an Antnet algorithm. Also, in the "control method and control device of router device" (ATR) described in Japanese Patent Application No. 10-285458 and the drawings, a method for avoiding routing lock in a router device based on the Antnet algorithm is proposed. I have.
The above-mentioned prior art proposes an algorithm for a predetermined network topology (network form). However, in a case where a plurality of nodes are in an initial state in which an adjacent node is not known, registration of the adjacent node in a routing table is performed. The method was not clear. Also, a method of transmitting a packet to a node whose route is unknown is not clear.
[0003]
[Problems to be solved by the invention]
As described above, according to the conventional method, when a packet is transmitted from a departure node to a destination node via a packet transmission network, a routing table of each node is constructed by learning based on an Antnet algorithm, thereby departure. The node receiving the packet transmitted from the node and the departure node refers to the routing table, and routes the packet. This is a case of a predetermined network topology, and an arbitrary node establishes an adjacent node. In an unknown initial state, it was not clear how to register information about neighboring nodes in the routing table, and how to transmit a packet to a destination node that has no entry in the routing table.
[0004]
Therefore, an object of the present invention is to solve these conventional problems, construct a routing table by learning based on an Antnet algorithm, and use the routing table for a departure node and a node that has received a packet issued from the departure node. When routing a packet, each node can gradually generate a routing table from an initial state in which it does not know an adjacent node, and the originating node or a node that has received a packet issued from the originating node can determine its own routing. An object of the present invention is to provide a path control method of a packet transmission network that can perform packet transmission even to a destination node having no entry in a table.
[0005]
[Means for Solving the Problems]
In order to achieve the above object, the method for controlling a route of a packet transmission network according to the present invention comprises the following steps: (1) When a packet is transmitted from a departure node to a destination node via the packet transmission network, the routing table of each node is transmitted to the Internet. A route control method that builds by learning based on an algorithm, and that receives the departure node and the packet issued from the departure node, routes the packet using the routing table.
When the plurality of nodes are in an initial state in which they do not know the adjacent nodes, each node sends an “adjacent identification ant” including the ID of its own node to all links,
The adjacent node that has received the “neighbor identification ant” identifies the adjacent node by the link by looking at the node ID in the “neighbor identification ant”,
Each adjacent node writes the ID of the node adjacent to itself in the routing table of the adjacent node (claim 1).
Thus, in an initial state in which each node constituting the packet transmission network does not know the adjacent node, each node sends an “adjacent identification ant” including the ID of its own node to all links, so that both the adjacent nodes can communicate with each other. Can be recognized, and as a result, it is possible to respond to a topology change such as addition of a node.
[0006]
(2) If the destination node ID is not recorded in the routing table of the departure node or the node that has received the packet issued from the departure node,
The node sends a “relay node search ant” including the destination node ID to all links other than the link through which the packet has passed,
The node that has received the “relay node search ant” looks at the destination node ID, and if the destination node ID does not exist in its own routing table, the node receives the “relay node search ant” again. Ants] to all links except the link
When the destination node ID is present in the own routing table, information on the node having the destination node ID and the node that transmitted the “relay node search ant” to the node having the destination node ID And transmitting the "relay node search ant" back to the node that sent the "relay node search ant" through the original route (claim 2).
As a result, each node does not need to have information on all nodes in advance, and a destination entry can be created when packet transmission is required.
(3) It is also characterized in that the processing steps described in the above (1) or (2) are converted into a program and the program is stored in a recording medium.
Thus, the present invention can be easily realized by mounting the recording medium on an arbitrary computer.
[0007]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
FIG. 1 is a diagram illustrating a packet configuration example of each ant.
FIG. 1A shows the data content of a packet of "adjacent identification ant", in which an ant identifier 10 and an ID 11 of a transmission source node are described. FIG. 1 (b) shows the data content of the "response ant" packet returned by the node that has received the "neighbor identification ant", which also includes the ant identifier 10 (a value different from the ant identifier) and the source node. ID11 of (a node that has received the adjacent identification ant) is described. FIG. 1C shows the data content of the packet of the “relay node search ant”, which includes an ant identifier 10 (a value different from the other two ant identifiers), a source node ID 11, a destination node ID 12, Sequence number 13, passing node ID 14 and trip time 15 (propagation delay time from previous node to “passing node”) as stack data, and other data 16 (number of passing nodes (including relay nodes)) Is added to the destination node (one) and stack data). The sequence number 13 is assigned by the transmission source to identify different “relay node search ants”. In the “relay node search ant”, the sequence number 13 in the bold frame is a newly required item in the present invention as compared with the conventional ant.
In the present invention, the introduction of the "neighboring identification ant" enables the recognition of the adjacent node, so that it is possible to cope with a change in the network topology (network form), that is, the addition of a node. Also, by introducing the "relay node search ant", it is possible to create a destination entry required for packet transmission without having all node information in advance.
[0008]
(First embodiment)
FIG. 2 is a processing flowchart of each node at the time of link-up (no response ant) showing the first embodiment (corresponding to claim 1) of the present invention.
Here, the absence of a response ant is limited to a case where link-up detection is possible at both end nodes (departure nodes) of the link.
First, if a node starts up or links up (step 101), the nodes at both ends of the link send out "neighbor identification ants" including their own node IDs to the link in order to know adjacent nodes (step 101). Step 102). When the "adjacent identification ant" is received from the adjacent node (step 103), the originating node ID is reflected in its own routing table with a higher priority than other processes. Further, transmission / reception of ants or data packets using the present link is not performed until transmission / reception of the main ant is completed. Each adjacent node sets the probability of the received “adjacent identification ant” with respect to the node of the departure node ID to 1 / (number of received links) with respect to the link where the ant was received, and to 0 for the other links. (Step 104) and reset (return) (step 105).
[0009]
FIG. 3 (a) is a processing flowchart at the time of link-up (response is present) showing the first embodiment (corresponding to claim 1) of the present invention.
First, if the node has started up or has been linked up (step 111), the node that has detected the link up sends an "adjacent identification ant" including its own node ID to the link in order to know the adjacent node. (Step 112). When the "neighbor identification ant" or "response ant" is received from the adjacent node (step 114), the departure node ID is reflected on its own routing table with a higher priority than other processes. Further, transmission / reception of ants or data packets using the present link is not performed until transmission / reception of the main ant is completed. Then, the probability of the received “adjacent identification ant” or “response ant” with respect to the departure node ID is set to 1 / (the number of received links) with respect to the link where the ant was received, and to 0 for the other links. (Step 114), if the received ant is "response ant", reset (return) (step 119). On the other hand, if the received ant is "adjacent identification ant" (step 115), it returns a "response ant" including its own node ID (step 116). Then, reset (return) is performed (step 119).
[0010]
FIG. 3B is a flowchart of the response ant raw processing.
If the adjacent node does not detect the link-up, a "response ant generation process" is performed to generate an entry for the adjacent node and return the response ant.
That is, if the node receives the "neighbor identification ant" (step 151), the probability for the node is set to 1 / (the number of links received) for the link that received the ant, and set to 0 for the others (step 152). ). Next, a response ant including the own node ID is returned (step 153). Then, reset (return) is performed (step 154).
[0011]
FIGS. 4A and 4B are diagrams showing an example of processing at the time of link-up in FIGS.
Here, the method of describing entries in the routing table in the figure will be described. A, nP means the transmission probability P of a packet addressed to the destination a with respect to the link n.
FIG. 4A shows a process in the case where there is no “response ant” shown in FIG. A case where "adjacent identification ants" are transmitted from both nodes due to link-up between nodes b and d and between nodes c and d is shown. Both the nodes b and d and the nodes c and d send out the "neighboring identification ants", and the node that receives it adds the node ID indicated in the ants to the routing table, and the transmission probability for each link. Set. Here, it is assumed that the probability for the link that has received the “neighboring identification ant” is 1.0, and the other sum is 0.0. Further, a transmission probability for the link having another node as a destination is set. Here, it is set to 0.0. The specific probability value can be changed at the time of mounting.
In the routing table of the node b in this case, at first, only the probability of the destination a and link 2 is 1.0 and the probability of the destination c and link 2 is 1.0, but the “adjacent” from the node d is registered. By registering the node ID of "identification ant", the probability of the destination d and link 1 is 1.0, the probability of the destination d and link 2 is 0.0, the probability of the destination a and link 1 is 0.0, the destination c and the link As for the probability of 1, 0.0 is added. For the routing tables of the nodes c and d, the node ID and the transmission probability are set from the received “neighbor identification ants” in exactly the same manner as the node b.
[0012]
FIG. 4 (2) shows a process in the case where there is the “response ant” shown in FIG. The "adjacent identification ant" is sent from the rising node d to both the node b side and the node c side, and the "response ant" including the own node ID is returned from the nodes b and c which have received it. I do. Other processes are the same as those in FIG. In this embodiment, since only one node d of the link can detect link-up, the "adjacent identification ant" is transmitted only from the node d. It is also possible to send out and to return a "response ant" from both sides.
As is clear from the routing tables of FIGS. 4A and 4B, the tables have exactly the same contents with and without the "response ant".
[0013]
(Second embodiment)
FIG. 5 is a processing flowchart relating to a new route generation according to the second embodiment (corresponding to claim 2) of the present invention.
FIG. 5A shows the processing of the forward ant in the “relay node search ant”, FIG. 5B shows the processing of the node that needs to generate a new route, and FIG. The process of the retreat ant is shown. Note that a relay node is a node at which a forward ant arrives as a passing node and first knows a route to a destination node.
In the forward ant process, when the node that has received the “relay node search ant” knows that it does not have a route to the destination node, the “relay node search ant” is added to all links other than the link through which it has passed. To detect a relay node. In the process of retreating ants, the relay node sends out retreating ants of “relay node search ants” to the starting node on the route that has just come.
First, in the "process of generating a new route" in FIG. 5B, the departure node of the data packet or the node that received the packet issued from the departure node is sent to the destination node that does not know the route, or When the packet is sent to the node (step 131), the packet is temporarily queued for a time t (a value larger than 0, which is determined as necessary), and its own ID (source node ID) Then, an ant for searching for a node that relays a packet to a destination with the destination ID and the sequence number is sent to all links other than the link where the packet arrived (step 132). Hereinafter, the processing of the forward ant will be described.
[0014]
In the process of the forward ant, as shown in FIG. 5A, if any node receives the forward ant of the “relay node search ant” (step 121), the ant having the same transmission source and sequence number is already detected. It is determined whether or not it has been received (step 122). If it has been received, the ant that has just been received is discarded (step 123). On the other hand, if it has not been received, if there is no source node ID in its own routing table, it is added to its own routing table (probability is 1 / number of links). Also, the ant is remembered by the pair of the transmission source and the sequence number (step 124). This makes it possible to avoid loops and to cope with ants to the same destination after the topology change.
The node that has received the “relay node search ant” checks whether or not its own routing table has a route to the destination ID (step 125). However, in the case where there is a link other than the source link, if there is a link whose transmission probability is larger than 0 (step 126), the destination ID of the node and the destination ID Then, the backward ant for the "relay node search ant" is transmitted along the passing node of the forward ant with the average value of the propagation delay to the forward node (step 127). If there is no route to the destination ID in the own routing table or the transmission probability to a source link other than the source link is 0, the “relay node search ant” is copied and transmitted to all links other than the source link. (Step 128). Then, reset (return) is performed (step 129).
[0015]
On the other hand, in FIG. 5 (b), after queuing the data for a time t and sending "relay node search ants" to all links other than the link on which the data arrived (step 132), When the source node receives the retreat ant (step 133), it reflects the node ID of its transit node and destination node that is not in its own routing table in the routing table (step 134). The routing table updates the normal propagation delay information and then updates the probability, assuming that the probability before the retreat ant arrives is equal. Then, the data packet is transmitted according to the routing table (step 136). On the other hand, if no retreat ant is received during the time t (step 133), the queued data packet is discarded (step 135). Then, reset (return) is performed (step 137).
Further, as shown in FIG. 5C, when a node other than the transmission source node receives the retreat ant of the “relay node search ant” (step 141), in addition to the conventional processing, the transit node and the destination The node ID that is not in its own routing table among the nodes is reflected in its own routing table (step 142). The routing table updates the probability after updating the propagation delay information of the conventional method, assuming that the probability before the retreat ant arrives is equal. Then, reset (return) is performed (step 143).
[0016]
FIG. 6 and FIG. 7 are explanatory diagrams showing an example of the new route generation in FIG.
Here, the information of the ants in FIGS. 6 and 7 will be described. [J (Ti, j)] indicates the node ID of the node j and the delay from the node i to the node j when the ants pass. [A, b, seq] indicates that an ant from a to b has a sequence number seq.
6 and 7, the process flows from (1) to (6). If the source node f wants to send a data packet to the destination node a, and if a does not have a route to f, the packet is queued for a time t (see FIG. 6 (1)). ), And send “relay node search ants” to all links. In this case, the transmission source node f is considered to be a node that generates a data packet, but may be a node that receives a data packet generated by another node during transfer. In the latter case, the ant agent is transmitted to a link other than the link where the data packet has arrived (see FIG. 6 (2)).
[0017]
The "relay node search ant" departs from the source node f with the source node IDf, the destination IDa, and the sequence number seq, and has the node ID and the propagation delay of the ant at the intermediate nodes d and e. The nodes reach nodes b and c (see FIG. 6 (3)).
Since the nodes b and c have a route to the destination node a and have a probability of being greater than 0 to a source other than the source link 2 (see a, 11.0 in each routing table), b and c are respectively relay nodes. It becomes. Therefore, in b and c, the conventional antenna retreats to the source node f with the average propagation delay from b, c to a as well as the measured propagation delay from d to b and e to c. Return in the same manner as the ants (return along the route held by the relay node search ants). As shown in FIG. 4D, the information of the ant includes a Tb, a, b Td, b, d Tf, d, f, a, seq and a Tc, a, c Te, c, eTf, e, f, a, and seq (see FIG. 7 (4)).
[0018]
When the retreating ant returns from the relay nodes b and c to the transmission source node f, respectively, the nodes d and e do not have a destination for a, and therefore add them to the routing table. At this time, the probability is calculated assuming that the ants are not received before as equal probabilities (in this case, each link is 0.5) (see FIG. 7 (5)). That is, a, 1 i, a, 2 j are added to the routing table of the node d, and a, 1 q, a, 2 r are added to the routing table of the node e.
When the retreat ant arrives at the node f, the node ID unknown to itself is added to the routing table in the same manner as the node on the way. When either one of the retreating ants arrives at the transmission source node f first, the transmission source node f transmits the data packet to each link according to the transmission probability (see FIG. 7 (6)). Here, b, 1 k, b, 2 l, c, 1 m, c, 2 n, a, 1 o, a, 2 p are added to the routing table of the transmission source node f.
[0019]
Each step of the processing flow at the time of link-up (without a response ant) in FIG. 2, the processing flow at the time of link-up (with a response ant) of FIG. 3, and the processing flow relating to the generation of a new route in FIG. If the stored program is stored in a recording medium such as a CD-ROM, the path control method of the present invention can be easily performed by attaching the recording medium to a computer at an arbitrary node on a network and executing the program. realizable. Also, the method of the present invention can be easily realized by downloading a program from a computer loaded with a medium to any other computer via a network.
[0020]
【The invention's effect】
As described above, according to the present invention, when a packet is transmitted from a departure node to a destination node via a packet transmission network, a routing table of each node is constructed by learning based on an Antnet algorithm using an ant agent. In addition, when the departure node and the node that has received the packet issued from the departure node use the routing table to route the packet, prior to this, each node constituting the packet transmission network notifies the neighboring nodes. When there is no initial state, each node sends an "adjacent identification ant" containing the ID of its own node to all links, so that both adjacent nodes can recognize each other, so it can cope with topology changes such as addition of nodes can do. In addition, by searching for a relay node for a destination node using the “relay node search ant”, each node does not need to have information on all nodes in advance, and a destination entry can be created when packet transmission is required.
[Brief description of the drawings]
FIG. 1 is a data configuration diagram of “neighbor identification ants”, “response ants”, and “relay node search ants” used in the present invention.
FIG. 2 is a processing flowchart at the time of link-up (no response) showing the first embodiment of the present invention.
FIG. 3 is a processing flowchart at the time of link-up (with a response) showing the first embodiment of the present invention.
FIG. 4 is an explanatory diagram showing a processing example at the time of link up in FIGS. 2 and 3;
FIG. 5 is a flowchart illustrating a process of generating a new route according to a second embodiment of the present invention.
FIG. 6 is an explanatory diagram of procedures (1 to 3) for generating a new route according to the second embodiment of the present invention.
FIG. 7 is an explanatory diagram of procedures (4 to 6) for generating a new route according to the second embodiment of the present invention.
[Explanation of symbols]
10 ... ant identifier, 11 ... information such as the ID of the source node,
12 ... information such as ID of destination node, 13 ... sequence number,
14: transit node, 15: trip time, 16: other information,
a to f: nodes, 1 and 2 are link numbers.

Claims (3)

パケット伝送ネットワークを介して出発ノードから宛先ノードに向けてパケットを送信する場合に、各ノードのルーチングテーブルをアントネットアルゴリズムに基づき学習により構築するとともに、上記出発ノードおよび該出発ノードから発せられたパケットを受け取ったノードは該ルーチングテーブルを用いて該パケットをルーチングする経路制御方法において、
該複数のノードが隣接ノードを知らない初期状態の場合に、パケット送出に先立ち、各ノードは自ノードのIDを含んだ『隣接識別蟻』を全リンクに送出し、該『隣接識別蟻』を受け取った隣接ノードは、該『隣接識別蟻』の中のノードIDを見ることにより、該リンクにより隣接するノードを識別し、
各隣接ノードは、該隣接ノードのルーチングテーブルに自分に隣接するノードのIDを書き込むことを特徴とするパケット伝送ネットワークの経路制御方法。
When transmitting a packet from a departure node to a destination node via a packet transmission network, a routing table of each node is constructed by learning based on an Antnet algorithm, and a packet generated from the departure node and the departure node is generated. The receiving node uses the routing table to route the packet.
When the plurality of nodes are in an initial state in which they do not know the adjacent node, each node transmits an “adjacent identification ant” including the ID of its own node to all links and transmits the “adjacent identification ant” before transmitting a packet. The received adjacent node identifies the adjacent node by the link by looking at the node ID in the “adjacent identification ant”,
A route control method for a packet transmission network, wherein each adjacent node writes an ID of a node adjacent to itself in a routing table of the adjacent node.
請求項1に記載のパケット伝送ネットワークの経路制御方法において、
出発ノードまたは出発ノードから発せられたパケットを受け取ったノードのルーチングテーブルに、宛先ノードIDの記録がない場合には、
該ノードは、該パケットを送出するに先立ち、該宛先ノードIDを含む『中継ノード探索蟻』を該パケットが通ったリンク以外の全てのリンクに送出し、
該『中継ノード探索蟻』を受け取ったノードは、該宛先ノードIDを見ることにより、自分のルーチングテーブル中に該宛先ノードIDがないときには、改めて該『中継ノード探索蟻』を該『中継ノード探索蟻』が通ったリンク以外の全リンクに送出し、
自分のルーチングテーブル中に該宛先ノードIDがあるときには、該宛先ノードIDを持っているノードの情報と、該『中継ノード探索蟻』を送出したノードから、該宛先ノードIDを持っているノードまでの遅延情報と、を持った該『中継ノード探索蟻』を、通過してきた元の経路を通って該『中継ノード探索蟻』を送出したノードまで送り返すことを特徴とするパケット伝送ネットワークの経路制御方法。
The route control method for a packet transmission network according to claim 1,
If the destination node ID is not recorded in the routing table of the departure node or the node that has received the packet issued from the departure node,
Before transmitting the packet, the node transmits a “relay node search ant” including the destination node ID to all links other than the link through which the packet has passed,
The node that has received the “relay node search ant” looks at the destination node ID, and if the destination node ID does not exist in its own routing table, the node receives the “relay node search ant” again. And send them to all links except the link
When the destination node ID is present in the own routing table, the information of the node having the destination node ID and the node that transmitted the "relay node search ant" to the node having the destination node ID Routing control of the packet transmission network, wherein the "relay node search ant" having the delay information is sent back to the node that transmitted the "relay node search ant" through the original route that has passed through. Method.
請求項1または2に記載のパケット伝送ネットワークの経路制御方法の処理ステップをプログラムに変換し、変換されたプログラムを記録媒体に格納することを特徴としたプログラム記録媒体。3. A program recording medium, wherein the processing steps of the packet transmission network path control method according to claim 1 or 2 are converted into a program, and the converted program is stored in a recording medium.
JP2000246673A 2000-08-16 2000-08-16 Packet transmission network path control method and recording medium recording the program Expired - Fee Related JP3575682B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000246673A JP3575682B2 (en) 2000-08-16 2000-08-16 Packet transmission network path control method and recording medium recording the program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000246673A JP3575682B2 (en) 2000-08-16 2000-08-16 Packet transmission network path control method and recording medium recording the program

Publications (2)

Publication Number Publication Date
JP2002064538A JP2002064538A (en) 2002-02-28
JP3575682B2 true JP3575682B2 (en) 2004-10-13

Family

ID=18736938

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000246673A Expired - Fee Related JP3575682B2 (en) 2000-08-16 2000-08-16 Packet transmission network path control method and recording medium recording the program

Country Status (1)

Country Link
JP (1) JP3575682B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2491745B1 (en) 2009-12-18 2018-07-04 Intel Corporation System and method of utilizing a framework for information routing in large-scale distributed systems using swarm intelligence
WO2011114627A1 (en) 2010-03-17 2011-09-22 日本電気株式会社 Path selecting method, information processing apparatus, network system, and path selecting program
KR101282611B1 (en) 2011-03-09 2013-07-12 한국과학기술원 Routing apparatus and method for setting up transmission route using the same and table managing method of routing apparatus

Also Published As

Publication number Publication date
JP2002064538A (en) 2002-02-28

Similar Documents

Publication Publication Date Title
US6990111B2 (en) Adaptive path discovery process for routing data packets in a multinode network
US7382731B1 (en) Method and apparatus for updating probabilistic network routing information
US6041049A (en) Method and apparatus for determining a routing table for each node in a distributed nodal system
US5142531A (en) Data communications network
US7382734B2 (en) Directing a path verification request along a specific path to a mesh network switch to test operability of the specific path
JP3688877B2 (en) Node device and label switching path loop detection method
US7693069B2 (en) Method, apparatus and system for improved inter-domain routing convergence
CA2053397A1 (en) Method and apparatus for distance vector routing on datagram point-to-point links
US7466655B1 (en) Ant-based method for discovering a network path that satisfies a quality of service equipment
WO2012073315A1 (en) Wireless communication device and bypass route search method in wireless network
WO2013026336A1 (en) Method for path detection and node
US6108710A (en) Method and apparatus for optimizing route generation in a connection oriented network
KR20090110916A (en) How to calculate a spanning tree based on link state advertisement (LSA), bridge and computer network
JP2009232412A (en) Information processing apparatus, summarization method, and summarization processing program
JP3575682B2 (en) Packet transmission network path control method and recording medium recording the program
US7334048B1 (en) Method and apparatus for fast route table update
US7995497B2 (en) Spontaneous topology discovery in a multi-node computer system
US7423974B2 (en) Disabling mutually recursive routes
WO2011024701A1 (en) Network design system, network design method, data transfer route determining method, network design program
JPH0522293A (en) Router with bridge function
JP5532818B2 (en) ID / locator association apparatus, ID / locator association method and program
KR100296076B1 (en) Quality of Service(QoS) based generic shortest path search method
US20220377006A1 (en) Techniques for safe acyclic routing in a communications network
US20010034797A1 (en) Data transferring method and communication network system
JP3114219B2 (en) Network connection device

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040330

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040618

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040701

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

Free format text: PAYMENT UNTIL: 20080716

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20080716

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090716

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090716

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100716

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100716

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110716

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees