JP5022412B2 - Route information management system, route information management method, and program - Google Patents
Route information management system, route information management method, and program Download PDFInfo
- Publication number
- JP5022412B2 JP5022412B2 JP2009180328A JP2009180328A JP5022412B2 JP 5022412 B2 JP5022412 B2 JP 5022412B2 JP 2009180328 A JP2009180328 A JP 2009180328A JP 2009180328 A JP2009180328 A JP 2009180328A JP 5022412 B2 JP5022412 B2 JP 5022412B2
- Authority
- JP
- Japan
- Prior art keywords
- router
- route
- acquisition
- destination
- route calculation
- 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
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
本発明は、IP(Internet Protocol)ネットワークにおいて、インタードメインの経路情報をAS(自律システム;Autonomous System)内で分散保持する技術に関する。 The present invention relates to a technique for distributing and holding inter-domain route information in an AS (Autonomous System) in an IP (Internet Protocol) network.
インターネット等のIPネットワークは、異なる組織によって運営される多数のASが接続されて形成されている。AS間は、それぞれのASの境界ルータによって接続されている。ASは、そのASの外部を宛先とするパケットを転送する必要があるため、インターネットの経路情報をAS間でBGP(Border Gateway Protocol)を用いて交換している。そして、AS内のすべてのルータは、AS外部の外部経路情報をすべて保持する必要がある。具体的には、ASの境界ルータ同士は、eBGP(external BGP)によって、AS外部の宛先プリフィクス(prefix)(IPアドレスの集合)に対する外部経路情報(AS外部のどの境界ルータにパケットを転送すれば宛先に到達するかの情報)を交換している。そして、その外部経路情報は、iBGP(internal BGP)によって、AS内のルータに広告される。ただし、iBGPを用いてルータ間で広告するためには、IGP(Interior Gateway Protocol)によってルータ間が通信可能に接続されている必要がある。 An IP network such as the Internet is formed by connecting a number of ASs operated by different organizations. The ASs are connected by boundary routers of each AS. Since the AS needs to transfer a packet destined for the outside of the AS, the Internet route information is exchanged between the ASs using BGP (Border Gateway Protocol). All routers in the AS must hold all external route information outside the AS. Specifically, the AS boundary routers can forward external route information (a set of IP addresses) to the AS external destination prefix (a set of IP addresses) by eBGP (external BGP). Information on whether to reach the destination) is exchanged. The external route information is advertised to the router in the AS by iBGP (internal BGP). However, in order to advertise between routers using iBGP, the routers need to be connected to each other by IGP (Interior Gateway Protocol).
広告された外部経路情報を受信したルータは、受信した外部経路情報に基づいて、宛先プリフィクスごとに、どの境界ルータに転送すれば宛先に到達できるのかを示した転送経路、すなわち、最適な転送経路を計算して保持していた。したがって、ルータは、宛先プリフィクスの数に対応する外部経路情報および経路計算によって算出した転送経路情報を記憶する必要があった。また、ルータは、宛先プリフィクスの数に対応する外部経路情報をメッセージとして広告する必要があった。 The router that has received the advertised external route information indicates, based on the received external route information, a transfer route that indicates which border router can be reached for each destination prefix, that is, an optimal transfer route. Was calculated and held. Therefore, the router has to store external route information corresponding to the number of destination prefixes and transfer route information calculated by route calculation. Also, the router needs to advertise external route information corresponding to the number of destination prefixes as a message.
近年は、インターネットの急速な拡大にともなって、インターネット上に存在する宛先プリフィクスの数が増大してきている。そのため、インターネットサービスプロバイダ等のネットワーク事業者は、ネットワーク設備であるルータ等における、保持すべき経路情報の記憶容量の拡張や経路計算の処理負荷量の増大に対処せざるを得なくなり、設備更改のコスト負担増を強いられている。また、ルータ一台当りの、保持すべき経路数の増大、送信する必要のあるメッセージ数の増大、および経路計算の処理負荷量の増大は、転送すべきパケットを受信してからBGP転送経路を決定するまでの時間の増大をもたらすため、ネットワーク制御の安定性に大きな影響を及ぼす虞がある。 In recent years, with the rapid expansion of the Internet, the number of destination prefixes existing on the Internet has increased. Therefore, network operators such as Internet service providers have to deal with expansion of storage capacity of route information to be retained and increase of processing load of route calculation in routers etc. that are network equipment. Increased cost burden. In addition, the increase in the number of routes to be held per router, the increase in the number of messages that need to be transmitted, and the increase in the processing load of route calculation are as follows. This may increase the time until the determination, which may greatly affect the stability of network control.
従来技術では、ルータの処理負荷の低減のために、ルートリフレクタ(RR)(非特許文献1参照)またはASコンフェデレーション(非特許文献2参照)を導入することによって、iBGPを用いて広告するiBGPセッション数の削減が図られている。ルートリフレクタ(RR)は、ピアを確立したルートリフレクタクライアントとの間だけで外部経路情報を転送し、ピアを確立していないルートリフレクタクライアント同士では転送を行わない。そのため、ルートリフレクタ(RR)は、AS内に確立すべきピア数を、iBGPを用いてAS内の各ルータ間をフルメッシュで接続する場合より減少することが可能である。また、ASコンフェデレーションは、AS内にいくつかのサブASを構成することによって、ピア数をフルメッシュの場合より減少することが可能である。このように、ルートリフレクタ(RR)またはASコンフェデレーションでは、ピア数を減少できるため、ルータの処理負荷の増大を抑制することが可能である。 In the prior art, iBGP advertises using iBGP by introducing a route reflector (RR) (see Non-Patent Document 1) or AS confederation (see Non-Patent Document 2) in order to reduce the processing load of the router. The number of sessions is being reduced. The route reflector (RR) transfers external route information only between route reflector clients that have established peers, and does not transfer between route reflector clients that have not established peers. Therefore, the route reflector (RR) can reduce the number of peers to be established in the AS compared to a case where each router in the AS is connected with a full mesh using iBGP. Also, in AS confederation, the number of peers can be reduced as compared to the case of full mesh by configuring several sub-ASs in the AS. As described above, in the route reflector (RR) or AS confederation, the number of peers can be reduced, so that an increase in processing load on the router can be suppressed.
また、ルータの記憶容量を低減するために、Compact Routing(非特許文献3,4参照)が提案されている。Compact Routingは、パケットを一旦経路の集約点となるルータに向けて転送し、その集約点となるルータから宛先アドレスへ転送する技術である。すなわち、Compact Routingは、経路を集約することによって、各ルータの経路情報の保持に要する記憶容量を低減している。
In order to reduce the storage capacity of the router, Compact Routing (see Non-Patent
しかしながら、非特許文献1に記載のルートリフレクタ(RR)を用いる方法、および非特許文献2に記載のASコンフェデレーションを用いる方法は、iBGPトポロジがフルメッシュでなくなり、また外部経路情報を交換する際にiBGPセッションにおいて宛先プリフィクス(以降、プリフィクスともいう。)ごとに1つの経路情報しか広告しない。そのため、iBGPセッション数が削減されて、ルータの処理負荷の低減や、経路情報の記憶容量の低減にある程度の効果は認められる。しかし、ルータが一部の経路情報しか記憶しないため、不完全な外部経路情報に基づいて経路計算が実行されてしまうので、経路計算の結果が必ずしも最適とならず、また計算された経路がループとなって収束しないことがあるという問題が発生する。
However, in the method using the route reflector (RR) described in
また、非特許文献3,4に記載のCompact Routingを用いる方法は、パケットを一旦経路の集約点となるルータに集めるため、パケットの転送経路が必ずしも最適(最短)とならず、ネットワークのリソースを無駄に使用するという問題が発生する。
In addition, in the method using Compact Routing described in
そこで、本発明の課題は、前記した問題を解決しつつ、すなわち、すべての経路情報に基づいて経路計算を実行して最適な転送経路を算出することを満足しつつ、インターネットの今後の拡大に対応できる新しいルーティングアーキテクチャとして、ルータ一台当りに保持すべき経路数(記憶容量)の増大、送信するメッセージ数の増大、および処理負荷の増大を抑制する技術を提供することを目的とする。 Therefore, an object of the present invention is to solve the above-mentioned problem, that is, satisfying that the route calculation is performed based on all the route information and the optimum transfer route is calculated, and the future expansion of the Internet. It is an object of the present invention to provide a technology that suppresses an increase in the number of routes (storage capacity) to be held per router, an increase in the number of messages to be transmitted, and an increase in processing load as a new routing architecture that can be supported.
本発明は、IP(Internet Protocol)ネットワークを構成するAS(Autonomous System)内で、他のASから該他のASのIPアドレスの集合であるプリフィクスを含む外部経路情報を取得し、かつパケットを他のASに転送する複数のルータと、同一のプリフィクスを含む外部経路情報を前記ルータから収集して経路計算を実行する2以上の経路情報管理装置とが相互に通信可能に接続される経路情報管理システムであって、前記経路情報管理装置が、前記ルータから収集した前記プリフィクスごとに、そのプリフィクスを含む外部経路情報を用いて、前記AS内の2以上のルータの一まとまりを単位として前記AS内に複数設定されるルータ集合に属する少なくともいずれか1つのルータにおける、パケットの転送先のプリフィクスに至る転送経路を計算する経路計算を実行する経路計算部と、前記経路計算部によって経路計算されたルータ集合ごとの経路計算の結果を含む経路計算結果情報を送信する当該ルータ集合に属する所定数のルータを選択する格納先選択部と、当該経路計算結果情報を、前記格納先選択部によって選択された当該所定数のルータに送信する入出力部と、を備え、前記ルータが、転送すべきパケットを受信したときに、前記経路情報管理装置から受信した前記経路計算結果情報を参照して、該パケットの転送先を決定する転送経路決定部と、前記転送経路決定部によって決定された転送先に前記転送すべきパケットを送信する入出力部と、を備えることを特徴とする。 The present invention obtains external route information including a prefix, which is a set of IP addresses of other ASs, from other ASs in an AS (Autonomous System) that constitutes an IP (Internet Protocol) network, and other packets. Information management in which a plurality of routers that transfer to the AS and two or more route information management devices that collect external route information including the same prefix from the router and perform route calculation are connected to each other so as to be able to communicate with each other In the system, the path information management device uses the external path information including the prefix for each prefix collected from the router, and uses the external path information including the prefix as a unit of a group of two or more routers in the AS. Transfer route to the packet transfer destination prefix in at least one of the routers belonging to the set of routers Select a predetermined number of routers belonging to the router set that transmits the route calculation result information including the route calculation result for each router set calculated by the route calculation unit and the route calculation unit that executes the route calculation A storage destination selection unit, and an input / output unit that transmits the route calculation result information to the predetermined number of routers selected by the storage destination selection unit, and the router has received a packet to be transferred When referring to the route calculation result information received from the route information management device, the transfer route determination unit for determining the transfer destination of the packet, and the transfer to the transfer destination determined by the transfer route determination unit And an input / output unit for transmitting a power packet.
このような構成によれば、経路情報管理装置がプリフィクスに係る外部経路情報を格納するため、ルータに保持すべき経路数(記憶容量)を削減することができる。また、経路情報管理装置は、同一のプリフィクスに係る外部経路情報についてすべてを収集して経路計算を実行するため、経路計算結果が最適とならないという問題は発生しない。また、AS内に複数のルータ集合を設けた場合、そのルータ集合内のBGP経路はプリフィクスに対して共通になるため、経路情報管理装置は、ルータ集合内の一つのルータに対してだけ経路計算を実行すれば良くなる。そのため、経路情報管理装置は、すべてのルータに対して経路計算を実行する必要はなく処理負荷を低減することができる。また、ルータは、経路計算を実行しなくて良いため、処理負荷を低減することができる。さらに、経路情報管理装置によって算出されたルータ集合ごとの経路計算の結果は、ルータ集合内の所定数のルータにしか送信しないため、経路計算の結果をメッセージとして送信するときのメッセージ数を削減することができる。 According to such a configuration, since the route information management apparatus stores the external route information related to the prefix, the number of routes (storage capacity) to be held in the router can be reduced. Further, since the route information management apparatus collects all the external route information related to the same prefix and executes route calculation, there is no problem that the route calculation result is not optimal. In addition, when a plurality of router sets are provided in the AS, the BGP route in the router set is common to the prefix, so the route information management device calculates a route for only one router in the router set. If you run Therefore, the route information management apparatus does not need to perform route calculation for all routers, and can reduce the processing load. In addition, since the router does not need to perform route calculation, the processing load can be reduced. Furthermore, since the route calculation result for each router set calculated by the route information management device is transmitted only to a predetermined number of routers in the router set, the number of messages when the route calculation result is transmitted as a message is reduced. be able to.
本発明は、前記経路情報管理装置が、さらに、前記ルータ集合ごとに、少なくとも1以上のルータのルータIDとして、当該ルータの属する前記ルータ集合のルータ集合IDのビット列の後にハッシュ関数によって生成されたハッシュ値のビット列を連結したビット列を記憶する格納先ノード情報を格納する記憶部と、前記ルータ集合ごとに、前記経路計算結果情報の格納先の検索に用いる検索キーとして、当該ルータ集合のルータ集合IDのビット列、前記プリフィクスのビット列、前記プリフィクスに対するマスク値のビット列、およびパディングとしてすべて「0」のビット列を連結したビット列を生成する検索キー生成部と、を備え、前記格納先選択部が、前記格納先ノード情報に記憶している前記ルータIDと前記検索キーとの距離を、前記ルータIDと前記検索キーとのビットごとの排他的論理和を示すビット列において、左から見て最初に「1」が出現したビット位置について右から数えたビットの桁数の数値として算出し、その算出した距離の小さい順に所定数のルータを当該ルータ集合から送信先として選択することを特徴とする。 In the present invention, the route information management device is further generated by a hash function as a router ID of at least one router for each router set after a bit string of the router set ID of the router set to which the router belongs. A storage unit for storing storage destination node information for storing a bit string obtained by concatenating a bit string of hash values, and a router set of the router set as a search key used for searching the storage destination of the route calculation result information for each of the router sets An ID bit string, the prefix bit string, a bit string of a mask value for the prefix, and a search key generation unit that generates a bit string obtained by concatenating all the bit strings of “0” as padding, and the storage destination selection unit includes: Distance between the router ID stored in the storage node information and the search key Is calculated as the numerical value of the number of bits counted from the right for the bit position where “1” first appears from the left in the bit string indicating the exclusive OR for each bit of the router ID and the search key. Then, a predetermined number of routers are selected as destinations from the set of routers in ascending order of the calculated distance.
このような構成によれば、ルータIDのビット列にはルータ集合IDとハッシュ値とを含み、検索キーのビット列にはルータ集合IDとプリフィクスとを含み、ルータIDと検索キーとの距離の小さい順に所定数のルータが選択される。したがって、ルータ集合IDが一致して、プリフィクスに距離の近いハッシュ値を有するルータが選択される。そのため、選択される経路計算結果情報の格納先のルータがほぼ均等化される。すなわち、格納先のルータがルータ集合内でほぼ均等に選択されるようになり、ルータの記憶容量の平均化が実現できる。言い換えると、一台当りのルータの記憶容量は、すべての経路計算結果情報を記憶していた従来の一台のルータの記憶容量に比べて、低減できる。 According to such a configuration, the bit string of the router ID includes the router set ID and the hash value, the bit string of the search key includes the router set ID and the prefix, and the distance between the router ID and the search key is in ascending order. A predetermined number of routers are selected. Therefore, a router having a hash value with a matching router set ID and a distance close to the prefix is selected. Therefore, the storage destination routers for the selected route calculation result information are almost equalized. That is, the storage destination routers are selected almost evenly in the router set, and the router storage capacity can be averaged. In other words, the storage capacity of one router can be reduced as compared with the storage capacity of one conventional router that stores all route calculation result information.
本発明は、前記経路計算結果情報が、前記検索キーと、その検索キーに含まれるプリフィクスに対応する前記ルータ集合ごとの経路計算の結果とを関連付けた情報であることを特徴とする。 The present invention is characterized in that the route calculation result information is information in which the search key is associated with a result of route calculation for each router set corresponding to a prefix included in the search key.
このような構成によれば、経路計算結果情報が、検索キーと、その検索キーに含まれるプリフィクスに対応するルータ集合ごとの経路計算の結果とを関連付けた情報となっている。そのため、検索キーを媒介として、検索キーのプリフィクスに距離の近いノードIDのルータに、当該プリフィクスに対応するルータ集合ごとの経路計算の結果を記憶させることができる。したがって、あるプリフィクスに係る経路計算結果情報を探索する場合、当該プリフィクスを含む検索キーを用いれば、その検索キーに距離の近いノードIDのルータおよびそのルータに記憶されている当該プリフィクスに対応するルータ集合ごとの経路計算の結果を取得することができる。すなわち、一台当りのルータの記憶容量を抑制するために分散して記憶されている経路計算結果情報の中から、検索キーによって、その検索キーに含まれるプリフィクスに対応するルータ集合ごとの経路計算の結果を検索することが可能となる。 According to such a configuration, the route calculation result information is information in which the search key is associated with the result of route calculation for each router set corresponding to the prefix included in the search key. Therefore, the route calculation result for each router set corresponding to the prefix can be stored in the router having the node ID close to the prefix of the search key using the search key as a medium. Accordingly, when searching for route calculation result information related to a prefix, if a search key including the prefix is used, a router having a node ID close to the search key and a router corresponding to the prefix stored in the router The result of route calculation for each set can be acquired. That is, the route calculation for each set of routers corresponding to the prefix included in the search key is performed using the search key from the route calculation result information stored in a distributed manner to reduce the storage capacity of the router per unit. It becomes possible to search the result.
本発明は、前記ルータが、さらに、そのルータの属するルータ集合内の自身を除く少なくとも1以上のルータのルータIDを記憶する取得先ノード情報と前記経路計算結果情報とを記憶する記憶部と、転送すべきパケットを受信したとき、当該ルータの属するルータ集合IDのビット列、当該パケットの宛先IPアドレスのビット列、前記宛先IPアドレスに対するマスク値としてすべて「1」のビット列、およびパディングとしてすべて「0」のビット列を連結して形成される、取得キーを生成する取得キー生成部と、前記取得先ノード情報に記憶しているルータIDと前記取得キーとの距離を、前記ルータIDと前記取得キーとのビットごとの排他的論理和を示すビット列において、左から見て最初に「1」が出現したビット位置について右から数えたビットの桁数の数値として算出し、その算出した距離の小さい順に所定数のルータを当該ルータ集合から取得先として選択する取得先選択部と、を備え、前記転送経路決定部が、自身の前記記憶部に記憶する前記経路計算結果情報の検索キーと前記取得キーとが一致するか否かを判定し、一致するものがある場合には、その検索キーに関連付けられた前記ルータ集合ごとの経路計算の結果に基づいてパケットの転送先を決定し、一致するものがない場合には、前記取得先選択部によって取得先として選択されたルータに前記取得キーを送信して、当該ルータの記憶する前記経路計算結果情報の検索キーと前記取得キーとが一致する前記ルータ集合ごとの経路計算の結果を取得して、その取得した前記ルータ集合ごとの経路計算の結果に基づいてパケットの転送先を決定することを特徴とする。 In the present invention, the router further stores acquisition destination node information for storing router IDs of at least one router excluding itself in the router set to which the router belongs, and the route calculation result information, When a packet to be transferred is received, a bit string of a router set ID to which the router belongs, a bit string of a destination IP address of the packet, a bit string of all “1” as a mask value for the destination IP address, and all “0” as padding An acquisition key generation unit that generates an acquisition key, formed by concatenating the bit strings, a router ID stored in the acquisition destination node information, and a distance between the acquisition key, the router ID, and the acquisition key In the bit string indicating the exclusive OR of each bit, the bit position where “1” first appears from the left is shown. An acquisition destination selection unit that calculates a numerical value of the number of bits counted from the right, and selects a predetermined number of routers as acquisition destinations in ascending order of the calculated distance, and the transfer path determination unit includes Determining whether or not the search key of the route calculation result information stored in the storage unit and the acquisition key match, and if there is a match, the router associated with the search key Based on the route calculation results for each set, determine the transfer destination of the packet, and if there is no match, send the acquisition key to the router selected as the acquisition destination by the acquisition destination selection unit, Obtaining a route calculation result for each router set in which the search key and the acquisition key of the route calculation result information stored in the router match, and obtaining the route calculation for the obtained router set And determining a forwarding destination of the packet based on the results.
また、本発明は、前記転送経路決定部が、さらに、前記経路計算結果情報の検索キーと前記取得キーとが一致するものがない場合、前記取得キーの宛先IPアドレス部分の最後のゼロでないビットをゼロに変更するとともに、前記取得キーのマスク値部分の当該宛先IPアドレス部分の変更位置を含む右側のビットをゼロに変更し、その変更したビット列を新たな取得キーに設定し、その新たな取得キーを用いて、自身の前記取得先選択部によって選択された取得先のルータから、さらにその取得先のルータの前記取得先選択部によって選択された取得先のルータと経路計算結果情報とを取得することを繰り返し、取得されたすべての前記経路計算結果情報の検索キーと前記新たな取得キーとが一致するか否かを判定して、前記経路計算結果情報の検索キーと前記取得キーとが最長一致となるときの前記ルータ集合ごとの経路計算の結果に基づいてパケットの転送先を決定することを、前記取得キーの宛先IPアドレス部分のビット列がすべてゼロになるまで繰り返し実行することを特徴とする。 Further, according to the present invention, when the transfer route determination unit further has no match between the search key of the route calculation result information and the acquisition key, the last non-zero bit of the destination IP address portion of the acquisition key Is changed to zero, the right bit including the change position of the destination IP address portion of the mask value portion of the acquisition key is changed to zero, the changed bit string is set as a new acquisition key, and the new acquisition key is set. Using the acquisition key, the acquisition destination router selected by the acquisition destination selection unit of the acquisition destination router and the route calculation result information selected from the acquisition destination router selected by the acquisition destination selection unit of itself Repeatedly acquiring, determining whether or not the search key of all the acquired route calculation result information matches the new acquisition key, and the route calculation result All the bit strings of the destination IP address portion of the acquisition key determine the forwarding destination of the packet based on the result of route calculation for each router set when the search key of the information and the acquisition key have the longest match It is characterized by being repeatedly executed until it reaches zero.
このような構成によれば、ルータは、転送すべきパケットを受信したとき、まず、自身の記憶部に記憶されている経路計算結果情報の検索キーと取得キーとが一致する経路計算結果情報を抽出する。そして、一致するものがない場合には、他のルータに記憶されている経路計算結果情報を探索して、経路計算結果情報の検索キーと取得キーとが一致する経路計算結果情報を抽出することができる。すなわち、一台当りのルータの記憶容量を抑制するために分散管理されている経路計算結果情報を、取得キーと検索キーとを照合して、検索することが可能となる。また、検索キーと取得キーとが一致する経路計算結果情報が見つからない場合の処理として、取得キーの宛先IPアドレス部分のビットの有効な桁を短くしていくことによって、検索キーと取得キーとが最長一致となる経路計算結果情報を自身および他のルータから抽出することができる。したがって、転送すべきパケットを受信したルータ自身が必要な経路計算結果情報を記憶していなくても、他のルータから転送により適した経路計算結果情報を取得することができる。すなわち、ルータ集合内のルータによって経路計算結果情報が分散管理されるため、一台当りのルータの記憶容量は、すべての経路計算結果情報を記憶していた従来の一台のルータの記憶容量に比べて、低減できる。 According to such a configuration, when the router receives a packet to be transferred, first, the router calculates the route calculation result information in which the search key and the acquisition key of the route calculation result information stored in its storage unit match. Extract. If there is no match, search the route calculation result information stored in another router, and extract the route calculation result information in which the search key and the acquisition key of the route calculation result information match. Can do. That is, it becomes possible to search the route calculation result information distributedly managed in order to suppress the storage capacity of each router by checking the acquisition key and the search key. In addition, as a process when the route calculation result information in which the search key and the acquisition key match is not found, the search key and the acquisition key are reduced by shortening the effective digit of the destination IP address portion of the acquisition key. Can be extracted from itself and other routers. Therefore, even if the router itself that receives the packet to be transferred does not store the necessary route calculation result information, the route calculation result information more suitable for transfer can be acquired from other routers. That is, since the route calculation result information is distributed and managed by the routers in the router set, the storage capacity of each router is the storage capacity of one conventional router that stores all the route calculation result information. Compared to, it can be reduced.
本発明は、前記取得先ノード情報が、前記ルータIDを複数の範囲に区分し、自身のルータのルータIDから前記距離の近いルータIDほどその区分の範囲を狭く設定し、前記距離の遠いルータIDほどその区分の範囲を広く設定して、それぞれの前記範囲ごとにその範囲に属するルータのルータIDを記憶し、前記取得先選択部が、前記取得キーと前記範囲の境界のルータIDとを比較して、前記取得キーを含む前記範囲を抽出し、前記取得キーと前記抽出した範囲に属するルータのルータIDとの前記距離を算出し、前記距離の近い順に所定数のルータを取得先として選択することを特徴とする。 In the present invention, the acquisition destination node information divides the router ID into a plurality of ranges, and sets the range of the division narrower as the router ID is closer to the distance from the router ID of its own router. The range of the division is set wider as the ID, the router ID of the router belonging to the range is stored for each of the ranges, and the acquisition destination selection unit sets the acquisition key and the router ID of the boundary of the range. In comparison, the range including the acquisition key is extracted, the distance between the acquisition key and a router ID of a router belonging to the extracted range is calculated, and a predetermined number of routers are acquired in the order of the closest distance. It is characterized by selecting.
このような構成によれば、ルータIDを複数の範囲に区分して記憶しているため、取得キーを含む範囲に属するルータIDと取得キーとの距離計算を行えば良くなる。したがって、ルータに記憶されているすべてのルータIDと取得キーとの距離計算を行う必要がなく、計算処理量(処理負荷)を低減することが可能となる。 According to such a configuration, since the router ID is divided into a plurality of ranges and stored, it is only necessary to calculate the distance between the router ID belonging to the range including the acquisition key and the acquisition key. Therefore, it is not necessary to calculate the distance between all the router IDs stored in the router and the acquisition key, and the calculation processing amount (processing load) can be reduced.
本発明は、前記経路情報管理システムにおいて用いられる経路情報管理装置の経路情報管理方法であって、前記経路情報管理装置が、前記AS内の2以上のルータの一まとまりを単位として前記AS内に複数設定されるルータ集合ごとに、少なくとも所定数以上のルータのルータIDとして、当該ルータの属する前記ルータ集合のルータ集合IDのビット列の後にハッシュ関数によって生成されたハッシュ値のビット列を連結したビット列を記憶する格納先ノード情報を格納する記憶部を備え、前記ルータから収集した前記プリフィクスごとに、そのプリフィクスを含む外部経路情報を用いて、前記AS内の2以上のルータの一まとまりを単位として前記AS内に複数設定されるルータ集合に属する少なくともいずれか1つのルータにおける、パケットの転送先のプリフィクスに至る転送経路を計算する経路計算を実行する経路計算ステップと、前記ルータ集合ごとに、前記経路計算ステップによって経路計算されたルータ集合ごとの経路計算の結果を含む経路計算結果情報の格納先の検索に用いる検索キーとして、当該ルータ集合のルータ集合IDのビット列、前記プリフィクスのビット列、前記プリフィクスに対するマスク値のビット列、およびパディングとしてすべて「0」のビット列を連結したビット列を生成する検索キー生成ステップと、前記格納先ノード情報に記憶しているルータIDと前記検索キーとの距離を、当該ルータIDと前記検索キーとのビットごとの排他的論理和を示すビット列において、左から見て最初に「1」が出現したビット位置について右から数えたビットの桁数の数値として算出し、その算出した距離の小さい順に所定数のルータを当該ルータ集合から送信先として選択する格納先選択ステップと、当該経路計算結果情報を、前記格納先選択ステップによって選択された当該所定数のルータに送信する入出力ステップとを実行することを特徴とする。 The present invention is a route information management method for a route information management device used in the route information management system, wherein the route information management device has a group of two or more routers in the AS as a unit. For each set of multiple routers, a bit string obtained by concatenating a bit string of a hash value generated by a hash function after a bit string of a router set ID of the router set to which the router belongs, as a router ID of at least a predetermined number of routers. A storage unit for storing storage destination node information to be stored, and for each of the prefixes collected from the router, the external route information including the prefix is used as a unit of a group of two or more routers in the AS. In at least one of the routers belonging to a set of routers set in the AS A route calculation step for performing a route calculation for calculating a transfer route to a prefix of a packet transfer destination, and a route calculation including a route calculation result for each router set calculated by the route calculation step for each router set As a search key used for searching the storage destination of the result information, a bit string of a router set ID of the router set, a bit string of the prefix, a bit string of a mask value for the prefix, and a bit string obtained by concatenating all bit strings of “0” as padding In the bit string indicating the exclusive OR for each bit of the router ID and the search key, the search key generation step to generate, the distance between the router ID stored in the storage node information and the search key, Number from the right for the bit position where "1" first appears from the left A storage destination selection step of calculating a numerical value of the number of digits of the bits, and selecting a predetermined number of routers as a transmission destination from the router set in ascending order of the calculated distance; and the storage location selection step of the route calculation result information And an input / output step for transmitting to the predetermined number of routers selected by
また、本発明は、前記経路情報管理システムにおいて用いられるルータの経路情報管理方法であって、前記ルータが、前記AS内の2以上のルータの一まとまりを単位として前記AS内に複数設定されるルータ集合ごとに、少なくとも所定数以上のルータのルータIDとして、当該ルータの属する前記ルータ集合のルータ集合IDのビット列の後にハッシュ関数によって生成されたハッシュ値のビット列を連結したビット列を記憶する取得先ノード情報と、前記経路情報管理装置から送信される検索キーと前記ルータ集合ごとの経路計算の結果とを関連付けた情報を示す経路計算結果情報とを記憶する記憶部を備え、転送すべきパケットを受信したとき、当該ルータの属するルータ集合IDのビット列、当該パケットの宛先IPアドレスのビット列、前記宛先IPアドレスに対するマスク値としてすべて「1」のビット列、およびパディングとしてすべて「0」のビット列を連結して形成される、取得キーを生成する取得キー生成ステップと、前記取得先ノード情報に記憶しているルータIDと前記取得キーとの距離を、前記ルータIDと前記取得キーとのビットごとの排他的論理和を示すビット列において、左から見て最初に「1」が出現したビット位置について右から数えたビットの桁数の数値として算出し、その算出した距離の小さい順に所定数のルータを当該ルータ集合から取得先として選択する取得先選択ステップと、転送すべきパケットを受信したときに、自身の前記記憶部に記憶する前記経路計算結果情報の検索キーと前記取得キーとが一致するか否かを判定し、一致するものがある場合には、その検索キーに関連付けられた前記ルータ集合ごとの経路計算の結果に基づいてパケットの転送先を決定し、一致するものがない場合には、前記取得先選択部によって取得先として選択されたルータに前記取得キーを送信して、当該ルータの記憶する前記経路計算結果情報の検索キーと前記取得キーとが一致する前記ルータ集合ごとの経路計算の結果を取得して、その取得した前記ルータ集合ごとの経路計算の結果に基づいてパケットの転送先を決定する転送経路決定ステップと、前記転送経路決定ステップにおいて決定された転送先に前記パケットを転送する入出力ステップとを実行することを特徴とする。 The present invention is also a route information management method for routers used in the route information management system, wherein a plurality of routers are set in the AS in units of a group of two or more routers in the AS. For each router set, as a router ID of at least a predetermined number of routers, an acquisition destination for storing a bit string obtained by concatenating a bit string of a hash value generated by a hash function after a bit string of a router set ID of the router set to which the router belongs A storage unit for storing node information, route calculation result information indicating information relating a search key transmitted from the route information management device and a route calculation result for each router set, and a packet to be transferred When received, the bit string of the router set ID to which the router belongs and the destination IP address of the packet An acquisition key generating step for generating an acquisition key, which is formed by concatenating a bit string of all “1” as a mask value for the destination IP address and a bit string of all “0” as padding, and the acquisition destination node In the bit string indicating the exclusive OR for each bit of the router ID and the acquisition key, the distance between the router ID stored in the information and the acquisition key first appears as “1” when viewed from the left. The bit position is calculated as a numerical value of the number of bits counted from the right, and an acquisition destination selection step for selecting a predetermined number of routers as acquisition destinations from the router set in ascending order of the calculated distance and a packet to be transferred are received. When the search key of the route calculation result information stored in the storage unit and the acquisition key match, If there is a match, the packet transfer destination is determined based on the result of route calculation for each router set associated with the search key. If there is no match, the acquisition destination selection unit The acquisition key is transmitted to the router selected as the acquisition destination, and the route calculation result for each router set in which the search key of the route calculation result information stored in the router matches the acquisition key is acquired. A transfer route determination step for determining a packet transfer destination based on the obtained route calculation result for each router set; and an input / output step for transferring the packet to the transfer destination determined in the transfer route determination step; It is characterized by performing.
このような構成によれば、経路情報管理装置がプリフィクスに係る外部経路情報を格納するため、ルータに保持すべき経路数(記憶容量)を削減することができる。また、経路情報管理装置は、同一のプリフィクスに係る外部経路情報についてすべてを収集して経路計算を実行するため、経路計算結果が最適とならないという問題は発生しない。また、AS内に複数のルータ集合を設けた場合、そのルータ集合内のBGP経路はプリフィクスに対して共通に定まるため、経路情報管理装置は、ルータ集合内の1つのルータに対してだけ経路計算を実行すれば良くなる。そのため、経路情報管理装置の処理負荷を低減することができるとともに、ルータでの経路計算が不要となる。また、経路情報管理装置によって算出されたルータ集合ごとの経路計算の結果は、ルータ集合内で分散管理されるため、ルータ集合ごとに所定数のルータに格納(送信)されれば良い。そのため、経路計算の結果をメッセージとして送信するときのメッセージ数を削減することができる。また、ルータは、転送すべきパケットを受信したとき、まず、自身の記憶部に記憶されている経路計算結果情報の検索キーと取得キーとが一致する経路計算結果情報を抽出する。そして、一致するものがない場合には、他のルータに記憶されている経路計算結果情報を探索して、経路計算結果情報の検索キーと取得キーとが一致する経路計算結果情報を抽出することができる。すなわち、一台当りのルータの記憶容量を抑制するために分散管理されている経路計算結果情報を、取得キーと検索キーとを照合して、検索することが可能となる。したがって、転送すべきパケットを受信したルータ自身が必要な経路計算結果情報を記憶していなくても、他のルータからより転送に適した経路計算結果情報を取得することができる。すなわち、ルータ集合内のルータによって経路計算結果情報が分散管理されるため、一台当りのルータの記憶容量は、すべての経路計算結果情報を記憶していた従来の一台のルータの記憶容量に比べて、低減できる。 According to such a configuration, since the route information management apparatus stores the external route information related to the prefix, the number of routes (storage capacity) to be held in the router can be reduced. Further, since the route information management apparatus collects all the external route information related to the same prefix and executes route calculation, there is no problem that the route calculation result is not optimal. In addition, when a plurality of router sets are provided in the AS, the BGP route in the router set is determined in common for the prefix, so the route information management device calculates a route for only one router in the router set. If you run Therefore, the processing load of the route information management device can be reduced and route calculation at the router becomes unnecessary. Further, since the result of route calculation for each router set calculated by the route information management device is distributed and managed in the router set, it may be stored (transmitted) in a predetermined number of routers for each router set. Therefore, it is possible to reduce the number of messages when the route calculation result is transmitted as a message. Further, when receiving a packet to be transferred, the router first extracts the route calculation result information in which the search key and the acquisition key of the route calculation result information stored in its storage unit match. If there is no match, search the route calculation result information stored in another router, and extract the route calculation result information in which the search key and the acquisition key of the route calculation result information match. Can do. That is, it becomes possible to search the route calculation result information distributedly managed in order to suppress the storage capacity of each router by checking the acquisition key and the search key. Therefore, even if the router itself that receives the packet to be transferred does not store the necessary route calculation result information, the route calculation result information more suitable for transfer can be acquired from other routers. That is, since the route calculation result information is distributed and managed by the routers in the router set, the storage capacity of each router is the storage capacity of one conventional router that stores all the route calculation result information. Compared to, it can be reduced.
本発明は、前記経路情報管理方法を、コンピュータとしての経路情報管理装置またはルータに実行させるためのプログラムとした。 In the present invention, the route information management method is a program for causing a route information management device or router as a computer to execute.
このようなプログラムをインストールされたコンピュータは、このプログラムに基づいた機能を実現することができる。 A computer in which such a program is installed can realize functions based on this program.
本発明によれば、すべての経路情報に基づいて経路計算を実行して最適な転送経路を算出することを満足しつつ、ルータ一台当りに保持すべき経路数(記憶容量)の増大、送信するメッセージ数の増大、および処理負荷の増大を抑制する技術を提供することができる。 According to the present invention, an increase in the number of routes (storage capacity) to be held per router and transmission can be achieved while satisfying that route calculation is performed based on all route information to calculate an optimum transfer route. It is possible to provide a technique for suppressing an increase in the number of messages to be processed and an increase in processing load.
次に、本発明を実施するための形態(以降「本実施形態」と称す)について、適宜図面を参照しながら詳細に説明する。 Next, a mode for carrying out the present invention (hereinafter referred to as “the present embodiment”) will be described in detail with reference to the drawings as appropriate.
≪本実施形態の概要≫
初めに、本実施形態の概要について、図1を用いて説明する。図1に示すように、経路情報管理システム30は、AS1内に、外部経路情報の収集およびルーティングの管理を行う2以上のルートサーバ(経路情報管理装置)10A,10B(10)および境界ルータを含む複数のルータ20(20A,20B,・・,20L)を備えている。そして、各ルートサーバ10は、ルータ20と通信可能に接続される。各ルータ20間は、相互に通信可能に接続される。また、各ルータ20は、一点鎖線で示される、いずれかのPoP(Point of Presence)に属している。PoPは、例えば、同じ市や同じ建物等の同一のロケーションに存在するルータの集合(ルータ集合)を表している。なお、図1では、AS1は、PoP1,PoP2,PoP3,PoP4によって構成されているが、PoPの数は2以上であれば、4つに限られない。また、ルートサーバ10の台数、ルータ20の台数は図1に示した台数に限られない。また、ルータ20間の接続は、図1に示した実直線に限られない。
≪Overview of this embodiment≫
First, an outline of the present embodiment will be described with reference to FIG. As shown in FIG. 1, the route information management system 30 includes in AS1 two or more route servers (route information management devices) 10A and 10B (10) and border routers that collect external route information and manage routing. A plurality of routers 20 (20A, 20B,..., 20L) are included. Each
ここで、経路情報管理システム30において、ルータ20の記憶容量、送信する必要のあるメッセージ数、および処理負荷を抑制するために設けた3つの特徴について説明する。
(特徴1)プリフィクスに係る外部経路情報を、ルートサーバ10に集約する。
(特徴2)ルートサーバ10は、PoPごとにプリフィクスに係る経路計算を実行し、その経路計算の結果を、PoPごとにそのPoPに属する一部のルータ20に格納(送信)する。
(特徴3)PoP内では、そのPoPに属するルータ20間で、経路計算結果を分散管理し、パケットの転送に必要な経路計算結果を相互に取得する。
Here, in the route information management system 30, three features provided for suppressing the storage capacity of the
(Characteristic 1) The external route information related to the prefix is collected in the
(Characteristic 2) The
(Feature 3) Within PoP, route calculation results are distributed and managed between
(特徴1について)
図1に示すように、AS1内のルータ20Aは、AS2からプリフィクスP1に係る外部経路情報をeBGPによって受信したものとする。そして、受信したプリフィクスP1に係る外部経路情報は、ルートサーバ10Aに収集される。また、ルータ20Kが、AS3からプリフィクスP7に係る外部経路情報をeBGPによって受信したものとする。そして、受信したプリフィクスP7に係る外部経路情報は、ルートサーバ10Bに収集される。すなわち、各ルートサーバ10A,10Bは、それぞれ、異なるプリフィクスに係る外部経路情報を収集する。なお、どのルートサーバ10が、どのプリフィクスに係る外部経路情報を収集するかは、予め決められている。そのプリフィクスを収集するルートサーバの決定方法については、後記する。
(About feature 1)
As shown in FIG. 1, it is assumed that the
このようにして、ルートサーバ10は、いずれかのプリフィクスについてはすべての外部経路情報を収集できるので、すべての外部経路情報に基づいて経路計算を行うことが可能となる。つまり、背景技術の欄で説明したルートリフレクタ(RR)を用いる方法やASコンフェデレーションを用いる方法に見られるような、一部の外部経路情報に基づいて経路計算を実行してしまうことにともなう、経路計算結果が最適とならないというケースや、経路計算が収束しないというケースは起こらない。また、各ルートサーバ10がプリフィクスごとに外部経路情報を分散して担当するので、AS1内のルータ20の台数の増加に対応してルートサーバ10の台数を増加することによって、ルートサーバ10一台当りの記憶容量の増加や処理負荷の増加を抑制することが可能となる。
In this way, the
また、従来の境界ルータは、外部経路情報の受信リストおよび送信リストを記憶するRIB(Routing Information Base)と、パケットの転送先を記憶するFIB(Forwarding Information Base)とを備えていた。しかし、本実施形態の境界ルータ20では、外部経路情報の受信リストおよび送信リストは、ルートサーバ10に集約されるため、RIBが不要となる。すなわち、ルータ20に保持すべき経路数(記憶容量)を削減することができる。
In addition, the conventional border router includes an RIB (Routing Information Base) that stores a reception list and a transmission list of external route information, and an FIB (Forwarding Information Base) that stores a packet transfer destination. However, in the
(特徴2について)
ルートサーバ10は、プリフィクスごとにPoP内の1つのルータについて、経路計算を行えば良い。この理由は、以下の通りである。すなわち、通常は、AS1内のPoP間に張られるリンクのIGPリンクコストは、PoP内のリンクコストより大きい値に設定されている。そして、経路計算においては、経路を構成するリンクごとに割り当てられたリンクコストを合計した値が最も小さい経路が優先して選択される。このようにして、同じPoP内を宛先とするパケットは、そのPoPから外に出ないようにして、PoP間を行ったり来たりするような無駄な転送を防いでいる。そのため、同じPoP内のルータは、同じプリフィクスを宛先とするBGP経路については同一の経路(ネクストホップ)をとることになる。つまり、PoP内のすべてのルータにとって、AS外部向けの転送経路は共通になる。そこで、同じプリフィクスを宛先とする経路計算は、PoP内の1つのルータに対してだけ行えば良いことになる。以降、これを、“PoPごとの経路計算”と呼ぶことにする。なお、PoPごとの経路計算は、ルートサーバ10が、ルータ20における経路計算の代わりに行うもので、公知のリンクコストを用いた経路計算手法を用いることができる。ただし、このPoPごとの経路計算は、ルートサーバ10が、自身を起点として経路計算を実行するのではなく、PoP内の1つのルータ20を起点として実行する点において、公知の経路計算手法と異なるだけである。したがって、PoPごとの経路計算は、AS1内のすべてのルータ20について経路計算が行われていた従来の方法に比べると、処理負荷の低減になっていると言える。
(About feature 2)
The
また、ルートサーバ10は、経路計算結果を各PoPの一部のルータに格納(送信)する(図1の点線)。これは、後記する特徴3が備わっているために可能となっている。そして、すべてのルータ20に対して経路計算結果をメッセージとして配信していた従来に比べて、本実施形態では、メッセージ数を削減することができる。
The
(特徴3について)
境界ルータ20は、転送すべきパケットを受信して、そのパケットの転送に必要な経路計算結果を自身の記憶部23(図3参照)に記憶していないとき、自身の属するPoP内の他のルータ20から、必要な経路計算結果を取得する(図1の実線矢印)。そして、境界ルータ20は、取得した経路計算結果に基づいて、受信したパケットを転送することができる。言い換えると、PoP内のルータ20は、ルートサーバ10から格納(送信)された経路計算結果を分散管理している。すなわち、各ルータ20は、一部の経路計算結果しか記憶しなくてもよいので、従来より記憶容量を低減することができる。この分散管理の方法の詳細については、後記する。
(About feature 3)
When the
≪ルートサーバ10の機能≫
次に、本実施形態の経路情報管理システム30に用いられるルートサーバ10の機能について、図2を用いて説明する。なお、図2は、本実施形態のルートサーバ10の一部の機能のみを示し、BGPやIGP等に係る機能については記載を省略している。
<< Functions of the
Next, functions of the
図2に示すように、ルートサーバ10は、外部経路情報や経路計算結果等の各種情報の入出力を司る入出力部11と、外部経路情報に基づいて経路計算する処理部12と、記憶部13とを備える。入出力部11は、他のルータ20等との情報を入出力する。入出力部11における情報の入出力は、処理部12からの指示に基づいて行われる。
As shown in FIG. 2, the
処理部12は、ルートサーバ10が備える図示しないCPU(Central Processing Unit)と図示しないメインメモリとによって構成されている。そして、このCPUがメインメモリにアプリケーションプログラムを展開して、それを実行することにより種々の演算処理を具現化する。なお、アプリケーションプログラムは、記憶部13に格納されている。また、処理部12は、外部経路情報収集部121、経路計算部122、格納先選択部123、および検索キー生成部124を備えている。
The
外部経路情報収集部121は、境界ルータ20から広告されてくる外部経路情報を入出力部11を介して受信する。なお、同一のプリフィクスに係る外部経路情報は、すべて、同じルートサーバ10に収集される。そして、外部経路情報収集部121は、受信した外部経路情報を記憶部13の外部経路情報DB131に記憶する。経路計算部122は、外部経路情報DB131に新たに記憶された外部経路情報を読み出して、プリフィクスごとに前記した“PoPごとの経路計算”を実行し、PoPごとの経路計算の結果、すなわち最適な転送経路および次善の転送経路を算出する。予め次善の転送経路を算出しておく理由は、最適な転送経路が輻輳や故障等によって利用できない場合に、直ちにこの次善の転送経路に切り替えて用いられるようにするためである。
The external route
格納先選択部123は、格納先ノードDB132に記憶されているルータ20のルータIDと、後記するプリフィクスを含む検索キーとを用いて、経路計算部122によって算出されたPoPごとの経路計算の結果の格納(送信)先であるPoP内のルータ20を選択する。そして、格納先選択部123は、入出力部11を介し、PoPごとの経路計算の結果を、PoPごとに選択したルータ20に格納(送信)する。また、検索キー生成部124は、PoPごとの経路計算の結果を格納するときに用いる検索キーを生成する。なお、格納方法および検索キーの生成については、後記する。
The storage
記憶部13は、外部経路情報DB131および格納先ノードDB132を格納している。外部経路情報DB131は、境界ルータ20から広告されたプリフィクスに係る外部経路情報を記憶している。例えば、外部経路情報は、プリフィクスと、そのプリフィクスに関連付けられたパス属性情報とを含んでいる。パス属性情報は、AS-pathやネクストホップに至るリンクに割り当てられたリンクコスト等である。なお、AS-pathは、経由してきたASを記録しておくためのものであり、ASを経由するごとにAS番号が追加される。そして、AS-pathに記録されたAS番号の数が少ない方の経路が優先して用いられる。外部経路情報DB131に記憶されている外部経路情報は、経路計算部122によって、経路計算を実行するときに用いられる。また、格納先ノードDB132は、ルータ20を識別可能なルータIDを記憶している。このルータIDは、ASの管理者によって予め設定される。そして、格納先ノードDB132は、格納先選択部123が格納先のルータ20を選択するときに参照される。格納先ノードDB132の具体例については、後記する。
The
≪ルータ20の機能≫
次に、本実施形態のルータ20の機能について、図3を用いて説明する。なお、図3は、本実施形態のルータ20の一部の機能のみを示し、BGPやIGP等に係る機能については記載を省略している。
<< Function of
Next, the function of the
図3に示すように、ルータ20は、ルートサーバ10や他のルータ20との間で送受信される情報の入出力を制御する入出力部21と、処理部22と、記憶部23とを備える。入出力部21における情報の入出力は、処理部22からの指示に基づいて行われる。
As shown in FIG. 3, the
処理部22は、ルータ20が備える図示しないCPU(Central Processing Unit)と図示しないメインメモリによって構成されている。そして、このCPUがメインメモリにアプリケーションプログラムを展開して、それを実行することにより種々の演算処理を具現化する。なお、アプリケーションプログラムは、記憶部23に格納されている。また、処理部22は、ルートサーバ選択部221、転送経路決定部222、取得先選択部223、カプセル化処理部224、および取得キー生成部225を備えている。
The
ルートサーバ選択部221は、記憶部23のルートサーバIDDB231に記憶されているルートサーバID情報を参照して、後記するルートサーバ決定方法に基づいて、他のASから受信した外部経路情報を広告するルートサーバ10を選択する。そして、ルートサーバ選択部221は、入出力部21を介して、他のASから受信した外部経路情報を、選択したルートサーバ10へ広告する。
The route
転送経路決定部222は、転送すべきパケットを受信したときに、記憶部23の経路計算結果DB232に記憶している経路計算結果情報を探索し、そのパケットの転送先を決定する。しかし、経路計算結果DB232は、経路計算に必要な経路計算結果情報の一部しか記憶していない場合がある。その場合には、転送経路決定部222は、取得先選択部223によって選択された他のルータ20から不足している経路計算結果情報を取得する。そして、転送経路決定部222は、その取得した経路計算結果情報に基づいて、パケットの転送経路(転送先)を決定する。
When the transfer
取得先選択部223は、転送すべきパケットを受信したときに、取得先ノードDB233に記憶しているルータ20に係る情報を参照して、不足する経路計算結果情報を保持するルータ20を選択する。また、カプセル化処理部224は、転送すべきパケットに対して、出口となる境界ルータ20のアドレスのヘッダでカプセル化する処理を実行する。また、出口の境界ルータ20では、カプセル化処理部224は、カプセル化されたパケットから、その出口の境界ルータ20のアドレスのヘッダを取り外す処理を実行する。また、取得キー生成部225は、経路計算結果情報の取得先のルータ20を選択するときに用いる取得キーを生成する。なお、取得先の選択方法および取得キーの生成方法については、後記する。
When the acquisition
記憶部23は、ルートサーバ10から配信される経路計算結果情報を格納する経路計算結果DB232、ルートサーバ10のID番号を格納するルートサーバIDDB231、および経路計算結果情報を分散管理するルータ20に係る情報を格納する取得先ノードDB233を格納する。経路計算結果DB232は、転送経路決定部222の経路計算において参照される。ルートサーバIDDB231は、ルートサーバ選択部221が、外部経路情報を広告するルートサーバ10を選択するときに参照される。取得先ノードDB233は、取得先選択部223が必要な経路計算結果情報の取得先のルータ20を選択するときに参照される。経路計算結果DB232、ルートサーバIDDB231、および取得先ノードDB233の具体例については、後記する。
The storage unit 23 relates to a route
≪ルートサーバ決定方法≫
ここで、ルータ20におけるルートサーバ決定方法について、図4を用いて説明する(適宜図3参照)。図4は、○印で示すルートサーバ10とそれをカバーするハッシュ空間を表している。図4中の○印の中の数字は、ルートサーバ10のID番号を示している。そして、図4は、ハッシュ空間に、3つのルートサーバ10A,10B,10Cが存在する場合を表している。例えば、ルートサーバ10AのID番号が5、ルートサーバ10BのID番号が10、ルートサーバ10CのID番号が15、であるものとして説明する。なお、これらのルートサーバ10A,10B,10CのID番号に係る情報が、図3の記憶部23のルートサーバIDDB231に記憶されることになる。
≪Route server determination method≫
Here, a route server determination method in the
まず、next(m)という関数を導入する。next(m)はハッシュ空間においてハッシュ空間を時計回り(つまりIDを大きくする方向)で次のノードのIDを返す。例えば、next(2)=5、next(6)=10、next(15)=15となる。すなわち、next(m)は、ハッシュ空間のある値m以上の範囲において最小の値となるIDを返す。ここで、mは、プリフィクスの値をハッシュ関数に代入して算出されたハッシュ値である。ただし、図4に示すハッシュ空間では、0<m≦15である。 First, a function called next (m) is introduced. next (m) returns the ID of the next node in the hash space in the clockwise direction (that is, in the direction of increasing the ID). For example, next (2) = 5, next (6) = 10, and next (15) = 15. That is, next (m) returns an ID that is the smallest value in a range of a certain value m or more in the hash space. Here, m is a hash value calculated by substituting the prefix value into the hash function. However, 0 <m ≦ 15 in the hash space shown in FIG.
そして、図4では、ハッシュ空間におけるルートサーバ10Aの分担範囲は0超え5以下、ルートサーバ10Bの分担範囲は5超え10以下、ルートサーバ10Cの分担範囲は10超え15以下となる。このようにして、ルートサーバ10のID番号を予め決めておけば、プリフィクスに関する経路情報を送信するルートサーバ10を特定することが可能となる。
In FIG. 4, the sharing range of the
≪経路計算結果情報の分散管理≫
前記したように、PoP内のルータ20がBGP経路については同一の経路をとるので、経路計算結果情報をPoP内のルータ20によって分散管理することが可能となる。そして、経路計算結果情報を分散管理することによって、ルータ20が保持すべき経路数(記憶容量)を抑制することが可能となる。以下に、分散管理の方法について説明する。
≪Distributed management of route calculation result information≫
As described above, since the
(フレームワーク)
まず、分散管理のためのフレームワークについて説明する。AS内のルータ20には、そのルータを識別するために、ASの管理者によってユニークなルータIDが割り当てられる。また、経路計算結果情報は、分散管理が可能なように、検索キーと経路計算結果の転送経路情報(最適な転送経路および次善の転送経路)とが紐付けられて形成される。ただし、ルータIDと検索キーとは、同じビット長で表現される。
(Framework)
First, a framework for distributed management will be described. The
まず、検索キーは、ルートサーバ10において、経路計算結果情報を、どのルータ20に格納(送信)するかの選択に用いられる。そして、ルートサーバ10は、後記する検索キーとルータIDとの距離に基づいて、検索キーに距離の近いルータIDのルータを、距離の近い順にk個選択する。k個選択する意味は、冗長性の確保のためである。したがって、冗長性を考えなければ、k=1であっても良い。そして、ルートサーバ10は、選択したk個のルータ20に、経路計算結果情報を格納(送信)する。
First, the search key is used in the
ここで、距離の定義について、図5を用いて説明する。図5では、説明を簡単にするために、ルータIDおよび検索キーのビット長をそれぞれ5ビットで表している。各ルータa,b,c,dのルータIDがそれぞれ10011,10101,10110,11000であったとする。そして、検索キーが、10111であったとする。この場合、ルータIDと検索キーとのExclusive ORを算出する。そして、Exclusive ORの演算結果のビット列において、左から見て最初に「1」が出現した位置について右から数えた桁数の数値を、「距離」と定義する。すなわち、各ルータa,b,c,dに対して、ルータIDと検索キーとの距離は、それぞれ3,2,1,4となる。したがって、検索キーはルータcに最も近いと判定される。そして、冗長性を考慮してk=2とした場合には、ルータcの次に距離が近いのは、ルータbと判定される。このようにして、検索キーおよびその検索キーに紐付けられた転送経路情報によって形成される経路計算結果情報は、ルータb,cに格納されることになる。この距離を用いることによって、距離の近いものほど、左から数えたビット列の一致する長さが長くなり、距離が0の場合は、完全に一致することを表す効果がある。 Here, the definition of the distance will be described with reference to FIG. In FIG. 5, in order to simplify the description, the bit length of the router ID and the search key is represented by 5 bits. Assume that the router IDs of the routers a, b, c, and d are 10011, 10101, 10110, and 11000, respectively. Assume that the search key is 10111. In this case, an exclusive OR between the router ID and the search key is calculated. Then, in the bit string of the exclusive OR operation result, the numerical value of the number of digits counted from the right at the position where “1” first appears from the left is defined as “distance”. That is, for each router a, b, c, d, the distance between the router ID and the search key is 3, 2, 1, 4 respectively. Therefore, it is determined that the search key is closest to the router c. When redundancy is taken into consideration and k = 2, it is determined that the router b is the next closest to the router c. In this way, the route calculation result information formed by the search key and the transfer route information associated with the search key is stored in the routers b and c. By using this distance, the closer the distance, the longer the matching length of the bit strings counted from the left, and when the distance is 0, there is an effect of indicating that the bit strings are completely matched.
次に、ルータ20が、他のルータ20から必要な経路計算結果情報を取得するときに、取得先のルータ20を選択する方法について説明する。この場合、経路計算結果情報を格納するときと同じ距離を用いて、必要な経路計算結果情報を格納したルータ20を特定することができる。以下に、ルータID、検索キー、および転送経路情報の構成と、格納先ノードDB132、取得先ノードDB233、および経路計算結果DB232の一例について、図6,7,8を用いて説明する。なお、本実施形態では、例えば、ビット長は160ビットとして説明する。
Next, a method for selecting the
ルータIDの構成を式(1)に示す。
<ルータID>::=<PoPのID><ハッシュ値> ・・式(1)
ただし、PoPのIDは、そのルータ20が属するPoPを識別するIDであり、32ビットとする。PoPのIDは、AS管理者によって設定されるユニークな識別情報である。また、ハッシュ値は、例えば、ハッシュ関数の一つである、ランダム値を基にしたMD5(Message Digest 5)により算出したMD5ハッシュ値であって、128ビットとする。
The configuration of the router ID is shown in Equation (1).
<Router ID> :: = <PoP ID><HashValue> (1)
However, the PoP ID is an ID for identifying the PoP to which the
経路計算結果情報の格納先のルータ20を選択するときに用いる検索キーkrの構成を式(2)に示す。
<kr>::=<PoPのID><プリフィクス値><マスク値><パディング>
・・式(2)
ただし、PoPのIDは、前記と同様である。つまり、PoPのIDによって、どのPoPのための検索キーであるかが特定され、同じPoPのIDを含むノードIDを見つけやすくすることができる。プリフィクス値は、外部経路情報に含まれるプリフィクスであり、32ビットのIPv4(Internet Protocol version 4)である。マスク値は、プリフィクス値に対するマスク値であり、32ビットである。このマスク値は、IPv4で用いられるサブネットマスクに相当する。パディングは、その値をすべて「0」とし、64ビットである。なお、「::=」は、左辺のビット列と右辺のビット列とが同じになることを表し、右辺は<>のビット列をこの順で連結することを表している。
The structure of the search key kr used when selecting the
<Kr> :: = <PoP ID><prefixvalue><maskvalue><padding>
..Formula (2)
However, the PoP ID is the same as described above. That is, the PoP ID identifies which PoP the search key is for, and makes it easy to find a node ID including the same PoP ID. The prefix value is a prefix included in the external route information, and is 32-bit IPv4 (Internet Protocol version 4). The mask value is a mask value for the prefix value and is 32 bits. This mask value corresponds to a subnet mask used in IPv4. The padding is 64 bits with all values being “0”. Note that “:: =” indicates that the bit string on the left side and the bit string on the right side are the same, and the right side indicates that the bit strings of <> are connected in this order.
経路計算結果情報を形成する、検索キーkrに紐付けられる転送経路情報valueの構成を式(3)に示す。
<value>::=<バージョン番号><n><NH_1><優先度1>・・
・・<NH_n><優先度n> ・・式(3)
ここで、バージョン番号は、ルートサーバ10が経路計算を実行するごとに付与される。nは、valueに格納する経路計算の結果である転送経路(NH_*)の数である。NH_*は、プリフィクスに対応する転送経路(ネクストホップ情報)を表す。優先度は、転送経路を用いる優先順位を指定するもので、優先度の高いものから順に用いられる。なお、転送経路情報valueは、複数の転送経路を格納しているので、選択された転送経路の障害時には、次に優先度の高い転送経路を直ちに用いることができる。
The configuration of the transfer route information value associated with the search key kr that forms the route calculation result information is shown in Equation (3).
<Value> :: = <version number><n><NH_1><priority1> ...
・ ・ <NH_n><Priorityn> ・ ・ Formula (3)
Here, the version number is given each time the
次に、ルートサーバ10の記憶部13の格納先ノードDB132(図2参照)の一例を、図6を用いて説明する。格納先ノードDB132は、PoPごとに、そのPoPに属するルータ20の、ルータ名、IPアドレス、およびルータIDを記憶する。なお、PoP内では経路計算結果情報が分散管理されるため、格納先ノードDB132は、AS内のすべてのルータ20に係る情報について記憶しなくても良い。
Next, an example of the storage destination node DB 132 (see FIG. 2) in the
また、ルータ20の記憶部23の取得先ノードDB233(図3参照)の一例を、図7を用いて説明する。なお、図7に示す取得先ノードDB233は、ある一つのルータ20に記憶されているものを表している。rangeは、ルータIDをいくつかに区分した範囲を示している。例えば、図4に示すハッシュ空間がルータIDとして用いられるID全体を示すものとすると、ルートサーバ10の分担範囲がrangeに相当する。そして、その範囲は、自身のルータIDに距離の近い範囲は狭く、距離の遠い範囲は広く設定される。図7では、冗長性をもたせて、取得先のルータの台数k=2とした場合を表しており、rangeごとに、2つの取得先のルータに係る情報を記憶した状態を表している。
An example of the acquisition destination node DB 233 (see FIG. 3) in the storage unit 23 of the
また、ルータ20の記憶部23の経路計算結果DB232(図3参照)の一例を、図8を用いて説明する。経路計算結果DB232は、PoP内の一部の経路計算結果情報を記憶している。なお、経路計算結果情報は、検索キーkrと転送経路情報valueとの組(kr,value)によって表される。
An example of the route calculation result DB 232 (see FIG. 3) in the storage unit 23 of the
(ルートサーバ10の格納処理の流れ)
次に、本実施形態における、ルートサーバ10による格納処理の流れについて、図9を用いて説明する(適宜図2参照)。ステップS901では、経路計算部122が、外部経路情報DB131を参照して、各プリフィクスに対してPoPごとの経路計算を実行し、転送経路情報valueを生成する。ステップS902では、検索キー生成部124が、ルータ20から受信したプリフィクスについて、そのプリフィクスを含む検索キーKrを生成する。ステップS903では、格納先選択部123が、PoPごとに、検索キーkrとルータIDとの距離の近い(小さい)順にk個(予め決められている所定数)のルータIDを抽出する。そして、ステップS904では、格納先選択部123が、抽出したルータIDのルータ20に、そのルータ20が記憶している取得先のルータに係る情報をk個取得する要求find_node(kr)を送信する。なお、find_node(kr)を受信したルータ20の取得先選択部223は、検索キーkrとrange(図7参照)の境界のルータIDとを比較して、検索キーkrを含むrangeを抽出し、検索キーkrと抽出したrangeに属するルータ20それぞれのルータIDとの距離を算出し、距離の近い順にk個の取得先のルータに係る情報を、ルートサーバ10に返信する。
(Flow of storage processing of the route server 10)
Next, the flow of storage processing by the
ステップS905では、格納先選択部123は、find_node(kr)の送信先のルータ20から、取得先のルータに係る情報をk個取得する。ステップS906では、格納先選択部123は、ステップS905で取得したルータの中で、find_node(kr)を未送信のルータがあるか否かを判定する。そして、未送信のルータがある場合(ステップS906でYes)、ステップS907で、格納先選択部123が、未送信のルータに、find_node(kr)を送信する。そして、処理は、ステップS905へ戻る。また、未送信のルータがない場合(ステップS906でNo)、ステップS908では、格納先選択部123は、PoPごとに、検索キーkrに距離の近い順にk個のルータIDを選択し、選択したk個のルータIDのルータに、経路計算結果情報(kr,value)を格納(送信)する。なお、ステップS908で格納された経路計算結果情報(kr,value)は、ルートサーバ10が経路計算を再実行した場合には、削除される。また、ルートサーバ10が、find_node(kr)の送信先から新しく取得したルータIDは、格納先ノードDB132に格納し、更新していく。
In step S905, the storage
(他のルータ20から転送経路情報を取得する処理)
次に、他のルータ20から転送経路情報を取得する処理について、その概要を説明する(適宜図3参照)。まず、ルータ20の取得キー生成部225は、転送すべきパケットが到着すると、転送先の決定のために、転送すべきパケットの宛先IPアドレスを含む取得キーkdを生成する。なお、この取得キーkdの詳細については、後記する。そして、転送経路決定部222は、自身の記憶する経路計算結果DB232を参照して、取得キーkdと一致する、経路計算結果情報に含まれる検索キーkrを探索する。取得キーkdに一致する検索キーkrが見つかった場合には、その検索キーkrに紐付けられた転送経路情報valueが読み出され、パケットの転送に用いられる。
(Process for obtaining transfer route information from other routers 20)
Next, an outline of processing for acquiring transfer path information from another
また、取得先選択部223は、転送すべきパケットが到着すると、取得キーkdに距離の近いk個のルータIDのルータ20を選択する。なお、この距離は、前記した距離と同様の定義である。そして、取得先選択部223は、その選択したルータ20に、そのルータ20が保持する取得キーkdに距離の近いk個のルータに係る情報と、取得キーkdに一致する検索キーkrの経路計算結果情報(kr,value)がある場合には経路計算結果情報(kr,value)とを取得するための要求find_value(kd)を送信する。そして、転送経路決定部222は、取得した複数の経路計算結果情報(kr,value)の中から、取得キーkdに最長一致(例えば、複数の検索キーkrと取得キーkdとの距離を算出したとき、最も距離の近いビット列を見つけること)となる検索キーkrを含む経路計算結果情報(kr,value)を選択する。次に、転送経路決定部222は、選択した該経路計算結果(kr,value)から転送経路情報valueを読み出して、パケットの転送に用いる。
Further, when the packet to be transferred arrives, the acquisition
(取得キーkdの構成)
ここで、取得キーkdの構成を式(4)に示す。
<kd>::=<PoPのID><IPアドレス><マスク値><パディング>
・・式(4)
ただし、PoPのIDは、転送すべきパケットを受信したルータの属するPoPのIDである。つまり、PoPのIDによって、どのPoPのための取得キーであるかが特定される。IPアドレスは、転送すべきパケットの宛先IPアドレスであり、32ビットである。マスク値は、プリフィクス値に対するマスク値であり、32ビットである。このマスク値は、IPv4で用いられるサブネットマスクに相当し、すべて「1」に設定する。パディングは、その値をすべて「0」とし、64ビットである。
(Configuration of acquisition key kd)
Here, the configuration of the acquisition key kd is shown in Equation (4).
<Kd> :: = <PoP ID><IPaddress><Maskvalue><Padding>
..Formula (4)
However, the PoP ID is the ID of the PoP to which the router that received the packet to be transferred belongs. That is, the PoP ID identifies which PoP the acquisition key is for. The IP address is a destination IP address of a packet to be transferred and is 32 bits. The mask value is a mask value for the prefix value and is 32 bits. This mask value corresponds to a subnet mask used in IPv4, and is all set to “1”. The padding is 64 bits with all values being “0”.
このように、境界ルータ20では、転送すべきパケットが到着すると、転送先の決定のために、分散管理されている転送経路情報valueを取得する必要がある。そのため、境界ルータ20は、転送経路情報valueとの組を形成している検索キーkrを生成できればよいが、転送すべきパケットからは、宛先IPアドレスしか取得できない。そして、その宛先IPアドレスを示すビット列と、宛先のプリフィクスを示すビット列とは完全に一致するとは限らない。すなわち、境界ルータ20は、取得キーkdを生成する場合、経路計算結果情報(kr,value)を格納するときに用いた検索キーkrと同じビット列を生成できるとは限らない。そこで、ルータ20が、取得キーkdを用いて行う転送経路情報の取得処理の流れについて、図10を用いて説明する(適宜図3参照)。
As described above, when the packet to be transferred arrives, the
(転送経路情報の取得処理の流れ)
図10に示すように、ステップS1001では、取得キー生成部225が、転送すべきパケットの宛先IPアドレスを含む取得キーkdを生成する。ステップS1002では、取得先選択部223が、取得キーkdと取得先ノードDB233に記憶されているルータIDとを比較して、取得キーkdに距離の近い順にk個のルータを選択する。ステップS1003では、取得先選択部223が、選択したルータに、取得キーkdに距離の近いk個のルータに係る情報と、取得キーkdに一致する検索キーkrが存在すれば、その検索キーkrを含む経路計算結果情報(kr,value)の転送経路情報valueとを取得するための要求find_value(kd)を送信する。
(Flow of transfer route information acquisition processing)
As shown in FIG. 10, in step S1001, the acquisition
ステップS1004では、転送経路決定部222は、find_value(kd)の送信先のルータ20から、取得キーkdに距離の近いk個のルータ20に係る情報と、取得キーkdに一致する検索キーkrが存在すれば、その検索キーkrを含む経路計算結果情報(kr,value)の転送経路情報valueとを取得する。なお、find_value(kd)を受信したルータ20の取得先選択部223は、取得キーkdとrange(図7参照)の境界のルータIDとを比較して、取得キーkdを含むrangeを抽出し、取得キーkdと抽出したrangeに属するルータ20それぞれのルータIDとの距離を算出し、距離の近い順にk個の取得先のルータに係る情報を、送信元のルータ20に返信する。
In step S <b> 1004, the transfer
ステップS1005では、転送経路決定部222が、転送経路情報valueが取得されたか否かを判定する。そして、転送経路情報valueが取得された場合(ステップS1005でYes)、ステップS1006では、転送経路決定部222が、転送経路情報valueに含まれる転送経路(式(3)におけるNH_*)と、現在使われている転送経路とのどちらが、転送すべきパケットのIPアドレスと最長一致かを比較し、最長一致の方の転送経路を現在使われている転送経路に設定する。ただし、ステップS1005で取得された転送経路情報valueに含まれる転送経路および現在使われている転送経路のいずれもが、転送すべきパケットのIPアドレスとの距離が同じ場合には、転送経路情報valueのバージョン番号が最新の方に、現在使われている転送経路を設定する。そして、ステップS1007では、転送経路決定部222が、現在使われている転送経路を不図示のFIBに設定する。そして、処理は、ステップS1008へ進む。なお、ステップS1005で、転送経路情報valueが取得されなかった場合(ステップS1005でNo)、処理は、ステップS1008へスキップする。
In step S1005, the transfer
ステップS1008では、転送経路決定部222が、find_value(kd)を、未送信のステップS1004で取得したルータがあるか否かを判定する。未送信のステップS1004で取得したルータがある場合(ステップS1008でYes)、ステップS1009では、取得先選択部223が、未送信のルータ20へ、find_value(kd)を送信する。そして、処理は、ステップS1004へ戻る。また、未送信のステップS1004で取得したルータがない場合(ステップS1008でNo)、処理は、ステップS1010へ進む。
In step S1008, the transfer
ステップS1010では、転送経路決定部222が、取得キーkdのIPアドレス部の最後(一番右)のゼロでないビットをゼロに変更し、同時にマスク値部分の当該IPアドレスの変更位置のビットを含む右側のビットをゼロに変更し、その変更したビット列を新たな取得キーkdに設定する。この取得キーkdのビット変更時の操作の具体例について、図11を用いて説明する。図11に示すように、ビット変更前のIPアドレス部のビット列およびマスク値部分のビット列がそれぞれ<10101100><11111111>であったとする。IPアドレス部の最後(一番右)のゼロでないビットは、右から3番目である。この右から3番目のビットをゼロに変更する。そして、マスク値部分については、右から3番目のビットを含む右側の3つのビットをゼロに変更する。
In step S1010, the transfer
ステップS1011では、転送経路決定部222が、取得キーkdのIPアドレス部のホスト部分がすべてゼロかそれ以外かを判定する。取得キーkdのIPアドレス部のホスト部分の一部がゼロでない場合(ステップS1011でNo)、処理は、ステップS1002へ戻る。また、取得キーkdのIPアドレス部のホスト部分がすべてゼロの場合(ステップS1011でYes)、ステップS1012では、転送経路決定部222が、現在使われている転送経路を含む経路計算結果情報のレプリケーションを、当初の取得キーkdに(k+1)番目に距離の近いルータIDのルータに対して実行する。そして、転送経路情報の取得処理を終了する。
In step S1011, the transfer
なお、転送すべきパケットは、ステップS1007でFIBに設定された転送経路に基づいて転送される。この際、カプセル化処理部224は、転送すべきパケットを、出口の境界ルータのIPアドレスを宛先とするヘッダによってカプセル化して、IGPを用いて、そのパケットを転送する。このカプセル化の効果は、ルータ20が他のPoPのBGP経路情報を保持する必要がなくなること、およびAS内で経由するルータ20が意図しない方路へパケットを転送することを防止できること、である。
Note that the packet to be transferred is transferred based on the transfer path set in the FIB in step S1007. At this time, the
また、ステップS1010において取得キーkdのIPアドレス部のビット列を、最後(一番右)のゼロでないビットをゼロに変更し、再びステップS1002へ戻って検索を続ける理由は、経路計算結果情報(kr,value)は、宛先IPアドレスの集合であるプリフィクスに基づいて管理されているのに対して、取得キーkdは宛先IPアドレスを用いて生成されているからである。すなわち、取得キーkdにそのまま一致する検索キーkrが見つかる可能性は低いと考えられる。そこで、IPアドレス部のビット列を、最後(一番右)のゼロでないビットをゼロに変更しつつ、最長一致となるビット列を探索していくためである。 The reason why the bit string of the IP address part of the acquisition key kd is changed to zero in the last (rightmost) non-zero bit in step S1010 and the search returns to step S1002 to continue the search is as follows. , Value) is managed based on a prefix which is a set of destination IP addresses, whereas the acquisition key kd is generated using the destination IP address. That is, it is considered that the possibility of finding the search key kr that directly matches the acquisition key kd is low. This is because the bit string in the IP address portion is searched for the bit string with the longest match while changing the last (rightmost) non-zero bit to zero.
また、ステップS1006において、最長一致となる転送経路が複数見つかった場合には、転送経路情報valueに含まれるバージョン番号が最新の方が選ばれる。また、ステップS1012において、レプリケーションする経路計算結果情報は、k+1番目に距離の近いルータ20に格納されるが、k+1番目のルータ20にすでに格納済みであれば、k+2番目のルータにレプリケーションされる。そして、レプリケーションされた経路計算結果情報は、所定時間が経過した後(タイムアウト後)、消去される。なお、その所定時間は、取得キーkdとルータIDとの距離の大きさに反比例して設定される。すなわち、タイムアウトの所定時間は、距離が遠いほど短く設定される。
In step S1006, when a plurality of longest matching transfer paths are found, the latest version number included in the transfer path information value is selected. In step S1012, the route calculation result information to be replicated is stored in the
(記憶容量の削減効果)
前記したように、本実施形態では、ルータ20が記憶していた外部経路情報がルートサーバ10に記憶されるため、従来のルータに比べて、記憶容量を低減することが可能である。また、ルートサーバ10も、プリフィクスを分担して記憶する台数を増加することによって、一台当りの記憶容量を低減することができる。さらに、従来の各ルータでは、パケット転送のために必要な転送経路の情報(FIBに記憶される情報)については、すべてのプリフィクスに対して記憶しなければならなかったが、本実施形態では、PoP内で分散管理することによって、ルータ20の記憶容量を低減することが可能である。定量的には、ルータ20一台当りの保持する経路数は、全経路数をPoP内のルータ数で除算した値に、レプリケーションされる情報の経路数を加算して算出される。なお、インターネットにおいては、トラヒックのほとんどは少数の宛先に集中する傾向があるため、レプリケーションされる経路数は、全経路数をPoP内のルータ数で除算した値に比較して小さい。
(Reduction effect of storage capacity)
As described above, in the present embodiment, since the external route information stored in the
(メッセージ数および計算処理量の削減効果)
ルートサーバ10が経路計算を実行するため、各ルータ20は、経路計算を実行しないで良い。そのため、本実施形態のルータ20では、従来のルータに比較して、計算処理量が低減できる。さらに、本実施形態では、AS内のルータ20は、複数のPoPのいずれかに属している。そして、PoP内ではBGP経路については同一の転送経路となるので、ルートサーバ10は、PoPごとに1つのルータ20のための経路計算を実行すれば良く、また、その経路計算結果をメッセージとしてPoP内のルータ数より少ないk個のルータ20に送信すれば良い。したがって、ルートサーバ10が、ルータ20ごとにすべての経路計算結果を送信する場合に比べて、定性的には、メッセージ数および計算処理量(処理負荷)を低減することができる。
(Reduction effect of the number of messages and the amount of calculation processing)
Since the
定量的には、PoP内のルータ数の平均をRpop、ルートサーバ10からすべてのルータ20に経路計算結果(メッセージ)を送信する場合のメッセージ数をMとすると、経路計算結果の配信のために、ルートサーバ10が送信するメッセージ数Rmは、M/Rpop+Nfとなる。ここで、Nfは、find_nodeメッセージ数である。このNfは、初期状態では、最大でPoP内のルータ数分になることもあるが、find_nodeが繰り替えされることによって、ルートサーバ10の格納先ノードDB132が更新され、ルートサーバ10が知り得ないルータ20が無くなっていくため、最終的には、k(冗長性)に収束する。そのため、メッセージ数は、削減される。
Quantitatively, if the average number of routers in the PoP is Rpop, and the number of messages when the route calculation result (message) is transmitted from the
また、find_valueメッセージ数は、転送すべきパケットの宛先の分布に依存する。インターネットでは、パケットの宛先のほとんどが、ごく一部のプリフィクスに集中することから、レプリケーションによって、他のルータに取得要求を行う必要がなくなっていく。したがって、find_valueメッセージ数は、ほとんどゼロに収束する。したがって、本実施形態では、PoPおよびレプリケーションの導入にともなって、メッセージ数を低減することができる。 Further, the number of find_value messages depends on the distribution of destinations of packets to be transferred. In the Internet, most packet destinations are concentrated on a small part of the prefix, so that it is not necessary to make an acquisition request to another router by replication. Therefore, the number of find_value messages converges to almost zero. Therefore, in this embodiment, the number of messages can be reduced with the introduction of PoP and replication.
以上、本実施形態の経路情報管理システム30によれば、ルートサーバ10がプリフィクスに係る外部経路情報を格納するため、ルータ20に保持すべき経路数(記憶容量)を削減することができる。また、ルートサーバ10は、同一のプリフィクスに係る外部経路情報についてすべてを収集して経路計算を実行するため、経路計算結果が最適とならないという問題は発生しない。また、AS内に複数のPoPを設けた場合、そのPoP内のBGP経路はプリフィクスに対して共通になるため、ルートサーバ10は、PoP内の1つのルータ20に対してだけ経路計算を実行すれば良くなる。そのため、ルートサーバ10の処理負荷を低減することができるとともに、ルータ20での経路計算が不要となる。また、ルートサーバ10によって算出されたPoPごとの経路計算の結果は、PoP内で分散管理されるため、PoPごとにk個(所定数)のルータ20に格納(送信)されれば良い。そのため、経路計算の結果をメッセージとして送信するときのメッセージ数を削減することができる。また、PoP内のルータ20によって経路計算結果情報が分散管理されるため、一台当りのルータ20の記憶容量は、すべての経路計算結果情報を記憶していた従来の一台のルータ20の記憶容量に比べて、低減できる。また、必要な経路計算結果の取得のための探索は、PoP内のルータ20だけに限られるため、その取得処理が早くなる。
As described above, according to the route information management system 30 of the present embodiment, since the
なお、本実施形態は、これらに限定されるものではなく、その趣旨を変えない範囲で実施することができる。例えば、取得先選択部223が検索キーkrや取得キーkdに距離の近いk個のルータ20を選択するときに、本実施形態では検索キーkrや取得キーkdを含むrangeで選択されているk個のルータを取得するものとして説明した。しかし、ルータ20の記憶部23に記憶されているルータIDと検索キーkrや取得キーkdとの距離を計算して、最も距離の近いk個のルータ20を選択するようにしても構わない。また、図7では、一例として、記憶部23の取得先ノードDB233にrangeごとにk個のルータに係る情報を格納する場合を示した。しかし、rangeごとにk個より多くのルータ20に係る情報が記憶されている場合には、その中から最も距離の近いk個のルータ20を選択するようにしても構わない。
In addition, this embodiment is not limited to these, It can implement in the range which does not change the meaning. For example, when the acquisition
また、転送経路決定部222が取得キーkdに一致する検索キーkrを探索するときに、経路計算結果情報(kr,value)をrangeごとに紐付けて記憶されていれば、探索範囲を絞ることができ、探索時間を小さくすることができる。また、ルータ20は、find_value(kd)によって取得した転送経路情報valueを、自身の記憶部23の図示しないキャッシュメモリに格納しておくと、探索を早めることができる。なお、キャッシュメモリに格納された情報は、所定時間後(タイムアウト後)に消去される。なお、レプリケーションやキャッシュは、転送経路情報を格納する1つのRadix Treeによって管理される。
When the transfer
また、ルータ20が、ルートサーバ10の機能を兼ねていても構わない。また、本実施形態は、AS間の通信プロトコルであるeBGPを改変するものではないので、AS内に閉じて適用することができる。そして、本実施形態を適用したASは、従来通り、他のASと接続することが可能である。
The
また、本実施形態において、ルートサーバ10(図2参照)の各部11,12の処理は、ルートサーバ10をコンピュータで実現したときに搭載されるプログラムによって実現されてもよい。また、本実施形態において、ルータ(図3参照)の各部21,22の処理は、ルータ20をコンピュータで実現したときに搭載されるプログラムによって実現されてもよい。このプログラムは、通信回線を介して提供することもできるし、CD−ROM等のコンピュータ読み取り可能な記録媒体に書き込んで配布することも可能である。
In the present embodiment, the processing of the
1 AS
10 ルートサーバ(経路情報管理装置)
11 入出力部
12 処理部
13 記憶部
20 ルータ(境界ルータ、ルータ)
22 処理部
23 記憶部
30 経路情報管理システム
121 外部経路情報収集部
122 経路計算部
123 格納先選択部
124 検索キー生成部
131 外部経路情報DB
132 格納先ノードDB
221 ルートサーバ選択部
222 転送経路決定部
223 取得先選択部
224 カプセル化処理部
225 取得キー生成部
231 ルートサーバIDDB
232 経路計算結果DB
233 取得先ノードDB
1 AS
10 Route server (route information management device)
11 Input /
22 processing unit 23 storage unit 30 route
132 Storage node DB
221 Route
232 Route calculation result DB
233 Acquisition destination node DB
Claims (10)
前記経路情報管理装置は、
前記ルータから収集した前記プリフィクスごとに、そのプリフィクスを含む外部経路情報を用いて、前記AS内の2以上のルータの一まとまりを単位として前記AS内に複数設定されるルータ集合に属する少なくともいずれか1つのルータにおける、パケットの転送先のプリフィクスに至る転送経路を計算する経路計算を実行する経路計算部と、
前記経路計算部によって経路計算されたルータ集合ごとの経路計算の結果を含む経路計算結果情報を送信する当該ルータ集合に属する所定数のルータを選択する格納先選択部と、
当該経路計算結果情報を、前記格納先選択部によって選択された当該所定数のルータに送信する入出力部と、
を備え、
前記ルータは、
転送すべきパケットを受信したときに、前記経路情報管理装置から受信した前記経路計算結果情報を参照して、該パケットの転送先を決定する転送経路決定部と、
前記転送経路決定部によって決定された転送先に前記転送すべきパケットを送信する入出力部と、
を備える
ことを特徴とする経路情報管理システム。 In an AS (Autonomous System) constituting an IP (Internet Protocol) network, external route information including a prefix that is a set of IP addresses of the other AS is acquired from another AS, and the packet is transferred to the other AS. A route information management system in which a plurality of routers and two or more route information management devices that collect external route information including the same prefix from the router and perform route calculation are connected to each other so as to be able to communicate with each other ,
The route information management device
For each prefix collected from the router, at least one of a plurality of routers set in the AS with a group of two or more routers in the AS using external route information including the prefix as a unit A route calculation unit that performs route calculation for calculating a transfer route to a prefix of a packet transfer destination in one router;
A storage location selection unit that selects a predetermined number of routers belonging to the router set for transmitting route calculation result information including a route calculation result for each router set calculated by the route calculation unit;
An input / output unit that transmits the route calculation result information to the predetermined number of routers selected by the storage destination selection unit;
With
The router
A transfer path determination unit that determines a transfer destination of the packet with reference to the path calculation result information received from the path information management device when a packet to be transferred is received;
An input / output unit that transmits the packet to be transferred to the transfer destination determined by the transfer path determination unit;
A route information management system comprising:
前記ルータ集合ごとに、少なくとも1以上のルータのルータIDとして、当該ルータの属する前記ルータ集合のルータ集合IDのビット列の後にハッシュ関数によって生成されたハッシュ値のビット列を連結したビット列を記憶する格納先ノード情報を格納する記憶部と、
前記ルータ集合ごとに、前記経路計算結果情報の格納先の検索に用いる検索キーとして、当該ルータ集合のルータ集合IDのビット列、前記プリフィクスのビット列、前記プリフィクスに対するマスク値のビット列、およびパディングとしてすべて「0」のビット列を連結したビット列を生成する検索キー生成部と、
を備え、
前記格納先選択部は、
前記格納先ノード情報に記憶しているルータIDと前記検索キーとの距離を、当該ルータIDと前記検索キーとのビットごとの排他的論理和を示すビット列において、左から見て最初に「1」が出現したビット位置について右から数えたビットの桁数の数値として算出し、その算出した距離の小さい順に所定数のルータを当該ルータ集合から送信先として選択する
ことを特徴とする請求項1に記載の経路情報管理システム。 The route information management device further includes:
A storage location for storing a bit string obtained by concatenating a bit string of a hash value generated by a hash function after a bit string of a router set ID of the router set to which the router belongs, as a router ID of at least one router for each router set A storage unit for storing node information;
For each router set, as a search key used for searching the storage destination of the route calculation result information, the router set ID bit string of the router set, the prefix bit string, the mask value bit string for the prefix, and the padding are all “ A search key generation unit for generating a bit string obtained by concatenating bit strings of “0”;
With
The storage destination selection unit
The distance between the router ID stored in the storage destination node information and the search key is first set to “1” when viewed from the left in the bit string indicating the exclusive OR for each bit of the router ID and the search key. 2. The bit position where “” appears is calculated as a numerical value of the number of bits counted from the right, and a predetermined number of routers are selected as destinations from the router set in ascending order of the calculated distance. The route information management system described in 1.
ことを特徴とする請求項2に記載の経路情報管理システム。 The route according to claim 2, wherein the route calculation result information is information in which the search key is associated with a result of route calculation for each router set corresponding to a prefix included in the search key. Information management system.
そのルータの属するルータ集合内の自身を除く少なくとも1以上のルータのルータIDを記憶する取得先ノード情報と前記経路計算結果情報とを記憶する記憶部と、
転送すべきパケットを受信したとき、当該ルータの属するルータ集合IDのビット列、当該パケットの宛先IPアドレスのビット列、前記宛先IPアドレスに対するマスク値としてすべて「1」のビット列、およびパディングとしてすべて「0」のビット列を連結して形成される、取得キーを生成する取得キー生成部と、
前記取得先ノード情報に記憶しているルータIDと前記取得キーとの距離を、前記ルータIDと前記取得キーとのビットごとの排他的論理和を示すビット列において、左から見て最初に「1」が出現したビット位置について右から数えたビットの桁数の数値として算出し、その算出した距離の小さい順に所定数のルータを当該ルータ集合から取得先として選択する取得先選択部と、
を備え、
前記転送経路決定部は、
自身の前記記憶部に記憶する前記経路計算結果情報の検索キーと前記取得キーとが一致するか否かを判定し、一致するものがある場合には、その検索キーに関連付けられた前記ルータ集合ごとの経路計算の結果に基づいてパケットの転送先を決定し、一致するものがない場合には、前記取得先選択部によって取得先として選択されたルータに前記取得キーを送信して、当該ルータの記憶する前記経路計算結果情報の検索キーと前記取得キーとが一致する前記ルータ集合ごとの経路計算の結果を取得して、その取得した前記ルータ集合ごとの経路計算の結果に基づいてパケットの転送先を決定する
ことを特徴とする請求項3に記載の経路情報管理システム。 The router further includes:
A storage unit for storing acquisition destination node information for storing router IDs of at least one or more routers excluding itself in the router set to which the router belongs, and the route calculation result information;
When a packet to be transferred is received, a bit string of a router set ID to which the router belongs, a bit string of a destination IP address of the packet, a bit string of all “1” as a mask value for the destination IP address, and all “0” as padding An acquisition key generation unit that generates an acquisition key formed by concatenating bit strings of
The distance between the router ID and the acquisition key stored in the acquisition destination node information is first set to “1” when viewed from the left in the bit string indicating the exclusive OR for each bit of the router ID and the acquisition key. `` Appears as a numerical value of the number of digits of the bit counted from the right for the bit position, and an acquisition destination selection unit that selects a predetermined number of routers as an acquisition destination from the router set in ascending order of the calculated distance;
With
The transfer path determination unit
It is determined whether or not the search key of the route calculation result information stored in its storage unit matches the acquisition key, and if there is a match, the router set associated with the search key The packet transfer destination is determined based on the result of each path calculation, and if there is no match, the acquisition key is transmitted to the router selected as the acquisition destination by the acquisition destination selection unit, and the router A route calculation result for each router set in which the search key of the route calculation result information stored and the acquisition key match are acquired, and based on the acquired route calculation result for each router set 4. The route information management system according to claim 3, wherein a transfer destination is determined.
前記取得キーの宛先IPアドレス部分の最後のゼロでないビットをゼロに変更するとともに、前記取得キーのマスク値部分の当該宛先IPアドレス部分の変更位置を含む右側のビットをゼロに変更し、その変更したビット列を新たな取得キーに設定し、その新たな取得キーを用いて、自身の前記取得先選択部によって選択された取得先のルータから、さらにその取得先のルータの前記取得先選択部によって選択された取得先のルータと経路計算結果情報とを取得することを繰り返し、取得されたすべての前記経路計算結果情報の検索キーと前記新たな取得キーとが一致するか否かを判定して、前記経路計算結果情報の検索キーと前記取得キーとが最長一致となるときの前記ルータ集合ごとの経路計算の結果に基づいてパケットの転送先を決定することを、前記取得キーの宛先IPアドレス部分のビット列がすべてゼロになるまで繰り返し実行する
ことを特徴とする請求項4に記載の経路情報管理システム。 The transfer route determination unit further, when there is no match between the search key of the route calculation result information and the acquisition key,
The last non-zero bit of the destination IP address portion of the acquisition key is changed to zero, and the right bit including the change position of the destination IP address portion of the mask value portion of the acquisition key is changed to zero, and the change is made The obtained bit string is set as a new acquisition key, and using the new acquisition key, from the acquisition destination router selected by the acquisition destination selection unit of itself, and further by the acquisition destination selection unit of the acquisition destination router Repeat the acquisition of the selected acquisition destination router and route calculation result information, and determine whether or not the search key of all the acquired route calculation result information matches the new acquisition key The packet transfer destination is determined based on the route calculation result for each router set when the search key of the route calculation result information and the acquisition key have the longest match. Route information management system of claim 4 Rukoto a bit string of the destination IP address portion of the acquisition key and said repeatedly executes it until all zero.
前記取得先選択部は、前記取得キーと前記範囲の境界のルータIDとを比較して、前記取得キーを含む前記範囲を抽出し、前記取得キーと前記抽出した範囲に属するルータのルータIDとの前記距離を算出し、前記距離の近い順に所定数のルータを取得先として選択する
ことを特徴とする請求項4に記載の経路情報管理システム。 The acquisition node information divides the router ID into a plurality of ranges, and sets a narrower range for the router ID closer to the distance from the router ID of its own router, and sets the range for the router ID farther away. Set a wide range, and for each said range, store the router ID of the router belonging to that range,
The acquisition source selection unit compares the acquisition key with a router ID at the boundary of the range, extracts the range including the acquisition key, and obtains the acquisition key and a router ID of a router belonging to the extracted range. The route information management system according to claim 4, wherein the distance is calculated, and a predetermined number of routers are selected as acquisition destinations in order of increasing distance.
前記経路情報管理装置は、
前記AS内の2以上のルータの一まとまりを単位として前記AS内に複数設定されるルータ集合ごとに、少なくとも所定数以上のルータのルータIDとして、当該ルータの属する前記ルータ集合のルータ集合IDのビット列の後にハッシュ関数によって生成されたハッシュ値のビット列を連結したビット列を記憶する格納先ノード情報を格納する記憶部を備え、
前記ルータから収集した前記プリフィクスごとに、そのプリフィクスを含む外部経路情報を用いて、前記AS内の2以上のルータの一まとまりを単位として前記AS内に複数設定されるルータ集合に属する少なくともいずれか1つのルータにおける、パケットの転送先のプリフィクスに至る転送経路を計算する経路計算を実行する経路計算ステップと、
前記ルータ集合ごとに、前記経路計算ステップによって経路計算されたルータ集合ごとの経路計算の結果を含む経路計算結果情報の格納先の検索に用いる検索キーとして、当該ルータ集合のルータ集合IDのビット列、前記プリフィクスのビット列、前記プリフィクスに対するマスク値のビット列、およびパディングとしてすべて「0」のビット列を連結したビット列を生成する検索キー生成ステップと、
前記格納先ノード情報に記憶しているルータIDと前記検索キーとの距離を、当該ルータIDと前記検索キーとのビットごとの排他的論理和を示すビット列において、左から見て最初に「1」が出現したビット位置について右から数えたビットの桁数の数値として算出し、その算出した距離の小さい順に所定数のルータを当該ルータ集合から送信先として選択する格納先選択ステップと、
当該経路計算結果情報を、前記格納先選択ステップによって選択された当該所定数のルータに送信する入出力ステップと
を実行することを特徴とする経路情報管理装置の経路情報管理方法。 A route information management method for a route information management device used in the route information management system according to claim 4,
The route information management device
For each set of routers set in the AS in units of a group of two or more routers in the AS, as router IDs of at least a predetermined number of routers, the router set ID of the router set to which the router belongs A storage unit for storing storage destination node information for storing a bit string obtained by concatenating a bit string of hash values generated by a hash function after the bit string;
For each prefix collected from the router, at least one of a plurality of routers set in the AS with a group of two or more routers in the AS using external route information including the prefix as a unit A route calculation step for performing a route calculation for calculating a transfer route to a prefix of a packet transfer destination in one router;
For each router set, as a search key used for searching a storage destination of route calculation result information including a route calculation result for each router set calculated by the route calculation step, a bit string of a router set ID of the router set, A search key generation step of generating a bit string obtained by concatenating a bit string of the prefix, a bit string of a mask value for the prefix, and a bit string of all “0” as padding;
The distance between the router ID stored in the storage destination node information and the search key is first set to “1” when viewed from the left in the bit string indicating the exclusive OR for each bit of the router ID and the search key. `` Appears as a numerical value of the number of digits of the bit counted from the right for the bit position where it appears, and a storage destination selection step of selecting a predetermined number of routers as a transmission destination from the router set in ascending order of the calculated distance;
A route information management method for a route information management device, comprising: performing an input / output step of transmitting the route calculation result information to the predetermined number of routers selected by the storage destination selection step.
前記ルータは、
前記AS内の2以上のルータの一まとまりを単位として前記AS内に複数設定されるルータ集合ごとに、少なくとも所定数以上のルータのルータIDとして、当該ルータの属する前記ルータ集合のルータ集合IDのビット列の後にハッシュ関数によって生成されたハッシュ値のビット列を連結したビット列を記憶する取得先ノード情報と、前記経路情報管理装置から送信される検索キーと前記ルータ集合ごとの経路計算の結果とを関連付けた情報を示す経路計算結果情報とを記憶する記憶部を備え、
転送すべきパケットを受信したとき、当該ルータの属するルータ集合IDのビット列、当該パケットの宛先IPアドレスのビット列、前記宛先IPアドレスに対するマスク値としてすべて「1」のビット列、およびパディングとしてすべて「0」のビット列を連結して形成される、取得キーを生成する取得キー生成ステップと、
前記取得先ノード情報に記憶しているルータIDと前記取得キーとの距離を、前記ルータIDと前記取得キーとのビットごとの排他的論理和を示すビット列において、左から見て最初に「1」が出現したビット位置について右から数えたビットの桁数の数値として算出し、その算出した距離の小さい順に所定数のルータを当該ルータ集合から取得先として選択する取得先選択ステップと、
転送すべきパケットを受信したときに、自身の前記記憶部に記憶する前記経路計算結果情報の検索キーと前記取得キーとが一致するか否かを判定し、一致するものがある場合には、その検索キーに関連付けられた前記ルータ集合ごとの経路計算の結果に基づいてパケットの転送先を決定し、一致するものがない場合には、前記取得先選択部によって取得先として選択されたルータに前記取得キーを送信して、当該ルータの記憶する前記経路計算結果情報の検索キーと前記取得キーとが一致する前記ルータ集合ごとの経路計算の結果を取得して、その取得した前記ルータ集合ごとの経路計算の結果に基づいてパケットの転送先を決定する転送経路決定ステップと、
前記転送経路決定ステップにおいて決定された転送先に前記パケットを転送する入出力ステップと
を実行することを特徴とするルータの経路情報管理方法。 A route information management method for a router used in the route information management system according to claim 4,
The router
For each set of routers set in the AS in units of a group of two or more routers in the AS, as router IDs of at least a predetermined number of routers, the router set ID of the router set to which the router belongs Associating acquisition destination node information that stores a bit string obtained by concatenating a bit string of hash values generated by a hash function after a bit string, a search key transmitted from the path information management device, and a result of path calculation for each router set A storage unit for storing route calculation result information indicating the received information,
When a packet to be transferred is received, a bit string of a router set ID to which the router belongs, a bit string of a destination IP address of the packet, a bit string of all “1” as a mask value for the destination IP address, and all “0” as padding An acquisition key generation step for generating an acquisition key formed by concatenating the bit strings of
The distance between the router ID and the acquisition key stored in the acquisition destination node information is first set to “1” when viewed from the left in the bit string indicating the exclusive OR for each bit of the router ID and the acquisition key. Is obtained as a numerical value of the number of bits of the bit counted from the right for the bit position where `` appears '', and an acquisition destination selection step of selecting a predetermined number of routers as an acquisition destination from the router set in ascending order of the calculated distance;
When a packet to be transferred is received, it is determined whether the search key of the route calculation result information stored in the storage unit of the packet matches the acquisition key. A packet transfer destination is determined based on a route calculation result for each router set associated with the search key, and if there is no match, the router selected as the acquisition destination by the acquisition destination selection unit Sending the acquisition key, acquiring a route calculation result for each router set in which the search key of the route calculation result information stored in the router matches the acquisition key, and acquiring the obtained router set A transfer route determining step for determining a transfer destination of the packet based on the result of the route calculation of
A route information management method for a router, comprising: performing an input / output step of transferring the packet to a transfer destination determined in the transfer route determination step.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009180328A JP5022412B2 (en) | 2009-08-03 | 2009-08-03 | Route information management system, route information management method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009180328A JP5022412B2 (en) | 2009-08-03 | 2009-08-03 | Route information management system, route information management method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011035686A JP2011035686A (en) | 2011-02-17 |
JP5022412B2 true JP5022412B2 (en) | 2012-09-12 |
Family
ID=43764313
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009180328A Expired - Fee Related JP5022412B2 (en) | 2009-08-03 | 2009-08-03 | Route information management system, route information management method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5022412B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101797471B1 (en) * | 2011-05-04 | 2017-11-15 | 주식회사 케이티 | Internet Traffic Load Distribution Method and System using IGP Routing Protocol |
CN104506450A (en) | 2014-11-06 | 2015-04-08 | 小米科技有限责任公司 | Media resource feedback method and device |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003143143A (en) * | 2001-10-30 | 2003-05-16 | Ando Electric Co Ltd | As number generation circuit and statistic processing method by as number |
JP2004260655A (en) * | 2003-02-27 | 2004-09-16 | Nippon Telegr & Teleph Corp <Ntt> | Network band control method and system |
JP4391960B2 (en) * | 2005-03-25 | 2009-12-24 | 日本電信電話株式会社 | Resource management apparatus, system and method |
JP5001966B2 (en) * | 2009-02-24 | 2012-08-15 | 日本電信電話株式会社 | Route information management method and management system thereof |
-
2009
- 2009-08-03 JP JP2009180328A patent/JP5022412B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2011035686A (en) | 2011-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113347091B (en) | Flexible algorithm aware border gateway protocol prefix segment route identifier | |
EP2978174B1 (en) | Interest return control message | |
EP2869515B1 (en) | System and method for routing and for minimum path mtu discovery in content centric networks | |
US8687522B2 (en) | Distributed storage of routing information in a link state protocol controlled network | |
KR101317969B1 (en) | Inter-node link aggregation system and method | |
US20160182352A1 (en) | Methods and apparatus to utilize route parameter sets for exchanging routes in a communication network | |
US20140369356A1 (en) | Opportunistic compression of routing segment identifier stacks | |
US20150381406A1 (en) | Loop avoidance during network convergence in switched networks | |
JP6085263B2 (en) | Relay node and route control method | |
CN106559256B (en) | System and method for eliminating undetected cycles of interest in information-centric networks | |
US7808927B2 (en) | Technique to automatically deaggregate an optimum set to prevent suboptimal routing or routing failures within a link state flooding domain | |
JP2018191290A (en) | Method, apparatus, and network system for implementing load balancing | |
US20120300781A1 (en) | Packet Routing in a Network | |
JP6203254B2 (en) | Method, system and computer-readable medium for routing Diameter messages in a Diameter signaling router | |
US9391896B2 (en) | System and method for packet forwarding using a conjunctive normal form strategy in a content-centric network | |
JP5022412B2 (en) | Route information management system, route information management method, and program | |
WO2019201326A1 (en) | Secure and reliable on-demand source routing in an information centric network | |
Que et al. | A Network Architecture Containing Both Push and Pull Semantics | |
JP4638849B2 (en) | Function distributed communication apparatus and path control method | |
JP4490990B2 (en) | Peer-to-peer communication establishment apparatus and program | |
WO2009062429A1 (en) | Method, net node and system avoiding attacks in p2p network | |
JP5045551B2 (en) | Route aggregation device and aggregation processing method | |
Masuda et al. | Splitable: Toward routing scalability through distributed bgp routing tables | |
Pelsser et al. | Scalable support of interdomain routes in a single as | |
JP3878140B2 (en) | Communication node, routing information advertising method, routing information advertising program, and recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110801 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20110822 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120509 |
|
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: 20120612 |
|
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: 20120615 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5022412 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150622 Year of fee payment: 3 |
|
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 |