WO2014084216A1 - 制御装置、通信システム、通信方法及びプログラム - Google Patents

制御装置、通信システム、通信方法及びプログラム Download PDF

Info

Publication number
WO2014084216A1
WO2014084216A1 PCT/JP2013/081803 JP2013081803W WO2014084216A1 WO 2014084216 A1 WO2014084216 A1 WO 2014084216A1 JP 2013081803 W JP2013081803 W JP 2013081803W WO 2014084216 A1 WO2014084216 A1 WO 2014084216A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
control
control information
relay device
relay
Prior art date
Application number
PCT/JP2013/081803
Other languages
English (en)
French (fr)
Inventor
貴弘 中野
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to JP2014550201A priority Critical patent/JP6024761B2/ja
Priority to US14/647,428 priority patent/US10044671B2/en
Publication of WO2014084216A1 publication Critical patent/WO2014084216A1/ja
Priority to US16/039,087 priority patent/US10523629B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • H04L41/122Discovery or management of network topologies of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/60Software-defined switches
    • H04L49/606Hybrid ATM switches, e.g. ATM&STM, ATM&Frame Relay or ATM&IP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/033Topology update or discovery by updating distance vector protocols

Definitions

  • the present invention is based on a Japanese patent application: Japanese Patent Application No. 2012-258406 (filed on November 27, 2012), and the entire description of the application is incorporated in the present specification by reference.
  • the present invention relates to a control device, a communication system, a communication method, and a program, and more particularly, to a control device, a communication system, a communication method, and a program that realize communication by centrally controlling switches.
  • 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
  • Patent Document 1 discloses a method for reducing the load on the path control device corresponding to the open flow controller by making the timeout value of the flow entry different for each section of the packet communication path.
  • the OpenFlow switch By setting a flow entry instructing an output from a port corresponding to the destination MAC address to the OpenFlow switch of Non-Patent Documents 1 and 2 described above using the destination MAC address as a match condition, the OpenFlow switch is configured as a layer 2
  • the switches can be operated in the same manner as the switches (hereinafter, the layer 2 and the layer 3 are respectively referred to as “L2” and “L3”). According to this method, since the transmission source address is not specified in the match condition, there are advantages that the number of flow entries set in each switch can be reduced and the inquiry (Packet-In) to the OpenFlow controller can be greatly reduced. .
  • the above method has a problem that only L2 packet transfer can be supported. For example, when a certain machine recognizes that the communication partner belongs to a different subnet, a packet (L3 packet) with the default gateway MAC address as the destination MAC address for a default gateway (for example, an OpenFlow controller) Send. In this case, there arises a problem that the transfer method specialized for the L2 packet cannot transfer to the correct destination.
  • L3 packet a packet with the default gateway MAC address as the destination MAC address for a default gateway (for example, an OpenFlow controller) Send.
  • a default gateway for example, an OpenFlow controller
  • the L3 packet transmitted from the machine can be transferred to the correct destination.
  • the advantage of the transfer method specialized for the L2 packet may be lost.
  • the present invention provides a control device and communication that can contribute to a reduction in the number of entries of control information set in each relay device and a reduction in inquiries to the control device in a centralized control communication system represented by the above-described OpenFlow. It is an object to provide a system, a communication method, and a program.
  • the first control information for setting the first control information for transferring a packet between predetermined machines to the relay device on a predetermined route based on the address of the first layer When a packet having a destination address of a second layer higher than the first layer is received from one of the setting unit and the machine having the first control information set via the relay device , The first layer destination address of the packet having the second layer address as the destination address is converted into the first layer address defined in the first control information and transferred to the relay device And a second control information setting unit that sets second control information to be provided.
  • the relay device converts the first layer destination address of the packet having the second layer address as the destination address into the first layer address defined in the first control information.
  • a control device including a second control information setting unit that sets second control information to be transferred, and a relay device in which the first and second control information are set by the control device.
  • Second control for transferring the first layer destination address of the packet having the second layer address as the destination address after converting it to the first layer address defined in the first control information Setting information, and a communication method is provided.
  • This method is linked to a specific machine called a control device that controls a relay device by setting control information.
  • the relay device converts the first layer destination address of the packet having the second layer address as the destination address into the first layer address defined in the first control information.
  • 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 in the centralized control communication system, it is possible to contribute to a reduction in the number of entries of control information set in each relay device and a reduction in inquiries to the control device.
  • FIG. 10 is a continuation diagram of FIG. 10.
  • the present invention includes a first control information setting unit 11 and a second control information setting unit 12, and controls a plurality of relay apparatuses A to C. This can be realized by the control device 10A.
  • the first control information setting unit 11 sends the first layer address (L2 address in the example of FIG. 2) to the relay devices (relay devices A to C) on a predetermined route. Based on the above, first control information for transferring a packet between predetermined machines is set.
  • the first control information setting unit 11 sends the relay devices A to C from the machine A whose L2 address is 00: 00: 00: 00: AA to the L2 address is 00:00: Control information for instructing transfer of a packet to machine B, which is 00: 00: 00: BB, is set.
  • the second control information setting unit 12 starts from one of the machines A and B in which the first control information has been set via the relay device A (machine A in FIG. 3).
  • the relay apparatus A sends a packet having the second layer address as a destination address.
  • Second control information to be transferred after converting the destination address of the first layer into the address of the first layer defined in the first control information is set.
  • the L2 address of the control apparatus 10A of FIG. 3 that also operates as a router is set as the destination address of the first layer of the packet (L3 packet) having the second layer address as the destination address. Therefore, the relay device A performs the transfer operation after rewriting the L2 address of the control device 10A in FIG.
  • the relay device C transfers the first layer address as it is to the machine B without rewriting, but the relay device C uses the first layer address as the original. You may restore the contents.
  • FIG. 4 is a diagram illustrating the configuration of the communication system according to the first embodiment of this invention.
  • control information flow entry
  • the legacy network 1200 configured by the relay devices 1106 and 1107, the relay devices 1103 and 1104 arranged at the end points of the legacy network 1200, and the relay devices 1103 and 1104.
  • a configuration including the control device 100 that controls the relay devices 1103 and 1104 is shown.
  • terminal apparatuses 1102 and 1105 are connected to the relay apparatuses 1103 and 1104, respectively.
  • a maintenance terminal 1101 for managing legacy information and the like held by the control device 100 is connected to the control device 100.
  • a solid line in the figure indicates a transfer channel for transferring user data and the like, and a broken line in the figure indicates a control channel for sending and receiving control messages.
  • symbols P1 to P4 given in boxes indicating relay apparatuses 1103, 1104, 1106, and 1107 represent port numbers of the respective relay apparatuses.
  • the relay apparatuses 1103 and 1104 can be configured with devices such as the open flow switches of Non-Patent Documents 1 and 2 that operate according to control information set by the control apparatus 100.
  • the relay devices 1106 and 1107 are devices such as L2 switches that are not controlled by the control device 100.
  • the relay devices 1106 and 1107 hold an address table in which ports and destination L2 addresses are associated, and ports corresponding to L2 addresses of received packets Send a packet from The relay apparatuses 1106 and 1107 perform a destination learning operation on the address table when receiving a packet.
  • the legacy network 1200 includes a relay device that is not a control target, such as the L2 switch, and is not subjected to control from the control device 100.
  • the terminal devices 1102 and 1105 are various terminal devices used by the user. In the present embodiment, an example of realizing communication between the terminal devices 1102 and 1105 will be described. However, a device other than the terminal device may be a communication partner. For example, the terminal device may communicate with various servers or may be so-called M2M communication between machines.
  • FIG. 5 is a diagram illustrating a configuration example of the control device 100.
  • the relay device communication unit 101 sends and receives messages such as control information (flow entry) settings for the relay devices 1103 and 1104 and control information (flow entry) setting requests from the relay devices 1103 and 1104.
  • the relay device communication unit 101 instructs the relay devices 1103 and 1104 to transmit a topology confirmation packet, and receives a response packet for the topology confirmation packet from the relay devices 1103 and 1104.
  • the OpenFlow protocol of Non-Patent Document 2 can also be used.
  • the topology management unit 102 manages the topology table 103 illustrated in FIG. 6 based on the transmission result of the topology confirmation packet by the relay apparatuses 1103 and 1104.
  • the update process of the topology table 103 will be described in detail later.
  • the maintenance terminal communication unit 104 transmits an input screen for legacy connection port information and legacy identification information to the maintenance terminal 1101.
  • the maintenance terminal communication unit 104 transfers them to the legacy management unit 105.
  • the legacy management unit 105 manages information on legacy networks connected to the relay apparatuses 1103 and 1104 that are controlled by the control apparatus 100.
  • FIG. 7 is a diagram illustrating a configuration example of the legacy management table 106.
  • the legacy management table 106 of FIG. 7 includes identification information of the legacy network (here, “1200” as the code of the legacy network), an identification VLAN (Virtual Local Area Network) ID, and the control device 100's ID.
  • An entry for storing an entry that associates the connection ports of the relay apparatuses 1103 and 1104 to be controlled is stored.
  • a value of “3000” is set as the identification VLAN (ID)
  • the port P2 of the relay device 1103 and the port P2 of the relay device 1104 are set as connection ports as shown in FIG. Is set. That is, the entry of FIG. 7 indicates that the legacy network of the identification information 1200 to which the VLAN ID “3000” is assigned is connected to the port P2 of the relay apparatus 1103 and the port P2 of the relay apparatus 1104.
  • the legacy link management unit 107 reads the connection port information from the corresponding entry in the legacy management table 106 to obtain the legacy network.
  • Information on connection links hereinafter referred to as “legacy links”.
  • the legacy link management unit 107 corresponds to the specific link management unit described above.
  • the legacy link can also be referred to as “virtual link between relay apparatuses connected via the legacy network”.
  • FIG. 8 is a diagram illustrating a configuration example of the legacy link management table 108.
  • the legacy link management table 108 of FIG. 8 for each connection port read from the legacy management table 106, an entry for storing an entry in which the MAC address (Media Access Control Address) of the port and the connection state are associated is stored. ing.
  • the MAC addresses of the relay apparatuses 1103 and 1104 can be obtained by making an inquiry to the relay apparatuses 1103 and 1104, and the connection state can be detected based on the transmission result of the legacy link establishment packet described later.
  • the route management unit 109 refers to the topology table 103 and the legacy management table 106 to calculate and manage a route between relay devices under its own device. Further, the route management unit 109 generates control information for causing the relay device on the calculated route to perform packet transfer along the route, and causes the relay device communication unit 101 to set the control information. .
  • control device 100 described above can be realized with a configuration in which a management function of a legacy network, a function of determining a packet conversion content considering the legacy network, and the like are added based on the OpenFlow controllers of Non-Patent Documents 1 and 2.
  • Each unit (processing unit) of the control device 100 illustrated in FIG. 5 can also be realized by a computer program that causes a computer constituting the control device 100 to execute the above-described processes using the hardware.
  • FIG. 9 is a flowchart for explaining the topology collection operation of the control device 100.
  • the control device 100 instructs the relay devices 1103 and 1104 to transmit a topology confirmation packet from each port (STEP 1).
  • a packet for confirming the topology a packet of a routing protocol such as LLDP (Link Layer Discovery Protocol) or OSPF (Open Shortest Path First) can be used.
  • a packet-out message of Non-Patent Document 2 can be used as a packet output instruction from the control apparatus 100 to the relay apparatuses 1103 and 1104.
  • the relay devices 1103 and 1104 when the relay devices 1103 and 1104 receive these topology confirmation packets from other relay devices, they notify the control device 100 that these topology confirmation packets have been received and their reception ports ( (Step 2).
  • the Packet-In message of Non-Patent Document 2 can be used to report a received packet from the relay apparatuses 1103 and 1104 to the control apparatus 100.
  • FIG. 6 shows a state after the transmission of the topology confirmation packet.
  • the topology confirmation packets transmitted from the ports P1 and P2 of the relay apparatuses 1103 and 1104 are received by the terminals 1102 and 1105 or the relay apparatuses 1106 and 1107 of the legacy network. Since these devices do not transmit the reception confirmation of the topology confirmation packet to the control device 100, the control device 100 sets “no” for the relay devices adjacent to each port of each relay device. Next, the control device 100 records the topology information generated in STEP 3 in the topology table 103 (STEP 4).
  • 10 and 11 are flowcharts showing the operation of the control device 100 when information related to the legacy network is set by the user.
  • the user designates legacy identification information, identification VLAN, and connection port information via the maintenance terminal 1101 (STEP 11).
  • legacy identification information 1200
  • identification VLAN 3000
  • connection port information 1103 P2 and 1104 P2.
  • the control device 100 that has received the information transmitted from the maintenance terminal 1101 records the information in the legacy management table 106 shown in FIG. 7 (STEP 12).
  • the control device 100 acquires the MAC address of the port specified in the connection port information of the entry newly registered in the legacy management table 106 from the corresponding relay devices 1103 and 1104 (STEP 13).
  • the control device 100 records these pieces of information in the legacy link management table 108 shown in FIG. 8 (STEP 14).
  • the MAC address (MAC-A) of the port P2 of the relay apparatus 1103 and the MAC address (MAC-B) of the port P2 of the relay apparatus 1104 are acquired, and correspond to the port information as shown in FIG. Shall be recorded.
  • control device 100 creates control information instructing the discard of the packet from the port connected to the legacy network (STEP 15 in FIG. 11).
  • FIG. 12 is an example of control information created based on the entries of the legacy link management table 108 shown in FIG.
  • the upper part of FIG. 12 shows an example of control information set in the relay apparatus 1103.
  • the control information in FIG. 12 is arranged in order from the lowest priority. Therefore, when the relay apparatus 1103 receives a packet whose source MAC address (SMAC) is MAC-B (MAC address of the port P2 of the relay apparatus 1104) from the port P2, the relay apparatus 1103 performs an operation of discarding the packet. Further, the control information in which the match condition is “none” defines the processing contents to be executed when the priority does not match any of the higher-order control information. For this reason, the relay apparatus 1103 performs an operation of discarding other packets even when receiving other packets from the port P2.
  • SMAC source MAC address
  • MAC-B MAC address of the port P2 of the relay apparatus 1104
  • FIG. 12 shows an example of control information set in the relay apparatus 1104.
  • SMAC source MAC address
  • MAC-A MAC address of the port P2 of the relay apparatus 1103
  • the relay apparatus 1104 performs an operation of discarding the packet.
  • the relay device 1104 is also provided with control information indicating that the match condition is “none”, the relay device 1104 performs an operation of discarding the packet even when receiving another packet from the port P2.
  • control device 100 sets the control information created as described above in the relay devices 1103 and 1104 (STEP 16 in FIG. 11).
  • FIG. 13 is a flowchart for explaining the topology update operation by the control device of this embodiment.
  • the control apparatus 100 instructs the relay apparatuses 1103 and 1104 to transmit legacy link establishment packets from the respective legacy connection ports (STEP 21).
  • the legacy link establishment packet a packet similar to the above-described topology confirmation packet can be used.
  • the legacy network relay devices 1106 and 1107 learn the address table by the legacy link establishment packet.
  • the relay apparatuses 1103 and 1104 receive these legacy link establishment packets from other relay apparatuses via the legacy network 1200, the relay link establishment packets are transmitted according to the control information set in STEP 16 of FIG. Discard.
  • the control apparatus 100 confirms that the legacy link establishment packet has been discarded by inquiring the relay apparatuses 1103 and 1104 whether or not the legacy link establishment packet has been discarded (STEP 22).
  • the control device 100 indicates that the relay device 1103 and the relay device 1104 are connected via the legacy network 1200. Is recognized (STEP 23).
  • FIG. 14 is a diagram illustrating the updated topology table.
  • the adjacent relay device 1104 and its port information P2 are additionally recorded as the link information of the port P2 of the relay device 1103.
  • the adjacent relay device 1103 and its port information P2 are additionally recorded as the link information of the port P2 of the relay device 1104.
  • FIG. 15 is a flowchart for explaining the operation when it is not possible to confirm that the legacy link establishment packet has been discarded.
  • STEPs 21 and 22 in FIG. 15 are the same as STEPs 21 and 22 in FIG.
  • the control device 100 recognizes that the link between the relay device 1103 and the relay device 1104 has been disconnected (STEP 33).
  • control device 100 updates the topology table 103 (STEP 34). As shown in FIG. 6, the content after the update is in a state in which the adjacent relay device and its port information are deleted from the link information of the port P2 of the relay device 1103 and the port P2 of the relay device 1104.
  • FIG. 16 is a flowchart for explaining a user packet transfer operation in the communication system according to the first embodiment of this invention.
  • the terminal device 1102 (1105) transmits a packet addressed to the terminal device 1105 (1102) (hereinafter referred to as “user packet”).
  • the relay device 1103 (1104) searches the control information set by the control device 100 for control information having a matching condition that matches the user packet. As shown, control information for processing user packets is not set. Therefore, the relay device 1103 (1104) transfers the user packet to the control device 100 and requests setting of control information.
  • the control device 100 refers to the topology table 103 and calculates a transfer path for transferring the user packet to the destination (STEP 42).
  • the control device 100 transmits the packet from the terminal device 1102 to the relay device 1103, A route to be transferred to the terminal device 1105 in the order of the legacy network 1200 and the relay device 1104 is calculated.
  • control device 100 generates control information for causing the relay device on the calculated transfer route to perform packet transfer along the transfer route (STEP 43). For example, the control device 100 sets control information that causes the relay device 1103 to transfer the packet from the terminal device 1102 from the port P2. In addition, the control device 100 sets control information that causes the relay device 1104 to transfer a packet addressed to the terminal device 1105 received from the port P2 (legacy network) from the port P1.
  • control device 100 sets the generated control information in the relay devices 1103 and 1104 on the transfer path (STEP 44). Further, the control device 100 instructs the relay device 1104 to output the packet received from the relay device 1103 in STEP 41 (STEP 45).
  • the packet transmitted from the terminal apparatus 1102 to the terminal 1105 is transferred to the terminal 1105 according to the control information set in the relay apparatuses 1103 and 1104.
  • FIG. 17 is an example of control information set in the relay apparatus 1103.
  • the entry described as “added” on the left side of FIG. 17 is control information added to process the user packet.
  • a match condition is set such that the source MAC address (SMAC) is the MAC address of the terminal device 1102 and the destination MAC address (DMAC) is the MAC address of the terminal device 1105.
  • SMAC source MAC address
  • DMAC destination MAC address
  • SMAC is changed to MAC-A (MAC address of port P2 of relay apparatus 1103)
  • DMAC is changed to MAC-B (MAC address of port P2 of relay apparatus 1104)
  • VLAN An action (Action) for performing a process of transferring from the port P2 after giving the ID 3000 is described.
  • FIG. 1 source MAC address
  • DMAC destination MAC address
  • control information for processing a response packet addressed to the terminal 1102 from the terminal device 1105 is also set.
  • the fourth entry from the top restores SMAC and DMAC for each packet that matches the match condition where the destination MAC address (DMAC) is MAC-A (the MAC address of port P2 of the relay device 1103), and the VLAN ID.
  • DMAC destination MAC address
  • MAC-A the MAC address of port P2 of the relay device 1103
  • FIG. 18 is an example of control information set in the relay device 1104.
  • the entry described as “added” on the left side of FIG. 18 is control information added to process a user packet.
  • the third entry from the top is control information for processing a response packet addressed to the terminal 1102 from the terminal device 1105.
  • a match condition is set such that the source MAC address (SMAC) is the MAC address of the terminal device 1105 and the destination MAC address (DMAC) is the MAC address of the terminal device 1102.
  • SMAC For packets that match this match condition, SMAC is changed to MAC-B (MAC address of port P2 of relay apparatus 1104), DMAC is changed to MAC-A (MAC address of port P2 of relay apparatus 1103), VLAN An action (Action) for performing a process of transferring from the port P2 after giving the ID 3000 is described.
  • the fourth entry from the top is control information for processing a packet addressed to the terminal 1105 from the terminal device 1102, and the destination MAC address (DMAC) is MAC-B (the MAC address of the port P2 of the relay device 1104).
  • An action (Action) for restoring the SMAC and the DMAC and deleting the VLAN ID and transferring the packet from the port P2 is described.
  • bidirectional packet transfer via the legacy network 1200 is realized as shown in FIG.
  • the packet addressed to the terminal 1105 transmitted from the terminal device 1102 is subjected to MAC rewriting so that the packet is correctly transferred in the legacy network in the ingress relay device 1103, and is transmitted to the egress relay device 1104. And restored.
  • the number of control information entries to be set in each relay device is two, and an inquiry to the control device 100 (control information setting request) is also received at the first packet reception. Therefore, the load on the control device 100 and the relay devices 1103 and 1104 is not increased, and the resource usage is not increased.
  • second to fifth embodiments of the present invention will be described.
  • the second to fifth embodiments of the present invention are different from each other in the arrangement relationship between the network in which the relay apparatus controlled by the control apparatus 100 and the first embodiment and the network (legacy network) that is not the first embodiment are arranged. Therefore, there is no particular change in the configuration of the control device 100.
  • the difference will be mainly described.
  • FIG. 20 is a diagram showing a configuration of a communication system according to the second exemplary embodiment of the present invention.
  • networks 1310 and 1320 in which relay devices controlled by the control device 100 are arranged are arranged at both ends of the legacy network 1200, and the terminal devices 1001 to 1004 are arranged. It is a point to communicate via these.
  • FIG. 21 is a diagram showing a network topology grasped by transmitting a topology confirmation packet, as in the first embodiment.
  • the relay device 1103 of the first embodiment is two relay devices 1010 and 1011
  • the relay device 1104 of the first embodiment is two relay devices 1018 and 1019
  • Only the terminal devices 1001 to 1004 are connected to each other, and there is no difference in the basic configuration.
  • FIG. 22 is a diagram showing a network topology grasped by transmitting a legacy link establishment packet, as in the first embodiment.
  • the relay apparatuses 1071 to 1076 learn the correspondence between the respective ports and the MAC addresses of the legacy connection ports of the relay apparatuses 1010, 1011, 1018, and 1019.
  • the control device 100 grasps the state of the link between the relay devices 1010, 1011, 1018, and 1019.
  • the relay device on the entrance side of the legacy network is set with the control information to be transferred to the legacy network after rewriting the necessary headers. Control information to be transferred after restoring the header is set in the relay device.
  • the packets between the terminal devices 1001 to 1004 are rewritten (restored) in the headers by the relay devices each having a connection port with the legacy network, and after exceeding the legacy network, according to the instruction of the control device 100, Transferred to the destination communication terminal.
  • the present invention is not limited to the configuration in which the terminal device and the relay device illustrated in FIG. 4 are arranged on a one-to-one basis, and there are a plurality of relay devices under control of the control device 100, each of which is a terminal device. It can also be applied to a network configuration in which are connected.
  • FIG. 23 is a diagram showing a configuration of a communication system according to the third exemplary embodiment of the present invention.
  • the difference from the second embodiment shown in FIG. 20 is that there are a plurality of legacy networks and a plurality of legacy networks 1200 and 1210 exist.
  • This configuration can also be viewed as a configuration in which the configuration of the first embodiment is connected in parallel.
  • This configuration has an advantage that the control device 100 can select which of the legacy networks 1200 and 1210 is used to transfer the user packet.
  • the packet between the terminal apparatuses 1001 to 1003 can be transferred via the legacy network 1200
  • the packet between the terminal apparatuses 1002 to 1004 can be transferred via the legacy network 1210.
  • FIG. 24 is a diagram showing a configuration of a communication system according to the fourth exemplary embodiment of the present invention.
  • the difference from the third embodiment shown in FIG. 23 is that there is no legacy network 1210 and the network 1310 and the network 1320 are directly connected.
  • this configuration has an advantage that the control device 100 can select whether or not to transfer the user packet using the legacy network 1200.
  • FIG. 25 is a diagram showing a configuration of a communication system according to the fifth exemplary embodiment of the present invention.
  • the difference from the third embodiment shown in FIG. 23 is that the legacy network 1210 is located on the outer side of the network 1310, and the network 1330 in which the relay device that can be controlled by the control device is located on the outer side. It is a point.
  • address learning is performed in the relay apparatuses on the legacy networks 1200 and 1210 by transmission of the legacy link establishment packet, and the link between the relay apparatuses belonging to the networks 1310-1320 by the control apparatus 100 and the network The status of the link between relay devices belonging to 1320-1330 is ascertained. For this reason, as in the first embodiment, by setting control information instructing necessary header rewriting and packet transfer from the control device 100, packets are transferred via the two legacy networks 1200 and 1210. be able to.
  • FIG. 26 is a diagram showing a configuration of a communication system according to the sixth exemplary embodiment of the present invention.
  • (core) relay apparatuses 20-1 to 20-3 constituting the core network hereinafter referred to as “relay apparatus 20” unless otherwise specified
  • machines 40-1 to 40-5 machines 40-1 to 40-5.
  • (edge) relay devices 30-1 to 30-3 hereinafter referred to as “relay device 30” unless otherwise specified
  • the relay devices 20-1 to 20-3 and the relay A configuration including a control device 10 for controlling the devices 30-1 to 30-3 is shown.
  • the control device 10 sets control information for the relay devices 20 and 30 so that the virtual machine (hereinafter referred to as “VM”) operating on the machines 40-1 to 40-5 and the storage 50 are set. Control communication.
  • VM virtual machine
  • the relay device 20 is connected to the relay device 30 in a mesh shape, and can configure a path between an arbitrary VM and a VM and between an arbitrary VM and the storage 50.
  • the relay devices 20 and 30 hold the control information set by the control device 10 and process the received packet with reference to the control information. Specifically, when a packet is received, the processing content (action) described in the control information having a matching condition that matches the header information of the received packet and the like is executed from the control information. On the other hand, when the control information having a matching condition that matches the header information of the received packet is not held, the relay devices 20 and 30 transmit the received packet (or information extracted from the received packet) to the control device 10. Request the setting of control information.
  • the basic operations of the relay devices 20 and 30 are the same as those of the relay devices 1103 and 1104 of the first embodiment.
  • the machines 40-1 to 40-5 are configured by devices called virtualization servers or the like on which VM1 to VM10 that are used exclusively by a plurality of users operate.
  • the storage 50 stores data accessed from these VMs. Therefore, the user can access the storage 50 using the VM, refer to necessary data, communicate with other VMs, and save data from the VM to the storage 50. .
  • control apparatus 10 for setting control information necessary for L2 level communication between VM and storage and between VM and VM as described above will be described.
  • FIG. 27 is a flowchart showing the operation of the control device according to the sixth embodiment of the present invention.
  • the setting for the VM1 to communicate with the VM5 will be described.
  • the VM 1 transmits an ARP (Address Resolution Protocol) packet to resolve the MAC address of the VM 5 (step S101).
  • ARP Address Resolution Protocol
  • the relay device 30-1 Since the relay device 30-1 does not hold control information corresponding to the ARP packet, the relay device 30-1 transfers the ARP packet to the control device 10.
  • the control device 10 learns the position of VM1 (connected to a specific port of the relay device 30-1) and the MAC address from the received ARP packet (step S102).
  • control device 10 calculates a transfer path from the other relay devices 30-2 and 30-3 to the VM 1 via the relay device 30-1. Further, the control device 10 generates control information (first control information) for L2 that realizes packet transfer along the calculated transfer route, and sets it to the relay device on the route (step S103).
  • FIG. 28 is a diagram illustrating a state in which the setting of the control information for L2 addressed to the VM1 is completed.
  • “VM1” in the boxes indicating the relay devices 20-1, 30-1 to 30-3 represents control information addressed to VM1.
  • control device 10 transmits the ARP packet received in step S102 to relay devices 30-2 and 30-3 other than the transmission source relay device 30-1 (step S104).
  • Each of the relay devices 30-2 and 30-3 transfers the received ARP packet to VM5 to VM10 operating in the own device.
  • the VM 5 Since the ARP packet is for resolving the MAC address of the VM 5, the VM 5 transmits an ARP response. Since the relay device 30-2 does not hold control information corresponding to the ARP response packet, the relay device 30-2 transfers the ARP response packet to the control device 10. The control device 10 learns the position of the VM 5 (connected to a specific port of the relay device 30-2) and the MAC address from the received ARP response packet (step S105). Further, the control device 10 responds to the VM 1 with the learned MAC address of the VM 5 instead of the VM 5.
  • control device 10 calculates a transfer path from the other relay devices 30-1 and 30-3 to the VM 5 via the relay device 30-2. Further, the control device 10 generates control information (first control information) for L2 that realizes packet transfer along the calculated transfer route, and sets it in the relay device on the route (step S106).
  • FIG. 29 is a diagram illustrating a state in which the setting of the control information for L2 addressed to VM1 and VM5 is completed.
  • “VM5” in the boxes indicating the relay apparatuses 20-1, 30-1 to 30-3 in the drawing represents control information addressed to the VM5.
  • the relay device 30-2 does not hold control information corresponding to the ARP packet. Then, the ARP packet is transferred to the control device 10. Instead of the VM1, the control device 10 responds to the VM5 with the MAC address of the VM1 learned in step S102 (step S108).
  • VM1 and VM5 are in a state where they can transmit and receive L2 packets destined for each other's MAC address (step S109).
  • FIG. 30 and 31 are diagrams illustrating examples of control information set in the relay device 30-1, the relay device 20-1, and the relay device 30-2 at the time of step S109 described above.
  • FIG. 31 shows control information for processing an L2 packet addressed from VM1 to VM5. The match condition in which the VM5 MAC address is set as the destination MAC address and the processing contents (actions) for performing packet transfer along the transfer path. ).
  • FIG. 32 shows control information for processing an L2 packet addressed to VM1 from VM5. In either case, only the destination MAC address is designated as a match condition, and transfer can be realized without increasing the load on the relay device and the control device 10.
  • FIG. 32 is a diagram showing the source and destination addresses of the L2 packet and L3 packet exchanged between VM1 and VM5.
  • the control device 10 since the MAC address of the device set as the default gateway (in this embodiment, the control device 10) is set as the destination MAC address in the L3 packet, the above-described FIG. The control information shown in FIG. 31 cannot be transferred. Therefore, the L3 packet is transferred from the relay device 30-1 to the control device 10, and a control information setting request is made.
  • FIG. 33 is a flowchart showing the operation of the control apparatus 10 when an L3 packet is transmitted from VM1 to VM5.
  • relay device 30-1 transfers the L3 packet to control device 10 and requests setting of control information (step S202).
  • the control device 10 Upon receiving the control information setting request, the control device 10 rewrites the control information already set in the relay device 30-1 shown in FIG. 30 as shown in FIG. 34 (step S203).
  • the control device 30-1 when the MAC address of the GW (control apparatus 10) is set as the destination MAC address and the IP address of VM5 is set as the destination IP address, that is, L3 with the destination of VM5 as the destination
  • the relay device 30-1 rewrites the MAC address of the transmission source with the MAC address of the GW (control device 10), rewrites the destination MAC address with the MAC address of VM5, and then repeats the relay device 20-. 1 is transferred.
  • the relay device 20-1 and the relay device 30-2 transfer the L3 packet addressed to the VM 5 as the L2 packet.
  • control device 10 rewrites the control information set in the relay device 30-2 shown in FIG. 31 as shown in FIG.
  • the relay device 30-2 rewrites the MAC address of the transmission source with the MAC address of the GW (control device 10), rewrites the destination MAC address with the MAC address of VM1, and then repeats the relay device 20-. 1 is transferred.
  • the relay device 20-1 and the relay device 30-1 transfer the L3 packet addressed to VM1 as the L2 packet.
  • control device 10 transfers the L3 packet addressed to VM5 transferred in step S202 to the relay device 30-2 on the egress side, and transfers it to the VM5 (step S204). .
  • step S205 L3 packets can be exchanged between VM1 and VM5 (step S205).
  • subsequent relay devices transfer packets with control information using the destination MAC address as a match condition without setting new control information. It is possible to do.
  • the present invention can also be suitably applied in a virtual environment where VMs and storages operate.
  • the second control information is a control device that is generated by adding a process for converting to a destination MAC address in the processing content field of the first control information.
  • a specific link management unit that grasps the state of the link between relay devices connected via a network that is not controlled, Topology management that builds topology information based on information collected from the relay device to be controlled and updates the topology information based on the state of the link between relay devices connected via the non-control target network And Based on the topology information including the link between the relay devices connected via the non-control target network, the packet transfer path between the machines connected to the relay device is calculated, and the relay device on the transfer path is A path management unit that generates control information for performing packet transfer according to the transfer path; A relay device communication unit that sets the control information in the relay device, Among the relay devices on the transfer path via the non-control target network, the relay device in front of the non-control target network is
  • the specific link management unit transmits a predetermined packet from one of the relay apparatuses connected via the network to the other outside the control target, and determines whether or not the predetermined packet has been received on the other side.
  • a control device that grasps the state of a link between relay devices connected via a network.
  • a specific link management unit that grasps the state of the link between relay devices connected via a network that is not controlled, Topology management that builds topology information based on information collected from the relay device to be controlled and updates the topology information based on the state of the link between relay devices connected via the non-control target network And Based on the topology information including the link between the relay devices connected via the non-control target network, the packet transfer path between the machines connected to the relay device is calculated, and the relay device on the transfer path is A path management unit that generates control information for performing packet transfer according to the transfer path; A relay device communication unit that sets the control information in the relay device, Among the relay devices on the transfer path via the non-control target network, the relay device in front of the non-control target network is allowed to rewrite the header so that the packet can pass through the non-control target network, Of the relay devices on the transfer path via the non-control target network, a control device that causes the relay device located at a position beyond the non-control target
  • a specific link management unit that grasps the state of the link between relay devices connected via a network that is not controlled, Topology management that builds topology information based on information collected from the relay device to be controlled and updates the topology information based on the state of the link between relay devices connected via the non-control target network And Based on the topology information including the link between the relay devices connected via the non-control target network, the packet transfer path between the machines connected to the relay device is calculated, and the relay device on the transfer path is A path management unit that generates control information for performing packet transfer according to the transfer path; A control device comprising a relay device communication unit that sets the control information in the relay device, Of the relay devices on the transfer path that passes through the non-control target network, the relay device in front of the non-control target network performs header rewriting so that the packet can pass through the non-control target network.
  • a specific link management unit that grasps the state of the link between relay devices connected via a network that is not controlled, Topology management that builds topology information based on information collected from the relay device to be controlled and updates the topology information based on the state of the link between relay devices connected via the non-control target network And Based on the topology information including the link between the relay devices connected via the non-control target network, the packet transfer path between the machines connected to the relay device is calculated, and the relay device on the transfer path is A path management unit that generates control information for performing packet transfer according to the transfer path; A computer comprising a control device comprising a relay device communication unit for setting the control information in the relay device; Processing for rewriting the header so that the packet can pass through the non-control target network
  • Control device 11 First control information setting unit 12
  • Relay device 40-1 to 40-5 Machine 50
  • Storage DESCRIPTION OF SYMBOLS 101
  • Relay apparatus communication part 102
  • Topology management part 103
  • Topology table 104
  • Maintenance terminal communication part 105
  • Legacy management part 106
  • Legacy management table 107
  • Legacy link management part 108
  • Path management part 1101

Abstract

 集中制御型の通信システムにおいて、個々の中継装置に設定する制御情報のエントリ数の削減や、制御装置への問い合わせの削減に貢献する。制御装置は、予め定めた経路上の中継装置に、第1の階層のアドレスに基づいて、所定のマシン間のパケットを転送する第1の制御情報を設定する第1の制御情報設定部と、前記中継装置を介して前記第1の制御情報を設定済みのマシンの一方から、前記第1の階層よりも上位の第2の階層のアドレスを宛先アドレスとしたパケットを受信した場合、前記中継装置に対し、前記第2の階層のアドレスを宛先アドレスとしたパケットの第1の階層の宛先アドレスを前記第1の制御情報に定められた第1の階層のアドレスに変換してから転送させる第2の制御情報を設定する第2の制御情報設定部と、を備える。

Description

制御装置、通信システム、通信方法及びプログラム
 [関連出願についての記載]
 本発明は、日本国特許出願:特願2012-258406号(2012年11月27日出願)に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
 本発明は、制御装置、通信システム、通信方法及びプログラムに関し、特に、スイッチを集中制御することにより通信を実現する制御装置、通信システム、通信方法及びプログラムに関する。
 近年、オープンフロー(OpenFlow)という技術が提案されている(非特許文献1、2参照)。オープンフローは、通信をエンドツーエンドのフローとして捉え、フロー単位で経路制御、障害回復、負荷分散、最適化を行うものである。非特許文献2に仕様化されているオープンフロースイッチは、オープンフローコントローラとの通信用のセキュアチャネルを備え、オープンフローコントローラから適宜追加または書き換え指示されるフローテーブルに従って動作する。フローテーブルには、フロー毎に、パケットヘッダと照合するマッチ条件(Match Fields)と、フロー統計情報(Counters)と、処理内容を定義したインストラクション(Instructions)と、の組が定義される(非特許文献2の「4.1 Flow Table」の項参照)。
 例えば、オープンフロースイッチは、パケットを受信すると、フローテーブルから、受信パケットのヘッダ情報に適合するマッチ条件(非特許文献2の「4.3 Match Fields」参照)を持つエントリを検索する。検索の結果、受信パケットに適合するエントリが見つかった場合、オープンフロースイッチは、フロー統計情報(カウンタ)を更新するとともに、受信パケットに対して、当該エントリのインストラクションフィールドに記述された処理内容(指定ポートからのパケット送信、フラッディング、廃棄等)を実施する。一方、検索の結果、受信パケットに適合するエントリが見つからなかった場合、オープンフロースイッチは、セキュアチャネルを介して、オープンフローコントローラに対してエントリ設定の要求、即ち、受信パケットを処理するための制御情報の送信要求(Packet-Inメッセージ)を送信する。オープンフロースイッチは、処理内容が定められたフローエントリを受け取ってフローテーブルを更新する。このように、オープンフロースイッチは、フローテーブルに格納されたエントリを制御情報として用いてパケット転送を行う。
 また、特許文献1には、パケット通信経路の区間毎に、上記フローエントリのタイムアウト値を異ならせることにより、オープンフローコントローラに相当する経路制御装置の負荷を低減する方法が開示されている。
特開2011-101245号公報
Nick McKeownほか7名、"OpenFlow: Enabling Innovation in Campus Networks"、[online]、[平成24(2012)年9月25日検索]、インターネット〈URL:http://www.openflow.org/documents/openflow-wp-latest.pdf〉 "OpenFlow Switch Specification" Version 1.1.0 Implemented (Wire Protocol 0x02)、[online]、[平成24(2012)年9月25日検索]、インターネット〈URL:http://www.openflow.org/documents/openflow-spec-v1.1.0.pdf〉
 以下の分析は、本発明によって与えられたものである。上記した非特許文献1、2のオープンフロースイッチに、宛先MACアドレスをマッチ条件とし、その宛先MACアドレスに対応するポートからの出力を指示するフローエントリを設定することで、オープンフロースイッチをレイヤ2スイッチ(以下、レイヤ2、レイヤ3をそれぞれ「L2」、「L3」と記す。)と同様に動作させることができる。この方式によれば、マッチ条件に送信元のアドレスを指定しないため、個々のスイッチに設定するフローエントリ数の削減や、オープンフローコントローラへの問い合わせ(Packet-In)を大きく削減できるという利点がある。
 しかしながら、上記方式では、L2パケットの転送しかサポートできないという問題点がある。例えば、あるマシンが、通信相手が異なるサブネットに属すると認識する場合、デフォルトゲートウェイ(例えば、オープンフローコントローラでもよい。)に対して、デフォルトゲートウェイのMACアドレスを宛先MACアドレスとしたパケット(L3パケット)を送信する。この場合、上記したL2パケットに特化した転送方式では正しい宛先に転送することができないという問題が生じる。
 もちろん、マッチ条件として、宛先IPアドレス等を指定したフローエントリを本来の宛先の経路上のスイッチに設定すれば、前記マシンから送信されたL3パケットを正しい宛先に転送することができるが、上記したL2パケットに特化した転送方式の利点が喪われてしまう可能性がある。
 本発明は、上記したオープンフローに代表される集中制御型の通信システムにおいて、個々の中継装置に設定する制御情報のエントリ数の削減や、制御装置への問い合わせの削減に貢献できる制御装置、通信システム、通信方法及びプログラムを提供することを目的とする。
 第1の視点によれば、予め定めた経路上の中継装置に、第1の階層のアドレスに基づいて、所定のマシン間のパケットを転送する第1の制御情報を設定する第1の制御情報設定部と、前記中継装置を介して前記第1の制御情報を設定済みのマシンの一方から、前記第1の階層よりも上位の第2の階層のアドレスを宛先アドレスとしたパケットを受信した場合、前記中継装置に対し、第2の階層のアドレスを宛先アドレスとしたパケットの第1の階層の宛先アドレスを前記第1の制御情報に定められた第1の階層のアドレスに変換してから転送させる第2の制御情報を設定する第2の制御情報設定部と、を備えた制御装置が提供される。
 第2の視点によれば、予め定めた経路上の中継装置に、第1の階層のアドレスに基づいて、所定のマシン間のパケットを転送する第1の制御情報を設定する第1の制御情報設定部と、前記中継装置を介して前記第1の制御情報を設定済みのマシンの一方から、前記第1の階層よりも上位の第2の階層のアドレスを宛先アドレスとしたパケットを受信した場合、前記中継装置に対し、前記第2の階層のアドレスを宛先アドレスとしたパケットの第1の階層の宛先アドレスを前記第1の制御情報に定められた第1の階層のアドレスに変換してから転送させる第2の制御情報を設定する第2の制御情報設定部と、を備えた制御装置と、前記制御装置より、前記第1、第2の制御情報が設定される中継装置と、を含む通信システムが提供される。
 第3の視点によれば、予め定めた経路上の中継装置に、第1の階層のアドレスに基づいて、所定のマシン間のパケットを転送する第1の制御情報を設定するステップと、前記中継装置を介して前記第1の制御情報を設定済みのマシンの一方から、前記第1の階層よりも上位の第2の階層のアドレスを宛先アドレスとしたパケットを受信した場合、前記中継装置に対し、前記第2の階層のアドレスを宛先アドレスとしたパケットの第1の階層の宛先アドレスを前記第1の制御情報に定められた第1の階層のアドレスに変換してから転送させる第2の制御情報を設定するステップと、を含む通信方法が提供される。本方法は、制御情報を設定することにより中継装置を制御する制御装置という、特定の機械に結びつけられている。
 第4の視点によれば、制御装置を構成するコンピュータに、予め定めた経路上の中継装置に、第1の階層のアドレスに基づいて、所定のマシン間のパケットを転送する第1の制御情報を設定する処理と、前記中継装置を介して前記第1の制御情報を設定済みのマシンの一方から、前記第1の階層よりも上位の第2の階層のアドレスを宛先アドレスとしたパケットを受信した場合、前記中継装置に対し、前記第2の階層のアドレスを宛先アドレスとしたパケットの第1の階層の宛先アドレスを前記第1の制御情報に定められた第1の階層のアドレスに変換してから転送させる第2の制御情報を設定する処理と、を実行させるプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な(非トランジエントな)記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。
 本発明によれば、集中制御型の通信システムにおいて、個々の中継装置に設定する制御情報のエントリ数の削減や、制御装置への問い合わせの削減に貢献することが可能となる。
本発明の一実施形態の構成を示す図である。 本発明の一実施形態の動作を説明するための図である。 本発明の一実施形態の動作を説明するための図である。 本発明の第1の実施形態の通信システムの構成を示す図である。 本発明の第1の実施形態の通信システムの制御装置の構成例を示す図である。 本発明の第1の実施形態の通信システムの制御装置のトポロジテーブル(トポロジ収集前)の構成例を示す図である。 本発明の第1の実施形態の通信システムの制御装置のレガシー管理テーブルの構成例を示す図である。 本発明の第1の実施形態の通信システムの制御装置のレガシーリンク管理テーブルの構成例を示す図である。 本発明の第1の実施形態の通信システムの制御装置のトポロジ構築動作を説明するための流れ図である。 本発明の第1の実施形態の通信システムにおいて、レガシーネットワークに関する情報が設定された際の制御装置の動作を表した流れ図である。 図10の続図である。 本発明の第1の実施形態の通信システムの制御装置が生成する制御情報(フローエントリ)の例を示す図である。 本発明の第1の実施形態の通信システムの制御装置のトポロジ更新動作を説明するための流れ図である。 本発明の第1の実施形態の通信システムの制御装置のトポロジテーブル(トポロジ更新後)の構成例を示す図である。 本発明の第1の実施形態の通信システムの制御装置のトポロジ更新動作を説明するための別の流れ図である。 本発明の第1の実施形態の通信システムにおけるユーザパケットの転送動作を説明するための流れ図である。 本発明の第1の実施形態の通信システムの制御装置により中継装置1103に設定される制御情報(フローエントリ)の例である。 本発明の第1の実施形態の通信システムの制御装置により中継装置1104に設定される制御情報(フローエントリ)の例である。 本発明の第1の実施形態の通信システムの制御装置により中継装置1103及び中継装置1104に設定された制御情報(フローエントリ)により実現される転送経路を示す図である。 本発明の第2の実施形態の通信システムの構成を示す図である。 本発明の第2の実施形態の通信システムの構成を示す別の図である。 本発明の第2の実施形態の通信システムの構成を示す別の図である。 本発明の第3の実施形態の通信システムの構成を示す図である。 本発明の第4の実施形態の通信システムの構成を示す図である。 本発明の第5の実施形態の通信システムの構成を示す図である。 本発明の第6の実施形態の通信システムの構成を示す図である。 本発明の第6の実施形態の制御装置の動作を表した流れ図である。 本発明の第6の実施形態の制御装置により制御情報が設定される過程を示す図である。 本発明の第6の実施形態の制御装置により制御情報が設定される過程を示す図である。 本発明の第6の実施形態の制御装置によりスイッチに設定される制御情報(フローエントリ)の例である。 本発明の第6の実施形態の制御装置によりスイッチに設定される制御情報(フローエントリ)の例である。 本発明の第6の実施形態のVM1-VM5間で授受されるL2パケット及びL3パケットの送信元アドレスと宛先アドレスとを示す図である。 本発明の第6の実施形態の制御装置の動作を表した流れ図である。 本発明の第6の実施形態の制御装置によりスイッチに設定される制御情報(フローエントリ)の例である。 本発明の第6の実施形態の制御装置によりスイッチに設定される制御情報(フローエントリ)の例である。
 はじめに本発明の一実施形態の概要について図面を参照して説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。
 本発明は、その一実施形態において、図1に示すように、第1の制御情報設定部11と、第2の制御情報設定部12とを備えて、複数の中継装置A~Cを制御する制御装置10Aにて実現できる。
 第1の制御情報設定部11は、図2に示すように、予め定めた経路上の中継装置(中継装置A~C)に、第1の階層のアドレス(図2の例では、L2アドレス)に基づいて、所定のマシン間のパケットを転送する第1の制御情報を設定する。図2の例では、第1の制御情報設定部11は、中継装置A~Cに、L2アドレスが00:00:00:00:00:AAであるマシンAから、L2アドレスが00:00:00:00:00:BBであるマシンBへのパケットの転送を指示する制御情報を設定している。
 一方、第2の制御情報設定部12は、図3に示すように、中継装置Aを介して前記第1の制御情報を設定済みのマシンA、Bの一方から(図3のマシンA)、前記第1の階層よりも上位の第2の階層のアドレスを宛先アドレスとしたパケット(L3パケット)を受信した場合、中継装置Aに対し、前記第2の階層のアドレスを宛先アドレスとしたパケットの第1の階層の宛先アドレスを前記第1の制御情報に定められた第1の階層のアドレスに変換してから転送させる第2の制御情報を設定する。前記第2の階層のアドレスを宛先アドレスとしたパケット(L3パケット)の第1の階層の宛先アドレスには、例えば、ルータとしても動作する図3の制御装置10AのL2アドレス等が設定されているので、中継装置Aは、図3の制御装置10AのL2アドレスをマシンBのL2アドレスに書き換えてから転送する動作を行うことになる。
 以上のように、第1の階層のアドレスを用いて転送を行う方式をベースとしつつ、ルータ越えの必要のある第2の階層のアドレスが指定されたパケットを正しい宛先に転送することが可能になる。なお、図3の例では、中継装置Cにて、第1の階層のアドレスを書き換えずに、そのままマシンBに転送しているが、中継装置Cにて、第1の階層のアドレスを元の内容に復元してもよい。
[第1の実施形態]
 続いて、本発明の第1の実施形態について図面を参照して詳細に説明する。図4は、本発明の第1の実施形態の通信システムの構成を示す図である。図4を参照すると、中継装置1106、1107によって構成されるレガシーネットワーク1200と、レガシーネットワーク1200の端点に配置された中継装置1103、1104と、中継装置1103、1104に制御情報(フローエントリ)を設定することにより中継装置1103、1104を制御する制御装置100と、を備えた構成が示されている。また、中継装置1103、1104にはそれぞれ、端末装置1102、1105が接続されている。また、制御装置100には、制御装置100が保持するレガシー情報等を管理するための保守端末1101が接続されている。
 図4において、図中の実線は、ユーザデータ等を転送する転送チャネルを示し、図中の破線は制御メッセージを授受する制御チャネルを示している。また、中継装置1103、1104、1106、1107を示すボックス内に付された記号P1~P4は、各中継装置のポート番号を表している。
 中継装置1103、1104は、制御装置100から設定された制御情報に従って動作する、非特許文献1、2のオープンフロースイッチ等の機器で構成することができる。
 中継装置1106、1107は、制御装置100の制御を受けないL2スイッチ等の機器であり、例えば、ポートと宛先L2アドレスとを対応付けたアドレステーブルを保持し、受信パケットのL2アドレスに対応するポートからパケットを送信する。また、中継装置1106、1107は、パケット受信時に、前記アドレステーブルへの宛先の学習動作を行う。レガシーネットワーク1200は、これらのL2スイッチ等の制御対象外の中継装置を含んで構成され、制御装置100からの制御を受けないネットワークである。
 端末装置1102、1105は、ユーザの利用する各種の端末装置である。なお、本実施形態では、端末装置1102、1105間の通信を実現する例を挙げて説明するが、端末装置以外の機器が通信相手であってもよい。例えば、端末装置が各種のサーバと通信する場合でもよいし、あるいは、マシン同士、いわゆるM2M通信であってもよい。
 図5は、上記制御装置100の構成例を示す図である。図5を参照すると、中継装置通信部101と、トポロジ管理部102と、トポロジテーブル103と、保守端末通信部104と、レガシー管理部105と、レガシー管理テーブル106と、レガシーリンク管理部107と、レガシーリンク管理テーブル108と、経路管理部109と、を備えた構成が示されている。
 中継装置通信部101は、中継装置1103、1104に対する制御情報(フローエントリ)の設定や、中継装置1103、1104からの制御情報(フローエントリ)の設定要求等のメッセージを授受する。また、中継装置通信部101は、中継装置1103、1104に対してトポロジ確認用パケットの送信を指示し、中継装置1103、1104からトポロジ確認用パケットに対する応答パケットを受信する。中継装置1103、1104とのメッセージの授受には、非特許文献2のオープンフロープロトコルを用いることもできる。
 トポロジ管理部102は、中継装置1103、1104によるトポロジ確認用パケットの送信結果に基づいて、図6に示すトポロジテーブル103を管理する。トポロジテーブル103の更新処理については、後に詳細に説明する。
 保守端末通信部104は、保守端末1101に対し、レガシー接続ポート情報及びレガシー識別情報の入力画面を送信する。ユーザから、レガシー接続ポート情報及びレガシー識別情報の入力を受け付けると、保守端末通信部104は、レガシー管理部105に対して、これらを転送する。
 レガシー管理部105は、制御装置100の制御対象となっている中継装置1103、1104に接続されているレガシーネットワークの情報を管理する。
 図7は、レガシー管理テーブル106の構成例を示す図である。図7のレガシー管理テーブル106には、レガシーネットワークの識別情報(ここでは、レガシーネットワークの符号と同じく「1200」とする。)と、識別用VLAN(Virtual Local Area Network) IDと、制御装置100の制御対象となっている中継装置1103、1104の接続ポートとを対応付けたエントリを格納するエントリが格納されている。また、図7の例では、識別用VLAN(ID)として、「3000」という値が設定され、接続ポートとして図4に示すとおり、中継装置1103のポートP2と、中継装置1104のポートP2とが設定されている。即ち、図7のエントリは、中継装置1103のポートP2と、中継装置1104のポートP2とにVLAN ID「3000」が割り当てられた識別情報1200のレガシーネットワークが接続されていることを示している。
 レガシーリンク管理部107は、上記のようにして、レガシー管理テーブル106に新規エントリの追加、既存エントリの変更等が行われると、レガシー管理テーブル106の該当エントリから接続ポート情報を読み出して、レガシーネットワークとの接続リンク(以下、「レガシーリンク」という。)の情報を管理する。レガシーリンク管理部107は上記した特定リンク管理部に相当する。また、レガシーリンクは、「レガシーネットワークを介して接続する中継装置間の仮想的なリンク」とも言い換えることができる。
 図8は、レガシーリンク管理テーブル108の構成例を示す図である。図8のレガシーリンク管理テーブル108には、レガシー管理テーブル106から読み出した接続ポート毎に、そのポートのMACアドレス(Media Access Control Address)、接続状態等を対応付けたエントリを格納するエントリが格納されている。なお、中継装置1103、1104のMACアドレスは、中継装置1103、1104に問い合わせることにより入手可能であり、接続状態は、後記するレガシーリンク確立用パケットの送信結果に基づき検出することができる。
 経路管理部109は、トポロジテーブル103及びレガシー管理テーブル106を参照して、自装置の配下の中継装置間の経路を計算して管理する。また、経路管理部109は、前記計算した経路上の中継装置に、その経路に沿ったパケット転送を行わせるための制御情報を生成し、中継装置通信部101に、これらの制御情報を設定させる。
 なお、上記した制御装置100は、非特許文献1、2のオープンフローコントローラをベースにレガシーネットワークの管理機能、レガシーネットワークを考慮したパケット変換内容の決定機能等を追加した構成にて実現できる。また、図5に示した制御装置100の各部(処理手段)は、制御装置100を構成するコンピュータに、そのハードウェアを用いて、上記した各処理を実行させるコンピュータプログラムにより実現することもできる。
 続いて、本実施形態の動作について図面を参照して詳細に説明する。
(トポロジ構築)
 はじめに、制御装置100のトポロジ構築動作について説明する。図9は、制御装置100のトポロジ収集動作を説明するための流れ図である。
 図9を参照すると、まず、制御装置100は、中継装置1103、1104に対し、それぞれのポートからトポロジ確認用のパケットを送信するよう指示する(STEP1)。トポロジ確認用のパケットとしては、LLDP(Link Layer Discovery Protocol)パケットや、OSPF(Open Shortest Path First)等のルーティングプロトコルのパケットを用いることができる。また、制御装置100から中継装置1103、1104へのパケット出力指示は、例えば、非特許文献2のPacket-Outメッセージを用いることができる。
 一方、中継装置1103、1104は、他の中継装置からこれらトポロジ確認用のパケットを受信すると、制御装置100に対し、これらトポロジ確認用のパケットを受信した旨と、その受信ポートとを通知する(STEP2)。また、中継装置1103、1104から制御装置100への受信パケットの報告は、例えば、非特許文献2のPacket-Inメッセージを用いることができる。
 制御装置100は、前記トポロジ確認用のパケットを受信した中継装置1103、1104からの情報に基づいて、トポロジ確認用のパケットを授受した中継装置間が接続されていることを認識し、トポロジ情報を生成する(STEP3)。図6は、トポロジ確認用パケットの送信後の状態を示している。図4に示したように、中継装置1103、1104のポートP1、P2から送信したトポロジ確認用のパケットは、端末1102、1105又はレガシーネットワークの中継装置1106、1107にて受信される。これらの装置は、制御装置100に対して、トポロジ確認用のパケットの受信通知を送信しないため、制御装置100は、各中継装置の各ポートに隣接する中継装置等は「無し」と設定する。次に、制御装置100は、STEP3で生成したトポロジ情報をトポロジテーブル103に記録する(STEP4)。
(レガシーネットワーク情報の取得)
 続いて、制御装置100のレガシーネットワーク情報の取得動作について説明する。図10、図11は、ユーザからレガシーネットワークに関する情報が設定された際の制御装置100の動作を表した流れ図である。
 図10を参照すると、まず、ユーザが保守端末1101を介して、レガシー識別情報と、識別用VLANと、接続ポート情報とを指定する(STEP11)。ここでは、図7に示すように、レガシー識別情報=1200と、識別用VLAN=3000と、接続ポート情報=1103のP2、1104のP2と指定がされたものとする。
 前記保守端末1101から送信された情報を受信した制御装置100は、これらの情報を図7に示すレガシー管理テーブル106に記録する(STEP12)。
 次に制御装置100は、レガシー管理テーブル106に新規に登録されたエントリの接続ポート情報に指定されているポートのMACアドレスを、該当する中継装置1103、1104から取得する(STEP13)。次に、制御装置100は、これらの情報を図8に示すレガシーリンク管理テーブル108に記録する(STEP14)。ここでは、中継装置1103のポートP2のMACアドレス(MAC-A)と、中継装置1104のポートP2のMACアドレス(MAC-B)とが取得され、それぞれ図8に示すように、ポート情報と対応付けて記録されたものとする。
 次に、制御装置100は、レガシーネットワークに接続しているポートからのパケットの廃棄を指示する制御情報を作成する(図11のSTEP15)。
 図12は、図8に示すレガシーリンク管理テーブル108のエントリに基づいて作成された制御情報の例である。図12の上段は、中継装置1103に設定される制御情報の例を示す。図12の制御情報は、優先順位が低い順に、順番に並べられている。従い、中継装置1103は、ポートP2から送信元MACアドレス(SMAC)がMAC-B(中継装置1104のポートP2のMACアドレス)であるパケットを受信すると、そのパケットを廃棄する動作を行う。また、マッチ条件が「なし」となっている制御情報は、優先順位が上位の制御情報のいずれにも適合しない場合に実行される処理内容を規定している。このため、中継装置1103は、ポートP2からその他パケットを受信した場合も、そのパケットを廃棄する動作を行う。
 同様に、図12の下段は、中継装置1104に設定される制御情報の例を示す。中継装置1104は、ポートP1から送信元MACアドレス(SMAC)がMAC-A(中継装置1103のポートP2のMACアドレス)であるパケットを受信すると、そのパケットを廃棄する動作を行う。また、中継装置1104においてもマッチ条件を「なし」とした制御情報が設けられているため、中継装置1104は、ポートP2からその他パケットを受信した場合も、そのパケットを廃棄する動作を行う。
 次に、制御装置100は、上記のようにして作成した制御情報を中継装置1103、1104に設定する(図11のSTEP16)。
(レガシーネットワークの情報を用いたトポロジの更新)
 続いて、制御装置100における、前記レガシーネットワークの情報を用いたトポロジ更新動作について説明する。図13は、本実施形態の制御装置によるトポロジ更新動作を説明するための流れ図である。
 制御装置100は、中継装置1103、1104に対し、それぞれのレガシー接続ポートからレガシーリンク確立用パケットを送信するよう指示する(STEP21)。レガシーリンク確立用パケットとしては、前述のトポロジ確認用のパケットと同様のパケットを用いることができる。また、レガシーリンク確立用パケットによりレガシーネットワークの中継装置1106、1107がアドレステーブルの学習を行うことになる。
 一方、中継装置1103、1104は、レガシーネットワーク1200を介して、他の中継装置からこれらレガシーリンク確立用パケットを受信すると、図11のSTEP16にて設定された制御情報に従い、レガシーリンク確立用パケットを廃棄する。制御装置100は、中継装置1103、1104に対して、レガシーリンク確立用パケットを廃棄したか否かを問い合わせることにより、レガシーリンク確立用パケットが廃棄されたことを確認する(STEP22)。
 前記確認の結果、予定通りにレガシーリンク確立用パケットが廃棄されたことを確認できた場合、制御装置100は、中継装置1103と中継装置1104とが、レガシーネットワーク1200を介して接続されていることを認識する(STEP23)。
 そして、制御装置100は、トポロジテーブル103を更新する(STEP24)。図14は、更新後のトポロジテーブルを示す図である。図14を参照すると、中継装置1103のポートP2のリンクの情報として、隣接中継装置1104と、そのポート情報P2が追記されている。同様に、中継装置1104のポートP2のリンクの情報として、隣接中継装置1103と、そのポート情報P2が追記されている。
 ここで、図13のSTEP22において、レガシーリンク確立用パケットが廃棄されたことを確認できなかった場合の動作について説明する。
 図15は、レガシーリンク確立用パケットが廃棄されたことを確認できなかった場合の動作を説明するための流れ図である。図15のSTEP21、22は、図13のSTEP21、22と同様である。STEP22の確認の結果、レガシーリンク確立用パケットが廃棄されたことを確認できなかった場合、制御装置100は、中継装置1103と中継装置1104とのリンクが切断されたことを認識する(STEP33)。
 そして、制御装置100は、トポロジテーブル103を更新する(STEP34)。更新後の内容は、図6に示したとおり、中継装置1103のポートP2、中継装置1104のポートP2のリンクの情報から、隣接中継装置とそのポート情報が削除された状態となる。
(ユーザパケットの転送)
 続いて、上記のようにして把握されるトポロジを用いて行われるユーザパケットの転送動作について説明する。図16は、本発明の第1の実施形態の通信システムにおけるユーザパケットの転送動作を説明するための流れ図である。
 図16を参照すると、まず、端末装置1102(1105)が端末装置1105(1102)宛てのパケット(以下、「ユーザパケット」という。)を送信する。中継装置1103(1104)は、ユーザパケットを受信すると、制御装置100から設定された制御情報の中から、ユーザパケットに適合するマッチ条件を持つ制御情報を検索するが、この時点では、図12に示したように、ユーザパケットを処理するための制御情報は設定されていない。そこで、中継装置1103(1104)は、制御装置100に対してユーザパケットを転送し、制御情報の設定を要求する。制御装置100は、中継装置1103(1104)からユーザパケットを受信すると(STEP41)、トポロジテーブル103を参照して、ユーザパケットを宛先に転送するための転送経路を計算する(STEP42)。
 上述したトポロジの構築、更新により、レガシーネットワークを含んだ全体のトポロジは、図4に示すように把握されているため、制御装置100は、例えば、端末装置1102からのパケットを、中継装置1103、レガシーネットワーク1200、中継装置1104の順で端末装置1105に転送する経路を計算する。
 次に、制御装置100は、計算した転送経路上の中継装置に、転送経路に沿ったパケット転送を行わせるための制御情報を生成する(STEP43)。例えば、制御装置100は、中継装置1103に、端末装置1102からのパケットを、そのポートP2から転送させる制御情報を設定する。また、制御装置100は、中継装置1104に、ポートP2(レガシーネットワーク)から受信した端末装置1105宛てのパケットを、そのポートP1から転送させる制御情報を設定する。
 次に、制御装置100は、前記生成した制御情報を、転送経路上の中継装置1103、1104に設定する(STEP44)。さらに、制御装置100は、STEP41で中継装置1103から受信したパケットを出力するよう、中継装置1104に指示する(STEP45)。
 以上により、その後、端末装置1102から端末1105に宛てて送信されたパケットは、中継装置1103、1104に設定された制御情報に従って端末1105に転送される。
 図17は、中継装置1103に設定される制御情報の例である。図17の左側に「追加」と記載されたエントリが、ユーザパケットを処理するために追加された制御情報である。上から3番目のエントリは、送信元MACアドレス(SMAC)が端末装置1102のMACアドレスであり、かつ、宛先MACアドレス(DMAC)が端末装置1105のMACアドレスであるというマッチ条件が設定されている。そして、このマッチ条件に適合するパケットについて、SMACをMAC-A(中継装置1103のポートP2のMACアドレス)に変更、DMACをMAC-B(中継装置1104のポートP2のMACアドレス)に変更、VLAN ID3000を付与してから、ポートP2から転送する処理を行わせるアクション(Action)が記述されている。また、図17の例では、端末装置1105から端末1102宛ての応答パケットを処理するための制御情報も設定されている。上から4番目のエントリは、宛先MACアドレス(DMAC)がMAC-A(中継装置1103のポートP2のMACアドレス)というマッチ条件に適合するパケットについて、SMAC、DMACをそれぞれ復元し、かつ、VLAN IDを削除した上で、ポートP2から転送させる処理を行わせるアクション(Action)が記述されている。
 図18は、中継装置1104に設定される制御情報の例である。図18の左側に「追加」と記載されたエントリが、ユーザパケットを処理するために追加された制御情報である。上から3番目のエントリは、端末装置1105から端末1102宛ての応答パケットを処理するための制御情報である。具体的には、送信元MACアドレス(SMAC)が端末装置1105のMACアドレスであり、かつ、宛先MACアドレス(DMAC)が端末装置1102のMACアドレスであるというマッチ条件が設定されている。そして、このマッチ条件に適合するパケットについて、SMACをMAC-B(中継装置1104のポートP2のMACアドレス)に変更、DMACをMAC-A(中継装置1103のポートP2のMACアドレス)に変更、VLAN ID3000を付与してから、ポートP2から転送する処理を行わせるアクション(Action)が記述されている。また、上から4番目のエントリは、端末装置1102から端末1105宛てのパケットを処理するための制御情報であり、宛先MACアドレス(DMAC)がMAC-B(中継装置1104のポートP2のMACアドレス)というマッチ条件に適合するパケットについて、SMAC、DMACをそれぞれ復元し、かつ、VLAN IDを削除した上で、ポートP2から転送させる処理を行わせるアクション(Action)が記述されている。
 以上の結果、図19に示すように、レガシーネットワーク1200を経由する双方向のパケット転送が実現される。そして、例えば、端末装置1102から送信された端末1105宛てのパケットは、入口側の中継装置1103にて、レガシーネットワークで正しく転送が行われるようなMAC書き換えが行われ、出口側の中継装置1104にて、復元される。そして、図17、図18に示したように、個々の中継装置に設定する制御情報のエントリ数は2つであり、制御装置100への問い合わせ(制御情報の設定要求)も初回のパケット受信時となっているため、制御装置100や中継装置1103、1104の負荷の増大や、リソース使用量の増大を伴うこともない。
 続いて、本発明の第2~第5の実施形態について説明する。本発明の第2~第5の実施形態は、第1の実施形態と制御装置100によって制御される中継装置が配置されたネットワークと、そうではないネットワーク(レガシーネットワーク)の配置関係が相違するものであり、制御装置100の構成に特段の変更はない。以下、その相違点を中心に説明する。
[第2の実施形態]
 図20は、本発明の第2の実施形態の通信システムの構成を示す図である。図4に示した第1の実施形態との相違点は、レガシーネットワーク1200の両端に、制御装置100によって制御される中継装置が配置されたネットワーク1310、1320が配置され、端末装置1001~1004がこれらを経由して通信する点である。
 図21は、第1の実施形態と同様に、トポロジ確認用のパケットを送信することにより把握されるネットワークトポロジを示す図である。図21に表されたとおり、第1の実施形態の中継装置1103が、中継装置1010、1011の2台となり、第1の実施形態の中継装置1104が、中継装置1018、1019の2台となり、それぞれに端末装置1001~1004が接続されているだけで、基本的な構成に相違は無い。
 図22は、第1の実施形態と同様に、レガシーリンク確立用パケットを送信することにより把握されるネットワークトポロジを示す図である。レガシーリンク確立用パケットの送信により、中継装置1071~1076は、それぞれのポートと、中継装置1010、1011、1018、1019のレガシー接続ポートのMACアドレスとの対応関係を学習する。また、制御装置100は、中継装置1010、1011、1018、1019間のリンクの状態を把握する。これにより、第1の実施形態と同様に、レガシーネットワークの入口側の中継装置には、必要なヘッダの書き換えを行ってからレガシーネットワークに転送する制御情報が設定され、レガシーネットワークからの出口側の中継装置には、ヘッダの復元を行ってから転送する制御情報が設定される。この結果、端末装置1001~1004間のパケットは、それぞれレガシーネットワークとの接続ポートを有する中継装置にてヘッダ書換え(復元)が行われ、レガシーネットワークを越えた後は、制御装置100の指示に従い、宛先の通信端末に転送される。
 以上のように、本発明は、図4に示した端末装置と中継装置とが1対1で配置されている構成に限らず、制御装置100の配下の中継装置が複数あり、それぞれに端末装置が接続されているようなネットワーク構成にも適用できる。
[第3の実施形態]
 図23は、本発明の第3の実施形態の通信システムの構成を示す図である。図20に示した第2の実施形態との相違点は、レガシーネットワークが複数あり、レガシーネットワーク1200、1210として複数存在する点である。この構成は、第1の実施形態の構成を並列接続した構成と見ることもできる。この構成では、制御装置100が、レガシーネットワーク1200、1210のどちらを用いてユーザパケットを転送するかを選択することができる、という利点がある。例えば、端末装置1001-1003間のパケットは、レガシーネットワーク1200を経由して転送し、端末装置1002-1004間のパケットは、レガシーネットワーク1210を経由して転送するといった分散が可能となる。また例えば、端末装置1001-1003間のパケットと端末装置1002-1004間のパケットとの双方を、レガシーネットワーク1200を経由して転送し、レガシーネットワーク1210を休止させるといった運用も可能となる。
[第4の実施形態]
 図24は、本発明の第4の実施形態の通信システムの構成を示す図である。図23に示した第3の実施形態との相違点は、レガシーネットワーク1210がなく、ネットワーク1310とネットワーク1320とが直接接続されている点である。この構成では、この構成では、制御装置100が、レガシーネットワーク1200を用いてユーザパケットを転送するか否かを選択することができる、という利点がある。
[第5の実施形態]
 図25は、本発明の第5の実施形態の通信システムの構成を示す図である。図23に示した第3の実施形態との相違点は、ネットワーク1310のさらに外側にレガシーネットワーク1210があり、さらにその外側に制御装置が制御可能な中継装置が配置されているネットワーク1330が配置されている点である。
 本実施形態においても、レガシーリンク確立用パケットの送信により、レガシーネットワーク1200、1210上の中継装置におけるアドレス学習が行われ、また、制御装置100によるネットワーク1310-1320に属する中継装置間のリンク及びネットワーク1320-1330に属する中継装置間のリンクの状態の把握が行われる。このため、第1の実施形態と同様に、制御装置100から、必要なヘッダ書換えとパケット転送を指示する制御情報を設定することで、2つのレガシーネットワーク1200、1210を経由してパケットを転送することができる。
[第6の実施形態]
 続いて、仮想マシンが動作するマシン間の通信に本発明を適用した第6の実施形態について説明する。図26は、本発明の第6の実施形態の通信システムの構成を示す図である。図6を参照すると、コアネットワークを構成する(コア)中継装置20-1~20-3(以下、特に区別しない場合、「中継装置20」と記す。)と、マシン40-1~40-5及びストレージ50と接続された(エッジ)中継装置30-1~30-3(以下、特に区別しない場合、「中継装置30」と記す。)と、これら中継装置20-1~20-3及び中継装置30-1~30-3を制御する制御装置10とを含む構成が示されている。
 制御装置10は、中継装置20、30に対して制御情報を設定することで、マシン40-1~40-5上で動作する仮想マシン(以下、「VM」と記す。)及びストレージ50間の通信を制御する。
 中継装置20は、中継装置30とメッシュ状に接続されて、任意のVMとVM、任意のVMとストレージ50間の経路を構成することが可能となっている。
 中継装置20、30は、前記制御装置10から設定された制御情報を保持し、この制御情報を参照して受信パケットの処理を行う。具体的には、パケットを受信すると、制御情報の中から、受信パケットのヘッダ情報等に適合するマッチ条件を持つ制御情報に記述された処理内容(アクション)を実行する。一方、受信パケットのヘッダ情報に適合するマッチ条件を持つ制御情報を保持していない場合、中継装置20、30は、制御装置10に対して、受信パケット(又は受信パケットから抽出した情報)を送信し、制御情報の設定を要求する。中継装置20、30の基本的な動作は、第1の実施形態の中継装置1103、1104と同様である。
 マシン40-1~40-5は、複数のユーザにそれぞれ専用的に利用させるVM1~VM10が動作する仮想化サーバ等と呼ばれる機器によって構成されている。ストレージ50は、これらVMからアクセスするデータ等を格納している。従って、ユーザは、VMを利用してストレージ50にアクセスして、必要なデータを参照したり、他のVMと通信したり、VMからストレージ50にデータを保存することができるようになっている。
 続いて、上記のようなVM-ストレージ間、VM-VM間のL2レベルの通信に必要な制御情報を設定するための制御装置10の動作について説明する。
 図27は、本発明の第6の実施形態の制御装置の動作を表したフローチャートである。ここでは、VM1がVM5と通信をするための設定について説明する。はじめに、VM1が、VM5のMACアドレスを解決するため、ARP(Address Resolution Protocol)パケットを送信する(ステップS101)。
 中継装置30-1は、前記ARPパケットに対応する制御情報を保持していないため、制御装置10にARPパケットを転送する。制御装置10は、受信したARPパケットからVM1の位置(中継装置30-1の特定のポートに接続)と、MACアドレスとを学習する(ステップS102)。
 次に、制御装置10は、他の中継装置30-2、30-3から中継装置30-1を経由してVM1に到る転送経路を計算する。また、制御装置10は、前記計算した転送経路に沿ったパケット転送を実現するL2用の制御情報(第1の制御情報)を生成し、経路上の中継装置に設定する(ステップS103)。
 図28は、上記VM1宛てのL2用の制御情報の設定が完了した状態を示す図である。図中の中継装置20-1、30-1~30-3を示すボックス内の「VM1」がVM1宛ての制御情報を表している。
 次に、制御装置10は、ステップS102で受信したARPパケットを送信元の中継装置30-1以外の中継装置30-2、30-3に送信する(ステップS104)。中継装置30-2、30-3は、それぞれ受信したARPパケットを自装置内で動作するVM5~VM10に転送する。
 ARPパケットは、VM5のMACアドレスを解決するためのものであるため、VM5がARP応答を送信する。中継装置30-2は、前記ARP応答パケットに対応する制御情報を保持していないため、制御装置10にARP応答パケットを転送する。制御装置10は、受信したARP応答パケットからVM5の位置(中継装置30-2の特定のポートに接続)と、MACアドレスとを学習する(ステップS105)。また、制御装置10は、VM5に代わって、学習したVM5のMACアドレスをVM1に応答する。
 次に、制御装置10は、他の中継装置30-1、30-3から中継装置30-2を経由してVM5に到る転送経路を計算する。また、制御装置10は、前記計算した転送経路に沿ったパケット転送を実現するL2用の制御情報(第1の制御情報)を生成し、経路上の中継装置に設定する(ステップS106)。
 図29は、上記VM1とVM5宛てのL2用の制御情報の設定が完了した状態を示す図である。図中の中継装置20-1、30-1~30-3を示すボックス内の「VM5」がVM5宛ての制御情報を表している。
 次に、VM5がVM1に対して、VM1のMACアドレスを解決するためのARPパケットを送信すると(ステップS107)、中継装置30-2は、前記ARPパケットに対応する制御情報を保持していないため、制御装置10にARPパケットを転送する。制御装置10は、VM1に代わって、ステップS102で学習済みのVM1のMACアドレスをVM5に応答する(ステップS108)。
 以上により、VM1とVM5とがそれぞれ相手のMACアドレスを宛先としたL2パケットを送受信できる状態になる(ステップS109)。
 図30、図31は、上記のステップS109の時点で、中継装置30-1、中継装置20-1、中継装置30-2に設定される制御情報の例を示す図である。図31は、VM1からVM5宛てのL2パケットを処理するための制御情報であり、宛先MACアドレスとしてVM5のMACアドレスを設定したマッチ条件と、転送経路に沿ったパケット転送を行わせる処理内容(アクション)とを対応付けた内容となっている。同様に、図32は、VM5からVM1宛てのL2パケットを処理するための制御情報である。いずれもマッチ条件として宛先MACアドレスのみを指定したものとなっており、中継装置と制御装置10の負荷を増大させることなく転送を実現できるものとなっている。
 ここで、VM1-VM5間でL3パケットの送信が行われる場合を考える。図32は、VM1-VM5間で授受されるL2パケット及びL3パケットの送信元アドレスと宛先アドレスとを示す図である。図32に示したように、L3パケットは、宛先MACアドレスとして、デフォルトゲートウェイとして設定されている装置(本実施形態では、制御装置10とする)のMACアドレスが設定されているため、上記図30、図31に示す制御情報では転送できない。このため、中継装置30-1から制御装置10に対して、L3パケットが転送されて、制御情報の設定要求が行われる。
 図33は、VM1からVM5宛てにL3パケットが送信された場合の制御装置10の動作を表した流れ図である。
 図33を参照すると、VM1がVM5宛てにL3パケットを送信すると(ステップS201)、中継装置30-1が制御装置10宛てにL3パケットを転送し、制御情報の設定を要求する(ステップS202)。
 前記制御情報の設定要求を受けた制御装置10は、図30に示す中継装置30-1に設定済みの制御情報を図34に示すように書き換える(ステップS203)。図34の例では、宛先MACアドレスに、GW(制御装置10)のMACアドレスが設定され、かつ、宛先IPアドレスに、VM5のIPアドレスが設定されている場合、即ち、VM5を宛先としたL3パケットを受信した場合、中継装置30-1は、送信元のMACアドレスをGW(制御装置10)のMACアドレスに書き換え、かつ、宛先MACアドレスにVM5のMACアドレスに書き換えてから、中継装置20-1に転送する処理を行うことになる。これにより、中継装置20-1、中継装置30-2は、VM5宛てのL3パケットをL2パケットとして転送することになる。
 また、制御装置10は、図31に示す中継装置30-2に設定済みの制御情報を図35に示すように書き換える。図35の例では、宛先MACアドレスに、GW(制御装置10)のMACアドレスが設定され、かつ、宛先IPアドレスに、VM1のIPアドレスが設定されている場合、即ち、VM1を宛先としたL3パケットを受信した場合、中継装置30-2は、送信元のMACアドレスをGW(制御装置10)のMACアドレスに書き換え、かつ、宛先MACアドレスにVM1のMACアドレスに書き換えてから、中継装置20-1に転送する処理を行うことになる。これにより、中継装置20-1、中継装置30-1は、VM1宛てのL3パケットをL2パケットとして転送することになる。
 前記制御情報の書き換えが完了すると、制御装置10は、出口側の中継装置30-2に対して、ステップS202で転送を受けたVM5宛てのL3パケットを転送し、VM5に転送させる(ステップS204)。
 その後は、図34、図35に示した制御情報(第2の制御情報)が設定されているため、VM1とVM5間でL3パケットの授受が可能となる(ステップS205)。このときに、入口側の中継装置で必要な書き換えが行われるため、以降の中継装置では、新たな制御情報の設定をしなくとも、宛先MACアドレスをマッチ条件とする制御情報により、パケットを転送することが可能となっている。
 以上のように、本発明は、VMやストレージが稼動する仮想化環境においても好適に適用することが可能である。
 最後に、本発明の好ましい形態を要約する。
[第1の形態]
 (上記第1の視点による制御装置参照)
[第2の形態]
 第1の形態の制御装置において、
 前記第1の階層のアドレスは、MAC(Media Access Control)アドレスであり、前記第2の階層のアドレスはIP(Internet Protocol)アドレスである制御装置。
[第3の形態]
 第2の形態の制御装置において、
 前記第1の制御情報設定部は、前記中継装置を介して一のマシンからARP(Address Resolution Protocol)パケットを受信すると、前記中継装置を介してARPパケットを他のマシンに転送し、
 前記配下の中継装置を介して、前記ARPパケットに対するARP応答パケットを受信すると、前記ARPパケットとARP応答パケットとの送信元のマシン間の経路を計算し、該経路上の中継装置に前記経路に沿ってパケットを転送させる第1の制御情報を設定する制御装置。
[第4の形態]
 第1~第3いずれか一の形態の制御装置において、
 第2の制御情報は、前記第1の制御情報の処理内容フィールドに、宛先MACアドレスに変換させる処理を追加することによって生成される制御装置。
[第5の形態]
 (上記第2の視点による通信システム参照)
[第6の形態]
 (上記第3の視点による通信方法参照)
[第7の形態]
 (上記第4の視点によるプログラム参照)
[第8の形態]
 制御対象の中継装置のうち、制御対象外のネットワークを介して接続する中継装置間のリンクの状態を把握する特定リンク管理部と、
 前記制御対象の中継装置から収集した情報に基づいてトポロジ情報を構築するとともに、前記制御対象外のネットワークを介して接続する中継装置間のリンクの状態に基づいて、前記トポロジ情報を更新するトポロジ管理部と、
 前記制御対象外のネットワークを介して接続する中継装置間のリンクを含んだトポロジ情報に基づいて、前記中継装置に接続するマシン間のパケット転送経路を計算し、該転送経路上の中継装置に、前記転送経路に従ったパケット転送を行わせる制御情報を生成する経路管理部と、
 前記中継装置に前記制御情報を設定する中継装置通信部と、を備え、
 前記制御対象外のネットワークを経由する転送経路上の中継装置のうち、前記制御対象外のネットワークの手前にある中継装置に、パケットが制御対象外のネットワークを通過できるようにヘッダ書換えを行わせ、
 前記制御対象外のネットワークを経由する転送経路上の中継装置のうち、前記制御対象外のネットワークを越えた位置にある中継装置に、前記書き換えたヘッダを復元する処理を行わせること、
 を特徴とする制御装置。
[第9の形態]
 第8の形態の制御装置において、
 前記特定リンク管理部は、前記制御対象外のーネットワークを介して接続する中継装置の一方から他方に所定のパケット送信し、前記他方において前記所定のパケット受信できたか否かにより、前記制御対象外のネットワークを介して接続する中継装置間のリンクの状態を把握する制御装置。
[第10の形態]
 制御対象の中継装置のうち、制御対象外のネットワークを介して接続する中継装置間のリンクの状態を把握する特定リンク管理部と、
 前記制御対象の中継装置から収集した情報に基づいてトポロジ情報を構築するとともに、前記制御対象外のネットワークを介して接続する中継装置間のリンクの状態に基づいて、前記トポロジ情報を更新するトポロジ管理部と、
 前記制御対象外のネットワークを介して接続する中継装置間のリンクを含んだトポロジ情報に基づいて、前記中継装置に接続するマシン間のパケット転送経路を計算し、該転送経路上の中継装置に、前記転送経路に従ったパケット転送を行わせる制御情報を生成する経路管理部と、
 前記中継装置に前記制御情報を設定する中継装置通信部と、を備え、
 前記制御対象外のネットワークを経由する転送経路上の中継装置のうち、前記制御対象外のネットワークの手前にある中継装置に、パケットが制御対象外のネットワークを通過できるようにヘッダ書換えを行わせ、
 前記制御対象外のネットワークを経由する転送経路上の中継装置のうち、前記制御対象外のネットワークを越えた位置にある中継装置に、前記書き換えたヘッダを復元する処理を行わせる制御装置と、
 前記レガシーネットワークを挟んで配置され、前記制御装置から設定された制御情報に従って動作する複数の中継装置と、を含む通信システム。
[第11の形態]
 制御対象の中継装置のうち、制御対象外のネットワークを介して接続する中継装置間のリンクの状態を把握する特定リンク管理部と、
 前記制御対象の中継装置から収集した情報に基づいてトポロジ情報を構築するとともに、前記制御対象外のネットワークを介して接続する中継装置間のリンクの状態に基づいて、前記トポロジ情報を更新するトポロジ管理部と、
 前記制御対象外のネットワークを介して接続する中継装置間のリンクを含んだトポロジ情報に基づいて、前記中継装置に接続するマシン間のパケット転送経路を計算し、該転送経路上の中継装置に、前記転送経路に従ったパケット転送を行わせる制御情報を生成する経路管理部と、
 前記中継装置に前記制御情報を設定する中継装置通信部と、を備える制御装置が、
 前記制御対象外のネットワークを経由する転送経路上の中継装置のうち、前記制御対象外のネットワークの手前にある中継装置に、パケットが制御対象外のネットワークを通過できるようにヘッダ書換えを行わせるステップと、
 前記制御対象外のネットワークを経由する転送経路上の中継装置のうち、前記制御対象外のネットワークを越えた位置にある中継装置に、前記書き換えたヘッダを復元する処理を行わせるステップと、を含む通信方法。
[第12の形態]
 制御対象の中継装置のうち、制御対象外のネットワークを介して接続する中継装置間のリンクの状態を把握する特定リンク管理部と、
 前記制御対象の中継装置から収集した情報に基づいてトポロジ情報を構築するとともに、前記制御対象外のネットワークを介して接続する中継装置間のリンクの状態に基づいて、前記トポロジ情報を更新するトポロジ管理部と、
 前記制御対象外のネットワークを介して接続する中継装置間のリンクを含んだトポロジ情報に基づいて、前記中継装置に接続するマシン間のパケット転送経路を計算し、該転送経路上の中継装置に、前記転送経路に従ったパケット転送を行わせる制御情報を生成する経路管理部と、
 前記中継装置に前記制御情報を設定する中継装置通信部と、を備える制御装置を構成するコンピュータに、
 前記制御対象外のネットワークを経由する転送経路上の中継装置のうち、前記制御対象外のネットワークの手前にある中継装置に、パケットが制御対象外のネットワークを通過できるようにヘッダ書換えを行わせる処理と、
 前記制御対象外のネットワークを経由する転送経路上の中継装置のうち、前記制御対象外のネットワークを越えた位置にある中継装置に、前記書き換えたヘッダを復元する処理を行わせる処理と、を実行させるプログラム。
 なお、上記第5~第7の形態は、第1の形態と同様に、第2~第4の形態に展開することが可能である。同様に、上記第10~第12の形態は、第8の形態と同様に、第9の形態に展開することが可能である。
 なお、上記の特許文献および非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
 10、10A、100 制御装置
 11 第1の制御情報設定部
 12 第2の制御情報設定部
 20-1~20-3、30-1~30-3 中継装置
 40-1~40-5 マシン
 50 ストレージ
 101 中継装置通信部
 102 トポロジ管理部
 103 トポロジテーブル
 104 保守端末通信部
 105 レガシー管理部
 106 レガシー管理テーブル
 107 レガシーリンク管理部
 108 レガシーリンク管理テーブル
 109 経路管理部
 1101 保守端末
 1001~1004、1102、1105 端末装置
 1010、1011、1018、1019、1103、1104 中継装置
 1071~1076、1106、1107 中継装置(L2)
 1200、1210 レガシーネットワーク
 1300~1330 ネットワーク
 P1~P4 ポート番号 

Claims (10)

  1.  予め定めた経路上の中継装置に、第1の階層のアドレスに基づいて、所定のマシン間のパケットを転送する第1の制御情報を設定する第1の制御情報設定部と、
     前記中継装置を介して前記第1の制御情報を設定済みのマシンの一方から、前記第1の階層よりも上位の第2の階層のアドレスを宛先アドレスとしたパケットを受信した場合、前記中継装置に対し、前記第2の階層のアドレスを宛先アドレスとしたパケットの第1の階層の宛先アドレスを前記第1の制御情報に定められた第1の階層のアドレスに変換してから転送させる第2の制御情報を設定する第2の制御情報設定部と、
     を備えた制御装置。
  2.  前記第1の階層のアドレスは、MAC(Media Access Control)アドレスであり、前記第2の階層のアドレスはIP(Internet Protocol)アドレスである請求項1の制御装置。
  3.  前記第1の制御情報設定部は、前記中継装置を介して一のマシンからARP(Address Resolution Protocol)パケットを受信すると、前記中継装置を介してARPパケットを他のマシンに転送し、
     前記配下の中継装置を介して、前記ARPパケットに対するARP応答パケットを受信すると、前記ARPパケットとARP応答パケットとの送信元のマシン間の経路を計算し、該経路上の中継装置に前記経路に沿ってパケットを転送させる第1の制御情報を設定する請求項2の制御装置。
  4.  前記第2の制御情報は、前記第1の制御情報の処理内容フィールドに、宛先MACアドレスに変換させる処理を追加することによって生成される請求項1から3いずれか一の制御装置。
  5.  予め定めた経路上の中継装置に、第1の階層のアドレスに基づいて、所定のマシン間のパケットを転送する第1の制御情報を設定する第1の制御情報設定部と、前記中継装置を介して前記第1の制御情報を設定済みのマシンの一方から、前記第1の階層よりも上位の第2の階層のアドレスを宛先アドレスとしたパケットを受信した場合、前記中継装置に対し、前記第2の階層のアドレスを宛先アドレスとしたパケットの第1の階層の宛先アドレスを前記第1の制御情報に定められた第1の階層のアドレスに変換してから転送させる第2の制御情報を設定する第2の制御情報設定部と、を備えた制御装置と、
     前記制御装置より、前記第1、第2の制御情報が設定される中継装置と、
     を含む通信システム。
  6.  予め定めた経路上の中継装置に、第1の階層のアドレスに基づいて、所定のマシン間のパケットを転送する第1の制御情報を設定するステップと、
     前記中継装置を介して前記第1の制御情報を設定済みのマシンの一方から、前記第1の階層よりも上位の第2の階層のアドレスを宛先アドレスとしたパケットを受信した場合、前記中継装置に対し、前記第2の階層のアドレスを宛先アドレスとしたパケットの第1の階層の宛先アドレスを前記第1の制御情報に定められた第1の階層のアドレスに変換してから転送させる第2の制御情報を設定するステップと、
     を含む通信方法。
  7.  制御装置を構成するコンピュータに、
     予め定めた経路上の中継装置に、第1の階層のアドレスに基づいて、所定のマシン間のパケットを転送する第1の制御情報を設定する処理と、
     前記中継装置を介して前記第1の制御情報を設定済みのマシンの一方から、前記第1の階層よりも上位の第2の階層のアドレスを宛先アドレスとしたパケットを受信した場合、前記中継装置に対し、前記第2の階層のアドレスを宛先アドレスとしたパケットの第1の階層の宛先アドレスを前記第1の制御情報に定められた第1の階層のアドレスに変換してから転送させる第2の制御情報を設定する処理と、
     を実行させるプログラム。
  8.  制御対象の中継装置のうち、制御対象外のネットワークを介して接続する中継装置間のリンクの状態を把握する特定リンク管理部と、
     前記制御対象の中継装置から収集した情報に基づいてトポロジ情報を構築するとともに、前記制御対象外のネットワークを介して接続する中継装置間のリンクの状態に基づいて、前記トポロジ情報を更新するトポロジ管理部と、
     前記制御対象外のネットワークを介して接続する中継装置間のリンクを含んだトポロジ情報に基づいて、前記中継装置に接続するマシン間のパケット転送経路を計算し、該転送経路上の中継装置に、前記転送経路に従ったパケット転送を行わせる制御情報を生成する経路管理部と、
     前記中継装置に前記制御情報を設定する中継装置通信部と、を備え、
     前記制御対象外のネットワークを経由する転送経路上の中継装置のうち、前記制御対象外のネットワークの手前にある中継装置に、パケットが制御対象外のネットワークを通過できるようにヘッダ書換えを行わせ、
     前記制御対象外のネットワークを経由する転送経路上の中継装置のうち、前記制御対象外のネットワークを越えた位置にある中継装置に、前記書き換えたヘッダを復元する処理を行わせること、
     を特徴とする制御装置。
  9.  制御対象の中継装置のうち、制御対象外のネットワークを介して接続する中継装置間のリンクの状態を把握する特定リンク管理部と、
     前記制御対象の中継装置から収集した情報に基づいてトポロジ情報を構築するとともに、前記制御対象外のネットワークを介して接続する中継装置間のリンクの状態に基づいて、前記トポロジ情報を更新するトポロジ管理部と、
     前記制御対象外のネットワークを介して接続する中継装置間のリンクを含んだトポロジ情報に基づいて、前記中継装置に接続するマシン間のパケット転送経路を計算し、該転送経路上の中継装置に、前記転送経路に従ったパケット転送を行わせる制御情報を生成する経路管理部と、
     前記中継装置に前記制御情報を設定する中継装置通信部と、を備え、
     前記制御対象外のネットワークを経由する転送経路上の中継装置のうち、前記制御対象外のネットワークの手前にある中継装置に、パケットが制御対象外のネットワークを通過できるようにヘッダ書換えを行わせ、
     前記制御対象外のネットワークを経由する転送経路上の中継装置のうち、前記制御対象外のネットワークを越えた位置にある中継装置に、前記書き換えたヘッダを復元する処理を行わせる制御装置と、
     前記制御対象外のネットワークを挟んで配置され、前記制御装置から設定された制御情報に従って動作する複数の中継装置と、を含む通信システム。
  10.  制御対象の中継装置のうち、制御対象外のネットワークを介して接続する中継装置間のリンクの状態を把握する特定リンク管理部と、
     前記制御対象の中継装置から収集した情報に基づいてトポロジ情報を構築するとともに、前記制御対象外のネットワークを介して接続する中継装置間のリンクの状態に基づいて、前記トポロジ情報を更新するトポロジ管理部と、
     前記制御対象外のネットワークを介して接続する中継装置間のリンクを含んだトポロジ情報に基づいて、前記中継装置に接続するマシン間のパケット転送経路を計算し、該転送経路上の中継装置に、前記転送経路に従ったパケット転送を行わせる制御情報を生成する経路管理部と、
     前記中継装置に前記制御情報を設定する中継装置通信部と、を備える制御装置が、
     前記制御対象外のネットワークを経由する転送経路上の中継装置のうち、前記制御対象外のネットワークの手前にある中継装置に、パケットが制御対象外のネットワークを通過できるようにヘッダ書換えを行わせるステップと、
     前記制御対象外のネットワークを経由する転送経路上の中継装置のうち、前記制御対象外のネットワークを越えた位置にある中継装置に、前記書き換えたヘッダを復元する処理を行わせるステップと、を含む通信方法。
PCT/JP2013/081803 2012-11-27 2013-11-26 制御装置、通信システム、通信方法及びプログラム WO2014084216A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2014550201A JP6024761B2 (ja) 2012-11-27 2013-11-26 制御装置、通信システム、通信方法及びプログラム
US14/647,428 US10044671B2 (en) 2012-11-27 2013-11-26 Control apparatus, communication system, communication method, and program
US16/039,087 US10523629B2 (en) 2012-11-27 2018-07-18 Control apparatus, communication system, communication method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012-258406 2012-11-27
JP2012258406 2012-11-27

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US14/647,428 A-371-Of-International US10044671B2 (en) 2012-11-27 2013-11-26 Control apparatus, communication system, communication method, and program
US16/039,087 Division US10523629B2 (en) 2012-11-27 2018-07-18 Control apparatus, communication system, communication method, and program

Publications (1)

Publication Number Publication Date
WO2014084216A1 true WO2014084216A1 (ja) 2014-06-05

Family

ID=50827852

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/081803 WO2014084216A1 (ja) 2012-11-27 2013-11-26 制御装置、通信システム、通信方法及びプログラム

Country Status (3)

Country Link
US (2) US10044671B2 (ja)
JP (1) JP6024761B2 (ja)
WO (1) WO2014084216A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016082333A (ja) * 2014-10-14 2016-05-16 富士通株式会社 情報処理システム、制御装置および制御装置の制御プログラム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6330479B2 (ja) * 2014-05-23 2018-05-30 富士通株式会社 情報処理システム及び情報処理方法
US11949604B2 (en) * 2021-10-06 2024-04-02 Inernational Business Machines Corporation Integrated network switch operation

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012023604A1 (ja) * 2010-08-20 2012-02-23 日本電気株式会社 通信システム、制御装置、通信方法およびプログラム
WO2012096131A1 (ja) * 2011-01-13 2012-07-19 日本電気株式会社 ネットワークシステム、及び経路制御方法
JP2012175394A (ja) * 2011-02-21 2012-09-10 Nippon Telegr & Teleph Corp <Ntt> フロースイッチ、フロー制御システムおよびフロー制御方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5044614B2 (ja) 2009-06-26 2012-10-10 株式会社野村総合研究所 市況データ圧縮システム及びプログラム
JP5515649B2 (ja) 2009-11-06 2014-06-11 日本電気株式会社 通信システム、経路制御装置、経路制御方法および経路制御用プログラム
CN107071088B (zh) * 2011-08-17 2020-06-05 Nicira股份有限公司 逻辑l3路由

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012023604A1 (ja) * 2010-08-20 2012-02-23 日本電気株式会社 通信システム、制御装置、通信方法およびプログラム
WO2012096131A1 (ja) * 2011-01-13 2012-07-19 日本電気株式会社 ネットワークシステム、及び経路制御方法
JP2012175394A (ja) * 2011-02-21 2012-09-10 Nippon Telegr & Teleph Corp <Ntt> フロースイッチ、フロー制御システムおよびフロー制御方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016082333A (ja) * 2014-10-14 2016-05-16 富士通株式会社 情報処理システム、制御装置および制御装置の制御プログラム

Also Published As

Publication number Publication date
US20150312206A1 (en) 2015-10-29
US10044671B2 (en) 2018-08-07
JP6024761B2 (ja) 2016-11-16
US20180331998A1 (en) 2018-11-15
JPWO2014084216A1 (ja) 2017-01-05
US10523629B2 (en) 2019-12-31

Similar Documents

Publication Publication Date Title
JP6418261B2 (ja) 通信システム、ノード、制御装置、通信方法及びプログラム
JP6508256B2 (ja) 通信システム、通信装置、制御装置、パケットフローの転送経路の制御方法及びプログラム
JP5757324B2 (ja) コンピュータシステム、及び通信方法
JP5850471B2 (ja) 通信システム、制御装置、ノード制御方法およびプログラム
WO2012090993A1 (ja) 情報システム、制御装置、通信方法およびプログラム
JPWO2014112612A1 (ja) 通信システム、制御装置及びネットワークトポロジの管理方法
JP2014533001A (ja) 転送装置の制御装置、転送装置の制御方法、通信システムおよびプログラム
JP5818268B2 (ja) 通信システム、制御装置、経路制御方法およびプログラム
WO2013141340A1 (ja) 制御装置、通信装置、通信システム、通信方法及びプログラム
JP5854049B2 (ja) 通信システム、制御情報中継装置、制御装置、制御情報の送信方法およびプログラム
US10523629B2 (en) Control apparatus, communication system, communication method, and program
WO2011118586A1 (ja) 通信システム、制御装置、転送ノード、処理規則の更新方法およびプログラム
WO2014104277A1 (ja) 制御装置、通信システム、通信ノードの制御方法及びプログラム
WO2013062070A1 (ja) 制御装置、通信システム、仮想ネットワークの管理方法およびプログラム
JP5854488B2 (ja) 通信システム、制御装置、処理規則の設定方法およびプログラム
WO2014087993A1 (ja) 制御装置、通信システム、通信方法及びプログラム
JP5768600B2 (ja) 通信システム、制御装置、パケット転送方法およびプログラム
JP2016225933A (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: 13858773

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2014550201

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14647428

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13858773

Country of ref document: EP

Kind code of ref document: A1