JP4981829B2 - MRC file creation device, MRC file creation method and program thereof - Google Patents

MRC file creation device, MRC file creation method and program thereof Download PDF

Info

Publication number
JP4981829B2
JP4981829B2 JP2009037244A JP2009037244A JP4981829B2 JP 4981829 B2 JP4981829 B2 JP 4981829B2 JP 2009037244 A JP2009037244 A JP 2009037244A JP 2009037244 A JP2009037244 A JP 2009037244A JP 4981829 B2 JP4981829 B2 JP 4981829B2
Authority
JP
Japan
Prior art keywords
link
mrc file
mrc
isolated
created
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
JP2009037244A
Other languages
Japanese (ja)
Other versions
JP2010193322A (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 JP2009037244A priority Critical patent/JP4981829B2/en
Publication of JP2010193322A publication Critical patent/JP2010193322A/en
Application granted granted Critical
Publication of JP4981829B2 publication Critical patent/JP4981829B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、IP(Internet Protocol)網等のパケット交換網におけるルーチング技術に関する。   The present invention relates to a routing technique in a packet switching network such as an IP (Internet Protocol) network.

ネットワーク事業者において、ノードやリンクの故障の発生に対して、迅速に経路を切り替えることで故障復旧を行い、転送品質の維持を行うことが重要である。IP網における故障復旧方法として、OSPF(Open Shortest Path First)等のルーチングプロトコルを用いた故障復旧方法がある(非特許文献1参照)。このOSPFでは、故障を検知したノードは、全ノードから故障箇所を除いたトポロジデータベース情報をもとに迂回経路を計算し、自動的に転送経路を切り替える。しかし、OSPFでは、ノードは故障発生後に迂回経路を計算するため、故障復旧に時間を要するという問題がある。   It is important for network operators to perform failure recovery by quickly switching paths and maintain transfer quality in response to the occurrence of node or link failures. As a failure recovery method in an IP network, there is a failure recovery method using a routing protocol such as OSPF (Open Shortest Path First) (see Non-Patent Document 1). In this OSPF, a node that detects a failure calculates a detour route based on topology database information excluding the failure portion from all nodes, and automatically switches the transfer route. However, in OSPF, since the node calculates a detour path after the failure occurs, there is a problem that it takes time to recover from the failure.

このような問題を解決する方法として、迂回経路を事前に計算しておくことで高速な故障復旧を実現するMRC(Multiple Routing Configurations)方式が提案されている。このMRC方式は、事前に迂回情報格納ファイル(以下、MRCファイルと呼ぶ)を用意しておき、故障発生時には、この故障に対応したMRCファイルに基づき転送経路へ切り替えを行う。   As a method for solving such a problem, an MRC (Multiple Routing Configurations) method has been proposed that realizes high-speed failure recovery by calculating a detour route in advance. In this MRC method, a detour information storage file (hereinafter referred to as an MRC file) is prepared in advance, and when a failure occurs, the transfer path is switched based on the MRC file corresponding to the failure.

ここで、図11を用いて、MRCファイルについて説明する。MRCファイルは、与えられたトポロジに対し、通常ノードと、isolated nodeと、通常リンクと、isolated linkと、restricted linkとの組み合わせにより、故障時の迂回情報を示したファイルである。isolated linkは、故障リンクを示し、isolated nodeは、故障ノードを示す。また、restricted linkは、isolated nodeへの最終ホップとしてのみ利用可能なリンクである。   Here, the MRC file will be described with reference to FIG. The MRC file is a file indicating detour information at the time of failure by a combination of a normal node, an isolated node, a normal link, an isolated link, and a restricted link for a given topology. An isolated link indicates a failure link, and an isolated node indicates a failure node. The restricted link is a link that can be used only as the last hop to the isolated node.

例えば、図11の符号102に示す状態のMRCファイル#1は、符号101に示すようなノードN1〜N6からなるトポロジのMRCファイルである。このMRCファイル#1において、(1)ノードN2,N3間のリンクが故障したとき、(2)ノードN2が故障したとき、(3)ノードN6が故障したとき、および、(4)ノードN1,N6間のリンクが故障したときの迂回経路を示す。ここで、迂回経路は、通常リンクを用いるが、restricted linkも、isolated nodeへの最終ホップとしてならば利用可能である。実際には、このMRCファイルのisolated linkには非常に大きなコスト(例えば、OSPFで規定される最大値「65535」)を設定することで、そのリンクを使用不能とする。つまり、OSPFでは、できるだけ低いリンクコストのリンクを選択するので、このように非常に大きなリンクコストのリンクは選択されない。また、restricted linkには、このisolated linkよりも低いけれども、充分大きな値(例えば、すべての通常リンクのコストの合計値)を設定することで、最終ホップでのみ使用されるようにする。   For example, the MRC file # 1 in the state indicated by reference numeral 102 in FIG. 11 is an MRC file having a topology including nodes N1 to N6 as indicated by reference numeral 101. In this MRC file # 1, (1) when the link between the nodes N2 and N3 fails, (2) when the node N2 fails, (3) when the node N6 fails, and (4) the node N1, A detour route when the link between N6 fails is shown. Here, the detour route uses a normal link, but a restricted link can also be used if it is the last hop to the isolated node. Actually, by setting a very large cost (for example, the maximum value “65535” defined by OSPF) to the isolated link of this MRC file, the link is made unusable. That is, in OSPF, since a link with a link cost as low as possible is selected, a link with such a very large link cost is not selected. Also, the restricted link is set to a sufficiently large value (for example, the total cost of all normal links) although it is lower than this isolated link, so that it is used only at the last hop.

なお、このように、MRCファイルにrestricted linkを設ける理由は、ノード間が通信不能となる原因が、リンク故障の場合とノード故障の場合との両方の可能性があるからである。例えば、符号101に示すトポロジにおいて、ノードN3,N2間が通信不能になる原因としては、(1)ノードN3,N2間のリンク故障、(2)ノードN2のノード故障等が考えられる。ここでもし、ノード間が通信不能となった原因が、(1)ノードN3,N2間のリンク故障であれば、例えば、ノードN4からノードN1への経路は、ノードN3を経由のものと、ノードN2経由のものとが考えられる。しかし、もしノードN3,N2間が通信不能となった原因が、(2)ノードN2のノード故障であれば、実際にはノードN4,N2間およびノードN2,N1間のリンクは通信不能なので、このリンクは迂回経路として使えない。したがって、例えば、符号102に示すMRCファイル#1のように、isolated nodeであるノードN2の少なくとも1本のリンクに充分大きなリンクコストの値を設定したrestricted linkを設けることで、通信不能な状態になった原因が単なるリンク故障であった場合の、ノードN2への到達性を確保することができる。また、通信不能となった原因が、ノードN2のノード故障であった場合において、このノードN2を経由する経路をできるだけ選択しないようにできる。   The reason why the restricted link is provided in the MRC file as described above is that the cause of the inability to communicate between nodes may be both a link failure and a node failure. For example, in the topology indicated by reference numeral 101, the causes of communication failure between the nodes N3 and N2 are (1) a link failure between the nodes N3 and N2, (2) a node failure at the node N2, and the like. Here, if the cause of the communication failure between the nodes is (1) a link failure between the nodes N3 and N2, for example, the path from the node N4 to the node N1 is via the node N3, It may be via the node N2. However, if the cause of the communication failure between the nodes N3 and N2 is (2) the node failure of the node N2, the link between the nodes N4 and N2 and between the nodes N2 and N1 is actually incapable of communication. This link cannot be used as a detour route. Therefore, for example, like the MRC file # 1 indicated by reference numeral 102, by providing a restricted link in which a sufficiently large link cost value is set for at least one link of the node N2, which is an isolated node, communication is disabled. The reachability to the node N2 can be ensured when the cause is a simple link failure. Further, when the cause of the communication failure is a node failure of the node N2, it is possible to select as few routes as possible through the node N2.

このようなMRCファイルを作成するには、以下の条件を満たす必要がある。
(条件1)MRCファイルにおいて、isolated linkを除いたリンク(つまり、通常リンクとrestricted link)は、連結グラフとなることが必要である。これは、isolated link以外のリンクにより構成される経路の経路到達性を確保するためである。
(条件2)すべてのMRCファイルにおけるisolated nodeとisolated linkとの和集合が、もとのトポロジに一致することが必要である。これは、トポロジに起こりうるノード故障およびリンク故障をすべてのMRCファイルによりカバーする必要があるからである。
(条件3)isolated nodeには少なくとも一本のrestricted linkが接続され、それ以外のリンクはisolated linkであることが必要である。また、restricted linkの対向ノードは、その通常ノードとする。これは、前記したとおり、MRCファイルにおける迂回経路の作成において、リンク故障による通信不能の場合と、ノード故障による通信不能の場合との両方の場合を考慮する必要があるからである。
In order to create such an MRC file, the following conditions must be satisfied.
(Condition 1) In the MRC file, links excluding isolated links (that is, normal links and restricted links) must be connected graphs. This is to ensure the route reachability of the route constituted by links other than the isolated link.
(Condition 2) The union of isolated nodes and isolated links in all MRC files must match the original topology. This is because node failures and link failures that may occur in the topology need to be covered by all MRC files.
(Condition 3) At least one restricted link is connected to the isolated node, and the other links need to be isolated links. The opposite node of the restricted link is the normal node. This is because, as described above, it is necessary to consider both the case where communication is not possible due to a link failure and the case where communication is not possible due to a node failure when creating a detour path in the MRC file.

ここで、引き続き、図11を用いて、従来技術によるMRCファイルの作成アルゴリズムを説明する。ここでは、符号101に示すトポロジに対し、MRCファイル数=4を指定した場合を例に説明する。まず、符号101に示すトポロジのリンクについて、すべて通常リンクと通常ノードとで構成されるMRCファイルを作成する。そして、このMRCファイルから任意のノードを選択する。例えば、ノードN1を選択する。次に、この選択したノードN1に接続されるリンクのうち、1つのリンクをrestricted linkとする。他のリンクはisolated linkとする。このとき、どのリンクをrestricted linkとするかはランダムに決める。以上の処理により、このノードN1のリンクはすべてisolated linkまたはrestricted linkとなるので、このノードN1はisolated nodeとなる。このようにしてMRCファイル#0を作成する(S1)。以下、このようにトポロジから、ノードを選択し、そのノードをisolated nodeとするまでの処理を基本処理と呼ぶ。   Here, the creation algorithm of the MRC file according to the prior art will be described with reference to FIG. Here, a case where the number of MRC files = 4 is designated for the topology indicated by reference numeral 101 will be described as an example. First, an MRC file composed of normal links and normal nodes is created for all links having the topology indicated by reference numeral 101. Then, an arbitrary node is selected from this MRC file. For example, the node N1 is selected. Next, one link among the links connected to the selected node N1 is set as a restricted link. Other links are isolated links. At this time, it is randomly determined which link is a restricted link. By the above processing, all the links of this node N1 become isolated links or restricted links, so that this node N1 becomes an isolated node. In this way, MRC file # 0 is created (S1). Hereinafter, the process from selecting a node from the topology to setting the node as an isolated node will be referred to as a basic process.

次に、MRCファイル#1の作成処理に移る。ここでは、MRCファイル#0で、isolated linkにできなかったリンク(例えば、restricted linkにしたリンク)の対向ノードを対象として、基本処理を行う。つまり、ノードN1,N6間のリンクをisolated linkとし、ノードN5,N6間のリンクをrestricted linkとする。そして、ノードN6をisolated nodeとして、MRCファイル#1を作成する(S2)。このような基本処理を、ノードN6のrestricted linkの対向ノードであるノードN5に実行して、MRCファイル#2を作成し(S3)、ノードN5のrestricted linkの対向ノードであるノードN4に実行して、MRCファイル#3を作成する(S4)。   Next, the process proceeds to creation of MRC file # 1. Here, basic processing is performed on the opposite node of a link that has not been made an isolated link in the MRC file # 0 (for example, a link that has been restricted link). That is, the link between the nodes N1 and N6 is an isolated link, and the link between the nodes N5 and N6 is a restricted link. Then, the MRC file # 1 is created with the node N6 as an isolated node (S2). Such basic processing is executed on the node N5 which is the opposite node of the restricted link of the node N6 to create the MRC file # 2 (S3), and is executed on the node N4 which is the opposite node of the restricted link of the node N5. MRC file # 3 is created (S4).

ここで、4つ目のMRCファイル(MRCファイル#3)まで作成したが、まだ符号101に示すトポロジのすべてのノードをisolated nodeとして選択していない。よって、S1で作成したMRCファイル#0に対し、基本処理を行う。つまり、MRCファイル#3におけるノードN4のrestricted linkの対向ノードであるノードN3に対して基本処理を行い、符号103に示すMRCファイル#0へ更新する(S5)。さらに、まだ符号101に示すすべてのノードをisolated nodeとして選択していないので、MRCファイル#1に対し、基本処理を行う。つまり、ノードN3のrestricted linkの対向ノードであるノードN2に対して基本処理を行い、符号102に示すMRCファイル#1へ更新する(S6)。以上の処理により、トポロジのすべてのノードがisolated nodeとなったので、処理を終了する。そして、符号103に示すMRCファイル#0、符号102に示すMRCファイル#1、S3で作成したMRCファイル#2、S4で作成したMRCファイル#3を出力する。   Here, the fourth MRC file (MRC file # 3) has been created, but all the nodes of the topology indicated by reference numeral 101 have not been selected as isolated nodes. Therefore, basic processing is performed on the MRC file # 0 created in S1. That is, basic processing is performed on the node N3 that is the opposite node of the restricted link of the node N4 in the MRC file # 3, and the node is updated to the MRC file # 0 indicated by reference numeral 103 (S5). Furthermore, since all the nodes indicated by reference numeral 101 have not been selected as isolated nodes, basic processing is performed on the MRC file # 1. That is, basic processing is performed on the node N2 that is the opposite node of the restricted link of the node N3, and the MRC file # 1 indicated by reference numeral 102 is updated (S6). As a result of the above processing, all the nodes in the topology have become isolated nodes, and the processing ends. Then, the MRC file # 0 indicated by reference numeral 103, the MRC file # 1 indicated by reference numeral 102, the MRC file # 2 created by S3, and the MRC file # 3 created by S4 are output.

このようなアルゴリズムによれば、前のMRCファイルではisolated linkにできなかったリンクを、次のMRCファイルでisolated linkとするので、トポロジのすべてのノードをisolated nodeとし、また、すべてのリンクをisolated linkとすることができる。また、所定数のMRCファイルに対し順に基本処理を行っていき、最後のMRCファイルまで基本処理を行っても、まだすべてのノードをisolated nodeにできていなければ、最初に作成したMRCファイルに戻り、基本処理を実行し、この基本処理の結果(isolated link、restricted linkおよびisolated node)を当該MRCファイルに追加していく。したがって、1つのMRCファイルに複数の故障(故障ノードおよび故障リンク)が発生したときの迂回経路を記憶することができるので、必ずしも故障ごとにMRCファイルを用意する必要がなくなる。   According to such an algorithm, since a link that could not be an isolated link in the previous MRC file is an isolated link in the next MRC file, all nodes in the topology are isolated nodes, and all links are isolated. It can be a link. Also, the basic processing is sequentially performed on a predetermined number of MRC files, and even if the basic processing is performed up to the last MRC file, if all the nodes are not yet isolated nodes, the process returns to the first created MRC file. The basic processing is executed, and the results of the basic processing (isolated link, restricted link, and isolated node) are added to the MRC file. Accordingly, since a detour path when a plurality of failures (failed nodes and failed links) occurs can be stored in one MRC file, it is not always necessary to prepare an MRC file for each failure.

IETF RFC2328“OSPF Version 2”、1999年4月IETF RFC2328 “OSPF Version 2”, April 1999 A.Kyalbein,et.al “FAST IP NETWORK RECOVERY USING multiple routing configurations”in proceeding of infocom、2006年4月A. Kyalbein, et.al “FAST IP NETWORK RECOVERY USING multiple routing configurations” in proceeding of infocom, April 2006

しかし、前記した技術は、単一故障(単一のノードの故障および単一のリンクの故障)に対する迂回経路をすべて網羅することを主な目的としており、MRCファイル1つあたりの故障パターン(isolated nodeやisolated link)の集約効率は必ずしも高くない。よって、ルータが記憶すべきMRCファイルが多くなってしまうこともある。例えば、図11で説明した例では符号101に示すトポロジについて、合計4つのMRCファイルを作成した。しかし、符号101に示すトポロジのすべての故障パターンの迂回経路を網羅するMRCファイル群は、この4つのMRCファイルに限定されず、たとえば、図12に示す3つのMRCファイル(MRCファイル#0〜#2)も考えられる。そこで、本発明は、前記した課題を解決し、ルータが保持すべきMRCファイルの数を低減することを目的とする。   However, the above-described technique is mainly intended to cover all the detour paths for a single failure (a single node failure and a single link failure), and a failure pattern (isolated) per MRC file. The aggregation efficiency of nodes and isolated links is not necessarily high. Therefore, there may be a large number of MRC files that the router should store. For example, in the example described with reference to FIG. 11, a total of four MRC files are created for the topology indicated by reference numeral 101. However, the MRC file group covering all the detour paths of all the failure patterns of the topology indicated by reference numeral 101 is not limited to these four MRC files. For example, the three MRC files (MRC files # 0 to ##) shown in FIG. 2) is also conceivable. Accordingly, an object of the present invention is to solve the above-described problems and reduce the number of MRC files that a router should hold.

前記した課題を解決するため、請求項1に記載の発明は、ネットワークにおけるノード故障発生時およびリンク故障発生時の迂回経路を示したMRC(Multiple Routing Configurations)ファイルを作成するMRCファイル作成装置であって、ネットワークのトポロジを示したトポロジ情報と、そのトポロジに対し、今まで作成されたMRCファイルにおいてisolated nodeとなったノードおよびisolated linkとなったリンクを示したMRCファイル作成管理情報とを記憶する記憶部と、乱数を用いて、トポロジにおけるリンクそれぞれのリンクコストの初期値の集合である初期値W0を生成するリンクコスト初期値作成部と、生成した初期値W0を用いて、Kruskal法によりトポロジのリンクの少なくとも一部を削除し、トポロジの全域木を作成する全域木作成部と、トポロジを参照して、全域木作成部により作成された全域木における末端のノードを、MRCファイルにおけるisolated nodeとし、この末端のノードに接続するリンクをrestricted linkとし、全域木の作成において削除されたリンクをisolated linkとして、トポロジのMRCファイルを作成し、その作成したMRCファイルにおいて、isolated nodeとなったノードおよびisolated linkとなったリンクをMRCファイル管理情報に記録していくMRCファイル作成部と、MRCファイル作成部により、MRCファイルが作成された後、MRCファイルにおけるisolated link以外のリンクのリンクコストそれぞれの値に、ランダムな値を加算した新たなリンクコストの集合W’をN個作成するリンクコスト値変更部と、全域木作成部、MRCファイル作成部およびリンクコスト値変更部の制御を行う反復制御部と、MRCファイル作成部により作成されたMRCファイル群を出力する出力部とを備え、反復制御部は、(1)全域木作成部に、新たなリンクコストの集合W’1〜W’Nそれぞれのリンクコストの値を用いて全域木を作成させ、この作成させた全域木のうち、当該全域木によりMRCファイルを作成した場合、MRCファイル管理情報に示される今まで作成したMRCファイルに対し、新規にisolated nodeになる数およびisolated linkになる数が最も多い全域木を選択する処理と、(2)MRCファイル作成部に、選択された全域木によりMRCファイルを作成させる処理と、(3)リンクコスト値変更部に、MRCファイルにおけるisolated link以外のリンクのリンクコストそれぞれの値に、ランダムな値を加算した新たなリンクコストの集合W’をN個作成させる処理とをMRCファイル作成管理情報において、トポロジに示されるすべてのノードがisolated nodeとなり、かつ、すべてのリンクがisolated linkとなるまで実行させることを特徴とする。   In order to solve the above-described problem, the invention described in claim 1 is an MRC file creation device that creates an MRC (Multiple Routing Configurations) file indicating a detour path when a node failure and a link failure occur in a network. Then, topology information indicating the topology of the network, and MRC file creation management information indicating the node that has become an isolated node and the link that has become an isolated link in the MRC file created so far for the topology are stored. A storage unit, a link cost initial value creation unit that generates an initial value W0, which is a set of initial values of link costs of each link in the topology, using a random number, and a topology by the Kruskal method using the generated initial value W0 A spanning tree creation unit that deletes at least some of the links and creates a spanning tree of the topology , Referring to the topology, the terminal node in the spanning tree created by the spanning tree creation unit is set as an isolated node in the MRC file, and the link connected to this terminal node is defined as a restricted link, which is deleted when creating the spanning tree. An MRC file creation unit that creates an MRC file of the topology using the isolated link as an isolated link, and records the node that has become the isolated node and the link that has become the isolated link in the MRC file management information in the created MRC file; After the MRC file is created by the MRC file creation unit, N new sets of link costs W ′ are created by adding random values to the link cost values of links other than the isolated link in the MRC file. Link cost value change unit, spanning tree creation unit, MRC file creation unit, A repetitive control unit that controls the cost value changing unit, and an output unit that outputs the MRC file group created by the MRC file creating unit, and the repetitive control unit includes (1) a new link to the spanning tree creating unit When a spanning tree is created using the link cost values of the cost sets W′1 to W′N and an MRC file is created from the created spanning tree, the MRC file management information includes A process for selecting a spanning tree having the largest number of newly isolated nodes and isolated links for the MRC files created so far, and (2) the MRC file creation unit using the selected spanning tree Processing to create an MRC file, (3) The link cost value changing unit randomly selects a link cost value for a link other than an isolated link in the MRC file. In the MRC file creation management information, a process for creating a new set of link costs W ′ by adding values W ′ is performed until all nodes indicated in the topology become isolated nodes and all links become isolated links. It is made to perform.

請求項6に記載の発明は、ネットワークにおけるノード故障発生時およびリンク故障発生時の迂回経路を示したMRCファイルを作成し、ネットワークのトポロジを示したトポロジ情報と、そのトポロジに対し、今まで作成されたMRCファイルにおいてisolated nodeとなったノードおよびisolated linkとなったリンクを示したMRCファイル作成管理情報とを記憶する記憶部を備えるMRCファイル作成装置が、乱数を用いて、トポロジにおけるリンクそれぞれのリンクコストの値の集合である初期値W0を生成するステップと、リンクコストの集合の初期値W0を用いて、Kruskal法によりトポロジのリンクの少なくとも一部を削除し、トポロジの全域木を作成するステップと、トポロジを参照して、全域木作成部により作成された全域木における末端のノードを、MRCファイルにおけるisolated nodeとし、この末端のノードに接続するリンクをrestricted linkとし、全域木の作成において削除されたリンクをisolated linkとして、トポロジのMRCファイルを作成し、その作成したMRCファイルにおいて、isolated nodeとなったノードおよびisolated linkとなったリンクをMRCファイル管理情報に記録していくステップと、MRCファイルが作成された後、MRCファイルにおけるisolated link以外のリンクのリンクコストそれぞれの値に、ランダムな値を加算した新たなリンクコストの集合W’をN個作成するステップと、作成されたMRCファイル群を出力するステップとを実行し、MRCファイル作成装置が、(1)新たなリンクコストの集合W’1〜W’Nそれぞれのリンクコストの値を用いてN個の全域木を作成し、この作成した全域木のうち、当該全域木によりMRCファイルを作成した場合、MRCファイル管理情報に示される今まで作成したMRCファイルに対し、新規にisolated nodeになる数およびisolated linkになる数が最も多い全域木を選択するステップと、(2)選択した全域木によりMRCファイルを作成するステップと、(3)MRCファイルにおけるisolated link以外のリンクのリンクコストそれぞれの値に、ランダムな値を加算した新たなリンクコストの集合W’をN個作成するステップとを、MRCファイル作成管理情報において、トポロジに示されるすべてのノードがisolated nodeとなり、かつ、すべてのリンクがisolated linkとなるまで実行することを特徴とするMRCファイル作成方法とした。   The invention according to claim 6 creates an MRC file indicating a detour route when a node failure and a link failure occur in the network, and creates topology information indicating the network topology and the topology so far. An MRC file creation device having a storage unit for storing a node that has become an isolated node and an MRC file creation management information that indicates a link that has become an isolated link in the generated MRC file uses a random number for each link in the topology. Using the step of generating an initial value W0, which is a set of link cost values, and the initial value W0 of the set of link costs, at least a part of the topology links is deleted by the Kruskal method, and a topology spanning tree is created. In the spanning tree created by the spanning tree creation unit with reference to the step and topology Create an MRC file of the topology with the end node as the isolated node in the MRC file, the link connecting to this end node as the restricted link, and the link deleted in creating the spanning tree as the isolated link. In the MRC file, the step of recording the node that became the isolated node and the link that became the isolated link in the MRC file management information, and the link cost of the link other than the isolated link in the MRC file after the MRC file is created The step of creating N new sets of link costs W ′ obtained by adding a random value to the value of and the step of outputting the created MRC file group are executed. Using the link cost value of each of the new link cost sets W′1 to W′N When N spanning trees are created and an MRC file is created by using the spanning tree among the created spanning trees, the MRC file created so far indicated in the MRC file management information becomes a new isolated node. Selecting a spanning tree having the largest number and the number of isolated links; (2) creating an MRC file from the selected spanning tree; and (3) link costs of links other than isolated links in the MRC file. Creating a new link cost set W ′ by adding a random value to the value, and in the MRC file creation management information, all nodes indicated in the topology are isolated nodes and all links The MRC file creation method is characterized in that the process is executed until “I” becomes an isolated link.

このようなMRCファイル作成装置は、まず、トポロジの全域木を作成し、この全域木をベースとしてMRCファイル作成する。つまり、MRCファイルにおけるトポロジにおいて各ノードの経路到達性を確保しつつ、リンクの数をできるだけ減らしたトポロジを作成する。これにより、1つのMRCファイルに集約される故障パターン数をできるだけ多くすることができる。この後、このMRCファイル作成装置は、トポロジにおけるすべての故障パターンを網羅するMRCファイルを順次作成していくが、あるMRCファイルの作成後、次のMRCファイルを作成するとき、MRCファイル管理情報を参照して、今まで作成したMRCファイルに対し、新規なisolated node、isolated linkの数が最も増えるような全域木を作成し、この全域木を用いてMRCファイルを作成する。このようにすることで、MRCファイル作成装置が、MRCファイル群を作成するとき、そのMRCファイル同士でできるだけ故障パターンの重複のないMRCファイル群を作成することができる。従って、MRCファイル作成装置は、トポロジに対するMRCファイルの数を低減できる。なお、このMRCファイル作成装置において全域木作成に用いるKruskal法は、リンクコストの値が比較的高いリンクを除去して全域木を作成するものである。よって、この性質を利用し、リンクコストの集合作成部が新たなリンクコストの集合を作成するとき、MRCファイルにおけるisolated link以外のリンクのリンクコストの値それぞれを、ランダムに増加させたリンクコストの集合W’を作成することで、前回作成した全域木とは異なる全域木を作成しやすくなる。また、リンクコストの集合W’もN個(Nパターン)作成するので、バリエーションに富んだ全域木を作成できる。よって、MRCファイル作成装置が作成するMRCファイルもバリエーションに富んだものになり新規のisolated nodeおよびisolated linkの数が大きく増えるようなMRCファイルを発見しやすくなる。したがって、MRCファイル作成装置は、与えられたトポロジに対し、そのトポロジにおける故障パターンをすべて網羅するMRCファイル群ができるだけ少なくなるようなMRCファイル群を発見しやすくなる。   Such an MRC file creation apparatus first creates a spanning tree of the topology and creates an MRC file based on this spanning tree. In other words, a topology in which the number of links is reduced as much as possible while creating the route reachability of each node in the topology in the MRC file is created. As a result, the number of failure patterns collected in one MRC file can be increased as much as possible. Thereafter, the MRC file creation apparatus sequentially creates MRC files that cover all failure patterns in the topology. When creating the next MRC file after creating one MRC file, the MRC file management information is used. Referring to the MRC file created so far, a spanning tree having the largest number of new isolated nodes and isolated links is created, and an MRC file is created using the spanning tree. By doing so, when the MRC file creation apparatus creates the MRC file group, it is possible to create an MRC file group with as few fault patterns as possible between the MRC files. Therefore, the MRC file creation device can reduce the number of MRC files for the topology. Note that the Kruskal method used for creating spanning trees in this MRC file creation apparatus creates spanning trees by removing links with relatively high link cost values. Therefore, using this property, when the link cost set creation unit creates a new link cost set, the link cost values of links other than isolated links in the MRC file are randomly increased. By creating the set W ′, it becomes easier to create a spanning tree different from the spanning tree created last time. In addition, since N sets (N patterns) of link cost sets W ′ are created, a wide range of spanning trees can be created. Therefore, the MRC file created by the MRC file creation apparatus is also rich in variations, and it becomes easy to find an MRC file in which the number of new isolated nodes and isolated links is greatly increased. Therefore, the MRC file creation apparatus can easily find an MRC file group that minimizes the number of MRC file groups that cover all failure patterns in the topology for a given topology.

請求項2に記載の発明は、請求項1に記載のMRCファイル作成装置におけるリンクコスト値変更部が、(1)MRCファイルにおけるisolated link以外のリンクのリンクコストそれぞれに、ランダムな値を加算して新たなリンクコストの集合W’をN個作成した後、(2)作成したN個の新たなリンクコストの集合W’それぞれについて、MRCファイルにおけるisolated node以外のノードに接続するリンクのリンクコストを1つ選択し、その選択したリンクコストを、OSPF(Open Shortest Path First)において設定可能な最小値に変更し、isolated node以外のノードに接続するリンクのリンクコストのうち、選択したリンクコスト以外のリンクのリンクコストを、OSPFにおいて設定可能な最大値に変更することを特徴とする。   In the invention described in claim 2, the link cost value changing unit in the MRC file creation device described in claim 1 adds (1) a random value to each link cost of links other than the isolated link in the MRC file. After creating N new link cost sets W ′, (2) link costs of links connected to nodes other than isolated nodes in the MRC file for each of the created N new link cost sets W ′. 1 is selected, the selected link cost is changed to the minimum value that can be set in OSPF (Open Shortest Path First), and the link cost of the link connected to a node other than the isolated node is other than the selected link cost. The link cost of this link is changed to the maximum value that can be set in OSPF.

このようにすることで、MRCファイル作成装置は、新規のisolated nodeおよびisolated linkの数が大きく増えるようなMRCファイルを発見しやすくなる。したがって、MRCファイル作成装置は、与えられたトポロジに対し、そのトポロジにおける故障パターンをすべて網羅するMRCファイル群ができるだけ少なくなるようなMRCファイル群を発見しやすくなる。   By doing so, the MRC file creation device can easily find an MRC file in which the number of new isolated nodes and isolated links greatly increases. Therefore, the MRC file creation apparatus can easily find an MRC file group that minimizes the number of MRC file groups that cover all failure patterns in the topology for a given topology.

請求項3に記載の発明は、請求項1または請求項2に記載のMRCファイル作成装置におけるリンクコスト初期値作成部は、乱数を用いて、初期値WOを複数個生成し、反復制御部は、生成した初期値W0をもとに、全域木作成部、MRCファイル作成部およびリンクコスト値変更部によりMRCファイル群を作成させる処理を、生成した初期値W0の個数分実行させ、作成したMRCファイル群のうち、最もファイル数が少ないMRCファイル群を選択し、出力部は、選択されたMRCファイル群を出力することを特徴とする。   According to a third aspect of the present invention, the link cost initial value creating unit in the MRC file creating device according to the first or second aspect generates a plurality of initial values WO using random numbers, and the repetitive control unit Based on the generated initial value W0, the process of creating MRC file groups by the spanning tree creating unit, the MRC file creating unit, and the link cost value changing unit is executed by the number of generated initial values W0, and the created MRC The MRC file group having the smallest number of files is selected from the file group, and the output unit outputs the selected MRC file group.

このようにすることで、MRCファイル作成装置は、様々なMRCファイル群を作成し、その中から最もファイル数が少ないMRCファイル群を選ぶので、よりMRCファイル数の少ないMRCファイル群を発見しやすくなる。   By doing so, the MRC file creation device creates various MRC file groups and selects the MRC file group having the smallest number of files from among them, so that it is easy to find the MRC file group having the smaller number of MRC files. Become.

請求項4に記載の発明は、請求項1または請求項2に記載のMRCファイル作成装置における反復制御部が、(1)MRCファイルにおけるisolated link以外のリンクのリンクコストそれぞれに、ランダムな値を加算して作成したN個の新たなリンクコストの集合W’をもとに全域木を作成し、この作成した全域木をもとにMRCファイルを作成した場合、そのいずれの全域木によっても、MRCファイル作成管理情報に示される今まで作成したMRCファイルに対し、新規にisolated nodeになるノードを増やすMRCファイルを作成できなかったと判断したとき、(2)リンクコスト値変更部に、作成したN個の新たなリンクコストの集合W’それぞれについて、MRCファイルにおけるisolated node以外のノードに接続するリンクのリンクコストを1つ選択し、その選択したリンクコストを、OSPFにおいて設定可能な最小値に変更し、isolated node以外のノードに接続するリンクのリンクコストのうち、選択したリンクコスト以外のリンクのリンクコストを、OSPFにおいて設定可能な最大値に変更する処理を実行させることを特徴とする。   In the invention according to claim 4, the iterative control unit in the MRC file creation device according to claim 1 or 2 provides (1) a random value for each link cost of a link other than an isolated link in the MRC file. When a spanning tree is created based on a set of N new link costs W ′ created by addition, and an MRC file is created based on the created spanning tree, When it is determined that an MRC file that increases the number of newly isolated nodes could not be created with respect to the MRC file created so far indicated in the MRC file creation management information, (2) the created N For each new set of link costs W ′, the link cost of a link connected to a node other than the isolated node in the MRC file is The selected link cost is changed to the minimum value that can be set in OSPF, and the link cost of the link other than the selected link cost among the link costs of the links connected to the nodes other than the isolated node is changed to OSPF. A process of changing to a maximum value that can be set in is executed.

このようにすることでも、MRCファイル作成装置は、新規に作成するMRCファイルを、今まで作成したMRCファイルではカバーしきれていない新規なisolated nodeを含むようなMRCファイルとすることができる。ここで、MRCファイル作成装置は、リンクコストの値をランダムに増加させたN個のリンクコストの集合W’のいずれによっても、新規なisolated nodeを増やすようなMRCファイルが作成できないと判断したときに、(2)に示す処理を実行する。よって、MRCファイル作成装置は必要以上に(2)に示す処理を実行する必要がなくなる。   Also by doing in this way, the MRC file creation device can make the newly created MRC file an MRC file including a new isolated node that is not covered by the MRC file created so far. Here, when the MRC file creation apparatus determines that an MRC file that increases a new isolated node cannot be created by any of the N link cost sets W ′ obtained by randomly increasing the link cost value. Then, the process shown in (2) is executed. Therefore, the MRC file creation device does not need to execute the process shown in (2) more than necessary.

請求項5に記載の発明は、請求項1から請求項4のいずれか1項に記載のMRCファイル作成装置により作成されたMRCファイル群を用いて、ネットワーク内のノード故障またはリンク故障発生時の経路制御を行う経路制御装置とした。   According to the fifth aspect of the present invention, when an MRC file group created by the MRC file creation device according to any one of the first to fourth aspects is used, a node failure or link failure occurs in the network. The route control device performs route control.

このようにすることで、経路制御装置の保持するMRCファイル数を低減できる。   In this way, the number of MRC files held by the path control device can be reduced.

請求項7に記載の発明は、請求項6に記載のMRCファイル作成方法をコンピュータに実行させるためのプログラムとした。   The invention according to claim 7 is a program for causing a computer to execute the MRC file creation method according to claim 6.

このようなプログラムによれば、一般的なコンピュータ(例えば、ルータ)に請求項6に記載のMRCファイル作成方法を実行させることができる。   According to such a program, it is possible to cause a general computer (for example, a router) to execute the MRC file creation method according to claim 6.

本発明によれば、ルータが保持すべきMRCファイルの数を低減できる。   According to the present invention, the number of MRC files that the router should hold can be reduced.

本実施の形態のMRCファイル作成方法の概要を説明した図である。It is the figure explaining the outline | summary of the MRC file creation method of this Embodiment. 本実施の形態のMRCファイル作成方法の概要を説明した図である。It is the figure explaining the outline | summary of the MRC file creation method of this Embodiment. 本実施の形態のルータの機能ブロックである。It is a functional block of the router of this Embodiment. 図3のルータの処理手順の概要を示したフローチャートである。It is the flowchart which showed the outline | summary of the processing procedure of the router of FIG. 図4のS11の処理の詳細を示したフローチャートである。It is the flowchart which showed the detail of the process of S11 of FIG. 図4のS11の処理の詳細を示したフローチャートである。It is the flowchart which showed the detail of the process of S11 of FIG. (a)は、本実施の形態におけるリンクコストの集合の初期値W0を例示した図である。(b)は、本実施の形態におけるリンクコストの集合W1〜WNの値の増加を概念的に説明した図である。(c)は、本実施の形態における全域木GXの選択処理を概念的に示した図である。(A) is the figure which illustrated the initial value W0 of the set of link costs in this Embodiment. (B) is the figure which demonstrated notionally the increase in the value of the link cost set W1-WN in this Embodiment. (C) is the figure which showed notionally the selection process of the spanning tree GX in this Embodiment. (a)は、比較例となるMRCファイル作成方法を説明した図である。(b)は、図3のルータにより作成されるMRCファイル群を例示した図である。(A) is the figure explaining the MRC file creation method used as a comparative example. FIG. 6B is a diagram illustrating an MRC file group created by the router of FIG. 本実施の形態のMRCファイル作成装置の効果を説明するために引用した図である。It is the figure quoted in order to demonstrate the effect of the MRC file creation apparatus of this Embodiment. 本実施の形態の故障復旧装置の機能ブロック図である。It is a functional block diagram of the failure recovery apparatus of the present embodiment. 比較例となるMRCファイル作成方法を説明した図である。It is a figure explaining the MRC file creation method used as a comparative example. MRCファイルを例示した図である。It is the figure which illustrated the MRC file.

以下、本発明を実施するための形態について説明する。まず、図1および図2を用いて本実施の形態のMRCファイルの処理手順の概要を説明する。ここでは、図1のトポロジ301のMRCファイルを作成する場合を例に説明する。このトポロジ301を構成するリンクそれぞれには、乱数により発生させたリンクコストの初期値が与えられているものとする。MRCファイル作成装置は、このトポロジ301をもとに、全域木302を作成する。なお、全域木とは、各ノード間のリンクを一部除去し、経路到達性を確保できる最低限のリンクで構成したツリートポロジである。そして、この全域木302において、末端となっているノード(リーフのノード)を、isolated node(故障ノード)とする。また、このリーフのノードに接続するリンクをrestricted link(最終ホップでのみ用いるリンク)とする。そして、この全域木302を作成するときに削除したリンクをisolated link(故障リンク)とし、図1に示すようなMRCファイル#0を作成する。このような方法によれば、前記したMRCファイルの作成条件、すなわち、前記した(条件1)MRCファイルにおいて、isolated linkを除いたリンクは、連結グラフとなること、および、(条件3)isolated nodeには少なくとも一本のrestricted linkが接続され、それ以外のリンクはisolated linkであることを満たすMRCファイルを作成することができる。   Hereinafter, modes for carrying out the present invention will be described. First, the outline of the processing procedure of the MRC file according to the present embodiment will be described with reference to FIGS. Here, a case where an MRC file of topology 301 in FIG. 1 is created will be described as an example. Assume that an initial value of a link cost generated by a random number is given to each link constituting this topology 301. The MRC file creation apparatus creates a spanning tree 302 based on this topology 301. Note that the spanning tree is a tree topology composed of a minimum number of links that can remove a part of links between nodes and ensure route reachability. In this spanning tree 302, a node (a leaf node) at the end is set as an isolated node (failed node). In addition, a link connected to the leaf node is a restricted link (a link used only at the last hop). Then, the link deleted when creating the spanning tree 302 is set as an isolated link (failure link), and an MRC file # 0 as shown in FIG. 1 is created. According to such a method, the above-described MRC file creation conditions, that is, the link except for the isolated link in the above (Condition 1) MRC file becomes a connected graph, and (Condition 3) an isolated node It is possible to create an MRC file satisfying that at least one restricted link is connected to and other links are isolated links.

ここで、MRCファイル作成装置は、トポロジの全域木をもとにMRCファイルを作成するので、経路到達性を確保しつつ、1つのMRCファイルが多数の故障パターンの迂回経路を網羅できる。MRCファイル作成装置は、このようにしてMRCファイルを1つ作成すると、今度は、トポロジの各リンクのリンクコストの値を変更して、別の全域木を作成する。なお、本実施の形態で用いる全域木の作成方法は、Kruskal法を用いる(石畑清、「アルゴリズムとデータ構造」p280-283、岩波書店、1991年、参照)。このKruskal法では、リンクコストの値が高いものから優先的にリンクを除去して全域木を作成する。よって、トポロジの各リンクのリンクコストの値を変更することで、異なる全域木を作成することができる。そして、MRCファイル作成装置は、作成した全域木をもとにMRCファイルを作成する。このような処理を、前記したMRCファイルの作成条件、(条件3)すべてのMRCファイルにおけるisolated nodeとisolated nodeとの和集合が、もとのトポロジに一致する、という条件を満たすまで繰り返す。   Here, since the MRC file creation apparatus creates an MRC file based on the spanning tree of the topology, one MRC file can cover the detour paths of a number of failure patterns while ensuring route reachability. When one MRC file is created in this way, the MRC file creation device changes the link cost value of each link in the topology and creates another spanning tree. Note that the Kruskal method is used as a spanning tree creation method used in the present embodiment (see Kiyoshi Ishihata, “Algorithms and Data Structures” p280-283, Iwanami Shoten, 1991). In this Kruskal method, a spanning tree is created by removing links preferentially from those having a high link cost value. Therefore, different spanning trees can be created by changing the value of the link cost of each link in the topology. Then, the MRC file creation device creates an MRC file based on the created spanning tree. Such processing is repeated until the above-described MRC file creation conditions, (Condition 3), satisfy the condition that the union of isolated nodes and isolated nodes in all MRC files matches the original topology.

すなわち、MRCファイル作成装置は、図2に示すように、まず、(1)入力トポロジに対し、(2)全域木を作成する。ここでの全域木の作成は、乱数により生成された入力トポロジのリンクコストの初期値をもとに行われる。作成した全域木をもとに(3)MRCファイル(MRCファイル#0)を作成する。そして、この作成したMRCファイルの情報を(A)MRCファイル作成管理情報に記録する。ここで、(A)MRCファイル作成管理情報にまだisolated linkになっていないリンク、isolated nodeになっていないノードがある。よって、MRCファイル作成装置は、(3)で、isolated linkとならなかったリンクのリンクコストの値にランダムな値を加算して、リンクコストの値を変更する。そして、(4)この変更したリンクコストの値を用いて全域木を作成し、作成した全域木をもとに、(5)MRCファイル(MRCファイル#1)を作成する。そして、この作成したMRCファイルの情報を(B)MRCファイル作成管理情報に記録する。   That is, as shown in FIG. 2, the MRC file creation apparatus first creates (2) spanning trees for (1) input topology. The creation of the spanning tree here is performed based on the initial value of the link cost of the input topology generated by random numbers. (3) Create an MRC file (MRC file # 0) based on the created spanning tree. Then, the information of the created MRC file is recorded in (A) MRC file creation management information. Here, (A) the MRC file creation management information includes links that are not yet isolated links and nodes that are not isolated nodes. Therefore, the MRC file creation device changes the link cost value by adding a random value to the link cost value of the link that has not become an isolated link in (3). Then, (4) a spanning tree is created using the changed link cost value, and (5) an MRC file (MRC file # 1) is created based on the created spanning tree. The information of the created MRC file is recorded in (B) MRC file creation management information.

ここで、(B)MRCファイル作成管理情報にはまだisolated linkになっていないリンクおよびisolated nodeになっていないノードがある。よって、MRCファイル作成装置は、さらに、(5)で、isolated linkとならなかったリンクのリンクコストの値にランダムな値を加算して、リンクコストの値を変更する。そして、(6)この変更したリンクコストの値を用いて全域木を作成し、作成した全域木をもとに(7)MRCファイル(MRCファイル#2)を作成する。この作成したMRCファイルの情報を(C)MRCファイル作成管理情報に記録する。ここで、MRCファイル作成管理情報の、すべてのリンクがisolated linkであり、すべてのノードがisolated nodeとなっていることを確認すると、処理を終了する。この後、再度乱数を発生させて各リンクのリンクコストの初期値を設定し、全域木作成と、その作成した全域木に基づくMRCファイル作成処理を所定回数繰り返す。そして、MRCファイル作成装置は、以上の処理により作成されたMRCファイル群のうち、そのファイル数が最も少ないMRCファイル群を出力する。このようにすることで、MRCファイル作成装置は、入力トポロジに対しできるだけファイル数の少ないMRCファイル群の組み合わせを発見することができる。   Here, (B) the MRC file creation management information includes a link that is not yet an isolated link and a node that is not an isolated node. Therefore, the MRC file creation apparatus further changes the link cost value by adding a random value to the link cost value of the link that has not become an isolated link in (5). Then, (6) a spanning tree is created using the changed link cost value, and (7) an MRC file (MRC file # 2) is created based on the created spanning tree. Information on the created MRC file is recorded in (C) MRC file creation management information. Here, when it is confirmed that all the links in the MRC file creation management information are isolated links and all the nodes are isolated nodes, the process is terminated. Thereafter, random numbers are generated again to set the initial value of the link cost for each link, and spanning tree creation and MRC file creation processing based on the created spanning tree are repeated a predetermined number of times. Then, the MRC file creation device outputs the MRC file group having the smallest number of files among the MRC file groups created by the above processing. By doing so, the MRC file creation device can find a combination of MRC file groups having as few files as possible with respect to the input topology.

<構成>
次に、図3を用いて、このようなMRCファイル作成装置の構成を説明する。ここでは、MRCファイル作成装置がネットワーク内で経路制御を行うルータ(経路制御装置)により実現される場合を例に説明する。
<Configuration>
Next, the configuration of such an MRC file creation apparatus will be described with reference to FIG. Here, a case where the MRC file creation device is realized by a router (route control device) that performs route control in the network will be described as an example.

図3に示すように、ルータ10の機能は、大きく入出力部11と、処理部12と、記憶部13とに分けられる。入出力部11は、他のルータ10との間でトポロジ情報131(後記)や経路情報134のもととなるデータや、他のルータ10との間のパケットの入出力を司る。処理部12は、MRCファイルの作成処理や、作成したMRCファイルに基づく経路制御等を行う。記憶部13は、MRCファイルの作成ために必要なトポロジ情報131や経路情報134を記憶する。このような入出力部11は、ネットワーク経由でパケットの送受信を行うための通信インタフェースや、入出力インタフェースから構成される。また、処理部12は、このルータ10が備えるCPU(Central Processing Unit)によるプログラム実行処理や、専用回路等により実現される。さらに、記憶部13は、RAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)、フラッシュメモリ等の記憶媒体から構成される。なお、ルータ10をプログラム実行処理により実現する場合、記憶部13には、ルータ10の機能を実現するためのプログラムが格納される。   As shown in FIG. 3, the function of the router 10 is roughly divided into an input / output unit 11, a processing unit 12, and a storage unit 13. The input / output unit 11 controls input / output of data that is the basis of topology information 131 (described later) and path information 134 with other routers 10 and packets with other routers 10. The processing unit 12 performs MRC file creation processing, path control based on the created MRC file, and the like. The storage unit 13 stores topology information 131 and route information 134 necessary for creating an MRC file. Such an input / output unit 11 includes a communication interface for transmitting and receiving packets via a network and an input / output interface. The processing unit 12 is realized by a program execution process by a CPU (Central Processing Unit) included in the router 10 or a dedicated circuit. Further, the storage unit 13 includes a storage medium such as a random access memory (RAM), a read only memory (ROM), a hard disk drive (HDD), and a flash memory. When the router 10 is realized by program execution processing, the storage unit 13 stores a program for realizing the function of the router 10.

処理部12は、MRCファイルの作成を行うMRCファイル作成処理部121と、受信したパケットの経路制御を行う経路制御部128とを備える。   The processing unit 12 includes an MRC file creation processing unit 121 that creates an MRC file, and a route control unit 128 that performs route control of received packets.

このMRCファイル作成処理部121は、リンクコスト初期値作成部122と、全域木作成部123と、MRCファイル作成部124と、リンクコスト値変更部125と、反復制御部126と、MRCファイル群出力処理部127とを備える。   This MRC file creation processing unit 121 includes a link cost initial value creation unit 122, a spanning tree creation unit 123, an MRC file creation unit 124, a link cost value change unit 125, an iterative control unit 126, and an MRC file group output. And a processing unit 127.

このうち、リンクコスト初期値作成部122は、乱数を発生させて、トポロジ情報131に示されるネットワークのリンクそれぞれのリンクコストの値の集合である初期値W0(WO={w01,w02,w03,…,w0X,…})を作成する。なお、このリンクコスト初期値作成部122は、この初期値W0を複数個(M個)作成する。 Among these, the link cost initial value creation unit 122 generates a random number to generate an initial value W0 (WO = {w 01 , w 02 , w) which is a set of link cost values for each link of the network indicated in the topology information 131. w 03 ,..., w 0X,. The link cost initial value creating unit 122 creates a plurality (M) of initial values W0.

全域木作成部123は、与えられたリンクコストの集合の値を用いて、Kruskal法によりトポロジ情報131に示されるトポロジの全域木を作成する。このKruskal法による全域木の作成処理は、以下の手順により行われる。
(1)グラフ(トポロジ)が与えられたとき全リンクにフラグ「0」を付与する。
(2)このグラフから、リンクコスト最小のリンクを選び、そのリンクのフラグを「1」とする。
(3)残りのフラグ「0」のリンクから、コスト最小の辺を取り出す。
(4)(3)で選んだリンクのフラグを「1」としたときに、すべてのフラグ「1」のリンクによりサイクル(ループ)ができるとき、このリンクをグラフから削除する。サイクルができないときは、このリンクのフラグを「1」とする。
(5)グラフにフラグ「1」にできるリンクがなければ、そのフラグ「1」のリンクと、全ノードにより全域木が作成される。もし、グラフにフラグ「1」にできるリンクがあれば(3)へ戻る。
以上の処理により、全域木作成部123は、トポロジ情報に示されるトポロジの全域木(スパニングツリー)を作成することができる。このKruskal法では、リンクコストの値が高いリンクが除去されやすいという特性がある。
The spanning tree creation unit 123 creates a spanning tree of the topology indicated in the topology information 131 by the Kruskal method using the given link cost set value. The spanning tree creation process by the Kruskal method is performed according to the following procedure.
(1) When a graph (topology) is given, a flag “0” is assigned to all links.
(2) From this graph, the link with the lowest link cost is selected, and the flag of the link is set to “1”.
(3) The edge with the minimum cost is extracted from the remaining links with the flag “0”.
(4) When the flag of the link selected in (3) is set to “1”, when a cycle (loop) is made by all the links of the flag “1”, this link is deleted from the graph. When the cycle is not possible, the flag of this link is set to “1”.
(5) If there is no link that can be set to the flag “1” in the graph, a spanning tree is created by the link of the flag “1” and all the nodes. If there is a link that can set the flag “1” in the graph, return to (3).
Through the above processing, spanning tree creation unit 123 can create a spanning tree of the topology indicated in the topology information. This Kruskal method has a characteristic that a link with a high link cost value is easily removed.

また、この全域木作成部123は、複数のリンクコストの集合W’1〜W’Nの入力を受け付けたときには、そのそれぞれの値を用いてN個の全域木を作成する。   In addition, when the spanning tree creation unit 123 receives input of a plurality of link cost sets W′1 to W′N, it creates N spanning trees using the respective values.

MRCファイル作成部124は、トポロジ情報131に示されるネットワークのトポロジと、全域木作成部123が作成した全域木とを比較することで、MRCファイルを作成する。このMRCファイルの作成手順は、以下の通りである(図1参照)。
(1)全域木のリーフ(leaf)、つまり、全域木の末端のノードをisolated nodeとする。例えば、図1に全域木302において、リーフはノードN3,N5,N6であるので、これらのノードをisolated nodeとする。
(2)全域木のリーフに接続するリンクをrestricted linkとする。つまり、リーフに接続するリンクは1本であるので、このリンクをrestricted linkとする。例えば、図1に全域木302において、リーフはノードN3,N5,N6であるので、これらのノードに接続するリンクをrestricted linkとする。
(3)全域木の作成によって、トポロジから削除されたリンクをisolated linkとする。例えば、トポロジ301と、全域木302とを比較して、ノードN2,N3の間のリンク、ノードN3,N4の間のリンク、ノードN5,N6の間のリンクが削除されているので、これらのリンクをisolated linkとする。
The MRC file creation unit 124 creates an MRC file by comparing the network topology indicated by the topology information 131 with the spanning tree created by the spanning tree creation unit 123. The procedure for creating this MRC file is as follows (see FIG. 1).
(1) A leaf of a spanning tree, that is, a node at the end of the spanning tree is an isolated node. For example, in the spanning tree 302 in FIG. 1, since the leaves are nodes N3, N5, and N6, these nodes are set as isolated nodes.
(2) A link connected to a leaf of a spanning tree is a restricted link. That is, since there is one link connected to the leaf, this link is designated as a restricted link. For example, in the spanning tree 302 in FIG. 1, since the leaves are nodes N3, N5, and N6, links connected to these nodes are referred to as restricted links.
(3) A link deleted from the topology by creating a spanning tree is set as an isolated link. For example, the topology 301 and the spanning tree 302 are compared, and the link between the nodes N2 and N3, the link between the nodes N3 and N4, and the link between the nodes N5 and N6 are deleted. Let the link be an isolated link.

また、図3のMRCファイル作成部124は、MRCファイルを作成するたび、そのMRCファイルにおいてisolated nodeとなったノード、isolated linkとなったリンクとを、MRCファイル作成管理情報133(詳細は後記)に記録していく。このようなMRCファイル作成管理情報133を参照することで、今まで作成したMRCファイル(MRCファイル群)により、どのノードがisolated nodeとなり、どのリンクがisolated linkとなったかが分かる。   Further, whenever the MRC file is created, the MRC file creation unit 124 of FIG. 3 shows the MRC file creation management information 133 (details will be described later) as the node that became the isolated node and the link that became the isolated link in the MRC file. To record. By referring to such MRC file creation management information 133, it can be understood from the MRC file (MRC file group) created so far which node is an isolated node and which link is an isolated link.

リンクコスト値変更部125は、Wopt(前回全域木作成に用いたリンクコストの集合)を変更した新たなリンクコストの集合W’をN個作成する。ここで、リンクコスト値変更部125は、(1)Woptに示されるリンクコストのうち、非isolated linkのリンクコストの値をランダムに増加させ、(2)この非isolated nodeの中からランダムに選択した1つのノードについて、そのノードに接続するリンクのうち1本のリンクコストの値を設定可能な最小値とし、そのノードに接続する残りのリンクのリンクコストの値を最大値とする。   The link cost value changing unit 125 creates N new link cost sets W ′ in which Wopt (the set of link costs used for the previous spanning tree creation) has been changed. Here, the link cost value changing unit 125 (1) randomly increases the link cost value of the non-isolated link among the link costs indicated in Wopt, and (2) randomly selects from among the non-isolated nodes. For one node, the link cost value of one of the links connected to that node is set as the minimum value, and the link cost value of the remaining links connected to that node is set as the maximum value.

すなわち、(1)リンクコスト値変更部125は、前回全域木作成に用いたリンクコストの集合Woptを読み出すと、この値をN個コピーする。そして、そのコピーしたN個のリンクコストの集合(W1〜WN)のうち、前回作成したMRCファイルにおいて非isolated linkとなったリンクのリンクコストの値に、ランダムな値(wmin〜wmax)を加算する(後記する図7(b)参照)。ここで、非isolated linkのリンクのリンクコストの値を増加させるのは、前記したKruskal法においてリンクコストの値が高いリンクが除去されやすいからである。つまり、リンクが除去されると、MRCファイルにおいてそのリンクはisolated linkとなるので、isolated linkを増加させることができるからである。また、(2)リンクコスト値変更部125は、このN個の新たなリンクコストの集合W’それぞれについて、MRCファイルにおけるisolated node以外のノード(非isolated node)に接続するリンクを1つ選択する。そして、その選択したリンクのリンクコストを、OSPF(Open Shortest Path First)において設定可能な最小値(例えば、「1」)とする。また、その非isolated nodeに接続するリンクのうち、この最小値を設定したリンク以外のリンクコストを、OSPFにおいて設定可能な最大値(例えば、「65535」)とする。   That is, (1) When the link cost value changing unit 125 reads the link cost set Wopt used for the previous spanning tree creation, the link cost value changing unit 125 copies N of these values. Then, a random value (wmin to wmax) is added to the link cost value of the link that has become an isolated link in the previously created MRC file among the set of N link costs that have been copied (W1 to WN). (See FIG. 7B described later). Here, the link cost value of the non-isolated link is increased because a link with a high link cost value is easily removed in the above-described Kruskal method. That is, when the link is removed, the link becomes an isolated link in the MRC file, so that the isolated link can be increased. Further, (2) the link cost value changing unit 125 selects one link connected to a node other than the isolated node (non-isolated node) in the MRC file for each of the N new link cost sets W ′. . The link cost of the selected link is set to the minimum value (for example, “1”) that can be set in OSPF (Open Shortest Path First). Further, among the links connected to the non-isolated node, the link cost other than the link for which the minimum value is set is set as the maximum value (for example, “65535”) that can be set in OSPF.

すなわち、リンクコスト値変更部125は、全域木作成部123が、このリンクコストに基づき全域木を作成すると、少なくとも1つの非isolated nodeをリーフとなるようにリンクコストを変更する。つまり、リンクコスト値変更部125は、MRCファイル作成部124が作成するMRCファイルにおいてisolated nodeが増加するようなリンクコストに変更する。   That is, when the spanning tree creation unit 123 creates a spanning tree based on this link cost, the link cost value changing unit 125 changes the link cost so that at least one non-isolated node becomes a leaf. That is, the link cost value changing unit 125 changes the link cost so that the isolated node increases in the MRC file created by the MRC file creating unit 124.

反復制御部126は、前記した条件2(MRCファイルにおけるisolated nodeとisolated linkとの和集合が、トポロジ情報131に示すトポロジと一致すること)を満たすまで、リンクコスト値変更部125にリンクコスト値変更処理を実行させ、全域木作成部123に全域木作成処理を実行させ、MRCファイル作成部124にMRCファイル作成処理を実行させる。   The iterative control unit 126 keeps the link cost value changing unit 125 on the link cost value until the condition 2 (the union of the isolated node and the isolated link in the MRC file matches the topology shown in the topology information 131) is satisfied. The change processing is executed, the spanning tree creation unit 123 is caused to execute spanning tree creation processing, and the MRC file creation unit 124 is caused to execute MRC file creation processing.

具体的には、反復制御部126は、全域木作成部123に、新たなリンクコストの集合W’1〜W’Nそれぞれのリンクコストの値を用いてN個の全域木を作成させる。そして、この全域木の中から、当該全域木によりMRCファイルを作成したときに、新規にisolated nodeになる数およびisolated linkになる数が最も多い全域木を選択する。そして、反復制御部126は、MRCファイル作成部124に、この選択した全域木によりMRCファイルを作成させる。ここで、新規にisolated nodeになる数およびisolated linkになる数が最も多い全域木を選択するのは、1つのファイルあたり、できるだけ多くの故障パターンの迂回経路の情報を含むMRCファイルを作成するためである。そして、反復制御部126は、MRCファイル作成管理情報133における非isolated linkおよび非isolated nodeがなくなるまで、リンクコスト値変更部125、全域木作成部123およびMRCファイル作成部124に、リンクコスト値変更処理、全域木作成処理およびMRCファイル作成処理を実行させる。つまり、MRCファイル作成管理情報133に非isolated linkまたは非isolated nodeが残っていれば、反復制御部126は、リンクコスト値変更部125に再度リンクコスト値を変更させ、全域木作成部123にこの変更後のリンクコスト値をもとに全域木を作成させ、MRCファイル作成部124にMRCファイルを作成させる。反復制御部126は、このような処理を、リンクコスト初期値作成部122が作成したリンクコストの集合の初期値WOの個数分(例えば、M回)実行させる。そして、反復制御部126は、その結果作成されたMRCファイル群のうち、最もファイル数が少ないMRCファイル群(MRCファイルのセット)を選択する。この反復制御部126の処理手順の詳細は、フローチャートを用いて後記する。   Specifically, the iterative control unit 126 causes the spanning tree creation unit 123 to create N spanning trees using the link cost values of the new link cost sets W′1 to W′N. From the spanning tree, the spanning tree having the largest number of isolated nodes and the number of isolated links when the MRC file is created by the spanning tree is selected. Then, the repetition control unit 126 causes the MRC file creation unit 124 to create an MRC file using the selected spanning tree. Here, the reason why the spanning tree having the largest number of isolated nodes and the largest number of isolated links is selected is to create an MRC file including information on the detour paths of as many fault patterns as possible per file. It is. The iterative control unit 126 then changes the link cost value to the link cost value changing unit 125, the spanning tree creating unit 123, and the MRC file creating unit 124 until there is no non-isolated link and non-isolated node in the MRC file creation management information 133. Processing, spanning tree creation processing, and MRC file creation processing are executed. That is, if a non-isolated link or non-isolated node remains in the MRC file creation management information 133, the iterative control unit 126 causes the link cost value change unit 125 to change the link cost value again, and causes the spanning tree creation unit 123 to change this link cost value. A spanning tree is created based on the link cost value after the change, and the MRC file creation unit 124 creates an MRC file. The iterative control unit 126 executes such processing for the number of initial values WO of the set of link costs created by the link cost initial value creation unit 122 (for example, M times). Then, the repetitive control unit 126 selects an MRC file group (a set of MRC files) having the smallest number of files among the MRC file groups created as a result. Details of the processing procedure of the repetitive control unit 126 will be described later using a flowchart.

MRCファイル群出力処理部(出力部)127は、反復制御部126が選択したMRCファイル群を記憶部13へ出力する。   The MRC file group output processing unit (output unit) 127 outputs the MRC file group selected by the repetition control unit 126 to the storage unit 13.

次に、経路制御部128を説明する。経路制御部128は、経路計算部129と、パケット転送部130とを備える。経路計算部129は、トポロジ情報131やMRCファイル群132に基づき、転送経路の計算を行い、経路情報134(後記)や、故障パターンごとの迂回経路情報135(後記)を作成する。例えば、経路情報134は、パケットの宛先アドレスごとに、このパケットを出力するためのインタフェースを示した情報である。また、迂回経路情報135は、故障パターンごとに、その故障パターンの故障が発生した場合における、パケットの宛先アドレスごとの、当該パケットを出力するためのインタフェースを示した情報である。   Next, the route control unit 128 will be described. The route control unit 128 includes a route calculation unit 129 and a packet transfer unit 130. The route calculation unit 129 calculates a transfer route based on the topology information 131 and the MRC file group 132, and creates route information 134 (described later) and detour route information 135 (described later) for each failure pattern. For example, the route information 134 is information indicating an interface for outputting the packet for each destination address of the packet. The detour route information 135 is information indicating an interface for outputting the packet for each destination address of the packet when a failure of the failure pattern occurs for each failure pattern.

パケット転送部130は、受信したパケットの宛先アドレスをもとに、経路情報134または迂回経路情報135を参照して、このパケットの出力インタフェースを選択し、この選択した出力インタフェースからパケットを出力する。ここで、故障発生時にはパケット転送部130は迂回経路情報135を参照して、パケットの出力インタフェースを選択するが、どの迂回経路情報135を用いればよいかは、このルータ10に入力される故障情報に基づき判断される。   The packet transfer unit 130 refers to the route information 134 or the detour route information 135 based on the destination address of the received packet, selects an output interface of the packet, and outputs the packet from the selected output interface. Here, when a failure occurs, the packet transfer unit 130 refers to the detour route information 135 and selects an output interface of the packet. Which detour route information 135 should be used depends on the failure information input to the router 10. Judgment based on.

次に、記憶部13を説明する。記憶部13は、トポロジ情報131と、MRCファイル群132と、MRCファイル作成管理情報133と、経路情報134と、迂回経路情報135とを記憶する。   Next, the storage unit 13 will be described. The storage unit 13 stores topology information 131, an MRC file group 132, MRC file creation management information 133, route information 134, and detour route information 135.

トポロジ情報131は、ネットワーク内の各ノード(ルータ)の識別情報や、そのそれぞれのノードがどのリンクにより接続されているか等を示した情報である。このトポロジ情報131は、例えば、図1のトポロジ301に示すような情報である。このトポロジ情報131は、全域木の作成やMRCファイルの作成において参照される。   The topology information 131 is information indicating the identification information of each node (router) in the network, the link to which each node is connected, and the like. The topology information 131 is, for example, information as shown in the topology 301 in FIG. The topology information 131 is referred to when creating a spanning tree or an MRC file.

MRCファイル群132は、MRCファイル群出力処理部127により出力されたMRCファイル群である。このMRCファイル群は、迂回経路情報135の作成に用いられる。   The MRC file group 132 is an MRC file group output by the MRC file group output processing unit 127. This MRC file group is used to create the detour route information 135.

MRCファイル作成管理情報133は、MRCファイル作成部124が作成したMRCファイルにおいて、isolated linkとなったリンク、isolated nodeとなったノードを記録した情報である(図2の(A)〜(C)に示すMRCファイル作成管理情報参照)。反復制御部126は、このMRCファイル作成管理情報133を参照することで、与えられたトポロジに対し、すべてのノード故障およびリンク故障をカバーするようなMRCファイル群を作成できたか否かを判断できる。   The MRC file creation management information 133 is information in which links that have become isolated links and nodes that have become isolated nodes are recorded in the MRC file created by the MRC file creation unit 124 ((A) to (C) in FIG. 2). (Refer to MRC file creation management information). The iterative control unit 126 can determine whether or not an MRC file group that covers all node failures and link failures can be created for a given topology by referring to the MRC file creation management information 133. .

経路情報134は、パケットの宛先アドレスごとに、このパケットを出力するためのインタフェースを示した情報である。また、迂回経路情報135は、故障パターンごとに、その故障パターンの故障が発生した場合における、パケットの宛先アドレスごとの、当該パケットを出力するためのインタフェースを示した情報である。   The route information 134 is information indicating an interface for outputting the packet for each destination address of the packet. The detour route information 135 is information indicating an interface for outputting the packet for each destination address of the packet when a failure of the failure pattern occurs for each failure pattern.

<処理手順>
図3を参照しつつ、図4を用いてルータ10によるMRCファイル作成処理の概要を説明する。まず、図3のルータ10は、リンクコスト初期値作成部122により、リンクコストの初期値W0をM個(Mパターン)作成すると、その作成したM個の初期値WOの中から選択した初期値W0を用いてMRCファイル群を作成する(S11)。そして、この作成したMRCファイル群を記憶部13に記録する(S12)。なお、このS11におけるMRCファイル群の作成処理の詳細は後記する。次に、ルータ10の反復制御部126は、S11に示すMRCファイル群の作成処理をM回実行したか否かを判断する(S13)。つまり、作成したM個の初期値W0すべてについてMRCファイル群を作成した否かを判断し、作成したM個の初期値W0すべてについてMRCファイル群を作成したと判断したとき(S13のYes)、作成したMRCファイル群のうち、ファイル数が最も少ないMRCファイル群(MRCファイル群のセット)を選択し、記憶部13へ出力する(S14)。一方、反復制御部126がまだMRCファイル群の作成処理をM回実行していないと判断したとき(S13のNo)、S11へ戻り、MRCファイル群の作成処理を実行する。
<Processing procedure>
The outline of the MRC file creation processing by the router 10 will be described with reference to FIG. First, when the link cost initial value creation unit 122 creates M (M patterns) link cost initial values W0, the router 10 in FIG. 3 selects initial values selected from the created M initial values WO. An MRC file group is created using W0 (S11). Then, the created MRC file group is recorded in the storage unit 13 (S12). Details of the MRC file group creation process in S11 will be described later. Next, the iterative control unit 126 of the router 10 determines whether or not the MRC file group creation processing shown in S11 has been executed M times (S13). That is, when it is determined whether the MRC file group has been created for all the created M initial values W0, and when it is determined that the MRC file group has been created for all the created M initial values W0 (Yes in S13), Among the created MRC file groups, the MRC file group (set of MRC file groups) with the smallest number of files is selected and output to the storage unit 13 (S14). On the other hand, when the iterative control unit 126 determines that the MRC file group creation process has not been executed M times (No in S13), the process returns to S11 to execute the MRC file group creation process.

このようにルータ10は、M個(Mパターン)のリンクコストの集合の初期値W0それぞれについて、MRCファイル群を作成するので、様々なMRCファイル群を作成することができる。よって、ルータ10は、できるだけファイル数の少ないMRCファイル群(MRCファイルのセット)を発見しやすくなる。   Thus, since the router 10 creates MRC file groups for each of the initial values W0 of the set of M (M patterns) link costs, various MRC file groups can be created. Therefore, the router 10 can easily find an MRC file group (a set of MRC files) having as few files as possible.

次に、図3を参照しつつ、図5および図6を用いて、図4のS11の処理の詳細を説明する。まず、図3のルータ10のリンクコスト初期値作成部122は、乱数を発生させ、リンクコストの集合の初期値W0を生成する(S21)。そして、この初期値W0を、Woptに代入し(S22)、MRCファイルの管理変数i=0とする(S23)。   Next, the details of the process of S11 of FIG. 4 will be described using FIG. 5 and FIG. 6 with reference to FIG. First, the link cost initial value creating unit 122 of the router 10 in FIG. 3 generates a random number and generates an initial value W0 of a set of link costs (S21). Then, the initial value W0 is substituted into Wopt (S22), and the management variable i = 0 of the MRC file is set (S23).

次に、ルータ10の全域木作成部123は、このWoptの値に基づき全域木を作成し、MRCファイル作成部124は、この全域木によりMRCファイルを作成し(S24)、管理変数iの値を1増加させる(S25)。作成したMRCファイルは、記憶部13の所定領域に記憶される。また、作成したMRCファイルにより新規にisolated nodeとなったノードおよびisolated linkとなったリンクは、MRCファイル作成管理情報133(図2の(A)〜(C)参照)に記録する。ここで、反復制御部126は、このMRCファイル作成管理情報133を参照して、全MRCファイルにおける非isolated nodeV’および非isolated nodeの集合であるG’=(V’,E’)を作成する(S26)。そして、このG’が空集合であれば(S27のYes)、MRCファイル群出力処理部127は全MRCファイル(MRCファイル群)を出力する(S30)。   Next, the spanning tree creation unit 123 of the router 10 creates a spanning tree based on the value of Wopt, and the MRC file creation unit 124 creates an MRC file from the spanning tree (S24), and the value of the management variable i Is increased by 1 (S25). The created MRC file is stored in a predetermined area of the storage unit 13. In addition, the node that has become an isolated node and the link that has become an isolated link by the created MRC file are recorded in the MRC file creation management information 133 (see FIGS. 2A to 2C). Here, the iterative control unit 126 refers to the MRC file creation management information 133 and creates G ′ = (V ′, E ′), which is a set of non-isolated node V ′ and non-isolated nodes in all MRC files. (S26). If G ′ is an empty set (Yes in S27), the MRC file group output processing unit 127 outputs all MRC files (MRC file groups) (S30).

一方、S27において、このG’が空集合でなければ(S27のNo)、反復制御部126は、このG’に含まれるノードとリンクを、それぞれisolated node、isolated linkとして1つのMRCファイルを作成可能か否かを判断する(S28)。ここで、1つのMRCファイルを作成可能であれば(S28のYes)、MRCファイル作成部124によりMRCファイルを作成し(S29)、MRCファイル群出力処理部127は作成した全MRCファイル(MRCファイル群)を出力する(S30)。   On the other hand, if this G ′ is not an empty set in S27 (No in S27), the iterative control unit 126 creates one MRC file with the nodes and links included in this G ′ as isolated nodes and isolated links, respectively. It is determined whether or not it is possible (S28). If one MRC file can be created (Yes in S28), the MRC file creation unit 124 creates an MRC file (S29), and the MRC file group output processing unit 127 creates all the MRC files (MRC file). Group) is output (S30).

一方、S28において1つのMRCファイルを作成可能でなければ(S28のNo)、図6のS31へ進む。図3のリンクコスト値変更部125は、まず、Woptの値をコピーしたN個のリンクコストの集合W1〜WNを作成する(S31)。そして、リンクコスト値変更部125は、リンクコストの集合W1〜WNの中から選択したリンクコストの集合Wに対し、以下の処理を実行する。すなわち、リンクコスト値変更部125は、このリンクコストの集合Wのうち、非isolated linkのリンクコストの値をwmin〜wmaxの範囲でランダムに増加させる(S32)。   On the other hand, if one MRC file cannot be created in S28 (No in S28), the process proceeds to S31 in FIG. The link cost value changing unit 125 in FIG. 3 first creates a set of N link costs W1 to WN obtained by copying the value of Wopt (S31). Then, the link cost value changing unit 125 executes the following processing on the link cost set W selected from the link cost sets W1 to WN. That is, the link cost value changing unit 125 randomly increases the link cost value of the non-isolated link in the link cost set W in the range of wmin to wmax (S32).

例えば、図7(a)に示すように初期値W0が{w01,w02,w03,…,w0X,…}であった場合、リンクコスト値変更部125は、(b)に示すように、まずこの初期値WOをN個コピーし、W1〜WNを作成する。そして、そのW1〜WNの中から今回の処理の対象のWを選択し、この選択したWのリンクコストのうち、非isolated linkのリンクコストにwmin〜wminの値を加算する。例えば、w02、w0Xが非isolated linkのリンクコストである場合、W1におけるw02、w0Xの値に、wmin〜wmaxからランダムに選択した値(wa,wc)を加算する。 For example, as shown in FIG. 7A, when the initial value W0 is {w 01 , w 02 , w 03 ,..., W 0X,. First, N initial values WO are copied to create W1 to WN. Then, the target W of the current process is selected from the W1 to WN, and the value of wmin to wmin is added to the link cost of the non-isolated link among the link costs of the selected W. For example, when w 02 and w 0X are link costs of non-isolated links, values (wa, wc) randomly selected from wmin to wmax are added to the values of w 02 and w 0X in W1.

図6の説明に戻る。このようにしてリンクコスト値変更部125が、初期値W0におけるリンクコストの値を増加させると、次に、リンクコスト値変更部125は、MRCファイル作成管理情報133を参照して、非isolated nodeを選択する。そして、その選択した非isolated nodeに接続するリンクに対し、1つのリンクはOSPFで設定可能な最小のリンクコスト(例えば、「1」)を設定し、残りのリンクには設定可能な最大のリンクコスト(例えば、「65535」)を設定する。これにより、全域木作成部123がこのリンクコストをもとに全域木を作成すると、選択した非isolated nodeは全域木のリーフ(図1の全域木302参照)となる。つまり、この全域木をもとにMRCファイルを作成すると、このノードはisolated nodeになるので、MRCファイル作成部124は、新規のisolated nodeを増やすようなMRCファイルを作成することができる。   Returning to the description of FIG. When the link cost value changing unit 125 increases the value of the link cost at the initial value W0 in this way, the link cost value changing unit 125 then refers to the MRC file creation management information 133 to determine the non-isolated node. Select. Then, for the link connected to the selected non-isolated node, one link sets the minimum link cost (for example, “1”) that can be set by OSPF, and the maximum link that can be set for the remaining links. Set the cost (for example, “65535”). Thus, when the spanning tree creation unit 123 creates a spanning tree based on this link cost, the selected non-isolated node becomes a leaf of the spanning tree (see the spanning tree 302 in FIG. 1). In other words, when an MRC file is created based on this spanning tree, this node becomes an isolated node, so the MRC file creation unit 124 can create an MRC file that increases the number of new isolated nodes.

ここで、反復制御部126が、S31で作成したリンクコストの集合W1〜WNについて処理を終了していると判断したとき(S34のYes)、全域木作成部123は、S32およびS33の処理後のリンクコストの集合W1〜WNを用いて全域木G1〜GNを作成する(S35)。一方、S34において、まだリンクコストの集合W1〜WNについて処理を終了していなければ(S34のNo)、S32へ戻る。S35の後、反復制御部126は、MRCファイル作成管理情報133を参照して、全域木G1〜GNの中から、新規にisolated node、isolated linkとなる数が最も多い全域木GXを選択する(S36)。   Here, when the iterative control unit 126 determines that the processing has been completed for the link cost sets W1 to WN created in S31 (Yes in S34), the spanning tree creation unit 123 performs the processing in S32 and S33. The spanning trees G1 to GN are created using the link cost sets W1 to WN (S35). On the other hand, in S34, if the processing has not been completed for the link cost sets W1 to WN (No in S34), the process returns to S32. After S35, the iterative control unit 126 refers to the MRC file creation management information 133, and selects the spanning tree GX having the largest number of isolated nodes and isolated links from the spanning trees G1 to GN ( S36).

例えば、図7(b)に示すように、全域木作成部123は、リンクコストの集合W1〜WNに基づき、全域木G1〜GNを作成する。そして、反復制御部126は、(c)に示すようにMRCファイル作成管理情報133と、全域木G1〜GNそれぞれに基づきMRCファイルを作成したときに、新規にisolated link、isolated nodeとなる数が最も多い全域木GXを選択する(S36)。そして、反復制御部126は、この全域木GX作成のもととなったリンクコストの集合WXを、Woptに代入する(S37)。そして図5のS24へ戻る。   For example, as shown in FIG. 7B, the spanning tree creation unit 123 creates spanning trees G1 to GN based on the link cost sets W1 to WN. Then, as shown in (c), the iterative control unit 126 creates new isolated links and isolated nodes when the MRC file is created based on the MRC file creation management information 133 and the spanning trees G1 to GN. The most spanning tree GX is selected (S36). Then, the iterative control unit 126 substitutes the set WX of link costs, which is the basis for creating this spanning tree GX, into Wopt (S37). Then, the process returns to S24 in FIG.

ルータ10が以上のような処理を行うことで、MRCファイル1つあたりに集約できる故障パターンをできるだけ多くすることができる。よって、入力されたトポロジに対するMRCファイル数をできるだけ少なくすることができる。   By performing the above processing, the router 10 can increase the number of failure patterns that can be collected per MRC file as much as possible. Therefore, the number of MRC files for the input topology can be reduced as much as possible.

また、本実施の形態のルータ10によれば、従来技術にはない以下のような効果を得ることができる。例えば、図8(a)に示すようなトポロジにおいて、従来技術により、3つMRCファイルを作成しようすると、MRCファイルを作成できない場合もある。つまり、ノードN1,N6間のリンクをrestricted linkとし、このノードN1に接続するその他のリンクをisolated linkとし、ノードN1をisolated nodeとする(S81)。また、ノードN6,N5間のリンクをrestricted linkとし、ノードN1,N6間のリンクをisolated nodeとする(S82)。そして、ノードN5,N4間のリンクをrestricted linkとし、ノードN6,N5間のリンクをisolated nodeとする(S83)。ここで、まだすべてのノードをisolated nodeとし、すべてのリンクをisolated linkにできていない。また、目標とするMRCファイル数は「3」なので、S81で作成したMRCファイル#0に戻って処理を続ける。しかし、MRCファイル#0に対し、ノードN5,N4間のリンクを除去すると、つまりisolated linkとすると接続性(経路到達性)を確保できないので、このリンクをisolated linkにできない。すなわち、ノードN5,N4間のリンクを除去すると、ノードN6,N5間のリンクが孤立するので、前記した(条件1)MRCファイルにおいて、isolated linkを除いたリンクは、連結グラフとなることが必要である、という条件を満たすことができない。よって、与えられたトポロジに対するMRCファイルを作成できないことになる。   Moreover, according to the router 10 of this Embodiment, the following effects which are not in the prior art can be obtained. For example, in the topology as shown in FIG. 8A, if three MRC files are created by the conventional technique, there are cases where the MRC files cannot be created. That is, the link between the nodes N1 and N6 is a restricted link, the other link connected to the node N1 is an isolated link, and the node N1 is an isolated node (S81). Further, the link between the nodes N6 and N5 is set as a restricted link, and the link between the nodes N1 and N6 is set as an isolated node (S82). Then, the link between the nodes N5 and N4 is set as a restricted link, and the link between the nodes N6 and N5 is set as an isolated node (S83). Here, all nodes are not yet isolated nodes and all links are not isolated links. Since the target number of MRC files is “3”, the process returns to the MRC file # 0 created in S81 and the processing is continued. However, if the link between the nodes N5 and N4 is removed from the MRC file # 0, that is, if it is an isolated link, connectivity (route reachability) cannot be ensured, so this link cannot be an isolated link. That is, if the link between the nodes N5 and N4 is removed, the link between the nodes N6 and N5 is isolated. Therefore, in the above (Condition 1), the link excluding the isolated link needs to be a connected graph. It cannot satisfy the condition that Therefore, an MRC file for a given topology cannot be created.

一方、本実施の形態のルータ10によれば、図8(b)に示すように、(条件1)〜(条件3)を満たす3つのMRCファイル(MRCファイル#0〜#2)を作成することができる。つまり、例えば、図8(a)(b)に示すような対称性がないトポロジに対し、従来技術によりMRCファイルを作成しようとすると、故障パターン(故障による迂回経路のパターン)の集約が非効率になる。よって、目標とするMRCファイル数では、すべての故障パターンを網羅することができない場合もある。一方、本実施の形態のルータ10によれば、(1)MRCファイルにおいて故障箇所除去したトポロジを全域木により作成し、また、(2)できるだけ新規にisolated node、isolated linkを増やすようなMRCファイルを探索するという処理を行うので、MRCファイル1つあたりに含まれる故障パターンの数をできるだけ多くし、対称性がないトポロジであっても、少ないMRCファイル数で故障パターンを網羅できるようなMRCファイル群を作成することができる。   On the other hand, according to the router 10 of the present embodiment, as shown in FIG. 8B, three MRC files (MRC files # 0 to # 2) satisfying (condition 1) to (condition 3) are created. be able to. That is, for example, when an MRC file is created by a conventional technique for a topology having no symmetry as shown in FIGS. 8A and 8B, aggregation of failure patterns (detour route patterns due to failures) is inefficient. become. Therefore, the target number of MRC files may not be able to cover all failure patterns. On the other hand, according to the router 10 of the present embodiment, (1) a topology in which a fault is removed in the MRC file is created by a spanning tree, and (2) an MRC file that newly increases isolated nodes and isolated links as much as possible. MRC file that covers as many fault patterns as possible with a small number of MRC files, even if the topology is not symmetric. Groups can be created.

なお、前記した実施の形態において、図3のルータ10のリンクコスト値変更部125は、W1〜WNそれぞれのリンクコストの値をランダムに増加させて新たなリンクコストの集合W1’〜WN’を作成した後、反復制御部126が、このN個の新たなリンクコストの集合W’をもとに全域木を作成し、MRCファイルを作成した場合、新規にisolated nodeになるノードがあると判断したとき、図6のS33に示す処理を省くようにしてもよい。つまり、ルータ10は、リンクコストの値をランダムに増加させることだけでも、確実に新規のisolated nodeを増やせることが分かっていれば、S33に示す処理を行わないようにしてもよい。また、リンクコスト値変更部125は、このように図6のS32に示す処理をスキップして、S33に示す処理を実行したが、このS33に示す処理の実行により新規にisolated linkとなるリンクの数が所定の閾値よりも少なかったとき、S32に示す処理を実行するようにしてもよい。   In the above-described embodiment, the link cost value changing unit 125 of the router 10 in FIG. 3 randomly increases the link cost values of W1 to WN to create new link cost sets W1 ′ to WN ′. After the creation, the iterative control unit 126 creates a spanning tree based on the set of N new link costs W ′ and creates an MRC file, and determines that there is a node that becomes a new isolated node. Then, the process shown in S33 of FIG. 6 may be omitted. That is, the router 10 may not perform the process shown in S33 if it is known that a new isolated node can be surely increased only by increasing the link cost value at random. In addition, the link cost value changing unit 125 skips the process shown in S32 of FIG. 6 and executes the process shown in S33. However, the link cost value changing unit 125 executes the process shown in S33. When the number is smaller than a predetermined threshold, the process shown in S32 may be executed.

なお、本実施の形態のMRCファイル作成装置を、図9に示す故障復旧装置40として実現するようにしてもよい。前記した実施の形態と同様の構成要素は、同じ符号を付して説明を省略する。この故障復旧装置40は、ネットワーク情報取得装置50によりネットワーク内のルータ20およびルータ20間を接続するリンクの故障を監視し、故障発生時には、ネットワーク内の各ルータ20に対し、MRCファイルに基づく迂回経路への経路変更を指示する。このようなシステムは、故障復旧装置40と、ネットワーク情報取得装置50と、複数のルータ20からなるネットワークとを含んで構成される。故障復旧装置40は、ルータ20へ経路制御を指示するコンピュータであり、例えば、PCE(Path Computation Element)により実現される。ネットワーク情報取得装置50は、ネットワーク内のルータ20やルータ20間を接続するリンクの故障等を検出すると、この故障が発生したルータ20やリンクを故障復旧装置40へ通知する。ルータ20は、この故障復旧装置40の指示に基づき経路制御を行うIPルータである。   Note that the MRC file creation apparatus of the present embodiment may be realized as the failure recovery apparatus 40 shown in FIG. Constituent elements similar to those of the above-described embodiment are denoted by the same reference numerals and description thereof is omitted. The failure recovery device 40 monitors a failure of a link connecting the router 20 and the router 20 in the network by the network information acquisition device 50, and when a failure occurs, the router 20 in the network is bypassed based on the MRC file. Instructs a route change to the route. Such a system includes a failure recovery device 40, a network information acquisition device 50, and a network composed of a plurality of routers 20. The failure recovery apparatus 40 is a computer that instructs the router 20 to perform path control, and is realized by, for example, a PCE (Path Computation Element). When the network information acquisition device 50 detects a failure or the like of the router 20 in the network or a link connecting the routers 20, the network information acquisition device 50 notifies the failure recovery device 40 of the router 20 or the link in which this failure has occurred. The router 20 is an IP router that performs path control based on an instruction from the failure recovery apparatus 40.

このような故障復旧装置40の機能は、図10に示すように、大きく入出力部41、処理部42および記憶部43に分けられる。入出力部41は、ネットワーク内のルータ20と通信を行うための通信インタフェースや、入出力インタフェースから構成される。また、処理部42は、この故障復旧装置40の備えるCPUによるプログラム実行処理や、専用回路等により実現される。さらに、記憶部43は、RAM、ROM、HDD、フラッシュメモリ等の記憶媒体から構成される。なお、故障復旧装置40の機能をプログラム実行処理により実現する場合、記憶部43には、故障復旧装置40の機能を実現するためのプログラムが格納される。   The function of the failure recovery apparatus 40 is roughly divided into an input / output unit 41, a processing unit 42, and a storage unit 43 as shown in FIG. The input / output unit 41 includes a communication interface for communicating with the router 20 in the network and an input / output interface. The processing unit 42 is realized by a program execution process by a CPU provided in the failure recovery device 40, a dedicated circuit, or the like. Furthermore, the storage unit 43 includes a storage medium such as a RAM, a ROM, an HDD, and a flash memory. When the function of the failure recovery apparatus 40 is realized by program execution processing, the storage unit 43 stores a program for realizing the function of the failure recovery apparatus 40.

処理部42は、図3のルータ10の経路制御部128に代えて、ネットワーク内のルータ20に対し、経路制御の指示を行う経路制御部428を備えることを特徴とする。この経路制御部428は、経路計算部129と、経路制御指示部430とを備える。この経路制御指示部430は、故障発生前は、経路情報134に示される経路情報をもとにルータ20に対し経路制御を指示する。一方、図9のネットワーク情報取得装置50経由で故障情報を受信したときには、迂回経路情報135を参照して、故障したルータ20やリンクを避けるような迂回経路をルータ20に対し指示する。なお、この故障発生時にどの迂回経路情報135を用いればよいかは、故障復旧装置40に入力される故障情報に基づき判断される。このようなMRCファイル作成部124を備えることで、故障復旧装置40の保持するMRCファイル数、迂回経路情報をできるだけ削減できる。   The processing unit 42 includes a route control unit 428 that gives a route control instruction to the router 20 in the network, instead of the route control unit 128 of the router 10 in FIG. 3. The route control unit 428 includes a route calculation unit 129 and a route control instruction unit 430. The route control instruction unit 430 instructs the router 20 to perform route control based on the route information indicated by the route information 134 before the failure occurs. On the other hand, when the failure information is received via the network information acquisition device 50 of FIG. 9, the bypass route information 135 is referred to and the router 20 is instructed to avoid the failed router 20 and the link. Note that which detour route information 135 should be used when this failure occurs is determined based on the failure information input to the failure recovery device 40. By providing such an MRC file creation unit 124, the number of MRC files and detour path information held by the failure recovery apparatus 40 can be reduced as much as possible.

本実施の形態に係るルータ10および故障復旧装置40を実現するプログラムは、コンピュータによる読み取り可能な記録媒体(CD−ROM等)に記憶して提供することが可能である。また、そのプログラムを、インターネット等のネットワークを通して提供することも可能である。   The program for realizing the router 10 and the failure recovery apparatus 40 according to the present embodiment can be provided by being stored in a computer-readable recording medium (such as a CD-ROM). It is also possible to provide the program through a network such as the Internet.

10,20 ルータ
11,41 入出力部
12,42 処理部
13,43 記憶部
40 故障復旧装置
50 ネットワーク情報取得装置
121 MRCファイル作成処理部
122 リンクコスト初期値作成部
123 全域木作成部
124 MRCファイル作成部
125 リンクコスト値変更部
126 反復制御部
127 MRCファイル群出力処理部
128,428 経路制御部
129 経路計算部
130 パケット転送部
131 トポロジ情報
132 MRCファイル群
133 MRCファイル作成管理情報
134 経路情報
135 迂回経路情報
430 経路制御指示部
10, 20 Router 11, 41 Input / output unit 12, 42 Processing unit 13, 43 Storage unit 40 Failure recovery device 50 Network information acquisition device 121 MRC file creation processing unit 122 Link cost initial value creation unit 123 Spanning tree creation unit 124 MRC file Creation unit 125 Link cost value change unit 126 Repetition control unit 127 MRC file group output processing unit 128,428 Path control unit 129 Route calculation unit 130 Packet transfer unit 131 Topology information 132 MRC file group 133 MRC file creation management information 134 Path information 135 Detour route information 430 Route control instruction unit

Claims (7)

ネットワークにおけるノード故障発生時およびリンク故障発生時の迂回経路を示したMRC(Multiple Routing Configurations)ファイルを作成するMRCファイル作成装置であって、
前記ネットワークのトポロジを示したトポロジ情報と、そのトポロジに対し、今まで作成されたMRCファイルにおいてisolated nodeとなったノードおよびisolated linkとなったリンクを示したMRCファイル作成管理情報とを記憶する記憶部と、
乱数を用いて、前記トポロジにおけるリンクそれぞれのリンクコストの初期値の集合である初期値W0を生成するリンクコスト初期値作成部と、
前記生成した初期値W0を用いて、Kruskal法により前記トポロジのリンクの少なくとも一部を削除し、前記トポロジの全域木を作成する全域木作成部と、
前記トポロジを参照して、前記全域木作成部により作成された全域木における末端のノードを、前記MRCファイルにおけるisolated nodeとし、この末端のノードに接続するリンクをrestricted linkとし、前記全域木の作成において削除されたリンクをisolated linkとして、前記トポロジのMRCファイルを作成し、その作成したMRCファイルにおいて、isolated nodeとなったノードおよびisolated linkとなったリンクを前記MRCファイル管理情報に記録していくMRCファイル作成部と、
前記MRCファイル作成部により、前記MRCファイルが作成された後、前記MRCファイルにおけるisolated link以外のリンクのリンクコストそれぞれの値に、ランダムな値を加算した新たなリンクコストの集合W’をN個作成するリンクコスト値変更部と、
前記全域木作成部、前記MRCファイル作成部およびリンクコスト値変更部の制御を行う反復制御部と、
前記MRCファイル作成部により作成されたMRCファイル群を出力する出力部とを備え、
前記反復制御部は、
(1)前記全域木作成部に、前記新たなリンクコストの集合W’1〜W’Nそれぞれのリンクコストの値を用いて全域木を作成させ、この作成させた全域木のうち、当該全域木によりMRCファイルを作成した場合、前記MRCファイル管理情報に示される今まで作成したMRCファイルに対し、新規に前記isolated nodeになる数およびisolated linkになる数が最も多い全域木を選択する処理と、
(2)前記MRCファイル作成部に、前記選択された全域木によりMRCファイルを作成させる処理と、
(3)前記リンクコスト値変更部に、前記MRCファイルにおけるisolated link以外のリンクのリンクコストそれぞれの値に、ランダムな値を加算した新たなリンクコストの集合W’をN個作成させる処理とを
前記MRCファイル作成管理情報において、前記トポロジに示されるすべてのノードがisolated nodeとなり、かつ、すべてのリンクがisolated linkとなるまで実行させることを特徴とするMRCファイル作成装置。
An MRC file creation device for creating an MRC (Multiple Routing Configurations) file indicating a detour path when a node failure occurs and a link failure occurs in a network,
Storage for storing topology information indicating the topology of the network and MRC file creation management information indicating a node that has become an isolated node and a link that has become an isolated link in the MRC file that has been created so far. And
A link cost initial value creating unit that generates an initial value W0, which is a set of initial values of link costs of each link in the topology, using a random number;
Using the generated initial value W0, at least a part of the link of the topology is deleted by the Kruskal method, and a spanning tree creating unit that creates the spanning tree of the topology;
With reference to the topology, a terminal node in the spanning tree created by the spanning tree creation unit is set as an isolated node in the MRC file, a link connected to the terminal node is defined as a restricted link, and the spanning tree is created. The MRC file of the topology is created with the link deleted in step 1 as an isolated link, and the node that became the isolated node and the link that became the isolated link in the created MRC file are recorded in the MRC file management information. An MRC file creation unit;
After the MRC file is created by the MRC file creation unit, N sets of new link cost sets W ′ obtained by adding random values to the link cost values of links other than isolated links in the MRC file A link cost value change section to be created;
An iterative control unit that controls the spanning tree creation unit, the MRC file creation unit, and the link cost value change unit;
An output unit for outputting the MRC file group created by the MRC file creation unit,
The iterative control unit includes:
(1) The spanning tree creating unit creates a spanning tree using the link cost values of the new link cost sets W′1 to W′N, and among the created spanning trees, the spanning tree When an MRC file is created with a tree, a process of selecting a spanning tree having the largest number of isolated nodes and the number of isolated links for the MRC file created so far indicated in the MRC file management information. ,
(2) processing for causing the MRC file creation unit to create an MRC file from the selected spanning tree;
(3) A process of causing the link cost value changing unit to create N new link cost sets W ′ obtained by adding random values to the link cost values of links other than the isolated link in the MRC file. In the MRC file creation management information, the MRC file creation apparatus is executed until all nodes indicated in the topology become isolated nodes and all links become isolated links.
前記リンクコスト値変更部は、
(1)前記MRCファイルにおけるisolated link以外のリンクのリンクコストそれぞれに、ランダムな値を加算して新たなリンクコストの集合W’をN個作成した後、
(2)前記作成したN個の新たなリンクコストの集合W’それぞれについて、前記MRCファイルにおけるisolated node以外のノードに接続するリンクのリンクコストを1つ選択し、その選択したリンクコストを、OSPF(Open Shortest Path First)において設定可能な最小値に変更し、前記isolated node以外のノードに接続するリンクのリンクコストのうち、前記選択したリンクコスト以外のリンクのリンクコストを、OSPFにおいて設定可能な最大値に変更することを特徴とする請求項1に記載のMRCファイル作成装置。
The link cost value changing unit
(1) After creating a new set of link costs W ′ by adding a random value to each link cost of links other than the isolated link in the MRC file,
(2) For each of the created N new link cost sets W ′, one link cost of a link connected to a node other than the isolated node in the MRC file is selected, and the selected link cost is designated as OSPF. (Open Shortest Path First) is changed to the minimum value that can be set, and link costs of links other than the selected link cost among links costs connected to nodes other than the isolated node can be set in OSPF 2. The MRC file creation device according to claim 1, wherein the MRC file creation device is changed to a maximum value.
前記リンクコスト初期値作成部は、
乱数を用いて、前記初期値WOを複数個生成し、
前記反復制御部は、
前記生成した初期値W0をもとに、前記全域木作成部、前記MRCファイル作成部および前記リンクコスト値変更部によりMRCファイル群を作成させる処理を、前記生成した初期値W0の個数分実行させ、
前記作成したMRCファイル群のうち、最もファイル数が少ないMRCファイル群を選択し、
前記出力部は、前記選択されたMRCファイル群を出力することを特徴とする請求項1または請求項2に記載のMRCファイル作成装置。
The link cost initial value creating unit
A plurality of initial values WO are generated using random numbers,
The iterative control unit includes:
Based on the generated initial value W0, a process for creating MRC file groups by the spanning tree creating unit, the MRC file creating unit, and the link cost value changing unit is executed for the number of the generated initial values W0. ,
From the created MRC file group, select the MRC file group having the smallest number of files,
The MRC file creation apparatus according to claim 1, wherein the output unit outputs the selected MRC file group.
前記反復制御部は、
(1)前記MRCファイルにおけるisolated link以外のリンクのリンクコストそれぞれに、ランダムな値を加算して作成したN個の新たなリンクコストの集合W’をもとに全域木を作成し、この作成した全域木をもとにMRCファイルを作成した場合、そのいずれの全域木によっても、前記MRCファイル作成管理情報に示される今まで作成したMRCファイルに対し、新規にisolated nodeになるノードを増やすMRCファイルを作成できなかったと判断したとき、
(2)前記リンクコスト値変更部に、前記作成したN個の新たなリンクコストの集合W’それぞれについて、前記MRCファイルにおけるisolated node以外のノードに接続するリンクのリンクコストを1つ選択し、その選択したリンクコストを、OSPFにおいて設定可能な最小値に変更し、前記isolated node以外のノードに接続するリンクのリンクコストのうち、前記選択したリンクコスト以外のリンクのリンクコストを、OSPFにおいて設定可能な最大値に変更する処理を実行させることを特徴とする請求項1または請求項2に記載のMRCファイル作成装置。
The iterative control unit includes:
(1) Create a spanning tree based on a set W ′ of N new link costs created by adding a random value to each link cost of links other than isolated links in the MRC file. When an MRC file is created based on the spanning tree that has been created, the MRC that increases the number of nodes that become newly isolated nodes with respect to the MRC file created so far indicated by the MRC file creation management information by any spanning tree. When it is determined that the file could not be created,
(2) The link cost value changing unit selects one link cost of a link connected to a node other than the isolated node in the MRC file for each of the created N new link cost sets W ′. The selected link cost is changed to the minimum value that can be set in the OSPF, and the link cost of the link other than the selected link cost is set in the OSPF among the link costs of the links connected to the nodes other than the isolated node. 3. The MRC file creation apparatus according to claim 1, wherein a process of changing to a maximum possible value is executed.
請求項1から請求項4のいずれか1項に記載のMRCファイル作成装置により作成されたMRCファイル群を用いて、前記ネットワーク内のノード故障またはリンク故障発生時の経路制御を行う経路制御装置。   A path control device that performs path control when a node failure or link failure occurs in the network, using the MRC file group created by the MRC file creation device according to any one of claims 1 to 4. ネットワークにおけるノード故障発生時およびリンク故障発生時の迂回経路を示したMRCファイルを作成し、前記ネットワークのトポロジを示したトポロジ情報と、そのトポロジに対し、今まで作成されたMRCファイルにおいてisolated nodeとなったノードおよびisolated linkとなったリンクを示したMRCファイル作成管理情報とを記憶する記憶部を備えるMRCファイル作成装置が、
乱数を用いて、前記トポロジにおけるリンクそれぞれのリンクコストの値の集合である初期値W0を生成するステップと、
前記リンクコストの集合の初期値W0を用いて、Kruskal法により前記トポロジのリンクの少なくとも一部を削除し、前記トポロジの全域木を作成するステップと、
前記トポロジを参照して、前記全域木作成部により作成された全域木における末端のノードを、前記MRCファイルにおけるisolated nodeとし、この末端のノードに接続するリンクをrestricted linkとし、前記全域木の作成において削除されたリンクをisolated linkとして、前記トポロジのMRCファイルを作成し、その作成したMRCファイルにおいて、isolated nodeとなったノードおよびisolated linkとなったリンクを前記MRCファイル管理情報に記録していくステップと、
前記MRCファイルが作成された後、前記MRCファイルにおけるisolated link以外のリンクのリンクコストそれぞれの値に、ランダムな値を加算した新たなリンクコストの集合W’をN個作成するステップと、
前記作成されたMRCファイル群を出力するステップとを実行し、
前記MRCファイル作成装置が、
(1)前記新たなリンクコストの集合W’1〜W’Nそれぞれのリンクコストの値を用いてN個の全域木を作成し、この作成した全域木のうち、当該全域木によりMRCファイルを作成した場合、前記MRCファイル管理情報に示される今まで作成したMRCファイルに対し、新規に前記isolated nodeになる数およびisolated linkになる数が最も多い全域木を選択するステップと、
(2)前記選択した全域木によりMRCファイルを作成するステップと、
(3)前記MRCファイルにおけるisolated link以外のリンクのリンクコストそれぞれの値に、ランダムな値を加算した新たなリンクコストの集合W’をN個作成するステップとを、
前記MRCファイル作成管理情報において、前記トポロジに示されるすべてのノードがisolated nodeとなり、かつ、すべてのリンクがisolated linkとなるまで実行することを特徴とするMRCファイル作成方法。
An MRC file indicating a detour path when a node failure and a link failure occur in the network is created, topology information indicating the topology of the network, and an isolated node in the MRC file created so far for the topology. An MRC file creation device comprising a storage unit for storing the node and the MRC file creation management information indicating the isolated link;
Generating an initial value W0, which is a set of link cost values for each link in the topology, using random numbers;
Using the initial value W0 of the set of link costs to delete at least a part of the links of the topology by the Kruskal method and creating a spanning tree of the topology;
With reference to the topology, a terminal node in the spanning tree created by the spanning tree creation unit is an isolated node in the MRC file, a link connected to the terminal node is a restricted link, and the spanning tree is created The MRC file of the topology is created with the link deleted in step 1 as an isolated link, and the node that became the isolated node and the link that became the isolated link in the created MRC file are recorded in the MRC file management information. Steps,
After the MRC file is created, creating N new sets of link costs W ′ obtained by adding random values to the link cost values of links other than isolated links in the MRC file;
Outputting the created MRC file group,
The MRC file creation device includes:
(1) N spanning trees are created using the link cost values of the new link cost sets W′1 to W′N, and an MRC file is created by the spanning tree among the created spanning trees. Selecting a spanning tree having the largest number of isolated nodes and the number of isolated links for the MRC file created so far indicated in the MRC file management information when created,
(2) creating an MRC file from the selected spanning tree;
(3) creating N new sets of link costs W ′ obtained by adding random values to the values of link costs of links other than isolated links in the MRC file;
The MRC file creation management information is executed until all nodes indicated in the topology are isolated nodes and all links are isolated links in the MRC file creation management information.
請求項6に記載のMRCファイル作成方法をコンピュータに実行させるためのプログラム。   A program for causing a computer to execute the MRC file creation method according to claim 6.
JP2009037244A 2009-02-19 2009-02-19 MRC file creation device, MRC file creation method and program thereof Expired - Fee Related JP4981829B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009037244A JP4981829B2 (en) 2009-02-19 2009-02-19 MRC file creation device, MRC file creation method and program thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009037244A JP4981829B2 (en) 2009-02-19 2009-02-19 MRC file creation device, MRC file creation method and program thereof

Publications (2)

Publication Number Publication Date
JP2010193322A JP2010193322A (en) 2010-09-02
JP4981829B2 true JP4981829B2 (en) 2012-07-25

Family

ID=42818855

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009037244A Expired - Fee Related JP4981829B2 (en) 2009-02-19 2009-02-19 MRC file creation device, MRC file creation method and program thereof

Country Status (1)

Country Link
JP (1) JP4981829B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114009088B (en) 2019-06-20 2024-03-08 皇家飞利浦有限公司 Method for enhancing system analysis
JP7432916B2 (en) 2020-02-10 2024-02-19 国立大学法人福井大学 Failure recovery system for multiple network slices, failure recovery method, and backup network slice creation program

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3920787B2 (en) * 2003-02-17 2007-05-30 日本電信電話株式会社 Detour route management method and system
JP4422095B2 (en) * 2005-12-15 2010-02-24 日本電信電話株式会社 Alternative route calculation method and apparatus, alternative route calculation server, alternative route calculation router, and alternative route calculation program
JP4757233B2 (en) * 2007-06-13 2011-08-24 日本電信電話株式会社 Route calculation method, apparatus and program

Also Published As

Publication number Publication date
JP2010193322A (en) 2010-09-02

Similar Documents

Publication Publication Date Title
US9906378B2 (en) Capability aware routing
JP4621220B2 (en) Virtual topology design apparatus and virtual topology design method
US8634289B2 (en) Efficient protection scheme for MPLS multicast
US9264243B2 (en) Flooding and multicasting in a loop-free routing topology using routing arcs
US9246794B2 (en) Label distribution and route installation in a loop-free routing topology using routing arcs
Borokhovich et al. How (not) to shoot in your foot with sdn local fast failover: A load-connectivity tradeoff
Nguyen et al. Slick packets
EP2958269B1 (en) Method and apparatus for deploying a minimal-cost ccn topology
JPWO2011162215A1 (en) COMMUNICATION SYSTEM, CONTROL DEVICE, NODE CONTROL METHOD, AND PROGRAM
CN101227262A (en) System and method of route inhibiting
US20160323176A1 (en) Use of alternate paths in forwarding of network packets
JP5190047B2 (en) Detour route information creation device and detour route information creation method
JP4981829B2 (en) MRC file creation device, MRC file creation method and program thereof
EP2652920B1 (en) Managing stale route removal in a routing information base of a network element
JP5952779B2 (en) Network control device and network control program
JP4128944B2 (en) Multicast transfer route setting method, multicast transfer route calculation device, program, and recording medium
Luttringer et al. A fast-convergence routing of the hot-potato
JP4422114B2 (en) Failure effect degree determination method, apparatus and program
JP2007074308A (en) Method and device for computing and setting bypass circuit and program
JP2013009181A (en) Plural route search method and device
JP5321908B2 (en) Communication network, network node, communication path control method, and communication path control program
JP4809824B2 (en) BGP session design method, session design apparatus, and BGP session design program
JP2008060831A (en) Edge switch, core switch, network system and frame transfer method
Cotter et al. Survivable design of reconfigurable MPLS VPN networks
WO2022214164A1 (en) Distributed load balancing in a multi-domain network

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110222

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110819

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120301

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: 20120417

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120420

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

Free format text: PAYMENT UNTIL: 20150427

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4981829

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees