JP5573909B2 - COMMUNICATION SYSTEM, NODE, CONTROL DEVICE, COMMUNICATION METHOD, AND PROGRAM - Google Patents
COMMUNICATION SYSTEM, NODE, CONTROL DEVICE, COMMUNICATION METHOD, AND PROGRAM Download PDFInfo
- Publication number
- JP5573909B2 JP5573909B2 JP2012217523A JP2012217523A JP5573909B2 JP 5573909 B2 JP5573909 B2 JP 5573909B2 JP 2012217523 A JP2012217523 A JP 2012217523A JP 2012217523 A JP2012217523 A JP 2012217523A JP 5573909 B2 JP5573909 B2 JP 5573909B2
- Authority
- JP
- Japan
- Prior art keywords
- packet
- node
- nodes
- identification information
- transfer path
- 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
Description
本発明は、通信システム、ノード、制御装置、通信方法およびプログラムに関し、特に、ネットワークに配置されたノードによりパケットを転送して通信を実現する通信システム、ノード、制御装置、通信方法およびプログラムに関する。 The present invention relates to a communication system, a node, a control device, a communication method, and a program, and more particularly, to a communication system, a node, a control device, a communication method, and a program that realizes communication by transferring a packet by a node arranged in a network.
ネットワークに配置されたルータやスイッチ等のノードに、プログラムを実行させる技術としてアクティブネットワークが知られている(非特許文献1参照)。特許文献1には、事前のシグナリングにより、ネットワークのノードにアクティブコードを配置するシグナリング制御ユニットを備えるアクティブネットワークが開示されている。
An active network is known as a technique for causing a node such as a router or a switch arranged in a network to execute a program (see Non-Patent Document 1).
特許文献2には、異なるパケットリングを経由するパケットフローに対し、異なるパケットリングで一貫したサービスクラスを適用できるようにした光通信システムが開示されている。この光通信システムのノード装置は、他パケットリングから到着したパケットに付加されたリング間ヘッダ情報に含まれるリング間サービスクラスの情報を抽出し、この抽出されたリング間サービスクラスの情報に基づきパケットリング間で設定されるリング間サービスクラスとリング内サービスクラスとの対応関係を記録したテーブルを参照して到着したパケットに設定すべきリング内サービスクラスを決定し、この決定したリング内サービスクラスの情報を含むリング内ヘッダ情報を到着したパケットに付加する。
また、IP網等における経路制御を行う方式として、ソースルーティングという手法が知られている。非特許文献2に規定されているとおり、ソースルーティングでは、中継するルータのIPアドレスを指定することによって実現される。
A method called source routing is known as a method for performing path control in an IP network or the like. As specified in Non-Patent
非特許文献3に示すとおり、近年、オープンフロー(OpenFlow)という技術が提案されている。オープンフローは、通信をエンドツーエンドのフローとして捉え、フロー単位で経路制御、障害回復、負荷分散、最適化を行うものである。転送ノードとして機能するオープンフロースイッチは、オープンフローコントローラとの通信用のセキュアチャネルを備え、オープンフローコントローラから適宜追加または書き換え指示されるフローテーブルに従って動作する。フローテーブルには、フロー毎に、パケットヘッダと照合するルール(FlowKey)と、処理内容を定義したアクション(Action)と、フロー統計情報(Stats)との組が定義される(図6参照)。
As shown in
図29に、非特許文献4に定義されているアクション名とアクションの内容を例示する。OUTPUTは、指定ポート(インタフェース)に出力するアクションである。SET_VLAN_VIDからSET_TP_DSTは、パケットヘッダーのフィールドを修正するアクションである。
FIG. 29 illustrates action names and action contents defined in Non-Patent
例えば、オープンフロースイッチは、最初のパケット(first packet)を受信すると、フローテーブルから、受信パケットのヘッダ情報に適合するルール(FlowKey)を持つエントリを検索する。検索の結果、受信パケットに適合するエントリが見つかった場合、オープンフロースイッチは、受信パケットに対して、当該エントリのアクションフィールドに記述された処理内容を実施する。一方、前記検索の結果、受信パケットに適合するエントリが見つからなかった場合、オープンフロースイッチは、セキュアチャネルを介して、オープンフローコントローラに対して受信パケットを転送し、受信パケットの送信元・送信先に基づいたパケットの経路の決定を依頼し、これを実現するフローエントリを受け取ってフローテーブルを更新する。 For example, when the OpenFlow switch receives the first packet (first packet), the OpenFlow switch searches the flow table for an entry having a rule (FlowKey) that matches the header information of the received packet. When an entry that matches the received packet is found as a result of the search, the OpenFlow switch performs the processing content described in the action field of the entry on the received packet. On the other hand, if no entry matching the received packet is found as a result of the search, the OpenFlow switch forwards the received packet to the OpenFlow controller via the secure channel, and the source / destination of the received packet. To request the determination of the route of the packet based on the above, receive the flow entry that realizes this, and update the flow table.
上記特許文献1、2及び非特許文献1〜4の全開示内容はその引用をもって本書に繰込み記載する。
The entire disclosures of
以下に本発明による関連技術の分析を与える。 The following is an analysis of the related art according to the present invention.
非特許文献3のオープンフロー(OpenFlow)という技術によれば、各スイッチに、フローの特徴に応じた処理内容(アクション)を選択・実行させるためのフローテーブルを配置し、適宜書き換える必要がある。きめ細かな経路制御や品質確保などを実行する場合、このフローテーブルに上記マッチングルールの数に等しいエントリが必要となり、スイッチの負荷およびコントローラ側の管理負担が増大してしまうことが考えられる。 According to the technique called OpenFlow (Non-Patent Document 3), it is necessary to arrange a flow table for selecting and executing processing contents (actions) according to the flow characteristics in each switch, and to rewrite them appropriately. When fine path control or quality assurance is executed, an entry equal to the number of the matching rules is required in this flow table, which may increase the load on the switch and the management burden on the controller side.
非特許文献1や特許文献1のアクティブネット方式によれば、上記のようなテーブルを用いずに、所望のノードに特定の処理を実行させることができるが、非特許文献3のようなフロー制御を行うスイッチに適用した場合、各スイッチにプログラムライブラリを備えるか、パケットにプログラムそのものを含ませる必要がある。これでは、可能な限り転送ノードの制御機能を簡略化し、コントローラに集中させる非特許文献3の特長が失われかねない。
According to the active net method of Non-Patent
本発明は、上記した事情に鑑みてなされたものであって、その目的とするところは、ネットワークに配置されたノードの制御機能を簡略化するという要求を満たしつつ、各ノードが受信パケットに応じた処理を行わせる際に参照させるテーブルそのもの、あるいは、そのエントリ数を削減できる構成および方法を提供することにある。 The present invention has been made in view of the above-described circumstances, and the object of the present invention is to satisfy each request for a received packet while satisfying the request to simplify the control function of the nodes arranged in the network. It is an object of the present invention to provide a configuration and a method capable of reducing the number of entries or the table itself to be referred to when performing the processing.
本発明の第1の視点によれば、パケットの転送経路の少なくとも一部を構成する複数のノードを含み、前記複数のノードの少なくとも1つのノードは、前記複数のノードの各々が有するパケット処理リストから各ノードが実行するパケット処理を特定するための複数の識別情報が付与されたパケットを受信可能な第1の手段と、前記ノードが有する前記リストから、前記複数の識別情報のうち前記ノードに対応する識別情報に基づいて特定されたパケット処理を実行可能な第2の手段とを含む通信システムが提供される。 According to the first aspect of the present invention, the packet processing list includes a plurality of nodes constituting at least a part of a packet transfer path, and the at least one node of the plurality of nodes is a packet processing list possessed by each of the plurality of nodes. A first means capable of receiving packets to which a plurality of pieces of identification information for specifying packet processing to be executed by each node is received, and the node of the plurality of pieces of identification information from the list of the node. There is provided a communication system including second means capable of executing packet processing specified based on corresponding identification information .
本発明の第2の視点によれば、パケットの転送経路の少なくとも一部を構成する複数のノードの各々で実行されるパケット処理を決定可能な第1の手段と、前記複数のノードにおける少なくとも1つのノードに対して、前記複数のノードの各々が有するパケット処理リストから各ノードが実行するパケット処理を特定するため、前記各ノードに対応する複数の識別情報を、前記転送経路に転送するパケットに付与することを指示可能な第2の手段とを含む制御装置が提供される。 According to the second aspect of the present invention, the first means capable of determining packet processing executed in each of a plurality of nodes constituting at least a part of a packet transfer path, and at least one of the plurality of nodes. In order to identify packet processing to be executed by each node from the packet processing list of each of the plurality of nodes for one node, a plurality of identification information corresponding to each node is transferred to the packet transferred to the transfer path. And a second means capable of instructing to provide the control device .
本発明の第3の視点によれば、パケットを転送するノードであって、パケットの転送経路の少なくとも一部を構成する複数のノードの各々が有するパケット処理リストから前記複数のノードの各々が実行するパケット処理を特定するための複数の識別情報が付与されたパケットを受信可能な第1の手段と、前記パケット処理リストから、前記複数の識別情報のうち前記ノードに対応する識別情報に基づいて特定されたパケット処理を実行可能な第2の手段とを含むことを特徴とするノードが提供される。 According to the third aspect of the present invention, each of the plurality of nodes is a node that forwards the packet and that is executed by each of the plurality of nodes from a packet processing list that each of the plurality of nodes that constitute at least a part of the packet forwarding path A first means capable of receiving a packet provided with a plurality of identification information for specifying packet processing to be performed, and based on identification information corresponding to the node among the plurality of identification information from the packet processing list. And a second means capable of executing the specified packet processing . A node is provided.
本発明の第4の視点によれば、パケットの転送経路の少なくとも一部を構成する複数のノードの各々で実行されるパケット処理を決定し、前記複数のノードにおける少なくとも1つのノードに対して、前記複数のノードの各々が有するパケット処理リストから各ノードが実行するパケット処理を特定するため、前記各ノードに対応する複数の識別情報を、前記転送経路に転送するパケットに付与することを指示する通信方法が提供される。 According to the fourth aspect of the present invention, packet processing to be executed in each of a plurality of nodes constituting at least a part of a packet transfer path is determined, and for at least one node in the plurality of nodes, Instructing that a plurality of identification information corresponding to each node be added to a packet transferred to the transfer path in order to identify a packet process to be executed by each node from a packet processing list of each of the plurality of nodes. A communication method is provided.
本発明の第5の視点によれば、上記したノード、制御装置を構成するコンピュータに実行させるプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。 According to the fifth aspect of the present invention, there is provided a program to be executed by a computer constituting the above-described node and control device. This program can be recorded on a computer-readable storage medium. That is, the present invention can be embodied as a computer program product.
本発明によれば、ネットワークに配置されたノードの制御機能を簡略化するという要求を満たしつつ、各ノードに備えるテーブルそのもの、あるいは、そのエントリ数を削減した構成で種々の処理を行わせることが可能になる。その理由は、データ転送ネットワークの転送経路上の個々のノードが実行すべき処理を並べて構成された処理列を含むヘッダを入力パケットに付加し、前記データ転送ネットワークの転送経路上の個々のノードに、前記入力パケットに付加されたヘッダ内の処理列に従って自装置が実行すべき処理を実行させるように構成したことにある。 According to the present invention, various processes can be performed with a configuration in which the number of entries is reduced or the table itself provided in each node while satisfying the demand for simplifying the control function of the nodes arranged in the network. It becomes possible. The reason is that a header including a processing sequence configured by arranging the processes to be executed by the individual nodes on the transfer path of the data transfer network is added to the input packet, and is sent to the individual nodes on the transfer path of the data transfer network. In the configuration, the processing to be executed by the device itself is executed in accordance with the processing sequence in the header added to the input packet.
はじめに、本発明の概要について説明する。本発明の通信システムのノードは、受信パケットに付加されたアクションヘッダ内のアクション列(処理列)から、自装置が実行すべき処理を特定し、実行する機能を有している。 First, the outline of the present invention will be described. The node of the communication system of the present invention has a function of specifying and executing a process to be executed by the own apparatus from an action sequence (process sequence) in an action header added to the received packet.
ここで、前記アクションヘッダは、データ転送ネットワークの転送経路上の個々のノードが実行すべき処理を並べたものである。個々のアクションとしては、例えば、(1)ヘッダ内の宛先/送信元IPアドレス、宛先/送信元MACアドレス(ヘッダ)、VLAN Tag値を指定値に変更する、(2)パケットをドロップ(廃棄)する、(3)パケットを複数の指定ポート(インタフェース)から出力する(Output)、などを定義することができる(図29および非特許文献4の4頁−6頁「3.3・Actions」、「Table5」参照)。図1の例では、受信パケットは、ID=1のノードのポート#5、ID=2のノードのポート#2、ID=3のノードのポート#3の順に送信されることになる。
Here, the action header is a list of processes to be executed by individual nodes on the transfer path of the data transfer network. For example, (1) change the destination / source IP address, destination / source MAC address (header), and VLAN Tag value in the header to specified values, and (2) drop (discard) the packet. (3) Output packets from a plurality of designated ports (interfaces) (Output), and the like (see FIG. 29 and
このように、アクションヘッダを付加したパケットを出力させることで、次々に指定した経路上のノードに処理を行わせることが可能になる。従って、冒頭に述べたアクティブネットのように個々のノードにアクティブコードを送信等することは不要であり、また、経路上のノード内のフローテーブルへのエントリの追加処理等も不要となる。 In this way, by outputting the packet with the action header added, it becomes possible to cause the nodes on the designated path to perform processing one after another. Accordingly, it is not necessary to transmit an active code to each node as in the active net described at the beginning, and it is not necessary to add an entry to the flow table in the node on the route.
なお、上記アクションヘッダの付加は、最初にパケットを受信したノードに実行させればよい。アクションヘッダ内のアクション列(処理列)は、外部の制御サーバなどに問い合わせて取得することとしてもよいし、当該ノード内に予め記憶されているアクション列(処理列)を埋め込むものとしてもよい。また、アクションヘッダの削除は、当該経路の終端となるノードに行わせればよい。 The addition of the action header may be performed by the node that first received the packet. The action sequence (processing sequence) in the action header may be acquired by inquiring an external control server or the like, or an action sequence (processing sequence) stored in advance in the node may be embedded. Moreover, what is necessary is just to let the node used as the termination | terminus of the said path | route delete the action header.
[第1の実施形態]
続いて、本発明の第1の実施形態について図面を参照して詳細に説明する。図2は、本発明の第1の実施形態に係る通信システムを示す図である。図2を参照すると、3つのノード10と、制御サーバ20と、ノード10を経由して通信する通信ノード30が示されている。なお、図2の例では、3つのノード10と、制御サーバ20と、2つの通信ノード30を示しているが、それぞれの数は、あくまで例示であり、それぞれ任意の数とすることができる。
[First Embodiment]
Next, a first embodiment of the present invention will be described in detail with reference to the drawings. FIG. 2 is a diagram showing a communication system according to the first embodiment of the present invention. Referring to FIG. 2, three
図3は、ノード10の詳細構成を表した図である。図3を参照すると、ノード10は、制御サーバ30と通信するサーバ通信部11と、フローテーブル13を管理するフローテーブル管理部12と、転送処理部14とを備えて構成される。
FIG. 3 is a diagram showing a detailed configuration of the
さらに、転送処理部14は、ユーザトラフィックとして受信したパケットに付加されているアクションヘッダから、自装置が実行すべきアクションを取り出して、アクション実行部18に出力するアクション抽出部17と、受信パケットにアクションヘッダが付加されていなかった場合に、フローテーブル13を検索し、その結果をアクション列設定部16に出力するテーブル検索部15と、前記テーブル検索部15にて検索されたエントリの自ノード以外のノードで実行すべきアクション列をアクションヘッダとして受信パケットに付加するアクション列設定部16と、受信パケットに対し、アクション抽出部17から出力されたアクション(自装置が実行すべきアクション)を実行するアクション実行部18とを備えて構成される。また、アクション列設定部16は、テーブル検索部15によるフローテーブル13の検索の結果、該当するエントリが無かった場合に制御サーバ20に付加すべきアクション列を問い合わせる処理を行う。
Further, the
本発明のノード10は、オープンフロースイッチに、上記アクション抽出部17およびアクション列設定部16を追加した構成にて実現することも可能である。
The
図4は、制御サーバ20の詳細構成を表した図である。図4を参照すると、制御サーバ20は、フローエントリを格納したフローエントリデータベース(フローエントリDB)21と、ノード通信部25を介して収集されたノード10の接続関係に基づいてネットワークトポロジ情報を構築するトポロジ管理部22と、トポロジ管理部22にて構築されたネットワークトポロジ情報に基づいてパケットの転送経路および該転送経路上のノード10に実行させるアクション列を求める経路・アクション計算部23と、経路・アクション計算部23にて計算された結果をフローエントリとしてフローエントリDB21に登録し、ノード10からのフローエントリの追加または更新要求に応えるフローエントリ管理部24と、ノード10との通信を行うノード通信部25とを備えて構成される。なお、ノード10に対して追加または更新を指示したフローエントリを保持する必要が無い場合、フローエントリデータベース(フローエントリDB)21は省略することが可能である。また、フローエントリデータベース(フローエントリDB)21を別途外部サーバ等に設ける構成も採用可能である。
FIG. 4 is a diagram showing a detailed configuration of the
図5は、フローエントリDB21に格納されるフローエントリの例である。図5を参照すると、各エントリは、DPID(データパスID)と、FlowKey(フローキー;マッチングキー)と、Actions(アクション列)とから構成される。図5の例では、AというFlowKey(フローキー;マッチングキー)に適合するパケットに、「Output to Port #9 by DPID 1/Output to Port #6 by DPID 2/Output to Port #1 by DPID 3」というアクション列が付与される。
FIG. 5 is an example of a flow entry stored in the
図6は、FlowKey(マッチングキー)のフィールド構成を示す図である。例えば、宛先アドレス(IP DA)が特定のサーバであるパケットを受信したノード10にActionsフィールド(可変長)に定義したアクションを実行させることが可能になる。同様に例えば、特定のポート(In Port)から入力されたパケットについてActionsフィールド(可変長)に定義したアクションを実行させることが可能になる。
FIG. 6 is a diagram showing a field configuration of FlowKey (matching key). For example, it is possible to cause the
制御サーバ20は、オープンフローコントローラの上記フローエントリDB21の構成あるいはノード10に対して追加または変更を指示するフローエントリの内容を変更することにより実現することも可能である。
The
続いて、上記したノード10および制御サーバ30の動作について説明する。図7は、上記ノード10の動作を表したフローチャートである。図7を参照すると、ノード10は、通信ノード30や他のノード10からパケットを受信すると(ステップS001)、受信パケットのアクションヘッダから自装置が実行すべきアクションを抽出する(ステップS002)。
Next, operations of the
前記アクションの抽出の結果、アクションを抽出できた場合(ステップS003のNo)、ノード10は、自装置が実行すべきアクションを実行する(ステップS009)。
If the action can be extracted as a result of the extraction of the action (No in step S003), the
一方、前記アクションの抽出の結果、アクションを抽出できなかった場合(ステップS003のYes)、ノード10は、フローテーブル13に、受信したパケットに適合するフローエントリがあるか否かを検索する(ステップS004)。
On the other hand, when the action cannot be extracted as a result of the extraction of the action (Yes in step S003), the
前記フローテーブル13の検索の結果、受信したパケットに適合するフローエントリが発見された場合(ステップS005のYes)、ノード10は、自身が実行すべきアクションを抽出した上で(ステップS008)、見つかったフローエントリのアクション列をアクションヘッダとして、受信パケットヘッダに付加する(ステップS009)。例えば、受信したパケットがあるフローエントリDB21に登録済みのパケットの後続パケットであるような場合、上記のように前記フローテーブル13からの検索結果を用いて、自身が実行すべきアクションの抽出とアクションヘッダの作成・付加が行われる。
When a flow entry matching the received packet is found as a result of the search of the flow table 13 (Yes in step S005), the
一方、前記フローテーブル13の検索の結果、受信したパケットに適合するフローエントリが見つからなかった場合(ステップS005のNo)、ノード10は、受信パケットまたは受信パケットの一部を制御サーバ20に送信し、アクション列の作成を要求する(ステップS006)。
On the other hand, if no flow entry matching the received packet is found as a result of searching the flow table 13 (No in step S005), the
制御サーバ20からアクション列を受信すると、ノード10は、受信したフローエントリをフローテーブル13に登録する(ステップS007)。その後、ノード10は、制御サーバ20からパケット出力指示を受信する(ステップS011)。前記パケット出力指示がフローテーブルの検索指示を伴う場合(ステップS012のYes)、ノード10は、当該パケットに適合するフローエントリがあるか否かを再度検索し(ステップS004−2)、自身が実行すべきアクションの抽出(ステップS008)と、得られたアクション列をアクションヘッダとして受信パケットヘッダに付加する処理を行う(ステップS009)。また、前記パケット出力指示がフローテーブルの検索指示でなく、当該パケットに対し実行すべきアクション(即ち、アクション列の付加と指定ポートからの出力)を伴う場合も同様に、当該アクションに従って、自身が実行すべきアクションの抽出(ステップS008)と、得られたアクション列をアクションヘッダとして受信パケットヘッダに付加する処理を行う(ステップS009)。
When the action sequence is received from the
最後に、ノード10は、自装置が実行すべきアクションを実行する(ステップS010)。
Finally, the
ここで、上記ステップS009におけるアクション列の付加方法について説明する。本実施形態では、図8に示すように、受信したパケットの先頭にアクションヘッダを追加(カプセル化)することによってアクションヘッダを付加しているものとする。その他、アクション列を受信パケットのヘッダに埋め込む方法を採ることもできるが、これは第3の実施形態として説明する。 Here, an action sequence adding method in step S009 will be described. In this embodiment, as shown in FIG. 8, it is assumed that an action header is added by adding (encapsulating) an action header to the head of the received packet. In addition, a method of embedding the action sequence in the header of the received packet can be adopted, which will be described as a third embodiment.
アクション列は、各ノード10がそれぞれ実行すべきアクションを特定できる形態のものであれば、特に限定されない。例えば、図9(a)のように、各ノード10が、適当なデリミタや別途設けたLengthフィールド等に基づいて先頭から順番にアクションを取り出す構成を取ることができる。例えば、図9(b)のように、各ノード10が、先頭のポインタビットをインクリメント(1だけ加算)しながら、アクションを実行していく構成を取ることもできる。図9の(a)、(b)いずれの場合もノード#2は、ポート#2から次ホップのノード#3にパケットを転送し、ノード#3は、ポート#9から次ホップにパケットを転送していくことになる。
The action sequence is not particularly limited as long as each
また、図9(c)に示すように、各ノードのIDと実行すべきアクションを組にしたアクション列を用いることもできる。図9の(c)の場合、ID:Bを持つノード#2は、アクションヘッダ中の自装置のID:Bが付された「B2」を取り出し、ポート#2から次ホップのノード#3にパケットを転送し、ID:Cを持つノード#3は、アクションヘッダ中の自装置のID:Cが付された「C9」を取り出し、ポート#9から次ホップにパケットを転送していくことになる。このようなアクション列の場合、アクションの記載順序が、転送経路上のノードの順序と一致していなくともよく、その都度アクションヘッダを書き換えなくとも各ノード10が自装置で実行すべきアクションを特定することが可能となる。
Further, as shown in FIG. 9C, an action sequence in which the ID of each node and the action to be executed are paired can be used. In the case of FIG. 9C, the
さらには、図9(d)に示すように、各ノード10についてそれぞれアクションヘッダ中のアクションを取り出すべき領域を決めておく方法を採ることもできる。図9の(d)の場合、アクションヘッダのビット0−3からアクションを取り出すことが定められたノード#2は、「2」を取り出し、ポート#2から次ホップのノード#3にパケットを転送し、アクションヘッダのビット4−9からアクションを取り出すことが定められたノード#3は、「9」を取り出し、ポート#9から次ホップにパケットを転送していくことになる。このようなアクション列の場合も、アクションの順序が、転送経路上のノードの順序と一致していなくともよく、その都度アクションヘッダを書き換えなくとも各ノード10が自装置で実行すべきアクションを特定することが可能となる。
Furthermore, as shown in FIG. 9 (d), it is possible to adopt a method of determining an area from which an action in each action header should be extracted for each
図10は、上記制御サーバ20の動作を表したフローチャートである。図10を参照すると、制御サーバ20は、上記図7のステップS006のように、ノード10からアクション列の作成要求を受け取ると(ステップS101)、トポロジ管理部22にて構築されたネットワークトポロジ情報を取得し、パケットの転送経路を計算する(ステップS102)。
FIG. 10 is a flowchart showing the operation of the
前記パケットの転送経路を計算の結果、経路を作成できない、経路上のノードが故障している等の理由により、転送できない場合(ステップS103のNo)を除き、制御サーバ20は、前記計算された転送経路に対応するアクションを計算し(ステップS104)、アクション列を生成する(ステップS105)。例えば、DPID#1のノード10から、DPID#2のノード10、DPID#3のノード10という経路が求められている場合、「Output to Port #9 by DPID 1/Output to Port #6 by DPID 2/Output to Port #1 by DPID 3」というアクション列が生成される。
As a result of the calculation of the packet transfer route, the
次に、アクション列の生成が完了すると、制御サーバ20は、後続するパケットのマッチング判定するためのFlowKey(マッチングキー)を生成し、受信パケットに、前記計算したアクション列を設定しなさいという情報および当該受信パケットを受信したノードが実行すべきアクションとの2つの情報が定義されたフローエントリを生成する(ステップS106)。最後に、制御サーバ20は、アクション列の要求元のノード10にフローエントリを送信した後(ステップS107)、ノード10がパケットをバッファしていない場合(ステップS108のNo)、パケットの出力指示を行う(ステップS109)。このパケットの出力指示は、出力すべきパケット(受信パケット)と、当該パケットに対し実行すべきアクション(アクションヘッダを付加して指定ポートから出力処理)とを指示すること、あるいは、出力すべきパケット(受信パケット)と、フローテーブルの検索を指示することによって行われる。なお、ノード10がパケットをバッファしている場合(ステップS108のYes)、後記図13、図14で説明するようにパケットの送信は省略される。
Next, when the generation of the action sequence is completed, the
図11は、上記通信ノードAから送出されたパケット(受信パケット)に基づいて、新しいフローエントリが登録され、当該パケット(受信パケット)が次ホップに転送されるまでの流れを表したシーケンス図である。 FIG. 11 is a sequence diagram showing a flow until a new flow entry is registered based on a packet (received packet) sent from the communication node A and the packet (received packet) is transferred to the next hop. is there.
上述したとおり、ノード10は、受信したパケットにアクションヘッダが付加されていないと判断すると、すでにフローエントリ作成済みのフローであるかどうかフローテーブル13の検索を行う(図7のステップS004に同じ)。この時点では、フローテーブル13に該当するエントリは登録されていないため、ノード10は、制御サーバ20に対し、アクション列の作成を要求する(図7のステップS006に同じ)。
As described above, when the
前記アクション列の作成要求を受けた制御サーバ20は、上述したように、受信パケットの転送経路およびアクション列を計算し、前記受信パケットに、前記計算したアクション列を設定しなさいという情報および当該受信パケットを受信したノードが実行すべきアクションとの2つの情報を持つフローエントリを生成する(図10のステップS102からS106に同じ)。
The
上述したとおり、フローエントリを受信したノード10は、フローエントリをフローテーブル13に登録する(図7のステップS007に同じ)。
As described above, the
その後、制御サーバ20からパケット出力指示を受信すると、ノード10は、自身が実行すべきアクションを抽出し(図7のステップS008に同じ)、さらに、受信したパケットにアクションヘッダを付加して(図7のステップS009に同じ)、指定ポートから出力する(図7のステップS010に同じ)。
Thereafter, when receiving a packet output instruction from the
図12は、図11の動作シーケンスを変形したものである。図11の動作シーケンスとの相違点は、制御サーバ20がフローエントリの送信後、図10のステップS109のパケット出力指示において、出力すべきパケット(受信パケット)と、アクションとしてフローテーブルの検索を指示する点である。
FIG. 12 is a modification of the operation sequence of FIG. 11 differs from the operation sequence of FIG. 11 in that the
前記指示を受けたノード10は、受信パケットをキーとして、フローテーブルの検索を再度実行する(図12のステップS004−2)。先のステップS007にて、フローエントリの登録を行っているため、受信パケットに対応するフローエントリが検索される。ノード10は、受信パケットに、前記フローエントリから自身が実行すべきアクションを抽出し(図7のステップS008に同じ)、アクションヘッダを付加して(図7のステップS009に同じ)、指定ポートから出力する(図7のステップS010に同じ)。
Upon receiving the instruction, the
さらに、ノード10のパケットのバッファ機能がある場合、図7のフローチャートは、図13のフローチャートに置き換えられ、図11の動作シーケンスは、図13のシーケンスに置き換えられる。図7のフローチャートおよび図11の動作シーケンスと、図13のフローチャートおよび図14の動作シーケンスとの相違点は、パケット保存処理(ステップS021)と、パケット取り出し処理(ステップS022)が追加され、制御サーバ20からのパケット出力指示が省略されている点である。図13、図14の例では、ノード10から制御サーバ20へのアクション列作成要求に、受信パケットを格納したバッファIDを添付しておき、制御サーバ20からノード10へのフローエントリ送信時に、前記受信したバッファIDを添付することで、ノード10は、フローエントリ登録後(ステップS007)、指定されたバッファIDから受信パケットを取り出し(ステップS022)、自身が実行すべきアクションの抽出およびアクションヘッダの付加を行って(ステップS008−S009)、指定ポートから出力している(ステップS010)。
Further, when the
図15〜図17を参照して、ここまで説明した一連の動作を整理して説明する。通信ノードAが通信ノードBに宛てて、ヘッダXを持つパケットを送信すると(図15の(1))、パケットを受信したノード#1は、自装置のフローテーブルを検索するが該当するエントリが無いため、制御サーバ20にそのパケットに対応するアクション列生成を要求する(図15の(2)Packet-In)。
With reference to FIGS. 15 to 17, the series of operations described so far will be described in an organized manner. When the communication node A sends a packet having a header X to the communication node B ((1) in FIG. 15), the
制御サーバ20は、ノード#1から送信されたパケットに対応するアクション列(Acts)および適切なマッチングキー(X)を設定したフローエントリを生成し、ノード#1に返送する(図15の(4)FlowMod(Add))。
The
図16は、ノード#1がフローエントリをフローテーブルに登録した状態を示している。この状態で、制御サーバ20が、ノード#1にパケット出力指示を出すと(図16の(5)Packet-Out)、ノード#1は、受信パケットにアクションヘッダ(Acts)を付加してノード#2に転送する(図16の(6))。
FIG. 16 shows a state in which the
ノード#2は、アクションヘッダ(Acts)に含まれる自身が実行すべきアクションを読み出してポート#5から前記受信パケットを出力する。ノード#2から出力されたパケットは、ノード#3に入力される。
The
ノード#3は、アクションヘッダ(Acts)に含まれる自身が実行すべきアクションを読み出してアクションヘッダ(Acts)を削除した上でポート#9から前記受信パケットを出力する。ノード#3から出力されたパケットは、通信ノードBに入力される(図16の(7))。
その後は、図17に示すように、通信ノードAが通信ノードBに宛てて、後続するパケットを送信すると(図17の(8))、パケットを受信したノード#1は、制御サーバ20に問い合わせることなく、自装置のフローテーブルを検索し、該当するエントリのアクション列からアクションヘッダを生成してノード#2に送信する(図17の(9))。その後は、ノード#2、ノード#3の順にパケットが転送され、最後に、通信ノードBに到達する(図17の(10))。
Thereafter, as shown in FIG. 17, when the communication node A transmits a subsequent packet to the communication node B ((8) in FIG. 17), the
なお、経路が長い場合や、アクションヘッダの長さに制約がある場合、経路の途中のノードにアクションヘッダを取得させる必要が生じることがある(この動作を「息継ぎ処理」という。)。この場合、図18に示すように、途中のノードに、アクション列の生成要求を行わせ(図18の(1)Packet-In)、後続するノードに実行させるアクション列を取得させて、アクションヘッダを付加させればよい。 When the route is long or when the length of the action header is limited, it may be necessary for a node in the route to acquire an action header (this operation is referred to as “breathing process”). In this case, as shown in FIG. 18, an intermediate node is requested to generate an action sequence ((1) Packet-In in FIG. 18), an action sequence to be executed by the subsequent node is acquired, and an action header is obtained. Can be added.
制御サーバ20は、経路およびアクション列の計算時に、上記息継ぎ処理が必要となるノードを求めることができる。上記息継ぎ処理は、その必要が生じたときに行うだけでなく、事前に該当するノードにフローエントリを送信することによっても実現できる。
The
例えば、図19に示すように、制御サーバ20がアクション列の生成要求を受けた際に(図19の(1)Packet-In)、ノード#1だけでなく(図19の(2)FlowMod)、ノード#n−1にもフローエントリを送信してしまうことができる(図19の(3)FlowMod)。
For example, as shown in FIG. 19, when the
[第2の実施形態]
続いて、本発明の第2の実施形態について図面を参照して詳細に説明する。図20は、本発明の第2の実施形態に係る通信システムを示す図である。図2に示した第1の実施形態との相違点は、各ノード10aが、アクションテーブルを備えており、アクションテーブルのポインタを指示することによりアクションを特定できるようになっている点である。
[Second Embodiment]
Next, a second embodiment of the present invention will be described in detail with reference to the drawings. FIG. 20 is a diagram showing a communication system according to the second embodiment of the present invention. The difference from the first embodiment shown in FIG. 2 is that each
図21は、本発明の第2の実施形態の制御サーバ20aのフローエントリDBに格納されるフローエントリの例である。図21を参照すると、各エントリは、DPID(データパスID)と、FlowKey(フローキー;マッチングキー)と、アクションを実行すべきのノードおよびそのアクションテーブルのポインタとから構成される。
FIG. 21 is an example of a flow entry stored in the flow entry DB of the
本実施形態によれば、アクションヘッダのサイズあるいはアクションヘッダに収容するアクションの数を増やすことが可能となる。もちろん、本実施形態においても、図22に示すように、経路途中のノード10aに息継ぎ処理を行わせることが可能である。例えば、図22のノード#n−1で息継ぎ処理が必要であることが判っている場合は以下のとおりとなる。まず、ノード#n−1のアクションテーブルに、受信パケットに、後続ノード#n以下に実行させるアクション列を記載したアクションヘッダを付加して送信する旨のアクションを格納しておく。そして、ノード#n−1に当該アクションを実行させるポインタが入ったアクションヘッダが入力されるようにすればよい。
According to the present embodiment, the size of the action header or the number of actions accommodated in the action header can be increased. Of course, also in this embodiment, as shown in FIG. 22, it is possible to cause the
[第3の実施形態]
続いて、本発明の第3の実施形態について図面を参照して詳細に説明する。上記第1、第2の実施形態では、アクションヘッダは受信パケットの先頭に追加する形で付加するものとして説明したが(図8参照)、図23に示すように、受信パケットのヘッダの一部を書き換える態様を採ることも可能である。
[Third Embodiment]
Next, a third embodiment of the present invention will be described in detail with reference to the drawings. In the first and second embodiments, the action header is described as being added in the form of being added to the head of the received packet (see FIG. 8), but as shown in FIG. 23, a part of the header of the received packet It is also possible to adopt a mode of rewriting.
図24は、受信パケットのMAC DAフィールド一部にアクション列を格納した場合のフレームフォーマットを示す図である。MAC DAフィールドの先頭から7、8ビット目(または1オクテット目の下位2ビット)を除く46ビットをアクション列の格納領域とした場合を考える。各ノードの出力ポートが最大64ポートだとすると、ポートは6ビットで一意に特定できる。従って、図9の(a)のように、ポートだけを並べる形式ならば最大7個のアクションを収容することが可能になる。また、図9(c)に示すように、各ノードのIDを付加する場合には、例えば、各ノードのIDの長さを8ビットとすると、最大3個のアクションを収容することが可能になる。なお、図24の例では、MAC DAフィールドを用いているが、MAC SAフィールドやその他フィールドを用いてもよい。さらに、MAC DAフィールドとMAC SAフィールドを連続して用いてしまってもよい。この場合、上記した収容可能なアクションの数はそれぞれ増大する。 FIG. 24 is a diagram showing a frame format when an action sequence is stored in a part of the MAC DA field of the received packet. Consider a case where 46 bits excluding the 7th and 8th bits (or the lower 2 bits of the 1st octet) from the head of the MAC DA field are used as a storage area for the action sequence. If the maximum number of output ports of each node is 64, the port can be uniquely specified with 6 bits. Therefore, as shown in FIG. 9A, a maximum of seven actions can be accommodated if only the ports are arranged. Also, as shown in FIG. 9C, when adding the ID of each node, for example, if the length of the ID of each node is 8 bits, it is possible to accommodate a maximum of three actions. Become. In the example of FIG. 24, the MAC DA field is used, but a MAC SA field and other fields may be used. Further, the MAC DA field and the MAC SA field may be used in succession. In this case, the number of actions that can be accommodated increases.
上記のようにMAC DAフィールドを利用してアクション列を埋め込む場合、最終ホップでMAC DAフィールドを復元する動作が必要になる。以下、図25を参照して、本実施形態の動作を説明する。通信ノードAが通信ノードBに宛てて、ヘッダXを持つパケットを送信すると(図25の(1))、パケットを受信したノード#1は、自装置のフローテーブルを検索するが該当するエントリが無いため、制御サーバ20bにそのパケットに対応するアクション列生成を要求する(図25の(2)Packet-In)。
When the action sequence is embedded using the MAC DA field as described above, it is necessary to restore the MAC DA field at the last hop. Hereinafter, the operation of this embodiment will be described with reference to FIG. When the communication node A sends a packet having a header X to the communication node B ((1) in FIG. 25), the
制御サーバ20bは、ノード#1から送信されたパケットのマッチングキー(X)およびヘッダをアクション列入りヘッダ(X’)に置き換えるアクションを設定したフローエントリを生成し、ノード#1に返送する(図25の(4)FlowMod(Add))。また、制御サーバ20bは、アクション列入りヘッダ(X’)を元のヘッダ(X)に復元してから所定ポートに出力するアクションを設定したフローエントリを生成し、経路の最終ホップとなるノード#3に送信する(図25の(5)FlowMod(Add))。
The
その後、制御サーバ20bが、ノード#1に対し、ヘッダをアクション列入りヘッダ(X’)としたパケットのパケット出力指示を出すと(図25の(6)Packet-Out)、ノード#1は、受信パケットをノード#2に転送する(図25の(7))。
Thereafter, when the
ノード#2は、アクション列入りヘッダ(X’)に含まれる自身が実行すべきアクションを読み出してポート#5から前記受信パケットを出力する。ノード#2から出力されたパケットは、ノード#3に入力される。
The
ノード#3は、アクション列入りヘッダ(X’)に対応するフローエントリを取り出して、アクション列入りヘッダ(X’)を元のヘッダ(X)に復元した後で、ポート#9から前記復元後のパケットを出力する。ノード#3から出力されたパケットは、通信ノードBに入力される。
The
その後は、図25に示すように、通信ノードAが通信ノードBに宛てて、後続するパケットを送信すると(図25の(9))、パケットを受信したノード#1は、制御サーバ20bに問い合わせることなく、自装置のフローテーブルを検索し、該当するエントリの内容に従い、アクション列入りヘッダ(X’)を付加したパケットをノード#2に送信する(図25の(10))。その後は、ノード#2、ノード#3の順にパケットが転送され、最後に、通信ノードBに到達する(図25の(11))。
Thereafter, as shown in FIG. 25, when the communication node A transmits a subsequent packet to the communication node B ((9) in FIG. 25), the
以上のような本実施形態によれば、第1の実施形態と比べて、アクションヘッダの分だけオーバーヘッドを低減することが可能になる。 According to the present embodiment as described above, it is possible to reduce overhead by an amount equivalent to the action header as compared with the first embodiment.
また、本実施形態と、第2の実施形態とを組み合わせることも可能であり、例えば、図25のように、各ノードのアクションテーブル上のアクションを指示するポインタを用いることとすれば、一ヘッダに、より多くのアクションを収容することが可能になる。この場合の最終ホップにおけるヘッダの復元は、ノード#3のアクションテーブルにヘッダ(X’)をヘッダ(X)に戻すアクションを格納しておき、ノード#3に当該アクションを示すポインタ(00x5)を指示してやればよい。
Also, this embodiment and the second embodiment can be combined. For example, as shown in FIG. 25, if a pointer indicating an action on the action table of each node is used, one header is used. It becomes possible to accommodate more actions. To restore the header at the last hop in this case, an action for returning the header (X ′) to the header (X) is stored in the action table of the
上記ヘッダ復元処理は、種々の方法により実現することができる。例えば、図27に示すように、最終ホップのノード#3のフローテーブルに、次のアクションを実行させるフローエントリを追加することができる。まず、(12)X’からIP DA(Internet Protocol Destination Address)を取得し、(13)In Port以外のポートにARP(Address Resolution Protocol) Requestを送信し、(14)IP DAに該当するMAC DAを取得する。(15)取得したMAC DAを用いてヘッダを復元した後、(16)MAC DAの受信ポートにパケットを送信する。
The header restoration process can be realized by various methods. For example, as shown in FIG. 27, a flow entry for executing the next action can be added to the flow table of
また例えば、MAC SAフィールドをアクション列の格納に用いていない場合には、図28に示すように、MAC DAフィールドの内容(00:00:00:00:00:01)を、MAC SAフィールドに退避させた後に、MAC DAフィールドにアクション列を格納し、最終ホップのノード#3に、MAC SAフィールドの内容を用いてMAC DAフィールドを書き戻してやるアクションを実行させる方法も用いることができる。なお、図28の例では、MAC SAフィールドにアドレス(00:00:00:00:00:02)を入れているが、この値は適当な値でかまわない。
Further, for example, when the MAC SA field is not used for storing the action sequence, the contents of the MAC DA field (00: 00: 00: 00: 00: 01) are stored in the MAC SA field as shown in FIG. It is also possible to use a method in which an action sequence is stored in the MAC DA field after evacuation, and the action is performed by writing back the MAC DA field to the last
なお、アクション列の収容先としては、図24の例に限られず、MAC SAフィールド、VAN_ID(VID)、Type等のその他のフィールドを用いることもできる。またこのほか、上位レイヤのヘッダやデータ領域等の予め定めた位置にアクション列を収容する態様も採用可能である。 The accommodation destination of the action string is not limited to the example of FIG. 24, and other fields such as a MAC SA field, VAN_ID (VID), and Type can also be used. In addition, it is also possible to adopt a mode in which the action sequence is accommodated at a predetermined position such as a header or data area of the upper layer.
以上、本発明の好適な実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。上記した実施形態の制御サーバ20、20a〜20fは、専用のサーバとして実現することもでき、ノード10、10a〜10fとしては、上記オープンフロースイッチのほか、IP網におけるルータ、MPLS(Multi−Protocol Label Switching)網におけるMPLSスイッチにて実現することができる。その他、サーバがネットワーク内のノードを集中管理するようなネットワークであれば、本発明を適用することが可能である。
The preferred embodiments of the present invention have been described above. However, the present invention is not limited to the above-described embodiments, and further modifications, replacements, and replacements may be made without departing from the basic technical idea of the present invention. Adjustments can be made. The
また、本発明の動作からも明らかなように、アクション列を設定するアクション列設定部16は、経路の始点となる入り口ノード(例えば、図18のノード#1)と、息継ぎ処理を行うノード(例えば、図18のノード#n−1)にあればよい。従って、ネットワーク内のどのノードが、入り口ノードと息継ぎ処理を行うノードに該当するかが判っている場合には、アクション列設定部16を省略することが可能である。
Further, as apparent from the operation of the present invention, the action
なお、上記の特許文献および非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。 Each disclosure of the above-mentioned patent document and non-patent document is incorporated herein by reference. Within the scope of the entire disclosure (including claims) of the present invention, the embodiments and examples can be changed and adjusted based on the basic technical concept. Further, various combinations or selections of various disclosed elements (including each element of each claim, each element of each embodiment or example, each element of each drawing, etc.) within the scope of the claims of the present invention. Is possible. That is, the present invention of course includes various variations and modifications that could be made by those skilled in the art according to the entire disclosure including the claims and the technical idea. In particular, with respect to the numerical ranges described in this document, any numerical value or small range included in the range should be construed as being specifically described even if there is no specific description.
データセンタなどの商用ネットワークでは、QoS(Quority of Service)や、負荷分散のため、宛先アドレス、送信元アドレス、使用プロトコルといった様々な条件により、パケットの転送経路を厳密に制御する必要がある。本発明によれば、少なくとも中間の息継ぎ処理を要しないノードのフローテーブルが不要となり、また、フローテーブルが必要となるノードにおいても、そのエントリ数を削減することが可能となる。したがって、本発明はデータセンタなどの商用ネットワークへ好適に適用可能である。 In a commercial network such as a data center, it is necessary to strictly control a packet transfer path according to various conditions such as a destination address, a source address, and a protocol used for QoS (Quality of Service) and load distribution. According to the present invention, a flow table of a node that does not require at least an intermediate breathing process becomes unnecessary, and the number of entries can be reduced even in a node that requires a flow table. Therefore, the present invention can be suitably applied to a commercial network such as a data center.
10、10a〜10f 通信ノード
11 サーバ通信部
12 フローテーブル管理部
13 フローテーブル
14 転送処理部
15 テーブル検索部
16 アクション列設定部
17 アクション抽出部
18 アクション実行部
20、20a〜20f 制御サーバ
21 フローエントリデータベース(フローエントリDB)
22 トポロジ管理部
23 経路・アクション計算部
24 フローエントリ管理部
25 ノード通信部
30 通信ノード
10, 10a to 10f Communication node 11
22
Claims (27)
前記複数のノードの少なくとも1つのノードは、At least one node of the plurality of nodes is
前記複数のノードの各々が有するパケット処理リストから各ノードが実行するパケット処理を特定するための複数の識別情報が付与されたパケットを受信可能な第1の手段と、First means capable of receiving a packet to which a plurality of pieces of identification information for specifying packet processing to be executed by each node is received from a packet processing list possessed by each of the plurality of nodes;
前記ノードが有する前記リストから、前記複数の識別情報のうち前記ノードに対応する識別情報に基づいて特定されたパケット処理を実行可能な第2の手段とSecond means capable of executing packet processing specified from the list of the node based on the identification information corresponding to the node among the plurality of identification information;
を含むことを特徴とする通信システム。A communication system comprising:
前記複数のノードを制御する制御装置に対して、前記パケット処理に関する問い合わせを行う第3の手段
を含むことを特徴とする請求項1に記載の通信システム。 The at least one node is
The communication system according to claim 1, further comprising: a third unit that makes an inquiry about the packet processing to a control device that controls the plurality of nodes.
前記複数のノードを制御する制御装置に従って、受信したパケットの処理を行う第4の手段
を含むことを特徴とする請求項1または2に記載の通信システム。 The at least one node is
Communication system according to claim 1 or 2 in accordance with the control apparatus, characterized by comprising a fourth means for processing the received packet for controlling said plurality of nodes.
受信したパケットに対して、前記受信したパケットに関するパケット処理に対応する前記複数の識別情報を設定する第5の手段
を含むことを特徴とする請求項1乃至3のいずれか1項に記載の通信システム。 The at least one node is
The communication according to any one of claims 1 to 3, further comprising: fifth means for setting the plurality of identification information corresponding to packet processing related to the received packet for the received packet. system.
前記複数のノードを制御する制御装置によって設定された処理規則に従って、受信したパケットに対して、前記受信したパケットに関するパケット処理に対応する前記複数の識別情報を設定する
ことを特徴とする請求項4に記載の通信システム。 The fifth means includes
5. The plurality of pieces of identification information corresponding to packet processing related to the received packet are set for a received packet according to a processing rule set by a control device that controls the plurality of nodes. The communication system according to 1.
受信したパケットに対して、前記受信したパケットの転送経路上の前記複数のノードで実行されるパケット処理に対応する前記複数の識別情報を設定する
ことを特徴とする請求項4または5に記載の通信システム。 The fifth means includes
6. The plurality of pieces of identification information corresponding to packet processing executed by the plurality of nodes on a transfer path of the received packet are set for the received packet. Communications system.
前記第2の手段は、前記転送経路における前記ノードの順序に対応する前記識別情報に基づいて特定されたパケット処理を実行するThe second means executes packet processing specified based on the identification information corresponding to the order of the nodes in the transfer path.
ことを特徴とする請求項1乃至6のいずれか1項に記載の通信システム。The communication system according to any one of claims 1 to 6.
前記複数のノードにおける少なくとも1つのノードに対して、前記複数のノードの各々が有するパケット処理リストから各ノードが実行するパケット処理を特定するため、前記各ノードに対応する複数の識別情報を、前記転送経路に転送するパケットに付与することを指示可能な第2の手段とIn order to identify the packet processing executed by each node from the packet processing list of each of the plurality of nodes for at least one node in the plurality of nodes, a plurality of identification information corresponding to each of the nodes is A second means capable of giving an instruction to attach to a packet transferred to the transfer path;
を含むことを特徴とする制御装置。The control apparatus characterized by including.
を含むことを特徴とする請求項8に記載の制御装置。 The control device according to claim 8 , further comprising third means for receiving an inquiry about the packet processing from the at least one node .
ことを特徴とする請求項8または9の制御装置。10. The control device according to claim 8 or 9, wherein
ことを特徴とする請求項8乃至10のいずれか1項に記載の制御装置。The control device according to claim 8, wherein the control device is a control device.
ことを特徴とする請求項8乃至11のいずれか1項に記載の制御装置。The control device according to claim 8, wherein the control device is a control device.
ことを特徴とする請求項8乃至12のいずれか1項に記載の制御装置。 The control device according to claim 8, wherein the control device is a control device.
パケットの転送経路の少なくとも一部を構成する複数のノードの各々が有するパケット処理リストから前記複数のノードの各々が実行するパケット処理を特定するための複数の識別情報が付与されたパケットを受信可能な第1の手段と、Receiving a packet with a plurality of identification information for identifying packet processing executed by each of the plurality of nodes from a packet processing list of each of the plurality of nodes constituting at least a part of the packet transfer path First means,
前記パケット処理リストから、前記複数の識別情報のうち前記ノードに対応する識別情報に基づいて特定されたパケット処理を実行可能な第2の手段とSecond means capable of executing packet processing specified based on identification information corresponding to the node among the plurality of identification information from the packet processing list;
を含むことを特徴とするノード。A node characterized by containing
を含むことを特徴とする請求項14に記載のノード。The node of claim 14, comprising:
を含むことを特徴とする請求項14または15に記載のノード。 The node according to claim 14 or 15, characterized by comprising:
受信したパケットに対して、前記受信したパケットに関するパケット処理に対応する前記複数の識別情報を設定する第5の手段 Fifth means for setting the plurality of identification information corresponding to packet processing related to the received packet for the received packet
を含むことを特徴とする請求項14乃至16のいずれか1項に記載のノード。 The node according to any one of claims 14 to 16, characterized by comprising:
前記複数のノードを制御する制御装置によって設定された処理規則に従って、受信したパケットに対して、前記受信したパケットに関するパケット処理に対応する前記複数の識別情報を設定する In accordance with a processing rule set by a control device that controls the plurality of nodes, the plurality of pieces of identification information corresponding to packet processing related to the received packet are set for the received packet.
ことを特徴とする請求項17に記載のノード。 The node according to claim 17.
受信したパケットに対して、前記受信したパケットの転送経路上の前記複数のノードで実行されるパケット処理に対応する前記複数の識別情報を設定する For the received packet, the plurality of identification information corresponding to packet processing executed by the plurality of nodes on the transfer path of the received packet is set.
ことを特徴とする請求項17または18に記載のノード。 The node according to claim 17 or 18, characterized in that:
ことを特徴とする請求項14乃至19のいずれか1項のノード。20. A node as claimed in any one of claims 14 to 19 characterized in that
前記第2の手段は、前記転送経路における前記ノードの順序に対応する前記識別情報に基づいて特定されたパケット処理を実行する The second means executes packet processing specified based on the identification information corresponding to the order of the nodes in the transfer path.
ことを特徴とする請求項14乃至19のいずれか1項のノード。 20. A node as claimed in any one of claims 14 to 19 characterized in that
パケットを受信可能な第1の手段と、A first means capable of receiving a packet;
パケットの転送経路を制御可能な制御装置からの指示に従って、前記転送経路の少なくとも一部を構成する複数のノードの各々が有するパケット処理リストから各ノードが実行するパケット処理を特定するため、前記各ノードに対応する複数の識別情報を、前記パケットに付与可能な第2の手段と、In accordance with an instruction from a control device capable of controlling a packet transfer path, each packet is specified by each node from a packet processing list included in each of a plurality of nodes constituting at least a part of the transfer path. A second means capable of giving a plurality of identification information corresponding to nodes to the packet;
を含むことを特徴とするノード。A node characterized by containing
ことを特徴とする請求項22のノード。23. The node of claim 22, wherein:
前記複数のノードにおける少なくとも1つのノードに対して、前記複数のノードの各々が有するパケット処理リストから各ノードが実行するパケット処理を特定するため、前記各ノードに対応する複数の識別情報を、前記転送経路に転送するパケットに付与することを指示するIn order to identify the packet processing executed by each node from the packet processing list of each of the plurality of nodes for at least one node in the plurality of nodes, a plurality of identification information corresponding to each of the nodes is Instructs the packet to be transferred to the transfer path.
ことを特徴とする通信方法。A communication method characterized by the above.
パケットの転送経路の少なくとも一部を構成する複数のノードの各々で実行されるパケット処理を決定する処理と、
前記複数のノードにおける少なくとも1つのノードに対して、前記複数のノードの各々が有するパケット処理リストから各ノードが実行するパケット処理を特定するため、前記各ノードに対応する複数の識別情報を、前記転送経路に転送するパケットに付与することを指示する処理と
を実行させることを特徴とするプログラム。 To a control device that can control multiple nodes,
A process for determining a packet process to be executed in each of a plurality of nodes constituting at least a part of a packet transfer path;
In order to identify the packet processing executed by each node from the packet processing list of each of the plurality of nodes for at least one node in the plurality of nodes, a plurality of identification information corresponding to each of the nodes is A program for executing a process for instructing a packet to be transferred to a transfer path .
パケットの転送経路の少なくとも一部を構成する複数のノードの各々が有するパケット処理リストから前記複数のノードの各々が実行するパケット処理を特定するための複数の識別情報が付与されたパケットを受信し、Receiving a packet to which a plurality of identification information for specifying packet processing to be executed by each of the plurality of nodes is received from a packet processing list possessed by each of the plurality of nodes constituting at least a part of the packet transfer path; ,
前記パケット処理リストから、前記複数の識別情報のうち前記ノードに対応する識別情報に基づいて特定されたパケット処理を実行するThe packet processing specified from the packet processing list based on the identification information corresponding to the node among the plurality of identification information is executed.
ことを特徴とする通信方法。A communication method characterized by the above.
パケットを受信し、Receive the packet,
パケットの転送経路を制御可能な制御装置からの指示に従って、前記転送経路の少なくとも一部を構成する複数のノードの各々が有するパケット処理リストから各ノードが実行するパケット処理を特定するため、前記各ノードに対応する複数の識別情報を、前記パケットに付与するIn accordance with an instruction from a control device capable of controlling a packet transfer path, each packet is specified by each node from a packet processing list included in each of a plurality of nodes constituting at least a part of the transfer path. A plurality of identification information corresponding to the node is added to the packet.
ことを特徴とする通信方法。A communication method characterized by the above.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012217523A JP5573909B2 (en) | 2012-09-28 | 2012-09-28 | COMMUNICATION SYSTEM, NODE, CONTROL DEVICE, COMMUNICATION METHOD, AND PROGRAM |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012217523A JP5573909B2 (en) | 2012-09-28 | 2012-09-28 | COMMUNICATION SYSTEM, NODE, CONTROL DEVICE, COMMUNICATION METHOD, AND PROGRAM |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011530717A Division JP5626214B2 (en) | 2009-09-14 | 2009-09-14 | Communication system, node, control server, communication method and program |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014127244A Division JP5794355B2 (en) | 2014-06-20 | 2014-06-20 | COMMUNICATION SYSTEM, NODE, CONTROL DEVICE, COMMUNICATION METHOD, AND PROGRAM |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012257335A JP2012257335A (en) | 2012-12-27 |
JP5573909B2 true JP5573909B2 (en) | 2014-08-20 |
Family
ID=47528345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012217523A Active JP5573909B2 (en) | 2012-09-28 | 2012-09-28 | COMMUNICATION SYSTEM, NODE, CONTROL DEVICE, COMMUNICATION METHOD, AND PROGRAM |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5573909B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6477037B2 (en) * | 2015-03-06 | 2019-03-06 | 日本電気株式会社 | Network control system, network control method, control device control program, and relay device control program |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU1199888A (en) * | 1987-03-13 | 1988-09-15 | Northern Telecom Limited | Communications system and components and methods for use therein |
JP3721784B2 (en) * | 1998-05-27 | 2005-11-30 | 富士電機機器制御株式会社 | Network system, transmission device, relay device, and recording medium |
JP2003163684A (en) * | 2001-11-28 | 2003-06-06 | Nippon Telegr & Teleph Corp <Ntt> | Method for storing program via network, method for processing packet routing method, its program, its device and recording medium |
JP5182146B2 (en) * | 2009-02-23 | 2013-04-10 | 富士通株式会社 | Route determination program, management apparatus, and network system |
-
2012
- 2012-09-28 JP JP2012217523A patent/JP5573909B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2012257335A (en) | 2012-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5626214B2 (en) | Communication system, node, control server, communication method and program | |
JP6418261B2 (en) | COMMUNICATION SYSTEM, NODE, CONTROL DEVICE, COMMUNICATION METHOD, AND PROGRAM | |
JP5494668B2 (en) | Information system, control server, virtual network management method and program | |
JP5440691B2 (en) | Packet transfer system, control device, transfer device, processing rule creation method and program | |
JP5888338B2 (en) | Communication system and communication method | |
JP2014533001A (en) | Transfer device control device, transfer device control method, communication system, and program | |
WO2014077306A1 (en) | Control apparatus, communication system, control information creating method and program | |
JP5573909B2 (en) | COMMUNICATION SYSTEM, NODE, CONTROL DEVICE, COMMUNICATION METHOD, AND PROGRAM | |
JP5637289B2 (en) | Communication system, node, control server, communication method and program | |
JP6036940B2 (en) | COMMUNICATION SYSTEM, NODE, CONTROL DEVICE, COMMUNICATION METHOD, AND PROGRAM | |
JP5794355B2 (en) | COMMUNICATION SYSTEM, NODE, CONTROL DEVICE, COMMUNICATION METHOD, AND PROGRAM |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120928 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121024 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130903 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20131101 |
|
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: 20140603 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140616 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5573909 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |