CONTROL APPARATUS, COMMUNICATION SYSTEM, AND RELAY APPARATUS CONTROL METHOD
20170317921 · 2017-11-02
Assignee
Inventors
Cpc classification
Y02D30/50
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
H04L45/036
ELECTRICITY
International classification
Abstract
A control apparatus connected to two or more first relay apparatuses which form a trunk with a first external relay apparatus and to a second relay apparatus(es) which is connected to at least one of the first relay apparatuses and which is arranged between a destination apparatus that performs a point-to-point communication and the first relay apparatuses. The control apparatus includes a first unit controlling the relay apparatuses; a second unit receiving a request for a configuration about a point-to-point communication, the request including endpoint information about the point-to-point communication; and a third unit determining, before the point-to-point communication occurs, a path(s) of the point-to-point communication, based on the endpoint information about the point-to-point communication and a packet allocation rule(s) of the first external relay apparatus, and setting a packet forwarding rule(s) for the point-to-point communication which uses the trunk in the relay apparatuses on the path(s).
Claims
1. A control apparatus, connected to two or more first relay apparatuses which form a trunk with a first external relay apparatus and to a second relay apparatus(es) which is connected to at least one of the first relay apparatuses and which is arranged between a destination apparatus that performs a point-to-point communication and the first relay apparatuses, the control apparatus, comprising: a first unit controlling the first and second relay apparatuses; a second unit receiving a request for a configuration about a point-to-point communication, the request including endpoint information about the point-to-point communication; and a third unit determining, before the point-to-point communication occurs, a path(s) of the point-to-point communication, based on the endpoint information about the point-to-point communication and a packet allocation rule(s) of the first external relay apparatus, and setting a packet forwarding rule(s) for the point-to-point communication which uses the trunk in the first and second relay apparatuses on the path(s).
2. The control apparatus according to claim 1, wherein the control apparatus is connected to two or more third relay apparatuses which are arranged between the destination apparatus that performs the point-to-point communication and the second relay apparatus(es) and which forms a second trunk with a second external relay apparatus, and wherein the control apparatus sets a packet forwarding rule(s) which uses the two trunks in the first to third relay apparatuses.
3. The control apparatus according to claim 2, wherein the control apparatus instructs at least one of the first relay apparatuses which are connected to the first external relay apparatus to add information for identification of the point-to-point communication to a packet(s) that belongs to the point-to-point communication, and wherein the control apparatus instructs at least one of the third relay apparatuses which are connected to the second external relay apparatus to determine an output port(s) based on the information for identification of the point-to-point communication and to remove the information for identification of the point-to-point communication from the packet(s) that belongs to the point-to-point communication.
4. The control apparatus according to claim 1, further comprising: means for recalculating a path(s) for the packet(s) that belongs to the point-to-point communication based on change of a network topology formed by the relay apparatuses and setting a packet forwarding rule(s) for forwarding the packet(s) that belongs to the point-to-point communication along the recalculated path(s) in a relay apparatus(es) on the recalculated path(s).
5. The control apparatus according to any claim 2, wherein the control apparatus instructs at least one of the first and third relay apparatuses removed from the path(s) of the point-to-point communication by change of the network topology formed by the relay apparatuses to perform port down of a port(s) that belongs to the trunk(s) used by the point-to-point communication.
6. A communication system, comprising: two or more first relay apparatuses which form a trunk with a first external relay apparatus; a second relay apparatus(es) which is connected to at least one of the first relay apparatuses and which is arranged between a destination apparatus that performs a point-to-point communication and the first relay apparatuses; and a control apparatus which controls the first and second relay apparatuses, wherein the control apparatus includes: a first unit receiving a request for a configuration about a point-to-point communication, the request including endpoint information about the point-to-point communication; and a second unit determining, before the point-to-point communication occurs, a path(s) of the point-to-point communication, based on the endpoint information about the point-to-point communication and a packet allocation rule(s) of the first external relay apparatus, and setting a packet forwarding rule(s) for the point-to-point communication which uses the trunk in the first and second relay apparatuses on the path(s).
7. The communication system according to claim 6, wherein two or more third relay apparatuses which form a second trunk with a second external relay apparatus between the destination apparatus that performs the point-to-point communication and the second relay apparatus(es), and wherein the control apparatus sets a packet forwarding rule(s) which uses the two trunks in the first to third relay apparatuses.
8. The communication system according to claim 7, wherein the control apparatus instructs at least one of the first relay apparatuses which are connected to the first external relay apparatus to add information for identification of the point-to-point communication to a packet(s) that belongs to the point-to-point communication, and wherein the control apparatus instructs at least one of the third relay apparatuses which are connected to the second external relay apparatus to determine an output port(s) based on the information for identification of the point-to-point communication and to remove the information for identification of the point-to-point communication from the packet(s) that belongs to the point-to-point communication.
9. The communication system according to claim 6, wherein the control apparatus further comprises: a recalculating unit recalculating a path(s) for the packet(s) that belongs to the point-to-point communication based on change of a network topology formed by the relay apparatuses and setting a packet forwarding rule(s) for forwarding the packet(s) that belongs to the point-to-point communication along the recalculated path(s) in a relay apparatus(es) on the recalculated path(s).
10. A relay apparatus control method, causing a control apparatus, which is connected to two or more first relay apparatuses which form a trunk with a first external relay apparatus, which is connected to a second relay apparatus(es) which is connected to at least one of the first relay apparatuses and which is arranged between a destination apparatus that performs a point-to-point communication and the first relay apparatuses, and which controls the first and second relay apparatuses, to perform: receiving a request for a configuration about a point-to-point communication, the request including endpoint information about the point-to-point communication; and determining, before the point-to-point communication occurs, a path(s) of the point-to-point communication, based on the endpoint information about the point-to-point communication and a packet allocation rule(s) of the first external relay apparatus, and setting a packet forwarding rule(s) for the point-to-point communication which uses the trunk in the first and second relay apparatuses on the path(s).
11. The control apparatus according to claim 2, further comprising: a recalculating unit recalculating a path(s) for the packet(s) that belongs to the point-to-point communication based on change of a network topology formed by the relay apparatuses and setting a packet forwarding rule(s) for forwarding the packet(s) that belongs to the point-to-point communication along the recalculated path(s) in a relay apparatus(es) on the recalculated path(s).
12. The control apparatus according to claim 3, further comprising: a recalculating unit recalculating a path(s) for the packet(s) that belongs to the point-to-point communication based on change of a network topology formed by the relay apparatuses and setting a packet forwarding rule(s) for forwarding the packet(s) that belongs to the point-to-point communication along the recalculated path(s) in a relay apparatus(es) on the recalculated path(s).
13. The control apparatus according to claim 3, wherein the control apparatus instructs at least one of the first and third relay apparatuses removed from the path(s) of the point-to-point communication by change of the network topology formed by the relay apparatuses to perform port down of a port(s) that belongs to the trunk(s) used by the point-to-point communication.
14. The control apparatus according to claim 4, wherein the control apparatus instructs at least one of the first and third relay apparatuses removed from the path(s) of the point-to-point communication by change of the network topology formed by the relay apparatuses to perform port down of a port(s) that belongs to the trunk(s) used by the point-to-point communication.
15. The control method according to claim 10, wherein the control apparatus is connected to two or more third relay apparatuses which are arranged between the destination apparatus that performs the point-to-point communication and the second relay apparatus(es) and which forms a second trunk with a second external relay apparatus, and wherein the control method sets a packet forwarding rule(s) which uses the two trunks in the first to third relay apparatuses.
16. The control method according to claim 15, wherein the control apparatus instructs at least one of the first relay apparatuses which are connected to the first external relay apparatus to add information for identification of the point-to-point communication to a packet(s) that belongs to the point-to-point communication, and wherein the control apparatus instructs at least one of the third relay apparatuses which are connected to the second external relay apparatus to determine an output port(s) based on the information for identification of the point-to-point communication and to remove the information for identification of the point-to-point communication from the packet(s) that belongs to the point-to-point communication.
17. The control method according to claim 10, further comprising: recalculating a path(s) for the packet(s) that belongs to the point-to-point communication based on change of a network topology formed by the relay apparatuses and setting a packet forwarding rule(s) for forwarding the packet(s) that belongs to the point-to-point communication along the recalculated path(s) in a relay apparatus(es) on the recalculated path(s).
18. The control method according to claim 15, wherein the control apparatus instructs at least one of the first and third relay apparatuses removed from the path(s) of the point-to-point communication by change of the network topology formed by the relay apparatuses to perform port down of a port(s) that belongs to the trunk(s) used by the point-to-point communication.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
[0027]
[0028]
[0029]
[0030]
[0031]
[0032]
[0033]
[0034]
[0035]
[0036]
PREFERRED MODES
[0037] First, an outline of an exemplary embodiment of the present disclosure will be described with reference to a drawing. In the following outline, various components are denoted by reference characters for the sake of convenience. Namely, the following reference characters are merely used as examples to facilitate understanding of the present disclosure, not to limit the present disclosure to the illustrated modes.
[0038] As illustrated in
[0039] Hereinafter, the term “trunk” will be used to mean an aggregated link (trunking) achieved by using a method called port trunking or link aggregation. Vendors of network apparatuses call these methods Bonding, Teaming, etc. as the functional names of their respective apparatuses. In any case, redundancy (improvement in availability), load distribution (or balancing), parallelization, etc. are achieved by handling a plurality of links in a single section as a single virtual link.
[0040] The control apparatus 101A includes: unit 111a for receiving a request for a configuration about a point-to-point communication, the request including endpoint information about the point-to-point communication; and unit 121a for determining a path(s) of the point-to-point communication, based on the endpoint information about the point-to-point communication and a packet allocation rule(s) of the first external relay apparatus 301A, and setting a packet forwarding rule(s) for the point-to-point communication which uses the trunk in the first and second relay apparatuses on the path(s).
[0041] With the above configuration, when the control apparatus 101A receives a request for a configuration about a point-to-point communication, the control apparatus 101A sets packet forwarding rules in the relay apparatus on a path(s) of the point-to-point communication. Thus, without waiting for a packet forwarding rule setting request from any of the relay apparatuses 201A to 204A, the point-to-point communication can be started. In addition, since it is only necessary to set packet forwarding rules that realize the point-to-point communication between endpoints, the number of packet forwarding rules set in an individual one of the relay apparatuses can be reduced.
First Exemplary Embodiment
[0042] Next, a first exemplary embodiment of the present disclosure will be described in detail with reference to the drawings.
[0043] The relay apparatuses 201 to 206 are connected to the control apparatus 101 via control links, respectively. The relay apparatuses 201 to 206 are connected to each other via data forwarding links. Hereinafter, the relay apparatuses 201 and 204 connected to an external relay apparatus 301 will be referred to as first relay apparatuses. The relay apparatuses 203 and 206 connected to an external relay apparatus 302 will be referred to as third relay apparatuses. The relay apparatuses arranged between the first and third relay apparatuses will be referred to as second relay apparatuses.
[0044] The external relay apparatus 301 has a function of forming a trunk by using a plurality of physical ports. Among the ports of the external relay apparatus 301, the ports forming the trunk are connected to the relay apparatuses 201 and 204 via data forwarding links.
[0045] Likewise, among a plurality of ports of the external relay apparatus 302, the ports forming a trunk are connected to the relay apparatuses 203 and 206 via data forwarding links.
[0046] Hereinafter, the present exemplary embodiment will be described assuming that switches complied with OpenFlow in NPL 1 are used as the relay apparatuses 201 to 206. However, apparatuses other than OpenFlow switches may be used as the relay apparatuses 201 to 206. Alternatively, apparatuses that can specify matching conditions of arbitrary packets by using CLI (command line interface) via Telnet to set packet paths may be used.
[0047]
[0048] The relay apparatus communication unit 1011 performs control communications with the relay apparatuses 201 to 206. More specifically, the relay apparatus communication unit 1011 establishes control sessions and exchanges control commands with the relay apparatuses 201 to 206. OpenFlow (protocol) may be used for the control commands. Communications may be performed by CLI via Telnet or SNMP (Simple Network Management Protocol).
[0049] Via the relay apparatus communication unit 1011, the topology acquisition unit 1012 transmits topology acquisition packets, acquires a topology of the relay apparatuses 201 to 206, and stores the acquired topology in the topology table 1013. The topology can be acquired by causing the relay apparatuses 201 to 206 to transmit neighboring relay apparatus recognition information. A typical example of such protocol for recognition of neighboring nodes among relay apparatuses (switches) is the Link Layer Discovery Protocol. The control apparatus 101 may cause a certain relay apparatus(es) to output a packet(s) including an ID(s) of the relay apparatus(es) and port number(s) from a certain port(s). In such case, by receiving the corresponding packet(s) from an opposite relay apparatus(es), the control apparatus 101 can recognize a connection(s) between (among) the relay apparatus(es). When outputting and receiving packets, the control apparatus can use Packet-out and Packet-in messages of OpenFlow (protocol). Information about the network topology may be set in advance in the topology table 1013.
[0050] The unicast path search unit 1014 refers to the topology table 1013 and searches for a unicast path(s) on the relay apparatuses 201 to 206 by using a predetermined calculation algorithm. When a unicast path(s) is calculated, a path different for each pair of relay apparatuses connected to the external relay apparatuses 301 and 302, respectively, may be calculated. Alternatively, a path tree in which a relay apparatus connected to the external relay apparatus 301 or 302 is used as a start or end point may be calculated. For example, a shortest path tree (a typical example of which is Dijkstra's algorithm) can be used as the path calculation method. The number of paths is not limited to one. A different path may be used for each communication unit. When calculating a path, the calculation may be performed by using each one of the relay apparatuses as a start or end point.
[0051] The unicast path control command generation unit 1015 generates and transmits control commands via the relay apparatus communication unit 1011, to set packet forwarding rules in the relay apparatuses 201 to 206 on a path(s) found by the unicast path search unit 1014.
[0052] The point-to-point information reception unit 1016 receives configuration information about a point-to-point communication(s) (point-to-point configuration information) from a network administrator or the like. The input to the point-to-point information reception unit 1016 can be performed by using CLI (command line interface) or GUI (graphical user interface).
[0053] In the present exemplary embodiment, an item of point-to-point configuration information includes a pair of relay apparatuses connected to external relay apparatuses which are the endpoints of the corresponding point-to-point communication and a pair of ports used for the point-to-point communication. A trunk formed by ports of a plurality of relay apparatuses may be specified as the endpoints of the point-to-point communication. In addition to the ports of the relay apparatuses 201 to 206 or a trunk, VLAN IDs (Virtual Local Area Network IDentifiers) may be specified. In this way, point-to-point communications can be performed for only certain VLAN communications.
[0054] The point-to-point information storage unit 1017 accumulates the point-to-point configuration information received by the point-to-point information reception unit 1016. When calculating a unicast path for a point-to-point communication, the unicast path search unit 1014 refers to the accumulated point-to-point information.
[0055]
[0056] Based on a notification from the unicast path search unit 1014, the trunk control command generation unit 1018 generates a trunk control command(s) for the relay apparatuses 201 to 206 and transmits the control command(s) via the relay apparatus communication unit 1011.
[0057] In the present exemplary embodiment, data communication paths and control communication paths are separately arranged. However, a single kind of paths may be used for both data and control operations. In addition, in the present exemplary embodiment, six relay apparatuses and two external relay apparatuses are used, and two relay apparatuses form a trunk. However, these numbers are used as an example to facilitate the description. The present disclosure is not particularly limited to these numbers.
[0058] In addition, an individual one of the units (processing means) of the control apparatus 101 or 101A illustrated in
[0059] Next, an operation according to the present exemplary embodiment will be described in detail with reference to the drawings. First, an operation of how the control apparatus 101 sets point-to-point communication paths (packet forwarding rules) in the relay apparatuses 201 to 206 will be described.
[0060] The following description assumes that the control apparatus 101 has received point-to-point communication configuration information between a trunk formed by the relay apparatuses 201 and 204 and a trunk formed by the relay apparatuses 203 and 206 in
[0061]
[0062] The control apparatus 101 generates packet forwarding rules set in the relay apparatuses on the two unicast paths (step S0-3).
[0063] Next, the control apparatus 101 sets packet forwarding rules generated in step S0-3 in the relay apparatus 201 (step S1-1).
[0064] The packet forwarding rule 2011 in
[0065] Likewise, the packet forwarding rule 2012 in
[0066] As defined by the packet forwarding rules 2011 and 2012 in
[0067] Examples of the method for calculating a hash value from a packet header includes a method for calculating a hash value from the source MAC (Media Access Control) address, the destination MAC address, and the VLAN ID of an Ethernet header (hereinafter, “Ethernet” is a registered trademark). The method for referring to a certain bit value in a certain header of an Ethernet header may be used. In addition, the allocation (classification) destination selection rules (hash value calculation method) in the external relay apparatus 301 may be used as the rule (the hash value calculation method) for allocating packets into the relay apparatus 203 or 206.
[0068] In addition, a point-to-point communication ID and an ID indicating the destination relay apparatus ID may be allocated to a matching packet by encapsulating the matching packet with an Ethernet frame based on MAC in MAC and storing the IDs in the MAC address in the outer Ethernet header. Alternatively, a VLAN Tag may be added based on Q in Q, and the IDs may be stored in added VLAN headers. Alternatively, an MPLS (Multi Protocol Label Switching) header may be added, and the IDs may be stored in labels in the added MPLS header.
[0069] In addition, the control apparatus 101 sets packet forwarding rules 2013 and 2014 in
[0070] Next, the control apparatus 101 sets packet forwarding rules generated in step S0-3 in the relay apparatus 202 (step S1-2).
[0071] The packet forwarding rule 2021 in
[0072] Next, the control apparatus 101 sets packet forwarding rules generated in step S0-3 in the relay apparatus 203 (step S1-3).
[0073] The packet forwarding rule 2031 in
[0074] The packet forwarding rule 2032 in
[0075] After the packet forwarding rules are set in the relay apparatus 201 to 203 as described above, as illustrated in
[0076] Likewise, the control apparatus 101 sets packet forwarding rules generated in step S0-3 in the relay apparatus 204 (step S1-4).
[0077] Likewise, the control apparatus 101 sets packet forwarding rules generated in step S0-3 in the relay apparatuses 205 and 206 (step S1-5 and S1-6).
[0078] After the packet forwarding rules are set in the relay apparatus 204 to 206 as described above, as illustrated in
[0079] While specific packet forwarding rules will not be described, the control apparatus 101 calculates a path(s) for forwarding packets received by the relay apparatus 203 from the external relay apparatus 302 to the relay apparatus 201 or 204 and sets relevant packet forwarding rules in accordance with the same procedure. The control apparatus 101 also calculates a path(s) for forwarding packets received by the relay apparatus 206 from the external relay apparatus 302 to the relay apparatus 201 or 204 and sets relevant packet forwarding rules. In this way, a bidirectional point-to-point communication between arbitrary two points can be performed.
[0080] Next, an operation performed when a failure occurs between the relay apparatuses 202 and 203 in
[0081]
[0082] When receiving the notification, the control apparatus 101 updates the topology table 1013 based on the content of the notification and recalculates the unicast path affected by the failure. Based on the recalculated result, the control apparatus 101 instructs the relay apparatus 202 to change a packet forwarding rule, as illustrated in
[0083] Alternatively, the corresponding packet forwarding rule in
[0084] Next, an operation performed when a failure occurs between the relay apparatuses 202 and 203 and between the relay apparatuses 203 and 206 in
[0085]
[0086] When receiving the notification, the control apparatus 101 updates the topology table 1013 based on the content of the notification and recalculates a unicast path affected by the failure. Based on the recalculated result, the control apparatus 101 instructs the relay apparatus 201 to change a packet forwarding rule, as illustrated in
[0087] Likewise, the control apparatus 101 instructs the relay apparatus 204 to change a packet forwarding rule as illustrated in
[0088] In addition, the control apparatus 101 instructs the relay apparatus 203 to perform port down of a port that forms the trunk connected to the external relay apparatus 302 (step S3-5). After the port down performed by the relay apparatus 203, the external relay apparatus 302 is notified of the port down. As a result, the external relay apparatus 302 will not forward packets to the relay apparatus 203, which does not have any paths to the other relay apparatus.
[0089] In addition, in the example in
[0090] As described above, the present exemplary embodiment not only realizes a point-to-point communication but also enables a continuous communication by using an alternative path even when multiple failures occur.
[0091] The advantageous effects of the present exemplary embodiment will be summarized as follows. The first advantageous effect is that a point-to-point communication can be realized without using a protocol that prevents a loop such as Spanning Tree Protocol in a packet forwarding network formed by a plurality of relay apparatuses.
[0092] The second advantageous effect is that, when a communication occurs, the communication can be performed promptly since necessary packet forwarding rules are set in relevant relay apparatuses prior to the communication (see
[0093] The third advantageous effect is that a point-to-point communication can be performed between trunks. Namely, redundancy and load balancing can be realized in a communication between relay apparatuses in the point-to-point communication and between an external relay apparatus and a relay apparatus.
[0094] While an individual exemplary embodiment of the present invention has thus been described, the present invention is not limited thereto. Further variations, substitutions, or adjustments can be made without departing from the basic technical concept of the present invention. For example, the configurations of the networks and elements and specific examples of the packet forwarding rules illustrated in the drawings are used only as examples to facilitate understanding of the present invention. Namely, the present invention is not limited to what is illustrated in the drawings.
[0095] For example, while the above exemplary embodiment has been described assuming that the endpoints of a point-to-point communication are arranged between trunks, a point-to-point communication can also be performed between ports of relay apparatuses or between a port of a relay apparatus and a trunk.
[0096] For example, VLAN IDs may be included in the point-to-point configuration information according to the above exemplary embodiment (see
[0097] Finally, suitable modes of the present invention will be summarized.
[Mode 1]
[0098] (See the control apparatus according to the above first aspect)
[Mode 2]
[0099] The control apparatus according to mode 1,
[0100] wherein the control apparatus is connected to two or more third relay apparatuses which are arranged between the destination apparatus that performs the point-to-point communication and the second relay apparatus(es) and which forms a second trunk with a second external relay apparatus, and
[0101] wherein the control apparatus sets a packet forwarding rule(s) which uses the two trunks in the first to third relay apparatuses.
[Mode 3]
[0102] The control apparatus according to mode 2,
[0103] wherein the control apparatus instructs at least one of the first relay apparatuses which are connected to the first external relay apparatus to add information for identification of the point-to-point communication to a packet(s) that belongs to the point-to-point communication, and
[0104] wherein the control apparatus instructs at least one of the third relay apparatuses which are connected to the second external relay apparatus to determine an output port(s) based on the information for identification of the point-to-point communication and to remove the information for identification of the point-to-point communication from the packet(s) that belongs to the point-to-point communication.
[Mode 4]
[0105] The control apparatus according to any one of modes 1 to 3, further comprising:
[0106] means for recalculating a path(s) for the packet(s) that belongs to the point-to-point communication based on change of a network topology formed by the relay apparatuses and setting a packet forwarding rule(s) for forwarding the packet(s) that belongs to the point-to-point communication along the recalculated path(s) in a relay apparatus(es) on the recalculated path(s).
[Mode 5]
[0107] The control apparatus according to any one of modes 2 to 4, wherein the control apparatus instructs at least one of the first and third relay apparatuses removed from the path(s) of the point-to-point communication by change of the network topology formed by the relay apparatuses to perform port down of a port(s) that belongs to the trunk(s) used by the point-to-point communication.
[Mode 6]
[0108] (See the communication system according to the above second aspect)
[Mode 7]
[0109] The communication system according to mode 6,
[0110] wherein two or more third relay apparatuses which form a second trunk with a second external relay apparatus between the destination apparatus that performs the point-to-point communication and the second relay apparatus(es), and
[0111] wherein the control apparatus sets a packet forwarding rule(s) which uses the two trunks in the first to third relay apparatuses.
[Mode 8]
[0112] The communication system according to mode 7,
[0113] wherein the control apparatus instructs at least one of the first relay apparatuses which are connected to the first external relay apparatus to add information for identification of the point-to-point communication to a packet(s) that belongs to the point-to-point communication, and
[0114] wherein the control apparatus instructs at least one of the third relay apparatuses which are connected to the second external relay apparatus to determine an output port(s) based on the information for identification of the point-to-point communication and to remove the information for identification of the point-to-point communication from the packet(s) that belongs to the point-to-point communication.
[Mode 9]
[0115] The communication system according to any one of modes 6 to 8, wherein the control apparatus further comprises: means for recalculating a path(s) for the packet(s) that belongs to the point-to-point communication based on change of a network topology formed by the relay apparatuses and setting a packet forwarding rule(s) for forwarding the packet(s) that belongs to the point-to-point communication along the recalculated path(s) in a relay apparatus(es) on the recalculated path(s).
[Mode 10]
[0116] The communication system according to any one of modes 7 to 9, wherein the control apparatus instructs at least one of the first and third relay apparatuses removed from the path(s) of the point-to-point communication by change of the network topology formed by the relay apparatuses to perform port down of a port(s) that belongs to the trunk(s) used by the point-to-point communication.
[Mode 11]
[0117] (See the relay apparatus control method according to the above third aspect)
[Mode 12]
[0118] (See the program according to the above fourth aspect)
[0119] The above modes 11 and 12 can be expanded to modes 2 to 5 in the same way as mode 1 is expanded to modes 2 to 5.
[0120] The disclosure of the above PTLs and NPL is incorporated herein by reference thereto. Variations and adjustments of the exemplary embodiments and examples are possible within the scope of the overall disclosure (including the claims) of the present invention and based on the basic technical concept of the present invention. Various combinations and selections of various disclosed elements (including the elements in each of the claims, examples, exemplary embodiments, examples, drawings, etc.) are possible within the scope of the disclosure of the present invention. Namely, the present invention of course includes various variations and modifications that could be made by those skilled in the art according to the overall disclosure including the claims and the technical concept. The description discloses numerical value ranges. However, even if the description does not particularly disclose arbitrary numerical values or small ranges included in the ranges, these values and ranges should be deemed to have been specifically disclosed. [0121] 101, 101A control apparatus [0122] 111a setting reception unit [0123] 121a packet forwarding rule setting unit [0124] 131a relay apparatus control unit [0125] 201, 201A, 203A, 204 (first) relay apparatus [0126] 202, 202A, 204A, 205 (second) relay apparatus [0127] 203, 206 (third) relay apparatus [0128] 301, 302, 301A, 302A external relay apparatus [0129] 1011 relay apparatus communication unit [0130] 1012 topology acquisition unit [0131] 1013 topology table [0132] 1014 unicast path search unit [0133] 1015 unicast path control command generation unit [0134] 1016 point-to-point information reception unit [0135] 1017 point-to-point information storage unit [0136] 1018 trunk control command generation unit [0137] 2011 to 2062 packet forwarding rule