The present application claims priority from Japanese patent application JP 2013-141860 filed on Jul. 5, 2013, the content of which is hereby incorporated by reference into this application.
This invention relates to a communication system for coupling a first communication network including data transfer apparatus as components and a second communication network including routers as components to each other.
A router and a transport apparatus are known as communication apparatus constructing an IT network.
The router is a communication apparatus for controlling a communication network in an autonomous distributed manner between the communication apparatus by using a protocol on the Internet Protocol (IP) layer such as the Open Shortest Path First (OSPF) and the Border Gateway Protocol (BGP) specified by the Internet Engineering Task Force (IETF) (for example, refer to J. Moy, “IETF RFC 2328 OSPF Version 2”, [online], April 1998, Internet and Y. Rekhter, et al., “IETF RFC 4271 A Border Gateway Protocol 4 (BGP-4)”, [online], January 2006, Internet).
The transport apparatus is a communication apparatus which includes a plurality of data transfer apparatus for transferring data and network control servers, and controls a communication network by the network control servers for controlling the plurality of data transfer apparatus in a concentrated manner.
A protocol processing server carries out processing relating to the protocol on the IP layer used by the routers to control the communication network, and notifies the network control server of an execution result, thereby coupling the communication network constructed by the autonomous distributed control by the routers and the communication network constructed by the concentrated control by the transport apparatus to each other.
When the communication network constructed by the routers and the communication network constructed by the transport apparatus are coupled to each other by using the protocol processing server, the protocol processing server carries out, in a concentrated manner, the processing for the protocol on the IP layer transmitted by the plurality of routers.
As a scale of the communication network constructed by the data transfer apparatus increases and the number of routers coupled to the transport apparatus increases, the number of protocol packets requiring the protocol processing on the IP layer communicated among the routers increases, resulting in an increase in processing load imposed on the protocol processing server.
It is an object of this invention to provide a communication system capable of decreasing a processing load imposed on a protocol processing server, and adapting to an increase in scale of a communication network constructed by data transfer apparatus.
According to an aspect of the present invention, there is provided a communication system for coupling a first communication network including a data transfer apparatus as a component and a second communication network including a router as a component to each other, the communication system comprising: the data transfer apparatus; the router; a plurality of protocol processing computers; and a network control computer, the first communication network being constructed by centralized control by the network control computer, the second communication network being constructed by autonomous distributed control by using a protocol on an IP layer of the router, the router being configured to transmit protocol data requiring protocol processing on the IP layer to the data transfer apparatus, the data transfer apparatus being configured to transfer the protocol data transmitted from the router to any one of the plurality of protocol processing computers, the one of the plurality of protocol processing computers being configured to: carry out, when receiving the protocol data, the protocol processing on the IP layer for the received protocol data; and hold identification information on an interface included in the data transfer apparatus for transferring the protocol data to the one of the plurality of protocol processing computers, thereby managing the data transfer apparatus for transferring the protocol data to the one of the plurality of protocol processing computers.
A brief description is now given of effects provided by the exemplary embodiment of this invention disclosed in this application. This invention enables to provide the communication system capable of decreasing a processing load imposed on a protocol processing server, and adapting to an increase in scale of a communication network constructed by data transfer apparatus.
Other objects, configurations, and effects than those described above are revealed in the following description of an embodiment.
The present invention can be appreciated by the description which follows in conjunction with the following figures, wherein:
A detailed description is now given of embodiments of this invention referring to the drawings. Substantially the same components are denoted by the same reference numerals, and a description thereof is therefore omitted.
Referring to
The communication system according to this embodiment includes protocol processing servers (protocol processing computers) 100A to 100N, data transfer apparatus 200A to 200N, routers 300A to 300N, and a network control server (network control computer) 400. It should be noted that, hereinafter, the protocol processing servers 100A to 100N are collectively referred to as protocol processing server 100; the data transfer apparatus 200A to 200N, data transfer apparatus 200; and routers 300A to 300N, router 300. The number of the network control server 400 is not limited to one, and the communication system may include a plurality of network control servers 400.
The network control server 400 constructs a first communication network by controlling the data transfer apparatus 200 in a centralized manner. Moreover, autonomous distributed control by the routers 300 constructs a second communication network including the routers 300 as components. For example, the first communication network is a communication network using the MPLS-TP, and the second communication network is a communication network using the IP or the IP/MPLS.
The routers 300 are coupled to the data transfer apparatus 200, and transmit data packets or protocol packets. The data packet is a packet including data transmitted by a user terminal (not shown), and is transmitted to a user terminal (not shown) coupled to an opposite router 300. The protocol packet is a packet for control requiring protocol processing on the IP layer, and is transmitted to the data transfer apparatus 200. The protocol packet includes a neighbor advertisement packet for notifying neighbor data transfer apparatus 200 of identification information on the IP address and the like of the router 300, and a path information notification packet for notifying path information on the router 300.
The data transfer apparatus 200 is coupled to other data transfer apparatus 200 and the protocol processing servers 100. The data transfer apparatus 200A, 200D, 200E, and 200N illustrated in
The data transfer apparatus 200 transfers the data packet or the protocol packet transmitted from the router 300. The data transfer apparatus 200 determines whether the received packet is a data packet or a protocol packet. Then, when the received packet is a protocol packet, the data transfer apparatus 200 transfers the received packet to the protocol processing server 100 so as to control the protocol processing server 100 to carry out the protocol processing on the IP layer, and when the received packet is a data packet, the data transfer apparatus 200 transfers the received packet to a next data transfer apparatus 200.
When the protocol processing server 100 receives a protocol packet transferred from the data transfer apparatus 200, the protocol processing server 100 carries out the protocol processing on the IP layer of the protocol packet.
The router 300 recognizes the first communication network including the data transfer apparatus 200 as components as a single virtual router (virtual router 500). The virtual router 500 includes the protocol processing servers 100, the data transfer apparatus 200, and the network control server 400.
The virtual router 500 includes virtual internal routers 600A to 600N (hereinafter collectively referred to as virtual internal router 600). The virtual internal router 600 includes the data transfer apparatus 200 and the protocol processing server 100. For example, the virtual internal router 600A illustrated in
The router 300 includes a plurality of interfaces 301A to 301N (hereinafter collectively referred to as interface 301), a packet separation part 302, a protocol processing part 303, and a data transfer part 305.
The interface 301 is coupled to another router 300, a user terminal (not shown), or the data transfer apparatus 200.
The packet separation part 302 determines whether a packet input to the interface 301 coupled to another router 300 or the user terminal (not shown) is a protocol packet or a data packet. When the packet is the protocol packet, the packet separation part 302 outputs the packet to the protocol processing part 303, and when the packet is the data packet, outputs the packet to the data transfer part 305.
The protocol processing part 303 includes a protocol processing database 304 to which data required for the protocol processing is registered. For example, identification information such as IP addresses of routers 300 or virtual routers 500 neighboring to the router 300 is registered to the protocol processing database 304. The protocol processing part 303 refers to the protocol processing database 304, and carries out the protocol processing on the IP layer for the protocol packet output from the packet separation part 302.
Then, the protocol processing part 303 determines whether to terminate or transfer the protocol packet based on a destination of the protocol packet. The protocol processing part 303 terminates the protocol packet when the protocol packet is to be terminated, and transmits the protocol packet from the interface 301 corresponding to the address of the protocol packet when the protocol packet is to be transferred.
The data transfer part 305 identifies an interface 301 corresponding to the destination of the data packet output from the packet separation part 302, and transmits the data packet from the identified interface 301.
The data transfer apparatus 200 includes interfaces 201A to 201N (hereinafter collectively referred to as interface 201), a packet separation part 202, a virtual interface information processing part 203, and a data transfer part 205.
The interface 201 is coupled to the router 300, another data transfer apparatus 200, the protocol processing server 100, or the network control server 400.
The packet separation part 202 determines whether a packet input to the interface 301 is a protocol packet or a data packet. When the input packet is a protocol packet, the packet separation part 202 outputs the input packet to the virtual interface information processing part 203, and when the input packet is a data packet, outputs the input packet to the data transfer part 205.
The virtual interface information processing part 203 includes a virtual interface management table 204 used to transfer the protocol packet to the protocol processing server 100. Each of relationships between a virtual interface 104 included in a virtual internal router 600 and an interface 201 serving as a physical interface of the virtual interface 104 is registered to the virtual interface management table 204. The virtual interface 104 is a virtual interface of the virtual internal router 600 operating on the protocol processing server 100. It should be noted that, referring to
The virtual interface information processing part 203 refers to the virtual interface management table 204 to identify identification information on a virtual interface 104 serving as a transfer destination of the input protocol packet, thereby identifying a protocol processing server 100 serving as a transfer destination of the input protocol packet. Then, the virtual interface information processing part 203 transmits the protocol packet from the interface 201 corresponding to the protocol processing server 100 serving as the identified transfer destination.
The data transfer part 205 identifies the interface 201 corresponding to the destination of the data packet output from the packet separation part 202, and transmits the data packet from the identified interface 201.
The protocol processing server 100 includes an interface 101, a virtual interface information processing part 102, and a virtual internal router 600.
The interface 101 is coupled to the data transfer apparatus 200.
The virtual interface information processing part 102 includes a virtual interface management table 103 for managing the data transfer apparatus 200 for transferring a protocol packet for which the protocol processing server 100 carries out the protocol processing on the IP layer. It should be noted that, referring to
The virtual interface information processing part 102 identifies a virtual interface 104 serving as the destination of the protocol packet input to the interface 101, and outputs the protocol packet to the identified virtual interface 104.
The virtual internal router 600 includes virtual interfaces 104A to 104N (hereinafter collectively referred to as virtual interface 104), an external protocol processing part 107, an internal protocol processing part 108, and a virtual router protocol processing database 109.
The virtual interface 104 is a virtual interface of the virtual internal router 600, and is coupled to the external protocol processing part 107 or the internal protocol processing part 108 and the virtual interface information processing part 102.
The external protocol processing part 107 carries out the protocol processing on the IP layer for a protocol packet transmitted/received via an external coupling of the virtual router 500, namely, between the virtual router 500 and the router 300 or between the virtual routers 500. The internal protocol processing part 108 carries out the protocol processing on the IP layer for a protocol packet transmitted/received between the virtual internal routers 600 in the virtual router 500. Data required by the external protocol processing part 107 and the internal protocol processing part 108 to carry out the protocol processing is registered to the virtual router protocol processing database 109.
First, a description is given of processing carried out by the external protocol processing part 107 when the virtual router 500 receives the protocol packet transmitted from the router 300.
The external protocol processing part 107 refers to the virtual router protocol processing database 109 to carry out the protocol processing on the IP layer for protocol data input from the virtual interface 104. Then, the external protocol processing part 107 determines whether to terminate or transfer the protocol packet based on a destination of the protocol packet. The external protocol processing part 107 terminates the protocol packet when the protocol packet is to be terminated, and transmits the protocol packet from a virtual interface 104 corresponding to the destination of the protocol packet when the protocol packet is to be transferred.
A description is now given of the processing carried out by the virtual router 500 to transmit a protocol packet to the router 300.
The external protocol processing part 107 refers to the virtual router protocol processing database 109, thereby carrying out the protocol processing on the IP layer for a protocol packet to be transmitted to the router 300. The external protocol processing part 107 transmits the protocol packet via a virtual interface 104 corresponding to a destination of the protocol packet.
A description is now given of processing carried out by the internal protocol processing part 108 when the virtual internal router 600 receives the protocol packet transmitted from another virtual internal router 600.
The internal protocol processing part 108 refers to the virtual router protocol processing database 109 to carry out the protocol processing on the IP layer for protocol data input from the virtual interface 104. Then, the internal protocol processing part 108 determines whether to terminate or transfer the protocol packet based on a destination of the protocol packet. The internal protocol processing part 108 terminates the protocol packet when the protocol packet is to be terminated, and transmits the protocol packet from a virtual interface 104 corresponding to the destination of the protocol packet when the protocol packet is to be transferred.
A description is now given of the processing carried out by the virtual internal router 600 to transmit a protocol packet to another virtual internal router 600.
The internal protocol processing part 108 refers to the virtual router protocol processing database 109, thereby carrying out the protocol processing on the IP layer for a protocol packet to be transmitted to another virtual internal router 600. The internal protocol processing part 108 transmits the protocol packet via a virtual interface 104 corresponding to a destination of the protocol packet.
The virtual interface management table 103 includes virtual routers 601, virtual internal routers 602, virtual interfaces 603, physical apparatus 604, and physical interfaces 605.
Identification information on the virtual router 500 to which a virtual internal router 600 belongs is registered to the virtual router 601. Identification information on the virtual internal router 600 is registered to the virtual internal router 602. Identification information on a virtual interface 104 included in the virtual internal router 600 is registered to the virtual interface 603.
Identification information on an apparatus including a physical interface functioning as the virtual interface 104 is registered to the physical apparatus 604. Specifically, identification information (such as “T#1”) on a data transfer apparatus 200 or identification information (such as “S#1”) on a protocol processing server 100 is registered to the physical apparatus 604. Identification information on the physical interface associated with the virtual interface 104 is registered to the physical interface 605.
The protocol processing server 100 includes the virtual interface management table 103, and thus can group and manage data transfer apparatus 200, which transfer protocol packets for which the protocol processing server 100 itself carries out the protocol processing on the IP layer.
Moreover, the virtual interface management table 204 included in the data transfer apparatus 200 includes records in each of which an identifier of the data transfer apparatus 200 is registered to the physical apparatus 604 of the virtual interface management table 103 shown in
First, a description is given of the neighbor advertisement processing. The neighbor advertisement processing is processing in which the router 300 or the virtual internal router 600 transmits a neighbor advertisement packet for notifying its own existence to other neighboring routers 300 or virtual internal routers 600, and is carried out by the router 300 or the virtual internal router 600 at a predetermined timing.
When the virtual internal router 600 carries out the neighbor advertisement processing, the virtual internal router 600 transmits a neighbor advertisement packet from virtual interfaces 104 of the virtual internal router 600. In this case, the protocol processing part 106 of the virtual internal router 600 refers to the virtual interface management table 103 to determine whether a physical interface of each of the virtual interfaces 104 is an interface 201 of a data transfer apparatus 200. When the physical interface of the virtual interface 104 is an interface 201 of a data transfer apparatus 200, the protocol processing part 106 determines that the coupling is an external coupling, and transmits, from the virtual interface 104, the neighbor advertisement packet including the identification information on the virtual router 500 to which the virtual internal router 600 belongs. Alternatively, when the physical interface of the virtual interface 104 is not an interface 201 of a data transfer apparatus 200 but is an interface 101 of the protocol processing server 100, the protocol processing part 106 determines that the coupling is an internal coupling, and transmits the neighbor advertisement packet including the identification information on the virtual internal router 600 from the virtual interface 104.
In
Moreover, a router 300B transmits a neighbor advertisement packet including its own identification information (R#B) to the virtual router 500 (Step 702). Details of the processing of Step 702 are the same as those of the processing of Step 701, and a description thereof is therefore omitted.
The virtual internal router 600A transmits the neighbor advertisement packet from a virtual interface 104 (V#1-3) (Step 703). Specifically, the protocol processing part 106 refers to the virtual interface management table 103 to determine that the physical interface of the virtual interface 104 (V#1-3) is an interface (S#1-1) of the protocol processing server 100 (S#1) and the coupling is thus an internal coupling. Therefore, the protocol processing part 106 transmits, from the virtual interface 104 (V#1-3), the neighbor advertisement packet including the identification information on the virtual internal router 600A (V#1). As a result, the neighbor advertisement packet is transmitted from the virtual internal router 600A to the virtual internal router 600B.
The virtual internal router 600A transmits the neighbor advertisement packet from a virtual interface 104 (V#1-1) to the router 300A (Step 704). Specifically, the protocol processing part 106 refers to the virtual interface management table 103 to determine that the physical interface of the virtual interface 104 (V#1-1) is an interface 201 (T#1-1) of the data transfer apparatus 200A and the coupling is thus an external coupling.
Therefore, the protocol processing part 106 transmits the neighbor advertisement packet including the identification information (R#1) of the virtual router 500 to which the virtual internal router 600A belongs to the interface 201 (T#1-1) of the data transfer apparatus 200A. When the data transfer apparatus 200A receives the neighbor advertisement packet from the protocol processing server 100, the data transfer apparatus 200A transmits the received neighbor advertisement packet to the router 300A. As a result, the neighbor advertisement packet is transmitted from the virtual router 500 to the router 300A.
The virtual internal router 600B transmits a neighbor advertisement packet including the identification information (R#1) on the virtual router from the virtual interface 104 (V#2-1) to the router 300B (Step 705). Details of the processing of Step 705 are the same as those of the processing of Step 704, and a description thereof is therefore omitted.
The virtual internal router 600B transmits a neighbor advertisement packet including the identification information (V#2) of the virtual internal router 600B to the virtual internal router 600A from the virtual interface 104 (V#2-3) (Step 706). Details of the processing of Step 706 are the same as those of the processing of Step 703, and a description thereof is therefore omitted.
In the communication system according to this embodiment, the plurality of protocol processing servers 100 for carrying out the protocol processing on the IP layer exist, and thus the protocol processing is carried out in the distributed manner on the plurality of protocol processing servers 100. Therefore, compared with a case where only one protocol processing server 100 exists in the communication system and the single protocol processing server 100 carries out the protocol processing, the processing load on each of the protocol processing server 100 is reduced.
When the plurality of protocol processing servers 100 exist in this way, the protocol processing servers 100 need to recognize one another as different from one another. However, the routers 300 recognize the first communication network as the virtual router 500 as described above with reference to
Therefore, in this embodiment, the virtual internal router 600 transmits a neighbor advertisement packet including the identification information on itself (virtual internal router 600) from the virtual interface 104 having the interface 101 of the protocol processing server 100 as the physical interface, and transmits a neighbor advertisement packet including identification information on the virtual router 500 to which the virtual internal router 600 itself belongs from the virtual interface 104 having the interface 201 of the data transfer apparatus 200 as the physical interface.
As a result, even in the communication system including the routers 300 recognizing the plurality of protocol processing servers 100 and the first communication network as the virtual router 500, the virtual internal router 600 operating on the protocol processing server 100 can notify a router 300 of the identification information on the virtual router 500, and can notify another virtual internal router 600 of the identification information on itself (virtual internal router 600). As a result, the router 300 can recognize the first communication network as the virtual router 500, and the virtual internal router 600 can recognize another virtual internal router 600 as a different virtual internal router 600.
A description is now given of the path information notification processing. The path information notification processing is processing in which the router 300 or the virtual internal router 600 transmits a path information notification packet to other neighboring routers 300 or virtual internal routers 600, and is carried out by the router 300 or the virtual internal router 600 at a predetermined timing.
On this occasion, the route information notification packet includes information representing a neighbor relationship held by the router 300 or the virtual internal router 600 as the path information when a used routing protocol is the Open Shortest Path First (OSPF), and includes information representing a path held by the router 300 or the virtual internal router 600 as the path information when a used routing protocol is the Border Gateway Protocol (BGP).
When the virtual internal router 600 receives a path information notification packet from the router 300, the virtual internal router 600 associates the path information included in the received path information notification packet with the identification information on the router 300, which is a transmission source of the path information notification packet, and stores the path information in the virtual router protocol processing database 109. Moreover, when the virtual internal router 600 receives a path information notification packet from another virtual internal router 600, the virtual internal router 600 associates the path information included in the received path information notification packet with the identification information on the virtual internal router 600, which is a transmission source of the path information notification packet, and stores the path information in the virtual router protocol processing database 109.
The virtual internal router 600 transmits the path information notification packet from a virtual interface 104. Specifically, the virtual internal router 600 transmits path information combining path information (in
In other words, in the path information notification processing according to this embodiment, only the path information on the external couplings of the virtual router 500, namely, the path information on the couplings between the virtual router 500 and routers 300 and the couplings between the virtual routers 500 is exchanged between the virtual internal routers 600. The virtual internal router 600 stores path information on internal couplings to other virtual internal routers 600, but the path information on the internal couplings is not exchanged. The coupling between the virtual internal routers 600 is a coupling between the protocol processing servers 100, and the path information on the coupling does not thus need to be exchanged. Therefore, in this embodiment, the unnecessary path information is not exchanged between the virtual internal routers 600, and path information to be processed and network traffic can thus be reduced.
In
When the virtual internal router 600A receives the path information notification packet transmitted by the router 300A in the processing of Step 701, the virtual internal router 600A associates the path information included in the received path information notification packet and the identification information (R#A) on the router 300A, which is the transmission source, included in the path information notification packet with each other, and stores the path information and the identification information associated with each other in the virtual router protocol processing database 109.
Moreover, the router 300B transmits a path information notification packet including path information held by the router 300B itself and its own identification information (R#B) as a transmission source to the virtual router 500 (Step 712). Details of the processing of Step 712 are the same as those of the processing of Step 711, and a description thereof is therefore omitted.
Then, the virtual internal router 600A transmits the path information notification packet from the virtual interface 104 (V#1-3) to the virtual internal router 600B (Step 713). As in the description that has been given of the processing of Step 703, the protocol processing part 106 determines that the physical interface of the virtual interface 104 (V#1-3) is the interface 101 (S#1-1) of the protocol processing server 100 (S#1), and the coupling is thus an internal coupling. Therefore, the protocol processing part 106 refers to the virtual router protocol processing database 109, thereby acquiring the path information on the external couplings of the virtual router 500. On this occasion, it is assumed that the path information transmitted by the router 300A in the processing of Step 711 and the path information on the external networks to which the virtual internal router 600A itself directly couples are acquired. Then, the virtual internal router 600A transmits the acquired path information on the external couplings of the virtual router 500 including the identification information (V#1) on the virtual internal router 600A as the transmission source to the virtual internal router 600B (V#2) of the protocol processing server 100 (S#2). As a result, the path information notification packet is transmitted from the virtual internal router 600A to the virtual internal router 600B.
When the virtual internal router 600B receives the path information notification packet transmitted by the virtual internal router 600A in the processing of Step 713, the virtual internal router 600B associates the path information (the path information held by the router 300A and the path information on the external networks to which the virtual internal router 600A directly couples) included in the received path information notification packet and the identification information (V#1) on the virtual internal router 600A of the transmission source included in the path information notification packet with each other, and stores the path information and the identification information associated with each other in the virtual router protocol processing database 109.
The virtual internal router 600B transmits the path information notification packet from the virtual interface 104 (V#2-3) to the virtual internal router 600A (Step 714). The virtual interface 104 (V#2-3) is internally coupled, and the virtual internal router 600B thus transmits the path information transmitted by the router 300B in the processing of Step 712 and the path information on the external networks to which the virtual internal router 600B itself directly couples including the identification information (V#2) on the virtual internal router 600B as the transmission source to the virtual internal router 600A of the protocol processing server 100 (S#1).
When the virtual internal router 600A receives the path information notification packet transmitted by the virtual internal router 600B in the processing of Step 714, the virtual internal router 600A associates the path information (the path information held by the router 300B and the path information on the external networks to which the virtual internal router 600B directly couples) included in the received path information notification packet and the identification information (V#2) on the virtual internal router 600B of the transmission source included in the path information notification packet with each other, and stores the path information and the identification information associated with each other in the virtual router protocol processing database 109.
Moreover, the virtual internal router 600A transmits the path information notification packet from the virtual interface 104 (V#1-1) to the router 300A (Step 715). As in the description that has been given of the processing of Step 704, the virtual interface 104 (V#1-1) is externally coupled, and the protocol processing part 106 thus refers to the virtual router protocol processing database 109, thereby acquiring the path information on the external couplings of the virtual router 500. On this occasion, it is assumed that the protocol processing part 106 acquires the path information on the external networks to which the virtual internal router 600A itself directly couples and the path information (the path information transmitted by the router 300B and the path information on the external networks to which the virtual internal router 600B directly couples) transmitted by the virtual internal router 600B in the processing of Step 714. Then, the virtual internal router 600A transmits the acquired path information on the external couplings of the virtual router 500 including the identification information (R#1) on the virtual router 500 as the transmission source via the data transfer apparatus 200A to the router 300A. As a result, the path information notification packet is transmitted from the virtual router 500 to the router 300A. A reason that not the identification information on the virtual internal router 600A but the identification information on the virtual router 500 is set as the identification information on the transmission source is that the first communication network is recognized by the router 300 not as the virtual internal router 600 but as the virtual router 500.
The virtual internal router 600B transmits the path information notification packet from the virtual interface 104 (V#2-1) to the router 300B (Step 716). In the processing of Step 716, the path information on the external networks to which the virtual internal router 600B itself directly couples and the path information (the path information transmitted by the router 300A and the path information on the external networks to which the virtual internal router 600A directly couples) transmitted by the virtual internal router 600A in the processing of Step 713 including the identification information (R#1) on the virtual router 500 as the transmission source are transmitted to the router 300B. Details of the processing of Step 716 are the same as those of the processing of Step 715, and a description thereof is therefore omitted.
As described above, the path information notification processing according to this embodiment eliminates the exchange of the information on a path between virtual internal routers 600 by the virtual internal routers 600, thereby eliminating the exchange of the unnecessary path information. As a result, the path information to be processed and the network traffic can be reduced.
Moreover, the router 300A opposite to the router 300B needs to store the path information held by the router 300B in order to communicate to/from the networks coupled to the router 300B, but, in the path information notification processing according to this embodiment, the virtual internal router 600A transmits path information combining the path information on the external networks to which the virtual internal router 600A itself directly couples and the path information (path information on the router 300B) transmitted by the virtual internal router 600B. Thus, the router 300A can store the path information on the opposite router 300B.
The neighbor advertisement processing is carried out repeatedly by the virtual internal router 600 at a predetermined timing.
First, the virtual internal router 600 determines whether the virtual interface 104 (hereinafter referred to as virtual interface 104 subject to processing) from which the neighbor advertisement packet is to be transmitted is externally coupled or not (Step 801). Specifically, the virtual internal router 600 refers to the virtual interface management table 103 to acquire such a record that the identification information registered to the virtual internal router 602 is the own identification information, and the identification information registered to the virtual interface 603 is the identification information on the virtual interface 104 subject to processing. Then, when the identification information on a data transfer apparatus 200 is registered to the physical apparatus 604 of the acquired record, the virtual internal router 600 determines that the virtual interface 104 subject to processing is externally coupled, and when the identification information on a protocol processing server 100 is registered to the physical apparatus 604 of the acquired record, the virtual internal router 600 determines that the virtual interface 104 subject to processing is internally coupled.
When it is determined that the virtual interface 104 subject to processing is externally coupled in the processing of Step 801, the virtual internal router 600 sets the identification information on the virtual router 500 to a neighbor advertisement packet to be transmitted (Step 802). The identification information on the virtual router 500 is the identification information registered to the virtual router 601 of the record in the virtual interface management table 103 acquired by the processing of Step 801. Moreover, in the processing of Step 802, the virtual internal router 600 sets the identification information (identification information on an interface of a data transfer apparatus 200) registered to the physical interface 605 of the record acquired by the processing of Step 801 as a destination of the transmission of the neighbor advertisement packet.
Then, the virtual internal router 600 transmits the neighbor advertisement packet from the virtual interface 104 subject to processing (Step 803), and finishes the processing.
On the other hand, when it is determined that the virtual interface 104 subject to processing is internally coupled in the processing of Step 801, the virtual internal router 600 sets its own identification information to a neighbor advertisement packet to be transmitted (Step 804). Moreover, in the processing of Step 804, the virtual internal router 600 sets the identification information (identification information on an interface of a protocol processing server 100) registered to the physical interface 605 of the record acquired by the processing of Step 801 as a destination of the transmission of the neighbor advertisement packet.
Then, in the processing of Step 803, the virtual internal router 600 transmits the neighbor advertisement packet from the virtual interface 104 subject to processing, and finishes the processing.
The path information notification processing is carried out repeatedly by the virtual internal router 600 at a predetermined timing.
First, the virtual internal router 600 determines whether the virtual interface 104 (hereinafter referred to as virtual interface 104 subject to processing) from which the path information notification packet is to be transmitted is externally coupled or not (Step 901). Details of the processing of Step 901 are the same as those of the processing of Step 801 of
When it is determined that the virtual interface 104 subject to processing is externally coupled in the processing of Step 901, the virtual internal router 600 refers to the virtual router protocol processing database 109, thereby acquiring the path information on the external networks to which the virtual internal router 600 itself directly couples, the path information included in path information notification packets transmitted from other virtual internal routers 600, and the path information included in path information notification packets transmitted from the routers 300 (Step 902).
Then, the virtual internal router 600 generates path information (path information combining the path information acquired by the processing of Step 902) on the external couplings of the virtual router 500 (Step 903).
Then, the virtual internal router 600 stores the path information generated by the processing of Step 903 in the path information notification packet to be transmitted, and sets the transmission source of the path information notification packet to the identification information on the virtual router 500 to which the virtual internal router 600 itself belongs (Step 904). Moreover, in the processing of Step 904, the virtual internal router 600 sets the identification information (identification information on an interface of a data transfer apparatus 200) registered to the physical interface 605 of the record acquired by the processing of Step 901 as a destination of the transmission of the path information notification packet.
Then, the virtual internal router 600 transmits the path information notification packet from the virtual interface 104 subject to processing (Step 905), and finishes the processing.
On the other hand, when it is determined that the virtual interface 104 subject to processing is internally coupled in the processing of Step 901, the virtual internal router 600 refers to the virtual router protocol processing database 109, thereby acquiring the path information on the external networks to which the virtual internal router 600 itself directly couples, the path information included in path information notification packets transmitted from virtual internal routers 600 other than the virtual internal router 600 as the transmission destination of the path information notification packet, and the path information included in path information notification packets transmitted from the routers 300 (Step 906). In
Then, the virtual internal router 600 generates path information (path information combining the path information acquired by the processing of Step 906) on the external couplings of the virtual router 500 (Step 907).
Then, the virtual internal router 600 stores the path information generated by the processing of Step 907 in the path information notification packet to be transmitted, and sets the transmission source of the path information notification packet to its own identification information (Step 908). Moreover, in the processing of Step 908, the virtual internal router 600 sets the identification information (identification information on an interface of a protocol processing server 100) registered to the physical interface 605 of the record acquired by the processing of Step 901 as a destination of the transmission of the path information notification packet.
Then, in the processing of Step 905, the virtual internal router 600 transmits the path information notification packet from the virtual interface 104 subject to processing, and finishes the processing.
As in the description that has been given of the processing of Steps 902 and 906, the virtual internal router 600 transmits the path information on the external couplings of the virtual router 500 by means of a routing protocol (such as the OSPF and the BGP), and does not transmit the path information (path information between virtual internal routers 600) on internal couplings to other virtual internal routers 600 by means of the routing protocol. This is because unlike the coupling between the data transfer apparatus 200, the internal coupling between the virtual internal routers 600 does not require the exchange of the path information.
When the virtual internal router 600A carries out the neighbor advertisement via the internal coupling (Step 703), the virtual internal router 600A transmits the neighbor advertisement packet including the identification information (Router ID: 10.1.0.1) on the virtual internal router 600A. When the virtual internal router 600A carries out the neighbor advertisement via the external coupling (Step 704), the virtual internal router 600A transmits the neighbor advertisement packet including the identification information (Router ID: 10.0.0.2) on the virtual router 500.
When the virtual internal router 600B carries out the neighbor advertisement via the internal coupling (Step 706), the virtual internal router 600B transmits the neighbor advertisement packet including the identification information (Router ID: 10.1.0.2) on the virtual internal router 600B. When the virtual internal router 600B carries out the neighbor advertisement via the external coupling (Step 705), the virtual internal router 600B transmits the neighbor advertisement packet including the identification information (Router ID: 10.0.0.2) on the virtual router 500.
When the virtual internal router 600A carries out the path information notification via the internal coupling (Step 713), the virtual internal router 600A transmits a path information notification including the identification information (Router ID: 10.1.0.1) on the virtual internal router 600A, the path information (Links: 10.0.0.1/32, 192.168.0.0/24, and 192.168.1.0/24) received from the router 300A in Step 711, and the path information (Link: 192.168.1.0/24) on the external network to which the virtual internal router 600A itself directly couples. When the virtual internal router 600A carries out the path information notification via the external coupling (Step 715), the virtual internal router 600A transmits a path information notification including the identification information (Router ID: 10.0.0.2) on the virtual router 500, the path information (Links: 10.0.0.2/32 and 192.168.1.0/24) on the external networks to which the virtual internal router 600A itself directly couples, and the path information (Links: 192.168.2.0/24, 10.0.0.3/32, 192.168.2.0/24, and 192.168.3.0/24) received from the virtual internal router 600B in Step 714.
When the virtual internal router 600B carries out the path information notification via the internal coupling (Step 714), the virtual internal router 600B transmits a path information notification including the identification information (Router ID: 10.1.0.2) on the virtual internal router 600B, the path information (Links: 10.0.0.3/32, 192.168.2.0/24, and 192.168.3.0/24) received from the router 300B in Step 712, and the path information (Link: 192.168.2.0/24) on the external network to which the virtual internal router 600B itself directly couples. When the virtual internal router 600B carries out the path information notification via the external coupling (Step 716), the virtual internal router 600B transmits a path information notification including the identification information (Router ID: 10.0.0.2) on the virtual router 500, the path information (Links: 10.0.0.2/32 and 192.168.2.0/24) on the external networks to which the virtual internal router 600B itself directly couples, and the path information (Links: 10.0.0.1/32, 192.168.0.0/24, 192.168.1.0/24, and 192.168.1.0/24) received from the virtual internal router 600A in Step 713.
When the virtual internal router 600A carries out the neighbor advertisement via the internal coupling (Step 703), the virtual internal router 600A transmits the neighbor advertisement packet including the identification information (My AS: 64521) on the virtual internal router 600A.
When the virtual internal router 600A carries out the neighbor advertisement via the external coupling (Step 704), the virtual internal router 600A transmits the neighbor advertisement packet including the identification information (My AS: 64502) on the virtual router 500.
When the virtual internal router 600B carries out the neighbor advertisement via the internal coupling (Step 706), the virtual internal router 600B transmits the neighbor advertisement packet including the identification information (My AS: 64522) on the virtual internal router 600B. When the virtual internal router 600B carries out the neighbor advertisement via the external coupling (Step 705), the virtual internal router 600B transmits the neighbor advertisement packet including the identification information (My AS: 64502) on the virtual router 500.
When the virtual internal router 600A carries out the path information notification via the internal coupling (Step 713), the virtual internal router 600A transmits a path information notification including the identification information (AS: 64521) on the virtual internal router 600A, the path information (Routes: 192.168.0.0/24 and 192.168.1.0/24) received from the router 300A in Step 711, and the path information (Route: 192.168.1.0/24) on the external network to which the virtual internal router 600A itself directly couples. When the virtual internal router 600A carries out the path information notification via the external coupling (Step 715), the virtual internal router 600A transmits a path information notification including the identification information (AS: 64502) on the virtual router 500, the path information (Route: 192.168.1.0/24) on the external networks to which the virtual internal router 600A itself directly couples, and the path information (Routes: 192.198.2.0/24, 192.168.2.0/24, and 192.168.3.0/24) received from the virtual internal router 600B in Step 714.
When the virtual internal router 600B carries out the path information notification via the internal coupling (Step 714), the virtual internal router 600B transmits a path information notification including the identification information (AS: 64522) on the virtual internal router 600B, the path information (Routes: 192.168.2.0/24 and 192.168.3.0/24) received from the router 300B in Step 712, and the path information (Route: 192.168.2.0/24) on the external network to which the virtual internal router 600B itself directly couples. When the virtual internal router 600B carries out the path information notification via the external coupling (Step 716), the virtual internal router 600B transmits a path information notification including the identification information (AS: 64502) on the virtual router 500, the path information (Route: 192.168.2.0/24) on the external networks to which the virtual internal router 600B itself directly couples, and the path information (Routes: 192.168.0.0/24, 192.168.1.0/24, and 192.168.1.0/24) received from the virtual internal router 600A in Step 713.
It should be noted that, in
As a result, according to this embodiment, in the communication system including the protocol processing servers 100 for carrying out the protocol processing on the IP layer, each of the protocol processing servers 100 holds the virtual interface management table 103 to which identification information on the interface 201 of the data transfer apparatus 200 transferring protocol packets to the protocol processing server 100 itself is registered. As a result, the communication system in which each of the plurality of the protocol processing servers 100 can manage the data transfer apparatus 200 for transmitting the protocol packets to the protocol processing server 100 itself and which includes the plurality of protocol processing servers 100 can be provided.
Moreover, according to this embodiment, the virtual internal router 600 refers to the virtual interface management table 103, thereby determining whether the virtual interface 104 is coupled externally or internally. Then, when the virtual interface 104 is coupled externally, the virtual internal router 600 transmits the neighbor advertisement packet including the identification information on the virtual router 500 to which the virtual internal router 600 belongs via the data transfer apparatus 200 to the routers 300, and when the virtual interface 104 is internally coupled, transmits the neighbor advertisement packet including the identification information on the virtual internal router 600 to other virtual internal routers 600. As a result, even in the communication system including the routers 300 recognizing the plurality of protocol processing servers 100 and data transfer apparatus 200 as the virtual router 500, the virtual internal router 600 operating on the protocol processing server 100 can notify the routers 300 of the identification information on the virtual router 500, and can notify other virtual internal routers 600 of the identification information on itself (virtual internal router 600). Thus, the router 300 can recognize the first communication network as the virtual router 500, and the virtual internal router 600 can recognize the other virtual internal routers 600 as different virtual internal routers 600.
Moreover, according to this embodiment, when the virtual interface 104 is externally coupled, the virtual internal router 600 transmits, from the virtual interface 104, the path information notification packet combining the path information on the external networks to which the virtual internal router 600 itself directly couples, the path information included in the path information notification packets transmitted from other virtual internal routers 600, and the path information included in the path information notification packets directly transmitted from the routers 300. Moreover, when the virtual interface 104 is externally coupled, the virtual internal router 600 transmits, from the virtual interface 104, the path information notification packet including the path information on the external networks to which the virtual internal router 600 itself directly couples, and the path information included in the path information notification packets directly transmitted from the routers 300. As a result, the information on a path between the virtual internal routers 600 is not exchanged by the virtual internal routers 600, and the unnecessary path information is thus not exchanged. Accordingly, the network traffic can be reduced. Moreover, the router 300 can recognize the path information on the opposite router 300.
Further, according to this embodiment, the data transfer apparatus 200 holds the virtual interface management table 204 to which the identification information on the virtual interface 104 of the virtual internal router 600, which is the transfer destination of the protocol packet, is registered, refers to the virtual interface management table 204, and transfers the protocol packet to the virtual interface 104, which is the transfer destination. As a result, even when the plurality of protocol processing servers 100 exist in the communication system, the protocol packet can be correctly transferred.
Referring to
While a single virtual internal router 600 operates on the protocol processing server 100 in the first embodiment, a plurality of virtual internal routers 600 operate on the protocol processing server 100 in this embodiment.
The protocol processing server 100 includes an interface 101, a virtual interface information processing part 102, and a plurality of virtual internal routers 610A to 610N.
The interface 101 and the virtual interface information processing part 102 have the same functions as those of the configurations denoted by the same reference numerals illustrated in
An administrator of the communication system can control the virtual internal router 600 operating on a certain protocol processing server 100 to migrate to another protocol processing server 100. When the virtual internal router 600 is controlled to migrate to another protocol processing server 100 in this way, for example, a plurality of virtual internal routers 600 operate on the protocol processing server 100. When the administrator initially provides such a setting that a plurality of virtual internal routers 600 operate on the protocol processing server 100, the plurality of virtual internal routers 600 also operate on the protocol processing server 100.
The virtual interface management table 103 according to this embodiment includes the virtual routers 601, the virtual internal routers 602, the virtual interfaces 603, the physical apparatus 604, and the physical interfaces 605.
The virtual router 601, the virtual internal router 602, the virtual interface 603, the physical apparatus 604, and the physical interface 605 have the same functions as those of the configurations denoted by the same reference numerals illustrated in
As shown on third and sixth rows in the virtual interface management table 103, the physical apparatus 604 of the virtual interfaces 104 (V#1-3 and V#2-3) of the virtual internal routers 600 (V#1 and V#2) is the protocol processing server 100 (S#1), and the two virtual internal routers 600 (V#1 and V#2) thus operate on the single protocol processing server 100 (S#1).
The neighbor advertisement processing and the path information notification processing according to this embodiment are the same as the pieces of processing of
Referring to
While the first communication network functions as the single virtual router 500 in the first and second embodiments, the first communication network functions as a plurality of virtual routers 500 in this embodiment.
In this embodiment, the first communication network is recognized as the plurality of virtual routers 500A to 500N by the router 300.
The virtual router 500A includes virtual internal routers 600A and 600B. The virtual router 500B includes virtual internal routers 600C and 600D. The virtual router 500N includes a virtual internal router 600N.
In the case where the first communication network functions as the single virtual router 500, when a failure occurs on a path of the first communication network, the administrator needs to use centralized control by the network control server 400 to reconstruct the paths in the first communication network. However, in the case where the first communication network functions as the plurality of virtual routers 500, when a failure occurs on a path in the first communication network, the paths in the first communication network are reconstructed in an autonomous distributed manner by the IP routing control among the virtual routers 500. Therefore, such an effect that the load imposed on the administrator can be alleviated is provided.
In
The virtual interface management table 103 according to this embodiment includes the virtual routers 601, the virtual internal routers 602, the virtual interfaces 603, the physical apparatus 604, and the physical interfaces 605.
The virtual router 601, the virtual internal router 602, the virtual interface 603, the physical apparatus 604, and the physical interface 605 have the same functions as those of the configurations denoted by the same reference numerals illustrated in
The coupling between the virtual internal routers 600B and 600C according to this embodiment, namely, the coupling between the data transfer apparatus 200B and 200C corresponds to a coupling between a virtual interface (V#2-2) of the virtual internal router (V#2), namely, a physical interface (T#2-1) of a physical apparatus (T#2), and a virtual interface (V#3-1) of the virtual internal router (V#3), namely, a physical interface (T#3-1) of a physical apparatus (T#3).
The neighbor advertisement processing and the path information notification processing according to this embodiment are the same as the pieces of processing of
In this embodiment, the first communication network is recognized as the plurality of virtual routers 500 by the routers 300. When a virtual internal router 600 belonging to a virtual router 500 is coupled to another virtual internal router 600 belonging to another virtual router 500 different from the virtual router 500 to which the virtual internal router 600 itself belongs, the virtual interface 104 is determined to be externally coupled. As a result, when the virtual internal router 600 belonging to the virtual router 500 is coupled to another virtual internal router 600 belonging to the same virtual router 500, the virtual internal router 500 transmits a neighbor advertisement packet including the identification information on the virtual router 500 to which the virtual internal router 600 itself belongs in the neighbor advertisement processing, and transmits a path information notification packet including path information combining path information received from another virtual internal router and path information directly received from the virtual router 500 in the path information notification processing.
Each of the above-mentioned embodiments is a preferred embodiment of this invention, and various modifications and changes may be made without departing from the gist of this invention.
This invention is not limited to the embodiment described above, and includes various modification examples. For instance, the embodiment given above is a detailed description that is written for easy understanding of this invention, and this invention is not necessarily limited to a mode that includes all the components described. Replacing some components of one embodiment with components of another embodiment is also an option. Components of one embodiment may be added with components of another embodiment. For some components in each embodiment, other components may be added or deleted or may substitute.
Some of or all of the components, functions, processing parts, processing measures, and the like described above may be implemented by hardware by, for example, designing those in the form of an integrated circuit. Alternatively, the components, functions, and the like described above may be implemented by software by having a processor interpret and execute programs that respectively implement the described functions. Programs, tables, files, and other types of information for implementing the described functions can be put in a memory, a recording device such as a hard disk or a solid state drive (SSD), or a recording medium such as an IC card, an SD card, or a DVD.
Number | Date | Country | Kind |
---|---|---|---|
2013-141860 | Jul 2013 | JP | national |