JP4220330B2 - VPN table search device - Google Patents

VPN table search device Download PDF

Info

Publication number
JP4220330B2
JP4220330B2 JP2003283372A JP2003283372A JP4220330B2 JP 4220330 B2 JP4220330 B2 JP 4220330B2 JP 2003283372 A JP2003283372 A JP 2003283372A JP 2003283372 A JP2003283372 A JP 2003283372A JP 4220330 B2 JP4220330 B2 JP 4220330B2
Authority
JP
Japan
Prior art keywords
node
vpn
output port
next node
storage area
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
JP2003283372A
Other languages
Japanese (ja)
Other versions
JP2005051649A (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 JP2003283372A priority Critical patent/JP4220330B2/en
Publication of JP2005051649A publication Critical patent/JP2005051649A/en
Application granted granted Critical
Publication of JP4220330B2 publication Critical patent/JP4220330B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明はVPN(Virtual Private Network)における宛先アドレスに対応する出力ポートが記録されたテーブルの検索技術に関する。   The present invention relates to a search technique for a table in which an output port corresponding to a destination address in a VPN (Virtual Private Network) is recorded.

図4に従来のVPNネットワークの構成を、図5に従来のルータの構成を示す。従来ネットワークでは基本的に、IPアドレスを重複無く使用する形でVPNを実現する。また、ルータでもこのIPアドレスをベースにルーティングを行う。   FIG. 4 shows the configuration of a conventional VPN network, and FIG. 5 shows the configuration of a conventional router. In a conventional network, a VPN is basically realized by using IP addresses without duplication. The router also performs routing based on this IP address.

VPNを実現する場合は、あらかじめ登録されているSA(ソース・アドレス)に許されているDA(宛先アドレス)であることも監視され、他のVPNから当該VPNへパケットが混入することも防いでいる(例えば、特許文献1または2参照)。図8に示すように、宛先アドレス(DA)に対応する出力ポート番号が記録されたテーブルを用いて、入力IPパケットを所定の出力ポートに振り分ける。
特開2000−358064号公報 特開2000−332786号公報
When implementing a VPN, it is also monitored that it is a DA (destination address) allowed for a pre-registered SA (source address) and prevents packets from being mixed into the VPN from other VPNs. (For example, refer to Patent Document 1 or 2). As shown in FIG. 8, an input IP packet is distributed to a predetermined output port using a table in which an output port number corresponding to a destination address (DA) is recorded.
JP 2000-358064 A JP 2000-332786 A

従来は、複数のVPNが一つのテーブルに記録され、FE(フォワーディングエンジン)は、宛先アドレス(DA)に基づき出力ポートを決定する。このときに、例えば、記録されている宛先アドレスの最上段から順に検索を行い、入力IPパケットの宛先アドレスと一致したところで出力ポートを決定する。   Conventionally, a plurality of VPNs are recorded in one table, and an FE (forwarding engine) determines an output port based on a destination address (DA). At this time, for example, the search is performed sequentially from the top of the recorded destination address, and the output port is determined when it matches the destination address of the input IP packet.

また、従来のVPNは、図5に示すように、宛先アドレスによってVPNが分類されている。したがって、前述したように、IPアドレスを重複なく使用することが必要である。これは、1つの宛先アドレスが複数のVPNに属することは許されていないことを意味する。   Further, in the conventional VPN, as shown in FIG. 5, VPNs are classified by destination addresses. Therefore, as described above, it is necessary to use IP addresses without duplication. This means that one destination address is not allowed to belong to multiple VPNs.

しかし、多種多様なVPNの利用形態が要求される昨今では、1つの宛先アドレスが複数のVPNに属するといったVPNの利用形態も必要となる場合があり得る。例えば、ユーザ#3はVPN#1およびVPN#2の双方に属しており、VPN#1のユーザ#1からのIPパケットおよびVPN#2のユーザ#2からのIPパケットの双方をユーザ#3が受け取るというVPN利用形態を実現しようとしても従来のVPNは、このような要求に対応することは困難だった。   However, in recent years when a wide variety of VPN usage forms are required, a VPN usage form in which one destination address belongs to a plurality of VPNs may be required. For example, user # 3 belongs to both VPN # 1 and VPN # 2, and user # 3 receives both IP packets from user # 1 of VPN # 1 and IP packets from user # 2 of VPN # 2. Even if it is going to implement | achieve the VPN utilization form of receiving, it was difficult for the conventional VPN to respond to such a request.

また、IPアドレスの重複を許さないために、必然的に、IPアドレスの一覧からなる1つの大規模なテーブルを用いることになる。このような1つの大規模なテーブルを用いて検索を行うと、テーブルのデータ量が膨大であるため、検索に長い処理時間を要する問題がある。   Also, in order not to allow duplication of IP addresses, one large table consisting of a list of IP addresses is inevitably used. When a search is performed using such a single large table, the amount of data in the table is enormous, and there is a problem that a long processing time is required for the search.

本発明は、このような背景に行われたものであって、VPN対応に独立したテーブルを用い、VPN毎に並列に検索することにより、1つの宛先アドレスが複数のVPNに属する利用形態を許容することができると共に、検索時間を短縮することができるVPN用テーブル検索装置を提供することを目的とする。   The present invention is based on such a background, and by using an independent table corresponding to VPN and searching in parallel for each VPN, a usage form in which one destination address belongs to a plurality of VPNs is allowed. An object of the present invention is to provide a VPN table search device that can reduce the search time.

本発明は、VPN毎に独立したテーブルを用い、VPN毎に並列に検索することを特徴とするが、その場合には、図6に示すように、VPN毎にそれぞれバイナリツリーを設け、テーブル検索装置は、これらの複数のバイナリツリーに対して検索を行う構成が考えられる。   The present invention is characterized in that an independent table is used for each VPN and a search is performed in parallel for each VPN. In this case, a binary tree is provided for each VPN as shown in FIG. The device may be configured to perform a search on the plurality of binary trees.

このように、複数のバイナリツリーに対して検索を行うためには、各バイナリツリーを格納する記憶領域を用意し、また、バイナリツリーの構成が個々に異なるため、バイナリツリーの数分の異なった検索制御手段を用意しなければならない。   As described above, in order to perform a search for a plurality of binary trees, a storage area for storing each binary tree is prepared, and the configuration of the binary tree is individually different. A search control means must be prepared.

そこで、本発明では、バイナリツリーを1つ集約し、それぞれのノードにVPN毎のネクストホップを示す出力ポート番号等の情報を持つことを主たる特徴とする。これにより、バイナリツリーの検索制御手段が単一で済み、テーブル検索装置の処理負荷を軽減させることができる。   Thus, the main feature of the present invention is that one binary tree is aggregated and each node has information such as an output port number indicating the next hop for each VPN. Thereby, a single binary tree search control means is sufficient, and the processing load of the table search apparatus can be reduced.

すなわち、本発明は、複数のVPNユーザが、独立したIPアドレス体系を用いて、1つのネットワークで、仮想的に独立のネットワークを構成するVPNにおけるテーブル検索装置であって、本発明の特徴とするところは、IPヘッダの最下位ビットから最上位ビットに向けて順に読み出されるビット値に基づき枝分かれするバイナリツリーを備え、このバイナリツリーを構成する各ノードには、VPN毎の次出力ポート番号および次ノードへの接続の有無を示す識別子を備えたところにある。   That is, the present invention is a table search apparatus in a VPN in which a plurality of VPN users configure a virtual independent network with a single network using an independent IP address system. However, a binary tree that branches based on bit values that are sequentially read from the least significant bit to the most significant bit of the IP header is provided, and each node constituting the binary tree includes a next output port number for each VPN and a next output port number. There is an identifier that indicates whether or not there is a connection to the node.

これにより、1つのバイナリツリーで複数のVPN毎のテーブル検索を実現することができる。また、次ノードへの接続の有無を示す識別子を備えることにより、VPN毎にバイナリツリーの構成が異なっている場合には、この識別子を用いてツリーの末端位置を可変することができる。すなわち、次ノードへの接続が無いとすれば、そのノードがツリーの末端位置になり、次ノードへの接続が有るとすれば、そのノードよりも下位にツリーの末端位置があることになる。   Thereby, a table search for each of a plurality of VPNs can be realized with one binary tree. In addition, by providing an identifier indicating the presence or absence of connection to the next node, when the configuration of the binary tree differs for each VPN, the end position of the tree can be varied using this identifier. That is, if there is no connection to the next node, that node is the end position of the tree, and if there is a connection to the next node, the end position of the tree is lower than that node.

本発明のバイナリツリーは、例えば、1個のメモリによって簡単かつ経済的に実現することができる。すなわち、前記ノードの識別番号と、前記VPN毎の次出力ポート番号および次ノードへの接続の有無を示す識別子と、前記読み出されるビット値に対応した次ノードの識別番号とを記録する記憶領域を前記ノード数分含むメモリと、このメモリに含まれる前記記憶領域に記録された前記ノードの情報を検索対象として入力IPパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索手段とを備え、このテーブル検索手段は、前記記憶領域に記録された1つの前記ノードの情報を検索対象として検索を行い、次ノードへの接続が有るときには、前記入力IPパケットのIPヘッダの最下位ビットから最上位ビットに向けて順に読み出されるビット値と前記次ノードの識別番号とを比較して一致した次ノードの識別番号の前記ノードに相応する前記記憶領域に記録された情報に検索対象を拡張させる手段を備えることができる。   The binary tree of the present invention can be realized simply and economically by a single memory, for example. That is, the storage area for recording the identification number of the node, the next output port number for each VPN, the identifier indicating the presence or absence of connection to the next node, and the identification number of the next node corresponding to the read bit value A memory including the number of nodes, and table search means for determining an output port corresponding to a destination address of an input IP packet by using the information of the node recorded in the storage area included in the memory as a search target. The table search means searches the information of one node recorded in the storage area as a search target, and when there is a connection to the next node, the least significant bit to the most significant bit of the IP header of the input IP packet The bit values read out sequentially toward the next node and the identification number of the next node Can be the information recorded in the storage area corresponding to the de comprises means to expand the search.

本発明の他の観点は、複数のVPNユーザが、独立したIPアドレス体系を用いて、1つのネットワークで、仮想的に独立のネットワークを構成するVPNにおけるテーブル検索装置に適用されるプログラムであって、本発明の特徴とするところは、情報処理装置にインストールすることにより、その情報処理装置に、IPヘッダの最下位ビットから最上位ビットに向けて順に読み出されるビット値に基づき枝分かれするバイナリツリーに相応する機能を実現させ、このバイナリツリーを構成する各ノードには、VPN毎の次出力ポート番号および次ノードへの接続の有無を示す識別子を備えたところにある。   Another aspect of the present invention is a program applied to a table search apparatus in a VPN in which a plurality of VPN users use a single IP address system to form a virtually independent network. A feature of the present invention is that, when installed in an information processing apparatus, the information processing apparatus has a binary tree that branches based on bit values read in order from the least significant bit to the most significant bit of the IP header. Corresponding functions are realized, and each node constituting this binary tree is provided with an identifier indicating the next output port number for each VPN and the presence or absence of connection to the next node.

さらに具体的には、前記ノードの識別番号と、前記VPN毎の次出力ポート番号および次ノードへの接続の有無を示す識別子と、前記読み出されるビット値に対応した次ノードの識別番号とを記録する記憶領域を前記ノード数分含むメモリに相応する機能と、このメモリに含まれる前記記憶領域に記録された前記ノードの情報を検索対象として入力IPパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索手段に相応する機能とを実現させ、このテーブル検索手段に相応する機能として、前記記憶領域に記録された1つの前記ノードの情報を検索対象として検索を行い、次ノードへの接続が有るときには、前記入力IPパケットのIPヘッダの最下位ビットから最上位ビットに向けて順に読み出されるビット値と前記次ノードの識別番号とを比較して一致した次ノードの識別番号の前記ノードに相応する前記記憶領域に記録された情報に検索対象を拡張させる機能を実現させることができる。   More specifically, the identification number of the node, the next output port number for each VPN, the identifier indicating the presence / absence of connection to the next node, and the identification number of the next node corresponding to the read bit value are recorded. A function corresponding to a memory including as many storage areas as the number of nodes to be processed and an output port corresponding to a destination address of an input IP packet are determined by using the node information recorded in the storage area included in the memory as a search target. A function corresponding to the table search means is realized, and as a function corresponding to the table search means, the information of one node recorded in the storage area is searched as a search target, and there is a connection to the next node. Sometimes, the bit value read sequentially from the least significant bit to the most significant bit of the IP header of the input IP packet and the next no. It can be the identification number and realizing matched functions to expand the search to information recorded in the storage area corresponding to the node identification number of the next node by comparing the.

本発明のさらに他の観点は、本発明のプログラムが記録された前記情報処理装置読み取り可能な記録媒体である。本発明のプログラムは本発明の記録媒体に記録されることにより、前記情報処理装置は、この記録媒体を用いて本発明のプログラムをインストールすることができる。あるいは、本発明のプログラムを保持するサーバからネットワークを介して直接前記情報処理装置に本発明のプログラムをインストールすることもできる。   Still another aspect of the present invention is a recording medium readable by the information processing apparatus on which the program of the present invention is recorded. By recording the program of the present invention on the recording medium of the present invention, the information processing apparatus can install the program of the present invention using this recording medium. Alternatively, the program of the present invention can be directly installed in the information processing apparatus via a network from a server holding the program of the present invention.

これにより、汎用の情報処理装置を用いて、VPN対応に独立したテーブルを用い、VPN毎に並列に検索することにより、1つの宛先アドレスが複数のVPNに属する利用形態を許容することができると共に、検索時間を短縮することができるVPN用テーブル検索装置を実現することができる。   As a result, using a general-purpose information processing device and using an independent table corresponding to the VPN and searching in parallel for each VPN, it is possible to allow a usage mode in which one destination address belongs to a plurality of VPNs. Thus, a VPN table search apparatus that can shorten the search time can be realized.

本発明によれば、VPN対応に独立したテーブルを用い、VPN毎に並列に検索することにより、1つの宛先アドレスが複数のVPNに属する利用形態を許容することができると共に、検索時間を短縮することができる。   According to the present invention, by using an independent table corresponding to VPN and searching in parallel for each VPN, it is possible to allow a usage form in which one destination address belongs to a plurality of VPNs, and to shorten the search time. be able to.

本発明実施形態を図1および図2を参照して説明する。図1は本実施形態のバイナリツリーを示す図である。図2は本実施形態のバイナリツリーを構成するノードでのテーブルの持ち方を示す図である。   An embodiment of the present invention will be described with reference to FIGS. FIG. 1 is a diagram showing a binary tree of this embodiment. FIG. 2 is a diagram showing how to hold a table at a node constituting the binary tree of the present embodiment.

本実施形態は、複数のVPNユーザが、独立したIPアドレス体系を用いて、1つのネットワークで、仮想的に独立のネットワークを構成するVPNにおけるテーブル検索装置であって、本発明の特徴とするところは、図1に示すように、IPヘッダの最下位ビットから最上位ビットに向けて順に読み出されるビット値に基づき枝分かれするバイナリツリーを備え、このバイナリツリーを構成する各ノードには、図2に示すように、VPN毎の次出力ポート番号および次ノードへの接続の有無を示す識別子を備えたところにある。   The present embodiment is a table search apparatus in a VPN in which a plurality of VPN users use a single network to form a virtually independent network using an independent IP address system, which is a feature of the present invention. 1 includes a binary tree that branches based on the bit values that are sequentially read from the least significant bit to the most significant bit of the IP header, as shown in FIG. As shown, there is a next output port number for each VPN and an identifier indicating the presence / absence of connection to the next node.

入力パケットは、そのIPアドレスの最下位ビットから、1ビットずつ“0”もしくは“1”であることを判別していく。例では“01”の場合は、その該当するノードに持ったVPN毎のデータを図2に示している。   It is determined that the input packet is “0” or “1” bit by bit from the least significant bit of the IP address. In the example, in the case of “01”, the data for each VPN held in the corresponding node is shown in FIG.

“01”では、VPN毎にそのノードで終端した場合のNH(ネクストホップ)の出力ポート番号が記載されている。また、endマークというものがあり、例ではendマークが“−”の場合は、次ノードがある可能性があり、endマークがendの場合は当該VPN−IDにおいては、次ノードが存在しない。そのため、このノードで以降は検索しなくてよい。   “01” describes the output port number of NH (next hop) when terminating at that node for each VPN. In addition, there is an end mark. In the example, when the end mark is “−”, there is a possibility that there is a next node. When the end mark is end, there is no next node in the VPN-ID. Therefore, it is not necessary to search from this node thereafter.

例えば、VPN#が#2の場合、Port#17の可能性があるが、次ノードが存在する可能性があり、次ノードの検索を行う。しかし、次ノードが例えば“010”はあるが、“011”はなく、パケットのIPアドレスが“011…”であれば、出力ポートはPort#17となる。   For example, when VPN # is # 2, there is a possibility of Port # 17, but there is a possibility that the next node exists, and the next node is searched. However, if the next node is “010”, for example, but “011” is not present, and the IP address of the packet is “011...”, The output port is Port # 17.

次に、本実施形態のバイナリツリーのメモリを用いた実現例を図3に示す。図3はメモリ上でのバイナリツリーの構成例を示す図である。図3に示すように、ノードの識別番号と、VPN毎の次出力ポート番号および次ノードへの接続の有無を示す識別子であるendマークと、読み出されるビット値に対応した次ノードの識別番号とを記録する記憶領域を前記ノード数分含むメモリを備える。   Next, an implementation example using the binary tree memory of this embodiment is shown in FIG. FIG. 3 is a diagram illustrating a configuration example of a binary tree on a memory. As shown in FIG. 3, the node identification number, the next output port number for each VPN, the end mark which is an identifier indicating the presence or absence of connection to the next node, and the next node identification number corresponding to the read bit value Includes a memory area including as many storage areas as the number of nodes.

さらに、このメモリに含まれる前記記憶領域に記録された前記ノードの情報を検索対象として入力IPパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索部10を備え、このテーブル検索部10は、前記記憶領域に記録された1つの前記ノードの情報を検索対象として検索を行い、次ノードへの接続が有るときには、前記入力IPパケットのIPヘッダの最下位ビットから最上位ビットに向けて順に読み出されるビット値と前記次ノードの識別番号とを比較して一致した次ノードの識別番号の前記ノードに相応する前記記憶領域に記録された情報に検索対象を拡張させる手段を備える。   Further, the information processing apparatus includes a table search unit 10 that determines the output port corresponding to the destination address of the input IP packet by using the node information recorded in the storage area included in the memory as a search target. A search is performed using the information of one of the nodes recorded in the storage area as a search target, and when there is a connection to the next node, the information is sequentially read from the least significant bit to the most significant bit of the IP header of the input IP packet. And a means for expanding the search object to information recorded in the storage area corresponding to the node having the coincident identification number of the next node by comparing the bit value obtained and the identification number of the next node.

すなわち、メモリ上に格納されたバイナリツリーは図3のように、“010”等のツリーのノードとVPN毎のNH等が格納される。また、ノード毎のテーブルの最後には、次ビットが“0”の場合と“1”の場合の、次のノードの格納されているアドレスのチェーンがある。つまり、検索部でこのチェーンを辿っていくと、順にバイナリツリーのサーチができる。   That is, the binary tree stored in the memory stores tree nodes such as “010” and NH for each VPN as shown in FIG. Further, at the end of the table for each node, there is a chain of addresses stored in the next node when the next bit is “0” and “1”. In other words, if this chain is traced in the search unit, the binary tree can be searched in order.

本発明は、汎用の情報処理装置にインストールすることにより、その情報処理装置に本発明のVPN用テーブル検索装置に相応する機能を実現させるプログラムとして実現することができる。このプログラムは、記録媒体に記録されて情報処理装置にインストールされ、あるいは通信回線を介して情報処理装置にインストールされることにより当該情報処理装置に、本実施形態のメモリおよびテーブル検索部10にそれぞれ相応する機能を実現させることができる。   The present invention can be implemented as a program that, when installed in a general-purpose information processing apparatus, causes the information processing apparatus to realize a function corresponding to the VPN table search apparatus of the present invention. This program is recorded in a recording medium and installed in the information processing apparatus, or installed in the information processing apparatus via a communication line, so that the information processing apparatus can store the program in the memory and table search unit 10 of the present embodiment. The corresponding function can be realized.

本発明のテーブル検索装置は、VPN対応に独立したテーブルを用い、VPN毎に並列に検索することにより、1つの宛先アドレスが複数のVPNに属する利用形態を許容することができると共に、検索時間を短縮することができるので、多種多様なVPN利用形態に対応することができるため、ユーザの利便性を向上させることができる。また、バイナリツリーを1つに集約することにより、検索制御を簡単化し、また、バイナリツリーを1つのメモリによって実現できるため、装置を経済的に構成することができる。   The table search apparatus according to the present invention can use a table in which one destination address belongs to a plurality of VPNs by searching in parallel for each VPN using an independent table corresponding to the VPN, and can reduce the search time. Since it can be shortened, it is possible to cope with a wide variety of VPN usage modes, and thus the convenience of the user can be improved. Further, by consolidating the binary trees into one, the search control can be simplified, and the binary tree can be realized by one memory, so that the apparatus can be configured economically.

本実施形態のバイナリツリーの構成例を示す図。The figure which shows the structural example of the binary tree of this embodiment. 本実施形態のバイナリツリーの1つのノードでのデータの維持のしかたを示す図。The figure which shows how to maintain the data in one node of the binary tree of this embodiment. 本実施形態のメモリ上でのバイナリツリーの構成例を示す図。The figure which shows the structural example of the binary tree on the memory of this embodiment. 従来のVPNネットワークを示す図。The figure which shows the conventional VPN network. 従来のルータの構成を示す図。The figure which shows the structure of the conventional router. VPN毎に分岐されたバイナリツリーの例を示す図。The figure which shows the example of the binary tree branched for every VPN.

符号の説明Explanation of symbols

10 テーブル検索部   10 Table search part

Claims (5)

複数のVPNユーザが、独立したIPアドレス体系を用いて、1つのネットワークで、仮想的に独立のネットワークを構成するVPN(Virtual Private Network)を実現するため、宛先アドレスに対応する出力ポート番号が記録されたテーブルを用いて、入力IPパケットの宛先アドレスに基づき出力ポートを決定するテーブル検索装置であり、
IPアドレスの最下位ビットから最上位ビットに向けて順に読み出されるビット値に基づき枝分かれするバイナリツリーを備え、
このバイナリツリーを構成する各ノードには、次出力ポート番号および次ノードへの接続の有無を示す識別子を備えた
VPN用テーブル検索装置において、
前記各ノードには、前記識別子がVPN毎に設けられた
ことを特徴とするVPN用テーブル検索装置。
A plurality of VPN users use an independent IP address system to realize a VPN (Virtual Private Network) that constitutes a virtually independent network in one network, so that an output port number corresponding to a destination address is recorded. A table search device that determines an output port based on a destination address of an input IP packet using the generated table ,
A binary tree that branches based on bit values that are sequentially read from the least significant bit to the most significant bit of the IP address ;
Each node configuring this binary tree has a next output port number and an identifier indicating the presence or absence of connection to the next node.
In the VPN table search device,
The VPN table search device according to claim 1, wherein the identifier is provided for each VPN in each node .
前記ノードの識別番号と、前記VPN毎の次出力ポート番号および次ノードへの接続の有無を示す識別子と、前記読み出されるビット値に対応した次ノードの識別番号とを記録する記憶領域を前記ノード数分含むメモリと、
このメモリに含まれる前記記憶領域に記録された前記ノードの情報を検索対象として入力IPパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索手段と
を備え、
このテーブル検索手段は、前記記憶領域に記録された1つの前記ノードの情報を検索対象として検索を行い、次ノードへの接続が有るときには、前記入力IPパケットのIPアドレスの最下位ビットから最上位ビットに向けて順に読み出されるビット値と前記次ノードの識別番号とを比較して一致した次ノードの識別番号の前記ノードに相応する前記記憶領域に記録された情報に検索対象を拡張させる手段を備えた
請求項1記載のVPN用テーブル検索装置。
A storage area for recording the node identification number, the next output port number for each VPN, an identifier indicating the presence or absence of connection to the next node, and the identification number of the next node corresponding to the read bit value With a few minutes of memory,
Table search means for determining an output port corresponding to a destination address of an input IP packet by using the node information recorded in the storage area included in the memory as a search target; and
This table search means searches for the information of one of the nodes recorded in the storage area as a search target, and when there is a connection to the next node, the most significant bit from the least significant bit of the IP address of the input IP packet Means for comparing the bit value read in sequence toward the bit with the identification number of the next node and extending the search target to information recorded in the storage area corresponding to the node of the coincidence identification number of the next node The VPN table search device according to claim 1.
複数のVPNユーザが、独立したIPアドレス体系を用いて、1つのネットワークで、仮想的に独立のネットワークを構成するVPNを実現するため、宛先アドレスに対応する出力ポート番号が記録されたテーブルを用いて、入力IPパケットの宛先アドレスに基づき出力ポートを決定するテーブル検索装置に適用されるプログラムにおいて、
情報処理装置にインストールすることにより、その情報処理装置に、
IPアドレスの最下位ビットから最上位ビットに向けて順に読み出されるビット値に基づき枝分かれするバイナリツリーに相応する機能を実現させ、
このバイナリツリーを構成する各ノードには、次出力ポート番号および次ノードへの接続の有無を示す識別子を備え、
前記各ノードには、前記識別子がVPN毎に設けられた
ことを特徴とするプログラム。
A plurality of VPN users use a table in which output port numbers corresponding to destination addresses are recorded in order to realize a VPN that constitutes a virtually independent network in one network using an independent IP address system. In a program applied to a table search device that determines an output port based on a destination address of an input IP packet ,
By installing on an information processing device,
Realizing a function corresponding to a binary tree that branches based on the bit values read in order from the least significant bit to the most significant bit of the IP address ,
Each node constituting this binary tree has an identifier indicating the next output port number and the presence or absence of connection to the next node,
The program characterized in that the identifier is provided for each VPN in each node .
前記ノードの識別番号と、前記VPN毎の次出力ポート番号および次ノードへの接続の有無を示す識別子と、前記読み出されるビット値に対応した次ノードの識別番号とを記録する記憶領域を前記ノード数分含むメモリに相応する機能と、
このメモリに含まれる前記記憶領域に記録された前記ノードの情報を検索対象として入力IPパケットの宛先アドレスに対応する出力ポートを決定するテーブル検索手段に相応する機能と
を実現させ、
このテーブル検索手段に相応する機能として、前記記憶領域に記録された1つの前記ノードの情報を検索対象として検索を行い、次ノードへの接続が有るときには、前記入力IPパケットのIPアドレスの最下位ビットから最上位ビットに向けて順に読み出されるビット値と前記次ノードの識別番号とを比較して一致した次ノードの識別番号の前記ノードに相応する前記記憶領域に記録された情報に検索対象を拡張させる機能を実現させる
請求項3記載のプログラム。
A storage area for recording the node identification number, the next output port number for each VPN, an identifier indicating the presence or absence of connection to the next node, and the identification number of the next node corresponding to the read bit value A function corresponding to a memory containing several minutes,
Realizing a function corresponding to a table search means for determining an output port corresponding to a destination address of an input IP packet by using the node information recorded in the storage area included in the memory as a search target;
As a function corresponding to this table search means, a search is performed using information on one node recorded in the storage area as a search target, and when there is a connection to the next node, the lowest IP address of the input IP packet The bit value read in order from the bit to the most significant bit is compared with the identification number of the next node by comparing the bit value and the information to be searched is stored in the information recorded in the storage area corresponding to the node of the identification number of the next node. The program according to claim 3, which realizes a function to be expanded.
請求項3または4記載のプログラムが記録された前記情報処理装置読み取り可能な記録媒体。
The information processing apparatus-readable recording medium on which the program according to claim 3 or 4 is recorded.
JP2003283372A 2003-07-31 2003-07-31 VPN table search device Expired - Fee Related JP4220330B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003283372A JP4220330B2 (en) 2003-07-31 2003-07-31 VPN table search device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003283372A JP4220330B2 (en) 2003-07-31 2003-07-31 VPN table search device

Publications (2)

Publication Number Publication Date
JP2005051649A JP2005051649A (en) 2005-02-24
JP4220330B2 true JP4220330B2 (en) 2009-02-04

Family

ID=34268276

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003283372A Expired - Fee Related JP4220330B2 (en) 2003-07-31 2003-07-31 VPN table search device

Country Status (1)

Country Link
JP (1) JP4220330B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101210339B1 (en) 2006-10-10 2012-12-18 삼성전자주식회사 Method for generating node identifier in k-nary tree
CN107707477A (en) * 2017-09-28 2018-02-16 杭州迪普科技股份有限公司 The processing method and processing device of message, computer-readable recording medium

Also Published As

Publication number Publication date
JP2005051649A (en) 2005-02-24

Similar Documents

Publication Publication Date Title
CA2434876C (en) Method and apparatus for ternary content addressable memory (tcam) table management
US9680747B2 (en) Internet protocol and Ethernet lookup via a unified hashed trie
EP1779605B1 (en) Forwarding database in a network switch device
US7774538B2 (en) Method for ternary contents address memory table management
CN106470158B (en) Message forwarding method and device
EP3777055B1 (en) Longest prefix matching
CN106803809B (en) Message forwarding method and device
US10897422B2 (en) Hybrid routing table for routing network traffic
US20070091899A1 (en) Data structure for storing and accessing multiple independent sets of forwarding information
JPWO2006093321A1 (en) Node, network, correspondence creation method, and frame transfer program
US6925503B2 (en) Method and system for performing a longest prefix match search
CN111131539A (en) Message forwarding method and device
US20030220996A1 (en) Method for controlling network access for fragments
JP4220330B2 (en) VPN table search device
CN100481820C (en) Searching method for TCAM route table and searching device for TCAM route table
US7706298B2 (en) Route dependency selective route download
EP1657859B1 (en) Protocol speed increasing device
CN109921992B (en) Path selection method and device, network equipment and ED equipment
US6895442B1 (en) Technique for fast and efficient internet protocol (IP) address lookup
US20180212877A1 (en) Combining prefix lengths into a hash table
JP3795881B2 (en) Table search method and apparatus
JP2005051650A (en) Table search instrument
US6700883B1 (en) Algorithm to bypass L4 processing in an internet protocol forwarding processor
JP4288320B2 (en) VPN router
US6654372B1 (en) Algorithm to bypass L4 processing in an internet protocol forwarding processor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060616

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060801

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080604

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080715

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080911

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

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

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

Free format text: PAYMENT UNTIL: 20111121

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees