JP6247239B2 - Network verification system, network verification method, flow inspection apparatus, and program - Google Patents
Network verification system, network verification method, flow inspection apparatus, and program Download PDFInfo
- Publication number
- JP6247239B2 JP6247239B2 JP2015028331A JP2015028331A JP6247239B2 JP 6247239 B2 JP6247239 B2 JP 6247239B2 JP 2015028331 A JP2015028331 A JP 2015028331A JP 2015028331 A JP2015028331 A JP 2015028331A JP 6247239 B2 JP6247239 B2 JP 6247239B2
- Authority
- JP
- Japan
- Prior art keywords
- transfer
- packet
- test packet
- rule
- test
- 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.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
本発明は、パケットのヘッダ情報、入力ポート、出力ポート及び出力ヘッダ情報の組み合わせで転送規則が決定されるフローベースのネットワークにおける、転送装置の動作及び転送装置に設定された転送ルールを検査するネットワーク検証システム、ネットワーク検証方法、フロー検査装置、及びプログラムに関する。 The present invention relates to a network that checks the operation of a transfer device and the transfer rule set in the transfer device in a flow-based network in which a transfer rule is determined by a combination of packet header information, input port, output port, and output header information. The present invention relates to a verification system, a network verification method, a flow inspection apparatus, and a program.
SDN(Software−Defined Networking)を実現するための代表的なプロトコルの1つにOpenFlowがある。OpenFlowはデータ転送制御機能部をデータ転送機能部と分離し、その間に統一的でオープンなインタフェースを規定する事により、データ転送機能の柔軟な制御を実現する。OpenFlowは通信をエンドツーエンドの“フロー”として捉え、フロー単位で経路制御を行う。 One typical protocol for realizing SDN (Software-Defined Networking) is OpenFlow. OpenFlow separates the data transfer control function unit from the data transfer function unit, and defines a unified and open interface between them, thereby realizing flexible control of the data transfer function. OpenFlow regards communication as an end-to-end “flow” and performs path control in units of flows.
OpenFlowはOSI参照モデルで規定された各レイヤの宛先アドレスに従ってパケット転送を行うのではなく、複数のレイヤに跨がる情報の組み合わせで構成されたマッチ条件に一致したヘッダ情報を持つパケットに対して、指定したアクションを実施し転送を行う。このマッチ条件とアクションの組み合わせを“フローエントリ”と呼ぶ。フローエントリには、マッチフィールド、とアクションフィールドに加えて、カウンタと呼ばれるフロー毎の統計情報が付加される。 OpenFlow does not perform packet forwarding according to the destination address of each layer specified in the OSI reference model, but for packets having header information that matches the matching conditions configured by a combination of information across multiple layers. Execute the specified action and transfer. This combination of match condition and action is called a “flow entry”. In addition to the match field and action field, statistical information for each flow called a counter is added to the flow entry.
上記OpenFlowに代表されるフローベースのパケット処理を行うSDNノードにより構成されたネットワークの正常性を検査するためには、検査したいフローエントリにマッチするヘッダ情報を持つ試験パケットを送信して、相手先SDNノードへの到着確認、経由したSDNノード情報の取得、各SDNノード内でマッチしたフローエントリ情報の取得を行う必要がある。なお、以下の説明では、「SDNノード」を「転送装置」と記載することがある。 In order to check the normality of the network configured by the SDN node that performs flow-based packet processing represented by the above OpenFlow, a test packet having header information that matches the flow entry to be checked is transmitted, and the other party It is necessary to confirm arrival at the SDN node, acquire SDN node information that has passed through, and acquire flow entry information that matches within each SDN node. In the following description, “SDN node” may be referred to as “transfer device”.
従来、ネットワーク装置の動作や各装置間の到達性を確認し、ネットワークの正常性を検査するために、Ethernet(登録商標) OAMやICMPプロトコルを利用したpingやtraceroute等が用いられてきた。しかし、SDNノードにより形成された仮想ネットワーク内でEthernet(登録商標) OAMやping、traceroute等を利用したとしても、各ツールと同じマッチ条件を持つ特定のフローエントリを検査する事しかできず、マッチ条件に異なる条件(異なるIPプロトコル番号等)が含まれるフローエントリの正常性を検査する事はできない。 Conventionally, ping or traceroute using Ethernet (registered trademark) OAM, ICMP protocol, or the like has been used to check the operation of a network device and reachability between devices and to check the normality of the network. However, even if Ethernet (registered trademark) OAM, ping, traceroute, etc. are used in a virtual network formed by SDN nodes, only a specific flow entry having the same match condition as each tool can be inspected. The normality of a flow entry that includes different conditions (such as different IP protocol numbers) cannot be checked.
従来の研究では、仮想ネットワーク上を流れるユーザパケットを疑似した試験パケットとOpenFlowコントローラのような制御装置への問い合わせ処理(Packet−In)を活用する事により、上記課題に対応する方法が提案されている(例えば、非特許文献1、2を参照。)。
Conventional research has proposed a method for dealing with the above problem by utilizing a test packet that simulates a user packet flowing on a virtual network and an inquiry process (Packet-In) to a control device such as an OpenFlow controller. (For example, see Non-Patent
非特許文献1では、試験パケットのTTL減算処理及びTTL InvalidによるPacket−Inを活用する事により、指定したSDNノード間の疎通確認と経路情報の取得を可能とする手法を提案している。
Non-Patent
非特許文献1ではまず、試験パケットとしてUDPパケット(他のL4プロトコルがOpenFlowスイッチのフローテーブル内で使用されている場合はそれを利用する)を生成し、検査対象フローエントリにマッチするヘッダ情報を設定する。この時、マッチ条件に用いられていないヘッダフィールドに試験パケットを識別するための値を格納する。TTL領域には2(経路確認の場合は、宛先までのホップ数)を、ペイロード部には検査したい経路情報(送信元SDNノードや宛先SDNノードを識別可能な情報)を格納し、Packet−Outする。これにより、任意のパケットの到達性と経路情報を取得する事が可能となる。
In
非特許文献2では、各SDNノードにタグ付けを行う事により試験パケットとユーザパケットを区別して処理する事を可能とし、指定したSDNノード間の疎通確認と経路情報の取得を実現している。SDNノードのタグ付けには、隣接SDNノードが同一のタグを持たないようグラフ彩色アルゴリズムを活用する。制御装置から検査したいSDNノードに試験パケットを送信する際には、試験パケットのヘッダフィールドに、Packet−Out先のSDNノードを示すタグを挿入する。この時、SDNノードを示すタグは各フローエントリのマッチ条件に利用されていないヘッダフィールド(VLAN priority bit等)に格納される。Packet−Outにより試験パケットを受け取ったSDNノードは、パケットがマッチするフローエントリに従って試験パケットを処理する。次に試験パケットを受け取った隣接SDNノードでは、「自身のタグと異なるタグが格納されているパケットの場合はPacket−Inを行う」というフローエントリ(これは事前に設定しておく)に基づきPacket−Inを実施する。このような一連の動作により、任意のパケットの到達情報と経路情報を、制御装置を介して取得する事が可能となる。
In
非特許文献1や非特許文献2では、試験パケットを実ネットワークに送信する事により、任意のヘッダ情報をもつパケットのSDNノード間の疎通確認と経路情報の取得を実現している。しかし、仮想ネットワークを管理するためには、先に述べた通り、これらの情報に加えて各SDNノード内でパケットがマッチしたフローエントリ情報を取得する事が必要となる。これは、主に設定作成や設定検証、障害発生時の障害箇所特定等に用いられる。
In
そこで、本発明は、上記課題を解決すべく、転送装置内に設定されているフローエントリ情報を収集できるネットワーク検証システム、ネットワーク検証方法、フロー検査装置、及びプログラムを提供することを目的とする。 Therefore, an object of the present invention is to provide a network verification system, a network verification method, a flow inspection apparatus, and a program that can collect flow entry information set in a transfer apparatus in order to solve the above-described problems.
上記目的を達成するため、本発明に係るネットワーク検証システムは、所望の転送ルールにマッチするヘッダー情報を持つ試験パケットを転送装置へ送信するとともに、転送装置に対して試験パケットを処理する際に当該転送ルールに合致したフローエントリーの情報を収集させ、処理された試験パケットを回収して分析することとした。 In order to achieve the above object, the network verification system according to the present invention transmits a test packet having header information that matches a desired transfer rule to the transfer device, and processes the test packet with respect to the transfer device. It was decided to collect information on flow entries that matched the transfer rules, and collect and analyze the processed test packets.
具体的には、本発明に係るネットワーク検証システムは、仮想ネットワークを構成する少なくとも1台の転送装置と、前記仮想ネットワークの正常性を検証するフロー検査装置と、を備えるネットワーク検証システムであって、
前記転送装置は、
パケットのマッチ条件、前記マッチ条件に合致した場合に実施するアクションを記した転送ルール、及び前記転送ルールの情報である転送ルールIDが設定されたフローテーブルを有し、
前記フロー検査装置は、
前記転送装置の前記フローテーブルに設定されている前記転送ルール及び前記転送ルールIDを保管するフロー情報管理部と、
所望の前記マッチ条件に合致するヘッダー情報を持つ試験パケットを生成し、前記転送装置へ送信する試験パケット生成部と、
前記転送装置からの試験結果を受信する試験結果受信部と、
前記試験パケットを送信する前に、前記転送装置の前記フローテーブルに設定されている前記転送ルールを、
受信したパケットが前記試験パケットであるか否かを判断する試験パケット判定機能
、
前記試験パケットのマッチ条件に合致する前記転送ルールの前記転送ルールIDをメ
タデータに書き込むフロー情報格納処理機能、及び
受信したパケットが前記試験パケットである場合に前記メタデータに書き込まれてい
る前記転送ルールIDを前記試験パケットとともに前記試験結果として前記試験結果受
信部へ送信し、さらに前記転送ルールに他の転送装置への転送又は廃棄が設定されてい
る場合は前記試験パケットを転送又は廃棄する転送先判定機能、
を有するルールへ変換するフローテーブル変換部と、
前記試験結果受信部が受信した前記試験結果の前記試験パケットの識別情報に基づいて前記フロー情報管理部から前記所望のマッチ条件に対する前記転送ルールを検出し、該転送ルールと前記試験結果受信部が受信した前記試験結果の前記転送ルールとを比較して前記仮想ネットワークの正常性を検証する試験結果判定部と、
を有することを特徴とする。
Specifically, the network verification system according to the present invention is a network verification system comprising at least one transfer device configuring a virtual network, and a flow inspection device for verifying the normality of the virtual network,
The transfer device is
A packet matching condition, a forwarding rule that describes an action to be performed when the matching condition is met, and a flow table in which a forwarding rule ID that is information of the forwarding rule is set,
The flow inspection apparatus includes:
A flow information management unit for storing the transfer rule and the transfer rule ID set in the flow table of the transfer device;
Generating a test packet having header information that matches the desired match condition, and transmitting the test packet to the transfer device; and
A test result receiving unit for receiving a test result from the transfer device;
Before transmitting the test packet, the transfer rule set in the flow table of the transfer device,
A test packet determination function for determining whether or not the received packet is the test packet;
A flow information storage processing function that writes the transfer rule ID of the transfer rule that matches the match condition of the test packet to metadata, and the transfer that is written to the metadata when the received packet is the test packet The rule ID is transmitted to the test result receiving unit as the test result together with the test packet, and if the transfer rule is set to transfer or discard to another transfer device, the test packet is transferred or discarded. Transfer destination judgment function,
A flow table conversion unit for converting to a rule having
Based on the identification information of the test packet of the test result received by the test result receiving unit, the transfer rule for the desired match condition is detected from the flow information management unit, and the transfer rule and the test result receiving unit are A test result determination unit that verifies the normality of the virtual network by comparing the transfer rule of the received test result;
It is characterized by having.
本発明に係るネットワーク検証方法は、少なくとも1台の転送装置で構成された仮想ネットワークの正常性を検証するネットワーク検証方法であって、
前記転送装置のフローテーブルに、パケットのマッチ条件、前記マッチ条件に合致した場合に実施するアクションを記した転送ルール、及び前記転送ルールの情報である転送ルールIDを設定するフローテーブル設定手順と、
前記転送装置の前記フローテーブルに設定されている前記転送ルール及び前記転送ルールIDをフロー情報管理部に保管するフロー情報管理手順と、
所望の前記マッチ条件に合致するヘッダー情報を持つ試験パケットを生成し、前記転送装置へ送信する試験パケット生成手順と、
前記試験パケットを送信する前に、前記転送装置の前記フローテーブルに設定されている前記転送ルールを、
受信したパケットが前記試験パケットであるか否かを判断する試験パケット判定機能
、
前記試験パケットのマッチ条件に合致する前記転送ルールの前記転送ルールIDをメ
タデータに書き込むフロー情報格納処理機能、及び
受信したパケットが前記試験パケットである場合に前記メタデータに書き込まれてい
る前記転送ルールIDを前記試験パケットとともに試験結果として送信し、さらに前記
転送ルールに他の転送装置への転送又は廃棄が設定されている場合は前記試験パケット
を転送又は廃棄する転送先判定機能、
を有するルールへ変換するフローテーブル変換手順と、
前記転送装置からの前記試験結果を受信し、前記試験結果の前記試験パケットの識別情報に基づいて前記フロー情報管理部から前記所望のマッチ条件に対する前記転送ルールを検出し、該転送ルールと受信した前記試験結果の前記転送ルールとを比較して前記仮想ネットワークの正常性を検証する試験結果判定手順と、
を行うことを特徴とする。
The network verification method according to the present invention is a network verification method for verifying the normality of a virtual network composed of at least one transfer device,
A flow table setting procedure for setting a packet match condition, a transfer rule that describes an action to be performed when the match condition is met, and a transfer rule ID that is information of the transfer rule in the flow table of the transfer device;
A flow information management procedure for storing the transfer rule and the transfer rule ID set in the flow table of the transfer device in a flow information management unit;
A test packet generating procedure for generating a test packet having header information matching the desired match condition and transmitting the test packet to the transfer device;
Before transmitting the test packet, the transfer rule set in the flow table of the transfer device,
A test packet determination function for determining whether or not the received packet is the test packet;
A flow information storage processing function that writes the transfer rule ID of the transfer rule that matches the match condition of the test packet to metadata, and the transfer that is written to the metadata when the received packet is the test packet A transfer destination determination function that transmits a rule ID together with the test packet as a test result, and further transfers or discards the test packet when the transfer rule is set to transfer or discard to another transfer device;
A flow table conversion procedure for converting to a rule having
Receiving the test result from the transfer device, detecting the transfer rule for the desired match condition from the flow information management unit based on the identification information of the test packet of the test result, and receiving the transfer rule A test result determination procedure for verifying the normality of the virtual network by comparing the transfer rule of the test result;
It is characterized by performing.
本発明に係るフロー検査装置は、パケットのマッチ条件、前記マッチ条件に合致した場合に実施するアクションを記した転送ルール、及び前記転送ルールの情報である転送ルールIDが設定されたフローテーブルを有する、少なくとも1台の転送装置で構成される仮想ネットワークの正常性を検証するフロー検査装置であって、
前記転送装置の前記フローテーブルに設定されている前記転送ルール及び前記転送ルールIDを保管するフロー情報管理部と、
所望の前記マッチ条件に合致するヘッダー情報を持つ試験パケットを生成し、前記転送装置へ送信する試験パケット生成部と、
前記転送装置からの試験結果を受信する試験結果受信部と、
前記試験パケットを送信する前に、前記転送装置の前記フローテーブルに設定されている前記転送ルールを、
受信したパケットが前記試験パケットであるか否かを判断する試験パケット判定機能
、
前記試験パケットのマッチ条件に合致する前記転送ルールの前記転送ルールIDをメ
タデータに書き込むフロー情報格納処理機能、及び
受信したパケットが前記試験パケットである場合に前記メタデータに書き込まれてい
る前記転送ルールIDを前記試験パケットとともに前記試験結果として前記試験結果受
信部へ送信し、さらに前記転送ルールに他の転送装置への転送又は廃棄が設定されてい
る場合は前記試験パケットを転送又は廃棄する転送先判定機能、
を有するルールへ変換するフローテーブル変換部と、
前記試験結果受信部が受信した前記試験結果の前記試験パケットの識別情報に基づいて前記フロー情報管理部から前記所望のマッチ条件に対する前記転送ルールを検出し、該転送ルールと前記試験結果受信部が受信した前記試験結果の前記転送ルールとを比較して前記仮想ネットワークの正常性を検証する試験結果判定部と、
を有することを特徴とする。
The flow inspection apparatus according to the present invention includes a flow table in which a packet match condition, a transfer rule that describes an action to be performed when the match condition is met, and a transfer rule ID that is information on the transfer rule are set. A flow inspection device for verifying the normality of a virtual network composed of at least one transfer device,
A flow information management unit for storing the transfer rule and the transfer rule ID set in the flow table of the transfer device;
Generating a test packet having header information that matches the desired match condition, and transmitting the test packet to the transfer device; and
A test result receiving unit for receiving a test result from the transfer device;
Before transmitting the test packet, the transfer rule set in the flow table of the transfer device,
A test packet determination function for determining whether or not the received packet is the test packet;
A flow information storage processing function that writes the transfer rule ID of the transfer rule that matches the match condition of the test packet to metadata, and the transfer that is written to the metadata when the received packet is the test packet The rule ID is transmitted to the test result receiving unit as the test result together with the test packet, and if the transfer rule is set to transfer or discard to another transfer device, the test packet is transferred or discarded. Transfer destination judgment function,
A flow table conversion unit for converting to a rule having
Based on the identification information of the test packet of the test result received by the test result receiving unit, the transfer rule for the desired match condition is detected from the flow information management unit, and the transfer rule and the test result receiving unit are A test result determination unit that verifies the normality of the virtual network by comparing the transfer rule of the received test result;
It is characterized by having.
現在のOpenFlowの枠組みでは、転送ルールを識別するためのID等を各転送ルールに付与する機能がない。このため、本発明はすべての転送ルールのアクション部分を利用し、転送ルールIDを各転送ルールに設定することとしている。 In the current OpenFlow framework, there is no function for assigning each transfer rule an ID or the like for identifying the transfer rule. For this reason, the present invention uses the action part of all the transfer rules and sets the transfer rule ID for each transfer rule.
試験パケットを送信する前に、転送装置内のフローテーブルに設定されているフローエントリー情報としてそのIDをメタデータに書き込むように変更しておく。そして、試験パケットを当該転送装置に処理させることで、転送装置内のフローテーブルに設定されているフローエントリー情報を収集することができる。収集したフローエントリー情報とフロー検査装置が保管しているフローエントリー情報とを比較することで設定作成や設定検証、障害発生時の障害箇所特定等が可能になる。 Before transmitting the test packet, the ID is written in the metadata as the flow entry information set in the flow table in the transfer apparatus. Then, by causing the transfer device to process the test packet, it is possible to collect the flow entry information set in the flow table in the transfer device. By comparing the collected flow entry information with the flow entry information stored in the flow inspection device, it is possible to create settings, verify settings, specify a fault location when a fault occurs, and the like.
本発明に係るプログラムは、コンピュータを前記フロー検査装置として機能させる。本発明に係るフロー検査装置はコンピュータとプログラムによっても実現でき、プログラムを記録媒体に記録することも、ネットワークを通して提供することも可能である。 The program according to the present invention causes a computer to function as the flow inspection apparatus. The flow inspection apparatus according to the present invention can be realized by a computer and a program, and can be recorded on a recording medium or provided through a network.
従って、本発明は、転送装置内に設定されているフローエントリー情報を収集できるネットワーク検証システム、ネットワーク検証方法、フロー検査装置、及びプログラムを提供することができる。 Therefore, the present invention can provide a network verification system, a network verification method, a flow inspection apparatus, and a program that can collect flow entry information set in a transfer apparatus.
さらに、SDNノードをネットワークサービスに適用していくためには、様々なユーザトラヒックがネットワーク内に流れている状況下において特定の試験パケットの流れを追跡し、前記情報を取得できる必要がある。 Furthermore, in order to apply the SDN node to the network service, it is necessary to be able to acquire the information by tracking the flow of a specific test packet in a situation where various user traffic flows in the network.
そこで、本発明に係るネットワーク検証システムが備えるフロー検査装置の前記試験パケット生成部は、ユーザパケットに用いられる前記転送ルールのマッチ条件と異なるプロトコルで前記試験パケットをカプセル化することを特徴とする。転送装置は、パケットのヘッダー情報がマッチ条件と一致するかどうかを確認することでユーザパケットか試験パケットかを判断することができる。 Therefore, the test packet generation unit of the flow inspection apparatus provided in the network verification system according to the present invention encapsulates the test packet with a protocol different from the match condition of the transfer rule used for the user packet. The transfer apparatus can determine whether the header information of the packet matches the match condition to determine whether the packet is a user packet or a test packet.
さらに、本発明に係るネットワーク検証システムが備えるフロー検査装置の前記試験パケット判定機能は、受信したパケットが前記試験パケットである場合に試験パケット判定フラグとして前記メタデータ内の特定の1ビットに記録し、前記転送先判定機能は、前記メタデータの前記試験パケット判定フラグで処理するパケットが試験パケットであることを認識することを特徴とする。 Further, the test packet determination function of the flow inspection apparatus provided in the network verification system according to the present invention records a specific packet in the metadata as a test packet determination flag when the received packet is the test packet. The transfer destination determination function recognizes that a packet to be processed by the test packet determination flag of the metadata is a test packet.
転送装置のフローテーブルが作業内容が記載されたテーブルを複数持つマルチテーブルである場合もある。この場合、本発明に係るネットワーク検証システムが備えるフロー検査装置の前記フロー情報格納処理機能は、前記メタデータを各テーブル用の区画に区切り、各テーブルでの前記転送ルールIDをそれぞれの前記区画に記載することを特徴とする。 In some cases, the flow table of the transfer apparatus is a multi-table having a plurality of tables in which work contents are described. In this case, the flow information storage processing function of the flow inspection apparatus provided in the network verification system according to the present invention divides the metadata into sections for each table, and assigns the transfer rule ID in each table to each section. It is described.
本発明は、転送装置内に設定されているフローエントリー情報を収集できるネットワーク検証システム、ネットワーク検証方法、フロー検査装置、及びプログラムを提供することができる。 The present invention can provide a network verification system, a network verification method, a flow inspection apparatus, and a program that can collect flow entry information set in a transfer apparatus.
添付の図面を参照して本発明の実施形態を説明する。以下に説明する実施形態は本発明の実施形態であり、本発明は、以下の実施形態に制限されるものではない。なお、本明細書及び図面において符号が同じ構成要素は、相互に同一のものを示すものとする。 Embodiments of the present invention will be described with reference to the accompanying drawings. The embodiments described below are embodiments of the present invention, and the present invention is not limited to the following embodiments. In the present specification and drawings, the same reference numerals denote the same components.
本発明は、試験パケットが各SDNノード内でマッチしたフローエントリ(以下、転送ルールとする)の情報を取得するネットワーク検証システムである。本ネットワーク検証システムは、仮想ネットワークを構成する少なくとも1台の転送装置と、前記仮想ネットワークの正常性を検証するフロー検査装置と、を備えるネットワーク検証システムであって、
前記転送装置は、
パケットのマッチ条件、前記マッチ条件に合致した場合に実施するアクションを記した転送ルール、及び前記転送ルールの情報である転送ルールIDが設定されたフローテーブルを有し、
前記フロー検査装置は、
前記転送装置の前記フローテーブルに設定されている前記転送ルール及び前記転送ルールIDを保管するフロー情報管理部と、
所望の前記マッチ条件に合致するヘッダー情報を持つ試験パケットを生成し、前記転送装置へ送信する試験パケット生成部と、
前記転送装置からの試験結果を受信する試験結果受信部と、
前記試験パケットを送信する前に、前記転送装置の前記フローテーブルに設定されている前記転送ルールを、
受信したパケットが前記試験パケットであるか否かを判断する試験パケット判定機能
、
前記試験パケットのマッチ条件に
合致する前記転送ルールの前記転送ルールIDをメタデータに書き込むフロー情報格納
処理機能、及び
受信したパケットが前記試験パケットである場合に前記メタデータに書き込まれてい
る前記転送ルールIDを前記試験パケットとともに前記試験結果として前記試験結果受
信部へ送信し、さらに前記転送ルールに他の転送装置への転送又は廃棄が設定されてい
る場合は前記試験パケットを転送又は廃棄する転送先判定機能、
を有するルールへ変換するフローテーブル変換部と、
前記試験結果受信部が受信した前記試験結果の前記試験パケットの識別情報に基づいて前記フロー情報管理部から前記所望のマッチ条件に対する前記転送ルールを検出し、該転送ルールと前記試験結果受信部が受信した前記試験結果の前記転送ルールとを比較して前記仮想ネットワークの正常性を検証する試験結果判定部と、
を有することを特徴とする。
The present invention is a network verification system that acquires information on a flow entry (hereinafter referred to as a transfer rule) in which a test packet matches in each SDN node. This network verification system is a network verification system comprising at least one transfer device that constitutes a virtual network, and a flow inspection device that verifies the normality of the virtual network,
The transfer device is
A packet matching condition, a forwarding rule that describes an action to be performed when the matching condition is met, and a flow table in which a forwarding rule ID that is information of the forwarding rule is set,
The flow inspection apparatus includes:
A flow information management unit for storing the transfer rule and the transfer rule ID set in the flow table of the transfer device;
Generating a test packet having header information that matches the desired match condition, and transmitting the test packet to the transfer device; and
A test result receiving unit for receiving a test result from the transfer device;
Before transmitting the test packet, the transfer rule set in the flow table of the transfer device,
A test packet determination function for determining whether or not the received packet is the test packet;
A flow information storage processing function that writes the transfer rule ID of the transfer rule that matches the test packet match condition to metadata, and the transfer that is written to the metadata when the received packet is the test packet The rule ID is transmitted to the test result receiving unit as the test result together with the test packet, and if the transfer rule is set to transfer or discard to another transfer device, the test packet is transferred or discarded. Transfer destination judgment function,
A flow table conversion unit for converting to a rule having
Based on the identification information of the test packet of the test result received by the test result receiving unit, the transfer rule for the desired match condition is detected from the flow information management unit, and the transfer rule and the test result receiving unit are A test result determination unit that verifies the normality of the virtual network by comparing the transfer rule of the received test result;
It is characterized by having.
フロー検査装置は、主に転送装置内のフローテーブルの管理とユーザパケットを疑似した試験パケットの生成及び送信、試験結果の受信と判定を行う機能部である。フローテーブル変換部は、転送装置内のフローテーブルに試験パケットの判別機能と、試験パケットがマッチした転送ルール情報の取得機能を埋め込むために、フローテーブル内の転送ルールに変更を行う機能部である。試験パケットの判別は、転送用ルール群の前後にテストパケット識別用のフローテーブルをそれぞれ1つずつ用意する事で実現する。試験パケットがマッチした転送ルール情報の取得は、各転送ルールのアクションフィールドの変更と、SDNノード内において各パケットの処理情報を格納可能なメタデータを利用する事により実現する。 The flow inspection device is a functional unit that mainly manages the flow table in the transfer device, generates and transmits a test packet that simulates a user packet, and receives and determines a test result. The flow table conversion unit is a functional unit that changes the transfer rule in the flow table in order to embed a test packet discrimination function and a transfer rule information acquisition function that matches the test packet in the flow table in the transfer device. . Test packet discrimination is realized by preparing one test packet identification flow table before and after the transfer rule group. Acquisition of transfer rule information that matches the test packet is realized by changing the action field of each transfer rule and using metadata that can store processing information of each packet in the SDN node.
図1から図5は、このようなネットワーク検証システムを実現する構成を説明する図である。 1 to 5 are diagrams for explaining a configuration for realizing such a network verification system.
図1に示した機能接続構成301では、フロー検査装置100内部に制御装置1を設け、試験パケットの送信と試験結果の受信に制御装置1を利用する。これは、OpenFlowのPacket−InとPacket−Outの機能を利用する事により、実現可能である。
In the
図2に示した機能接続構成302では、制御装置1とフローテーブル変換部2をフロー検査装置100から切り離し、試験パケット送信部105と試験結果受信部104を設ける事により、フロー検査装置100が試験パケットの送信と試験結果の受信を担う。また、フローテーブル変換部2を制御装置1の上段に設置し、制御装置から転送装置に投入される転送ルール(フローテーブル)に対して、事前に変更を加える。そのため、本発明の試験機能が導入された状態のフローテーブル202が制御装置1より転送装置200に設定される。
In the
図3に示した機能接続構成303では、フローテーブル変換部2を制御装置1の下段に設置し、制御装置1から送信されたフローテーブルへの設定内容をフローテーブル変換部2で受信し、本発明を適用する変換を行った後、転送装置200へ設定する。フローテーブル変換部2が制御装置1と転送装置200の間に入る場合には、転送装置200はフローテーブル変換部を制御装置と見なす仕組みが必要となり、さらに、制御装置1も、フローテーブル変換部2を転送装置200と見なして設定情報等を送信する事が求められる。
In the functional connection configuration 303 shown in FIG. 3, the flow
図4に示した機能接続構成304及び図5に示した機能接続構成305では、試験パケット生成装置250を新たに設け、試験パケット生成部102と試験パケット送信部105をフロー検査装置100と切り離す。
In the
以下に、それぞれの機能接続構成のネットワーク検証システムについて説明する。 Below, the network verification system of each function connection structure is demonstrated.
(実施形態1)
本実施形態のネットワーク検証システムは図1の機能接続構成301である。
フロー検査装置100は、試験結果判定部101、試験パケット生成部102、フロー情報管理部103、試験結果受信部104、フローテーブル変換部2、及び制御装置1を備える。
(Embodiment 1)
The network verification system of this embodiment is the
The
試験結果判定部101は、受信した試験結果のペイロードに付加されている試験パケット識別情報から、試験パケットと試験結果の対応付けを行う。試験結果判定部101は、フロー情報管理部103に保存されている転送ルール群から試験結果に記された転送ルールIDに一致する転送ルールを呼び出す。
The test
試験パケット生成部102は、フロー情報管理部103から得た検査対象転送装置200のフローテーブルの情報を元に試験したい転送ルールにマッチするヘッダ情報を持つ試験パケットを生成する。SDNノード内で試験パケットをユーザパケットと区別して処理するために、試験パケット生成部102は、試験パケットは全ての転送装置200内でマッチ条件に用いられていないプロトコルを用いてカプセル化し、試験パケットを一意に識別するための識別情報を付加する。
The test
フロー情報管理部103は、各転送装置200に設定されている転送ルールと、転送ルールIDの対応付けと、試験パケットに付加する試験パケット識別子を保存する。
The flow
フローテーブル変換部2は、制御装置1から転送装置200内のフローテーブル202に設定予定の転送ルールを試験パケット判定部203、フロー情報格納処理部204、転送先判定部205の3つの要素で構成されるように変換を行い、制御装置1へ送信する。
The flow
制御装置1は、転送装置200のフローテーブル202への転送ルールの設定や、試験パケットの送信及び試験結果の受信、転送装置200との制御情報のやり取りを行う。
The
試験結果受信部104は、試験結果(転送装置200内でマッチした転送ルールのID)を試験対象の転送装置200から、制御装置1を介して受信する。
The test
転送装置200(SDNノード)は、受信部201、フローテーブル202、及び送信部206を備える。
The transfer apparatus 200 (SDN node) includes a
受信部201は、他の転送装置からのパケット及びフロー検査装置100からの試験パケットと制御情報を受信する。
The receiving
送信部206は、他の転送装置へのパケット及びフロー検査装置100への試験パケットとメタデータの情報を送信する。
The
フローテーブル202は、パケットのマッチ条件に応じた処理が記載されたアクションフィールドを持つテーブルを有する。マッチ条件とその処理で転送ルールが構成され、転送ルールごとにIDが付与される。また、テーブルは1つでもよいし、テーブルが複数存在するマルチテーブルであってもよい。フローテーブル202は、フロー検査装置100からの制御信号に基づき転送ルールを、試験パケット判定部203、フロー情報格納処理部204、及び転送先判定部205に変換する。図16は、フロー検査装置100からの制御信号に基づき転送ルールを変更した例である。図16(A)は転送ルール変更前の状態である。フローテーブルにはテーブルは1つだけ存在し、処理内容“src_mac=01:23:45:67:89:AB,, actions=output:2”が記載される。図16(B)は転送ルール変更後の状態である。フローテーブルにはテーブルが3つ(table_id=0、table_id=1、及びtable_id=2)形成される。
The flow table 202 includes a table having an action field in which processing according to a packet matching condition is described. A transfer rule is configured by the match condition and its processing, and an ID is assigned to each transfer rule. Further, there may be one table or a multi-table having a plurality of tables. The flow table 202 converts the transfer rule into a test
table_id=0のテーブルが試験パケット判定部203に相当する。table_id=0のテーブルには、受信パケットが試験パケット(mpls_label=100)ならば記載データ“0x800000”のメタデータを作成し、メタデータの特定ビットに試験パケットを識別するフラグを書き込み、カプセル化を解除(pop_mpls)する命令がある。試験パケットは、この処理を経ることで次のテーブルへ移行した時には他のユーザパケットと同じ状態となっており同じ転送ルールで処理されることになる。
table_id=1のテーブルがフロー情報格納処理部204に相当する。table_id=1のテーブルには、パケット種別に関わらずメタデータにこの転送ルールのID“0x000001”を記載し、処理内容(output:2)をスタックに保存(write_actios output:2)する命令がある。
table_id=2のテーブルが転送先判定部205に相当する。table_id=2のテーブルには、メタデータの内容を確認(前記フラグの確認)してパケットが試験パケットであるか否かを判断し、試験パケットであるならばメタデータの内容を含めて試験パケットをカプセル化し(“push_mpls”)、フロー検査装置へ転送(“output:3”)するとともにスタックされた通常処理(output:2)を行う命令(apply−actions)がある。また、パケットがユーザパケットであるならば、指定された転送ルールを実行する命令(apply_actions)もある。
The table of table_id = 0 corresponds to the test
A table of table_id = 1 corresponds to the flow information
A table of table_id = 2 corresponds to the transfer
試験パケット判定部203は、転送装置200で受信したパケットが試験パケットであるかどうかを判定する。試験パケットであればカプセル化されているため、カプセル化を解除し、ユーザパケットと同じ状態にする。更に、試験パケット判定部203は、転送装置200内で各パケットの処理情報を格納可能なメタデータ内の1ビットを試験パケット判定フラグとして利用し、試験パケット処理中である事を記録する(値を1に設定する)。図14は、メタデータ内の1ビットを試験パケット判定フラグとして利用する例を示した図である。
The test
フロー情報格納処理部204は、事前に制御装置1からの設定によって転送ルールのアクションフィールドに変更を加えておき、試験パケットがマッチした転送ルールのIDをメタデータに格納する。
The flow information
転送先判定部205は、全てのパケットは転送(または破棄)処理が実施される前に必ず転送先判定部を通過する。転送先判定部205は、メタデータの試験パケット判定フラグを参照し、現在処理しているパケットが試験パケットであるかどうかを判断する。試験パケットの場合、転送先判定部205は、再度カプセル化し、マッチした転送ルールのIDが格納されたメタデータの情報と共にフロー検査装置100に向けて送信する。更に、転送先判定部205は、次の転送装置200に向けて同じ試験パケットを送信する。一方、ユーザパケットの場合、転送先判定部205は、アクションフィールドに記された通りに転送(または破棄)処理を実施する。
The transfer
次に、図1のネットワーク検証システムの動作を説明する。図6は、転送装置のフローテーブル202が設定された後のパケット処理を説明したフローチャートである。また、図7から図13に試験パケットの流れを説明する図を示す。図7から図13は、機能接続構成301において監視区間である転送装置200−1から転送装置200−3に向けて試験パケットを送信する場合を説明した図である。
Next, the operation of the network verification system in FIG. 1 will be described. FIG. 6 is a flowchart for explaining the packet processing after the flow table 202 of the transfer apparatus is set. 7 to 13 are diagrams for explaining the flow of test packets. 7 to 13 are diagrams illustrating a case where a test packet is transmitted from the transfer device 200-1 to the transfer device 200-3 that is a monitoring section in the
まず始めに、転送装置200に転送ルールを設定する前に、フロー検査装置100のフローテーブル変換部2は、転送装置200のフローテーブル202に設定予定の転送ルールを試験パケット判定部203、フロー情報格納処理部204、及び転送先判定部205で構成される形に変換し、制御装置1を介して各転送装置に設定しておく。
First, before setting a transfer rule in the
次に、ネットワーク管理者からの要求を契機に、フロー情報管理部103が持つ管理情報を元に試験パケット生成部102で試験パケットが生成され、制御装置1から最初の宛先である転送装置200に送信される(図7)。この時、試験パケットのヘッダ部分には、試験したい転送ルール群にマッチするヘッダ情報が格納される。更に、試験パケットは全てのSDNノードのフローテーブル202内でマッチ条件に用いられていないプロトコルを利用してカプセル化される。これは、試験パケットとユーザパケットを区別して認識しつつ、同じ転送ルールにマッチさせるためである。
Next, in response to a request from the network administrator, a test packet is generated by the test
転送装置200で受信された試験パケットは、まず、試験パケット判定部203で処理が行われる(図8)。試験パケット判定部203では、受信したパケットが指定したプロトコルでカプセル化されているかどうかを判断し、カプセル化されていれば試験パケットと見なす。試験パケットの場合は、カプセル化を解除し、転送装置200内で各パケットの処理情報を格納可能なメタデータ内に設けた試験パケット判定フラグを1に設定する。ここで、メタデータは転送装置200の内部でのみ利用可能であり、その値はパケットに直接格納する事はできない。
The test packet received by the
次に、試験パケットはフロー情報格納処理部204で処理される。フロー情報格納処理部204には転送ルールが格納されており、試験パケットはユーザパケットと同様に転送ルールに沿って処理される。フロー情報格納処理部204では、試験パケットがマッチした転送ルールのIDを取得するために、事前に各転送ルールのアクションフィールドに変更を加え、メタデータに転送ルールIDを書き込むアクションを追加しておく。このアクションはフローテーブル変換部2からの指示で追加される。転送ルールが複数テーブルに及ぶ場合は、メタデータを分割しマスク処理する事により全てのテーブルでマッチした転送ルールの情報を格納する。図15は、転送用ルールがマルチテーブルでありメタデータをテーブルの合計数に区切って、各区画をテーブル毎に割り当てた例を説明する図である。
Next, the test packet is processed by the flow information
最後に、試験パケットは転送先判定部205で処理される。転送先判定部205はメタデータ内の試験パケット判定フラグを参照し、値が1であるかどうかを確認する。試験パケット判定フラグが1の場合は試験パケットであるとして、転送先判定部205はマッチした転送ルールのIDを格納したメタデータと処理された試験パケットをフロー検査装置100へ送信する。さらに、転送先判定部205は再び試験パケットをカプセル化して、アクション(転送または破棄)を実行する。試験パケット判定フラグが0の場合は、ユーザパケットであるとして、転送先判定部205は何も処理せずアクション(転送又は廃棄)を実行する。
Finally, the test packet is processed by the transfer
試験パケットとメタデータを取得した制御装置1は試験結果受信部104にこれらを送信する。試験結果受信部104はさらに試験結果判定部101に受信した試験結果を送信し、受信した試験結果のペイロードに付加されている試験パケット識別情報から試験パケットと試験結果の対応付けを行い、メタデータ内の転送ルールIDから転送ルールを導き出す。そして、試験結果受信部104で試験結果を受け取った後, 試験結果判定部101で監視区間の正常性を判断する。例えば、試験結果判定部101は、試験パケットの識別情報に基づいてフロー情報管理部103から当該試験パケットのマッチ条件に対する転送ルールのIDを検出し、該転送ルールと試験パケットとともに受信した転送ルールのIDとを比較する。そして、両者が同じIDであれば監視区間は正常であると判断し、互いに異なるIDであれば監視区間の異常(設定異常や障害発生等)と判断する。
The
図16に記載した転送ルールに基づいて本ネットワーク検証システムの動作を具体的に説明する。
(1)フロー検査装置100から「mplsラベルが100番で、かつmacアドレス01:23:45:67:89:AB」という試験パケットを送信する。
(2)前述のように、転送装置200には、試験パケット判定部203、フロー情報格納処理部204、及び転送先判定部205として「macアドレス01:23:45:67:89:ABからのパケットはメタデータに転送ルールID(0x000001)を記録し、“2”へ出力するアクションをスタックに保存(write_actions output:2)し、table_id=2へ遷移(goto_table:2)」という転送ルールがあらかじめ設定されている。このため、試験パケット判定部203(table_id=0)で試験パケットと判定されたパケットは、table_id=1でメタデータに転送ルールID(0x000001)を記載し、table_id=2で試験パケットをフロー検査装置へ返送(output:3)し、スタックされたアクション「“2”へ転送(output:2)」を実行する。
(3)フロー検査装置100では返送されてきた試験パケットに付属する転送ルールIDに基づいてフロー情報管理部103が保管する転送ルールを検出し、投入した試験パケットのペイロード部分に事前に格納しておいた試験パケット識別情報に基づいて送信した試験パケット情報を取得し、試験パケットがマッチすべき転送ルール群(フロー情報管理部103で保持)と、実際にマッチした転送ルール群が同一であるかを比較する。
The operation of the network verification system will be specifically described based on the transfer rule described in FIG.
(1) A test packet “mpls label is 100 and mac address 01: 23: 45: 67: 89: AB” is transmitted from the
(2) As described above, the
(3) The
(実施形態2)
本実施形態のネットワーク検証システムは図2の機能接続構成302である。
機能接続構成302は、図1の機能接続構成301と異なり、フローテーブル変換部2、及び制御装置1がフロー検査装置100の外部に配置される。
(Embodiment 2)
The network verification system of this embodiment is the
The
制御装置1は、転送装置200のフローテーブル202への転送ルールの設定を行う。
The
フローテーブル変換部2は、フローテーブル202に設定予定の転送ルールを試験パケット判定部203、フロー情報格納処理部204、転送先判定部205の3つの要素で構成されるように変換し、制御装置1へ送信する。
The flow
フロー検査装置100は、試験結果判定部101、試験パケット生成部102、フロー情報管理部103、試験結果受信部104、及び試験パケット送信部105を備える。
The
試験結果判定部101は、受信した試験結果のペイロードに付加されている試験パケット識別情報から、試験パケットと試験結果の対応付けを行う。試験結果判定部101は、フロー情報管理部103に保存されている転送ルール群から試験結果に記された転送ルールIDに一致する転送ルールを呼び出す。
The test
試験パケット生成部102は、フロー情報管理部103から得た検査対象転送装置200のフローテーブル202を元に試験したい転送ルールにマッチするヘッダ情報を持つ試験パケットを生成する。転送装置200で試験パケットをユーザパケットと区別して処理するために、試験パケット生成部102では、試験パケットは全ての転送装置200内でマッチ条件に用いられていないプロトコルを用いてカプセル化し、試験パケットを一意に識別するための識別情報を付加する。
The test
フロー情報管理部103は、各転送装置200に設定されている転送ルールと、転送ルールIDの対応付けと、試験パケットに付加する試験パケット識別子を保存する。
The flow
試験パケット送信部105は、試験パケット生成部102で生成された試験パケットを試験対象の転送装置200へ送信する。
The test
試験結果受信部104は、試験結果(転送装置200内でマッチした転送ルールのIDを含む試験パケット)を試験対象の転送装置200から受信する。
The test
転送装置200(SDNノード)は、実施形態1で説明した転送装置200と同じである。
The transfer device 200 (SDN node) is the same as the
次に、図2のネットワーク検証システムの動作を説明する。転送装置のフローテーブル202が設定された後のパケット処理は、実施形態1で説明した図6のフローチャートと同じである。また、試験パケットの流れも実施形態1で説明した図7から図13の説明とほぼ同じである。 Next, the operation of the network verification system in FIG. 2 will be described. Packet processing after the flow table 202 of the transfer apparatus is set is the same as the flowchart of FIG. 6 described in the first embodiment. Also, the flow of the test packet is almost the same as the description of FIGS. 7 to 13 described in the first embodiment.
まず始めに、転送装置200に転送ルールを設定する前に、フローテーブル変換部2は、転送装置200のフローテーブル202に設定予定の転送ルールを試験パケット判定部203、フロー情報格納処理部204、転送先判定部205により構成される形に変換し、制御装置1を介して各転送装置200に設定しておく。
First, before setting transfer rules in the
次に、ネットワーク管理者からの要求を契機に、フロー情報管理部103における管理情報を元に試験パケット生成部102で試験パケットが生成され、試験パケット送信部105から最初の宛先である転送装置200に送信される(図7参照)。この時、試験パケットのヘッダ部分には、試験したい転送ルール群にマッチするヘッダ情報が格納される。更に、試験パケットは全ての転送装置200のフローテーブル202内でマッチ条件に用いられていないプロトコルを利用してカプセル化される。これは、試験パケットとユーザパケットを区別して認識しつつ、同じ転送ルールにマッチさせるためである。
Next, in response to a request from the network administrator, a test packet is generated by the test
転送装置200で受信された試験パケットは、まず、試験パケット判定部203で処理が行われる(図8参照。)。試験パケット判定部203では、受信したパケットが指定したプロトコルでカプセル化されているかどうかを判断し、カプセル化されていれば試験パケットと見なす。試験パケットの場合は、カプセル化を解除し、転送装置200内で各パケットの処理情報を格納可能なメタデータ内に設けた試験パケット判定フラグを1に設定する。
The test packet received by the
次に、試験パケットはフロー情報格納処理部204で処理される。フロー情報格納処理部204には転送ルールが格納されており、試験パケットはユーザパケットと同様に転送ルールに沿って処理される。フロー情報格納処理部204では、試験パケットがマッチした転送ルールのIDを取得するために、事前に各転送ルールのアクションフィールドに変更を加え、メタデータに転送ルールIDを書き込むアクションを追加しておく。このアクションはフローテーブル変換部2からの指示で追加される。転送ルールが複数テーブルに及ぶ場合は、メタデータを分割しマスク処理する事により、全てのテーブルでマッチした転送ルールの情報を格納する。
Next, the test packet is processed by the flow information
最後に、試験パケットは転送先判定部205で処理される。転送先判定部205はメタデータ内の試験パケット判定フラグを参照し、値が1であるかどうかを確認する。試験パケット判定フラグが1の場合は試験パケットであるとして、転送先判定部205はメタデータに格納されたマッチした転送ルールのIDを試験パケットの空きヘッダフィールドへ格納し、フロー検査装置100へ向けて送信する。さらに、転送先判定部205は再び試験パケットをカプセル化し、アクション(転送または破棄)を実行する。試験パケット判定フラグが0の場合はユーザパケットであるとして、転送先判定部205は何も処理せずアクション(転送又は廃棄)を実行する。
Finally, the test packet is processed by the transfer
試験結果は試験結果受信部104で取得され、試験結果判定部101に送信される。試験結果判定部101では、受信した試験結果のペイロードに付加されている試験パケット識別情報から試験パケットと試験結果の対応付けを行い、メタデータ内の転送ルールIDから転送ルールを導き出す。そして、試験結果受信部104は実施形態1で説明したような手法例で監視区間の正常性を判断する。
The test result is acquired by the test
(実施形態3)
本実施形態のネットワーク検証システムは図3の機能接続構成303である。
機能接続構成303は、図1の機能接続構成301と異なり、フローテーブル変換部2、及び制御装置1がフロー検査装置100の外部に配置される。
(Embodiment 3)
The network verification system of this embodiment is the functional connection configuration 303 of FIG.
Unlike the
制御装置1は、転送装置200のフローテーブル202への転送ルールの設定や、転送装置200との制御情報のやり取りを行う。
The
フローテーブル変換部2は、制御装置1から転送装置200内のフローテーブルに設定予定の転送ルールを受け取り、転送ルールが試験パケット判定部203、フロー情報格納処理部204、転送先判定部205の3つの要素で構成されるよう変換を行い、転送装置200へ送信する。
The flow
フロー検査装置100の構成は図2で説明した機能接続構成302と同じである。
The configuration of the
転送装置200(SDNノード)は、実施形態1で説明した転送装置200と同じである。
The transfer device 200 (SDN node) is the same as the
次に、図3のネットワーク検証システムの動作を説明する。転送装置のフローテーブル202が設定された後のパケット処理は、実施形態1で説明した図6のフローチャートと同じである。また、試験パケットの流れも実施形態1で説明した図7から図13の説明とほぼ同じである。 Next, the operation of the network verification system in FIG. 3 will be described. Packet processing after the flow table 202 of the transfer apparatus is set is the same as the flowchart of FIG. 6 described in the first embodiment. Also, the flow of the test packet is almost the same as the description of FIGS. 7 to 13 described in the first embodiment.
転送装置200に転送ルールを設定する際に、制御装置1から送信されるフローテーブルの設定情報をフローテーブル変換部2が取得する。フローテーブル変換部2はフローテーブル202に設定予定の転送ルールを試験パケット判定部203、フロー情報格納部204、及び転送先判定部205により構成される形に変換した後、各転送装置200に送信する。
When setting transfer rules in the
フロー検査装置100での試験パケット生成、転送装置での処理、及び試験結果の判断については、図2の機能接続構成202での説明と同じである。
The test packet generation in the
(実施形態4)
本実施形態のネットワーク検証システムは図4の機能接続構成304である。
機能接続構成304は、図2の機能接続構成302と異なり、試験パケット生成部102と試験パケット送信部105がフロー検査装置100の外部に配置される。
(Embodiment 4)
The network verification system of this embodiment is the
The
制御装置1及びフローテーブル変換部2は、図2の機能接続構成302の説明と同じである。
The
フロー検査装置100は、試験結果判定部101、フロー情報管理部103、及び試験結果受信部104を有する。
The
試験結果判定部101は、受信した試験結果のペイロードに付加されている試験パケット識別情報から、試験パケットと試験結果の対応付けを行う。試験結果判定部101は、フロー情報管理部103に保存されている転送ルール群から試験結果に記された転送ルールのIDに一致する転送ルールを呼び出す。
The test
フロー情報管理部103は、各転送装置200に設定されている転送ルールと、転送ルールIDの対応付けと、試験パケットに付加する試験パケット識別子を保存する。
The flow
試験結果受信部104は、試験結果(転送装置200内でマッチした転送ルールのID)を試験対象の転送装置200から受信する。
The test
試験パケット生成装置250は、試験パケット生成部102及び試験パケット送信部105を有する。
The test
試験パケット生成部102は、フロー情報管理部103から得た検査対象転送装置200のフローテーブル202を元に試験したい転送ルールにマッチするヘッダ情報を持つ試験パケットを生成する。転送装置200で試験パケットをユーザパケットと区別して処理するために、試験パケット生成部102は、試験パケットは全ての転送装置200内でマッチ条件に用いられていないプロトコルを用いてカプセル化し、試験パケットを一意に識別するための識別情報を付加する。
The test
試験パケット送信部105は、試験パケット生成部102で生成された試験パケットを試験対象の転送装置200へ送信する。
The test
転送装置200(SDNノード)は、実施形態1で説明した転送装置200と同じである。
The transfer device 200 (SDN node) is the same as the
次に、図4のネットワーク検証システムの動作を説明する。転送装置200のフローテーブル202が設定された後のパケット処理は、実施形態1で説明した図6のフローチャートと同じである。また、試験パケットの流れも実施形態1で説明した図7から図13の説明とほぼ同じである。
Next, the operation of the network verification system in FIG. 4 will be described. The packet processing after the flow table 202 of the
制御装置1及びフローテーブル変換部2による転送ルールの変換は図2の機能接続構成302での説明と同じである。
The transfer rule conversion by the
次に、ネットワーク管理者からの要求を契機に、フロー情報管理部103から取得した管理情報を元に試験パケット生成装置250の試験パケット生成部102で試験パケットが生成され、試験パケット送信部105から最初の宛先である転送装置200に送信される(図7参照)。この時、試験パケットのヘッダ部分には、試験したい転送ルール群にマッチするヘッダ情報が格納される。更に、試験パケットは全てのSDNノードのフローテーブル202内でマッチ条件に用いられていないプロトコルを利用してカプセル化される。これは、試験パケットとユーザパケットを区別して認識しつつ、同じ転送ルールにマッチさせるためである。
Next, in response to a request from the network administrator, a test packet is generated by the test
転送装置での処理、及び試験結果の判断については、図2の機能接続構成302での説明と同じである。
The processing in the transfer device and the determination of the test result are the same as described in the
(実施形態5)
本実施形態のネットワーク検証システムは図5の機能接続構成305である。
機能接続構成305は、図4の機能接続構成304と異なり、フローテーブル変換部2と制御装置1の接続が逆に配置される。
(Embodiment 5)
The network verification system of this embodiment is the function connection configuration 305 of FIG.
The function connection configuration 305 is different from the
制御装置1及びフローテーブル変換部2は、図3の機能接続構成303の説明と同じである。また、フロー検査装置100及び試験パケット生成装置250は、図4の機能接続構成304の説明と同じである。
The
転送装置200(SDNノード)は、実施形態1で説明した転送装置200と同じである。
The transfer device 200 (SDN node) is the same as the
次に、図5のネットワーク検証システムの動作を説明する。転送装置200のフローテーブル202が設定された後のパケット処理は、実施形態1で説明した図6のフローチャートと同じである。また、試験パケットの流れも実施形態1で説明した図7から図13の説明とほぼ同じである。
Next, the operation of the network verification system in FIG. 5 will be described. The packet processing after the flow table 202 of the
転送装置200に転送ルールを設定する手法及び転送ルールを変換する手法は図3の機能接続構成303と同じである。
A method for setting a transfer rule in the
(他の実施形態)
図1のフロー検査装置100、図2〜図3のフロー検査装置100、制御装置1、及びフローテーブル変換部2、図4〜図5のフロー検査装置100、制御装置1、フローテーブル変換部2、及び試験パケット生成装置250は、コンピュータとプログラムによっても実現でき、プログラムを記録媒体に記録することも、ネットワークを通して提供することも可能である。
(Other embodiments)
1, the
(発明によって生じる効果)
本発明では、各SDNノード内で試験パケットがマッチした転送ルールを、カウンタ値を利用せずに取得するための手法を提案した。これは、既存手法では実現されていない機能である。本発明により、ネットワーク管理者はユーザパケットとは区別して、試験パケットの流れを詳細に把握する事ができるようになるため、従来に比べて仮想ネットワーク内の正常性をより細かく検証する事が可能となる。更に、障害が発生した際には、本発明を用いて各SDNノードにおける試験パケットの処理を順に追う事により、障害発生箇所の特定を従来よりも迅速に行う事が可能となる。
(Effects of the invention)
The present invention has proposed a method for acquiring a transfer rule that matches a test packet in each SDN node without using a counter value. This is a function not realized by the existing method. The present invention enables the network administrator to grasp the flow of the test packet in detail separately from the user packet, so that the normality in the virtual network can be verified more finely than before. It becomes. Furthermore, when a failure occurs, the location of the failure can be identified more quickly than in the past by sequentially processing the test packet in each SDN node using the present invention.
(発明のポイント)
転送装置に転送ルールが設定される前に、各転送ルールが試験パケット判定部、フロー情報格納処理部、転送先判定部の3つの要素から構成されるよう、変更を行う(図16)。
(Point of invention)
Before the transfer rule is set in the transfer device, each transfer rule is changed so as to be composed of three elements: a test packet determination unit, a flow information storage processing unit, and a transfer destination determination unit (FIG. 16).
試験パケットをユーザパケットと区別して識別するために、試験パケットは転送用ルールのマッチ条件に用いられていないプロトコルでカプセル化する。 In order to distinguish the test packet from the user packet, the test packet is encapsulated with a protocol that is not used in the matching condition of the transfer rule.
転送ルールを一意に識別するために、新たに転送ルールIDを定義する。 In order to uniquely identify the transfer rule, a new transfer rule ID is defined.
試験パケットがマッチした転送ルールの情報(転送ルールID)を得るために、転送用フローエントリのアクションフィールドに転送ルールIDをメタデータに格納するアクションを追加する。 In order to obtain transfer rule information (transfer rule ID) that matches the test packet, an action for storing the transfer rule ID in the metadata is added to the action field of the transfer flow entry.
SDNノード内部で試験パケットを識別し、ユーザパケットとは異なる処理を行うために、転送用ルールが格納されたテーブルの前後に試験パケット制御用テーブルを1つずつ設ける(マルチテーブルの仕組みを活用する)。 In order to identify the test packet inside the SDN node and perform processing different from that of the user packet, one test packet control table is provided before and after the table storing the transfer rules (using a multi-table mechanism). ).
転送用ルール群の前段に設置したテーブル(試験パケット判定部)では、試験パケットのカプセル化を解除し、SDNノード内部で利用可能なメタデータの特定ビット(試験パケット判定フラグ)に試験パケット処理中である事を示すために1をセットする(図14)。
In the table (test packet determination unit) installed in the preceding stage of the transfer rule group, the encapsulation of the test packet is released, and the test packet is being processed in the specific bit (test packet determination flag) of the metadata that can be used inside the
転送用ルールがマルチテーブルの場合は、メタデータをテーブルの合計数に区切って、各区画をテーブル毎に割り当てる(図15)。 When the transfer rule is a multi-table, the metadata is divided into the total number of tables, and each partition is assigned to each table (FIG. 15).
転送用ルール群の後段に設置したテーブル(転送先判定部)では、メタデータ内の試験パケット判定フラグを参照する事により処理中のパケットが試験パケットであるかどうかを識別する。試験パケットであれば再度カプセル化してアクションを実行し、更に、メタデータ内に保存してある転送ルールIDをフロー検査装置へ送信する。試験パケットでなければ、ユーザパケットと見なしてアクションを実行し、転送(または破棄)する。 A table (transfer destination determination unit) installed in the latter stage of the transfer rule group identifies whether the packet being processed is a test packet by referring to the test packet determination flag in the metadata. If it is a test packet, it is encapsulated again to execute the action, and the transfer rule ID stored in the metadata is transmitted to the flow inspection apparatus. If it is not a test packet, it is regarded as a user packet, an action is executed, and it is transferred (or discarded).
転送用ルール群に記述されているアクションのうち、パケットの転送(フラッディング等も含む)や破棄に関するものは、後段に設けた転送先判定部での判定処理の後に必ず実行される。 Among the actions described in the transfer rule group, those related to packet transfer (including flooding) and discarding are always executed after the determination process in the transfer destination determination unit provided in the subsequent stage.
1:制御装置
2:フローテーブル変換部
100:フロー検査装置
101:試験結果判定部
102:試験パケット生成部
103:フロー情報管理部
104:試験結果受信部
105:試験パケット送信部
200:転送装置
201:受信部
202:フローテーブル
203:試験パケット判定部
204:フロー情報格納処理部
205:転送先判定部
206:送信部
250:試験パケット生成装置
301〜305:機能接続構成
1: Control device 2: Flow table conversion unit 100: Flow inspection device 101: Test result determination unit 102: Test packet generation unit 103: Flow information management unit 104: Test result reception unit 105: Test packet transmission unit 200: Transfer device 201 : Reception unit 202: flow table 203: test packet determination unit 204: flow information storage processing unit 205: transfer destination determination unit 206: transmission unit 250: test
Claims (7)
前記転送装置は、
パケットのマッチ条件、前記マッチ条件に合致した場合に実施するアクションを記した転送ルール、及び前記転送ルールの情報である転送ルールIDが設定されたフローテーブルを有し、
前記フロー検査装置は、
前記転送装置の前記フローテーブルに設定されている前記転送ルール及び前記転送ルールIDを保管するフロー情報管理部と、
所望の前記マッチ条件に合致するヘッダー情報を持つ試験パケットを生成し、前記転送装置へ送信する試験パケット生成部と、
前記転送装置からの試験結果を受信する試験結果受信部と、
前記試験パケットを送信する前に、前記転送装置の前記フローテーブルに設定されている前記転送ルールを、
受信したパケットが前記試験パケットであるか否かを判断する試験パケット判定機能
、
前記試験パケットのマッチ条件に
合致する前記転送ルールの前記転送ルールIDをメタデータに書き込むフロー情報格納
処理機能、及び
受信したパケットが前記試験パケットである場合に前記メタデータに書き込まれてい
る前記転送ルールIDを前記試験パケットとともに前記試験結果として前記試験結果受
信部へ送信し、さらに前記転送ルールに他の転送装置への転送又は廃棄が設定されてい
る場合は前記試験パケットを転送又は廃棄する転送先判定機能、
を有するルールへ変換するフローテーブル変換部と、
前記試験結果受信部が受信した前記試験結果の前記試験パケットの識別情報に基づいて前記フロー情報管理部から前記所望のマッチ条件に対する前記転送ルールを検出し、該転送ルールと前記試験結果受信部が受信した前記試験結果の前記転送ルールとを比較して前記仮想ネットワークの正常性を検証する試験結果判定部と、
を有することを特徴とするネットワーク検証システム。 A network verification system comprising at least one transfer device constituting a virtual network and a flow inspection device for verifying the normality of the virtual network,
The transfer device is
A packet matching condition, a forwarding rule that describes an action to be performed when the matching condition is met, and a flow table in which a forwarding rule ID that is information of the forwarding rule is set,
The flow inspection apparatus includes:
A flow information management unit for storing the transfer rule and the transfer rule ID set in the flow table of the transfer device;
Generating a test packet having header information that matches the desired match condition, and transmitting the test packet to the transfer device; and
A test result receiving unit for receiving a test result from the transfer device;
Before transmitting the test packet, the transfer rule set in the flow table of the transfer device,
A test packet determination function for determining whether or not the received packet is the test packet;
A flow information storage processing function that writes the transfer rule ID of the transfer rule that matches the test packet match condition to metadata, and the transfer that is written to the metadata when the received packet is the test packet The rule ID is transmitted to the test result receiving unit as the test result together with the test packet, and if the transfer rule is set to transfer or discard to another transfer device, the test packet is transferred or discarded. Transfer destination judgment function,
A flow table conversion unit for converting to a rule having
Based on the identification information of the test packet of the test result received by the test result receiving unit, the transfer rule for the desired match condition is detected from the flow information management unit, and the transfer rule and the test result receiving unit are A test result determination unit that verifies the normality of the virtual network by comparing the transfer rule of the received test result;
A network verification system comprising:
ユーザパケットに用いられる前記転送ルールのマッチ条件と異なるプロトコルで前記試験パケットをカプセル化することを特徴とする請求項1に記載のネットワーク検証システム。 The test packet generator is
The network verification system according to claim 1, wherein the test packet is encapsulated by a protocol different from a match condition of the transfer rule used for a user packet.
受信したパケットが前記試験パケットである場合に試験パケット判定フラグとして前記メタデータ内の特定の1ビットに記録し、
前記転送先判定機能は、
前記メタデータの前記試験パケット判定フラグで処理するパケットが試験パケットであることを認識する
ことを特徴とする請求項1又は2に記載のネットワーク検証システム。 The test packet determination function is
When the received packet is the test packet, it is recorded in a specific 1 bit in the metadata as a test packet determination flag,
The forwarding destination determination function is
The network verification system according to claim 1 or 2, wherein a packet to be processed by the test packet determination flag of the metadata is recognized as a test packet.
前記転送装置のフローテーブルに、パケットのマッチ条件、前記マッチ条件に合致した場合に実施するアクションを記した転送ルール、及び前記転送ルールの情報である転送ルールIDを設定するフローテーブル設定手順と、
前記転送装置の前記フローテーブルに設定されている前記転送ルール及び前記転送ルールIDをフロー情報管理部に保管するフロー情報管理手順と、
所望の前記マッチ条件に合致するヘッダー情報を持つ試験パケットを生成し、前記転送装置へ送信する試験パケット生成手順と、
前記試験パケットを送信する前に、前記転送装置の前記フローテーブルに設定されている前記転送ルールを、
受信したパケットが前記試験パケットであるか否かを判断する試験パケット判定機能
、
前記試験パケットのマッチ条件に合致する前記転送ルールの前記転送ルールIDをメ
タデータに書き込むフロー情報格納処理機能、及び
受信したパケットが前記試験パケットである場合に前記メタデータに書き込まれてい
る前記転送ルールIDを前記試験パケットとともに試験結果として送信し、さらに前記
転送ルールに他の転送装置への転送又は廃棄が設定されている場合は前記試験パケット
を転送又は廃棄する転送先判定機能、
を有するルールへ変換するフローテーブル変換手順と、
前記転送装置からの前記試験結果を受信し、前記試験結果の前記試験パケットの識別情報に基づいて前記フロー情報管理部から前記所望のマッチ条件に対する前記転送ルールを検出し、該転送ルールと受信した前記試験結果の前記転送ルールとを比較して前記仮想ネットワークの正常性を検証する試験結果判定手順と、
を行うことを特徴とするネットワーク検証方法。 A network verification method for verifying the normality of a virtual network composed of at least one transfer device,
A flow table setting procedure for setting a packet match condition, a transfer rule that describes an action to be performed when the match condition is met, and a transfer rule ID that is information of the transfer rule in the flow table of the transfer device;
A flow information management procedure for storing the transfer rule and the transfer rule ID set in the flow table of the transfer device in a flow information management unit;
A test packet generating procedure for generating a test packet having header information matching the desired match condition and transmitting the test packet to the transfer device;
Before transmitting the test packet, the transfer rule set in the flow table of the transfer device,
A test packet determination function for determining whether or not the received packet is the test packet;
A flow information storage processing function that writes the transfer rule ID of the transfer rule that matches the match condition of the test packet to metadata, and the transfer that is written to the metadata when the received packet is the test packet A transfer destination determination function that transmits a rule ID together with the test packet as a test result, and further transfers or discards the test packet when the transfer rule is set to transfer or discard to another transfer device;
A flow table conversion procedure for converting to a rule having
Receiving the test result from the transfer device, detecting the transfer rule for the desired match condition from the flow information management unit based on the identification information of the test packet of the test result, and receiving the transfer rule A test result determination procedure for verifying the normality of the virtual network by comparing the transfer rule of the test result;
The network verification method characterized by performing.
前記転送装置の前記フローテーブルに設定されている前記転送ルール及び前記転送ルールIDを保管するフロー情報管理部と、
所望の前記マッチ条件に合致するヘッダー情報を持つ試験パケットを生成し、前記転送装置へ送信する試験パケット生成部と、
前記転送装置からの試験結果を受信する試験結果受信部と、
前記試験パケットを送信する前に、前記転送装置の前記フローテーブルに設定されている前記転送ルールを、
受信したパケットが前記試験パケットであるか否かを判断する試験パケット判定機能
、
前記試験パケットのマッチ条件に合致する前記転送ルールの前記転送ルールIDをメ
タデータに書き込むフロー情報格納処理機能、及び
受信したパケットが前記試験パケットである場合に前記メタデータに書き込まれてい
る前記転送ルールIDを前記試験パケットとともに前記試験結果として前記試験結果受
信部へ送信し、さらに前記転送ルールに他の転送装置への転送又は廃棄が設定されてい
る場合は前記試験パケットを転送又は廃棄する転送先判定機能、
を有するルールへ変換するフローテーブル変換部と、
前記試験結果受信部が受信した前記試験結果の前記試験パケットの識別情報に基づいて前記フロー情報管理部から前記所望のマッチ条件に対する前記転送ルールを検出し、該転送ルールと前記試験結果受信部が受信した前記試験結果の前記転送ルールとを比較して前記仮想ネットワークの正常性を検証する試験結果判定部と、
を有することを特徴とするフロー検査装置。 A virtual network composed of at least one transfer device having a packet match condition, a transfer rule describing an action that matches the match condition, and a flow table in which a transfer rule ID that is information of the transfer rule is set A flow inspection device for verifying the normality of
A flow information management unit for storing the transfer rule and the transfer rule ID set in the flow table of the transfer device;
Generating a test packet having header information that matches the desired match condition, and transmitting the test packet to the transfer device; and
A test result receiving unit for receiving a test result from the transfer device;
Before transmitting the test packet, the transfer rule set in the flow table of the transfer device,
A test packet determination function for determining whether or not the received packet is the test packet;
A flow information storage processing function that writes the transfer rule ID of the transfer rule that matches the match condition of the test packet to metadata, and the transfer that is written to the metadata when the received packet is the test packet The rule ID is transmitted to the test result receiving unit as the test result together with the test packet, and if the transfer rule is set to transfer or discard to another transfer device, the test packet is transferred or discarded. Transfer destination judgment function,
A flow table conversion unit for converting to a rule having
Based on the identification information of the test packet of the test result received by the test result receiving unit, the transfer rule for the desired match condition is detected from the flow information management unit, and the transfer rule and the test result receiving unit are A test result determination unit that verifies the normality of the virtual network by comparing the transfer rule of the received test result;
A flow inspection apparatus comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015028331A JP6247239B2 (en) | 2015-02-17 | 2015-02-17 | Network verification system, network verification method, flow inspection apparatus, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015028331A JP6247239B2 (en) | 2015-02-17 | 2015-02-17 | Network verification system, network verification method, flow inspection apparatus, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016152470A JP2016152470A (en) | 2016-08-22 |
JP6247239B2 true JP6247239B2 (en) | 2017-12-13 |
Family
ID=56696974
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015028331A Active JP6247239B2 (en) | 2015-02-17 | 2015-02-17 | Network verification system, network verification method, flow inspection apparatus, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6247239B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019201342A (en) | 2018-05-17 | 2019-11-21 | 富士通株式会社 | Verification packet generation device, verification system, and verification packet generation program |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8964563B2 (en) * | 2011-07-08 | 2015-02-24 | Telefonaktiebolaget L M Ericsson (Publ) | Controller driven OAM for OpenFlow |
CA2897923A1 (en) * | 2013-01-21 | 2014-07-24 | Nec Corporation | Control information management apparatus, control information presentation method, and program |
JP6101573B2 (en) * | 2013-06-03 | 2017-03-22 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | Packet transfer apparatus, inspection method, and program |
-
2015
- 2015-02-17 JP JP2015028331A patent/JP6247239B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2016152470A (en) | 2016-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4089981B1 (en) | Bit-forwarding ingress router and operation, administration and maintenance detection method | |
US10484206B2 (en) | Path detection method in VxLAN, controller, and network device | |
EP3756309B1 (en) | Collecting network oam flow data using out-of-band messages | |
JP7035227B2 (en) | Data packet detection methods, devices, and systems | |
US7889748B1 (en) | Mapping a port on a packet switch appliance | |
US9491083B2 (en) | Systems and methods of test packet handling | |
WO2017206841A1 (en) | Method and device for determining quality of service of network apparatus | |
JP4769609B2 (en) | Switch device | |
US20110270957A1 (en) | Method and system for logging trace events of a network device | |
CN110601983A (en) | Method and system for forwarding routing without sensing source of protocol | |
US10623278B2 (en) | Reactive mechanism for in-situ operation, administration, and maintenance traffic | |
WO2012081549A1 (en) | Computer system, controller, controller manager, and communication path analysis method | |
WO2019037738A1 (en) | Method and apparatus for detecting network fault | |
CN107171883A (en) | Detect method, device and the equipment of forward table | |
US20140156867A1 (en) | Offload processing interface | |
JP6101573B2 (en) | Packet transfer apparatus, inspection method, and program | |
JP6247239B2 (en) | Network verification system, network verification method, flow inspection apparatus, and program | |
TWI538441B (en) | Process system for constructing network structure deployment diagram and the method thereof and computer program product storing network structure deployment analysis program are provided to analyze the network structure deployment of target network | |
WO2012077308A1 (en) | Communication path verification system, path verification device, communication path verification method, and path verification program | |
JP6467316B2 (en) | Flow inspection apparatus, transfer apparatus, and flow inspection method | |
US10333817B2 (en) | Non-transitory computer-readable storage medium, communication device, and determination method | |
JP5843397B2 (en) | Communication device | |
JP5402304B2 (en) | Diagnostic program, diagnostic device, and diagnostic method | |
US10904123B2 (en) | Trace routing in virtual networks | |
CN109218059A (en) | A kind of method, apparatus and system for realizing fault detection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161213 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20171027 |
|
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: 20171114 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171116 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6247239 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |