1. Field of the Invention
The present invention relates to an information processing system, an information processing device, and an information processing method and a program for use with them, and more specifically to a method for protecting a communication device against a fault to enhance the resistance against a fault occurring in any component forming an information processing system.
2. Related Art
Conventionally, a faulty device is separated and a redundancy device is used as a countermeasure against a fault of a communication device. For example, a bypass is prepared in a device, and when a fault occurs, control is switched to the bypass and communications are performed (for example, refer to “Packet Shaper Technological Information: Bypass Capabilities as Countermeasures against Fault/Fail-over Management Capabilities” (2004 Macnica Network Corp.), http://www.macnica.net/packeteer/packetshp_tech—05.html). A method of configuring a redundant device can be connecting two devices in parallel to operate the respective devices as an active system and a standby system (for example, refer to “High Availability Fire Wall” (by Yoshitane Tachibana, Oki Technical Review, Oki Electric Industry Co., Ltd., July, 2000, vol. 67, issue 183, No. 2, pages 103-106), http://www.oki.com/jp/Home/JIS/Books/KENKAI/n183/pdf/183R24.pdf). In this method, when a fault occurs in the active system, control is switched to the standby system and communications are performed.
Especially, when a communication device manages the status of the communication performed between the transmission/reception terminals and transmits a received acknowledgment to a transmitter like a SOCKS server, it is necessary to keep synchronization between the active system and the standby system (for example, refer to M. Leech, M. Ganis, Y. Lee, R. Kuris, D. Koblas, L. Jones, “SOCKS Protocol Version 5,” Internet Engineering Task Force, RFC1928, March 1996). The “status” refers to which portion of data has been transmitted and received between the terminals.
The active information processing device 7 and the standby information processing device 8 respectively includes data processing units 71 and 81, buffer units 72 and 82, discard control units 73 and 83, operation status monitoring units 74 and 84, output selection units 75 and 85, and status synchronizing process units 76 and 86.
The data processing units 71 and 81 perform a process for communication with another device not shown in the attached drawings to process the data input by the switch 6, and output the processed data to the buffer units 72 and 82. The buffer units 72 and 82 accumulate the data from the data processing units 71 and 81, output the accumulation status to the status synchronizing process units 76 and 86, discard the accumulated data under the control of the discard control units 73 and 83, and output the accumulated data to the output selection units 75 and 85.
The discard control units 73 and 83 transmit an instruction to discard data to the buffer units 72 and 82 when, for example, data is accumulated to the full capacity of the buffer units 72 and 82. The operation status monitoring units 74 and 84 monitor whether or not the information processing device including the operation status monitoring unit is operating as an active system or a standby system, transmit a monitor result to the output selection units 75 and 85, and transmit the monitor result to the operation status monitoring units 84 and 74 of each other.
When the monitor result as an active system is input from the operation status monitoring units 74 and 84, the output selection units 75 and 85 output the data from the buffer units 72 and 82 to the switch 9. When the monitor result as a standby system is input, the output of the data from the buffer units 72 and 82 to the switch 9 is suppressed. The status synchronizing process units 76 and 86 mutually compare the accumulation statuses from the buffer units 72 and 82, and mutually perform a synchronizing process (copying and accumulating data) such that the accumulation statuses of the buffer units 72 and 82 can be the same.
To remove the nonmatching statuses, an explicit synchronizing process is performed between the status synchronizing process units 76 and 86. In this synchronizing process, the packet data “8” in the buffer unit 72 is copied by the status synchronizing process units 76 and 86, the copied data is transferred to the buffer unit 82 and accumulated there. Therefore, the nonmatching statuses of the packet data accumulated in the buffer units 72 and 82 can be removed.
The reason why the synchronizing process is required in forming a redundant device is that a communication disconnection occurs if the system is switched to the standby system with nonmatching statuses between the active system and the standby system maintained. Since the device returns acknowledgment upon receipt of data transmitted from a transmitter, the data is discarded if the transmitter receives the acknowledgment. If a fault occurs in the active system before transmitting data corresponding to the acknowledgment, only the standby system can recover the data. Furthermore, if the system is switched to the standby system with nonmatching statuses maintained when a fault occurs in the active system, then problem of the nonmatching statuses between the transmitting and receiving terminals cannot be solved, thereby causing a communication disconnection.
Therefore, when the above-mentioned redundant device is formed, it is necessary to keep synchronization of statuses between the active system and the standby system. However, the synchronizing process is to be performed for each piece of received data, which causes a overload status of a device, reduces communication performance, and causes a communication disconnection when a fault occurs in the active system with the nonmatching statuses of the active system and the standby system maintained depending on the timing of the synchronizing process and the system is switched to the standby system.
In the above-mentioned conventional countermeasure against a fault of a communication device, when there is an increasing number of sessions managed by an information processing device, there also is an increasing amount of managed information, and the load of the status synchronizing process between an active system and a standby system, that is, the load of confirming matching statuses of data accumulated in the buffer, copying data when the statuses do not match, and accumulating the data in the buffer, increases. Therefore, the status synchronizing process is performed, thereby causing the problem of reducing the communication efficiency, throughput, and communication performance.
Furthermore, in the conventional countermeasure against a fault of a communication device, if an information processing device terminates the communication session between transmitting and receiving terminals for takeover, and if the process of the active system is taken over by the standby system with data received by the active system but not received by the standby system (refer to
In the status in which there is data which cannot be received by a standby system (refer to
The objective of the present invention is to provide an information processing system, an information processing device, and a information processing method and a program for the system and the device to solve the above-mentioned problems and reduce the load of the status synchronizing process in the information processing system operated by an active system and a standby system.
Another objective of the present invention is to provide an information processing system, an information processing device, and an information processing method and a program for the system and the device to allow a standby system to hold the status of an active system.
A further objective of the present invention is to provide an information processing system, an information processing device, and an information processing method and a program for the system and the device to effectively use a buffer for accumulating data for use in case of a fault of an adjacent information processing device.
An information processing system according to the present invention has a redundant configuration by operating a plurality of information processing devices. The information processing device includes: operation status monitor means for monitoring operation statuses of the device and another device; input means for receiving data; buffer means for temporarily accumulating the data from the input means; and output selection means for selecting and outputting one of the data accumulated in the buffer means and the data directly input from the input means in accordance with the operation statuses of the device and the other device to be monitored by the operation status monitor means; and the plurality of information processing devices are connected in series.
Another information processing system according to the present invention has a redundant configuration by operating a plurality of information processing devices as an active system and a standby system. The information processing device includes means for passing input data through to a subsequent stage when the device is operated as the standby system, and an information processing device operated as the standby system is arranged before an information processing device as the active system, and the devices are connected in series.
The information processing device further includes discard control means for discarding the input data accumulated in buffer means when the device is operated as the standby system.
An information processing device according to the present invention forms a redundant system by an operation with a plurality of information processing devices, and includes: operation status monitor means for monitoring operation statuses of the device and another device; input means for receiving data; buffer means for temporarily accumulating the data from the input means; and output selection means for selecting and outputting one of the data accumulated in the buffer means and the data directly input from the input means in accordance with the operation statuses of the device and the other device to be monitored by the operation status monitor means. The device is connected in series with each of the plurality of information processing devices.
Another information processing device according to the present invention forms a redundant system by an operation as one of an active system and a standby system, and includes: means for passing input data through to a subsequent stage when the device is operated as the standby system. The information processing device is arranged before an information processing device operated as the active system when the device is operated as the standby system, and connected in series with the information processing device operated as the active system.
The information processing device according to the present invention further includes discard control means for discarding the input data accumulated in buffer means when the device is operated as the standby system.
An information processing method according to the present invention is used for an information processing system having a redundant configuration by operating a plurality of information processing devices. The information processing device monitors operation statuses of the device and another device, receives data by input means for receiving data, and selects and outputs one of data accumulated in buffer means for temporarily accumulating the data from the input means and the data directly input from the input means in accordance with the operation statuses of the device and the other device to be monitored. The plurality of information processing devices are connected in series.
An information processing method according to the present invention is used for an information processing system having a redundant configuration by operating a plurality of information processing devices as an active system and a standby system. The information processing device performs a process of passing input data through to a subsequent stage when the device is operated as the standby system, an information processing device operated as the standby system is arranged before an information processing device as the active system, and the devices are connected in series.
In the information processing method according to the present invention, the information processing device performs a process of discarding the input data accumulated in buffer means when the device is operated as the standby system.
A program for an information processing method according to the present invention is used for an information processing system having a redundant configuration by operating a plurality of information processing devices. The program directs the computer of the information processing device to perform the processes of: monitoring operation statuses of the device and another device; receiving data by input means; and selecting and outputting one of data accumulated in buffer means for temporarily accumulating the data from the input means and the data directly input from the input means in accordance with the operation statuses of the device and the other device to be monitored. The plurality of information processing devices are connected in series.
Another program for an information processing method according to the present invention is used for an information processing method for use with an information processing system having a redundant configuration by operating a plurality of information processing devices as an active system and a standby system. The program directs the computer of the information processing device to perform the process of passing input data through to a subsequent stage when the device is operated as the standby system, and the information processing device operated as the standby system is arranged before the information processing device operated as the active system, and the devices are connected in series.
The program for the information processing method according to the present invention directs the computer of the information processing device to perform a process of discarding the input data accumulated in buffer means when the device is operated as the standby system.
That is, in the first information processing system according to the present invention, a standby information processing device is arranged at the stage before an active information processing device, and the devices are connected in series. The standby information processing device includes means for processing and accumulating data from input means for receiving the data, and means for selecting whether the accumulated data is output or the data directly input from the input means is output. In the first information processing system according to the present invention, the standby information processing device holds input data and passes the input data through to the active information processing device, thereby maintaining the same statuses in the active information processing device and the standby information processing device, and requiring no explicit status synchronizing process. Therefore, the first information processing system according to the present invention can solve the above-mentioned problems.
In addition to the configuration of the first information processing system, the second information processing system according to the present invention further includes, in the standby system, discard control means for discarding the data accumulated in the buffer. With the configuration, the second information processing system according to the present invention can realize the use of a buffer which is a finite resource, thereby solving the above-mentioned problems.
In the first information processing system according to the present invention, the standby information processing device is arranged at a stage before the active information processing device with the devices connected in series. Thus, holding input data by the standby information processing device allows the standby information processing device to be synchronized with the active information processing device, thereby reducing the load of the status synchronizing process. Since the data input to the active information processing device is constantly output by the standby information processing device, an explicit status synchronizing process, that is, the process of confirming the matching status of the data accumulated in the buffer, copying the data when a nonmatching status is detected, or accumulating the data in the buffer, etc., is not required.
In the second information processing system according to the present invention, the data input to the active information processing device is constantly output by the standby information processing device by connecting the standby information processing device at the stage before the active information processing device in series, thereby allowing the standby information processing device to constantly hold the status of the active information processing device.
The embodiments of the present invention are explained below by referring to the attached drawings.
In the information processing system according to the embodiment of the present invention, a pair of the active information processing device 1-1 and the standby information processing device 1-11, a pair of the active information processing device 1-2 and the standby information processing device 1-12, and a pair of the active information processing device 1-3 and the standby information processing device 1-13 are operated.
During the normal operation in which no fault is detected, the standby information processing device 1-11 is arranged closest to the transmitting terminal 2 in a set of the information processing devices closest to the transmitting terminal 2, and the standby information processing device 1-13 is arranged closest to the receiving terminal 3 in a set of the information processing devices closest to the receiving terminal 3.
In the other sets, the standby information processing device 1-12 can be arranged closer to the transmitting terminal 2 or the receiving terminal 3 so that the both sides of each information processing device operated as an active system can be protected by an active or standby information processing device in the normal operation. The active information processing devices 1-1 to 1-3 and the standby information processing devices 1-11 to 1-13 are the information processing devices having the same configurations because a system is switched from an active system to a standby system when a fault occurs.
Thus, in the embodiment according to the present invention, an adjacent active or standby information processing device can re-transmit a discarded packet by performing an operation using a redundant configuration of the serially connected active information processing devices 1-1 to 1-3 and standby information processing devices 1-11 to 1-13 although the active information processing devices 1-1 to 1-3 become faulty and the packets accumulated in the information processing devices are discarded, thereby realizing a high-reliability information processing system.
In the embodiments of the present invention, by serially connecting the active information processing devices 1-1 to 1-3 and the standby information processing devices 1-11 to 1-13, and selecting outputting a packet accumulated in a buffer by the standby information processing devices 1-11 to 1-13, or outputting an input packet directly, the standby information processing device can hold the same status as the partner active information processing device. Therefore, when the active information processing device becomes faulty, the process can be continues with the standby information processing device taking over the status of the active information processing device.
Thus, according to the embodiment of the present invention, a standby system can be synchronous with an active system only by connecting the standby system in series to the active system at the stage before the active system, and holding input data in the standby system. Therefore, the load of the status synchronizing process can be reduced. Since the data input to the active system is constantly output by the standby system, an explicit status synchronizing process, that is, the process of confirming the matching status of the data accumulated in the buffer, copying the data when a nonmatching result is detected, or accumulating the data in the buffer, etc., is not required.
To acquire the above-mentioned effect in the serial arrangement between the active information processing devices 1-1 to 1-3 and the standby information processing devices 1-11 to 1-13, the standby information processing device 1-11 is arranged closer to the transmitting terminal 2 than the active information processing device 1-1 in the set closest to the transmitting terminal 2, the standby information processing device 1-13 is arranged closer to the receiving terminal 3 than the active information processing device 1-3 in the set closest to the receiving terminal 3, and they are connected in series. In the embodiment according to the present invention, three sets of the active information processing devices 1-1 to 1-3 and the standby information processing devices 1-11 to 1-13 are prepared, but the number of sets is not limited to three, that is, there can be two, four, or more sets.
A first example of the present invention is explained below by referring to the attached drawings.
In
The input control unit 11 controls the output of the data (packets) input to the input unit 12 depending on the operation status (active system or standby system). That is, when the device 1 is an active system, the input unit 12 outputs the input data only to the data processing unit 13 under the control of the input control unit 11. If the device 1 is a standby system, the input data is output to the data processing unit 13 under the control of the input control unit 11, and the input data is output directly to the output selection unit 18.
The data processing unit 13 performs a process on the data input from the input unit 12 for communications with another device, and outputs the processed data to the buffer unit 14. The buffer unit 14 temporarily stores the data from the data processing unit 13, discards the accumulated data under the control of the discard control unit 15, and outputs the accumulated data to the output selection unit 18. The discard control unit 15 controls the discard of the packets accumulated in the buffer unit 14.
The operation status monitoring unit 16 monitors the operation statuses of the device 1 and an adjacent information processing device (a partner to the device 1). The output control unit 17 controls the method for outputting data depending on the operation status of the device 1 monitored by the operation status monitoring unit 16. That is, when the device 1 is a standby system, the output control unit 17 allows the output selection unit 18 to select the data from the input unit 12, and output the data to the subsequent stage. In addition, when the device 1 is an active system, the output control unit 17 allows the output selection unit 18 to select the data from the buffer unit 14, and output the data to the subsequent stage.
In the first example according to the present invention, the flow of data depends on whether the information processing device 1 is an active system or a standby system. The flow of the data is explained below about the case in which the information processing device 1 operates as an active system and the case in which it operates as a standby system. First, the flow of the data when the information processing device 1 operates as an active system is explained below.
When the information processing device 1 operates as an active system, a monitor result that the device 1 is an active system is input from the operation status monitoring unit 16 to the input control unit 11. Therefore, the data input to the input unit 12 is controlled to be input to the data processing unit 13. The input unit 12 outputs the input data to the data processing unit 13 under the control of the input control unit 11. The data processing unit 13 performs a necessary process on the data input from the input unit 12 (for example, a necessary process for the communication with the adjacent information processing device), and outputs the data to the buffer unit 14.
The buffer unit 14 temporarily stores the data processed by the data processing unit 13, and sequentially outputs the accumulated data to the output selection unit 18. Since the monitor result that the device 1 is an active system is input from the operation status monitoring unit 16, the output control unit 17 controls the output selection unit 18 to select and output the data from the buffer unit 14. The output selection unit 18 selects the data from the buffer unit 14 and outputs the data to the subsequent stage.
On the other hand, when the information processing device 1 operates as a standby system, the monitor result that the device 1 is a standby system is input from the operation status monitoring unit 16 to the input control unit 11. Therefore, the data input to the input unit 12 is controlled to be input to the data processing unit 13, and to be input directly to the output selection unit 18. The input unit 12 outputs the input data to the data processing unit 13, and outputs the input data to the output selection unit 18 under the control of the input control unit 11.
Since the monitor result that the device 1 is a standby system is input from the operation status monitoring unit 16, the output control unit 17 controls the output selection unit 18 to select and output the data from the input unit 12. The output selection unit 18 selects the data from the input unit 12 and outputs it to the subsequent stage. The discard control unit 15 monitors the accumulation status of the buffer unit 14, and appropriately discards the data of the buffer unit 14 such that the buffer unit 14 is not filled with the data to its capacity.
The operation status monitoring unit 16 of the information processing device 1 holds the identification information whether each of the two devices directly adjacent to the device 1 is a terminal, a partner information processing device or a non-partner information processing device. If the adjacent device is any information processing device (steps S5, S6 shown in
That is, the operation status monitoring unit 16 transmits a monitor packet to the adjacent information processing device (step S7 shown in
On the other hand, when the information processing device 1 receives a monitor packet from the adjacent information processing device (step S1 shown in
The operations performed when the information processing device 1 is operated as a standby system, when it is operated as an active system, when a fault occurs in an adjacent active information processing system when the information processing device 1 is operated as a standby system, and when a fault occurs in an adjacent standby information processing system when the information processing device 1 is operated as an active system are explained below.
When the information processing device 1 is operated as a standby system (step S11 shown in
Therefore, the input unit 12 not only inputs a packet to the output selection unit 18, but also inputs the packet to the data processing unit 13 (step S20 shown in
When it is necessary to output an input packet as is (step S21 shown in
Since the information processing device 1 operates as a standby system, the buffer unit 14 does not output a packet. However, since the capacity of the buffer unit 14 is finite, the buffer unit 14 discards a corresponding packet (step S28 shown in
When the information processing device 1 is operated as an active system (step S11 shown in
That is, when it is necessary to output an input packet as is (step S34 shown in
However, when the packets are retrieved and output from the buffer unit 14, the packets are not deleted from the buffer unit 14, but are accumulated for a fault of an adjacent information processing device. Only in the above-mentioned cases, the packets are discarded at an instruction of the discard control unit 15. That is, the buffer unit 14 discards a corresponding packet (step S41 shown in
Then, the operation performed when there is a fault occurring in the adjacent active information processing device (step S12 shown in
At this time, the information processing device 1 transmits packets accumulated in the buffer unit 14 (step S31 shown in
Furthermore, the operation performed when there is a fault occurring in the adjacent active information processing device (step S13 shown in
At this time, the buffer unit 14 does not output a packet not transmitted yet to the adjacent information processing device, but the packet accumulated in the buffer unit 14 and already transmitted is re-transmitted to the adjacent information processing device (step S16 shown in
When the information processing device 1 becomes faulty (step S17 shown in
Thus, according to the first example, by performing an operation with a redundant configuration using the serially connected active information processing devices 1-1 to 1-3 and standby information processing devices 1-11 to 1-13, packets can be re-transmitted by an adjacent active or standby information processing device although any of the active information processing devices 1-1 to 1-3 becomes faulty and the packets accumulated in the faulty device have been discarded, thereby realizing a high-reliability information processing system.
In the first example, a standby information processing device can be in the same state as a partner active information processing device by the mechanism of the input unit 12 and the output selection unit 18. Therefore, when the active information processing device becomes faulty, the standby information processing device can continue the process with the status of the active system taken over by the standby information processing device.
In
The acknowledgment reception unit 41 of the information processing device 4 monitors an acknowledgment packet from the receiving terminal 3 to the packet output from the device 4 when the device 4 is operated as an active or standby system (step S51 shown in
When the acknowledgment reception unit 41 confirms the reception of an acknowledgment packet (step S52 shown in
Thus, in the second example, as in the first example of the present invention, a high-reliability information processing system can be realized. Furthermore, according to the second example, the packets accumulated in the buffer unit 14 are appropriately discarded by monitoring the acknowledgment packet from the receiving terminal 3. Therefore, a necessary capacity for the buffer unit 14 can be reduced, thereby decreasing the number of packets to be re-transmitted when a fault occurs.
In the second example, the packet and the corresponding acknowledgment are explained for example, but instead the data in the application layer and the corresponding acknowledgment, and the request in the application layer and the corresponding response can also be used.
In
The status holding unit 51 holds the process status (for example, the status of how many input packets have been input, and to what extent the process has been performed, etc.) of the data processing unit 13. The acknowledgment transmission unit 52 generates an acknowledgment packet depending on the process result of the data processing unit 13. In this case, before the data processing unit 13 processes the input data from the input unit 12, it compares the input data with the process status of the status holding unit 51, passes the process status of the status holding unit 51 to the acknowledgment transmission unit 52 if the process of the input data is completed, and allows the acknowledgment transmission unit 52 to generate an acknowledgment packet indicating to what extent data has been processed (an acknowledgment packet indicating data received and processed by the data processing unit 13).
The acknowledgment packet output selection unit 53 selects outputting an acknowledgment packet received from the acknowledgment reception unit 41, or outputting an acknowledgment packet generated by the acknowledgment transmission unit 52, and outputs the selected acknowledgment packet to the device at the preceding stage. That is, when a monitor result that the device 5 is a standby system is input from the operation status monitoring unit 16, the acknowledgment packet output selection unit 53 outputs the acknowledgment packet received by the acknowledgment reception unit 41 to the device at the preceding stage, and suppresses the output to the device at the preceding stage of the acknowledgment packet generated by the acknowledgment transmission unit 52. When the monitor result that the device 5 is an active system is input from the operation status monitoring unit 16, the acknowledgment packet output selection unit 53 outputs the acknowledgment packet generated by the acknowledgment transmission unit 52 to the device at the preceding stage.
When the monitor result that the device 5 is changed from the standby system to the active system is input from the operation status monitoring unit 16 to the output control unit 17, the output control unit 17 suppresses the output of the packets before the packet specified by the acknowledgment packet received by the acknowledgment reception unit 41. For example, when the acknowledgment packet indicating to what extent data has been processed reaches the acknowledgment reception unit 41, the output control unit 17 suppresses the output of packets before the packet specified by the acknowledgment packet. In this case, the status held by the status holding unit 51 is changed according to the information specified by the acknowledgment packet. The status holding unit 51 and the buffer unit 14 can be set as a storage area in one memory unit (not shown in the attached drawings), and the memory can be also used to store the above-mentioned program.
In the third example of the present invention, the flow of data depends on whether the information processing device 5 operates as an active system or a standby system. The flow of the data is explained below about the case in which the information processing device 5 operates as an active system and the case in which it operates as a standby system. However, when the information processing device 5 operates as a standby system, it is similar to that in the second example according to the present invention except that the acknowledgment packet output selection unit 53 selects and outputs the acknowledgment packet received by the acknowledgment reception unit 41 to the device at the preceding stage. Therefore, the explanation of the operation is omitted here, and the flow of the data when the information processing device 5 operates as an active system is explained below.
When the information processing device 5 is operated as an active system, the operation status monitoring unit 16 inputs to the input control unit 11 the monitor result that the device 5 is an active system. Therefore, the data input to the input unit 12 is controlled to be input to the data processing unit 13. The input unit 12 outputs the input data to the data processing unit 13 under the control of the input control unit 11.
Before the data processing unit 13 processes the input data from the input unit 12, it compares the input data with the process status of the status holding unit 51. If the process of the input data has not been completed, the data processing unit 13 performs a necessary process (for example, a process required for the communication with the adjacent information processing device) on the input data, outputs the processed data to the buffer unit 14, and holds the process status in the status holding unit 51. Simultaneously, the data processing unit 13 passes the process result to the acknowledgment transmission unit 52. Therefore, the acknowledgment transmission unit 52 generates an acknowledgment packet based on the process result of the data processing unit 13. The acknowledgment packet generated by the acknowledgment transmission unit 52 is output from the acknowledgment packet output selection unit 53 to the device at the preceding stage.
If the process on the input data has been completed, the data processing unit 13 passes the process status of the status holding unit 51 to the acknowledgment transmission unit 52, and allows the acknowledgment transmission unit 52 to generate an acknowledgment packet indicating to what extent data has been processed. The acknowledgment transmission unit 52 generates the acknowledgment packet at an instruction of the data processing unit 13, and the generated acknowledgment packet is output from the acknowledgment packet output selection unit 53 to the device at the preceding stage. Thus, when a fault occurs in an active device at the stage before the information processing device 5 and the data in the buffer of a device changed from a standby system to an active system is transmitted, the extent of the process of the data, that is, which portion of the data is required can be announced.
The buffer unit 14 temporarily accumulates the data processed by the data processing unit 13, and sequentially outputs the accumulated data to the output selection unit 18. Since the monitor result that the device 5 is an active system is input from the operation status monitoring unit 16 to the output control unit 17, the output control unit 17 controls the output selection unit 18 to select and output the data from the buffer unit 14. The output selection unit 18 selects the data from the buffer unit 14 and outputs it to the next stage.
However, when the monitor result that the device 5 has been changed from a standby system to an active system is input from the operation status monitoring unit 16 to the output control unit 17, the output control unit 17 suppresses the output of packets before the packet specified by the acknowledgment packet received by the acknowledgment reception unit 41. For example, when the acknowledgment packet indicating the extent to which the process has been performed is received by the acknowledgment reception unit 41, the output control unit 17 suppresses the output of packets before the packet specified by the acknowledgment packet. In this case, the status held in the status holding unit 51 is also changed according to the information specified by the acknowledgment packet.
FIGS. 11 to 14 are flowcharts of the operating process according to the third example of the present invention. The operation of the information processing device 5 according to the third example of the present invention is explained below by referring to FIGS. 10 to 14. The processes shown in FIGS. 11 to 14 are realized by the CPU of the information processing device 5 executing the program stored in the memory (recording medium). The operation of the operation status monitoring unit 16 is similar to the operation according to the first example of the present invention. Therefore, the explanation of the operation is omitted here.
The information processing device 5 is operated as a standby system (step S61 shown in
Therefore, the input unit 12 not only inputs a packet to the output selection unit 18, but also inputs the packet to the data processing unit 13 (step S70 shown in
When it is necessary to output an input packet as is (step S71 shown in
As described above, since the information processing device 5 is operated as a standby system, the buffer unit 14 does not output a packet. However, since the capacity of the buffer unit 14 is finite, the buffer unit 14 discards a predetermined number of packets older than a corresponding packet (step S78 shown in
For example, although the information processing device adjacent to the information processing device 5 issues acknowledgment for the hundredth packet, there is the possibility that a node becomes faulty the next moment, and before the hundredth packet is transmitted to the faulty node, the hundredth packet is discarded. Therefore, the information processing device 5 does not discard the hundredth packet after the acknowledgment is issued for the hundredth packet, but discards the packets older than the hundredth packet such as the fiftieth packet, thus holding the fifty-first packet to the hundredth packet. At this time, the packets to be discarded can be determined by referring to the buffer capacity of each information processing device and the value of the band delay product of a network.
In the third example, when the monitor result that the device 5 is a standby system is input from the operation status monitoring unit 16 to the acknowledgment packet output selection unit 53, the acknowledgment packet output selection unit 53 does not output the acknowledgment packet generated by the acknowledgment transmission unit 52, but outputs the acknowledgment packet received by the acknowledgment reception unit 41.
Then, when the information processing device 5 is operated as an active system (step S61 shown in
When it is necessary to output an input packet as is (step S84 shown in
However, when a packet is retrieved and output from the buffer unit 14, the packet is not deleted from the buffer unit 14, but accumulated for a fault of the adjacent information processing device, and discarded at an instruction of the discard control unit 15 only in the following cases. That is, the buffer unit 14 discards a predetermined number of packets older than a corresponding packet (step S91 shown in
When the acknowledgment packet for an output packet reaches the acknowledgment reception unit 41, the discard control unit 15 and the output control unit 17 perform a necessary process on the acknowledgment packet. That is, the discard control unit 15 performs an operation such as discarding packets accumulated in the buffer unit 14 before the packet specified by the acknowledgment packet received by the acknowledgment reception unit 41. Furthermore, the output control unit 17 suppresses the output of the packets before the packet specified by the acknowledgment packet received by the acknowledgment reception unit 41. For example, when the acknowledgment packet indicating to what extent data has been processed is received by the acknowledgment reception unit 41, the output control unit 17 suppresses the output of the packets before the packet specified by the acknowledgment packet. In this case, the status held by the status holding unit 51 is also changed according to the information specified by the acknowledgment packet.
Next, the operation to be performed when the information processing device 5 is operated as a standby system, and when the adjacent active information processing device becomes faulty (step S62 shown in
At this time, the information processing device 5 first transmits packets accumulated in the buffer unit 14 (step S81 shown in
The operation performed when a fault occurs in the adjacent active information processing device while the information processing device 5 is operated as an active system is similar to the operation performed when a fault occurs in the adjacent active information processing device while the information processing device 1 according to the first example of the present invention is operated as an active system, the explanation of the operation is omitted here.
When an active information processing device 5-2 becomes faulty and a standby information processing device 5-12 is switched to an active system, the standby information processing device 5-12 sequentially re-transmits to an active information processing device 5-3 the transmitted packets (packets transmitted before the fault has occurred in the active information processing device 5-2) “4”, “5”, “6”, “7” and “8” accumulated in the buffer unit 14.
At this time, if the packets “4” and “5” have been accumulated in the buffer unit 14 of the active information processing device 5-3, the active information processing device 5-3 acknowledges the reception of the packets “4” and “5”, and transmits to the standby information processing device 5-12 an acknowledgment packet to transmit packets starting from the packet “6” or to notify that the packets up to the packet “5” have been received.
Thus, the standby information processing device 5-12 sequentially transmits the packets “6”, “7”, and “8” of the packets “4”, “5”, “6”, “7”, and “8” accumulated in the buffer unit 14 to the active information processing device 5-3. Therefore, in the third example, although the active information processing device 5-2 becomes faulty and the packets accumulated in the active information processing device 5-2 have been discarded as described above, the standby information processing device 5-12 can re-transmit the packets discarded in the active information processing device 5-2, thereby realizing a high-reliability information processing system.
Thus, according to the third example, as in the first example of the present invention, a high-reliability information processing system can be realized. In addition, the third example can be applied to a device such as a TCP session repeater, a Web proxy, etc. for issuing acknowledgment for received data by, unlike a device such as a router for outputting received data as is, an information processing device, not the receiving terminal 3.
As described above, in the first to third examples of the present invention, by serially connecting a standby system arranged at the stage before an active system, the standby system can be synchronous with the active system only by holding the data input to the standby system, thereby reducing the load of the status synchronizing process. Since the data input to the active system is constantly output by the standby system, the explicit status synchronizing process, that is, the process of confirming the matching statuses of the data accumulated in the buffer, copying the data when the nonmatching statuses are detected, or accumulating the data in the buffer, etc., is not required.
FIGS. 18 to 21 are explanatory views showing the operation of the information processing system according to the fourth example of the present invention.
First, the communication path used when data is transferred from the transmitting terminal 2 to the receiving terminal 3 is explained. The data transmitted from the transmitting terminal 2 is transferred to the standby information processing device 9-11 through the first communication device 21-1 and the second path switch device 20-2. The standby information processing device 9-11 which has received the data transfers the data to the active information processing device 9-1 through the second path switch device 20-2 and the first path switch device 20-1. The active information processing device 9-1 which has received the data transfers the data to the second communication device 21-2. Afterwards, the data is transferred to an active information processing device through a standby information processing device similarly, and finally received by the receiving terminal 3.
Relating to the settings of the paths between the first communication devices 21-1, 21-3 and 21-5 and the second communication devices 21-2, 21-4 and 21-6, and between the first path switch devices 20-1, 20-3 and 20-5 and the second path switch devices 20-2, 20-4 and 20-6, the communication can be realized through the above-mentioned path by controlling each path switch device in the path switch device control unit 92.
The status monitor of the path switch device in the path switch device operation status monitoring unit 91 is explained below. The path switch device operation status monitoring unit 91 holds the information for identification of the first path switch device (20-1, 20-3, 20-5) directly connected to the standby information processing device, and the second path switch device (20-2, 20-4, 20-6) directly connected to the active information processing device, and monitors the respective operation statuses.
The active information processing device (9-1, 9-2, 9-3) transmits a monitor packet to the first path switch device (20-1, 20-3, 20-5) and the second path switch device (20-2, 20-4, 20-6). If there is no reply returned, or if there is a reply notifying that a fault has occurred, the first path switch device (20-1, 20-3, 20-5) and the second path switch device (20-2, 20-4, 20-6) are registered as faulty devices. The path switch device control unit 92 controls the path switch device depending on the operation statuses of the information processing device and the path switch device.
The operation of the information processing device performed when the path switch device becomes faulty is explained below. First, the case in which the second path switch device 20-2 directly connected to the standby information processing devices 9-11 becomes faulty is explained by referring to
When the second path switch device 20-2 becomes faulty (step S101 shown in
Relating to the control of the path switch device, when both active information processing device 9-1 and standby information processing devices 9-11 are in the operating state, control is performed by determining which performs control through the operation status monitoring units 16. The active information processing device 9-1 processes and transfers data as before the occurrence of the fault.
Next, the case in which the first path switch device 20-1 directly connected to the active information processing device 9-1 has become faulty is explained below by referring to
Upon receipt of the notification that the first path switch device 20-1 has become faulty, the path switch device control unit 92 of each of the active information processing device 9-1 and the standby information processing device 9-11 controls the second path switch device 20-2 such that the second path switch device 20-2 can transfer data to the second communication device 21-2 (step S106 shown in
Relating to the control of the path switch device, when both active information processing device 9-1 and standby information processing device 9-11 are in the operating state, control is performed by determining which performs control through the operation status monitoring units 16. When the standby information processing device 9-11 recognizes that the first path switch device 20-1 is faulty, it recognizes that it cannot transfer data to the active information processing device 9-1, thereby changing the operation status of the device 9-11 to the active system (step S107 shown in
The case in which an information processing device becomes faulty is explained below by referring to the attached drawings. First, the case in which the active information processing device 9-1 becomes faulty is explained by referring to
The active information processing device 9-1 can pass the received data through to transfer the data to the second path switch device 20-2. With the case in which the function is lost taken into account, the path switch device control unit 92 for the active information processing device 9-1 controls the first path switch device 20-1 such that the path of the data transferred from the first path switch device 20-1 to the active information processing device 9-1 can be switched to the path of the data transferred from the first path switch device 20-1 directly to the second communication device 21-2 (step S109 shown in
Otherwise, the path switch device control unit 92 for the standby information processing device 9-11 controls the second path switch device 20-2 such that the path of the data transferred from the second path switch device 20-2 to the first path switch device 20-1 can be switched to the path of the data transferred from the second path switch device 20-2 directly to the second communication device 21-2 (step S110 shown in
Next, the case in which the standby information processing device 9-11 has become faulty is explained below by referring to
It is possible that the standby information processing device 9-11 passes the received data through to transfer the data to the second path switch device 20-2. With the case in which the function is lost taken into account, the path switch device control unit 92 for the active information processing device 9-1 controls the second path switch device 20-2 such that the path of the data transferred from the second path switch device 20-2 to the standby information processing device 9-11 can be switched to the path of the data transferred from the second path switch device 20-2 to the first path switch device 20-1 (step S112 shown in
Otherwise, the path switch device control unit 92 for the active information processing device 9-1 controls the first path switch device 20-1 and the second path switch device 20-2 such that the data can be transferred from the first communication device 21-1 to the first path switch device 20-1 (step S113 shown in
Thus, in the fourth example, as in the above-mentioned first example of the present invention, a high-reliability information processing system can be realized. Furthermore, according to the fourth example, the reliability can be furthermore enhanced by duplicating the data transfer path to the subsequent stage.
FIGS. 26 to 30 are explanatory views showing the operation of the information processing system according to the fifth example of the present invention. The operations of the information processing system according to the fifth example of the present invention are explained by referring to FIGS. 24 to 30. The operations of the information processing device 22 according to the fifth example of the present invention are common with those according to the fourth example of the present invention. Therefore, only the differences are explained below.
When the information processing device 22 has an IP (Internet protocol) address like a router, the information processing device 22 has addresses as the information for identifying each information processing device in the information processing system, the transmitting terminal 2, the receiving terminal 3, etc. The addresses are, for example, IP addresses. The address of the information processing device 22 is changed depending on the operation status.
Described below is the method of registering the above-mentioned address. As shown in
As shown in
As shown in
Thus, according to the fifth example, as in the fourth example of the present invention, a high-reliability information processing system can be realized. Furthermore, according to the fifth example, when both an active information processing device and a standby information processing device are normally operated, a representative address is registered for the standby information processing device, thereby allowing the data transmitted from a transmitting terminal to be necessarily transmitted through the standby information processing device, and correctly controlling the path.
Number | Date | Country | Kind |
---|---|---|---|
011021/2005 | Jan 2005 | JP | national |
137956/2005 | May 2005 | JP | national |