|
Claims  |
|
|
We claim:
1. A control apparatus for dynamically switching a logical session in an
information processing system in which a plurality of terminal devices are
connected to a plurality of processing units via at least one
communication control processor, each of the processing units executes one
or a plurality of programs each of which can be used by any one of the
terminal devices, the communication control processor comprising:
first storage means for storing histories of command data transactions
corresponding to the respective terminal devices;
second storage means for storing first identification data on the
processing units connected to the respective terminal devices, second
identification data indicative of whether the respective processing units
are usable or unusable, and third identification data identifying
replacing one of the processing units which can replace the respective
processing units; and
first control means for identifying on the basis of the first
identification data, when the second identification data indicates that a
processing unit is unusable, a terminal device that is logically connected
to the processing unit and has used one of the programs having been
executed by the processing unit among the plural programs executed by the
processing units, for retrieving from the first storage means histories of
command data transactions of the identified terminal device, for
automatically creating a first command message to disconnect the logical
connection between the processing unit and the identified terminal device,
for delivering the first command message to the processing unit, for
automatically establishing a logical connection between a replacing
processing unit replacing the processing unit and the identified terminal
device on the basis of the third identification data stored in the second
storage means, for automatically creating a second command message for
allowing the identified terminal device to be used continuously on the
basis of the previously retrieved histories of command data transactions
and delivering the second command message to the replacing processing
unit.
2. A control apparatus according to claim 1, further comprising:
command means connected to the at least one communication control
processor; and
wherein the at least one communication control processor further includes
second control means for setting information in the second storage means
in accordance with a command from the command means.
3. A control apparatus according to claim 1, wherein,
the at least one communication control processor includes second control
means for setting information in the second storage means in accordance
with a command from the processing units.
4. A control apparatus according to claim 2, wherein
the command means commands the second control means to cause one of the
second identification data in the second storage means to indicate that
the processing unit is unusable.
5. A control apparatus according to claim 3, wherein
the commands cause the second control means to cause one of the second
identification data in the second storage means to be set so as to
indicate that the processing unit is unusable.
6. A control apparatus according to claim 1, wherein
the at least one communication control processor further includes:
third control means for supervising whether the respective processing units
connected to the at least one communication control processor are
operating; and
second control means for setting one of the second identification data in
the second memory means so as to indicate that the processing unit is
unusable when the processing unit is detected as unusable by the third
control means.
7. A control apparatus according to claim 6, wherein
the third control means issues to the respective processing units at
predetermined periods a command to check whether the respective processing
units are operating, and wherein the second control means reflects the
respective operative states of the processing units in second
identification data in the second storage means on the basis of the
respective responses from the processing units.
8. A control apparatus according to claim 6, further comprises
a command buffer storing command data for checking whether the respective
processing units are operating or not, wherein
said third control means issues the command data stored in the command
buffer to the respective processing units to check whether the respective
processing units are operating or not and detects whether the respective
central processing units are unsuable or not on the basis of the
respective responses from the processing units.
9. A control apparatus according to claim 1, wherein the second storage
means further includes fourth identification data of the processing units
executing the respective programs, and the first control means performs
the identification operation on the basis of the first and the fourth
identification data.
10. A control method for dynamically switching a logical session in an
information processing system having a network control system structure
comprising a plurality of processing units, a plurality of terminal
devices, and at least one communication control processor which connects
the plurality of terminal devices to the plurality of processing units,
the communication control processor including first storage means for
storing histories of command data transactions corresponding to the
respective terminal devices and second storage means for storing first
identification data on the processing units connected to the respective
terminal devices, second identification data indicative of whether the
respective processing units are usable or unusable, and third
identification data identifying replacing ones of the processing units
which can replace the respective processing units, the method comprising
the steps of:
identifying on the basis of the first identification data, when the second
identification data indicates that a processing unit is unusable, a
terminal device that is logically connected to the processing unit and has
used by one of the programs having been executed by the processing units
among the plural programs executed by the processing units;
retrieving from the first storage means histories of command data
transactions of the identified terminal device;
automatically creating a first command message to disconnect the logical
connection between the processing unit and the identified terminal device
and delivering the first command message to the processing unit;
automatically establishing a logical connection between a replacing
processing unit replacing the processing unit and the identified terminal
device on the basis of the third identification data stored in the second
storage means; and
automatically creating a second command message for allowing the identified
terminal device to be used continuously on the basis of the previously
retrieved histories of command data transactions and delivering the second
command message to the replacing processing unit.
11. A control method according to claim 10, wherein the information
processing system further comprises command means connected to the at
least one communication control processor; and
wherein the method further comprises a fifth step of setting information in
the second storage means in accordance with a command from the command
means.
12. A control method according to claim 11, wherein
the setting information step includes a step of setting, in accordance with
a command from the command means, one of the second identification data in
the second storage means to indicate that the processing unit is unusable.
13. A control method according to claim 10, further comprising a step of
setting information in the second storage means in accordance with a
command from the processing units.
14. A control method according to claim 13, wherein
the setting information step includes a step of setting one of the second
identification data in the second storage means so as to indicate that the
processing unit is unusable in accordance with a command from the
processing units.
15. A control method according to claim 10, further includes:
a step of supervising whether the respective processing units connected to
the at least one communication control processor are operating; and
a step of setting one of the second identification data in the second
storage means so as to indicate that the processing unit is unusable when
the processing unit is detected as unusable by the supervising step.
16. A control method according to claim 15, wherein
the supervising step issues to the respective processing units at
predetermined periods a command to check whether the respective processing
units are operating; and
wherein the setting one of the second identification data step reflects the
respective operative states of the processing units in second
identification data in the second storage means on the basis of the
respective responses from the processing units.
17. A control apparatus for dynamically switching a logical session in an
information processing system having a network control system
configuration in which a plurality of terminal devices are connected to a
plurality of processing units via at least one communication control
processor, the communication control processor comprising:
storage means for storing histories of command data transactions
corresponding to the respective terminal devices; and
control means for identifying, when a processing unit is unusable, a
terminal device that is logically connected to the processing unit and has
used any one of programs having been executed by the processing unit among
plural programs executed by the processing units, for retrieving the
histories of command data transactions of the identified terminal device,
the processing unit being a processing unit to be replaced by a replacing
processing unit, for delivering to the processing unit to be replaced
command data to disconnect the logical connection between the processing
unit to be replaced and the identified terminal device, for establishing
logical connection between the replacing processing unit and the
identified terminal device, and for automatically delivering the retrieved
histories of the command data transactions to the replacing processing
unit. |
|
|
|
|
Claims  |
|
|
Description  |
|
|
BACKGROUND OF THE INVENTION
The present invention relates to a control method and apparatus for
switching between central processing units in an information processing
system, and more particularly to a control method and apparatus capable of
switching a session from one central processing unit to another without
influencing the operation of terminal devices in an information processing
system constituted by a network control system.
Recently, there is an information processing system constituted by a
network control system in which a communication environment is set without
stopping the whole information processing system, as is disclosed, for
example, in Japanese Patent Unexamined Publication No. 61-139859.
When there occur additions to and changes in the communication environment,
the technique disclosed in the publication is intended to stop only a
communication managing program in the information processing system to
cope with the additions and changes without stopping the whole information
processing system. Namely, the technique is intended to perform system
formation partially, but it does not disclose switching from one central
processing unit to another by a communication control processor which is
connected to those central processing units in a network control system
configuration.
As an information processing system configuration has become large-scaled
and complicated, a process has become prevalent in which a group of
central processing units copes with newly occurring demands for
calculations and processing operations. Such an information processing
system of the type which has a network system configuration including a
plurality of central processing units, a plurality of communication
control processors, and a plurality of terminal devices, as mentioned
above, must be operated efficiently by greatly saving its consumed power
(power saving operation). More specifically, in midnight time zones and/or
holidays in which the load on the information processing system will
decrease, it is desirable to stop several of the plurality of central
processing units and to further restart the remaining central processing
units when the load increases in order to cope with the increased demand
for processing operations. However, the service provided by the
information processing system to the users who use the information
processing system by means of terminal devices in a time sharing system
(TSS) and/or on an on-line basis must not be deteriorated. More
specifically, when users use in TSS a first central processing unit, they
must not be required to perform any operations to issue a command to log
temporarily from a first central processing unit (LOGOFF command) and a
command (LOGON command) to log on a second central processing unit (LOGON
command). There is no problem if the terminals users can enjoy the
services provided by the second central processing unit instead of the
first central processing unit without requiring the terminal users to
perform those operations. However, such control system has not been
proposed in the past.
Recently, to improve the reliability of the system, information processing
systems are constructed to have redundancies such as spare devices, spare
central processing units and a control system which performs switching
from main devices to these spare devices without causing erroneous
operations, as is disclosed, for example, in Japanese Patent Unexamined
Publication No. 62-17258.
The publication discloses the techniques in which spare devices are
prepared at all times in the information processing system. When there
occurs a failure in one device, a switching device switches information
processing from the defective device to another spare one, and a testing
device is allowed to diagnose the defective device. The defective device
can be repaired as it is connected to the testing device. However, there
are various problems in expanding the devices to be switched to central
processing units. The JP-A 62-17258 does not refer to a control system for
switching and reexecution of a group of programs which has run at the
central processing unit in which a failure occurred to another processing
unit. Nor does the publication disclose a control unit which detects the
occurrence of failures.
When a failure occurs in a central processing unit in an on-line processing
system, general well-known methods of restoring the central processing
unit are as follows:
(a) A common use of a group of files between a spare central processing
unit and the main central processing unit; and
(b) Picking up, in a defective central processing unit, of histories of
messages from the respective terminals belonging to the defective central
processing unit, and sequential processing of the message histories after
restoration of the defective central processing unit.
In the method (a), the operator of the information processing system
detects a failure in a central processing unit, and switches the defective
central processing unit to a spare one in accordance with the instructions
of the operation manager. However, during the time when the main central
processing unit operates normally, the spare one is on standby, which is
useless. In the method (b), since the state before the failure occurs is
restored on the basis of the message histories picked up in the central
processing unit, the contents of the files must also be returned to their
initial state, and the users at the terminal devices must wait during that
restoring operation.
The service provided by the information processing system to the users who
use the information processing system through their terminal devices in a
time sharing system or on an on-line basis must not be deteriorated. More
specifically, when there occurs a failure in any one of a plurality of
central processing units, it is desirable to automatically switch the
terminal users belonging to the defective central processing unit to
another normal one without requiring the terminal users to perform any
operations required for the use of the normal processing unit. However,
the conventional control systems have not realized such switching system.
SUMMARY OF THE INVENTION
It is a first object of the present invention to provide a control method
and apparatus which, in an information processing system having a network
system configuration comprising a group of central processing units, a
communication control processor and a group of terminal devices,
automatically switches one central processing unit which the users use to
another without requiring the users to perform any operations.
It is a second object of the present invention to provide a control method
and apparatus which, in an information processing system having a network
system configuration comprising a group of central processing units, a
communication control processor and a group of terminal devices, causes
the communication control processor to supervise at all times the
operative state of the group of central processing units, and to
automatically switch, when it detects a central processing unit at
stoppage, the session to the central processing unit at stoppage to
another central processing unit without requiring the terminal users which
have used the central processing unit at stoppage to perform any
operations.
The first object is achieved by a system comprising a plurality of central
processing units and a communication control processor (CCP) connected
thereto, CCP comprising a memory area for storing histories of message
transactions for the respective terminal devices, a control block
indicative of which of the central processing units the respective
terminal devices use, a control block for storing identification
information on central processing units connected to the communication
control processor, information on the respective states of those central
processing units, and identification information on central processing
units which can replace any defective central processing unit, and a
control unit for tracing at all times the message transactions between the
respective terminal devices and the central processing unit concerned and
storing in the above memory area the commands from the terminal devices
and the termination messages from the central processing unit concerned.
The system further includes a control unit which when a switching command
is externally issued to a central processing unit which is to replace the
central processing unit used so far (hereinafter referred to as the
"replacing central processing unit"), selects the terminal devices which
have used the central processing unit to be replaced with another
(hereinafter referred to as the "replaced central processing unit"),
delivers to the replaced central processing unit a command to disconnect
the logical session of the appropriate terminal devices from the replaced
central processing unit (LOGOFF command) using information in the memory
area for the histories of message transactions, automatically delivers to
the replacing central processing unit a command to establish another
logical session with the replacing central processing unit (LOGON
command), automatically creates a command message which allows the
terminal devices to be used continuously on the basis of the histories of
the transactions stored in the history memory area and delivers the
command message it to the replacing central processing unit.
By the above system, switching from the replaced central processing unit to
the replacing central processing unit is achieved without requiring the
users at the terminal devices to perform any operations of keying in a
series of commands which would otherwise be required for that switching
operations.
The control system for dynamically switching a logical session according to
the present invention includes a communication control processor between
the terminal devices and the central processing units. The communication
control processor stores therein the history of the message transactions,
and automatically delivers a command message to the replacing central
processing unit when switched. Therefore, the operability maintained so
far will not be impaired.
The second object of the present invention is achieved by further providing
a control unit in the communication control processor for supervising the
operation of the group of the central processing units connected to the
communication control processor. When the control unit detects that the
central processing unit concerned cannot be used any longer or is at
stoppage due to some failure, it marks in the control block corresponding
to that defective central processing unit that same cannot be used any
longer, and starts to operate session switching control means.
The session switching control means includes means for selecting the
terminal devices which used the defective central processing unit,
automatically delivering to the replacing central processing unit a data
stream comprising a command to establish a session (LOGON command) with
the replacing central processing unit by using the information stored in
the memory area for the histories of the previous message transactions,
automatically creating a data stream of a command message for allowing the
terminal devices to be used continuously on the basis of the histories of
the transactions stored in the memory area, and delivering the command
message to the replacing central processing unit.
By such construction, even if any failure occurs in any particular one of
the group of the central processing units to stop the particular central
processing unit, the terminal devices users will be switched to another
central processing unit without requiring the users to perform any
operations to key in a series of commands which would otherwise be
required for that switching operation.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a scheme of a first embodiment of a control apparatus for
dynamically switching a logical session according to the present
invention;
FIG. 2 illustrates a scheme of a group of control programs and a group of
managing tables which realize the control system of FIG. 1;
FIG. 3 illustrates the contents of a managing table indicative of the
respective states of the central processing units;
FIG. 4 illustrates the contents of a managing table indicative of
application programs and the corresponding central processing units which
process the application programs;
FIG. 5 illustrates the contents of a terminal state managing table and a
message transaction history table;
FIG. 6 is a flowchart showing the operation of a main program section;
FIG. 7 is a flowchart showing the operation of a logical session
establishing program;
FIG. 8 illustrates a data stream of LOGON commands stored in a message
buffer 216 of FIG. 2;
FIG. 9 is a flowchart showing the operation of a message
transmission/reception program section;
FIG. 10 is a flowchart showing the operation of a logical session
termination program section;
FIG. 11 illustrates the kind of commands issued from command unit 205 of
FIG. 1 to a command interpretation and execution program section;
FIGS. 12, 13 and 14 are a flowchart showing the operation of the command
interpretation and execution program;
FIG. 15 is a scheme of a session switching control apparatus according to a
second embodiment;
FIG. 16 is a scheme of a group of control programs and a group of managing
tables which realize the control method according to the second
embodiment;
FIG. 17 illustrates the contents of a central processing unit state
managing table of FIG. 16;
FIGS. 18 and 19 are a flowchart showing the operation of the command
interpretation and execution program of FIG. 16; and
FIG. 20 is a flowchart showing the operation of a supervision and control
program.
DESCRIPTION OF THE PREFERRED EMBODIMENTS
Preferred embodiments of a control method and apparatus for dynamically
switching a logical session in an information processing system having a
network control system configuration according to the present invention
will now be described in more detail.
First, a first embodiment of the present invention will be described with
reference to FIGS. 1-14.
The first embodiment provides a control method and apparatus which switches
a central processing unit used so far to another one without requiring the
terminal users to perform any operations which would otherwise be required
for that switching operation.
FIG. 1 is a scheme of a control apparatus for dynamically switching a
logical session according to the particular embodiment. In FIG. 1, a
network configuration is composed of a plurality of central processing
units (CPUs) (here, for example, two CPUs; namely, CPU-A, CPU-B) 201, 202,
a communication control processor (CCP) 200 and a group of terminal
devices 204. Central processing units CPU-A and CPU-B are also connected
to a file unit 203. The CPUs and CCP each include a sub-CPU, a ROM and a
RAM which are each shown as a functional block in FIG. 1.
In CPU-A and CPU-B, TSS control programs 208 and 209 operate under an
operating system (OS) and a virtual teleprocessing access method (VTAM),
and application programs AP.sub.1 and AP.sub.3 operate in correspondence
to terminal devices 206 and 207, respectively.
In CCP 200, a network control program (NCP) 211 which manages network
transmission procedures operates to provide transmission control of the
communication procedures comprising high-level data link control (HDLC)
and synchronous data link control (SDLC) procedures. For the virtual
teleprocessing access method and the communication procedures, see, for
example, "Synchronous Data Link Control: A Perspective", IBM Systems
Journal, Vol. 13, No. 2, 1974.
In the above arrangement, the terminal device 206 can freely access CPU-A
201 and CPU-B 202 via CCP 200 and lines l 200 and 201, respectively, to
thereby operate application programs AP.sub.1 -AP.sub.4. As just described
above, the state in which, for example, the terminal device 206 operates
an application program in CPU-A 201 via CCP 200 is generally referred to
as "a logical session is established". Therefore, as mentioned above, when
the terminal device 206 uses AP.sub.1, it establishes a logical session
with TSS control program 208 in CPU-A 201.
The control system for dynamically switching a logical session according to
the particular embodiment is realized by a group of managing tables 210, a
data stream control program 220 and a command interpretation and execution
program 230 in CCP 200. Now, a control system for dynamically switching a
logical session according to the particular embodiment will be outlined
with reference to FIG. 1 and the structure and operation of the system
will then be described in detail with reference to FIGS. 2-14.
In FIG. 1, assume that the user of a terminal device 206 establishes a
logical session with the TSS control program 208 in CPU-A 201 via line l
200. At this time, AP.sub.1 is a program for processing a TSS command
keyed in by the user at terminal device 206. Now, a case in which CPU-A
201 is stopped, and the TSS users of CPU-A 201 are automatically shifted
to CPU-B 202 will be described. In this case, the control system for
dynamically switching a logical session according to the particular
embodiment will exhibit its effect.
For batch processing, if CPU-A 201 stops providing its services, the
subsequent batch processing is automatically executed by CPU-B 202. This
process is possible because file unit 203 is connected to both CPU-A and
CPU-B.
Data stream control program 220 stores in the group of managing tables 210
the histories of message transactions processed between the respective
terminal devices and the central processing unit. In addition to the
history of message transaction, managing tables 210 include a central
processing unit state managing table indicative of the respective states
of the central processing units connected to the communication control
processor, a managing table indicative of identification data on
application programs and the corresponding central processing units which
process the application programs, a terminal device state managing table
and a message buffer. These managing tables will be also described later
with reference to FIGS. 2-5.
Command interpretation and execution program 230 of FIG. 1 starts to
operate when command data issued by a command unit 205 is received via
line l 203 and the operation of program 230 will be described in detail in
FIGS. 11-14.
When command interpretation and execution program 230 interprets command
data from command unit 205 and stores in managing tables 210 control data
on the command data, it cooperates with data stream control program 220 to
realize the control system which dynamically switches a logical session
according to the particular embodiment.
When terminal device 206 establishes a logical session with TTS control
program 208 in CPU-A 201, and is executing TSS command AP.sub.1, and if it
receives from command unit 205 a command that CPU-A 201 should be
invalidated, command interpretation and execution program 230 turns off a
valid flag in the appropriate entry in the central processing unit state
managing table (see FIG. 3) of managing tables 210. Thus, a logical
session cannot be established any longer with TSS control program 208 of
CPU-A 201.
When command unit 205 issues the command "execute switching", commands
interpretation and execution program 230 uses data stream control program
220 and managing tables 210 to automatically create a command to
disconnect terminal devices 204 which have established a logical session
with the TSS control program in CPU-A 201 (LOGOFF command), stores the
command in the message buffer and shifts control to network control
program NCP 211, which then delivers the command data in the message
buffer via line l 200 to CPU-A 201. Thus, the command data is delivered
through the VTAM program to TSS control program 208 to close or disconnect
the session of the terminal device corresponding to the appropriate data
stream.
Data stream control program 220 stores the message transaction histories
corresponding to the respective terminal devices and automatically creates
a command to establish a logical session with TSS control program 209 in
the replacing CPU-B 202 (LOGON command) by using managing tables 210 which
store the state of the respective central processing units, stores the
LOGON command in the message buffer, and delivers control to network
control program (NCP) 211. Thus network control program 211 delivers the
command data in the message buffer via line l 201 to CPU-B 202. When the
command data is delivered to TSS control program 209 via VTAM, the session
by the terminal device in the appropriate data stream is established and
thereafter AP.sub.3 becomes operable.
If a logical session is established with another central processing unit,
command interpretation and execution program 230 and data stream control
program 220 store command data sequentially in the message buffer using
the message transaction histories stored previously. Thus the terminal
device concerned is restored to its state immediately before the central
processing unit is switched and thereafter can key in commands.
By performing the above mentioned processing operation on all the terminal
devices connected to the replaced central processing unit, the logical
session is automatically switched.
The structure and operation of the control system for dynamically switching
a logical session according to the particular embodiment will now be
described in detail with reference to FIG. 2 and the subsequent Figures.
FIG. 2 shows the structure of the group of managing tables 210, data stream
control program 220, and command interpretation and execution program 230.
The group of managing tables 210 includes a managing table (CPUTAB) 212
which stores the respective states of the central processing units, a
managing table (APLTBL) 213 indicative of identification data on
application programs and the corresponding central processing unit which
process the application programs, a terminal state managing table (DEVT)
214, message transaction history tables (MSGLG.sub.n) 215 and a message
buffer 216. Each message history table 215 corresponds to a respective one
of the terminal devices.
Data stream control program 220 includes a main program 221, a logical
session establishing program section 222, a message transmission/reception
program section 223, and a logical session termination program section
224. Data stream control program 220 is also accessed by command
interpretation and execution program 230. The broken line arrows shown in
FIG. 2 mean that the group of processing programs refer to and updata
managing tables 210.
FIG. 3 illustrates the configuration of central processing unit state
managing table CPUTAB 212 and an entry count (NOCPU) 241 shows the
effective number of entries in the table. Reference numeral 240 denotes an
R-flag which shows that there is a command issued by command unit 205.
Each entry includes a central processing unit name CPUID 242, and a valid
flag (V-flag) 243 and a replacing central processing unit name (CHNGCPU)
244. These CPUID 242 and CHNGCPU 244 are information identifying central
processing units. CHNGCPU 244 becomes valid when V-flag 243 is off.
FIG. 4 shows the configuration of a managing table (APLTBL) 213 indicative
of identification data on application programs and central processing
units which processes the corresponding application programs. As in FIG.
3, entry co | | |