WO2014057977A1 - 通信ノード、通信システム、制御装置、パケット転送方法及びプログラム - Google Patents
通信ノード、通信システム、制御装置、パケット転送方法及びプログラム Download PDFInfo
- Publication number
- WO2014057977A1 WO2014057977A1 PCT/JP2013/077476 JP2013077476W WO2014057977A1 WO 2014057977 A1 WO2014057977 A1 WO 2014057977A1 JP 2013077476 W JP2013077476 W JP 2013077476W WO 2014057977 A1 WO2014057977 A1 WO 2014057977A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- entry
- packet
- match condition
- communication node
- matches
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4604—LAN interconnection over a backbone network, e.g. Internet, Frame Relay
- H04L12/462—LAN interconnection over a bridge based backbone
- H04L12/4625—Single bridge functionality, e.g. connection of two networks over a single bridge
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/36—Backward learning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/64—Routing or path finding of packets in data switching networks using an overlay routing layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Definitions
- the present invention is based on the priority claim of Japanese patent application: Japanese Patent Application No. 2012-224713 (filed on October 10, 2012), the entire contents of which are incorporated herein by reference. Shall.
- the present invention relates to a communication node, a communication system, a control device, a packet transfer method, and a program, and more particularly, to a communication node, a communication system, a control device, a packet transfer method, and a program that are centrally controlled by the control device.
- Non-Patent Documents 1 and 2 OpenFlow captures communication as an end-to-end flow and performs path control, failure recovery, load balancing, and optimization on a per-flow basis.
- the OpenFlow switch specified in Non-Patent Document 2 includes a secure channel for communication with the OpenFlow controller, and operates according to a flow table that is appropriately added or rewritten from the OpenFlow controller. For each flow, a set of match conditions (Match Fields), flow statistical information (Counters), and instructions (Instructions) that define processing contents are defined for each flow (non-patented). (Refer to “4.1 Flow Table” in Document 2).
- the OpenFlow switch searches the flow table for an entry having a matching condition (see “4.3 Match Fields” in Non-Patent Document 2) that matches the header information of the received packet. If an entry that matches the received packet is found as a result of the search, the OpenFlow switch updates the flow statistical information (counter) and processes the processing (designated) in the instruction field of the entry for the received packet. Perform packet transmission, flooding, discard, etc. from the port. On the other hand, if no entry matching the received packet is found as a result of the search, the OpenFlow switch sends an entry setting request to the OpenFlow controller via the secure channel, that is, a control for processing the received packet. An information transmission request (Packet-In message) is transmitted. The OpenFlow switch receives a flow entry whose processing content is defined and updates the flow table. As described above, the OpenFlow switch performs packet transfer using the entry stored in the flow table as control information.
- a matching condition see “4.3 Match Fields” in Non-Patent Document 2
- the OpenFlow switch updates the flow statistical information
- An object of the present invention is to provide a communication node, a communication system, a control device, a packet transfer method, and a program that can contribute to a reduction in the number of entries held in a communication node in a centralized control network and a reduction in the load on the control device. .
- a match condition that includes at least a destination address, a first table that stores a first entry that associates an output destination of a packet that matches the match condition, and a setting from a predetermined control device Destination learning unit for registering the second table storing the second entry having the matched condition and the combination of the transmission source and reception port of the received packet as the matching condition and output destination of the first table, respectively
- the packet is transferred to an output destination defined in the first table, and the first and second tables If no entry having a matching condition matching the received packet is found in at least one of the two tables, the third entry set by the control device Communication node comprising a packet processing unit for broadcasting the received packet follow, is provided.
- a match condition including at least a destination address, a first table storing a first entry in which an output destination of a packet matching the match condition is associated, and a predetermined match condition
- a second table for storing a second entry
- a destination learning unit for registering a set of a transmission source and a reception port of a received packet as a match condition and an output destination of the first table
- the packet is transferred to an output destination defined in the first table, and at least one of the first and second tables
- Packet that broadcasts the received packet according to the third entry if no entry with matching condition matching the received packet is found in
- a control unit that calculates a broadcast path in a network composed of the plurality of communication nodes and the plurality of communication nodes, and sets an entry in at least a second table of the communication node according to the broadcast path Is provided.
- control device that sets an entry in the communication node table described above.
- a match condition that includes at least a destination address, a first table that stores a first entry that associates an output destination of a packet that matches the match condition, and a predetermined match condition
- a second table for storing a second entry
- a destination learning unit for registering a set of a transmission source and a reception port of a received packet as a match condition and an output destination of the first table
- a packet processing unit A communication node comprising: transferring a packet to an output destination defined in the first table when an entry having a matching condition matching the received packet is found from the first and second tables.
- the packet transfer method comprising is provided in accordance with.
- the method is tied to a specific machine, a communication node that processes received packets according to entries with matching conditions that match the received packets.
- a match condition that includes at least a destination address, a first table that stores a first entry that associates an output destination of a packet that matches the match condition, and a predetermined match condition
- a second table for storing a second entry
- a destination learning unit for registering a set of a transmission source and a reception port of a received packet as a match condition and an output destination of the first table
- a packet processing unit When an entry having a matching condition that matches the received packet is found from the first and second tables in a computer installed in the communication node having the packet, the packet is sent to the output destination defined in the first table. And an entry having a matching condition matching the received packet is not found in at least one of the first and second tables.
- This program can be recorded on a computer-readable (non-transient) storage medium. That is, the present invention can be embodied as a computer program product.
- the present invention it is possible to contribute to the reduction of the number of entries held in the communication node in the centralized control type network and the load reduction of the control device.
- an embodiment of the present disclosure includes a communication node 10 including first and second tables 11 and 12, a destination learning unit 13, and a packet processing unit 14, and a control device 20. This can be realized with a configuration including the above.
- the first table 11 stores a first entry in which a match condition including at least a destination address and an output destination of a packet that matches the match condition are associated with each other.
- the second table 12 stores a second entry having a transmission source address as a matching condition.
- the control device 20 detects that the terminals A to C are connected, and the second entry having the addresses of the terminals A to C as the source address is set in the second table 12. It shall be.
- the destination learning unit 13 registers a pair of a transmission source and a reception port of the received packet as a first entry in which the match condition in the first table 11 is associated with the output destination.
- the packet processing unit 14 transfers the packet to the output destination defined in the first table when each entry having a matching condition that matches the received packet is found from the first and second tables 11 and 12. If no entry having a matching condition that matches the received packet is found in at least one of the first and second tables, the received packet is broadcast according to the third entry set by the control device 20.
- the third entry may be stored in the second table 12 so that a lower priority than the second entry is applied, or is referenced next to the second table 12. It may be stored in a power third table or the like.
- BCMC route broadcast / multicast route
- the communication node 10 receives the packet from the terminal C, but there is no entry having a matching condition that matches the packet from the terminal C in the first table 11 (because it has not been learned), so that it is shown in FIG.
- the received packet is transferred according to the third entry that realizes the broadcast path.
- the destination learning unit 13 of the communication node 10 on the transfer path receives the packet addressed to the terminal A from the terminal C transferred according to the broadcast path, the destination packet transmission source (terminal C) and the reception port (from the terminal C) And the first entry having the match condition of the first table 11 and the output destination, respectively.
- the terminal A that has received the broadcast packet transmits a response packet to the terminal C
- the destination address of the terminal C is set as a matching condition in the first table 11 of the communication node 10 on the route, and the terminal C Since the first entry whose destination is the port that received the packet is registered, the communication node 10 determines that the first entry has been found.
- the second entry of the communication node 10 is registered by the control device 20 with the second terminal having the transmission source terminal A as a match condition. Is determined to be found.
- the response packet addressed from terminal A to terminal C is unicast transferred to terminal C.
- the destination learning unit 13 of the communication node 10 matches the pair of the response packet transmission source (terminal A) and the reception port (packet reception port from the terminal A) with the first table 11. A condition and a first entry as an output destination are registered respectively. As a result, the packet addressed to the terminal A from the terminal C hits the first entry and the second entry from the next time, and is unicast transferred.
- a transfer operation like a layer 2 switch is realized using a centralized control type network, and the number of entries held by the transfer node on the route is reduced and the load on the control device 20 is reduced. .
- FIG. 3 is a diagram illustrating a configuration of the communication system according to the first embodiment.
- the communication nodes 1021 to 1024 connected via the data transfer link as shown in FIG. 3 and the control device 101 that controls these communication nodes 1021 to 1024 via the control link are shown.
- the included configuration is shown.
- a terminal 1031 is connected to the communication node 1021
- a terminal 1032 is connected to the communication node 1024.
- the control apparatus 101 calculates a BCMC route based on a network topology constituted by the communication nodes 1021 to 1024. Further, the control apparatus 101 sets an entry for realizing the calculated BCMC path for the communication nodes 1021 to 1024 using the OpenFlow protocol of Non-Patent Document 2.
- the control apparatus 101 registers a mishit entry in the first table of the communication nodes 1021 to 1024, and an entry (SrcMAC entry) for identifying a known transmission source in the second table of the communication nodes 1021 to 1024. ) And a broadcast entry are registered. Specific contents will be described later together with detailed configurations of the communication nodes 1021 to 1024.
- Such a control device 20 can be realized by mounting an entry operation function described later on the basis of the OpenFlow controllers of Non-Patent Documents 1 and 2.
- Terminals 1031 and 1032 are personal computers and various mobile terminals that communicate via a network constituted by communication nodes 1021 to 1024.
- FIG. 4 is a block diagram illustrating a detailed configuration of the communication node according to the first embodiment.
- the communication nodes 1021 to 1024 will be described as “communication node 102” unless otherwise distinguished.
- the communication node 102 includes a protocol control unit 103 that exchanges control messages with the control device 101, an input port 104, a table storage unit 105, and an output port 112.
- the destination learning unit 13 and the packet processing unit 14 illustrated in FIG. 1 are omitted for simplicity of explanation, but the packet processing in the communication node 102 is stored in the table storage unit 105. Further, it is determined by the search result of the two tables (Table0 (reference numeral 106), Table1 (reference numeral 109)). Further, the communication node 102 has a learning function for registering an entry (DstMAC entry) in which a destination address and an output port are associated with each other in Table 0 (reference numeral 106) based on the received packet.
- DstMAC entry an entry
- Table 0 reference numeral 106
- the table storage unit 105 stores Table 0 (reference numeral 106) and Table 1 (reference numeral 109) to be pipeline-processed.
- Pipeline processing refers to a plurality of tables in a predetermined order, rewrites packet headers and metadata as necessary, and matches the matching conditions of entries in each table. Action) (see “4.1.1 Pipeline Processing” in Non-Patent Document 2).
- Table 1 (reference numeral 109) is referenced after Table 0 (reference numeral 106). Therefore, when a packet is received at the input port 104, an entry having a matching condition that matches the received packet is first searched from Table 0 (reference numeral 106).
- a DstMAC entry 107 and a mishit entry 108 are stored in Table 0 (reference numeral 106).
- the DstMAC entry 107 corresponds to the first entry described above, and is set by a destination learning unit (not shown) of the communication node 102 during operation.
- a packet in which the source MAC (Media Access Control) address (SrcMAC) is X, the destination MAC address (DstMAC) is Y, and the VLAN ID (Virtual Local Network ID) is Z (hereinafter referred to as ⁇ SrcMAC: X, DstMAC: Y, VID: Z ⁇ )) flows from the input port: A, the destination learning unit of the communication node adds the following entry to Table 0 (reference numeral 106).
- Write-Metadata instructs to perform a process of setting a flag “1” indicating that it matches (hits) the matching condition of the DstMAC entry as metadata.
- the mis-hit entry 108 is an entry (fourth entry) set by the controller at the start of operation.
- the received packet does not hit any learned DstMAC entry 107, it is instructed to search for an entry with reference to Table 1 (reference numeral 109).
- an SrcMAC entry 110 and a broadcast entry 111 are stored in Table1 (reference numeral 109).
- the communication node 102 uses the DstMAC entry 107 to write-action for packets that hit the DstMAC entry 107 and the SrcMAC entry 110.
- SrcMAC input port
- VID VID
- the unicast transfer operation from the port A set as the write-action in the DstMAC entry 107 is performed only by the fact that the DstMAC entry 107 is hit.
- the broadcast entry 111 is an entry (third entry) set by the controller at the start of operation.
- a packet that does not hit any SrcMAC entry 110 by the broadcast entry 111 (including a case where the DstMAC entry 107 is not hit and the flag “1” is not set in Metadata) is set by the control device 101. Forwarded on the broadcast route.
- the packet processing unit (not shown) of the communication node 102 sequentially refers to Table 0 (reference numeral 106) and Table 1 (reference numeral 109) of the table storage unit 105, and sends a packet to the determined port. Output.
- DstMAC entry 107 No hit / SrcMAC entry 110: No hit
- the packet processing unit (not shown) of the communication node 102 conforms to the packet received from the input port: B from Table 0 (reference numeral 106). Search for entries with matching criteria. Since the DstMAC entry 107 does not exist, the search for Table1 (reference numeral 109) is started without hitting the miss-hit entry 108 and setting a flag in Metadata. Even in the search for Table 1 (reference numeral 109), the SrcMAC entry 110 having a matching condition that matches the received packet does not exist, and the broadcast entry 111 is hit and the packet is broadcast.
- DstMAC entry 107 Hit / SrcMAC entry 110: No hit
- DstMAC entry 107 No hit / SrcMAC entry 110: Hit
- the packet processing unit (not shown) of the communication node 102 conforms to the packet received from the input port: B from Table 0 (reference numeral 106). Search for entries with matching conditions. Since the DstMAC entry 107 does not exist, the search for Table1 (reference numeral 109) is started without hitting the miss-hit entry 108 and setting a flag in Metadata. Table 1 (reference numeral 109) has an SrcMAC entry 110 that has a matching condition that matches the SrcMAC address of the received packet, but because the flag is not set in Metadata, it will not match, and finally, The packet is broadcast upon hitting the broadcast entry 111.
- DstMAC entry 107 Hit / SrcMAC entry 110: In case of hit
- the function of the communication node described above is a computer that causes a computer mounted on the communication node to execute the above-described processes using its hardware. It can also be realized by a program.
- FIG. 5 is a diagram for explaining the operation (topology search) of the first embodiment.
- the control apparatus 101 causes a packet for topology search to be transmitted from all ports of the communication nodes 1021 to 1024 (for example, the Pakcet-Out message of Non-Patent Document 2 can be used).
- the arrow line in FIG. 5 indicates the flow of the topology search packet transmitted to the communication node 1021 (the amount transferred to the communication node 1023 is not displayed).
- the topology search packet contains information for uniquely identifying the source communication node.
- the topology search packet transferred from the communication node 1021 to the communication node 1022 is transferred from the communication node 1022 to the control device 101 (for example, reported in a Pakcet-In message in Non-Patent Document 2).
- the control apparatus 101 confirms that a link is connected between the communication node 1021 and the communication node 1022 based on information (information for uniquely identifying the communication node described above) included in the topology search packet received from the communication node 1022. learn.
- the control device 101 learns a port of a communication node that is link-connected between communication nodes as an inward port (a port that is not connected to the outside).
- the communication node 1021 also transmits a topology search packet to the terminal 1031, but this packet is not returned to the control device 101.
- the control device 101 cannot receive a topology search packet from another communication node for a certain period of time, it learns that the corresponding port of the communication node 1021 is connected to the outside of the network.
- the control device 101 learns a port connected to the outside of the network as an outward port (port connected to the outside).
- the network topology configured by the communication nodes 1021 to 1024 can be grasped.
- LLDP Link Layer Discovery Protocol
- the control apparatus 101 calculates a broadcast / multicast route (BCMC route) in the network.
- FIG. 6 is a diagram for explaining the operation (path calculation) of the first embodiment. First, the control device 101 calculates a BCMC route of a packet based on the network topology grasped as described above.
- control device 101 causes the communication node on the BCMC path to forward the packet received at the inbound port from the other inbound and outbound ports of the BCMC path (third entry). Is set in Table 1 (reference numeral 109) of the communication node on the route (dashed line in FIG. 6).
- control apparatus 101 generates a broadcast entry (third entry) for transferring a packet received at the outgoing port of the communication nodes 1021 to 1024 to the outgoing port and the port on the BCMC route, and performs communication on the route.
- a broadcast entry third entry
- Table1 reference numeral 109
- the communication node 1021 determines a transfer destination by referring to Table 0 (reference numeral 106) and Table 1 (reference numeral 109) in order. At this time, since there is no entry suitable for the packet from the terminal 1031 as the DstMAC entry 107, the communication node 1021 follows the broadcast entry 111 in the BCMC path and the outward port (when the outward port exists). Forward the packet.
- the communication nodes 1022 to 1024 that have received the packet at the inward port of the BCMC route use the packet source MAC address as a match condition, and set a flag in Metadata as an instruction, packet
- the DstMAC entry 107 that defines the transfer process from the receiving port of Table 1 and the search process of Table 1 (reference numeral 109) is generated and registered in Table 0 (reference numeral 106).
- the communication nodes 1022 to 1024 also perform transfer destination determination processing by sequentially referring to Table 0 (reference numeral 106) and Table 1 (reference numeral 109). Also in the communication nodes 1022 to 1024, there is no entry that matches the packet from the terminal 1031 as the DstMAC entry 107, so that the communication nodes 1022 to 1024 follow the broadcast entry 111 and the BCMC path and the outgoing port (outward port). Forward the packet.
- the packet transmitted from the terminal 1031 to the communication node 1021 is transferred to the terminal 1032 according to the arrow in FIG.
- the MAC address of the terminal 1031 has already been learned (the DstMAC entry 107 has been registered), and the MAC address of the terminals 1031 and 1032 is set as the source MAC address in Table 1 (reference numeral 109) as a match condition. Since the set SrcMAC entry has already been registered, the packet is transferred from the port specified in the DstMAC entry 107.
- the packet transmitted from the terminal 1032 to the communication node 1024 is transferred to the terminal 1032 according to the arrow line in FIG.
- packet transfer similar to that of the L2 switch is realized using a centralized control type network. Furthermore, in this embodiment, since the packet from other than the receiving port such as the L2 switch is not flooded, the unlearned packet is transferred through the BCMC route calculated based on the network topology by the control device 101. The occurrence of loops is also suppressed. Furthermore, in the above-described embodiment, although explanation is omitted, an increase in the number of entries can be suppressed by setting an appropriate timeout value in the DstMAC entry 107 and performing an aging process.
- control device 101 Upon receiving the notification, the control device 101 updates the network topology that has been grasped in the above (topology search) procedure based on the notified content.
- control device 101 recalculates the BCMC route in the same manner as the above (route calculation) procedure.
- the control apparatus 101 transfers a packet received at the outgoing port of the communication nodes 1021 to 1024 to the outgoing port and the port on the BCMC route (third entry). ) And set to Table1 (reference numeral 109) of the communication node on the route (dashed arrow in FIG. 9).
- control apparatus 101 instructs the communication nodes 1021 to 1024 to delete the entry for DstMAC storing the learned MAC address (the dashed line in FIG. 9).
- the MAC address is used as the matching condition for the first table (Table 0 (symbol 106)) and the second table (Table 1 (symbol 109)).
- Other addresses can be used as match conditions.
- an example using a VLAN ID, an input port, or the like as a match condition has been described. However, these items may be omitted, and other items may be added to the match condition. Is possible.
- the second table Table 1 (reference numeral 109)
- is set as the match condition Is also possible.
- a communication node that performs an aging process on at least the first entry based on a preset timeout value [Sixth embodiment] (Refer to the communication system according to the second viewpoint) [Seventh form] (Refer to the control device from the third viewpoint) [Eighth form] (Refer to the packet transfer method according to the fourth aspect above) [Ninth Embodiment] (Refer to the program from the fifth viewpoint above) Note that the sixth to ninth embodiments can be developed into the second to fifth embodiments in the same manner as the first embodiment.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Small-Scale Networks (AREA)
Abstract
Description
本発明は、日本国特許出願:特願2012-224713号(2012年10月10日出願)の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、通信ノード、通信システム、制御装置、パケット転送方法及びプログラムに関し、特に、制御装置により集中制御される通信ノード、通信システム、制御装置、パケット転送方法及びプログラムに関する。
続いて、第1の実施形態について図面を参照して詳細に説明する。図3は、第1の実施形態の通信システムの構成を示す図である。図3を参照すると、図3に示したようにデータ転送用リンクで接続された通信ノード1021~1024と、制御用リンクを介してこれらの通信ノード1021~1024を制御する制御装置101と、を含んだ構成が示されている。また、通信ノード1021には、端末1031が接続され、通信ノード1024には、端末1032が接続されている。
インストラクション:Write-Metadata=1
:Write-Action(OUTPUT=A)
:Goto Table=1
インストラクション:無し
インストラクション:無し
マッチ条件:DstMAC=X かつ VID=Z
インストラクション:Write-Metadata=1
:Write-Action(OUTPUT=A)
:Goto Table=1
マッチ条件:Metadata=1 かつ Inport=B かつ SrcMAC=Y かつ VID=Z
インストラクション:無し
通信ノード102のパケット処理部(不図示)は、Table0(符号106)から、入力ポート:Bから受信したパケットに適合するマッチ条件を持つエントリを検索する。DstMAC用エントリ107が存在していないため、ミスヒット用エントリ108にヒットして、Metadataにフラグが立てられることなく、Table1(符号109)の検索が開始される。Table1(符号109)の検索においても、受信パケットに適合するマッチ条件を持つSrcMAC用エントリ110が存在しておらず、ブロードキャスト用エントリ111にヒットしてパケットはブロードキャストされる。
通信ノード102のパケット処理部(不図示)は、Table0(符号106)から、入力ポート:Bから受信したパケットに適合するマッチ条件を持つエントリを検索する。受信パケットに適合するDstMAC用エントリ107が見つかったため、パケット処理部(不図示)は、そのインストラクションフィールドの内容(Write-Metadata=1、Write-Action(OUTPUT=A))を実行した上で、Table1(符号109)の検索を開始する。しかしながら、Table1(符号109)の検索の結果、受信パケットに適合するマッチ条件を持つSrcMAC用エントリ110が存在しておらず、ブロードキャスト用エントリ111にヒットしてパケットはブロードキャストされる。
通信ノード102のパケット処理部(不図示)は、Table0(符号106)から、入力ポート:Bから受信したパケットに適合するマッチ条件を持つエントリを検索する。DstMAC用エントリ107が存在していないため、ミスヒット用エントリ108にヒットして、Metadataにフラグが立てられることなく、Table1(符号109)の検索が開始される。Table1(符号109)には、受信パケットのSrcMACアドレスに適合するマッチ条件を持つSrcMAC用エントリ110があるのだが、Metadataにフラグが立てられていないため、マッチすることにならず、最終的に、ブロードキャスト用エントリ111にヒットしてパケットはブロードキャストされる。
通信ノード102のパケット処理部(不図示)は、Table0(符号106)から、入力ポート:Bから受信したパケットに適合するマッチ条件を持つエントリを検索する。受信パケットに適合するDstMAC用エントリ107が見つかったため、パケット処理部(不図示)は、そのインストラクションフィールドの内容(Write-Metadata=1、Write-Action(OUTPUT=A))を実行した上で、Table1(符号109)の検索を開始する。Table1(符号109)の検索の結果、受信パケットのSrcMACアドレス及びMetadataの内容に適合するマッチ条件を持つSrcMAC用エントリ110が見つかり、最終的に、パケットは出力ポート=Aから出力(ユニキャスト)される。
図5は、第1の実施形態の動作(トポロジ検索)を説明するための図である。まず、制御装置101は、通信ノード1021~1024のすべてのポートからトポロジ探索用のパケットを送信させる(例えば、非特許文献2のPakcet-Outメッセージを用いることができる)。図5の矢線は通信ノード1021に送信されたトポロジ探索用のパケットの流れ(通信ノード1023に転送された分は非表示)を示している。トポロジ探索用パケットには送信元の通信ノードを一意に識別する情報が入っている。
上記のようにしてネットワークトポロジの把握が完了すると、制御装置101は、ネットワークにおけるブロードキャスト/マルチキャスト用経路(BCMC経路)を計算する。図6は、第1の実施形態の動作(経路計算)を説明するための図である。まず、制御装置101は、上記のようにして把握したネットワークトポロジに基づいて、パケットのBCMC経路を計算する。
その後、運用中の任意のタイミングで、端末1031が、通信ノード1021に対してパケットを送信すると、通信ノード1021は、宛先学習部にて、パケットの送信元MACアドレスをマッチ条件とし、インストラクションとして、Metadataにフラグを立てる処理、パケットの受信ポートからの転送処理、Table1(符号109)の検索処理を定めたDstMAC用エントリ107を生成し、Table0(符号106)に登録する。
その後、端末1031から受信したパケットを受信した端末1032が、端末1032宛てのパケットを通信ノード1024に送信すると、通信ノード1024は、端末1031のMACアドレスを学習済みであり(DstMAC用エントリ107を登録済み)、Table1(符号109)に端末1031、1032のMACアドレスを送信元MACアドレスとしてマッチ条件に設定したSrcMAC用エントリを登録済みであるため、DstMAC用エントリ107に指定されたポートからパケットを転送する。
ここでは、図9の通信ノード1021と通信ノード1022との間のリンクに障害が発生した場合について説明する。まず、通信ノード1021と通信ノード1022が制御装置101に対し、ポートダウンを通知し、ブロードキャスト経路の再計算と、必要なエントリの再設定を要求する。
[第1の形態]
(上記第1の視点による通信ノード参照)
[第2の形態]
第1の形態において、
前記第2のエントリのマッチ条件に、ネットワークに接続されている端末のアドレスが設定されている通信ノード。
[第3の形態]
第1又は第2の形態において、
前記第1のテーブルに、受信パケットに適合するマッチ条件を持つ第1のエントリがない場合に前記第2のテーブルの検索を指示する第3のエントリが登録されている通信ノード。
[第4の形態]
第1から第3いずれか一の形態において、
他の通信ノードとの間のリンクに障害が発生した場合に、前記制御装置に対し、ブロードキャスト経路の再計算と、前記第2、第4のエントリの再設定を要求する通信ノード。
[第5の形態]
第1から第4いずれか一の形態において、
少なくとも前記第1のエントリについて、予め設定されたタイムアウト値に基づいて、エージング処理を行う通信ノード。
[第6の形態]
(上記第2の視点による通信システム参照)
[第7の形態]
(上記第3の視点による制御装置参照)
[第8の形態]
(上記第4の視点によるパケット転送方法参照)
[第9の形態]
(上記第5の視点によるプログラム参照)
なお、上記第6~第9の形態は、第1の形態と同様に、第2~第5の形態に展開することが可能である。
11 第1のテーブル
12 第2のテーブル
13 宛先学習部
14 パケット処理部
20、101 制御装置
103 プロトコル制御部
104 入力ポート
105 テーブル記憶部
106 Table0
107 DstMAC用エントリ(第1のエントリ)
108 ミスヒット用エントリ(第4のエントリ)
109 Table1
110 SrcMAC用エントリ(第2のエントリ)
111 ブロードキャスト用エントリ(第3のエントリ)
112 出力ポート
A~C、1031、1032 端末
Claims (10)
- 少なくとも宛先アドレスを含むマッチ条件と、前記マッチ条件に適合するパケットの出力先を対応付けた第1のエントリを格納する第1のテーブルと、
所定の制御装置から設定されたマッチ条件を持つ第2のエントリを格納する第2のテーブルと、
受信パケットの送信元と受信ポートとの組を、前記第1のテーブルのマッチ条件と出力先とを対応付けた第1のエントリとして登録する宛先学習部と、
前記第1、第2のテーブルから受信パケットに適合するマッチ条件を持つエントリがそれぞれ見つかった場合に、前記第1のテーブルに定められた出力先へパケットを転送し、
前記第1、第2のテーブルの少なくとも一方で受信パケットに適合するマッチ条件を持つエントリが見つからない場合、前記制御装置から設定された第3のエントリに従い受信パケットをブロードキャストするパケット処理部と、
を備える通信ノード。 - 前記第2のエントリのマッチ条件には、ネットワークに接続されている端末のアドレスが設定されている請求項1の通信ノード。
- 前記第1のテーブルに、受信パケットに適合するマッチ条件を持つ第1のエントリがない場合に前記第2のテーブルの検索を指示する第3のエントリが登録されている請求項1又は2の通信ノード。
- 他の通信ノードとの間のリンクに障害が発生した場合に、前記制御装置に対し、ブロードキャスト経路の再計算と、前記第2、第4のエントリの再設定を要求する請求項1から3いずれか一の通信ノード。
- 少なくとも前記第1のエントリについて、予め設定されたタイムアウト値に基づいて、エージング処理を行う請求項1から4いずれか一の通信ノード。
- 少なくとも宛先アドレスを含むマッチ条件と、前記マッチ条件に適合するパケットの出力先を対応付けた第1のエントリを格納する第1のテーブルと、
所定のマッチ条件を持つ第2のエントリを格納する第2のテーブルと、
受信パケットの送信元と受信ポートとの組を、前記第1のテーブルのマッチ条件と出力先とを対応付けた第1のエントリとして登録する宛先学習部と、
前記第1、第2のテーブルから受信パケットに適合するマッチ条件を持つエントリがそれぞれ見つかった場合に、前記第1のテーブルに定められた出力先へパケットを転送し、
前記第1、第2のテーブルの少なくとも一方で受信パケットに適合するマッチ条件を持つエントリが見つからない場合、第3のエントリに従い受信パケットをブロードキャストするパケット処理部と、
を備える複数の通信ノードと、
前記通信ノードに、前記第2、第3のエントリを設定する制御装置と、を含む通信システム。 - 少なくとも宛先アドレスを含むマッチ条件と、前記マッチ条件に適合するパケットの出力先を対応付けた第1のエントリを格納する第1のテーブルと、
所定のマッチ条件を持つ第2のエントリを格納する第2のテーブルと、
受信パケットの送信元と受信ポートとの組を、前記第1のテーブルのマッチ条件と出力先とを対応付けた第1のエントリとして登録する宛先学習部と、
前記第1、第2のテーブルから受信パケットに適合するマッチ条件を持つエントリがそれぞれ見つかった場合に、前記第1のテーブルに定められた出力先へパケットを転送し、
前記第1、第2のテーブルの少なくとも一方で受信パケットに適合するマッチ条件を持つエントリが見つからない場合、第3のエントリに従い受信パケットをブロードキャストするパケット処理部と、を備える複数の通信ノードと、接続され、
前記複数の通信ノードによって構成されるネットワークにブロードキャスト経路を計算し、該ブロードキャスト経路に従い、前記通信ノードの少なくとも第2のテーブルにエントリを設定する制御装置。 - 通信ノード間のリンクに障害が発生した場合に、ブロードキャスト経路の再計算と、前記第2、第4のエントリの再設定を実行する請求項7の制御装置。
- 少なくとも宛先アドレスを含むマッチ条件と、前記マッチ条件に適合するパケットの出力先を対応付けた第1のエントリを格納する第1のテーブルと、
所定のマッチ条件を持つ第2のエントリを格納する第2のテーブルと、
受信パケットの送信元と受信ポートとの組を、前記第1のテーブルのマッチ条件と出力先とを対応付けた第1のエントリとして登録する宛先学習部と、
パケット処理部とを備える通信ノードが、
前記第1、第2のテーブルから受信パケットに適合するマッチ条件を持つエントリがそれぞれ見つかった場合に、前記第1のテーブルに定められた出力先へパケットを転送するステップと、
前記第1、第2のテーブルの少なくとも一方で受信パケットに適合するマッチ条件を持つエントリが見つからない場合、第3のエントリに従い受信パケットをブロードキャストするステップと、を含むパケット転送方法。 - 少なくとも宛先アドレスを含むマッチ条件と、前記マッチ条件に適合するパケットの出力先を対応付けた第1のエントリを格納する第1のテーブルと、
所定のマッチ条件を持つ第2のエントリを格納する第2のテーブルと、
受信パケットの送信元と受信ポートとの組を、前記第1のテーブルのマッチ条件と出力先とを対応付けた第1のエントリとして登録する宛先学習部と、
パケット処理部とを備える通信ノードに搭載されたコンピュータに、
前記第1、第2のテーブルから受信パケットに適合するマッチ条件を持つエントリがそれぞれ見つかった場合に、前記第1のテーブルに定められた出力先へパケットを転送する処理と、
前記第1、第2のテーブルの少なくとも一方で受信パケットに適合するマッチ条件を持つエントリが見つからない場合、第3のエントリに従い受信パケットをブロードキャストする処理と、を実行させるプログラム。
Priority Applications (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
ES13844836.0T ES2660738T3 (es) | 2012-10-10 | 2013-10-09 | Nodo de comunicaciones, sistema de comunicaciones, dispositivo de control, método de transferencia de paquetes, y programa |
CA2888136A CA2888136A1 (en) | 2012-10-10 | 2013-10-09 | Communication node, communication system, control apparatus, packet forwarding method, and program |
CN201380052800.1A CN104737503B (zh) | 2012-10-10 | 2013-10-09 | 通信节点、通信系统、控制装置以及包转发方法 |
US14/426,626 US9819584B2 (en) | 2012-10-10 | 2013-10-09 | Communication node, communication system, control apparatus, packet forwarding method, and program |
RU2015117659/08A RU2581558C1 (ru) | 2012-10-10 | 2013-10-09 | Узел связи, система связи, устройство управления, способ пересылки пакета и программа |
JP2014540867A JP5935897B2 (ja) | 2012-10-10 | 2013-10-09 | 通信ノード、通信システム、制御装置、パケット転送方法及びプログラム |
EP13844836.0A EP2908483B1 (en) | 2012-10-10 | 2013-10-09 | Communication node, communication system, control device, packet transfer method, and program |
IN2007DEN2015 IN2015DN02007A (ja) | 2012-10-10 | 2013-10-09 | |
KR1020157011971A KR101707355B1 (ko) | 2012-10-10 | 2013-10-09 | 통신 노드, 통신 시스템, 제어 장치, 패킷 전송 방법 및 프로그램 |
BR112015007232A BR112015007232A2 (pt) | 2012-10-10 | 2013-10-09 | nó de comunicação, sistema de comunicação, aparelho de controle, método de encaminhamento de pacote, e programa |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012-224713 | 2012-10-10 | ||
JP2012224713 | 2012-10-10 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014057977A1 true WO2014057977A1 (ja) | 2014-04-17 |
Family
ID=50477444
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2013/077476 WO2014057977A1 (ja) | 2012-10-10 | 2013-10-09 | 通信ノード、通信システム、制御装置、パケット転送方法及びプログラム |
Country Status (11)
Country | Link |
---|---|
US (1) | US9819584B2 (ja) |
EP (1) | EP2908483B1 (ja) |
JP (1) | JP5935897B2 (ja) |
KR (1) | KR101707355B1 (ja) |
CN (1) | CN104737503B (ja) |
BR (1) | BR112015007232A2 (ja) |
CA (1) | CA2888136A1 (ja) |
ES (1) | ES2660738T3 (ja) |
IN (1) | IN2015DN02007A (ja) |
RU (1) | RU2581558C1 (ja) |
WO (1) | WO2014057977A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016019052A (ja) * | 2014-07-04 | 2016-02-01 | 富士通株式会社 | パケット処理装置、制御プログラム、及びパケット処理装置の制御方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014084250A1 (ja) * | 2012-11-28 | 2014-06-05 | 日本電気株式会社 | スイッチ装置、vlan設定管理方法及びプログラム |
EP3110085A4 (en) * | 2014-02-19 | 2017-10-25 | NEC Corporation | Network control method, network system, device, and program |
US10848420B2 (en) * | 2018-02-12 | 2020-11-24 | Cisco Technology, Inc. | Dynamic forwarding features in network elements |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011188433A (ja) * | 2010-03-11 | 2011-09-22 | Nec Corp | 通信装置、通信制御方法、及び通信制御用プログラム |
WO2012070173A1 (en) * | 2010-11-22 | 2012-05-31 | Nec Corporation | Communication system, communication device, controller, and method and program for controlling forwarding path of packet flow |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100559979B1 (ko) * | 2003-04-03 | 2006-03-13 | 엘지전자 주식회사 | 이동통신 시스템에서의 메시지 전송방법 |
US20050141537A1 (en) * | 2003-12-29 | 2005-06-30 | Intel Corporation A Delaware Corporation | Auto-learning of MAC addresses and lexicographic lookup of hardware database |
US7801125B2 (en) | 2004-10-22 | 2010-09-21 | Cisco Technology, Inc. | Forwarding table reduction and multipath network forwarding |
JP4481147B2 (ja) * | 2004-10-28 | 2010-06-16 | 富士通株式会社 | Macアドレス学習装置 |
US8565124B2 (en) * | 2005-03-04 | 2013-10-22 | Nec Corporation | Node, network, correspondence relationship generation method and frame transfer program |
US8116312B2 (en) | 2006-02-08 | 2012-02-14 | Solarflare Communications, Inc. | Method and apparatus for multicast packet reception |
US8098677B1 (en) | 2009-07-31 | 2012-01-17 | Anue Systems, Inc. | Superset packet forwarding for overlapping filters and related systems and methods |
WO2011037105A1 (ja) * | 2009-09-25 | 2011-03-31 | 日本電気株式会社 | コンテンツベーススイッチシステム、及びコンテンツベーススイッチ方法 |
JP5446040B2 (ja) * | 2009-09-28 | 2014-03-19 | 日本電気株式会社 | コンピュータシステム、及び仮想マシンのマイグレーション方法 |
WO2011087085A1 (ja) * | 2010-01-14 | 2011-07-21 | 日本電気株式会社 | 計算機、ネットワーク接続切替え方法およびプログラム |
EP2572473B1 (en) * | 2010-05-19 | 2014-02-26 | Telefonaktiebolaget L M Ericsson (PUBL) | Methods and apparatus for use in an openflow network |
US8391289B1 (en) * | 2010-10-29 | 2013-03-05 | Hewlett-Packard Development Company, L.P. | Managing a forwarding table in a switch |
US8873398B2 (en) * | 2011-05-23 | 2014-10-28 | Telefonaktiebolaget L M Ericsson (Publ) | Implementing EPC in a cloud computer with openflow data plane |
US8804490B2 (en) * | 2011-07-29 | 2014-08-12 | Telefonaktiebolaget L M Ericsson (Publ) | Controller placement for fast failover in the split architecture |
US9288555B2 (en) * | 2011-11-01 | 2016-03-15 | Plexxi Inc. | Data center network architecture |
US8971338B2 (en) * | 2012-01-09 | 2015-03-03 | Telefonaktiebolaget L M Ericsson (Publ) | Expanding network functionalities for openflow based split-architecture networks |
CN102594664B (zh) * | 2012-02-02 | 2015-06-17 | 杭州华三通信技术有限公司 | 流量转发方法和装置 |
US8705536B2 (en) * | 2012-03-05 | 2014-04-22 | Telefonaktiebolaget L M Ericsson (Publ) | Methods of operating forwarding elements including shadow tables and related forwarding elements |
US9143557B2 (en) * | 2012-06-27 | 2015-09-22 | Juniper Networks, Inc. | Feedback loop for service engineered paths |
US9036638B2 (en) * | 2012-08-09 | 2015-05-19 | International Business Machines Corporation | Avoiding unknown unicast floods resulting from MAC address table overflows |
US9071529B2 (en) * | 2012-10-08 | 2015-06-30 | Telefonaktiebolaget L M Ericsson (Publ) | Method and apparatus for accelerating forwarding in software-defined networks |
-
2013
- 2013-10-09 KR KR1020157011971A patent/KR101707355B1/ko active IP Right Grant
- 2013-10-09 CA CA2888136A patent/CA2888136A1/en not_active Abandoned
- 2013-10-09 IN IN2007DEN2015 patent/IN2015DN02007A/en unknown
- 2013-10-09 EP EP13844836.0A patent/EP2908483B1/en not_active Not-in-force
- 2013-10-09 RU RU2015117659/08A patent/RU2581558C1/ru active
- 2013-10-09 JP JP2014540867A patent/JP5935897B2/ja not_active Expired - Fee Related
- 2013-10-09 CN CN201380052800.1A patent/CN104737503B/zh not_active Expired - Fee Related
- 2013-10-09 US US14/426,626 patent/US9819584B2/en active Active
- 2013-10-09 BR BR112015007232A patent/BR112015007232A2/pt not_active IP Right Cessation
- 2013-10-09 WO PCT/JP2013/077476 patent/WO2014057977A1/ja active Application Filing
- 2013-10-09 ES ES13844836.0T patent/ES2660738T3/es active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011188433A (ja) * | 2010-03-11 | 2011-09-22 | Nec Corp | 通信装置、通信制御方法、及び通信制御用プログラム |
WO2012070173A1 (en) * | 2010-11-22 | 2012-05-31 | Nec Corporation | Communication system, communication device, controller, and method and program for controlling forwarding path of packet flow |
Non-Patent Citations (3)
Title |
---|
NICK MCKEOWN, OPENFLOW: ENABLING INNOVATION IN CAMPUS NETWORKS, 4 October 2012 (2012-10-04), Retrieved from the Internet <URL:http://wwwopenfloworg/documents/openflow-wp-latestpdf> |
OPENFLOW SWITCH SPECIFICATION, 4 October 2012 (2012-10-04), Retrieved from the Internet <URL:http://www.openflow.org/documents/openflow-spec-vl.I.O.pdf> |
See also references of EP2908483A4 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016019052A (ja) * | 2014-07-04 | 2016-02-01 | 富士通株式会社 | パケット処理装置、制御プログラム、及びパケット処理装置の制御方法 |
Also Published As
Publication number | Publication date |
---|---|
ES2660738T3 (es) | 2018-03-26 |
CN104737503A (zh) | 2015-06-24 |
RU2581558C1 (ru) | 2016-04-20 |
US9819584B2 (en) | 2017-11-14 |
EP2908483B1 (en) | 2017-11-29 |
BR112015007232A2 (pt) | 2017-07-04 |
JPWO2014057977A1 (ja) | 2016-09-05 |
EP2908483A4 (en) | 2016-05-25 |
US20150256457A1 (en) | 2015-09-10 |
EP2908483A1 (en) | 2015-08-19 |
CN104737503B (zh) | 2018-01-02 |
JP5935897B2 (ja) | 2016-06-15 |
KR101707355B1 (ko) | 2017-02-15 |
IN2015DN02007A (ja) | 2015-08-14 |
KR20150068451A (ko) | 2015-06-19 |
CA2888136A1 (en) | 2014-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10075371B2 (en) | Communication system, control apparatus, packet handling operation setting method, and program | |
JP5850068B2 (ja) | 制御装置、通信システム、通信方法およびプログラム | |
US10645006B2 (en) | Information system, control apparatus, communication method, and program | |
US20160006583A1 (en) | Control apparatus, communication system, switch control method and program | |
US20130282867A1 (en) | Information system, control apparatus, method of providing virtual network, and program | |
JP5858141B2 (ja) | 制御装置、通信装置、通信システム、通信方法及びプログラム | |
JP2014502794A (ja) | 通信経路制御システム、経路制御装置、通信経路制御方法および経路制御プログラム | |
JPWO2013039083A1 (ja) | 通信システム、制御装置および通信方法 | |
JP5725236B2 (ja) | 通信システム、ノード、パケット転送方法およびプログラム | |
JP5935897B2 (ja) | 通信ノード、通信システム、制御装置、パケット転送方法及びプログラム | |
WO2014129624A1 (ja) | 制御装置、通信システム、経路切替方法及びプログラム | |
US20190007279A1 (en) | Control apparatus, communication system, virtual network management method, and program | |
CA2867800A1 (en) | Control apparatus, communication system, node control method, and program | |
US20150256455A1 (en) | Communication system, path information exchange apparatus, communication node, forwarding method for path information and program | |
US20160094357A1 (en) | Control apparatus, computer system, communication control method, and program | |
JP6175766B2 (ja) | 通信ノード、制御装置、通信システム、エントリ集約方法及びプログラム | |
WO2014142081A1 (ja) | 転送ノード、制御装置、通信システム、パケット処理方法及びプログラム | |
JP2015128213A (ja) | 通信ノード、制御装置、通信システム、通信方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 13844836 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 14426626 Country of ref document: US |
|
REEP | Request for entry into the european phase |
Ref document number: 2013844836 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2013844836 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 2014540867 Country of ref document: JP Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 2888136 Country of ref document: CA |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
REG | Reference to national code |
Ref country code: BR Ref legal event code: B01A Ref document number: 112015007232 Country of ref document: BR |
|
ENP | Entry into the national phase |
Ref document number: 20157011971 Country of ref document: KR Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 2015117659 Country of ref document: RU Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 112015007232 Country of ref document: BR Kind code of ref document: A2 Effective date: 20150331 |