WO2017022008A1 - Computer, control method and control program - Google Patents

Computer, control method and control program Download PDF

Info

Publication number
WO2017022008A1
WO2017022008A1 PCT/JP2015/071777 JP2015071777W WO2017022008A1 WO 2017022008 A1 WO2017022008 A1 WO 2017022008A1 JP 2015071777 W JP2015071777 W JP 2015071777W WO 2017022008 A1 WO2017022008 A1 WO 2017022008A1
Authority
WO
WIPO (PCT)
Prior art keywords
virtual machine
computer
ipmi
destination information
session
Prior art date
Application number
PCT/JP2015/071777
Other languages
French (fr)
Japanese (ja)
Inventor
翔一 竹内
周平 松本
Original Assignee
株式会社日立製作所
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社日立製作所 filed Critical 株式会社日立製作所
Priority to PCT/JP2015/071777 priority Critical patent/WO2017022008A1/en
Publication of WO2017022008A1 publication Critical patent/WO2017022008A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements

Definitions

  • the present invention relates to a computer on which a virtual computer operates, a control method, and a control program.
  • the cloud service provider not only lends a physical machine, but also creates a plurality of virtual machines by virtualizing the physical machine, and lends the virtual machine to a customer who does not need much performance. By making a physical machine into a plurality of virtual machines, the cloud service provider can reduce the number of physical machines and, in turn, can reduce electricity bills and place bills.
  • a cloud user issues a power operation request to the physical machine and turns the power on or off.
  • a cloud user needs to make a power supply operation request to the hypervisor on the physical machine to start or turn off the virtual machine. In this situation, as the number of machines used increases, it becomes more complicated to manage whether the machine is a virtual machine or a physical machine.
  • the virtual PC management system disclosed in Patent Document 1 includes a unit that acquires a power state of a virtual machine from a computer via a network and stores it in a storage unit; a unit that acquires a power state of the computer from a computer via a network and stores the storage unit in a storage unit; Receiving a virtual machine use start request from the operation terminal, searching for stored computer storage data as a candidate for assignment to a computer that is powered on and unassigned by the virtual machine, and issuing a use start request to the assignment candidate computer Means for allocating a corresponding virtual machine, and means for notifying an allocation candidate computer of an instruction to turn on the virtual machine via the network.
  • Wake-on-LAN is a method for starting a virtual machine remotely like a physical machine.
  • WoL can only start a virtual machine and does not have a power-off interface (see, for example, Patent Document 2 below).
  • the management virtual machine may maintain a database of network management information associated with each virtual machine on the host.
  • the advanced virtual machine manager on the host may provide an interface to the management virtual machine so that the management virtual machine can capture multiple management messages for multiple virtual machines on the host.
  • the management virtual machine may respond to multiple messages based on information in the database and may issue queries to multiple virtual machines to obtain essential information.
  • the management virtual machine may aggregate information from various virtual machines before responding to network management messages.
  • JP 2010-86423 A US Patent Application Publication No. 2009/0241113 Special table 2007-513405 gazette
  • the hypervisor itself manages a management server or a plurality of hypervisors together with a single management server.
  • the user must select whether the machine to be used is a virtual machine or a physical machine, and if it is a physical machine, it must issue an instruction for the physical machine, and if it is a virtual machine, it issues an instruction for operating the management server that can operate the virtual machine.
  • An object of the present invention is to improve the convenience of power operation for a machine.
  • a computer is a computer on which a virtual computer operates, and the computer executes a storage device that stores a virtualization program that controls the virtual computer and the virtualization program
  • a processor for transmitting and receiving data, and the processor receives destination information of either the computer or the virtual machine and power operation details for the destination specified by the destination information from the interface.
  • 12 is a flowchart (part 1) illustrating an example of a session establishment processing procedure by an IPMI process for a virtual machine. It is explanatory drawing which shows an example of the packet which satisfy
  • FIG. 10 is a flowchart (part 3) illustrating a procedure example of session establishment processing by a virtual machine IPMI process.
  • FIG. It is explanatory drawing which shows an example of the packet produced
  • FIG. 10 is a flowchart (part 4) illustrating an example of a session establishment processing procedure by the virtual machine IPMI process.
  • FIG. It is explanatory drawing which shows an example of the packet produced
  • FIG. 12 is a flowchart (part 5) illustrating an example of a session establishment processing procedure by the virtual machine IPMI process. It is explanatory drawing which shows an example of the packet produced
  • FIG. 16 is a flowchart (part 6) illustrating an example of a session establishment processing procedure by the virtual machine IPMI process 053;
  • FIG. 16 is a flowchart (No. 7) illustrating an example of a session establishment processing procedure using the virtual machine IPMI process.
  • FIG. 12 It is explanatory drawing which shows an example of the packet produced
  • 12 is a flowchart (part 2) illustrating an example of the authentication data verification processing procedure by the virtual machine IPMI process.
  • FIG. 12 is a flowchart (part 3) illustrating an example of an authentication data verification processing procedure by an IPMI process for virtual machines.
  • FIG. 10 is a flowchart (part 4) illustrating an example of the authentication data verification processing procedure by the virtual machine IPMI process.
  • FIG. 10 is a flowchart (part 5) illustrating an example of the authentication data verification processing procedure by the IPMI process for virtual machines.
  • FIG. 43 is an explanatory diagram illustrating an example of a packet generated in step S4201 of FIG. 10 is a flowchart (part 1) illustrating an example of a virtual machine power supply operation request processing procedure by an IPMI process for virtual machines.
  • FIG. 45 is an explanatory diagram illustrating an example of a received packet that triggers execution of step S4401 of FIG. 44. It is explanatory drawing which shows the example of the received packet used as the trigger of execution of step S4403 of FIG. It is explanatory drawing which shows the example of the packet produced
  • FIG. 10 is a flowchart (part 2) illustrating an example of a virtual machine power supply operation request processing procedure by the virtual machine IPMI process.
  • FIG. It is explanatory drawing which shows the example of the packet produced
  • 12 is a flowchart (part 2) illustrating an example of a session cutoff processing procedure by the virtual machine IPMI process.
  • FIG. 57 is an explanatory diagram showing an example of packets generated in step S5306 in FIG. 53 and step S5406 in FIG. 54.
  • 12 is a flowchart (part 1) illustrating an example of a termination process procedure of a virtual machine IPMI process.
  • 12 is a flowchart (part 2) illustrating an example of a termination process procedure of the virtual machine IPMI process.
  • the present embodiment is a computer system that applies Intelligent Platform Management Interface (hereinafter referred to as IPMI), which is an interface for operating a physical machine, to a virtual machine.
  • IPMI Intelligent Platform Management Interface
  • the user can start or shut down the machine without being aware of whether the type of machine that is the target of power operation is a physical machine or a virtual machine. Improvements can be made.
  • program such as a hypervisor, an OS (Operating System), an application, and a virtual machine as examples of virtualization programs that realize virtualization control.
  • program performs the process defined by being executed by the processor using the memory and the port, the description may be made with the processor as the subject.
  • a reference numeral is given to each, but when the plurality of the same type of constituent elements are not distinguished, the reference numerals may be combined.
  • the virtual machines 061 and 062 when they are not distinguished from each other, they may be simply represented as virtual machines 06.
  • the guest OSs 081 and 082 are not distinguished from each other, they may be simply represented as guest OS08.
  • FIG. 1 is a block diagram illustrating a system configuration example of a computer system according to the present embodiment.
  • FIG. 2 is a block diagram illustrating a specific hardware configuration example of the computer system according to the present embodiment.
  • the computer system includes a physical machine 001 that is a computer (physical computer), a remote management system 020, and a hypervisor operation client 021.
  • the physical machine 001 and the remote management system 020 are communicably connected via the network 010.
  • the physical machine 001 and the hypervisor operation client 021 are communicably connected via the network 010.
  • Examples of the network 010 include a LAN (Local Area Network), a WAN (Wide Area Network), and the Internet.
  • the hypervisor operation client 021 is a computer used by an administrator who manages the physical machine 001.
  • the hypervisor operation client 021 sets values in the IPMI IP address table 100 and the user information table 110 in the hypervisor 030 via the network 010.
  • the remote management system 020 is an IPMI client in which a user who uses the physical machine 001 operates the power supply for the physical machine 001 that is the operation target machine and the virtual machine (virtual computer) 06 on the physical machine 001.
  • the remote management system 020 transmits an IPMI message to the physical machine 001 via the network 010.
  • the IPMI message includes a message related to a power supply operation request and a message related to user authentication.
  • the message related to the power operation request includes, for example, identification information (eg, IP address) that uniquely identifies the operation target machine and power operation details (startup or shutdown).
  • the message related to user authentication includes, for example, the user name and password of the remote management system 020 and identification information (eg, IP address) that uniquely identifies the operation target machine.
  • the remote management system 020 selects a power operation target machine from the screen of the remote management system 020 and transmits an IPMI message regarding the power operation request to the physical machine 001.
  • the user of the remote management system 020 is not conscious of whether the power operation target machine is the physical machine 001 or the virtual machine 06.
  • the physical machine 001 receives an IPMI message related to the power operation request at a first NIC (Network Interface Card) 005. (2) When the identification information included in the received IPMI message is the IP address of the physical machine 001, the physical machine 001 executes processing according to the power operation content specified by the IPMI message. That is, the physical machine 001 is started if the power operation content is “startup”, and the physical machine 001 is shut down if it is “shutdown”.
  • the physical machine 001 passes the IPMI message to the management OS 040. If the virtual machine IPMI process 053 has not been generated for the virtual machine 06 that is the power operation target, the management OS 040 generates the virtual machine IPMI process 053. Then, the management OS 040 passes an IPMI message to the virtual machine IPMI process 053 for the virtual machine 06 that is the power operation target.
  • the virtual machine IPMI process 053 controls the hypervisor 030 and responds to the power supply operation specified by the IPMI message via the hypervisor operation I / F 042 for the virtual machine specified by the IPMI message. Execute the process. That is, if the power operation content is power ON, the designated virtual machine 06 is started, and if the power operation is OFF, the designated virtual machine is shut down.
  • the physical machine 001 includes a CPU 002, a memory 003, a storage device 004, a first NIC 005, a timer 006, and an input / output device 007.
  • the CPU002 controls the physical machine 001.
  • the CPU 002 loads the program stored in the storage device 004 into the memory 003 and executes the program.
  • the memory 003 stores programs such as a hypervisor 030, a management OS 040, virtual machines 061, 062, guest OSs 081, 082, and an IPMI server application 050.
  • the storage device 004 stores programs, data, and tables.
  • the number of virtual machines 061, 062 is not limited to two, and may be one or three or more.
  • the number of guest OSs 081 and 082 is not limited to two, and may be one or three or more.
  • the first NIC 005 connects the remote management system 020 and the hypervisor operation client 021 via the network 010 so that they can communicate with each other.
  • the first NIC 005 determines whether the identification information included in the received IPMI message is the IP address of the physical machine 001. If it is the IP address of the physical machine 001, the IPMI message is passed to the CPU 002. As a result, the CPU 002 executes processing according to the power operation content specified by the IPMI message.
  • Timer 006 is a device for measuring time.
  • the input / output device 007 is a device that receives data input and outputs data. Examples of the input / output device 007 include a keyboard, a mouse, a touch panel, a numeric keypad, a scanner, a display, and a printer.
  • the hypervisor 030 is a program that controls the CPU 002, the memory 003, the storage device 004, the NIC 005, the timer 006, and the input / output device 007, which are hardware in the physical machine 001.
  • the hypervisor 030 has setting information 031.
  • the setting information 031 includes an IPMI IP address table 100 and a user information table 110.
  • the IPMI IP address table 100 is information in which the virtual machine number of the virtual machine 06 and the IP address are associated with each other.
  • the user information table 110 is information in which the user name and password of the remote management system 020 are associated with each other.
  • the hypervisor 030 receives an error notification, a power-off request for the virtual machine 06, and a startup request from the hypervisor operation interface (hereinafter referred to as I / F) 042 on the management OS 040.
  • I / F hypervisor operation interface
  • the hypervisor 030 notifies the hypervisor operation client 021 of the error.
  • the hypervisor 030 receives a power-off request for the virtual machine 06
  • the hypervisor 030 stops the virtual machine 06 that is the target of the power-off request.
  • the hypervisor 030 receives a startup request for the virtual machine 06, the hypervisor 030 starts the virtual machine 06 that is the target of the startup request.
  • the management OS 040 is an OS that controls the hypervisor 030.
  • the management OS 040 has a timer function 041, a hypervisor operation I / F 042, and a second NIC 043.
  • the management OS 040 operates the IPMI server application 050 on the management OS 040.
  • the timer function 041 is a program that controls the timer 006 to measure time.
  • the timer function 041 has already been registered by specifying the notification destination and time, specifying the notification destination after the specified time has elapsed, and specifying the setting release to the notification destination. And the function of canceling the notification.
  • the hypervisor operation I / F 042 writes information from the hypervisor operation client 021 in the setting information 031 of the hypervisor 030.
  • the management OS 040 detects that the same IP address has already been registered in the IPMI IP address table 052 when registering the IP address in the IPMI IP address table 052, the hypervisor operation I / F 042 The error is notified to the hypervisor 030.
  • the hypervisor operation I / F 042 sends a startup instruction for the virtual machine 06 from the management OS 040 to the hypervisor 030 and is included in the IPMI message.
  • the content of the power operation is “shutdown”, a shutdown instruction for the virtual machine from the management OS 040 is sent to the hypervisor 030.
  • the second NIC 043 is a virtual NIC set in the management OS 040.
  • the second NIC 043 is assigned the IP address of the virtual machine IPMI process 053 corresponding to the virtual machine 06.
  • the second NIC 043 receives the IPMI message from the first NIC 005.
  • the IPMI server application 050 includes a user information table 051 and an IPMI IP address table 052.
  • the IPMI server application 050 copies the user information table 110 and the IPMI IP address table 100 from the hypervisor 030 via the management OS 040, and holds them as the user information table 051 and the IPMI IP address table 052.
  • the IPMI server application 050 operates virtual machine IPMI processes 053 for the number of virtual machines 06 on the IPMI server application 050.
  • Each of the virtual machine IPMI processes 053 has a session table 120 and a temporary session table 130.
  • the session table 120 is a table for managing a session by a user of the remote management system 020
  • the temporary session table 130 is a table for temporarily managing a session by a user of the remote management system 020.
  • the first guest OS 081 and the second guest OS 082 in the memory 003 of the first virtual machine 061 and the second virtual machine 062 can be operated.
  • the first guest OS 081 is operating on the first virtual machine 061
  • the second guest OS 082 is not yet operating on the second virtual machine 062.
  • the IPMI server 053 that receives an IPMI message and performs processing according to the content is the IPMI process 053 for virtual machines.
  • the remote management system 020 which is an IPMI client, sends an IPMI message to the IP address of the virtual machine IPMI process 053 corresponding to the virtual machine to be powered on.
  • the remote management system 020 only sends an IPMI message to the IP address held in advance and the IPMI port of UDP (User Datagram Protocol).
  • UDP User Datagram Protocol
  • FIG. 3 is an explanatory diagram showing an example of the IPMI IP address tables 100 and 052.
  • the IPMI IP address table 052 is a duplicate of the IPMI IP address table 100, and a description thereof will be omitted.
  • the IPMI IP address table 100 is destination correspondence information for storing destination information for each virtual machine. Specifically, for example, the IPMI IP address table 100 is stored in advance in the setting information 031 of the hypervisor 030, and the second NIC 043 and the hypervisor operation I / F 042 of the management OS 040 are set by the operation from the hypervisor operation client 021. Entries can be added, changed, or deleted.
  • the IPMI IP address table 100 has a virtual machine number 101 and an IP address 102 as fields.
  • the virtual machine number 101 is an area for storing a number that uniquely identifies the virtual machine as a value.
  • the IP address 102 is an area for storing the IP address of the virtual machine IPMI process 053 corresponding to the virtual machine.
  • the IPMI server application 050 generates the virtual machine IPMI process 053 corresponding to the number of entries in the copied IPMI IP address table 052.
  • the generated virtual machine IPMI process 053 receives the IPMI message addressed to the corresponding IP address, and performs processing according to the content included in the IPMI message.
  • FIG. 4 is an explanatory diagram showing an example of the user information tables 110 and 051.
  • the user information table 051 is a duplicate of the user information table 110, and thus description thereof is omitted.
  • the user information table 110 is stored in advance in the setting information 031 of the hypervisor 030, and an entry is added, changed, or deleted via the second NIC 043 of the management OS 040 and the hypervisor operation I / F 042 by an operation from the hypervisor operation client 021. Is possible.
  • the user information table 110 has a user name 111 and a password 112 as fields.
  • the user name 111 is an area for storing the identification information of the user of the remote management system 020 as a value.
  • the password 112 is an area for storing a password used for user authentication for establishing a session between the remote management system 020 and the virtual machine IPMI process 053 as a value.
  • FIG. 5 is an explanatory diagram showing an example of the session table 120.
  • the session table 120 is a table for managing a session established between the remote management system 020 and the virtual machine IPMI process 053.
  • the session table 120 has a session ID 121, a user name 122, and a password 123 as fields.
  • Session ID 121 is an area for storing identification information (session ID) that uniquely identifies an established session as a value.
  • the value of the session ID 121 is given to the user name 122 and password 123 that have been authenticated.
  • the value of the session ID 121 is a serial number from “0”.
  • session IDs 121 of the session table 120 are stored for the number of sessions supported by the IPMI server application 050. In the example of FIG. 5, since the number of sessions supported by the IPMI server application 050 is “4”, four session IDs “0” to “3” are stored as the value of the session ID 121.
  • the user name 122 is an area for storing the identification information of the user of the remote management system 020 as a value.
  • the password 123 is an area for storing a password used for user authentication for establishing a session between the remote management system 020 and the virtual machine IPMI process 053 as a value. That is, the user name 122 and the password 123 are empty in the initial state.
  • the remote management system 020 and the virtual machine IPMI process 053 are user-authenticated for session establishment, in the entry of the session ID 121 to be established, the user name 111 and the user name 111 and The value of the password 112 is stored.
  • FIG. 6 is an explanatory diagram showing an example of the temporary session table 130.
  • the temporary session table 130 is a table for managing a temporarily generated session in user authentication before establishing a session.
  • the temporary session table 130 includes a session ID 131, a user name 132, a password 133, and a challenge string 134 as fields. In the initial state, the entry in the temporary session table 130 is empty.
  • Session ID 131 is an area for storing a temporary session ID as a value.
  • the user name 132 is an area for storing identification information of the user of the remote management system 020 as a value.
  • the password 133 is an area for storing a password used for user authentication for establishing a session between the remote management system 020 and the virtual machine IPMI process 053 as a value.
  • the challenge string 134 is an area for storing a randomly generated character string (challenge string) as a value. The challenge string is used when a session is established.
  • FIG. 7 is an explanatory diagram showing a correspondence table between predefined Network Function Code numbers and their meanings.
  • Network Function Code 600 is an identification code of the network function.
  • a meaning (Network Function) 601 is a definition of a network function corresponding to the identification code. Note that the value obtained by adding 1 to the request of the network function code 600 is the response.
  • FIG. 8 is an explanatory diagram showing a correspondence table between predefined Network Function command numbers and meanings.
  • the Network Function Code 610 corresponds to the meaning (Network Function) 601 in FIG.
  • the command number 611 is an identification code related to a network function command.
  • the meaning (command) 612 is a definition of a command corresponding to the identification code.
  • FIG. 9 is an explanatory diagram showing a correspondence table between the Completion Code numbers of commands defined in advance and their meanings.
  • the command 620 corresponds to the meaning (command) 612 in FIG.
  • Completion Code 621 is a value returned from the virtual machine IPMI process 053 when the command 620 is executed.
  • the meaning 622 is the definition of Completion Code 621.
  • FIG. 10 is an explanatory diagram showing a correspondence table between previously defined Chassis Control numbers and their meanings.
  • the Chassis Control 630 is a code indicating the power operation content included in the IPMI message.
  • the meaning 631 is the definition of the code. “Power down” is power OFF (power cutoff, shutdown), and “Power up” is power ON (startup).
  • the Chassis Control 630 is the power operation content of the IPMI message for the physical machine 001, but the remote management system 020 that issues the IPMI message does not matter what type of machine is the power operation target.
  • the physical machine 001 determines whether the power operation target is the physical machine 001 or the virtual machine 06 based on the IP address included in the IPMI message.
  • FIG. 11 is an explanatory diagram showing a correspondence table between predefined Authentication Type numbers and their meanings.
  • the Authentication Type 640 is an identification code indicating an authentication method.
  • the meaning 641 is the definition of the identification code. “None” means no hashing, and “MD2” and “MD5” mean that hashing is performed using the same hash method.
  • a packet for which “None” is specified in the Authentication Type has an Authentication Code value of “0”. Note that a method that can be processed by the virtual machine IPMI process 053 in the authentication method is defined in advance.
  • FIG. 12 is a flowchart illustrating an example of a procedure for starting and blocking the virtual machine IPMI process 053.
  • the IPMI server application 050 executes a startup process for starting the virtual machine IPMI process 053 (step S1201), and thereafter executes a blocking process for blocking the virtual machine IPMI process 053 (step S1202).
  • FIG. 13 is a flowchart showing a detailed processing procedure example of the activation process (step S1201) of the virtual machine IPMI process 053 shown in FIG.
  • FIG. 13 shows an example in which the IPMI server application 050 executes processing for starting virtual machine IPMI processes 053 by the number of virtual machines.
  • the IPMI server application 050 uses the hypervisor operation I / F 042 in the management OS 040 to set the IPMI IP address table 100 and the user from the setting information 031 in the memory area of the hypervisor 030.
  • the information table 110 is read (step S1301).
  • the IPMI server application 050 sets the first (first) entry in the read IPMI IP address table 052 as a target entry (step S1302).
  • the IPMI server application 050 determines whether the IP address in the current target entry has already been assigned to the second NIC 043 of the management OS 040 (step S1303).
  • step S1303 If it has been assigned (step S1303: Yes), the IP address in the IPMI IP address table 052 is duplicated. Therefore, the IPMI server application 050 notifies the hypervisor 030 of an error using the hypervisor operation I / F 042 of the management OS 040 (step S1304), and the IPMI server application 050 ends the startup process.
  • the IPMI server application 050 assigns the IP address corresponding to the virtual machine 06 of the target entry to the management OS 040. It assigns to 2nd NIC043 (step S1305). Then, the IPMI server application 050 passes the virtual machine number to the virtual machine IPMI process 053 corresponding to the virtual machine 06, and starts the virtual machine IPMI process 053 (step S1306).
  • the IPMI server application 050 checks whether the current target entry is the last entry in the IPMI IP address table 052 (step S1307). If it is not the last entry (step S1307: No), the virtual machine IPMI process 053 sets the next entry as the target entry (step S1308), and returns to step S1303.
  • step S1307 when the current entry is the last entry in the IPMI IP address table 052 (step S1307: Yes), the IPMI server application 050 ends the activation process. Thereby, the assignment of the IP address to the second NIC 043 by the management OS 040 and the activation of the virtual machine IPMI process 053 are completed.
  • FIG. 14 is a flowchart showing a detailed processing procedure example of the blocking process (step S1202) of the virtual machine IPMI process 053 shown in FIG.
  • the IPMI server application 050 waits for a shutdown signal from the management OS 040 (step S1401: No).
  • the management OS 040 receives a shutdown instruction from the hypervisor operation client 021, it issues a shutdown signal.
  • the IPMI server application 050 sets the first (first) entry of the IPMI IP address table 052 as a target entry (step S1402).
  • the IPMI server application 050 sends a shutdown signal to the virtual machine IPMI process in the target entry (step S1403).
  • the virtual machine IPMI process 053 that has received the shutdown signal shuts itself down.
  • the IPMI server application 050 waits for the end of the virtual machine IPMI process 053 of the target entry (step S1404: No), and when it ends (step S1404: Yes), the current target entry is the IPMI IP address table 052. It is determined whether it is the last entry (step S1405). If it is not the last entry (step S1405: No), the IPMI server application 050 sets the next entry as the target entry (step S1406) and returns to step S1403. On the other hand, if it is the last entry (step S1405: Yes), the IPMI server application 050 ends the blocking process.
  • FIG. 15 is an explanatory diagram showing a sequence example between the remote management system 020 and the virtual machine IPMI process 053.
  • (A) is a phase in which a session is not established
  • (B) is a phase in which a session establishment is being requested
  • (C) is a phase in which a session has been established.
  • the startup process (step S1201) of the virtual machine IPMI process 053 shown in FIG. 13 ends, the shutdown process (step S1201) of the virtual machine IPMI process 053 shown in FIG. This is a sequence executed until step S1202) starts.
  • the remote management system 020 transmits a request for “Get Channel Authentication Capability” (see FIG. 18) to the IPMI process 053 for virtual machines (step S1501).
  • the virtual machine IPMI process 053 returns a response “Get Channel Authentication Capability” to the remote management system 020 (see FIG. 19) (step S1502).
  • the response includes an authentication type.
  • the remote management system 020 transmits a “Get Session Challenge” request (see FIG. 22) to the virtual machine IPMI process 053 (step S1503).
  • the request includes the user name of the remote management system 020 and the hash information received in step S1502.
  • the virtual machine IPMI process 053 returns a response (see FIG. 23) of “Get Session Challenge” to the remote management system 020 (step S1504).
  • the response includes a randomly generated challenge string and a temporary session ID.
  • the remote management system 020 transmits a request for “Activate Session” (see FIG. 31) to the IPMI process 053 for virtual machines (step S1505).
  • the remote management system 020 gives a character string obtained by concatenating the user name and password of the remote management system 020 and the challenge string received in step S1504 to the hash function specified by the authentication method (Authentication Type).
  • the remote management system 020 transmits the hash value obtained from the hash function and the temporary session ID to the virtual machine IPMI process 053 as a request for “Activate Session”.
  • the virtual machine IPMI process 053 refers to the temporary session table 130 from the temporary session ID included in the request of “Activate Session”, identifies and concatenates the user name, password, and challenge string.
  • the virtual machine IPMI process 053 generates a hash value by giving the concatenated character string to a hash function specified by an authentication method.
  • the virtual machine IPMI process 053 authenticates the user when the hash value included in the received “Activate Session” request matches the generated hash value. If the user is authenticated, the virtual machine IPMI process 053 sends a response of “Activate Session” (see FIG. 34) to the remote management system 020 (step S1506).
  • the response includes a new session ID. As a result, a session is established between the remote management system 020 and the virtual machine IPMI process 053.
  • the remote management system 020 transmits a request for “Chassis Control” (see FIG. 45 or FIG. 46) to the IPMI process 053 for virtual machines (step S1507).
  • the virtual machine IPMI process 053 performs control according to the request, and returns a response (see FIG. 47) of “Chassis Control” to the remote management system 020 (step S1507).
  • FIG. 16 is a flowchart illustrating an example of an IPMI message classification processing procedure by the virtual machine IPMI process 053.
  • the virtual machine IPMI process 053 When the virtual machine IPMI process 053 is activated, the virtual machine IPMI process 053 has session IDs 121 (serial numbers from “0”) corresponding to the maximum number of sessions that can be held in the own process, and the user name 122 and the password.
  • a session table 120 having an entry for which 123 is empty and a temporary session table 130 for which the entry is empty are generated (step S1601).
  • the virtual machine IPMI process 053 waits for arrival of a packet addressed to the IP address corresponding to the virtual machine number (step S1306) passed at the time of starting the process and addressed to the UDP port for the IPMI server (Ste S1602). If the packet does not arrive (step S1603: NO), the process returns to step S1602. On the other hand, when the packet arrives (step S1603: Yes), the virtual machine IPMI process 053 checks whether or not the session ID in the packet is “0” (step S1604).
  • step S1604 determines whether the Authentication Type in the packet is an authentication method supported by the virtual machine IPMI process 053. (Step S1605). If not supported (step S1605: NO), the process proceeds to step S2401 in FIG.
  • step S1605 the IPMI process for virtual machine 053 means that the Network Function Code in the packet is “6h” that means Application request, and the command number means Activate Session. It is determined whether it is “3Ah” (step S1606). If “6h” and “3Ah” (step S1606: Yes), the process proceeds to step S2801 in FIG. If “6h” and not “3Ah” (step S1606: No), the process proceeds to step S3701 in FIG. This completes the classification of the IPMI message.
  • FIG. 17 is a flowchart (part 1) illustrating an example of a session establishment processing procedure by the virtual machine IPMI process 053.
  • the virtual machine IPMI process 053 indicates that “Network Function Code in the received packet indicates“ application request ”“ 6h ”. ”And whether the command number is“ 38h ”meaning“ Get Channel Authentication Capability ”(step S1701).
  • step S1701 If it is “6h” and “38h” (step S1701: Yes), the virtual machine IPMI process 053 generates a packet storing the following information (step S1702).
  • the virtual machine IPMI process 053 returns the packet generated in step S1704 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S1703). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
  • step S1701 and step S1702 are processes for transmitting and receiving IPMI session information before establishing an IPMI session.
  • the packet that satisfies the condition of step S1701 and the packet that is generated and transmitted in step S1702 are shown below.
  • FIG. 18 is an explanatory diagram showing an example of a packet that satisfies the condition of step S1701.
  • FIG. 19 is an explanatory diagram illustrating an example of the packet generated in step S1702.
  • “Supported Authentication Type Bitmap” has a bit position corresponding to the number of “Authentication Type” supported by counting from the least significant bit in the predefined “Authentication Type” number. A value in which only “1” is set is stored.
  • step S1701 if “6h” and not “38h” (step S1701: No), the virtual machine IPMI process 053 is “6h” in which the Network Function Code in the received packet means Application request. In addition, it is determined whether or not the command number is “39h” which means “Get Session Challenge” (step S1704). If “6h” and “39h” (step S1704: YES), the process proceeds to step S2101 in FIG.
  • step S1704 determines whether “6h” and not “39h” (step S1704: No). If “6h” and not “39h” (step S1704: No), the session ID is “0”, but the Network Function Code is not “6h”, or the Network Function Code is “6h”. This corresponds to the case where the command number is neither “38h” nor “39h”. In this case, the virtual machine IPMI process 053 generates a packet indicating an invalid command designation (step S1705).
  • the generated packet including an invalid command specification includes the following information.
  • Network Function Code Value obtained by adding 1 to the value of Network Function Code of the received packet
  • Command number Same value as the command number of the received packet
  • Session ID Same value as the session ID of the received packet
  • Completion Code “C1h” (invalid Command)
  • the virtual machine IPMI process 053 returns the packet generated in step S1705 from the virtual machine IPMI process 053, which is the transmission destination, to the remote management system 020, which is the transmission source of the received packet (step S1706). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
  • FIG. 20 is an explanatory diagram showing an example of the packet generated in step S1705. Next, processing in the case of step S1704: Yes in FIG. 17 will be described.
  • FIG. 21 is a flowchart (part 2) illustrating an example of a session establishment processing procedure performed by the virtual machine IPMI process 053.
  • Step S2101 in FIG. 21 is executed when a packet satisfying step S1704 in FIG. 17 is received (step S1704: Yes).
  • step S2101 the virtual machine IPMI process 053 determines whether or not the Authentication Type in the received packet specifies an authentication method supported by the virtual machine IPMI process 053 (step S2101). If not supported (step S2101: No), the process proceeds to step S2401 in FIG.
  • step S2101 if it is supported (step S2101: Yes), the virtual machine IPMI process 053 sets the first (first) entry of the user information table 051 as the target entry (step S2102), and It is determined whether or not the user name matches the user name of the target entry (step S2103).
  • step S2103 determines whether or not the current target entry is the last entry in the user information table 051 (step S2104). If it is not the last entry (step S2104: No), the virtual machine IPMI process 053 sets the next entry as the target entry (step S2105), and returns to step S2103.
  • step S2104 if the current target entry is the last entry in the user information table 051 (step S2104: Yes), the user name specified in the received packet is invalid. Therefore, the virtual machine IPMI process 053 generates a packet storing the following information (step S2106).
  • the virtual machine IPMI process 053 returns the packet generated in step S2106 from the virtual machine IPMI process 053 that is the transmission destination to the remote management system 020 that is the transmission source of the received packet (step S2107). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
  • FIG. 22 is an explanatory diagram showing an example of a packet that satisfies the condition of step S2101.
  • FIG. 23 is an explanatory diagram showing an example of the packet generated in step S2106.
  • the packet shown in FIG. 23 is an IPMI message that returns a user name error.
  • FIG. 24 is a flowchart (part 3) illustrating an example of a session establishment processing procedure performed by the virtual machine IPMI process 053.
  • step S2401 of FIG. 24 in step S1605 of FIG. 16, the virtual machine IPMI process 053 does not have the authentication type supported by the virtual machine IPMI process 053 in the packet (step S1605: No). To be executed.
  • step S2401 the virtual machine IPMI process 053 generates a packet including the following information (step S2401).
  • the virtual machine IPMI process 053 returns the packet generated in step S2401 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S2402). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
  • FIG. 25 is an explanatory diagram showing an example of the packet generated in step S2401.
  • the packet shown in FIG. 25 is an IPMI message that conveys that an unsupported command option or authentication method has been designated from the virtual machine IPMI process 053 to the remote management system 020 before the session is established.
  • FIG. 26 is a flowchart (part 4) illustrating an example of a session establishment processing procedure by the virtual machine IPMI process 053.
  • Step S2601 in FIG. 26 is executed when the user name in the received packet exists in the target entry in step S2103 in FIG. 21 (step S2103: Yes).
  • step S2601 the virtual machine IPMI process 053 randomly generates a temporary session ID (step S2601).
  • step S2602 the virtual machine IPMI process 053 sets the first (first) entry of the temporary session table 130 as the target entry (step S2602), and whether the generated temporary session ID matches the session ID 131 of the target entry. It is determined whether or not (step S2603).
  • step S2603 determines whether or not the current target entry is the last entry in the temporary session table 130 (step S2604). If it is not the last entry (step S2605: No), the virtual machine IPMI process 053 sets the next entry as the target entry (step S2605) and returns to step S2603.
  • step S2604 when the current target entry is the last entry in the temporary session table 130 (step S2604: Yes), the virtual machine IPMI process 053 generates a challenge string which is a random character string, and the following information: Is registered as a new entry in the temporary session table 130 (step S2606), and the process proceeds to step S2609.
  • step S2603 If they match in step S2603 (step S2603: Yes), the temporary session ID generated in step S2601 has been generated before and the temporary session ID is unused for session establishment.
  • the IPMI process 053 generates a challenge string that is a random character string, overwrites and registers an entry including the following information in the target entry of the temporary session table 130 (step S2607), and proceeds to step S2608.
  • step S2609 Thereafter, if there is a temporary session ID set in the timer function 041 of the management OS 040 in step S2609 described later, the virtual machine IPMI process 053 cancels the timer setting for the temporary session ID (step S2608). The process moves to S2609.
  • step S2609 the virtual machine IPMI process 053 sets a timer so that the timer function 041 of the management OS 040 is notified to the temporary session ID after 60 seconds (step S2609).
  • the reason for setting the timer is that if the temporary session ID registered at the time of setting the timer is not used, a timeout occurs after 60 seconds (step S2606), and the temporary session ID is released in the processing of FIGS. 53 and 54. It is.
  • the virtual machine IPMI process 053 generates a packet including the following information (step S2610).
  • the virtual machine IPMI process 053 returns the packet generated in step S2610 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S2611). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
  • the processes of FIGS. 21, 24, and 26 support the authentication method, and if the user name is correct, the temporary session ID used for the session establishment request for performing user authentication, the challenge string for user authentication, And a process of returning an error packet if the authentication method is not supported or the user name is invalid.
  • FIG. 27 is an explanatory diagram showing an example of the packet generated in step S2610 of FIG.
  • the packet shown in FIG. 27 is an IPMI message that returns a temporary session ID and a challenge string for user authentication.
  • the remote management system 020 after receiving the packet in step S2610 uses the password stored in advance in the remote management system 020 and the challenge string for authentication in the received packet, as an authentication code that is authentication information. Is generated.
  • the Authentication Code combines the internal password of the remote management system 020, the temporary session ID extracted from the received packet, and the challenge string extracted from the received packet as a character string, and the remote management system 020 specifies the combined character string.
  • This is a hash value generated by giving to a hash function that is an Authentication Type (authentication method).
  • the remote management system 020 returns a packet including the temporary session ID extracted from the received packet and the generated hash value as an IPMI message indicating a session establishment request to the virtual machine IPMI process 053 in order to establish a session. It will be.
  • FIG. 28 is a flowchart (part 5) illustrating an example of a session establishment processing procedure by the virtual machine IPMI process 053.
  • Step S2801 in FIG. 28 is the case where the network function code in the received packet is “6h” meaning Application request and the command number is “3Ah” meaning Activate Session in step S2805 in FIG. 16 (step S2801). (S2805: Yes). That is, step S2801 is executed when the received packet is an IPMI message indicating a session establishment request.
  • step S2801 the virtual machine IPMI process 053 determines whether or not the temporary session table 130 is empty (step S2801). If it is empty (step S2801: YES), the process proceeds to step S2806. On the other hand, if it is not empty (step S2801: NO), the virtual machine IPMI process 053 sets the first (first) entry of the temporary session table 130 as the target entry (step S2802), and the temporary session in the received packet. It is determined whether or not the ID matches the session ID 131 of the target entry (step S2803).
  • step S2803 YES
  • step S2803: NO the virtual machine IPMI process 053 determines whether or not the current target entry is the last entry in the temporary session table 130 (step S2804). If it is not the last entry (step S2805: NO), the virtual machine IPMI process 053 sets the next entry as the target entry (step S2805), and returns to step S2803.
  • step S2804 when the current target entry is the last entry in the temporary session table 130 (step S2804: Yes), the process proceeds to step S2806.
  • step S2806 the virtual machine IPMI process 053 generates a packet including the following information (step S2806).
  • Session ID Temporary session ID in the received packet Command number: “3Ah” (Activate Session) -Completion Code: “085” (session ID invalid)
  • the virtual machine IPMI process 053 returns the packet generated in step S2806 from the virtual machine IPMI process 053, which is the transmission destination, to the remote management system 020, which is the transmission source of the received packet (step S2807). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
  • FIG. 29 is an explanatory diagram showing an example of the packet generated in step S2806 of FIG.
  • the packet shown in FIG. 29 is an IPMI message indicating that the temporary session ID is invalid because the session ID of the received packet from the remote management system 020 is invalid.
  • FIG. 30 is a flowchart (part 6) illustrating an example of a session establishment processing procedure by the virtual machine IPMI process 053.
  • Step S3001 in FIG. 30 is executed when the temporary session ID in the received packet matches the session ID 131 of the target entry in step S2803 in FIG. 28 (step S2803: Yes).
  • step S3001 the virtual machine IPMI process 053 generates a character string concatenating the values of the session ID 131, password 133, and challenge string 134 of the target entry of the temporary session table 130 set in step S2802 of FIG.
  • the virtual machine IPMI process 053 generates the hash value of the character string by giving the generated character string to the hash function that is the Authentication Type (authentication method) in the received packet (step S3001).
  • the virtual machine IPMI process 053 determines whether or not the generated hash value matches the Authentication Code in the received packet (step S3002).
  • the Authentication Code combines the password held by the remote management system 020, the temporary session ID extracted from the received packet from the virtual machine IPMI process 053, and the challenge string extracted from the received packet as a character string.
  • step S3002 If they do not match (step S3002: No), this means that the authentication has failed, so the virtual machine IPMI process 053 generates a packet including the following information (step S3007).
  • the virtual machine IPMI process 053 returns the packet generated in step S3007 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S3008). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
  • step S3002 determines whether the user of the target entry has not yet been used for session establishment. If the user name 122 is empty (step S3004: YES), it indicates that the session ID 121 of the target entry has not yet been used for session establishment, and the process proceeds to step S3301 in FIG.
  • step S3004 determines whether or not the target entry is the last entry (step S3005). If it is not the last entry (step S3005: No), the virtual machine IPMI process 053 sets the next entry as the target entry (step S3006) and returns to step S3004. On the other hand, if it is the last entry (step S3005: Yes), the process proceeds to step S3501 in FIG.
  • FIG. 31 is an explanatory diagram showing an example of a packet that is a generation source of the hash value generated in step S3001 of FIG.
  • the packet shown in FIG. 31 is an IPMI message indicating a session establishment request including authentication information (Authentication Type and Authentication Code).
  • FIG. 32 is an explanatory diagram showing an example of the packet generated in step S3007 of FIG.
  • the packet shown in FIG. 32 is an IPMI message indicating authentication failure.
  • FIG. 33 is a flowchart (part 7) illustrating an example of a session establishment processing procedure by the virtual machine IPMI process 053.
  • Step S3301 in FIG. 33 is executed when the user name 122 of the target entry is empty in step S3004 in FIG. 30 (step S3004: Yes). That is, it means that the session ID 121 of the target entry in the session table 120 is not used for session establishment.
  • step S3301 the virtual machine IPMI process 053 adds the user name 132 of the target entry that matches the session ID in the received packet in the target entry of the temporary session table 130 to the target entry of the session table 120 in the process of step S2803.
  • the value of the password 133 is registered (step S3301).
  • the virtual machine IPMI process 053 releases the timer setting for the temporary session ID in the received packet set in the timer function 041 of the management OS 040 (step S3302), and generates a packet including the following information (step S3302). S3303).
  • the virtual machine IPMI process 053 returns the packet generated in step S1804 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S3304).
  • the virtual machine IPMI process 053 Since the temporary session ID, which is the session ID in the received packet, is not used later in the session, the virtual machine IPMI process 053 causes the value of the session ID 131 that matches the session ID in the received packet in the temporary session table 130 (temporary session ID). ) Is deleted (step S3305). The virtual machine IPMI process 053 sets the timer 006 so that the notification is received 60 seconds later to the session ID 121 in the target entry of the session table 120 by the timer function 041 of the management OS 040 (step S3306). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
  • FIG. 34 is an explanatory diagram showing an example of the packet generated in step S3303 of FIG.
  • the packet shown in FIG. 34 is a packet that returns a new session ID for officially establishing a session without any problem.
  • FIG. 35 is a flowchart (No. 8) showing an example of the session establishment processing procedure by the virtual machine IPMI process 053.
  • Step S3501 in FIG. 35 is executed when the target entry is the last entry in step S3005 in FIG. 30 (step S3005: Yes). In other words, it indicates that a session ID that is not used for establishing a session does not exist in the session table 120. This situation means that there is no free session for establishing a session.
  • step S3501 the virtual machine IPMI process 053 cancels the setting of the timer 006 for the temporary session ID in the received packet set by the timer function 041 of the management OS 040 (step S3501), and generates a packet including the following information: (Step S3502).
  • Session ID Temporary session ID in the received packet
  • Command number “3Ah” (Activate Session)
  • Completion Code “81h” (no session ID available)
  • Authentication Type Authentication Type in the received packet
  • Authentication Code Combines the session ID 131, password 133, and challenge string 134 values of the target entry that match the session ID in the received packet in the temporary session table 130 as a character string, and the character string is the Authentication Type in the received packet.
  • Hash value generated by giving to the hash function (authentication method)
  • the virtual machine IPMI process 053 returns the packet generated in step S1804 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S3503).
  • the virtual machine IPMI process 053 Since the temporary session ID, which is the session ID in the received packet, is not used later in the session, the virtual machine IPMI process 053 causes the value of the session ID 131 that matches the session ID in the received packet in the temporary session table 130 (temporary session ID). ) Is deleted (step S3504). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
  • FIG. 36 is an explanatory diagram showing an example of the packet generated in step S3502 of FIG.
  • the packet shown in FIG. 36 is a packet indicating that a session ID for officially establishing a session is insufficient.
  • the session ID in the packet is temporarily assigned.
  • the virtual machine IPMI process 053 sends a packet including a new session ID for formal session establishment. (FIG. 34) is returned. If the session ID in the received packet is invalid (FIG. 29), if authentication fails (FIG. 32), or if there is no available session ID (FIG. 36), the virtual machine IPMI process 053 Performs processing to return an error.
  • the remote management system 020 uses the new session ID received from the virtual machine IPMI process 053 to transmit the packet including the packet authentication information and the command execution request to the virtual machine IPMI process. 053.
  • the authentication information of this packet includes the authentication type specified by the remote management system 020, the password corresponding to the user name authenticated at the time of session establishment, the new session ID received from the virtual machine IPMI process 053, and the received packet.
  • the partial information of the received packet is information obtained by combining the network function code, the command number, and the chassis control as a character string when the packet is an IPMI message indicating a startup request or a power-off request.
  • the packet is an IPMI message indicating a session disconnection request, it is information obtained by combining a network function code and a command number as a character string.
  • FIG. 37 is a flowchart (part 1) illustrating an example of the authentication data verification processing procedure by the virtual machine IPMI process 053.
  • Step S3701 in FIG. 37 is executed when the network function code and the command number in the received packet are “6h” and not “3Ah” in step S1606 in FIG. 16 (step S1606: No).
  • step S3701 the virtual machine IPMI process 053 sets the first (first) entry of the session table 120 as the target entry (step S3701), and the session ID in the received packet matches the session ID of the target entry. It is determined whether or not to perform (step S3702).
  • step S3702 determines whether or not the current target entry in the session table 120 is the last entry (step S3703). If it is not the last entry (step S3703: NO), the virtual machine IPMI process 053 sets the next entry as the target entry (step S2105), and returns to step S3702. On the other hand, if it is the last entry (step S3703: YES), it means that no entry with the matching session ID was found from the session table 120, and the process proceeds to step S4001 in FIG.
  • FIG. 38 is a flowchart (part 2) of the authentication data verification processing procedure example by the virtual machine IPMI process 053.
  • Step S3801 in FIG. 38 is executed when the session IDs match in step S3702 in FIG. 37 (step S3702: Yes).
  • step S3801 the virtual machine IPMI process 053 sets the first (first) entry of the user information table 051 as a target entry (step S3801), and the user name 122 in the target entry of the session table 120 and step S3801. It is determined whether or not the user name 111 in the target entry of the user information table 051 set in step S1 matches (step S3802).
  • step S3802 determines whether or not the current target entry of the user information table 051 is the last entry (step S3803). If it is not the last entry (step S3803: NO), the virtual machine IPMI process 053 sets the next entry as the target entry (step S3804), and returns to step S3802. On the other hand, if it is the last entry (step S3803: YES), the entry having the same user name is not found from the user information table 051, and the process proceeds to step S4001 in FIG.
  • FIG. 39 is a flowchart (part 3) illustrating an example of the authentication data verification processing procedure by the virtual machine IPMI process 053.
  • Step S3901 in FIG. 39 is executed when the user names match in step S3802 in FIG. 38 (step S3802: Yes).
  • the virtual machine IPMI process 053 is a character string obtained by combining the hash ID, which is the authentication type authentication method in the received packet, with the session ID 121 of the target entry of the session table 120, the password 123, and some information of the received packet.
  • the partial information of the received packet is a character string obtained by combining the network function code and the command number in the received packet.
  • a character string in which the network function code, the command number, and the chassis control in the received packet are combined is used instead of the character string.
  • the virtual machine IPMI process 053 determines whether or not the generated hash value matches the Authentication Code in the received packet (step S3902). If they do not match (step S3902: NO), the process proceeds to step S4001 in FIG. On the other hand, if they match (step S3902: Yes), whether or not the Network Function Code in the received packet is “0h” meaning the Chassis Request, and the command number is “2h” meaning the Chassis Control. Is determined (step S3903).
  • step S3903: YES If it is “0h” and “2h” (step S3903: YES), the process proceeds to step S4401 in FIG. On the other hand, if it is not “0h” and “2h” (step S3903: No), the IPMI process for virtual machine 053 has “6h” in which the Network Function Code in the received packet means “Application Request” and the command number is “6h”. It is determined whether or not “3Ch” which is the meaning of the Close Session (step S3904). When it is “6h” and “3Ch” (step S3904: Yes), the process proceeds to step S5001 in FIG. On the other hand, if it is not “6h” and “3Ch” (step S3904: No), the process proceeds to step S4201 in FIG.
  • FIG. 40 is a flowchart (part 4) illustrating an example of the authentication data verification processing procedure performed by the virtual machine IPMI process 053. Step S4001 in FIG. 40 is executed when any of the following applies.
  • step S3703 When the session ID of the received packet does not exist in the session table 120 in step S3703 of FIG. 37, that is, when the session ID of the received packet is invalid (step S3703: Yes). If the user name in the session table 120 does not exist in the user information table 051 in step S3803 in FIG. 38, that is, if the authenticated user name is invalid (step S3803: Yes). When authentication fails in step S3902 of FIG. 39 (step S3902: No)
  • step S4001 the virtual machine IPMI process 053 generates a packet including the following information (step S4001).
  • the virtual machine IPMI process 053 returns the packet generated in step S4001 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S4002). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
  • FIG. 41 is an explanatory diagram showing an example of the packet generated in step S4001 of FIG.
  • the packet shown in FIG. 41 is an IPMI message that conveys that user authentication has failed from the virtual machine IPMI process 053 to the remote management system 020 after the session is established.
  • FIG. 42 is a flowchart (part 5) illustrating an example of the authentication data verification processing procedure performed by the virtual machine IPMI process 053.
  • Step S4201 of FIG. 42 is executed when it is not “6h” and “3Ch” in Step S3904 of FIG. 39 (Step S3904: No). That is, FIG. 42 shows an example of error processing by the virtual machine IPMI process 053.
  • step S4201 the virtual machine IPMI process 053 generates a packet including the following information (step S4201).
  • Network Function Code Value obtained by adding 1 to the value of Network Function Code of the received packet • Command number: Same value as the received packet • Session ID: Same value as the received packet • Completion Code: “C1h” (invalid command) ⁇ Authentication Type: Authentication Type in the received packet Authentication Code: Session ID, password, and partial information of the received packet in the session ID entry matched in step S3702 of FIG. 37 in the session table 120 are added to the hash function that is the authentication method of Authentication Type in the received packet. A hash value generated by giving the combined string
  • the partial information of the received packet is a character string obtained by combining the network function code and the command number.
  • the virtual machine IPMI process 053 returns the packet generated in step S4201 from the virtual machine IPMI process 053, which is the transmission destination, to the remote management system 020, which is the transmission source of the received packet (step S4202). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
  • FIG. 43 is an explanatory diagram showing an example of the packet generated in step S4201 of FIG.
  • the packet shown in FIG. 43 is an IPMI message that conveys that the command number is invalid from the virtual machine IPMI process 053 to the remote management system 020 after the session is established. Thus, the authentication data verification process for the packet after the session is established is completed.
  • FIG. 44 is a flowchart (part 1) illustrating an example of a virtual machine power supply operation request processing procedure by the virtual machine IPMI process 053.
  • Step S4401 of FIG. 44 is executed when the network function code “0h” in the received packet and the command number are “2h” in step S3903 of FIG. That is, step S4401 is executed when the received packet is an IPMI message indicating a power operation request.
  • step S4401 the virtual machine IPMI process 053 determines whether or not the Chassis Control in the received packet is “0” indicating Power down (step S4401). When it is “0” (step S4401: YES), the virtual machine IPMI process 053 uses the hypervisor operation I / F 042 of the management OS 040 to match the virtual machine number that was passed when the process was generated. Is blocked by the hypervisor 030 (step S4402), and the process proceeds to step S4405.
  • step S4401 determines whether or not the Chassis Control in the received packet is “1” meaning “Power up” (step S4403). If it is not “1” (step S4403: NO), the process proceeds to step S2702 in FIG.
  • step S4403 if it is “1” (step S4403: Yes), the virtual machine IPMI process 053 matches the virtual machine number passed when the own process was generated using the hypervisor operation I / F 042 of the management OS 040. The virtual machine is activated by the hypervisor 030 (step S4404), and the process proceeds to step S4405.
  • step S4405 the virtual machine IPMI process 053 cancels the timer setting in the session ID in the received packet set by the timer function 041 of the management OS 040, and sets the timer so that notification is sent to the session ID again after 60 seconds. Setting is performed (step S4405).
  • the virtual machine IPMI process 053 generates a packet including the following information (step S4406).
  • Authentication Type Authentication Type in the received packet Authentication Code: Combined with the hash function that is the authentication method of Authentication Type in the received packet, the session ID, password, and partial information of the received packet in the session ID entry found in step S3702 in the session table 120 Hash value generated by giving a string
  • the partial information of the received packet is a character string obtained by combining the network function code, the command number, and the chassis control.
  • the virtual machine IPMI process 053 returns the packet generated in step S4406 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S4407). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
  • the remote management system 020 can start and block the virtual machine 06 by IPMI without being aware of the existence of the hypervisor 030.
  • FIG. 45 is an explanatory diagram showing an example of a received packet that triggers execution of step S4401 in FIG.
  • the packet shown in FIG. 45 is an IPMI message indicating a blocking request sent from the remote management system 020 to the virtual machine IPMI process 053. That is, since the packet shown in FIG. 45 is “0” indicating that the Chassis Control is “Power down”, Step S4402 is executed.
  • FIG. 46 is an explanatory diagram showing an example of a received packet that triggers execution of step S4403 in FIG.
  • the packet shown in FIG. 46 is an IPMI message indicating an activation request sent from the remote management system 020 to the virtual machine IPMI process 053. Since the packet shown in FIG. 45 is “1” indicating that the Chassis Control is “Power up”, Step S4404 is executed.
  • FIG. 47 is an explanatory diagram showing an example of the packet generated in step S4406 of FIG.
  • the packet shown in FIG. 47 is an IPMI message that returns from the virtual machine IPMI process 053 to the remote management system 020 that the virtual machine has been successfully shut down or started.
  • FIG. 48 is a flowchart (part 2) illustrating an example of a virtual machine power supply operation request processing procedure in the virtual machine IPMI process 053.
  • Step S4801 of FIG. 48 is executed when the Chassis Control in the received packet is neither “0” nor “1” in Step S4403 of FIG. 44 (Step S4403: No). That is, the received packet in this case is an IPMI message that is not supported.
  • step S4801 the virtual machine IPMI process 053 generates a packet including the following information (step S4801).
  • Authentication Type Authentication Type in the received packet Authentication Code: Generated by giving a character string that combines the password, session ID, and partial packet information in the entry of the session table 120 found in step S3702 to the hash function that is the authentication method of Authentication Type in the received packet. Hash value
  • the partial information of the received packet is a character string obtained by combining the network function code, the command number, and the chassis control.
  • the virtual machine IPMI process 053 returns the packet generated in step S4801 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S4802). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
  • FIG. 49 is an explanatory diagram showing an example of the packet generated in step S4801 of FIG.
  • an unsupported command option or authentication method is designated from the virtual machine IPMI process 053 to the remote management system 020 after the session is established (the value of the Chassis Control in the received packet is not supported). Is an IPMI message that conveys. Thus, the virtual machine activation process is completed.
  • FIG. 50 is a flowchart illustrating an example of a session cutoff request processing procedure performed by the virtual machine IPMI process 053.
  • Step S5001 in FIG. 50 is processing executed when the network function code in the received packet is “6h” and the command number is “3Ch” in step S3904 in FIG. 39 (step S3904: Yes). is there. That is, the received packet in this case is an IPMI message indicating a session cutoff request.
  • the virtual machine IPMI process 053 cancels the setting of the timer 006 in the session ID in the received packet set by the timer function 041 of the management OS 040 (step S5001).
  • the virtual machine IPMI process 053 empties items other than the session ID 121 in the entry of the session table 120 that matches the session ID in the received packet found in step S3702 of FIG. 37 (step S5002).
  • the virtual machine IPMI process 053 generates a packet including the following information (step S5003).
  • Session ID Session ID of the received packet (IPMI message indicating a session cutoff request)
  • Command number “3Ch” (Close Session) -Completion Code; "0h” (command normal termination)
  • Authentication Type Authentication Type in the received packet
  • Authentication Code By giving the hash function, which is the authentication method of Authentication Type in the received packet, a character string that combines the password, session ID, and partial information of the received packet in the entry of the session table 120 found in step S3702 The generated hash value
  • the partial information of the received packet is a character string obtained by combining the network function code and the command number.
  • the virtual machine IPMI process 053 returns the packet generated in step S4801 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S4805). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
  • FIG. 51 is an explanatory diagram showing an example of a packet indicating a session cutoff request.
  • FIG. 52 is an explanatory diagram showing an example of the packet generated in step S5003 of FIG. The packet shown in FIG. 52 is a response IPMI message in which the session has been normally blocked. Thus, the session cutoff request process is completed.
  • FIG. 53 is a flowchart (part 1) illustrating an example of a session blocking process procedure by the virtual machine IPMI process 053.
  • Step S5301 of FIG. 53 is executed when the virtual machine IPMI process 053 interrupts the current processing when the notification is received by the timer function 041 of the management OS 040 (connection timeout detection). Is done.
  • the virtual machine IPMI process 053 sets the first (first) entry of the temporary session table 130 as a target entry (step S5301). Next, the virtual machine IPMI process 053 determines whether or not the session ID 131 in the target entry matches the temporary session ID notified by the timer (step S5302).
  • step S5302 determines whether or not the current target entry is the last entry (step S5303). If it is not the last entry (step S5303: NO), the virtual machine IPMI process 053 sets the next entry as the target entry (step S5304) and returns to step S5302. On the other hand, if it is the last entry (step S5303: YES), the process proceeds to step S5401 in FIG.
  • step S5302 if the session ID 131 in the target entry matches the temporary session ID notified by the timer (step S5302: Yes), the virtual machine IPMI process 053 generates the temporary session ID notified by the timer. It is determined whether or not the original received packet is being processed (step S5305).
  • step S5305: Yes If it is being processed (step S5305: Yes), the process proceeds to step S5306. If it is not being processed (step S5305: No), the process proceeds to step S5308.
  • step S5306 the virtual machine IPMI process 053 generates a packet including the following information (step S5306).
  • the virtual machine IPMI process 053 returns the packet generated in step S5306 from the virtual machine IPMI process 053, which is the transmission destination, to the remote management system 020, which is the transmission source of the received packet (step S5307).
  • step S5308 the virtual machine IPMI process 053 deletes the target entry in the temporary session table 130 found in step S5302 (step S5308). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
  • FIG. 54 is a flowchart (part 2) illustrating an example of a session cutoff processing procedure by the virtual machine IPMI process 053.
  • Step S5401 of FIG. 54 is executed when it is the last entry (step S5303: Yes), that is, when the session ID of the timer notification is not in the temporary session table 130.
  • the virtual machine IPMI process 053 sets the first (first) entry of the session table 120 as a target entry (step S5401). Next, the virtual machine IPMI process 053 determines whether or not the session ID 121 in the target entry matches the temporary session ID notified by the timer (step S5402).
  • step S5402 determines whether or not the current target entry is the last entry (step S5403). If it is not the last entry (step S5403: NO), the virtual machine IPMI process 053 sets the next entry as the target entry (step S5404) and returns to step S5402. On the other hand, if it is the last entry (step S5403: YES), the process returns to step S1602 in FIG.
  • step S5402 determines the session ID notified by the timer function 041. It is determined whether or not the received packet that is the generation source is being processed (step S5405).
  • step S5405: Yes If it is being processed (step S5405: Yes), the process proceeds to step S5406. If it is not being processed (step S5405: No), the process proceeds to step S5408.
  • step S5406 the virtual machine IPMI process 053 generates a packet including the following information (step S5406).
  • the virtual machine IPMI process 053 returns the packet generated in step S5406 to the remote management system 020 that is the transmission source of the received packet from the virtual machine IPMI process 053 that is the transmission destination (step S5407).
  • step S5408 the virtual machine IPMI process 053 deletes the target entry in the temporary session table 130 found in step S5302 (step S5408). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
  • FIG. 55 is an explanatory diagram showing an example of packets generated in step S5306 in FIG. 53 and step S5406 in FIG.
  • the packet shown in FIG. 55 is an IPMI message for transmitting that the session has timed out from the virtual machine IPMI process 053 to the remote management system 020. Thus, the session blocking process is completed.
  • FIG. 56 is a flowchart (No. 1) illustrating an example of a termination process procedure of the virtual machine IPMI process 053.
  • the termination process is a process executed when a shutdown signal is sent from the IPMI server application 050 to the virtual machine IPMI process 053.
  • the virtual machine IPMI process 053 interrupts the current processing and executes step S5601.
  • the virtual machine IPMI process 053 sets the first (first) entry of the temporary session table 130 as a target entry (step S5601).
  • the virtual machine IPMI process 053 cancels the setting of the timer 006 in the session ID in the received packet set by the timer function 041 of the management OS 040 (step S5602).
  • the virtual machine IPMI process 053 then cancels the session ID timer setting and deletes the entry for each entry in the temporary session table 130 (step S5603).
  • the virtual machine IPMI process 053 determines whether or not the current entry is the last entry (step S5604). If it is not the last entry (step S5604: NO), the virtual machine IPMI process 053 sets the next entry as the target entry (step 5605), and returns to step S5602. On the other hand, if it is the last entry (step S5604: YES), the process proceeds to step S5701 in FIG.
  • FIG. 57 is a flowchart (part 2) illustrating an example of a termination process procedure of the virtual machine IPMI process 053.
  • the virtual machine IPMI process 053 sets the first (first) entry of the session table 120 as the target entry (step S5701).
  • the virtual machine IPMI process 053 determines whether or not the user name 122 in the target entry is empty (step S5702).
  • step S5702 If the user name 122 is not empty (step S5702: NO), the virtual machine IPMI process 053 cancels the setting of the timer 006 in the session ID in the received packet set by the timer function 041 of the management OS 040 (step S5705). . Then, the virtual machine IPMI process 053 cancels the session ID timer setting and deletes the entry for all entries in the temporary session table 130 (step S5706), and proceeds to step S5703.
  • step S5703 determines whether or not the current entry is the last entry (step S5703). If it is not the last entry (step S5703: No), the virtual machine IPMI process 053 sets the next entry as the target entry (step S5704), and returns to step S3603. On the other hand, if it is the last entry (step S5703: YES), the virtual machine IPMI process 053 ends.
  • the remote management system 020 can realize activation and shutdown of the corresponding virtual machine 06 with the IP address of the virtual machine IPMI process 053 without directly requesting the hypervisor 030 to perform processing. Accordingly, the remote management system 020 and the user can start and shut down the power operation target machine without being aware of whether the power operation target machine is the physical machine 001 or the virtual machine 06. The convenience of operation can be improved. Further, by generating the virtual machine IPMI process 053 for each virtual machine 06, the virtual machine IPMI process 053 corresponding to the power operation target machine takes charge of the power operation. Therefore, it is not necessary to access an unstarted or started virtual machine 06 that is a non-power source operation target machine, and therefore, the processing load can be reduced.
  • the present invention is not limited to the above-described embodiments, and includes various modifications and equivalent configurations within the scope of the appended claims.
  • the above-described embodiments have been described in detail for easy understanding of the present invention, and the present invention is not necessarily limited to those having all the configurations described.
  • a part of the configuration of one embodiment may be replaced with the configuration of another embodiment.
  • each of the above-described configurations, functions, processing units, processing means, etc. may be realized in hardware by designing a part or all of them, for example, with an integrated circuit, and the processor realizes each function. It may be realized by software by interpreting and executing the program to be executed.
  • Information such as programs, tables, and files that realize each function can be stored in a storage device such as a memory, a hard disk, and an SSD (Solid State Drive), or a recording medium such as an IC card, an SD card, and a DVD.
  • a storage device such as a memory, a hard disk, and an SSD (Solid State Drive), or a recording medium such as an IC card, an SD card, and a DVD.
  • control lines and information lines indicate what is considered necessary for the explanation, and do not necessarily indicate all control lines and information lines necessary for mounting. In practice, it can be considered that almost all the components are connected to each other.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

Provided is a computer in which a virtual computer operates, the computer including: a storage device that stores a virtualization program which controls the virtual computer; a processor that executes the virtualization program; and an interface that transmits and receives data. The processor executes: an acquisition process for acquiring, from the interface, a message that includes destination information of either the computer or the virtual computer and the contents of a power source operation in respect to the destination identified by the destination information; and a control process whereby, if the destination information included in the message acquired by the acquisition process is not the destination information of the computer, the virtualization program is controlled and the virtual computer executes a process in accordance with the contents of the power source operation.

Description

計算機、制御方法、および制御プログラムComputer, control method, and control program
 本発明は、仮想計算機が動作する計算機、制御方法、および制御プログラムに関する。 The present invention relates to a computer on which a virtual computer operates, a control method, and a control program.
 近年ではクラウド業者のマシンを借用して業務システムを構築する企業が珍しくない。クラウド業者は、物理マシンをただ貸し出すだけでなく、物理マシンを仮想化して複数の仮想マシンを生成し、当該仮想マシンを、性能をあまり必要としない顧客に貸し出す。物理マシンを複数の仮想マシンとすることにより、クラウド業者は物理マシンの台数を減らすことができ、ひいては電気代や場所代を削減することができる。 In recent years, it is not uncommon for companies to rent business machines to build business systems. The cloud service provider not only lends a physical machine, but also creates a plurality of virtual machines by virtualizing the physical machine, and lends the virtual machine to a customer who does not need much performance. By making a physical machine into a plurality of virtual machines, the cloud service provider can reduce the number of physical machines and, in turn, can reduce electricity bills and place bills.
 一方、クラウドユーザは、リモートで物理マシンを利用する場合には、当該物理マシンへ電源操作の要求を出して電源を入れたり切ったりする。クラウドユーザは、仮想マシンを利用する場合には、物理マシン上のハイパバイザに電源操作の要求を出して仮想マシンの起動や電源断を行う必要がある。当該状況では、利用するマシン台数が増えれば増えるほど仮想マシンであるか、物理マシンであるかを管理することが煩雑になる。 On the other hand, when using a physical machine remotely, a cloud user issues a power operation request to the physical machine and turns the power on or off. When using a virtual machine, a cloud user needs to make a power supply operation request to the hypervisor on the physical machine to start or turn off the virtual machine. In this situation, as the number of machines used increases, it becomes more complicated to manage whether the machine is a virtual machine or a physical machine.
 また、仮想PCを利用するシンクライアントシステムにおいて電力消費量を低減する仮想PC管理システムがある(たとえば、下記特許文献1を参照。)。特許文献1の仮想PC管理システムは、仮想計算機の電源状態をネットワーク経由で計算機より取得し記憶手段に格納する手段と、計算機の電源状態をネットワーク経由で計算機より取得し記憶手段に格納する手段と、仮想計算機の利用開始要求を操作端末から受信し電源オン状態かつ仮想計算機が未割当の計算機を割当候補として記憶手段の格納データから検索する手段と、前記割当候補の計算機に対し利用開始要求に応じた仮想計算機を割り当てる手段と、割当候補の計算機に対し仮想計算機の電源をオンにする指示をネットワーク経由で通知する手段と、を有する。 There is also a virtual PC management system that reduces power consumption in a thin client system that uses a virtual PC (see, for example, Patent Document 1 below). The virtual PC management system disclosed in Patent Document 1 includes a unit that acquires a power state of a virtual machine from a computer via a network and stores it in a storage unit; a unit that acquires a power state of the computer from a computer via a network and stores the storage unit in a storage unit; Receiving a virtual machine use start request from the operation terminal, searching for stored computer storage data as a candidate for assignment to a computer that is powered on and unassigned by the virtual machine, and issuing a use start request to the assignment candidate computer Means for allocating a corresponding virtual machine, and means for notifying an allocation candidate computer of an instruction to turn on the virtual machine via the network.
 仮想マシンを物理マシンと同様にリモートで起動させる方法としてはWake-on-LAN(WoL)があげられる。ただし、WoLは仮想マシンの起動しかできず、電源断のインタフェースは用意されていない(たとえば、下記特許文献2を参照。)。 Wake-on-LAN (WoL) is a method for starting a virtual machine remotely like a physical machine. However, WoL can only start a virtual machine and does not have a power-off interface (see, for example, Patent Document 2 below).
 また、仮想マシンホスト上で他の複数の仮想マシンのためのプロキシとして動作することを可能にする管理仮想マシンがある(たとえば、下記特許文献3を参照。)。管理仮想マシンは、ホスト上のそれぞれの仮想マシンに関連するネットワーク管理情報のデータベースを保持してもよい。ホスト上の高度な仮想マシンマネージャは、管理仮想マシンがホスト上の複数の仮想マシンに対する複数の管理メッセージを捕捉できるように、管理仮想マシンにインタフェースを提供してもよい。管理仮想マシンは、データベース内の情報に基づいて、複数のメッセージに応答してもよく、必要不可欠な情報を取得すべく、複数の仮想マシンにクエリーを発行してもよい。管理仮想マシンは、ネットワーク管理メッセージに応答する前に、様々な仮想マシンからの情報を集約してもよい。 There is also a management virtual machine that can operate as a proxy for other virtual machines on the virtual machine host (see, for example, Patent Document 3 below). The management virtual machine may maintain a database of network management information associated with each virtual machine on the host. The advanced virtual machine manager on the host may provide an interface to the management virtual machine so that the management virtual machine can capture multiple management messages for multiple virtual machines on the host. The management virtual machine may respond to multiple messages based on information in the database and may issue queries to multiple virtual machines to obtain essential information. The management virtual machine may aggregate information from various virtual machines before responding to network management messages.
特開2010-86423号公報JP 2010-86423 A 米国特許出願公開第2009/0241113号明細書US Patent Application Publication No. 2009/0241113 特表2007-513405号公報Special table 2007-513405 gazette
 しかしながら、上述した従来技術では、ユーザからハイパバイザ宛てに仮想マシンの電源操作用の命令を発行する必要がある。また、仮想マシンごとに管理サーバは存在しない。このため、ハイパバイザ自身が管理サーバ、または複数のハイパバイザをまとめて一つの管理サーバで管理する。ユーザは、利用するマシンが仮想マシンか物理マシンかを選択し、物理マシンならば物理マシン用の命令を、仮想マシンならば仮想マシンを操作できる管理サーバに操作させる命令を発行する必要がある。利用するマシンが増加するほど、各々のマシンが物理マシンであるか仮想マシンであるかを管理する必要がある。本発明は、マシンに対する電源操作の利便性の向上を図ることを目的とする。 However, in the above-described conventional technology, it is necessary to issue a command for operating the power of the virtual machine from the user to the hypervisor. There is no management server for each virtual machine. For this reason, the hypervisor itself manages a management server or a plurality of hypervisors together with a single management server. The user must select whether the machine to be used is a virtual machine or a physical machine, and if it is a physical machine, it must issue an instruction for the physical machine, and if it is a virtual machine, it issues an instruction for operating the management server that can operate the virtual machine. As the number of machines used increases, it is necessary to manage whether each machine is a physical machine or a virtual machine. An object of the present invention is to improve the convenience of power operation for a machine.
 本願において開示される発明の一側面となる計算機は、仮想計算機が動作する計算機であって、前記計算機は、前記仮想計算機を制御する仮想化プログラムを記憶する記憶デバイスと、前記仮想化プログラムを実行するプロセッサと、データを送受信するインタフェースと、を有し、前記プロセッサは、前記インタフェースから、前記計算機または前記仮想計算機のいずれかの宛先情報と前記宛先情報で特定される宛先に対する電源操作内容とを含むメッセージを取得する取得処理と、前記取得処理によって取得された前記メッセージに含まれる前記宛先情報が前記計算機の宛先情報でない場合、前記仮想化プログラムを制御して、前記電源操作内容に応じた処理を前記仮想計算機が実行する制御処理と、を実行することを特徴とする。 A computer according to an aspect of the invention disclosed in the present application is a computer on which a virtual computer operates, and the computer executes a storage device that stores a virtualization program that controls the virtual computer and the virtualization program A processor for transmitting and receiving data, and the processor receives destination information of either the computer or the virtual machine and power operation details for the destination specified by the destination information from the interface. An acquisition process for acquiring a message including, and if the destination information included in the message acquired by the acquisition process is not the destination information of the computer, the virtualization program is controlled to perform processing according to the power operation content And a control process executed by the virtual machine.
 本発明の代表的な実施の形態によれば、マシンに対する電源操作の利便性の向上を図ることができる。前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。 According to the representative embodiment of the present invention, it is possible to improve the convenience of power operation for a machine. Problems, configurations, and effects other than those described above will become apparent from the description of the following embodiments.
本実施例にかかる計算機システムのシステム構成例を示すブロック図である。It is a block diagram which shows the system configuration example of the computer system concerning a present Example. 本実施例にかかる計算機システムの具体的なハードウェア構成例を示すブロック図である。It is a block diagram which shows the concrete hardware structural example of the computer system concerning a present Example. IPMI用IPアドレステーブルの一例を示す説明図である。It is explanatory drawing which shows an example of the IP address table for IPMI. ユーザ情報テーブルの一例を示す説明図である。It is explanatory drawing which shows an example of a user information table. セッションテーブルの一例を示す説明図である。It is explanatory drawing which shows an example of a session table. 一時セッションテーブルの一例を示す説明図である。It is explanatory drawing which shows an example of a temporary session table. あらかじめ定義されているNetwork Function Codeの番号とその意味との対応表を示す説明図である。It is explanatory drawing which shows the correspondence table of the number of Network Function Code defined beforehand, and its meaning. あらかじめ定義されているNetwork Functionのコマンド番号と意味との対応表を示す説明図である。It is explanatory drawing which shows the correspondence table of the command number and meaning of Network Function defined beforehand. あらかじめ定義されているコマンドのCompletion Codeの番号とその意味との対応表を示す説明図である。It is explanatory drawing which shows the correspondence table of the Completion Code number of the command defined beforehand, and its meaning. あらかじめ定義されているChassis Controlの番号とその意味との対応表を示す説明図である。It is explanatory drawing which shows the corresponding | compatible table | surface of the number of Chassis Control previously defined, and its meaning. あらかじめ定義されているAuthentication Typeの番号とその意味との対応表を示す説明図である。It is explanatory drawing which shows the correspondence table of the number of Authentication Type currently defined, and its meaning. 仮想マシン用IPMIプロセスの起動処理および遮断処理手順例を示すフローチャートである。It is a flowchart which shows the starting process of the IPMI process for virtual machines, and the example of a cutoff process procedure. 図12に示した仮想マシン用IPMIプロセスの起動処理(ステップS1201)の詳細な処理手順例を示すフローチャートである。13 is a flowchart illustrating a detailed processing procedure example of virtual machine IPMI process activation processing (step S1201) illustrated in FIG. 12; 図12に示した仮想マシン用IPMIプロセスの遮断処理(ステップS1202)の詳細な処理手順例を示すフローチャートである。13 is a flowchart illustrating a detailed processing procedure example of a virtual machine IPMI process blocking process (step S1202) illustrated in FIG. 12; リモートマネジメントシステムと仮想マシン用IPMIプロセスとの間のシーケンス例を示す説明図である。It is explanatory drawing which shows the example of a sequence between a remote management system and the IPMI process for virtual machines. 仮想マシン用IPMIプロセスによるIPMIメッセージの分類処理手順例を示すフローチャートである。It is a flowchart which shows the example of a classification | category process procedure of the IPMI message by the IPMI process for virtual machines. 仮想マシン用IPMIプロセスによるセッション確立処理手順例を示すフローチャート(その1)である。12 is a flowchart (part 1) illustrating an example of a session establishment processing procedure by an IPMI process for a virtual machine. ステップS1701の条件を満たすパケットの一例を示す説明図である。It is explanatory drawing which shows an example of the packet which satisfy | fills the conditions of step S1701. ステップS1702で生成されるパケットの一例を示す説明図である。It is explanatory drawing which shows an example of the packet produced | generated by step S1702. ステップS1705で生成されるパケットの一例を示す説明図である。It is explanatory drawing which shows an example of the packet produced | generated by step S1705. 仮想マシン用IPMIプロセスによるセッション確立処理手順例を示すフローチャート(その2)である。12 is a flowchart (part 2) of a procedure example of session establishment processing by the virtual machine IPMI process. ステップS2101の条件を満たすパケットの一例を示す説明図である。It is explanatory drawing which shows an example of the packet which satisfy | fills the conditions of step S2101. ステップS2106で生成されるパケットの一例を示す説明図である。It is explanatory drawing which shows an example of the packet produced | generated by step S2106. 仮想マシン用IPMIプロセスによるセッション確立処理手順例を示すフローチャート(その3)である。FIG. 10 is a flowchart (part 3) illustrating a procedure example of session establishment processing by a virtual machine IPMI process. FIG. ステップS2401で生成されるパケットの一例を示す説明図である。It is explanatory drawing which shows an example of the packet produced | generated by step S2401. 仮想マシン用IPMIプロセスによるセッション確立処理手順例を示すフローチャート(その4)である。FIG. 10 is a flowchart (part 4) illustrating an example of a session establishment processing procedure by the virtual machine IPMI process. FIG. 図26のステップS2610で生成されるパケットの一例を示す説明図である。It is explanatory drawing which shows an example of the packet produced | generated by step S2610 of FIG. 仮想マシン用IPMIプロセスによるセッション確立処理手順例を示すフローチャート(その5)である。FIG. 12 is a flowchart (part 5) illustrating an example of a session establishment processing procedure by the virtual machine IPMI process. 図28のステップS2806で生成されるパケットの一例を示す説明図である。It is explanatory drawing which shows an example of the packet produced | generated by step S2806 of FIG. 仮想マシン用IPMIプロセス053によるセッション確立処理手順例を示すフローチャート(その6)である。FIG. 16 is a flowchart (part 6) illustrating an example of a session establishment processing procedure by the virtual machine IPMI process 053; FIG. 図30のステップS3001で生成されるハッシュ値の生成元となるパケットの一例を示す説明図である。It is explanatory drawing which shows an example of the packet used as the production | generation source of the hash value produced | generated by step S3001 of FIG. 図30のステップS3007で生成されるパケットの一例を示す説明図である。It is explanatory drawing which shows an example of the packet produced | generated by step S3007 of FIG. 仮想マシン用IPMIプロセスによるセッション確立処理手順例を示すフローチャート(その7)である。FIG. 16 is a flowchart (No. 7) illustrating an example of a session establishment processing procedure using the virtual machine IPMI process. FIG. 図33のステップS3303で生成されるパケットの一例を示す説明図である。It is explanatory drawing which shows an example of the packet produced | generated by step S3303 of FIG. 仮想マシン用IPMIプロセスによるセッション確立処理手順例を示すフローチャート(その8)である。It is a flowchart (the 8) which shows the example of a session establishment process sequence by the IPMI process for virtual machines. 図35のステップS3502で生成されるパケットの一例を示す説明図である。It is explanatory drawing which shows an example of the packet produced | generated by step S3502 of FIG. 仮想マシン用IPMIプロセスによる認証データ検証処理手順例を示すフローチャート(その1)である。12 is a flowchart (part 1) illustrating an example of an authentication data verification processing procedure by an IPMI process for a virtual machine. 仮想マシン用IPMIプロセスによる認証データ検証処理手順例を示すフローチャート(その2)である。12 is a flowchart (part 2) illustrating an example of the authentication data verification processing procedure by the virtual machine IPMI process. 仮想マシン用IPMIプロセスによる認証データ検証処理手順例を示すフローチャート(その3)である。FIG. 12 is a flowchart (part 3) illustrating an example of an authentication data verification processing procedure by an IPMI process for virtual machines. 仮想マシン用IPMIプロセスによる認証データ検証処理手順例を示すフローチャート(その4)である。FIG. 10 is a flowchart (part 4) illustrating an example of the authentication data verification processing procedure by the virtual machine IPMI process. FIG. 図40のステップS4001で生成されるパケットの一例を示す説明図である。It is explanatory drawing which shows an example of the packet produced | generated by step S4001 of FIG. 仮想マシン用IPMIプロセスによる認証データ検証処理手順例を示すフローチャート(その5)である。FIG. 10 is a flowchart (part 5) illustrating an example of the authentication data verification processing procedure by the IPMI process for virtual machines. 図42のステップS4201で生成されるパケットの一例を示す説明図である。FIG. 43 is an explanatory diagram illustrating an example of a packet generated in step S4201 of FIG. 仮想マシン用IPMIプロセスによる仮想マシン電源操作要求処理手順例を示すフローチャート(その1)である。10 is a flowchart (part 1) illustrating an example of a virtual machine power supply operation request processing procedure by an IPMI process for virtual machines. 図44のステップS4401の実行のトリガとなる受信パケットの例を示す説明図である。FIG. 45 is an explanatory diagram illustrating an example of a received packet that triggers execution of step S4401 of FIG. 44. 図44のステップS4403の実行のトリガとなる受信パケットの例を示す説明図である。It is explanatory drawing which shows the example of the received packet used as the trigger of execution of step S4403 of FIG. 図44のステップS4406で生成されるパケットの例を示す説明図である。It is explanatory drawing which shows the example of the packet produced | generated by step S4406 of FIG. 仮想マシン用IPMIプロセスによる仮想マシン電源操作要求処理手順例を示すフローチャート(その2)である。FIG. 10 is a flowchart (part 2) illustrating an example of a virtual machine power supply operation request processing procedure by the virtual machine IPMI process. FIG. 図48のステップS4801で生成されるパケットの例を示す説明図である。It is explanatory drawing which shows the example of the packet produced | generated by step S4801 of FIG. 仮想マシン用IPMIプロセスによるセッション遮断要求処理手順例を示すフローチャートである。It is a flowchart which shows the example of a session interruption | blocking request | requirement processing procedure by the IPMI process for virtual machines. セッション遮断要求を示すパケットの例を示す説明図である。It is explanatory drawing which shows the example of the packet which shows a session interruption | blocking request | requirement. 図50のステップS5003で生成されるパケットの例を示す説明図である。It is explanatory drawing which shows the example of the packet produced | generated by step S5003 of FIG. 仮想マシン用IPMIプロセスによるセッション遮断処理手順例を示すフローチャート(その1)である。12 is a flowchart (part 1) illustrating an example of a session cutoff processing procedure by the virtual machine IPMI process. 仮想マシン用IPMIプロセスによるセッション遮断処理手順例を示すフローチャート(その2)である。12 is a flowchart (part 2) illustrating an example of a session cutoff processing procedure by the virtual machine IPMI process. 図53のステップS5306および図54のステップS5406で生成されるパケットの例を示す説明図である。FIG. 57 is an explanatory diagram showing an example of packets generated in step S5306 in FIG. 53 and step S5406 in FIG. 54. 仮想マシン用IPMIプロセスの終了処理手順例を示すフローチャート(その1)である。12 is a flowchart (part 1) illustrating an example of a termination process procedure of a virtual machine IPMI process. 仮想マシン用IPMIプロセスの終了処理手順例を示すフローチャート(その2)である。12 is a flowchart (part 2) illustrating an example of a termination process procedure of the virtual machine IPMI process.
 本実施例は、物理マシンを操作するためのインタフェースであるIntelligent Platform Management Interface(以下、IPMI)を仮想マシンに対しても適用する計算機システムである。これにより、ユーザは、電源操作対象となるマシンの種類が物理マシンであるか仮想マシンであるかを意識することなく、マシンの起動またはシャットダウンの操作をおこなうことができ、電源操作の利便性の向上を図ることができる。 The present embodiment is a computer system that applies Intelligent Platform Management Interface (hereinafter referred to as IPMI), which is an interface for operating a physical machine, to a virtual machine. As a result, the user can start or shut down the machine without being aware of whether the type of machine that is the target of power operation is a physical machine or a virtual machine. Improvements can be made.
 また、以下では、仮想化制御を実現する仮想化プログラムの一例であるハイパバイザ、OS(Oparating System)、アプリケーション、仮想マシンなどの「プログラム」を主語(動作主体)として本実施例における各処理について説明を行う場合があるが、プログラムはプロセッサによって実行されることで定められた処理をメモリおよびポートを用いながら行うため、プロセッサを主語とした説明としてもよい。 In the following, each process in this embodiment will be described with “program” such as a hypervisor, an OS (Operating System), an application, and a virtual machine as examples of virtualization programs that realize virtualization control. However, since the program performs the process defined by being executed by the processor using the memory and the port, the description may be made with the processor as the subject.
 また、同種の構成要素が複数ある場合、それぞれに符号を付しているが、当該複数の同種の構成要素を区別しない場合、符号をまとめる場合がある。たとえば、仮想マシン061,062を区別しない場合は、単に仮想マシン06と表記する場合があり、ゲストOS081,082を区別しない場合は、単にゲストOS08と表記する場合がある。 In addition, when there are a plurality of the same type of constituent elements, a reference numeral is given to each, but when the plurality of the same type of constituent elements are not distinguished, the reference numerals may be combined. For example, when the virtual machines 061 and 062 are not distinguished from each other, they may be simply represented as virtual machines 06. When the guest OSs 081 and 082 are not distinguished from each other, they may be simply represented as guest OS08.
 <計算機システムのシステム構成例>
 図1は、本実施例にかかる計算機システムのシステム構成例を示すブロック図である。図2は、本実施例にかかる計算機システムの具体的なハードウェア構成例を示すブロック図である。計算機システムは、計算機(物理計算機)である物理マシン001と、リモートマネジメントシステム020と、ハイパバイザ操作クライアント021と、を有する。物理マシン001とリモートマネジメントシステム020は、ネットワーク010を介して通信可能に接続される。物理マシン001とハイパバイザ操作クライアント021は、ネットワーク010を介して通信可能に接続される。ネットワーク010には、たとえば、LAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどがある。
<System configuration example of computer system>
FIG. 1 is a block diagram illustrating a system configuration example of a computer system according to the present embodiment. FIG. 2 is a block diagram illustrating a specific hardware configuration example of the computer system according to the present embodiment. The computer system includes a physical machine 001 that is a computer (physical computer), a remote management system 020, and a hypervisor operation client 021. The physical machine 001 and the remote management system 020 are communicably connected via the network 010. The physical machine 001 and the hypervisor operation client 021 are communicably connected via the network 010. Examples of the network 010 include a LAN (Local Area Network), a WAN (Wide Area Network), and the Internet.
 ハイパバイザ操作クライアント021は、物理マシン001を管理する管理者が使用するコンピュータである。ハイパバイザ操作クライアント021は、ネットワーク010経由で、ハイパバイザ030内のIPMI用IPアドレステーブル100およびユーザ情報テーブル110に値を設定する。 The hypervisor operation client 021 is a computer used by an administrator who manages the physical machine 001. The hypervisor operation client 021 sets values in the IPMI IP address table 100 and the user information table 110 in the hypervisor 030 via the network 010.
 リモートマネジメントシステム020は、物理マシン001を利用するユーザが、操作対象マシンである物理マシン001および物理マシン001上の仮想マシン(仮想計算機)06についての電源操作するIPMIクライアントである。リモートマネジメントシステム020は、ネットワーク010経由で物理マシン001にIPMIメッセージを送信する。IPMIメッセージには、電源操作要求に関するメッセージやユーザ認証に関するメッセージがある。電源操作要求に関するメッセージには、たとえば、操作対象マシンを一意に特定する識別情報(例:IPアドレス)と電源操作内容(起動またはシャットダウン)が含まれる。ユーザ認証に関するメッセージには、たとえば、リモートマネジメントシステム020のユーザ名およびパスワードと、操作対象マシンを一意に特定する識別情報(例:IPアドレス)とが含まれる。 The remote management system 020 is an IPMI client in which a user who uses the physical machine 001 operates the power supply for the physical machine 001 that is the operation target machine and the virtual machine (virtual computer) 06 on the physical machine 001. The remote management system 020 transmits an IPMI message to the physical machine 001 via the network 010. The IPMI message includes a message related to a power supply operation request and a message related to user authentication. The message related to the power operation request includes, for example, identification information (eg, IP address) that uniquely identifies the operation target machine and power operation details (startup or shutdown). The message related to user authentication includes, for example, the user name and password of the remote management system 020 and identification information (eg, IP address) that uniquely identifies the operation target machine.
 本実施例について簡単に説明すると、(1)リモートマネジメントシステム020は、リモートマネジメントシステム020の画面上から電源操作対象のマシンを選択し、電源操作要求に関するIPMIメッセージを物理マシン001に送信する。リモートマネジメントシステム020のユーザは、電源操作対象のマシンが物理マシン001であるか仮想マシン06であるかを意識していない。 Briefly describing the present embodiment, (1) the remote management system 020 selects a power operation target machine from the screen of the remote management system 020 and transmits an IPMI message regarding the power operation request to the physical machine 001. The user of the remote management system 020 is not conscious of whether the power operation target machine is the physical machine 001 or the virtual machine 06.
 物理マシン001は、電源操作要求に関するIPMIメッセージを第1NIC(Network Interface Card)005で受信する。(2)物理マシン001は、受信したIPMIメッセージに含まれる識別情報が物理マシン001のIPアドレスである場合、IPMIメッセージで指定された電源操作内容に応じた処理を実行する。すなわち、電源操作内容が「起動」であれば物理マシン001を起動し、「シャットダウン」であれば物理マシン001をシャットダウンする。 The physical machine 001 receives an IPMI message related to the power operation request at a first NIC (Network Interface Card) 005. (2) When the identification information included in the received IPMI message is the IP address of the physical machine 001, the physical machine 001 executes processing according to the power operation content specified by the IPMI message. That is, the physical machine 001 is started if the power operation content is “startup”, and the physical machine 001 is shut down if it is “shutdown”.
 (3)物理マシン001は、受信したIPMIメッセージに含まれる識別情報が物理マシン001のIPアドレスでない場合、IPMIメッセージを管理OS040に渡す。そして、管理OS040は、電源操作対象となる仮想マシン06について仮想マシン用IPMIプロセス053が生成されていない場合は、仮想マシン用IPMIプロセス053を生成する。そして、管理OS040は、電源操作対象となる仮想マシン06について仮想マシン用IPMIプロセス053にIPMIメッセージを渡す。 (3) When the identification information included in the received IPMI message is not the IP address of the physical machine 001, the physical machine 001 passes the IPMI message to the management OS 040. If the virtual machine IPMI process 053 has not been generated for the virtual machine 06 that is the power operation target, the management OS 040 generates the virtual machine IPMI process 053. Then, the management OS 040 passes an IPMI message to the virtual machine IPMI process 053 for the virtual machine 06 that is the power operation target.
 (4)仮想マシン用IPMIプロセス053は、ハイパバイザ030を制御して、IPMIメッセージで指定された仮想マシンに対し、ハイパバイザ操作用I/F042を介してIPMIメッセージで指定された電源操作内容に応じた処理を実行する。すなわち、電源操作内容が電源ONであれば指定された仮想マシン06を起動し、電源OFFであれば指定された仮想マシンをシャットダウンする。 (4) The virtual machine IPMI process 053 controls the hypervisor 030 and responds to the power supply operation specified by the IPMI message via the hypervisor operation I / F 042 for the virtual machine specified by the IPMI message. Execute the process. That is, if the power operation content is power ON, the designated virtual machine 06 is started, and if the power operation is OFF, the designated virtual machine is shut down.
 このように、ユーザは、電源操作対象となるマシンの種類が物理マシン001であるか仮想マシン06であるかを意識することなく、マシンの起動またはシャットダウンの操作をおこなうことができ、電源操作の利便性の向上を図ることができる。 In this way, the user can start or shut down the machine without being aware of whether the type of machine that is the target of power operation is the physical machine 001 or the virtual machine 06. Convenience can be improved.
 上記(1)~(4)の処理を詳細に説明するために、図1の各要素について説明する。物理マシン001は、CPU002、メモリ003、記憶装置004、第1NIC005、タイマ006、入出力装置007を有する。 In order to explain the processes (1) to (4) in detail, each element in FIG. 1 will be explained. The physical machine 001 includes a CPU 002, a memory 003, a storage device 004, a first NIC 005, a timer 006, and an input / output device 007.
 CPU002は、物理マシン001を制御する。CPU002は、記憶装置004に記憶されたプログラムをメモリ003にロードしてプログラムを実行する。メモリ003は、ハイパバイザ030、管理OS040、仮想マシン061,062、ゲストOS081,082、IPMIサーバアプリケーション050といったプログラムを格納する。記憶装置004は、プログラム、データ、およびテーブルを記憶する。仮想マシン061,062の台数は2台に限らず、1台でも3台以上でもよい。同様に、ゲストOS081,082の台数も2台に限らず、1台でも3台以上でもよい。 The CPU002 controls the physical machine 001. The CPU 002 loads the program stored in the storage device 004 into the memory 003 and executes the program. The memory 003 stores programs such as a hypervisor 030, a management OS 040, virtual machines 061, 062, guest OSs 081, 082, and an IPMI server application 050. The storage device 004 stores programs, data, and tables. The number of virtual machines 061, 062 is not limited to two, and may be one or three or more. Similarly, the number of guest OSs 081 and 082 is not limited to two, and may be one or three or more.
 第1NIC005は、ネットワーク010を介してリモートマネジメントシステム020とハイパバイザ操作クライアント021とを通信可能に接続する。第1NIC005は、受信したIPMIメッセージに含まれる識別情報が物理マシン001のIPアドレスであるか否かを判断する。物理マシン001のIPアドレスである場合、IPMIメッセージをCPU002に渡す。これにより、CPU002は、IPMIメッセージで指定された電源操作内容に応じた処理を実行する。 The first NIC 005 connects the remote management system 020 and the hypervisor operation client 021 via the network 010 so that they can communicate with each other. The first NIC 005 determines whether the identification information included in the received IPMI message is the IP address of the physical machine 001. If it is the IP address of the physical machine 001, the IPMI message is passed to the CPU 002. As a result, the CPU 002 executes processing according to the power operation content specified by the IPMI message.
 タイマ006は、時間を計測するデバイスである。入出力装置007は、データの入力を受け付け、データを出力するデバイスである。入出力装置007には、たとえば、キーボード、マウス、タッチパネル、テンキー、スキャナ、ディスプレイ、プリンタがある。 Timer 006 is a device for measuring time. The input / output device 007 is a device that receives data input and outputs data. Examples of the input / output device 007 include a keyboard, a mouse, a touch panel, a numeric keypad, a scanner, a display, and a printer.
 ハイパバイザ030は、物理マシン001内のハードウェアであるCPU002、メモリ003、記憶装置004、NIC005、タイマ006、入出力装置007を制御するプログラムである。ハイパバイザ030は、設定情報031を有する。設定情報031は、IPMI用IPアドレステーブル100とユーザ情報テーブル110を有する。IPMI用IPアドレステーブル100は、仮想マシン06の仮想マシン番号とIPアドレスとを対応付けた情報である。ユーザ情報テーブル110は、リモートマネジメントシステム020のユーザ名とパスワードとを対応付けた情報である。 The hypervisor 030 is a program that controls the CPU 002, the memory 003, the storage device 004, the NIC 005, the timer 006, and the input / output device 007, which are hardware in the physical machine 001. The hypervisor 030 has setting information 031. The setting information 031 includes an IPMI IP address table 100 and a user information table 110. The IPMI IP address table 100 is information in which the virtual machine number of the virtual machine 06 and the IP address are associated with each other. The user information table 110 is information in which the user name and password of the remote management system 020 are associated with each other.
 ハイパバイザ030は、管理OS040上のハイパバイザ操作用Interface(以下I/F)042からエラー通知と仮想マシン06の電源断要求、および起動要求を受ける。ハイパバイザ030は、エラー通知された場合、ハイパバイザ操作クライアント021へエラーを通知する。ハイパバイザ030は、仮想マシン06の電源断要求を受けた場合、電源断要求の対象となった仮想マシン06を停止する。ハイパバイザ030は、仮想マシン06の起動要求を受けた場合、起動要求の対象となった仮想マシン06を起動させる。 The hypervisor 030 receives an error notification, a power-off request for the virtual machine 06, and a startup request from the hypervisor operation interface (hereinafter referred to as I / F) 042 on the management OS 040. When the hypervisor 030 is notified of the error, the hypervisor 030 notifies the hypervisor operation client 021 of the error. When the hypervisor 030 receives a power-off request for the virtual machine 06, the hypervisor 030 stops the virtual machine 06 that is the target of the power-off request. When the hypervisor 030 receives a startup request for the virtual machine 06, the hypervisor 030 starts the virtual machine 06 that is the target of the startup request.
 管理OS040は、ハイパバイザ030を制御するOSである。管理OS040は、タイマ機能041、ハイパバイザ操作用I/F042、第2NIC043を有する。管理OS040は、管理OS040の上でIPMIサーバアプリケーション050を稼動させる。 The management OS 040 is an OS that controls the hypervisor 030. The management OS 040 has a timer function 041, a hypervisor operation I / F 042, and a second NIC 043. The management OS 040 operates the IPMI server application 050 on the management OS 040.
 タイマ機能041は、タイマ006を制御して時間を計測するプログラムである。タイマ機能041は、通知の宛先と時間を指定することで、指定された時間経過後に指定された通知先に通知を行う機能と、通知先への設定解除を指定することで、すでに登録されている通知を解除する機能と、を実現する。 The timer function 041 is a program that controls the timer 006 to measure time. The timer function 041 has already been registered by specifying the notification destination and time, specifying the notification destination after the specified time has elapsed, and specifying the setting release to the notification destination. And the function of canceling the notification.
 ハイパバイザ操作用I/F042は、ハイパバイザ030の設定情報031に、ハイパバイザ操作クライアント021からの情報を書き込む。また、IPMI用IPアドレステーブル052へのIPアドレスの登録の際、すでに同一のIPアドレスがIPMI用IPアドレステーブル052に登録済みであることを管理OS040が検知した場合、ハイパバイザ操作用I/F042は、ハイパバイザ030にエラーを通知する。また、ハイパバイザ操作用I/F042は、IPMIメッセージに含まれている電源操作内容が「起動」である場合、管理OS040からの仮想マシン06の起動指示をハイパバイザ030に送り、IPMIメッセージに含まれている電源操作内容が「シャットダウン」である場合、管理OS040からの仮想マシンのシャットダウン指示をハイパバイザ030に送る。 The hypervisor operation I / F 042 writes information from the hypervisor operation client 021 in the setting information 031 of the hypervisor 030. When the management OS 040 detects that the same IP address has already been registered in the IPMI IP address table 052 when registering the IP address in the IPMI IP address table 052, the hypervisor operation I / F 042 The error is notified to the hypervisor 030. Further, when the power operation content included in the IPMI message is “startup”, the hypervisor operation I / F 042 sends a startup instruction for the virtual machine 06 from the management OS 040 to the hypervisor 030 and is included in the IPMI message. When the content of the power operation is “shutdown”, a shutdown instruction for the virtual machine from the management OS 040 is sent to the hypervisor 030.
 第2NIC043は、管理OS040に設定された仮想的なNICである。第2NIC043には、仮想マシン06に対応する仮想マシン用IPMIプロセス053のIPアドレスが割り当てられる。第2NIC043は、第1NIC005からIPMIメッセージを受け付ける。 The second NIC 043 is a virtual NIC set in the management OS 040. The second NIC 043 is assigned the IP address of the virtual machine IPMI process 053 corresponding to the virtual machine 06. The second NIC 043 receives the IPMI message from the first NIC 005.
 IPMIサーバアプリケーション050は、ユーザ情報テーブル051と、IPMI用IPアドレステーブル052と、を有する。IPMIサーバアプリケーション050は、管理OS040経由でハイパバイザ030からユーザ情報テーブル110およびIPMI用IPアドレステーブル100をコピーし、ユーザ情報テーブル051およびIPMI用IPアドレステーブル052として保持する。IPMIサーバアプリケーション050は、IPMIサーバアプリケーション050の上で仮想マシン06の台数分の仮想マシン用IPMIプロセス053を稼動させる。 The IPMI server application 050 includes a user information table 051 and an IPMI IP address table 052. The IPMI server application 050 copies the user information table 110 and the IPMI IP address table 100 from the hypervisor 030 via the management OS 040, and holds them as the user information table 051 and the IPMI IP address table 052. The IPMI server application 050 operates virtual machine IPMI processes 053 for the number of virtual machines 06 on the IPMI server application 050.
 仮想マシン用IPMIプロセス053は各々、セッションテーブル120と一時セッションテーブル130を有する。セッションテーブル120は、リモートマネジメントシステム020のユーザによるセッションを管理するテーブルであり、一時セッションテーブル130は、リモートマネジメントシステム020のユーザによるセッションを一時的に管理するテーブルである。 Each of the virtual machine IPMI processes 053 has a session table 120 and a temporary session table 130. The session table 120 is a table for managing a session by a user of the remote management system 020, and the temporary session table 130 is a table for temporarily managing a session by a user of the remote management system 020.
 第1仮想マシン061および第2仮想マシン062上では、当該第1仮想マシン061および第2仮想マシン062のメモリ003内部の第1ゲストOS081および第2ゲストOS082を稼動させることができる。図1の例では第1仮想マシン061上で第1ゲストOS081が稼動している状態であり、第2仮想マシン062にはまだ第2ゲストOS082が稼動していない状態を示している。 On the first virtual machine 061 and the second virtual machine 062, the first guest OS 081 and the second guest OS 082 in the memory 003 of the first virtual machine 061 and the second virtual machine 062 can be operated. In the example of FIG. 1, the first guest OS 081 is operating on the first virtual machine 061, and the second guest OS 082 is not yet operating on the second virtual machine 062.
 本実施例では、IPMIメッセージを受け取って内容に則った処理を行うIPMIサーバが仮想マシン用IPMIプロセス053である。IPMIクライアントであるリモートマネジメントシステム020は、電源操作したい仮想マシンに対応する仮想マシン用IPMIプロセス053のIPアドレス宛にIPMIメッセージを送る。リモートマネジメントシステム020は、あらかじめ保持しているIPアドレスとUDP(User Datagram Protocol)のIPMIポートに対してIPMIメッセージを送るだけである。リモートマネジメントシステム020は、IPMIメッセージで操作したいマシンの種類が物理マシン001か仮想マシンかを意識しなくてよい。 In this embodiment, the IPMI server 053 that receives an IPMI message and performs processing according to the content is the IPMI process 053 for virtual machines. The remote management system 020, which is an IPMI client, sends an IPMI message to the IP address of the virtual machine IPMI process 053 corresponding to the virtual machine to be powered on. The remote management system 020 only sends an IPMI message to the IP address held in advance and the IPMI port of UDP (User Datagram Protocol). The remote management system 020 does not need to be aware of whether the type of machine to be operated by the IPMI message is a physical machine 001 or a virtual machine.
 <テーブルの構成例>
 つぎに、図1に示した各種テーブルについて具体的に説明する。
<Table configuration example>
Next, the various tables shown in FIG. 1 will be specifically described.
 図3は、IPMI用IPアドレステーブル100,052の一例を示す説明図である。IPMI用IPアドレステーブル052は、IPMI用IPアドレステーブル100の複製であるため、説明を省略する。IPMI用IPアドレステーブル100は、仮想計算機ごとの宛先情報を記憶する宛先対応情報である。具体的には、たとえば、IPMI用IPアドレステーブル100は、あらかじめハイパバイザ030の設定情報031に格納されており、ハイパバイザ操作クライアント021からの操作により、管理OS040の第2NIC043とハイパバイザ操作用I/F042を介してエントリの追加、変更、削除が可能である。IPMI用IPアドレステーブル100は、フィールドとして、仮想マシン番号101と、IPアドレス102と、を有する。仮想マシン番号101は、値として、仮想マシンを一意に特定する番号を格納する領域である。IPアドレス102は、仮想マシンに対応する仮想マシン用IPMIプロセス053のIPアドレスを格納する領域である。 FIG. 3 is an explanatory diagram showing an example of the IPMI IP address tables 100 and 052. The IPMI IP address table 052 is a duplicate of the IPMI IP address table 100, and a description thereof will be omitted. The IPMI IP address table 100 is destination correspondence information for storing destination information for each virtual machine. Specifically, for example, the IPMI IP address table 100 is stored in advance in the setting information 031 of the hypervisor 030, and the second NIC 043 and the hypervisor operation I / F 042 of the management OS 040 are set by the operation from the hypervisor operation client 021. Entries can be added, changed, or deleted. The IPMI IP address table 100 has a virtual machine number 101 and an IP address 102 as fields. The virtual machine number 101 is an area for storing a number that uniquely identifies the virtual machine as a value. The IP address 102 is an area for storing the IP address of the virtual machine IPMI process 053 corresponding to the virtual machine.
 IPMIサーバアプリケーション050は、仮想マシン用IPMIプロセス053を、複製したIPMI用IPアドレステーブル052のエントリ数分、各エントリに対応するよう生成する。生成された仮想マシン用IPMIプロセス053は、対応するIPアドレス宛のIPMIメッセージを受信して、IPMIメッセージに含まれる内容に応じた処理を行う。 The IPMI server application 050 generates the virtual machine IPMI process 053 corresponding to the number of entries in the copied IPMI IP address table 052. The generated virtual machine IPMI process 053 receives the IPMI message addressed to the corresponding IP address, and performs processing according to the content included in the IPMI message.
 図4は、ユーザ情報テーブル110,051の一例を示す説明図である。ユーザ情報テーブル051は、ユーザ情報テーブル110の複製であるため、説明を省略する。ユーザ情報テーブル110は、あらかじめハイパバイザ030の設定情報031に格納されており、ハイパバイザ操作クライアント021からの操作により、管理OS040の第2NIC043とハイパバイザ操作用I/F042を介してエントリの追加、変更、削除が可能である。ユーザ情報テーブル110は、フィールドとして、ユーザ名111と、パスワード112と、を有する。ユーザ名111は、値として、リモートマネジメントシステム020のユーザの識別情報を格納する領域である。パスワード112は、値として、リモートマネジメントシステム020と仮想マシン用IPMIプロセス053とがセッションを確立するためのユーザ認証に用いられるパスワードを格納する領域である。 FIG. 4 is an explanatory diagram showing an example of the user information tables 110 and 051. The user information table 051 is a duplicate of the user information table 110, and thus description thereof is omitted. The user information table 110 is stored in advance in the setting information 031 of the hypervisor 030, and an entry is added, changed, or deleted via the second NIC 043 of the management OS 040 and the hypervisor operation I / F 042 by an operation from the hypervisor operation client 021. Is possible. The user information table 110 has a user name 111 and a password 112 as fields. The user name 111 is an area for storing the identification information of the user of the remote management system 020 as a value. The password 112 is an area for storing a password used for user authentication for establishing a session between the remote management system 020 and the virtual machine IPMI process 053 as a value.
 図5は、セッションテーブル120の一例を示す説明図である。セッションテーブル120は、リモートマネジメントシステム020と仮想マシン用IPMIプロセス053との間に確立されるセッションを管理するテーブルである。セッションテーブル120は、フィールドとして、セッションID121と、ユーザ名122と、パスワード123と、を有する。 FIG. 5 is an explanatory diagram showing an example of the session table 120. The session table 120 is a table for managing a session established between the remote management system 020 and the virtual machine IPMI process 053. The session table 120 has a session ID 121, a user name 122, and a password 123 as fields.
 セッションID121は、値として、確立したセッションを一意に特定する識別情報(セッションID)を格納する領域である。セッションID121の値は、ユーザ認証されたユーザ名122およびパスワード123に対して付与される。セッションID121の値は、「0」から連番とする。セッションテーブル120のセッションID121は、初期状態において、IPMIサーバアプリケーション050がサポートするセッション数分格納される。図5の例では、IPMIサーバアプリケーション050がサポートするセッション数は「4」であるため、セッションID121の値として、「0」から「3」までの4個のセッションIDが格納される。 Session ID 121 is an area for storing identification information (session ID) that uniquely identifies an established session as a value. The value of the session ID 121 is given to the user name 122 and password 123 that have been authenticated. The value of the session ID 121 is a serial number from “0”. In the initial state, session IDs 121 of the session table 120 are stored for the number of sessions supported by the IPMI server application 050. In the example of FIG. 5, since the number of sessions supported by the IPMI server application 050 is “4”, four session IDs “0” to “3” are stored as the value of the session ID 121.
 ユーザ名122は、値として、リモートマネジメントシステム020のユーザの識別情報を格納する領域である。パスワード123は、値として、リモートマネジメントシステム020と仮想マシン用IPMIプロセス053とがセッションを確立するためのユーザ認証に用いられるパスワードを格納する領域である。すなわち、ユーザ名122およびパスワード123は、初期状態において空である。リモートマネジメントシステム020と仮想マシン用IPMIプロセス053とがセッション確立のためにユーザ認証されると、確立対象となるセッションID121のエントリにおいて、ユーザ名122およびパスワード123に、ユーザ認証されたユーザ名111およびパスワード112の値が格納される。 The user name 122 is an area for storing the identification information of the user of the remote management system 020 as a value. The password 123 is an area for storing a password used for user authentication for establishing a session between the remote management system 020 and the virtual machine IPMI process 053 as a value. That is, the user name 122 and the password 123 are empty in the initial state. When the remote management system 020 and the virtual machine IPMI process 053 are user-authenticated for session establishment, in the entry of the session ID 121 to be established, the user name 111 and the user name 111 and The value of the password 112 is stored.
 図6は、一時セッションテーブル130の一例を示す説明図である。一時セッションテーブル130は、セッションを確立する前のユーザ認証において、一時的に生成するセッションを管理するテーブルである。一時セッションテーブル130は、フィールドとして、セッションID131と、ユーザ名132と、パスワード133と、チャレンジストリング134と、を有する。初期状態では、一時セッションテーブル130のエントリは空である。 FIG. 6 is an explanatory diagram showing an example of the temporary session table 130. The temporary session table 130 is a table for managing a temporarily generated session in user authentication before establishing a session. The temporary session table 130 includes a session ID 131, a user name 132, a password 133, and a challenge string 134 as fields. In the initial state, the entry in the temporary session table 130 is empty.
 セッションID131は、値として、一時的なセッションIDを格納する領域である。ユーザ名132は、値として、リモートマネジメントシステム020のユーザの識別情報を格納する領域である。パスワード133は、値として、リモートマネジメントシステム020と仮想マシン用IPMIプロセス053とがセッションを確立するためのユーザ認証に用いられるパスワードを格納する領域である。チャレンジストリング134は、値として、ランダムに生成される文字列(チャレンジストリング)を格納する領域である。チャレンジストリングは、セッション確立時に利用される。 Session ID 131 is an area for storing a temporary session ID as a value. The user name 132 is an area for storing identification information of the user of the remote management system 020 as a value. The password 133 is an area for storing a password used for user authentication for establishing a session between the remote management system 020 and the virtual machine IPMI process 053 as a value. The challenge string 134 is an area for storing a randomly generated character string (challenge string) as a value. The challenge string is used when a session is established.
 <コードおよびコマンドの説明>
 つぎに、本実施例で用いられるコードおよびコマンドの意味について図7~図11を用いて説明する。なお、「Chassis」は物理マシン001を意味し、「Application」は、IPMIサーバアプリケーション050を意味する。
<Description of code and command>
Next, the meanings of codes and commands used in this embodiment will be described with reference to FIGS. Note that “Chassis” means the physical machine 001, and “Application” means the IPMI server application 050.
 図7は、あらかじめ定義されているNetwork Function Codeの番号とその意味との対応表を示す説明図である。Network Function Code600は、ネットワーク機能の識別コードである。意味(Network Function)601は、当該識別コードに対応するネットワーク機能の定義である。なお、Network Function Code600のRequestに対して1加算した値がResponseとなる。 FIG. 7 is an explanatory diagram showing a correspondence table between predefined Network Function Code numbers and their meanings. Network Function Code 600 is an identification code of the network function. A meaning (Network Function) 601 is a definition of a network function corresponding to the identification code. Note that the value obtained by adding 1 to the request of the network function code 600 is the response.
 図8は、あらかじめ定義されているNetwork Functionのコマンド番号と意味との対応表を示す説明図である。Network Function Code610は、図7の意味(Network Function)601に対応する。コマンド番号611は、ネットワーク機能のコマンドに関する識別コードである。意味(コマンド)612は、当該識別コードに対応するコマンドの定義である。 FIG. 8 is an explanatory diagram showing a correspondence table between predefined Network Function command numbers and meanings. The Network Function Code 610 corresponds to the meaning (Network Function) 601 in FIG. The command number 611 is an identification code related to a network function command. The meaning (command) 612 is a definition of a command corresponding to the identification code.
 図9は、あらかじめ定義されているコマンドのCompletion Codeの番号とその意味との対応表を示す説明図である。コマンド620は、図8の意味(コマンド)612に対応する。Completion Code621は、コマンド620を実行した際に、実行結果を仮想マシン用IPMIプロセス053から返す値である。意味622は、Completion Code621の定義である。 FIG. 9 is an explanatory diagram showing a correspondence table between the Completion Code numbers of commands defined in advance and their meanings. The command 620 corresponds to the meaning (command) 612 in FIG. Completion Code 621 is a value returned from the virtual machine IPMI process 053 when the command 620 is executed. The meaning 622 is the definition of Completion Code 621.
 図10は、あらかじめ定義されているChassis Controlの番号とその意味との対応表を示す説明図である。Chassis Control630は、IPMIメッセージに含まれる電源操作内容を示すコードである。意味631は、当該コードの定義である。「Power down」が電源OFF(電源遮断、シャットダウン)、「Power up」が電源ON(起動)である。Chassis Control630は、物理マシン001についてのIPMIメッセージの電源操作内容であるが、当該IPMIメッセージを発行するリモートマネジメントシステム020は、電源操作対象のマシン種類を問わない。一方、物理マシン001では、IPMIメッセージに含まれているIPアドレスにより、電源操作対象が物理マシン001であるか仮想マシン06であるかを判別することになる。 FIG. 10 is an explanatory diagram showing a correspondence table between previously defined Chassis Control numbers and their meanings. The Chassis Control 630 is a code indicating the power operation content included in the IPMI message. The meaning 631 is the definition of the code. “Power down” is power OFF (power cutoff, shutdown), and “Power up” is power ON (startup). The Chassis Control 630 is the power operation content of the IPMI message for the physical machine 001, but the remote management system 020 that issues the IPMI message does not matter what type of machine is the power operation target. On the other hand, the physical machine 001 determines whether the power operation target is the physical machine 001 or the virtual machine 06 based on the IP address included in the IPMI message.
 図11は、あらかじめ定義されているAuthentication Typeの番号とその意味との対応表を示す説明図である。Authentication Type640は、認証方式を示す識別コードである。意味641は、当該識別コードの定義である。「None」はハッシュ無し、「MD2」、「MD5」は同名のハッシュ方式でハッシュすることを意味する。Authentication Typeで「None」が指定されたパケットは、Authentication Codeの値が「0」となる。なお、当該認証方式において仮想マシン用IPMIプロセス053が処理可能な方式はあらかじめ定義されているものとする。 FIG. 11 is an explanatory diagram showing a correspondence table between predefined Authentication Type numbers and their meanings. The Authentication Type 640 is an identification code indicating an authentication method. The meaning 641 is the definition of the identification code. “None” means no hashing, and “MD2” and “MD5” mean that hashing is performed using the same hash method. A packet for which “None” is specified in the Authentication Type has an Authentication Code value of “0”. Note that a method that can be processed by the virtual machine IPMI process 053 in the authentication method is defined in advance.
 <仮想マシン用IPMIプロセス053の起動処理および遮断処理例>
 図12は、仮想マシン用IPMIプロセス053の起動処理および遮断処理手順例を示すフローチャートである。IPMIサーバアプリケーション050は、仮想マシン用IPMIプロセス053を起動する起動処理を実行し(ステップS1201)、その後、仮想マシン用IPMIプロセス053を遮断する遮断処理(ステップS1202)を実行する。
<Virtual Machine IPMI Process 053 Startup Process and Blocking Process Example>
FIG. 12 is a flowchart illustrating an example of a procedure for starting and blocking the virtual machine IPMI process 053. The IPMI server application 050 executes a startup process for starting the virtual machine IPMI process 053 (step S1201), and thereafter executes a blocking process for blocking the virtual machine IPMI process 053 (step S1202).
 図13は、図12に示した仮想マシン用IPMIプロセス053の起動処理(ステップS1201)の詳細な処理手順例を示すフローチャートである。図13では、IPMIサーバアプリケーション050が仮想マシン用IPMIプロセス053を仮想マシン数分、起動する処理を実行する例を示す。 FIG. 13 is a flowchart showing a detailed processing procedure example of the activation process (step S1201) of the virtual machine IPMI process 053 shown in FIG. FIG. 13 shows an example in which the IPMI server application 050 executes processing for starting virtual machine IPMI processes 053 by the number of virtual machines.
 まず、IPMIサーバアプリケーション050が起動すると、IPMIサーバアプリケーション050は、管理OS040にあるハイパバイザ操作用I/F042を用いて、ハイパバイザ030のメモリ領域にある設定情報031から、IPMI用IPアドレステーブル100とユーザ情報テーブル110を読み込む(ステップS1301)。 First, when the IPMI server application 050 is activated, the IPMI server application 050 uses the hypervisor operation I / F 042 in the management OS 040 to set the IPMI IP address table 100 and the user from the setting information 031 in the memory area of the hypervisor 030. The information table 110 is read (step S1301).
 つぎに、IPMIサーバアプリケーション050は、読み込んだIPMI用IPアドレステーブル052において、一つ目(先頭)のエントリを対象エントリとする(ステップS1302)。IPMIサーバアプリケーション050は、現在の対象エントリにあるIPアドレスが管理OS040の第2NIC043にすでに割り当てられているか否かを判断する(ステップS1303)。 Next, the IPMI server application 050 sets the first (first) entry in the read IPMI IP address table 052 as a target entry (step S1302). The IPMI server application 050 determines whether the IP address in the current target entry has already been assigned to the second NIC 043 of the management OS 040 (step S1303).
 割り当て済みである場合(ステップS1303:Yes)、IPMI用IPアドレステーブル052においてIPアドレスが重複していることになる。したがって、IPMIサーバアプリケーション050は、管理OS040のハイパバイザ操作用I/F042を用いて、ハイパバイザ030にエラーを通知し(ステップS1304)、IPMIサーバアプリケーション050は起動処理を終了する。 If it has been assigned (step S1303: Yes), the IP address in the IPMI IP address table 052 is duplicated. Therefore, the IPMI server application 050 notifies the hypervisor 030 of an error using the hypervisor operation I / F 042 of the management OS 040 (step S1304), and the IPMI server application 050 ends the startup process.
 一方、現在の対象エントリにあるIPアドレスが管理OS040の第2NIC043に割り当てられていない場合(ステップS1303:No)、IPMIサーバアプリケーション050は、対象エントリの仮想マシン06に対応するIPアドレスを管理OS040の第2NIC043に割り当てる(ステップS1305)。そして、IPMIサーバアプリケーション050は、当該仮想マシン06に対応する仮想マシン用IPMIプロセス053に仮想マシン番号を渡して、当該仮想マシン用IPMIプロセス053を起動する(ステップS1306)。 On the other hand, when the IP address in the current target entry is not assigned to the second NIC 043 of the management OS 040 (step S1303: No), the IPMI server application 050 assigns the IP address corresponding to the virtual machine 06 of the target entry to the management OS 040. It assigns to 2nd NIC043 (step S1305). Then, the IPMI server application 050 passes the virtual machine number to the virtual machine IPMI process 053 corresponding to the virtual machine 06, and starts the virtual machine IPMI process 053 (step S1306).
 当該起動後、IPMIサーバアプリケーション050は、現在の対象エントリがIPMI用IPアドレステーブル052の最後のエントリか確認する(ステップS1307)。最後のエントリでない場合(ステップS1307:No)、仮想マシン用IPMIプロセス053は、次のエントリを対象エントリに設定し(ステップS1308)、ステップS1303に戻る。 After the activation, the IPMI server application 050 checks whether the current target entry is the last entry in the IPMI IP address table 052 (step S1307). If it is not the last entry (step S1307: No), the virtual machine IPMI process 053 sets the next entry as the target entry (step S1308), and returns to step S1303.
 また、ステップS1307において、現在のエントリがIPMI用IPアドレステーブル052の最後のエントリである場合(ステップS1307:Yes)、IPMIサーバアプリケーション050は起動処理を終了する。これにより、管理OS040の第2NIC043へのIPアドレスの割り当てと、仮想マシン用IPMIプロセス053の起動とが完了する。 In step S1307, when the current entry is the last entry in the IPMI IP address table 052 (step S1307: Yes), the IPMI server application 050 ends the activation process. Thereby, the assignment of the IP address to the second NIC 043 by the management OS 040 and the activation of the virtual machine IPMI process 053 are completed.
 図14は、図12に示した仮想マシン用IPMIプロセス053の遮断処理(ステップS1202)の詳細な処理手順例を示すフローチャートである。図14では、IPMIサーバアプリケーション050は、管理OS040からのシャットダウンシグナルを待つ(ステップS1401:No)。管理OS040は、ハイパバイザ操作クライアント021からのシャットダウン指示を受け付けると、シャットダウンシグナルを発行する。シャットダウンシグナルを受け取った場合(ステップS1401:Yes)、IPMIサーバアプリケーション050は、IPMI用IPアドレステーブル052の一つ目(先頭)のエントリを対象エントリに設定する(ステップS1402)。IPMIサーバアプリケーション050は、対象エントリに仮想マシン用IPMIプロセスにシャットダウンシグナルを送る(ステップS1403)。これにより、シャットダウンシグナルを受けた仮想マシン用IPMIプロセス053は、自身をシャットダウンする。 FIG. 14 is a flowchart showing a detailed processing procedure example of the blocking process (step S1202) of the virtual machine IPMI process 053 shown in FIG. In FIG. 14, the IPMI server application 050 waits for a shutdown signal from the management OS 040 (step S1401: No). When the management OS 040 receives a shutdown instruction from the hypervisor operation client 021, it issues a shutdown signal. When the shutdown signal is received (step S1401: Yes), the IPMI server application 050 sets the first (first) entry of the IPMI IP address table 052 as a target entry (step S1402). The IPMI server application 050 sends a shutdown signal to the virtual machine IPMI process in the target entry (step S1403). As a result, the virtual machine IPMI process 053 that has received the shutdown signal shuts itself down.
 そして、IPMIサーバアプリケーション050は、対象エントリの仮想マシン用IPMIプロセス053の終了を待ち受け(ステップS1404:No)、終了した場合(ステップS1404:Yes)、現在の対象エントリがIPMI用IPアドレステーブル052の最後のエントリであるか否かを判断する(ステップS1405)。最後のエントリでない場合(ステップS1405:No)、IPMIサーバアプリケーション050は、次のエントリを対象エントリに設定して(ステップS1406)、ステップS1403に戻る。一方、最後のエントリである場合(ステップS1405:Yes)、IPMIサーバアプリケーション050は、遮断処理を終了する。 Then, the IPMI server application 050 waits for the end of the virtual machine IPMI process 053 of the target entry (step S1404: No), and when it ends (step S1404: Yes), the current target entry is the IPMI IP address table 052. It is determined whether it is the last entry (step S1405). If it is not the last entry (step S1405: No), the IPMI server application 050 sets the next entry as the target entry (step S1406) and returns to step S1403. On the other hand, if it is the last entry (step S1405: Yes), the IPMI server application 050 ends the blocking process.
 <リモートマネジメントシステム020と仮想マシン用IPMIプロセス053との間のシーケンス例>
 図15は、リモートマネジメントシステム020と仮想マシン用IPMIプロセス053との間のシーケンス例を示す説明図である。(A)がセッション未確立状態のフェーズであり、(B)がセッション確立要求中のフェーズであり、(C)がセッション確立済みのフェーズである。(A)~(C)のフェーズは、図13に示した仮想マシン用IPMIプロセス053の起動処理(ステップS1201)が終了してから、図14に示した仮想マシン用IPMIプロセス053の遮断処理(ステップS1202)が開始するまでの間に実行されるシーケンスである。
<Example of sequence between remote management system 020 and virtual machine IPMI process 053>
FIG. 15 is an explanatory diagram showing a sequence example between the remote management system 020 and the virtual machine IPMI process 053. (A) is a phase in which a session is not established, (B) is a phase in which a session establishment is being requested, and (C) is a phase in which a session has been established. In the phases (A) to (C), after the startup process (step S1201) of the virtual machine IPMI process 053 shown in FIG. 13 ends, the shutdown process (step S1201) of the virtual machine IPMI process 053 shown in FIG. This is a sequence executed until step S1202) starts.
 リモートマネジメントシステム020は、仮想マシン用IPMIプロセス053に、「Get Channel Authentication Capability」の要求(図18を参照。)を送信する(ステップS1501)。 The remote management system 020 transmits a request for “Get Channel Authentication Capability” (see FIG. 18) to the IPMI process 053 for virtual machines (step S1501).
 仮想マシン用IPMIプロセス053は、リモートマネジメントシステム020に、「Get Channel Authentication Capability」の応答(図19を参照。)を返す(ステップS1502)。当該応答には、認証方式(Authentication Type)が含まれる。 The virtual machine IPMI process 053 returns a response “Get Channel Authentication Capability” to the remote management system 020 (see FIG. 19) (step S1502). The response includes an authentication type.
 リモートマネジメントシステム020は、仮想マシン用IPMIプロセス053に、「Get Session Challenge」の要求(図22を参照。)を送信する(ステップS1503)。当該要求には、リモートマネジメントシステム020のユーザ名と、ステップS1502で受信したハッシュ情報とが含まれる。 The remote management system 020 transmits a “Get Session Challenge” request (see FIG. 22) to the virtual machine IPMI process 053 (step S1503). The request includes the user name of the remote management system 020 and the hash information received in step S1502.
 仮想マシン用IPMIプロセス053は、リモートマネジメントシステム020に、「Get Session Challenge」の応答(図23を参照。)を返す(ステップS1504)。当該応答には、ランダムに生成されたチャレンジストリングと一時セッションIDとが含まれる。 The virtual machine IPMI process 053 returns a response (see FIG. 23) of “Get Session Challenge” to the remote management system 020 (step S1504). The response includes a randomly generated challenge string and a temporary session ID.
 リモートマネジメントシステム020は、仮想マシン用IPMIプロセス053に、「Activate Session」の要求(図31を参照。)を送信する(ステップS1505)。リモートマネジメントシステム020は、リモートマネジメントシステム020のユーザ名とパスワードとステップS1504で受信したチャレンジストリングとを連結した文字列を、認証方式(Authentication Type)で特定されるハッシュ関数に与える。リモートマネジメントシステム020は、そのハッシュ関数から得られるハッシュ値と一時セッションIDとを、「Activate Session」の要求として仮想マシン用IPMIプロセス053に送信する。 The remote management system 020 transmits a request for “Activate Session” (see FIG. 31) to the IPMI process 053 for virtual machines (step S1505). The remote management system 020 gives a character string obtained by concatenating the user name and password of the remote management system 020 and the challenge string received in step S1504 to the hash function specified by the authentication method (Authentication Type). The remote management system 020 transmits the hash value obtained from the hash function and the temporary session ID to the virtual machine IPMI process 053 as a request for “Activate Session”.
 仮想マシン用IPMIプロセス053は、「Activate Session」の要求に含まれる一時セッションIDから、一時セッションテーブル130を参照して、ユーザ名、パスワード、およびチャレンジストリングを特定して連結する。仮想マシン用IPMIプロセス053は、連結した文字列を、認証方式(Authentication Type)で特定されるハッシュ関数に与えることによりハッシュ値を生成する。仮想マシン用IPMIプロセス053は、受信した「Activate Session」の要求に含まれるハッシュ値と生成したハッシュ値とが一致した場合、ユーザ認証する。ユーザ認証された場合、仮想マシン用IPMIプロセス053は、リモートマネジメントシステム020に、「Activate Session」の応答(図34を参照。)を送る(ステップS1506)。当該応答には、新セッションIDが含まれる。これにより、リモートマネジメントシステム020と仮想マシン用IPMIプロセス053との間でセッションが確立する。 The virtual machine IPMI process 053 refers to the temporary session table 130 from the temporary session ID included in the request of “Activate Session”, identifies and concatenates the user name, password, and challenge string. The virtual machine IPMI process 053 generates a hash value by giving the concatenated character string to a hash function specified by an authentication method. The virtual machine IPMI process 053 authenticates the user when the hash value included in the received “Activate Session” request matches the generated hash value. If the user is authenticated, the virtual machine IPMI process 053 sends a response of “Activate Session” (see FIG. 34) to the remote management system 020 (step S1506). The response includes a new session ID. As a result, a session is established between the remote management system 020 and the virtual machine IPMI process 053.
 このあと、リモートマネジメントシステム020は、仮想マシン用IPMIプロセス053に、「Chassis Control」の要求(図45または図46を参照。)を送信する(ステップS1507)。そして、仮想マシン用IPMIプロセス053は、当該要求に応じた制御をおこない、リモートマネジメントシステム020に、「Chassis Control」の応答(図47を参照。)を返す(ステップS1507)。 Thereafter, the remote management system 020 transmits a request for “Chassis Control” (see FIG. 45 or FIG. 46) to the IPMI process 053 for virtual machines (step S1507). The virtual machine IPMI process 053 performs control according to the request, and returns a response (see FIG. 47) of “Chassis Control” to the remote management system 020 (step S1507).
 <仮想マシン用IPMIプロセス053の処理例>
 つぎに、図12に示した仮想マシン用IPMIプロセス053の起動処理(ステップS1201)で起動された各々の仮想マシン用IPMIプロセス053が実行する詳細な処理およびパケット(IPMIメッセージ)を、図16~図57を用いて説明する。
<Processing Example of IPMI Process 053 for Virtual Machine>
Next, detailed processing and packets (IPMI messages) executed by each virtual machine IPMI process 053 started in the virtual machine IPMI process 053 start processing (step S1201) shown in FIG. This will be described with reference to FIG.
 <IPMIメッセージの分類>
 図16は、仮想マシン用IPMIプロセス053によるIPMIメッセージの分類処理手順例を示すフローチャートである。仮想マシン用IPMIプロセス053が起動すると、仮想マシン用IPMIプロセス053は、自プロセス内に持て得る最大セッション数分のセッションID121(「0」からの連番)があり、かつ、ユーザ名122およびパスワード123が空となっているエントリをもつセッションテーブル120と、エントリが空となっている一時セッションテーブル130とを生成する(ステップS1601)。
<Classification of IPMI messages>
FIG. 16 is a flowchart illustrating an example of an IPMI message classification processing procedure by the virtual machine IPMI process 053. When the virtual machine IPMI process 053 is activated, the virtual machine IPMI process 053 has session IDs 121 (serial numbers from “0”) corresponding to the maximum number of sessions that can be held in the own process, and the user name 122 and the password. A session table 120 having an entry for which 123 is empty and a temporary session table 130 for which the entry is empty are generated (step S1601).
 つぎに、仮想マシン用IPMIプロセス053は、自プロセス起動時に渡された仮想マシン番号(ステップS1306)に対応するIPアドレス宛で、かつ、IPMIサーバ用のUDPポート宛のパケットが届くのを待つ(ステップS1602)。当該パケットが届かない場合(ステップS1603:No)、ステップS1602に戻る。一方、当該パケットが届いた場合(ステップS1603:Yes)、仮想マシン用IPMIプロセス053は、当該パケット内のセッションIDが「0」であるか否かを確認する(ステップS1604)。 Next, the virtual machine IPMI process 053 waits for arrival of a packet addressed to the IP address corresponding to the virtual machine number (step S1306) passed at the time of starting the process and addressed to the UDP port for the IPMI server ( Step S1602). If the packet does not arrive (step S1603: NO), the process returns to step S1602. On the other hand, when the packet arrives (step S1603: Yes), the virtual machine IPMI process 053 checks whether or not the session ID in the packet is “0” (step S1604).
 当該パケット内のセッションIDが「0」である場合(ステップS1604:Yes)、図17のステップS1201へ進む。一方、「0」でない場合(ステップS1604:No)、仮想マシン用IPMIプロセス053は、当該パケット内のAuthentication Typeが仮想マシン用IPMIプロセス053がサポートしている認証方式であるか否かを判断する(ステップS1605)。サポートしていない場合(ステップS1605:No)、図24のステップS2401へ進む。 If the session ID in the packet is “0” (step S1604: YES), the process proceeds to step S1201 in FIG. On the other hand, if it is not “0” (step S1604: No), the virtual machine IPMI process 053 determines whether the Authentication Type in the packet is an authentication method supported by the virtual machine IPMI process 053. (Step S1605). If not supported (step S1605: NO), the process proceeds to step S2401 in FIG.
 一方、サポートしている場合(ステップS1605:Yes)、仮想マシン用IPMIプロセス053は、当該パケット内のNetwork Function CodeがApplication requestを意味する「6h」で、かつ、コマンド番号がActivate Sessionを意味する「3Ah」であるか否かを判断する(ステップS1606)。「6h」で、かつ、「3Ah」である場合(ステップS1606:Yes)、図28のステップS2801に移行する。「6h」で、かつ、「3Ah」でない場合(ステップS1606:No)、図37のステップS3701に移行する。以上により、IPMIメッセージの分類が完了する。 On the other hand, if it is supported (step S1605: Yes), the IPMI process for virtual machine 053 means that the Network Function Code in the packet is “6h” that means Application request, and the command number means Activate Session. It is determined whether it is “3Ah” (step S1606). If “6h” and “3Ah” (step S1606: Yes), the process proceeds to step S2801 in FIG. If “6h” and not “3Ah” (step S1606: No), the process proceeds to step S3701 in FIG. This completes the classification of the IPMI message.
 <ユーザ認証によるセッション確立までの処理>
 つぎに、仮想マシン用IPMIプロセス053とリモートマネジメントシステム020がユーザ認証を介してセッションを確立するまでの処理およびパケット(IPMIメッセージ)を、図17~図36を用いて説明する。
<Processing until session establishment by user authentication>
Next, processing and packets (IPMI messages) until the virtual machine IPMI process 053 and the remote management system 020 establish a session through user authentication will be described with reference to FIGS.
 図17は、仮想マシン用IPMIプロセス053によるセッション確立処理手順例を示すフローチャート(その1)である。図16のステップS1604で受信したパケットのセッションIDが「0」である場合(ステップS1604:Yes)、仮想マシン用IPMIプロセス053は、受信したパケット内のNetwork Function CodeがApplication requestを意味する「6h」で、かつ、コマンド番号がGet Channel Authentication Capabilityを意味する「38h」であるか否かを判断する(ステップS1701)。 FIG. 17 is a flowchart (part 1) illustrating an example of a session establishment processing procedure by the virtual machine IPMI process 053. When the session ID of the packet received in step S1604 of FIG. 16 is “0” (step S1604: Yes), the virtual machine IPMI process 053 indicates that “Network Function Code in the received packet indicates“ application request ”“ 6h ”. ”And whether the command number is“ 38h ”meaning“ Get Channel Authentication Capability ”(step S1701).
 「6h」で、かつ、「38h」である場合(ステップS1701:Yes)、仮想マシン用IPMIプロセス053は、以下の情報を格納するパケットを生成する(ステップS1702)。 If it is “6h” and “38h” (step S1701: Yes), the virtual machine IPMI process 053 generates a packet storing the following information (step S1702).
・Network Function Code:7h
・セッションID:0
・コマンド番号:38h
・Completion Code:「0h」(コマンドの正常終了)
・サポートするAuthentication Typeを示すビットマップ
・ Network Function Code: 7h
・ Session ID: 0
・ Command number: 38h
-Completion Code: "0h" (normal termination of command)
-Bitmap indicating the supported Authentication Type
 そして、仮想マシン用IPMIプロセス053は、送信先である仮想マシン用IPMIプロセス053から、受信したパケットの送信元であるリモートマネジメントシステム020に、ステップS1704で生成したパケットを返送する(ステップS1703)。このあと、図16のステップS1602に戻り、再度パケットを待ち受ける。 Then, the virtual machine IPMI process 053 returns the packet generated in step S1704 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S1703). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
 ステップS1701とステップS1702の処理は、IPMIセッションの確立前にIPMIセッション情報を送受信する処理である。ステップS1701の条件を満たすパケットと、ステップS1702で生成、送信するパケットとを以下に示す。 The processes in step S1701 and step S1702 are processes for transmitting and receiving IPMI session information before establishing an IPMI session. The packet that satisfies the condition of step S1701 and the packet that is generated and transmitted in step S1702 are shown below.
 図18は、ステップS1701の条件を満たすパケットの一例を示す説明図である。図19は、ステップS1702で生成されるパケットの一例を示す説明図である。図19において、「サポートするAuthentication Typeのビットマップ」には、あらかじめ定義されている「Authentication Type」の番号において、最下位ビットから数えてサポートしている「Authentication Type」の番号に対応するビット位置のみを「1」に設定した値が格納される。 FIG. 18 is an explanatory diagram showing an example of a packet that satisfies the condition of step S1701. FIG. 19 is an explanatory diagram illustrating an example of the packet generated in step S1702. In FIG. 19, “Supported Authentication Type Bitmap” has a bit position corresponding to the number of “Authentication Type” supported by counting from the least significant bit in the predefined “Authentication Type” number. A value in which only “1” is set is stored.
 図17に戻り、「6h」で、かつ、「38h」でない場合(ステップS1701:No)、仮想マシン用IPMIプロセス053は、受信したパケット内のNetwork Function CodeがApplication requestを意味する「6h」で、かつ、コマンド番号がGet Session Challengeを意味する「39h」であるか否かを判断する(ステップS1704)。「6h」で、かつ、「39h」である場合(ステップS1704:Yes)、図21のステップS2101に移行する。 Returning to FIG. 17, if “6h” and not “38h” (step S1701: No), the virtual machine IPMI process 053 is “6h” in which the Network Function Code in the received packet means Application request. In addition, it is determined whether or not the command number is “39h” which means “Get Session Challenge” (step S1704). If “6h” and “39h” (step S1704: YES), the process proceeds to step S2101 in FIG.
 一方、「6h」で、かつ、「39h」でない場合(ステップS1704:No)、セッションIDは「0」であるが、Network Function Codeが「6h」でない、または、Network Function Codeが「6h」であるがコマンド番号が「38h」または「39h」のいずれでもない場合に該当する。この場合、仮想マシン用IPMIプロセス053は、無効なコマンド指定を意味するパケットを生成する(ステップS1705)。生成される無効なコマンド指定を含むパケットは、以下の情報を含む。 On the other hand, if “6h” and not “39h” (step S1704: No), the session ID is “0”, but the Network Function Code is not “6h”, or the Network Function Code is “6h”. This corresponds to the case where the command number is neither “38h” nor “39h”. In this case, the virtual machine IPMI process 053 generates a packet indicating an invalid command designation (step S1705). The generated packet including an invalid command specification includes the following information.
・Network Function Code:受信パケットのNetwork Function Codeの値に1を足した値
・コマンド番号:受信パケットのコマンド番号と同値
・セッションID:受信パケットのセッションIDと同値
・Completion Code:「C1h」(無効なコマンド)
• Network Function Code: Value obtained by adding 1 to the value of Network Function Code of the received packet • Command number: Same value as the command number of the received packet • Session ID: Same value as the session ID of the received packet • Completion Code: “C1h” (invalid Command)
 そして、仮想マシン用IPMIプロセス053は、送信先である仮想マシン用IPMIプロセス053から、受信したパケットの送信元であるリモートマネジメントシステム020に、ステップS1705で生成したパケットを返送する(ステップS1706)。このあと、図16のステップS1602に戻り、再度パケットを待ち受ける。 The virtual machine IPMI process 053 returns the packet generated in step S1705 from the virtual machine IPMI process 053, which is the transmission destination, to the remote management system 020, which is the transmission source of the received packet (step S1706). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
 図20は、ステップS1705で生成されるパケットの一例を示す説明図である。つぎに、図17のステップS1704:Yesの場合の処理について説明する。 FIG. 20 is an explanatory diagram showing an example of the packet generated in step S1705. Next, processing in the case of step S1704: Yes in FIG. 17 will be described.
 図21は、仮想マシン用IPMIプロセス053によるセッション確立処理手順例を示すフローチャート(その2)である。図21のステップS2101は、図17のステップS1704を満たすパケットを受信した場合(ステップS1704:Yes)に実行される。ステップS2101では、仮想マシン用IPMIプロセス053は、受信したパケット内のAuthentication Typeが、仮想マシン用IPMIプロセス053がサポートしている認証方式を指定しているか否かを判断する(ステップS2101)。サポートしていない場合(ステップS2101:No)、図24のステップS2401に移行する。一方、サポートしている場合(ステップS2101:Yes)、仮想マシン用IPMIプロセス053は、ユーザ情報テーブル051の一つ目(先頭)のエントリを対象エントリに設定し(ステップS2102)、受信パケット内のユーザ名が対象エントリのユーザ名と一致するか否かを判断する(ステップS2103)。 FIG. 21 is a flowchart (part 2) illustrating an example of a session establishment processing procedure performed by the virtual machine IPMI process 053. Step S2101 in FIG. 21 is executed when a packet satisfying step S1704 in FIG. 17 is received (step S1704: Yes). In step S2101, the virtual machine IPMI process 053 determines whether or not the Authentication Type in the received packet specifies an authentication method supported by the virtual machine IPMI process 053 (step S2101). If not supported (step S2101: No), the process proceeds to step S2401 in FIG. On the other hand, if it is supported (step S2101: Yes), the virtual machine IPMI process 053 sets the first (first) entry of the user information table 051 as the target entry (step S2102), and It is determined whether or not the user name matches the user name of the target entry (step S2103).
 一致する場合(ステップS2103:Yes)、図26のステップS2601に移行する。一方、一致しない場合(ステップS2103:No)、仮想マシン用IPMIプロセス053は、現在の対象エントリがユーザ情報テーブル051の最後のエントリであるか否かを判断する(ステップS2104)。最後のエントリでない場合(ステップS2104:No)、仮想マシン用IPMIプロセス053は、つぎのエントリを対象エントリに設定して(ステップS2105)、ステップS2103に戻る。 If they match (step S2103: YES), the process proceeds to step S2601 in FIG. On the other hand, if they do not match (step S2103: NO), the virtual machine IPMI process 053 determines whether or not the current target entry is the last entry in the user information table 051 (step S2104). If it is not the last entry (step S2104: No), the virtual machine IPMI process 053 sets the next entry as the target entry (step S2105), and returns to step S2103.
 ステップS2104において、現在の対象エントリがユーザ情報テーブル051の最後のエントリである場合(ステップS2104:Yes)、受信パケットにおけるユーザ名の指定が不正である。したがって、仮想マシン用IPMIプロセス053は、以下の情報を格納するパケットを生成する(ステップS2106)。 In step S2104, if the current target entry is the last entry in the user information table 051 (step S2104: Yes), the user name specified in the received packet is invalid. Therefore, the virtual machine IPMI process 053 generates a packet storing the following information (step S2106).
・Network Function Code:「7h」
・セッションID:0
・コマンド番号:「39h」
・Completion Code:「81h」(ユーザ名不正)
・ Network Function Code: “7h”
・ Session ID: 0
Command number: “39h”
-Completion Code: "81h" (user name is invalid)
 仮想マシン用IPMIプロセス053は、送信先である仮想マシン用IPMIプロセス053から、受信したパケットの送信元であるリモートマネジメントシステム020に、ステップS2106で生成したパケットを返送する(ステップS2107)。このあと、図16のステップS1602に戻り、再度パケットを待ち受ける。 The virtual machine IPMI process 053 returns the packet generated in step S2106 from the virtual machine IPMI process 053 that is the transmission destination to the remote management system 020 that is the transmission source of the received packet (step S2107). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
 図22は、ステップS2101の条件を満たすパケットの一例を示す説明図である。図23は、ステップS2106で生成されるパケットの一例を示す説明図である。図23に示すパケットは、ユーザ名不正のエラーを返送するIPMIメッセージである。 FIG. 22 is an explanatory diagram showing an example of a packet that satisfies the condition of step S2101. FIG. 23 is an explanatory diagram showing an example of the packet generated in step S2106. The packet shown in FIG. 23 is an IPMI message that returns a user name error.
 図24は、仮想マシン用IPMIプロセス053によるセッション確立処理手順例を示すフローチャート(その3)である。図24のステップS2401は、図16のステップS1605において、仮想マシン用IPMIプロセス053は、当該パケット内のAuthentication Typeが仮想マシン用IPMIプロセス053がサポートしている認証方式でない場合(ステップS1605:No)に実行される。ステップS2401では、仮想マシン用IPMIプロセス053は、以下の情報を含むパケットを生成する(ステップS2401)。 FIG. 24 is a flowchart (part 3) illustrating an example of a session establishment processing procedure performed by the virtual machine IPMI process 053. In step S2401 of FIG. 24, in step S1605 of FIG. 16, the virtual machine IPMI process 053 does not have the authentication type supported by the virtual machine IPMI process 053 in the packet (step S1605: No). To be executed. In step S2401, the virtual machine IPMI process 053 generates a packet including the following information (step S2401).
・Network Function Code:受信パケットのNetwork Function Codeの値に1を足した値
・コマンド番号:受信パケットのコマンド番号と同値
・セッションID:受信パケットのセッションIDと同値
・Completion Code:「5h」(サポート外によりコマンドを実行不可)
-Network Function Code: Value obtained by adding 1 to the value of the Network Function Code of the received packet-Command number: Same value as the command number of the received packet-Session ID: Same value as the session ID of the received packet-Completion Code: "5h" (Support The command cannot be executed due to outside)
 そして、仮想マシン用IPMIプロセス053は、送信先である仮想マシン用IPMIプロセス053から、受信したパケットの送信元であるリモートマネジメントシステム020に、ステップS2401で生成したパケットを返送する(ステップS2402)。このあと、図16のステップS1602に戻り、再度パケットを待ち受ける。 Then, the virtual machine IPMI process 053 returns the packet generated in step S2401 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S2402). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
 図25は、ステップS2401で生成されるパケットの一例を示す説明図である。図25に示すパケットは、セッション確立前の、仮想マシン用IPMIプロセス053からリモートマネジメントシステム020へ、非サポートなコマンドオプションや認証方式を指定されたことを伝達するIPMIメッセージである。 FIG. 25 is an explanatory diagram showing an example of the packet generated in step S2401. The packet shown in FIG. 25 is an IPMI message that conveys that an unsupported command option or authentication method has been designated from the virtual machine IPMI process 053 to the remote management system 020 before the session is established.
 図26は、仮想マシン用IPMIプロセス053によるセッション確立処理手順例を示すフローチャート(その4)である。図26のステップS2601は、図21のステップS2103において、受信パケット内のユーザ名が対象エントリに存在する場合(ステップS2103:Yes)に実行される。 FIG. 26 is a flowchart (part 4) illustrating an example of a session establishment processing procedure by the virtual machine IPMI process 053. Step S2601 in FIG. 26 is executed when the user name in the received packet exists in the target entry in step S2103 in FIG. 21 (step S2103: Yes).
 ステップS2601において、仮想マシン用IPMIプロセス053は、一時セッションIDをランダムに生成する(ステップS2601)。つぎに、仮想マシン用IPMIプロセス053は、一時セッションテーブル130の一つ目(先頭)のエントリを対象エントリに設定し(ステップS2602)、生成した一時セッションIDが対象エントリのセッションID131と一致するか否かを判断する(ステップS2603)。 In step S2601, the virtual machine IPMI process 053 randomly generates a temporary session ID (step S2601). Next, the virtual machine IPMI process 053 sets the first (first) entry of the temporary session table 130 as the target entry (step S2602), and whether the generated temporary session ID matches the session ID 131 of the target entry. It is determined whether or not (step S2603).
 一致する場合(ステップS2603:Yes)、ステップS2607に移行する。一方、一致しない場合(ステップS2603:No)、仮想マシン用IPMIプロセス053は、現在の対象エントリが一時セッションテーブル130の最後のエントリであるか否かを判断する(ステップS2604)。最後のエントリでない場合(ステップS2605:No)、仮想マシン用IPMIプロセス053は、つぎのエントリを対象エントリに設定して(ステップS2605)、ステップS2603に戻る。 If they match (step S2603: YES), the process proceeds to step S2607. On the other hand, if they do not match (step S2603: NO), the virtual machine IPMI process 053 determines whether or not the current target entry is the last entry in the temporary session table 130 (step S2604). If it is not the last entry (step S2605: No), the virtual machine IPMI process 053 sets the next entry as the target entry (step S2605) and returns to step S2603.
 ステップS2604において、現在の対象エントリが一時セッションテーブル130の最後のエントリである場合(ステップS2604:Yes)、仮想マシン用IPMIプロセス053は、ランダムな文字列であるチャレンジストリングを生成し、以下の情報を含むエントリを、一時セッションテーブル130の新規エントリとして登録し(ステップS2606)、ステップS2609に移行する。 In step S2604, when the current target entry is the last entry in the temporary session table 130 (step S2604: Yes), the virtual machine IPMI process 053 generates a challenge string which is a random character string, and the following information: Is registered as a new entry in the temporary session table 130 (step S2606), and the process proceeds to step S2609.
・ステップS2601で生成した一時セッションID
・ステップS1603で受信したパケット内のユーザ名
・ユーザ情報テーブル051において、ステップS2103で一致したユーザ名111に対応するパスワード112の値
・当該生成したチャレンジストリング
-Temporary session ID generated in step S2601
In the user name in the packet received in step S1603 In the user information table 051, the value of the password 112 corresponding to the user name 111 matched in step S2103 The challenge string generated
 また、ステップS2603において一致する場合(ステップS2603:Yes)、ステップS2601で生成した一時セッションIDが以前にも生成されていて、かつ、当該一時セッションIDがセッション確立に未使用であるため、仮想マシン用IPMIプロセス053は、ランダムな文字列であるチャレンジストリングを生成し、一時セッションテーブル130の対象エントリに、以下の情報を含むエントリを上書き登録し(ステップS2607)、ステップS2608に移行する。 If they match in step S2603 (step S2603: Yes), the temporary session ID generated in step S2601 has been generated before and the temporary session ID is unused for session establishment. The IPMI process 053 generates a challenge string that is a random character string, overwrites and registers an entry including the following information in the target entry of the temporary session table 130 (step S2607), and proceeds to step S2608.
・ステップS1603で受信したパケット内のユーザ名
・ユーザ情報テーブル051において、ステップS2103で一致したユーザ名111に対応するパスワード112の値
・当該生成したチャレンジストリング
In the user name in the packet received in step S1603 In the user information table 051, the value of the password 112 corresponding to the user name 111 matched in step S2103 The challenge string generated
 このあと、仮想マシン用IPMIプロセス053は、後述するステップS2609において、管理OS040のタイマ機能041に設定済みの一時セッションIDがあれば、当該一時セッションIDに対するタイマ設定を解除し(ステップS2608)、ステップS2609に移行する。 Thereafter, if there is a temporary session ID set in the timer function 041 of the management OS 040 in step S2609 described later, the virtual machine IPMI process 053 cancels the timer setting for the temporary session ID (step S2608). The process moves to S2609.
 ステップS2609では、仮想マシン用IPMIプロセス053は、管理OS040のタイマ機能041へ当該一時セッションID宛に60秒後に通知が来るようタイマを設定する(ステップS2609)。タイマ設定を行う理由は、当該タイマ設定時に登録した一時セッションIDが利用されなかった場合、60秒後にタイムアウト(ステップS2606)して、図53および図54の処理で当該一時セッションIDを開放するためである。 In step S2609, the virtual machine IPMI process 053 sets a timer so that the timer function 041 of the management OS 040 is notified to the temporary session ID after 60 seconds (step S2609). The reason for setting the timer is that if the temporary session ID registered at the time of setting the timer is not used, a timeout occurs after 60 seconds (step S2606), and the temporary session ID is released in the processing of FIGS. 53 and 54. It is.
 このあと、仮想マシン用IPMIプロセス053は、以下の情報を含むパケットを生成する(ステップS2610)。 Thereafter, the virtual machine IPMI process 053 generates a packet including the following information (step S2610).
・Network Function Code:「7h」(Application Responce)
・セッションID:0
・コマンド番号:「39h」(Get Session Challenge)
・Completion Code:「0h」(コマンド正常終了)
・ステップS2601で生成した一時セッションID
ステップS2606またはステップS2607で生成したチャレンジストリング
・ Network Function Code: “7h” (Application Response)
・ Session ID: 0
Command number: “39h” (Get Session Challenge)
-Completion Code: "0h" (command normal termination)
-Temporary session ID generated in step S2601
Challenge string generated in step S2606 or step S2607
 そして、仮想マシン用IPMIプロセス053は、送信先である仮想マシン用IPMIプロセス053から、受信したパケットの送信元であるリモートマネジメントシステム020に、ステップS2610で生成したパケットを返送する(ステップS2611)。このあと、図16のステップS1602に戻り、再度パケットを待ち受ける。 Then, the virtual machine IPMI process 053 returns the packet generated in step S2610 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S2611). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
 このように、図21、図24および図26の処理は、認証方式をサポートし、かつ、ユーザ名が正しければユーザ認証を行うセッション確立要求に用いる一時セッションIDと、ユーザ認証用のチャレンジストリングとを返送する処理と、認証方式が非サポート、または、ユーザ名が不正であればエラーパケットを返送する処理と、を含む。 As described above, the processes of FIGS. 21, 24, and 26 support the authentication method, and if the user name is correct, the temporary session ID used for the session establishment request for performing user authentication, the challenge string for user authentication, And a process of returning an error packet if the authentication method is not supported or the user name is invalid.
 図27は、図26のステップS2610で生成されるパケットの一例を示す説明図である。図27に示すパケットは、一時セッションIDとユーザ認証用のチャレンジストリングとを返送するIPMIメッセージである。 FIG. 27 is an explanatory diagram showing an example of the packet generated in step S2610 of FIG. The packet shown in FIG. 27 is an IPMI message that returns a temporary session ID and a challenge string for user authentication.
 また、ステップS2610のパケット受信後のリモートマネジメントシステム020は、リモートマネジメントシステム020内部であらかじめ保持しているパスワードと、受信したパケット内の認証用のチャレンジストリングとを用いて、認証情報であるAuthentication Codeを生成する。Authentication Codeは、リモートマネジメントシステム020内部のパスワードと、受信パケットから取り出した一時セッションIDと、受信パケットから取り出したチャレンジストリングとを文字列として結合し、結合した文字列を、リモートマネジメントシステム020が指定するAuthentication Type(認証方式)であるハッシュ関数に与えることにより生成されるハッシュ値である。そして、リモートマネジメントシステム020は、セッション確立すべく、仮想マシン用IPMIプロセス053に、受信パケットから取り出した一時セッションIDと、生成したハッシュ値とを含むパケットを、セッション確立要求を示すIPMIメッセージとして返すことになる。 In addition, the remote management system 020 after receiving the packet in step S2610 uses the password stored in advance in the remote management system 020 and the challenge string for authentication in the received packet, as an authentication code that is authentication information. Is generated. The Authentication Code combines the internal password of the remote management system 020, the temporary session ID extracted from the received packet, and the challenge string extracted from the received packet as a character string, and the remote management system 020 specifies the combined character string. This is a hash value generated by giving to a hash function that is an Authentication Type (authentication method). The remote management system 020 returns a packet including the temporary session ID extracted from the received packet and the generated hash value as an IPMI message indicating a session establishment request to the virtual machine IPMI process 053 in order to establish a session. It will be.
 図28は、仮想マシン用IPMIプロセス053によるセッション確立処理手順例を示すフローチャート(その5)である。図28のステップS2801は、図16のステップS2805において、受信パケット内のNetwork Function CodeがApplication requestを意味する「6h」で、かつ、コマンド番号がActivate Sessionを意味する「3Ah」である場合(ステップS2805:Yes)に実行される。すなわち、受信パケットがセッション確立要求を示すIPMIメッセージである場合に、ステップS2801が実行される。 FIG. 28 is a flowchart (part 5) illustrating an example of a session establishment processing procedure by the virtual machine IPMI process 053. Step S2801 in FIG. 28 is the case where the network function code in the received packet is “6h” meaning Application request and the command number is “3Ah” meaning Activate Session in step S2805 in FIG. 16 (step S2801). (S2805: Yes). That is, step S2801 is executed when the received packet is an IPMI message indicating a session establishment request.
 ステップS2801では、仮想マシン用IPMIプロセス053は、一時セッションテーブル130が空であるか否かを判断する(ステップS2801)。空である場合(ステップS2801:Yes)、ステップS2806に移行する。一方、空でない場合(ステップS2801:No)、仮想マシン用IPMIプロセス053は、一時セッションテーブル130の一つ目(先頭)のエントリを対象エントリに設定し(ステップS2802)、受信パケット内の一時セッションIDが対象エントリのセッションID131と一致するか否かを判断する(ステップS2803)。 In step S2801, the virtual machine IPMI process 053 determines whether or not the temporary session table 130 is empty (step S2801). If it is empty (step S2801: YES), the process proceeds to step S2806. On the other hand, if it is not empty (step S2801: NO), the virtual machine IPMI process 053 sets the first (first) entry of the temporary session table 130 as the target entry (step S2802), and the temporary session in the received packet. It is determined whether or not the ID matches the session ID 131 of the target entry (step S2803).
 一致する場合(ステップS2803:Yes)、図28のステップS1702に移行する。一方、一致しない場合(ステップS2603:No)、仮想マシン用IPMIプロセス053は、現在の対象エントリが一時セッションテーブル130の最後のエントリであるか否かを判断する(ステップS2804)。最後のエントリでない場合(ステップS2805:No)、仮想マシン用IPMIプロセス053は、つぎのエントリを対象エントリに設定して(ステップS2805)、ステップS2803に戻る。 If they match (step S2803: YES), the process proceeds to step S1702 in FIG. On the other hand, if they do not match (step S2603: NO), the virtual machine IPMI process 053 determines whether or not the current target entry is the last entry in the temporary session table 130 (step S2804). If it is not the last entry (step S2805: NO), the virtual machine IPMI process 053 sets the next entry as the target entry (step S2805), and returns to step S2803.
 ステップS2804において、現在の対象エントリが一時セッションテーブル130の最後のエントリである場合(ステップS2804:Yes)、ステップS2806に移行する。 In step S2804, when the current target entry is the last entry in the temporary session table 130 (step S2804: Yes), the process proceeds to step S2806.
 ステップS2806では、仮想マシン用IPMIプロセス053は、以下の情報を含むパケットを生成する(ステップS2806)。 In step S2806, the virtual machine IPMI process 053 generates a packet including the following information (step S2806).
・Network Function Code:「7h」(Application Responce)
・セッションID:受信パケット内の一時セッションID
・コマンド番号:「3Ah」(Activate Session)
・Completion Code:「085」(セッションID無効)
・ Network Function Code: “7h” (Application Response)
Session ID: Temporary session ID in the received packet
Command number: “3Ah” (Activate Session)
-Completion Code: “085” (session ID invalid)
 そして、仮想マシン用IPMIプロセス053は、送信先である仮想マシン用IPMIプロセス053から、受信したパケットの送信元であるリモートマネジメントシステム020に、ステップS2806で生成したパケットを返送する(ステップS2807)。このあと、図16のステップS1602に戻り、再度パケットを待ち受ける。 Then, the virtual machine IPMI process 053 returns the packet generated in step S2806 from the virtual machine IPMI process 053, which is the transmission destination, to the remote management system 020, which is the transmission source of the received packet (step S2807). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
 図29は、図28のステップS2806で生成されるパケットの一例を示す説明図である。図29に示すパケットは、リモートマネジメントシステム020からの受信パケットのセッションIDが不正であるために、一時セッションIDが無効であることを示すIPMIメッセージである。 FIG. 29 is an explanatory diagram showing an example of the packet generated in step S2806 of FIG. The packet shown in FIG. 29 is an IPMI message indicating that the temporary session ID is invalid because the session ID of the received packet from the remote management system 020 is invalid.
 図30は、仮想マシン用IPMIプロセス053によるセッション確立処理手順例を示すフローチャート(その6)である。図30のステップS3001は、図28のステップS2803において、受信パケット内の一時セッションIDが対象エントリのセッションID131と一致する場合(ステップS2803:Yes)に実行される。 FIG. 30 is a flowchart (part 6) illustrating an example of a session establishment processing procedure by the virtual machine IPMI process 053. Step S3001 in FIG. 30 is executed when the temporary session ID in the received packet matches the session ID 131 of the target entry in step S2803 in FIG. 28 (step S2803: Yes).
 ステップS3001では、仮想マシン用IPMIプロセス053は、図28のステップS2802で設定された一時セッションテーブル130の対象エントリのセッションID131、パスワード133およびチャレンジストリング134の値を連結した文字列を生成する。仮想マシン用IPMIプロセス053は、生成した文字列を、受信パケット内のAuthentication Type(認証方式)であるハッシュ関数に与えることにより、当該文字列のハッシュ値を生成する(ステップS3001)。 In step S3001, the virtual machine IPMI process 053 generates a character string concatenating the values of the session ID 131, password 133, and challenge string 134 of the target entry of the temporary session table 130 set in step S2802 of FIG. The virtual machine IPMI process 053 generates the hash value of the character string by giving the generated character string to the hash function that is the Authentication Type (authentication method) in the received packet (step S3001).
 つぎに、仮想マシン用IPMIプロセス053は、生成したハッシュ値と受信パケット内のAuthentication Codeとが一致するか否かを判断する(ステップS3002)。Authentication Codeは、リモートマネジメントシステム020が、その内部に保持するパスワードと、仮想マシン用IPMIプロセス053からの受信パケットから取り出した一時セッションIDと、当該受信パケットから取り出したチャレンジストリングとを文字列として結合し、結合した文字列を、リモートマネジメントシステム020が指定するAuthentication Type(認証方式)であるハッシュ関数に与えることにより生成されるハッシュ値である。 Next, the virtual machine IPMI process 053 determines whether or not the generated hash value matches the Authentication Code in the received packet (step S3002). The Authentication Code combines the password held by the remote management system 020, the temporary session ID extracted from the received packet from the virtual machine IPMI process 053, and the challenge string extracted from the received packet as a character string. The hash value generated by giving the combined character string to a hash function which is an Authentication Type (authentication method) designated by the remote management system 020.
 一致しない場合(ステップS3002:No)、認証失敗を意味するため、仮想マシン用IPMIプロセス053は、以下の情報を含むパケットを生成する(ステップS3007)。 If they do not match (step S3002: No), this means that the authentication has failed, so the virtual machine IPMI process 053 generates a packet including the following information (step S3007).
・Network Function Code:「7h」(Application Responce)
・セッションID:受信パケット内の一時セッションID
・コマンド番号:「3Ah」(Activate Session)
・Completion Code:「CDh」(認証が無効のためコマンド不正)
・ Network Function Code: “7h” (Application Response)
Session ID: Temporary session ID in the received packet
Command number: “3Ah” (Activate Session)
-Completion Code: "CDh" (command invalid because authentication is invalid)
 そして、仮想マシン用IPMIプロセス053は、送信先である仮想マシン用IPMIプロセス053から、受信したパケットの送信元であるリモートマネジメントシステム020に、ステップS3007で生成したパケットを返送する(ステップS3008)。このあと、図16のステップS1602に戻り、再度パケットを待ち受ける。 Then, the virtual machine IPMI process 053 returns the packet generated in step S3007 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S3008). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
 一方、ステップS3002で一致した場合(ステップS3002:Yes)、仮想マシン用IPMIプロセス053は、セッションテーブル120の一つ目(先頭)のエントリを対象エントリに設定し(ステップS3003)、対象エントリのユーザ名122が空であるか否かを判断する(ステップS3004)。ユーザ名122が空である場合(ステップS3004:Yes)、対象エントリのセッションID121がまだセッション確立に使われていないことを示し、図33のステップS3301に移行する。 On the other hand, if they match in step S3002 (step S3002: Yes), the virtual machine IPMI process 053 sets the first (first) entry of the session table 120 as the target entry (step S3003), and the user of the target entry It is determined whether the name 122 is empty (step S3004). If the user name 122 is empty (step S3004: YES), it indicates that the session ID 121 of the target entry has not yet been used for session establishment, and the process proceeds to step S3301 in FIG.
 一方、ユーザ名122が空でない場合(ステップS3004:No)、対象エントリのセッションID121はセッション確立済みである。仮想マシン用IPMIプロセス053は、対象エントリが最後のエントリであるか否かを判断する(ステップS3005)。最後のエントリでない場合(ステップS3005:No)、仮想マシン用IPMIプロセス053は、つぎのエントリを対象エントリに設定し(ステップS3006)、ステップS3004に戻る。一方、最後のエントリである場合(ステップS3005:Yes)、図35のステップS3501に移行する。 On the other hand, when the user name 122 is not empty (step S3004: No), the session ID 121 of the target entry has already been established. The virtual machine IPMI process 053 determines whether or not the target entry is the last entry (step S3005). If it is not the last entry (step S3005: No), the virtual machine IPMI process 053 sets the next entry as the target entry (step S3006) and returns to step S3004. On the other hand, if it is the last entry (step S3005: Yes), the process proceeds to step S3501 in FIG.
 図31は、図30のステップS3001で生成されるハッシュ値の生成元となるパケットの一例を示す説明図である。図31に示すパケットは、認証情報(Authentication TypeおよびAuthentication Code)を含んだセッション確立要求を示すIPMIメッセージである。 FIG. 31 is an explanatory diagram showing an example of a packet that is a generation source of the hash value generated in step S3001 of FIG. The packet shown in FIG. 31 is an IPMI message indicating a session establishment request including authentication information (Authentication Type and Authentication Code).
 図32は、図30のステップS3007で生成されるパケットの一例を示す説明図である。図32に示すパケットは、認証失敗を示すIPMIメッセージである。 FIG. 32 is an explanatory diagram showing an example of the packet generated in step S3007 of FIG. The packet shown in FIG. 32 is an IPMI message indicating authentication failure.
 図33は、仮想マシン用IPMIプロセス053によるセッション確立処理手順例を示すフローチャート(その7)である。図33のステップS3301は、図30のステップS3004において、対象エントリのユーザ名122が空である場合(ステップS3004:Yes)に実行される。すなわち、セッションテーブル120の対象エントリのセッションID121は、セッションの確立に利用されていないことを意味する。 FIG. 33 is a flowchart (part 7) illustrating an example of a session establishment processing procedure by the virtual machine IPMI process 053. Step S3301 in FIG. 33 is executed when the user name 122 of the target entry is empty in step S3004 in FIG. 30 (step S3004: Yes). That is, it means that the session ID 121 of the target entry in the session table 120 is not used for session establishment.
 ステップS3301では、仮想マシン用IPMIプロセス053は、セッションテーブル120の対象エントリに、ステップS2803の処理で、一時セッションテーブル130の対象エントリにおいて受信パケット内のセッションIDと一致した対象エントリのユーザ名132およびパスワード133の値を登録する(ステップS3301)。 In step S3301, the virtual machine IPMI process 053 adds the user name 132 of the target entry that matches the session ID in the received packet in the target entry of the temporary session table 130 to the target entry of the session table 120 in the process of step S2803. The value of the password 133 is registered (step S3301).
 登録後、仮想マシン用IPMIプロセス053は、管理OS040のタイマ機能041に設定された受信パケット内の一時セッションIDに対するタイマ設定を解除し(ステップS3302)、以下の情報を含むパケットを生成する(ステップS3303)。 After registration, the virtual machine IPMI process 053 releases the timer setting for the temporary session ID in the received packet set in the timer function 041 of the management OS 040 (step S3302), and generates a packet including the following information (step S3302). S3303).
・Network Function Code:「7h」Application Responce
・セッションID:受信パケット内の一時セッションID
・コマンド番号:「3Ah」(Activate Session)
・Completion Code:「0h」(コマンド正常終了)
・新セッションID:ステップS3301で操作したセッションテーブル120のエントリのセッションID121の値
・Authentication Type:受信パケット内のAuthentication Type
・Authentication Code:一時セッションテーブル130において受信パケット内のセッションIDと一致した対象エントリのセッションID131、パスワード133、チャレンジストリング134の値を文字列として結合し、当該文字列を、受信パケット内のAuthentication Type(認証方式)であるハッシュ関数に与えることにより生成したハッシュ値
・ Network Function Code: “7h” Application Response
Session ID: Temporary session ID in the received packet
Command number: “3Ah” (Activate Session)
-Completion Code: "0h" (command normal termination)
New session ID: value of the session ID 121 of the entry in the session table 120 operated in step S3301. Authentication Type: Authentication Type in the received packet
Authentication Code: Combines the session ID 131, password 133, and challenge string 134 values of the target entry that match the session ID in the received packet in the temporary session table 130 as a character string, and the character string is the Authentication Type in the received packet. Hash value generated by giving to the hash function (authentication method)
 そして、仮想マシン用IPMIプロセス053は、送信先である仮想マシン用IPMIプロセス053から、受信したパケットの送信元であるリモートマネジメントシステム020に、ステップS1804で生成したパケットを返送する(ステップS3304)。 Then, the virtual machine IPMI process 053 returns the packet generated in step S1804 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S3304).
 受信パケット内のセッションIDである一時セッションIDは、以後セッションで利用しないため、仮想マシン用IPMIプロセス053は、一時セッションテーブル130において受信パケット内のセッションIDと一致するセッションID131の値(一時セッションID)を有するエントリを削除する(ステップS3305)。そして、仮想マシン用IPMIプロセス053は、管理OS040のタイマ機能041により、セッションテーブル120の当該対象エントリにおけるセッションID121宛に60秒後に通知が来るようタイマ006を設定する(ステップS3306)。このあと、図16のステップS1602に戻り、再度パケットを待ち受ける。 Since the temporary session ID, which is the session ID in the received packet, is not used later in the session, the virtual machine IPMI process 053 causes the value of the session ID 131 that matches the session ID in the received packet in the temporary session table 130 (temporary session ID). ) Is deleted (step S3305). The virtual machine IPMI process 053 sets the timer 006 so that the notification is received 60 seconds later to the session ID 121 in the target entry of the session table 120 by the timer function 041 of the management OS 040 (step S3306). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
 図34は、図33のステップS3303で生成されるパケットの一例を示す説明図である。図34に示すパケットは、問題なく正式にセッションを確立するための新セッションIDを返送するパケットである。 FIG. 34 is an explanatory diagram showing an example of the packet generated in step S3303 of FIG. The packet shown in FIG. 34 is a packet that returns a new session ID for officially establishing a session without any problem.
 図35は、仮想マシン用IPMIプロセス053によるセッション確立処理手順例を示すフローチャート(その8)である。図35のステップS3501は、図30のステップS3005において、対象エントリが最後のエントリである場合(ステップS3005:Yes)に実行される。すなわち、セッションの確立に利用されていないセッションIDがセッションテーブル120に存在しないことを示す。当該状況は、セッションを確立するための空きセッションがないことを意味する。 FIG. 35 is a flowchart (No. 8) showing an example of the session establishment processing procedure by the virtual machine IPMI process 053. Step S3501 in FIG. 35 is executed when the target entry is the last entry in step S3005 in FIG. 30 (step S3005: Yes). In other words, it indicates that a session ID that is not used for establishing a session does not exist in the session table 120. This situation means that there is no free session for establishing a session.
 ステップS3501では、仮想マシン用IPMIプロセス053は、管理OS040のタイマ機能041によって設定された受信パケット内の一時セッションIDに対するタイマ006の設定を解除し(ステップS3501)、以下の情報を含むパケットを生成する(ステップS3502)。 In step S3501, the virtual machine IPMI process 053 cancels the setting of the timer 006 for the temporary session ID in the received packet set by the timer function 041 of the management OS 040 (step S3501), and generates a packet including the following information: (Step S3502).
・Network Function Code:「7h」(Application Responce)
・セッションID:受信パケット内の一時セッションID
・コマンド番号:「3Ah」(Activate Session)
・Completion Code:「81h」(セッションIDの空きがない)
・Authentication Type:受信パケット内のAuthentication Type
・Authentication Code:一時セッションテーブル130において受信パケット内のセッションIDと一致した対象エントリのセッションID131、パスワード133、チャレンジストリング134の値を文字列として結合し、当該文字列を、受信パケット内のAuthentication Type(認証方式)であるハッシュ関数に与えることにより生成したハッシュ値
・ Network Function Code: “7h” (Application Response)
Session ID: Temporary session ID in the received packet
Command number: “3Ah” (Activate Session)
Completion Code: “81h” (no session ID available)
・ Authentication Type: Authentication Type in the received packet
Authentication Code: Combines the session ID 131, password 133, and challenge string 134 values of the target entry that match the session ID in the received packet in the temporary session table 130 as a character string, and the character string is the Authentication Type in the received packet. Hash value generated by giving to the hash function (authentication method)
 そして、仮想マシン用IPMIプロセス053は、送信先である仮想マシン用IPMIプロセス053から、受信したパケットの送信元であるリモートマネジメントシステム020に、ステップS1804で生成したパケットを返送する(ステップS3503)。 Then, the virtual machine IPMI process 053 returns the packet generated in step S1804 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S3503).
 受信パケット内のセッションIDである一時セッションIDは、以後セッションで利用しないため、仮想マシン用IPMIプロセス053は、一時セッションテーブル130において受信パケット内のセッションIDと一致するセッションID131の値(一時セッションID)を有するエントリを削除する(ステップS3504)。このあと、図16のステップS1602に戻り、再度パケットを待ち受ける。 Since the temporary session ID, which is the session ID in the received packet, is not used later in the session, the virtual machine IPMI process 053 causes the value of the session ID 131 that matches the session ID in the received packet in the temporary session table 130 (temporary session ID). ) Is deleted (step S3504). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
 図36は、図35のステップS3502で生成されるパケットの一例を示す説明図である。図36に示すパケットは、正式にセッションを確立するためのセッションIDが不足していることを示すパケットである。 FIG. 36 is an explanatory diagram showing an example of the packet generated in step S3502 of FIG. The packet shown in FIG. 36 is a packet indicating that a session ID for officially establishing a session is insufficient.
 このように、図28~図36では、リモートマネジメントシステム020から仮想マシン用IPMIプロセス053に認証情報によるセッション確立要求のパケットが届いた際に、当該パケット内のセッションIDが一時的に割り当てた一時セッションIDに一致し、当該パケットの認証が成功し、かつ、正式に確立するセッションのセッションIDに空きがある場合、仮想マシン用IPMIプロセス053は、正式なセッション確立用の新規セッションIDを含むパケット(図34)を返送する。また、受信パケット内のセッションIDが不正の場合(図29)、認証が失敗した場合(図32)、セッションIDに空きがない場合(図36)のいずれかの場合、仮想マシン用IPMIプロセス053は、エラーを返す処理を行う。 As described above, in FIGS. 28 to 36, when a session establishment request packet based on authentication information arrives from the remote management system 020 to the virtual machine IPMI process 053, the session ID in the packet is temporarily assigned. When the packet ID matches, the authentication of the packet is successful, and the session ID of the session to be officially established is free, the virtual machine IPMI process 053 sends a packet including a new session ID for formal session establishment. (FIG. 34) is returned. If the session ID in the received packet is invalid (FIG. 29), if authentication fails (FIG. 32), or if there is no available session ID (FIG. 36), the virtual machine IPMI process 053 Performs processing to return an error.
 認証が成功してセッションが確立すると、リモートマネジメントシステム020は、仮想マシン用IPMIプロセス053から受け取った新セッションIDにて、パケットの認証情報とコマンド実行要求とを含むパケットを、仮想マシン用IPMIプロセス053に送信する。 When the authentication is successful and the session is established, the remote management system 020 uses the new session ID received from the virtual machine IPMI process 053 to transmit the packet including the packet authentication information and the command execution request to the virtual machine IPMI process. 053.
 このパケットの認証情報とは、リモートマネジメントシステム020が指定するAuthentication Typeと、セッション確立時に認証を行ったユーザ名に対応するパスワードと、仮想マシン用IPMIプロセス053から受け取った新セッションIDと、受信パケットの一部情報とを文字列として結合し、当該文字列を、リモートマネジメントシステム020が指定するAuthentication Typeであるハッシュ関数に与えることにより生成されたハッシュ値(Authentication Code)である。 The authentication information of this packet includes the authentication type specified by the remote management system 020, the password corresponding to the user name authenticated at the time of session establishment, the new session ID received from the virtual machine IPMI process 053, and the received packet. Is a hash value (Authentication Code) generated by combining the partial information with a hash function that is an Authentication Type specified by the remote management system 020.
 また、受信パケットの一部情報とは、当該パケットが起動要求または電源断要求を示すIPMIメッセージである場合、Network Function Codeと、コマンド番号と、Chassis Controlとを文字列として結合した情報であり、当該パケットがセッション断要求を示すIPMIメッセージである場合、Network Function Codeと、コマンド番号とを文字列として結合した情報である。以上により、ユーザ認証によるセッション確立までの処理が完了する。 In addition, the partial information of the received packet is information obtained by combining the network function code, the command number, and the chassis control as a character string when the packet is an IPMI message indicating a startup request or a power-off request. When the packet is an IPMI message indicating a session disconnection request, it is information obtained by combining a network function code and a command number as a character string. Thus, the process up to session establishment by user authentication is completed.
 <セッション確立後のパケットの認証データ検証処理>
 つぎに、図37~図41を用いて、セッション確立後のパケットの認証データ検証処理について説明する。
<Authentication data verification processing for packets after session establishment>
Next, an authentication data verification process for a packet after session establishment will be described with reference to FIGS.
 図37は、仮想マシン用IPMIプロセス053による認証データ検証処理手順例を示すフローチャート(その1)である。図37のステップS3701は、図16のステップS1606において、受信パケット内のNetwork Function Codeおよびコマンド番号が、「6h」で、かつ、「3Ah」でない場合(ステップS1606:No)に実行される。 FIG. 37 is a flowchart (part 1) illustrating an example of the authentication data verification processing procedure by the virtual machine IPMI process 053. Step S3701 in FIG. 37 is executed when the network function code and the command number in the received packet are “6h” and not “3Ah” in step S1606 in FIG. 16 (step S1606: No).
 ステップS3701では、仮想マシン用IPMIプロセス053は、セッションテーブル120の一つ目(先頭)のエントリを対象エントリに設定し(ステップS3701)、受信パケット内のセッションIDと対象エントリのセッションIDとが一致するか否かを判断する(ステップS3702)。 In step S3701, the virtual machine IPMI process 053 sets the first (first) entry of the session table 120 as the target entry (step S3701), and the session ID in the received packet matches the session ID of the target entry. It is determined whether or not to perform (step S3702).
 一致する場合(ステップS3702:Yes)、図38のステップS3801に移行する。一方、一致しない場合(ステップS3702:No)、仮想マシン用IPMIプロセス053は、セッションテーブル120の現在の対象エントリが最後のエントリであるか否かを判断する(ステップS3703)。最後のエントリでない場合(ステップS3703:No)、仮想マシン用IPMIプロセス053は、つぎのエントリを対象エントリに設定して(ステップS2105)、ステップS3702に戻る。一方、最後のエントリである場合(ステップS3703:Yes)、セッションIDが一致するエントリがセッションテーブル120から見つからなかったことになり、図40のステップS4001に移行する。 If they match (step S3702: YES), the process proceeds to step S3801 in FIG. On the other hand, if they do not match (step S3702: NO), the virtual machine IPMI process 053 determines whether or not the current target entry in the session table 120 is the last entry (step S3703). If it is not the last entry (step S3703: NO), the virtual machine IPMI process 053 sets the next entry as the target entry (step S2105), and returns to step S3702. On the other hand, if it is the last entry (step S3703: YES), it means that no entry with the matching session ID was found from the session table 120, and the process proceeds to step S4001 in FIG.
 図38は、仮想マシン用IPMIプロセス053による認証データ検証処理手順例を示すフローチャート(その2)である。図38のステップS3801は、図37のステップS3702において、セッションIDが一致した場合(ステップS3702:Yes)に実行される。 FIG. 38 is a flowchart (part 2) of the authentication data verification processing procedure example by the virtual machine IPMI process 053. Step S3801 in FIG. 38 is executed when the session IDs match in step S3702 in FIG. 37 (step S3702: Yes).
 ステップS3801では、仮想マシン用IPMIプロセス053は、ユーザ情報テーブル051の一つ目(先頭)のエントリを対象エントリに設定し(ステップS3801)、セッションテーブル120の対象エントリ内のユーザ名122とステップS3801で設定されたユーザ情報テーブル051の対象エントリ内のユーザ名111とが一致するか否かを判断する(ステップS3802)。 In step S3801, the virtual machine IPMI process 053 sets the first (first) entry of the user information table 051 as a target entry (step S3801), and the user name 122 in the target entry of the session table 120 and step S3801. It is determined whether or not the user name 111 in the target entry of the user information table 051 set in step S1 matches (step S3802).
 一致する場合(ステップS3802:Yes)、図39のステップS2302に移行する。一方、一致しない場合(ステップS3802:No)、仮想マシン用IPMIプロセス053は、ユーザ情報テーブル051の現在の対象エントリが最後のエントリであるか否かを判断する(ステップS3803)。最後のエントリでない場合(ステップS3803:No)、仮想マシン用IPMIプロセス053は、つぎのエントリを対象エントリに設定して(ステップS3804)、ステップS3802に戻る。一方、最後のエントリである場合(ステップS3803:Yes)、ユーザ名が一致するエントリがユーザ情報テーブル051から見つからなかったことになり、図40のステップS4001に移行する。 If they match (step S3802: YES), the process proceeds to step S2302 in FIG. On the other hand, if they do not match (step S3802: No), the virtual machine IPMI process 053 determines whether or not the current target entry of the user information table 051 is the last entry (step S3803). If it is not the last entry (step S3803: NO), the virtual machine IPMI process 053 sets the next entry as the target entry (step S3804), and returns to step S3802. On the other hand, if it is the last entry (step S3803: YES), the entry having the same user name is not found from the user information table 051, and the process proceeds to step S4001 in FIG.
 図39は、仮想マシン用IPMIプロセス053による認証データ検証処理手順例を示すフローチャート(その3)である。図39のステップS3901は、図38のステップS3802において、ユーザ名が一致した場合(ステップS3802:Yes)に実行される。 FIG. 39 is a flowchart (part 3) illustrating an example of the authentication data verification processing procedure by the virtual machine IPMI process 053. Step S3901 in FIG. 39 is executed when the user names match in step S3802 in FIG. 38 (step S3802: Yes).
 仮想マシン用IPMIプロセス053は、受信パケット内のAuthentication Typeの認証方式であるハッシュ関数に、セッションテーブル120の対象エントリのセッションID121と、パスワード123と、受信パケットの一部情報とを結合した文字列を与えることによりハッシュ値を生成する(ステップS3901)。受信パケットの一部情報とは、受信パケット内のNetwork Function Codeとコマンド番号とを結合した文字列である。ただし、受信パケットにChassis Controlがある場合は、当該文字列ではなく、受信パケット内のNetwork Function Codeとコマンド番号とChassis Controlとを結合した文字列が採用される。 The virtual machine IPMI process 053 is a character string obtained by combining the hash ID, which is the authentication type authentication method in the received packet, with the session ID 121 of the target entry of the session table 120, the password 123, and some information of the received packet. To generate a hash value (step S3901). The partial information of the received packet is a character string obtained by combining the network function code and the command number in the received packet. However, when the received packet has a chassis control, a character string in which the network function code, the command number, and the chassis control in the received packet are combined is used instead of the character string.
 仮想マシン用IPMIプロセス053は、生成したハッシュ値と受信パケット内のAuthentication Codeとが一致するか否かを判断する(ステップS3902)。一致しない場合(ステップS3902:No)、図40のステップS4001に移行する。一方、一致する場合(ステップS3902:Yes)、受信パケット内のNetwork Function CodeがChassis Requestの意味である「0h」で、かつ、コマンド番号がChassis Controlの意味である「2h」であるか否かを判断する(ステップS3903)。 The virtual machine IPMI process 053 determines whether or not the generated hash value matches the Authentication Code in the received packet (step S3902). If they do not match (step S3902: NO), the process proceeds to step S4001 in FIG. On the other hand, if they match (step S3902: Yes), whether or not the Network Function Code in the received packet is “0h” meaning the Chassis Request, and the command number is “2h” meaning the Chassis Control. Is determined (step S3903).
 「0h」かつ「2h」である場合(ステップS3903:Yes)、図44のステップS4401に移行する。一方、「0h」かつ「2h」でない場合(ステップS3903:No)、仮想マシン用IPMIプロセス053は、受信パケット内のNetwork Function CodeがApplication Requestの意味である「6h」で、かつ、コマンド番号がClose Sessionの意味である「3Ch」であるか否かを判断する(ステップS3904)。「6h」かつ「3Ch」である場合(ステップS3904:Yes)、図50のステップS5001に移行する。一方、「6h」かつ「3Ch」でない場合(ステップS3904:No)、図42のステップS4201に移行する。 If it is “0h” and “2h” (step S3903: YES), the process proceeds to step S4401 in FIG. On the other hand, if it is not “0h” and “2h” (step S3903: No), the IPMI process for virtual machine 053 has “6h” in which the Network Function Code in the received packet means “Application Request” and the command number is “6h”. It is determined whether or not “3Ch” which is the meaning of the Close Session (step S3904). When it is “6h” and “3Ch” (step S3904: Yes), the process proceeds to step S5001 in FIG. On the other hand, if it is not “6h” and “3Ch” (step S3904: No), the process proceeds to step S4201 in FIG.
 図40は、仮想マシン用IPMIプロセス053による認証データ検証処理手順例を示すフローチャート(その4)である。図40のステップS4001は、以下のいずれかに該当する場合に実行される。 FIG. 40 is a flowchart (part 4) illustrating an example of the authentication data verification processing procedure performed by the virtual machine IPMI process 053. Step S4001 in FIG. 40 is executed when any of the following applies.
・図37のステップS3703において、受信パケットのセッションIDがセッションテーブル120に存在しなかった場合、すなわち、受信パケットのセッションIDが不正である場合(ステップS3703:Yes)
・図38のステップS3803でセッションテーブル120内のユーザ名がユーザ情報テーブル051に存在しなかった場合、すなわち、認証したユーザ名が不正である場合(ステップS3803:Yes)
・図39のステップS3902で認証失敗した場合(ステップS3902:No)
When the session ID of the received packet does not exist in the session table 120 in step S3703 of FIG. 37, that is, when the session ID of the received packet is invalid (step S3703: Yes).
If the user name in the session table 120 does not exist in the user information table 051 in step S3803 in FIG. 38, that is, if the authenticated user name is invalid (step S3803: Yes).
When authentication fails in step S3902 of FIG. 39 (step S3902: No)
 ステップS4001では、仮想マシン用IPMIプロセス053は、以下の情報を含むパケットを生成する(ステップS4001)。 In step S4001, the virtual machine IPMI process 053 generates a packet including the following information (step S4001).
・Network Function Code:受信パケット内のNetwork Function Codeの値に1を足した値
・コマンド番号:受信パケットと同値
・セッションID:受信パケットと同値
・Completion Code:「CDh」(コマンドが不正)
-Network Function Code: Value obtained by adding 1 to the value of Network Function Code in the received packet-Command number: Same value as received packet-Session ID: Same value as received packet-Completion Code: "CDh" (command is invalid)
 そして、仮想マシン用IPMIプロセス053は、送信先である仮想マシン用IPMIプロセス053から、受信したパケットの送信元であるリモートマネジメントシステム020に、ステップS4001で生成したパケットを返送する(ステップS4002)。このあと、図16のステップS1602に戻り、再度パケットを待ち受ける。 Then, the virtual machine IPMI process 053 returns the packet generated in step S4001 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S4002). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
 図41は、図40のステップS4001で生成されるパケットの一例を示す説明図である。図41に示すパケットは、セッション確立後において、仮想マシン用IPMIプロセス053からリモートマネジメントシステム020へ、ユーザ認証が失敗したことを伝達するIPMIメッセージである。 FIG. 41 is an explanatory diagram showing an example of the packet generated in step S4001 of FIG. The packet shown in FIG. 41 is an IPMI message that conveys that user authentication has failed from the virtual machine IPMI process 053 to the remote management system 020 after the session is established.
 図42は、仮想マシン用IPMIプロセス053による認証データ検証処理手順例を示すフローチャート(その5)である。図42のステップS4201は、図39のステップS3904において、「6h」かつ「3Ch」でない場合(ステップS3904:No)に実行される。すなわち、図42は、仮想マシン用IPMIプロセス053によるエラー処理例を示す。 FIG. 42 is a flowchart (part 5) illustrating an example of the authentication data verification processing procedure performed by the virtual machine IPMI process 053. Step S4201 of FIG. 42 is executed when it is not “6h” and “3Ch” in Step S3904 of FIG. 39 (Step S3904: No). That is, FIG. 42 shows an example of error processing by the virtual machine IPMI process 053.
 ステップS4201では、仮想マシン用IPMIプロセス053は、以下の情報を含むパケットを生成する(ステップS4201)。 In step S4201, the virtual machine IPMI process 053 generates a packet including the following information (step S4201).
・Network Function Code:受信パケットのNetwork Function Codeの値に1を足した値
・コマンド番号:受信パケットと同値
・セッションID:受信パケットと同値
・Completion Code:「C1h」(無効なコマンド)
・Authentication Type:受信パケット内のAuthentication Type
・Authentication Code:受信パケット内のAuthentication Typeの認証方式であるハッシュ関数に、セッションテーブル120内の図37のステップS3702で一致したセッションIDのエントリにおけるセッションID、パスワード、および受信パケットの一部情報を結合した文字列を与えることにより生成されたハッシュ値
• Network Function Code: Value obtained by adding 1 to the value of Network Function Code of the received packet • Command number: Same value as the received packet • Session ID: Same value as the received packet • Completion Code: “C1h” (invalid command)
・ Authentication Type: Authentication Type in the received packet
Authentication Code: Session ID, password, and partial information of the received packet in the session ID entry matched in step S3702 of FIG. 37 in the session table 120 are added to the hash function that is the authentication method of Authentication Type in the received packet. A hash value generated by giving the combined string
 受信パケットの一部情報とは、Network Function Codeと、コマンド番号とを結合した文字列である。 The partial information of the received packet is a character string obtained by combining the network function code and the command number.
 そして、仮想マシン用IPMIプロセス053は、送信先である仮想マシン用IPMIプロセス053から、受信したパケットの送信元であるリモートマネジメントシステム020に、ステップS4201で生成したパケットを返送する(ステップS4202)。このあと、図16のステップS1602に戻り、再度パケットを待ち受ける。 Then, the virtual machine IPMI process 053 returns the packet generated in step S4201 from the virtual machine IPMI process 053, which is the transmission destination, to the remote management system 020, which is the transmission source of the received packet (step S4202). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
 図43は、図42のステップS4201で生成されるパケットの一例を示す説明図である。図43に示すパケットは、セッション確立後において、仮想マシン用IPMIプロセス053からリモートマネジメントシステム020へ、コマンド番号が無効であることを伝達するIPMIメッセージである。以上により、セッション確立後のパケットの認証データ検証処理が完了する。 FIG. 43 is an explanatory diagram showing an example of the packet generated in step S4201 of FIG. The packet shown in FIG. 43 is an IPMI message that conveys that the command number is invalid from the virtual machine IPMI process 053 to the remote management system 020 after the session is established. Thus, the authentication data verification process for the packet after the session is established is completed.
 <仮想マシン起動処理>
 つぎに、図44~図49を用いて、物理マシン001と同じIPMIで仮想マシン06を起動させる仮想マシン起動処理について説明する。
<Virtual machine startup processing>
Next, a virtual machine activation process for activating the virtual machine 06 with the same IPMI as that of the physical machine 001 will be described with reference to FIGS.
 図44は、仮想マシン用IPMIプロセス053による仮想マシン電源操作要求処理手順例を示すフローチャート(その1)である。図44のステップS4401は、図39のステップS3903において、受信パケット内のNetwork Function Code「0h」で、かつ、コマンド番号が「2h」である場合に実行される。すなわち、ステップS4401は、受信パケットが電源操作要求を示すIPMIメッセージである場合に実行される。 FIG. 44 is a flowchart (part 1) illustrating an example of a virtual machine power supply operation request processing procedure by the virtual machine IPMI process 053. Step S4401 of FIG. 44 is executed when the network function code “0h” in the received packet and the command number are “2h” in step S3903 of FIG. That is, step S4401 is executed when the received packet is an IPMI message indicating a power operation request.
 ステップS4401では、仮想マシン用IPMIプロセス053は、受信パケット内のChassis ControlがPower downを意味する「0」であるか否かを判断する(ステップS4401)。「0」である場合(ステップS4401:Yes)、仮想マシン用IPMIプロセス053は、管理OS040が有するハイパバイザ操作用I/F042を用いて、自プロセス生成時に渡された仮想マシン番号に一致する仮想マシンの遮断をハイパバイザ030に実行させ(ステップS4402)、ステップS4405に移行する。 In step S4401, the virtual machine IPMI process 053 determines whether or not the Chassis Control in the received packet is “0” indicating Power down (step S4401). When it is “0” (step S4401: YES), the virtual machine IPMI process 053 uses the hypervisor operation I / F 042 of the management OS 040 to match the virtual machine number that was passed when the process was generated. Is blocked by the hypervisor 030 (step S4402), and the process proceeds to step S4405.
 一方、「0」でない場合(ステップS4401:No)、仮想マシン用IPMIプロセス053は、受信パケット内のChassis ControlがPower upを意味する「1」であるか否かを判断する(ステップS4403)。「1」でない場合(ステップS4403:No)、図48のステップS2702に移行する。 On the other hand, if it is not “0” (step S4401: No), the virtual machine IPMI process 053 determines whether or not the Chassis Control in the received packet is “1” meaning “Power up” (step S4403). If it is not “1” (step S4403: NO), the process proceeds to step S2702 in FIG.
 一方、「1」である場合(ステップS4403:Yes)、仮想マシン用IPMIプロセス053は、管理OS040が有するハイパバイザ操作用I/F042を用いて、自プロセス生成時に渡された仮想マシン番号に一致する仮想マシンの起動をハイパバイザ030に実行させ(ステップS4404)、ステップS4405に移行する。 On the other hand, if it is “1” (step S4403: Yes), the virtual machine IPMI process 053 matches the virtual machine number passed when the own process was generated using the hypervisor operation I / F 042 of the management OS 040. The virtual machine is activated by the hypervisor 030 (step S4404), and the process proceeds to step S4405.
 ステップS4405では、仮想マシン用IPMIプロセス053は、管理OS040のタイマ機能041によって設定された受信パケット内のセッションIDにおけるタイマ設定を解除し、再度当該セッションID宛に60秒後に通知が来るようタイマを設定する(ステップS4405)。 In step S4405, the virtual machine IPMI process 053 cancels the timer setting in the session ID in the received packet set by the timer function 041 of the management OS 040, and sets the timer so that notification is sent to the session ID again after 60 seconds. Setting is performed (step S4405).
 この後、仮想マシン用IPMIプロセス053は、以下の情報を含むパケットを生成する(ステップS4406)。 Thereafter, the virtual machine IPMI process 053 generates a packet including the following information (step S4406).
・Network Function Code:「1h」(Chassis Response)
・セッションID:に受信パケットと同値
・コマンド番号:「2h」(Chassis Control)
・Completion Code:「0h」(コマンドの正常終了)
・Authentication Type:受信パケット内のAuthentication Type
・Authentication Code:受信パケット内のAuthentication Typeの認証方式であるハッシュ関数に、セッションテーブル120においてステップS3702で見つかったセッションIDのエントリにおけるセッションIDと、パスワードと、受信パケットの一部情報とを結合した文字列を与えることにより生成されたハッシュ値
・ Network Function Code: “1h” (Chassis Response)
-Session ID: Equivalent to received packet-Command number: "2h" (Chassis Control)
-Completion Code: "0h" (normal termination of command)
・ Authentication Type: Authentication Type in the received packet
Authentication Code: Combined with the hash function that is the authentication method of Authentication Type in the received packet, the session ID, password, and partial information of the received packet in the session ID entry found in step S3702 in the session table 120 Hash value generated by giving a string
 受信パケットの一部情報とは、Network Function Codeと、コマンド番号と、Chassis Controlとを結合した文字列である。 The partial information of the received packet is a character string obtained by combining the network function code, the command number, and the chassis control.
 そして、仮想マシン用IPMIプロセス053は、送信先である仮想マシン用IPMIプロセス053から、受信したパケットの送信元であるリモートマネジメントシステム020に、ステップS4406で生成したパケットを返送する(ステップS4407)。このあと、図16のステップS1602に戻り、再度パケットを待ち受ける。 Then, the virtual machine IPMI process 053 returns the packet generated in step S4406 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S4407). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
 図44の処理により、リモートマネジメントシステム020は、ハイパバイザ030の存在を意識することなく、IPMIにより仮想マシン06の起動や遮断をすることができる。 44, the remote management system 020 can start and block the virtual machine 06 by IPMI without being aware of the existence of the hypervisor 030.
 図45は、図44のステップS4401の実行のトリガとなる受信パケットの例を示す説明図である。図45に示すパケットは、リモートマネジメントシステム020から仮想マシン用IPMIプロセス053へ送られてくる遮断要求を示すIPMIメッセージである。すなわち、図45に示すパケットは、Chassis ControlがPower downを意味する「0」であるため、ステップS4402が実行される。 FIG. 45 is an explanatory diagram showing an example of a received packet that triggers execution of step S4401 in FIG. The packet shown in FIG. 45 is an IPMI message indicating a blocking request sent from the remote management system 020 to the virtual machine IPMI process 053. That is, since the packet shown in FIG. 45 is “0” indicating that the Chassis Control is “Power down”, Step S4402 is executed.
 図46は、図44のステップS4403の実行のトリガとなる受信パケットの例を示す説明図である。図46に示すパケットは、リモートマネジメントシステム020から仮想マシン用IPMIプロセス053へ送られてくる起動要求を示すIPMIメッセージである。図45に示すパケットは、Chassis ControlがPower upを意味する「1」であるため、ステップS4404が実行される。 FIG. 46 is an explanatory diagram showing an example of a received packet that triggers execution of step S4403 in FIG. The packet shown in FIG. 46 is an IPMI message indicating an activation request sent from the remote management system 020 to the virtual machine IPMI process 053. Since the packet shown in FIG. 45 is “1” indicating that the Chassis Control is “Power up”, Step S4404 is executed.
 図47は、図44のステップS4406で生成されるパケットの例を示す説明図である。図47に示すパケットは、仮想マシン用IPMIプロセス053からリモートマネジメントシステム020へ、仮想マシンの遮断または起動が正常に終了したことを返送するIPMIメッセージである。 FIG. 47 is an explanatory diagram showing an example of the packet generated in step S4406 of FIG. The packet shown in FIG. 47 is an IPMI message that returns from the virtual machine IPMI process 053 to the remote management system 020 that the virtual machine has been successfully shut down or started.
 図48は、仮想マシン用IPMIプロセス053に仮想マシン電源操作要求処理手順例を示すフローチャート(その2)である。図48のステップS4801は、図44のステップS4403において、受信パケット内のChassis Controlが「0」でも「1」でもない場合(ステップS4403:No)に実行される。すなわち、この場合の受信パケットは、サポート対象外となるIPMIメッセージである。 FIG. 48 is a flowchart (part 2) illustrating an example of a virtual machine power supply operation request processing procedure in the virtual machine IPMI process 053. Step S4801 of FIG. 48 is executed when the Chassis Control in the received packet is neither “0” nor “1” in Step S4403 of FIG. 44 (Step S4403: No). That is, the received packet in this case is an IPMI message that is not supported.
 ステップS4801では、仮想マシン用IPMIプロセス053は、以下の情報を含むパケットを生成する(ステップS4801)。 In step S4801, the virtual machine IPMI process 053 generates a packet including the following information (step S4801).
・Network Function Code:「1h」(Chassis Response)
・セッションID:受信パケットと同値
・コマンド番号:「2h」(Chassis Control)
・Completion Code:「D5h」(コマンドの非サポートな情報指定によりコマンド実行不可)
・Authentication Type:受信パケット内のAuthentication Type
・Authentication Code:受信パケット内のAuthentication Typeの認証方式であるハッシュ関数に、ステップS3702で見つかったセッションテーブル120のエントリにおけるパスワード、セッションID、パケットの一部情報を結合した文字列を与えることにより生成されたハッシュ値
・ Network Function Code: “1h” (Chassis Response)
-Session ID: Equivalent to received packet-Command number: "2h" (Chassis Control)
-Completion Code: "D5h" (command cannot be executed due to specification of unsupported command information)
・ Authentication Type: Authentication Type in the received packet
Authentication Code: Generated by giving a character string that combines the password, session ID, and partial packet information in the entry of the session table 120 found in step S3702 to the hash function that is the authentication method of Authentication Type in the received packet. Hash value
 受信パケットの一部情報とは、Network Function Code、コマンド番号、Chassis Controlを結合した文字列である。 The partial information of the received packet is a character string obtained by combining the network function code, the command number, and the chassis control.
 そして、仮想マシン用IPMIプロセス053は、送信先である仮想マシン用IPMIプロセス053から、受信したパケットの送信元であるリモートマネジメントシステム020に、ステップS4801で生成したパケットを返送する(ステップS4802)。このあと、図16のステップS1602に戻り、再度パケットを待ち受ける。 Then, the virtual machine IPMI process 053 returns the packet generated in step S4801 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S4802). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
 図49は、図48のステップS4801で生成されるパケットの例を示す説明図である。図49に示すパケットは、セッション確立後において、仮想マシン用IPMIプロセス053からリモートマネジメントシステム020へ、非サポートなコマンドオプションや認証方式を指定されたこと(受信パケットのChassis Controlの値がサポート外)を伝達するIPMIメッセージである。以上により、仮想マシン起動処理が完了する。 FIG. 49 is an explanatory diagram showing an example of the packet generated in step S4801 of FIG. In the packet shown in FIG. 49, an unsupported command option or authentication method is designated from the virtual machine IPMI process 053 to the remote management system 020 after the session is established (the value of the Chassis Control in the received packet is not supported). Is an IPMI message that conveys. Thus, the virtual machine activation process is completed.
 <セッション遮断要求処理>
 つぎに、図50~図52を用いて、セッション遮断要求処理について説明する。
<Session blocking request processing>
Next, session blocking request processing will be described with reference to FIGS.
 図50は、仮想マシン用IPMIプロセス053によるセッション遮断要求処理手順例を示すフローチャートである。図50のステップS5001は、図39のステップS3904において、受信パケット内のNetwork Function Codeが「6h」で、かつ、コマンド番号が「3Ch」である場合(ステップS3904:Yes)に実行される処理である。すなわち、この場合の受信パケットは、セッション遮断要求を示すIPMIメッセージである。 FIG. 50 is a flowchart illustrating an example of a session cutoff request processing procedure performed by the virtual machine IPMI process 053. Step S5001 in FIG. 50 is processing executed when the network function code in the received packet is “6h” and the command number is “3Ch” in step S3904 in FIG. 39 (step S3904: Yes). is there. That is, the received packet in this case is an IPMI message indicating a session cutoff request.
 仮想マシン用IPMIプロセス053は、管理OS040のタイマ機能041によって設定された受信パケット内のセッションIDにおけるタイマ006の設定を解除する(ステップS5001)。つぎに、仮想マシン用IPMIプロセス053は、図37のステップS3702にて見つけた受信パケット内のセッションIDと一致するセッションテーブル120のエントリにおいて、セッションID121以外の項目を空にする(ステップS5002)。 The virtual machine IPMI process 053 cancels the setting of the timer 006 in the session ID in the received packet set by the timer function 041 of the management OS 040 (step S5001). Next, the virtual machine IPMI process 053 empties items other than the session ID 121 in the entry of the session table 120 that matches the session ID in the received packet found in step S3702 of FIG. 37 (step S5002).
 そして、仮想マシン用IPMIプロセス053は、以下の情報を含むパケットを生成する(ステップS5003)。 Then, the virtual machine IPMI process 053 generates a packet including the following information (step S5003).
・Network Function Code:「7h」(Application Response)
・セッションID:受信パケット(セッション遮断要求を示すIPMIメッセージ)のセッションID
・コマンド番号:「3Ch」(Close Session)
・Completion Code;「0h」(コマンド正常終了)
・Authentication Type:受信パケット内のAuthentication Type
・Authentication Code:受信パケット内のAuthentication Typeの認証方式であるハッシュ関数に、ステップS3702で見つかったセッションテーブル120のエントリにおけるパスワード、セッションID、受信パケットの一部情報を結合した文字列を与えることにより生成されたハッシュ値
・ Network Function Code: “7h” (Application Response)
Session ID: Session ID of the received packet (IPMI message indicating a session cutoff request)
Command number: “3Ch” (Close Session)
-Completion Code; "0h" (command normal termination)
・ Authentication Type: Authentication Type in the received packet
Authentication Code: By giving the hash function, which is the authentication method of Authentication Type in the received packet, a character string that combines the password, session ID, and partial information of the received packet in the entry of the session table 120 found in step S3702 The generated hash value
 受信パケットの一部情報とは、Network Function Code、コマンド番号を結合した文字列である。 The partial information of the received packet is a character string obtained by combining the network function code and the command number.
 そして、仮想マシン用IPMIプロセス053は、送信先である仮想マシン用IPMIプロセス053から、受信したパケットの送信元であるリモートマネジメントシステム020に、ステップS4801で生成したパケットを返送する(ステップS4805)。このあと、図16のステップS1602に戻り、再度パケットを待ち受ける。 Then, the virtual machine IPMI process 053 returns the packet generated in step S4801 from the virtual machine IPMI process 053 which is the transmission destination to the remote management system 020 which is the transmission source of the received packet (step S4805). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
 図51は、セッション遮断要求を示すパケットの例を示す説明図である。図52は、図50のステップS5003で生成されるパケットの例を示す説明図である。図52に示すパケットは、セッションの遮断が正常終了した応答IPMIメッセージである。以上により、セッション遮断要求処理が完了する。 FIG. 51 is an explanatory diagram showing an example of a packet indicating a session cutoff request. FIG. 52 is an explanatory diagram showing an example of the packet generated in step S5003 of FIG. The packet shown in FIG. 52 is a response IPMI message in which the session has been normally blocked. Thus, the session cutoff request process is completed.
 <セッション遮断処理>
 つぎに、図53~図55を用いて、コネクションのタイムアウトを検知した後のセッション遮断処理について説明する。
<Session blocking process>
Next, a session blocking process after detecting a connection timeout will be described with reference to FIGS.
 図53は、仮想マシン用IPMIプロセス053によるセッション遮断処理手順例を示すフローチャート(その1)である。図53のステップS5301は、管理OS040のタイマ機能041により仮想マシン用IPMIプロセス053に通知が届いた場合(コネクションのタイムアウト検知)に、仮想マシン用IPMIプロセス053が現在の処理を中断することにより実行される。 FIG. 53 is a flowchart (part 1) illustrating an example of a session blocking process procedure by the virtual machine IPMI process 053. Step S5301 of FIG. 53 is executed when the virtual machine IPMI process 053 interrupts the current processing when the notification is received by the timer function 041 of the management OS 040 (connection timeout detection). Is done.
 仮想マシン用IPMIプロセス053は、一時セッションテーブル130の一つ目(先頭)のエントリを対象エントリに設定する(ステップS5301)。つぎに、仮想マシン用IPMIプロセス053は、対象エントリ内にあるセッションID131とタイマ通知された一時セッションIDとが一致するか否かを判断する(ステップS5302)。 The virtual machine IPMI process 053 sets the first (first) entry of the temporary session table 130 as a target entry (step S5301). Next, the virtual machine IPMI process 053 determines whether or not the session ID 131 in the target entry matches the temporary session ID notified by the timer (step S5302).
 一致しない場合(ステップS5302:No)、仮想マシン用IPMIプロセス053は、現在の対象エントリが最後のエントリであるか否かを判断する(ステップS5303)。最後のエントリでない場合(ステップS5303:No)、仮想マシン用IPMIプロセス053は、つぎのエントリを対象エントリに設定して(ステップS5304)、ステップS5302に戻る。一方、最後のエントリである場合(ステップS5303:Yes)、図54のステップS5401に移行する。 If they do not match (step S5302: NO), the virtual machine IPMI process 053 determines whether or not the current target entry is the last entry (step S5303). If it is not the last entry (step S5303: NO), the virtual machine IPMI process 053 sets the next entry as the target entry (step S5304) and returns to step S5302. On the other hand, if it is the last entry (step S5303: YES), the process proceeds to step S5401 in FIG.
 また、ステップS5302において、対象エントリ内にあるセッションID131とタイマ通知された一時セッションIDとが一致する場合(ステップS5302:Yes)、仮想マシン用IPMIプロセス053は、タイマ通知された一時セッションIDの生成元となる受信パケットを処理中であるか否かを判断する(ステップS5305)。 In step S5302, if the session ID 131 in the target entry matches the temporary session ID notified by the timer (step S5302: Yes), the virtual machine IPMI process 053 generates the temporary session ID notified by the timer. It is determined whether or not the original received packet is being processed (step S5305).
 処理中である場合(ステップS5305:Yes)、ステップS5306に移行し、処理中でない場合(ステップS5305:No)、ステップS5308に移行する。 If it is being processed (step S5305: Yes), the process proceeds to step S5306. If it is not being processed (step S5305: No), the process proceeds to step S5308.
 ステップS5306では、仮想マシン用IPMIプロセス053は、以下の情報を含むパケットを生成する(ステップS5306)。 In step S5306, the virtual machine IPMI process 053 generates a packet including the following information (step S5306).
・Network Function Code:受信パケットのNetwork Function Codeの値に1を足した値
・コマンド番号:受信パケットと同値
・セッションID:受信パケットと同値
・Completion Code:「C3h」(セッションのタイムアウト)
-Network Function Code: Value of Network Function Code of received packet plus 1-Command number: Equivalent to received packet-Session ID: Equivalent to received packet-Completion Code: "C3h" (session timeout)
 そして、仮想マシン用IPMIプロセス053は、送信先である仮想マシン用IPMIプロセス053から、受信したパケットの送信元であるリモートマネジメントシステム020に、ステップS5306で生成したパケットを返送する(ステップS5307)。 Then, the virtual machine IPMI process 053 returns the packet generated in step S5306 from the virtual machine IPMI process 053, which is the transmission destination, to the remote management system 020, which is the transmission source of the received packet (step S5307).
 ステップS5308では、仮想マシン用IPMIプロセス053は、ステップS5302で見つかった一時セッションテーブル130の対象エントリを削除する(ステップS5308)。このあと、図16のステップS1602に戻り、再度パケットを待ち受ける。 In step S5308, the virtual machine IPMI process 053 deletes the target entry in the temporary session table 130 found in step S5302 (step S5308). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
 図54は、仮想マシン用IPMIプロセス053によるセッション遮断処理手順例を示すフローチャート(その2)である。図54のステップS5401は、最後のエントリである場合(ステップS5303:Yes)、すなわち、タイマ通知のセッションIDが一時セッションテーブル130になかった場合に実行される。 FIG. 54 is a flowchart (part 2) illustrating an example of a session cutoff processing procedure by the virtual machine IPMI process 053. Step S5401 of FIG. 54 is executed when it is the last entry (step S5303: Yes), that is, when the session ID of the timer notification is not in the temporary session table 130.
 仮想マシン用IPMIプロセス053は、セッションテーブル120の一つ目(先頭)のエントリを対象エントリに設定する(ステップS5401)。つぎに、仮想マシン用IPMIプロセス053は、対象エントリ内にあるセッションID121とタイマ通知された一時セッションIDとが一致するか否かを判断する(ステップS5402)。 The virtual machine IPMI process 053 sets the first (first) entry of the session table 120 as a target entry (step S5401). Next, the virtual machine IPMI process 053 determines whether or not the session ID 121 in the target entry matches the temporary session ID notified by the timer (step S5402).
 一致しない場合(ステップS5402:No)、仮想マシン用IPMIプロセス053は、現在の対象エントリが最後のエントリであるか否かを判断する(ステップS5403)。最後のエントリでない場合(ステップS5403:No)、仮想マシン用IPMIプロセス053は、つぎのエントリを対象エントリに設定して(ステップS5404)、ステップS5402に戻る。一方、最後のエントリである場合(ステップS5403:Yes)、図16のステップS1602に戻り、再度パケットを待ち受ける。 If they do not match (step S5402: NO), the virtual machine IPMI process 053 determines whether or not the current target entry is the last entry (step S5403). If it is not the last entry (step S5403: NO), the virtual machine IPMI process 053 sets the next entry as the target entry (step S5404) and returns to step S5402. On the other hand, if it is the last entry (step S5403: YES), the process returns to step S1602 in FIG.
 一方、ステップS5402において、対象エントリ内にあるセッションID121とタイマ通知された一時セッションIDとが一致する場合(ステップS5402:Yes)、仮想マシン用IPMIプロセス053は、タイマ機能041により通知されたセッションIDの生成元となる受信パケットが処理中であるか否かを判断する(ステップS5405)。 On the other hand, when the session ID 121 in the target entry matches the temporary session ID notified by the timer in step S5402 (step S5402: Yes), the virtual machine IPMI process 053 determines the session ID notified by the timer function 041. It is determined whether or not the received packet that is the generation source is being processed (step S5405).
 処理中である場合(ステップS5405:Yes)、ステップS5406に移行し、処理中でない場合(ステップS5405:No)、ステップS5408に移行する。 If it is being processed (step S5405: Yes), the process proceeds to step S5406. If it is not being processed (step S5405: No), the process proceeds to step S5408.
 ステップS5406では、仮想マシン用IPMIプロセス053は、以下の情報を含むパケットを生成する(ステップS5406)。 In step S5406, the virtual machine IPMI process 053 generates a packet including the following information (step S5406).
・Network Function Code:受信パケットのNetwork Function Codeの値に1を足した値
・コマンド番号:受信パケットと同値
・セッションID:受信パケットと同値
・Completion Code:「C3h」(セッションのタイムアウト)
-Network Function Code: Value of Network Function Code of received packet plus 1-Command number: Equivalent to received packet-Session ID: Equivalent to received packet-Completion Code: "C3h" (session timeout)
 そして、仮想マシン用IPMIプロセス053は、送信先である仮想マシン用IPMIプロセス053から、受信したパケットの送信元であるリモートマネジメントシステム020に、ステップS5406で生成したパケットを返送する(ステップS5407)。 Then, the virtual machine IPMI process 053 returns the packet generated in step S5406 to the remote management system 020 that is the transmission source of the received packet from the virtual machine IPMI process 053 that is the transmission destination (step S5407).
 ステップS5408では、仮想マシン用IPMIプロセス053は、ステップS5302で見つかった一時セッションテーブル130の対象エントリを削除する(ステップS5408)。このあと、図16のステップS1602に戻り、再度パケットを待ち受ける。 In step S5408, the virtual machine IPMI process 053 deletes the target entry in the temporary session table 130 found in step S5302 (step S5408). Thereafter, the process returns to step S1602 in FIG. 16 to wait for a packet again.
 図55は、図53のステップS5306および図54のステップS5406で生成されるパケットの例を示す説明図である。図55に示すパケットは、仮想マシン用IPMIプロセス053からリモートマネジメントシステム020へ、セッションがタイムアウトしたことを伝達するためのIPMIメッセージである。以上により、セッション遮断処理が完了する。 FIG. 55 is an explanatory diagram showing an example of packets generated in step S5306 in FIG. 53 and step S5406 in FIG. The packet shown in FIG. 55 is an IPMI message for transmitting that the session has timed out from the virtual machine IPMI process 053 to the remote management system 020. Thus, the session blocking process is completed.
 <終了処理>
 つぎに、図56および図57を用いて、IPMIサーバアプリケーション050からシャットダウンシグナルを受けた際の終了処理について説明する。
<End processing>
Next, with reference to FIG. 56 and FIG. 57, a termination process when a shutdown signal is received from the IPMI server application 050 will be described.
 図56は、仮想マシン用IPMIプロセス053の終了処理手順例を示すフローチャート(その1)である。終了処理は、IPMIサーバアプリケーション050から仮想マシン用IPMIプロセス053にシャットダウンシグナルが送られた場合に実行される処理である。仮想マシン用IPMIプロセス053は、シャットダウンを受けた直後は現在の処理を中断し、ステップS5601を実行する。 FIG. 56 is a flowchart (No. 1) illustrating an example of a termination process procedure of the virtual machine IPMI process 053. The termination process is a process executed when a shutdown signal is sent from the IPMI server application 050 to the virtual machine IPMI process 053. Immediately after receiving the shutdown, the virtual machine IPMI process 053 interrupts the current processing and executes step S5601.
 仮想マシン用IPMIプロセス053は、一時セッションテーブル130の一つ目(先頭)のエントリを対象エントリに設定する(ステップS5601)。仮想マシン用IPMIプロセス053は、管理OS040のタイマ機能041によって設定された受信パケット内のセッションIDにおけるタイマ006の設定を解除する(ステップS5602)。 The virtual machine IPMI process 053 sets the first (first) entry of the temporary session table 130 as a target entry (step S5601). The virtual machine IPMI process 053 cancels the setting of the timer 006 in the session ID in the received packet set by the timer function 041 of the management OS 040 (step S5602).
 そして、仮想マシン用IPMIプロセス053は、一時セッションテーブル130の全エントリに対して、それぞれのエントリにおけるセッションIDのタイマ設定の解除とエントリの削除を実行する(ステップS5603)。仮想マシン用IPMIプロセス053は、現在のエントリが最後のエントリであるか否かを判断する(ステップS5604)。最後のエントリでない場合(ステップS5604:No)、仮想マシン用IPMIプロセス053は、つぎのエントリを対象エントリに設定し(ステップ5605)、ステップS5602に戻る。一方、最後のエントリである場合(ステップS5604:Yes)、図57のステップS5701に移行する。 The virtual machine IPMI process 053 then cancels the session ID timer setting and deletes the entry for each entry in the temporary session table 130 (step S5603). The virtual machine IPMI process 053 determines whether or not the current entry is the last entry (step S5604). If it is not the last entry (step S5604: NO), the virtual machine IPMI process 053 sets the next entry as the target entry (step 5605), and returns to step S5602. On the other hand, if it is the last entry (step S5604: YES), the process proceeds to step S5701 in FIG.
 図57は、仮想マシン用IPMIプロセス053の終了処理手順例を示すフローチャート(その2)である。仮想マシン用IPMIプロセス053は、セッションテーブル120の一つ目(先頭)のエントリを対象エントリに設定する(ステップS5701)。仮想マシン用IPMIプロセス053は、対象エントリ内のユーザ名122が空であるか否かを判断する(ステップS5702)。 FIG. 57 is a flowchart (part 2) illustrating an example of a termination process procedure of the virtual machine IPMI process 053. The virtual machine IPMI process 053 sets the first (first) entry of the session table 120 as the target entry (step S5701). The virtual machine IPMI process 053 determines whether or not the user name 122 in the target entry is empty (step S5702).
 ユーザ名122が空でない場合(ステップS5702:No)、仮想マシン用IPMIプロセス053は、管理OS040のタイマ機能041によって設定された受信パケット内のセッションIDにおけるタイマ006の設定を解除する(ステップS5705)。そして、仮想マシン用IPMIプロセス053は、一時セッションテーブル130の全エントリに対して、それぞれのエントリにおけるセッションIDのタイマ設定の解除とエントリの削除を実行し(ステップS5706)、ステップS5703に移行する。 If the user name 122 is not empty (step S5702: NO), the virtual machine IPMI process 053 cancels the setting of the timer 006 in the session ID in the received packet set by the timer function 041 of the management OS 040 (step S5705). . Then, the virtual machine IPMI process 053 cancels the session ID timer setting and deletes the entry for all entries in the temporary session table 130 (step S5706), and proceeds to step S5703.
 一方、ユーザ名122が空である場合(ステップS5702:Yes)、仮想マシン用IPMIプロセス053は、現在のエントリが最後のエントリであるか否かを判断する(ステップS5703)。最後のエントリでない場合(ステップS5703:No)、仮想マシン用IPMIプロセス053は、つぎのエントリを対象エントリに設定し(ステップS5704)、ステップS3603に戻る。一方、最後のエントリである場合(ステップS5703:Yes)、仮想マシン用IPMIプロセス053が終了する。 On the other hand, if the user name 122 is empty (step S5702: YES), the virtual machine IPMI process 053 determines whether or not the current entry is the last entry (step S5703). If it is not the last entry (step S5703: No), the virtual machine IPMI process 053 sets the next entry as the target entry (step S5704), and returns to step S3603. On the other hand, if it is the last entry (step S5703: YES), the virtual machine IPMI process 053 ends.
 以上の処理により、リモートマネジメントシステム020はハイパバイザ030に直接処理を要求することなく、仮想マシン用IPMIプロセス053のIPアドレスで、対応する仮想マシン06の起動と遮断を実現することができる。これにより、リモートマネジメントシステム020やそのユーザは、電源操作対象マシンが物理マシン001であるか仮想マシン06であるかを意識することなく、電源操作対象マシンの起動およびシャットダウンを行うことができ、電源操作の利便性の向上を図ることができる。また、仮想マシン06ごとに仮想マシン用IPMIプロセス053を生成することにより、電源操作対象マシンに対応する仮想マシン用IPMIプロセス053がその電源操作を担当する。したがって、非電源操作対象マシンである未起動または起動済みの仮想マシン06にアクセスする必要がないため、処理負荷の低減を図ることができる。 Through the above processing, the remote management system 020 can realize activation and shutdown of the corresponding virtual machine 06 with the IP address of the virtual machine IPMI process 053 without directly requesting the hypervisor 030 to perform processing. Accordingly, the remote management system 020 and the user can start and shut down the power operation target machine without being aware of whether the power operation target machine is the physical machine 001 or the virtual machine 06. The convenience of operation can be improved. Further, by generating the virtual machine IPMI process 053 for each virtual machine 06, the virtual machine IPMI process 053 corresponding to the power operation target machine takes charge of the power operation. Therefore, it is not necessary to access an unstarted or started virtual machine 06 that is a non-power source operation target machine, and therefore, the processing load can be reduced.
 なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。例えば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加、削除、または置換をしてもよい。 The present invention is not limited to the above-described embodiments, and includes various modifications and equivalent configurations within the scope of the appended claims. For example, the above-described embodiments have been described in detail for easy understanding of the present invention, and the present invention is not necessarily limited to those having all the configurations described. A part of the configuration of one embodiment may be replaced with the configuration of another embodiment. Moreover, you may add the structure of another Example to the structure of a certain Example. Moreover, you may add, delete, or replace another structure about a part of structure of each Example.
 また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサがそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよい。 In addition, each of the above-described configurations, functions, processing units, processing means, etc. may be realized in hardware by designing a part or all of them, for example, with an integrated circuit, and the processor realizes each function. It may be realized by software by interpreting and executing the program to be executed.
 各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD(Solid State Drive)等の記憶装置、又は、ICカード、SDカード、DVD等の記録媒体に格納することができる。 Information such as programs, tables, and files that realize each function can be stored in a storage device such as a memory, a hard disk, and an SSD (Solid State Drive), or a recording medium such as an IC card, an SD card, and a DVD.
 また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。 Also, the control lines and information lines indicate what is considered necessary for the explanation, and do not necessarily indicate all control lines and information lines necessary for mounting. In practice, it can be considered that almost all the components are connected to each other.

Claims (15)

  1.  仮想計算機が動作する計算機であって、
     前記計算機は、前記仮想計算機を制御する仮想化プログラムを記憶する記憶デバイスと、前記仮想化プログラムを実行するプロセッサと、データを送受信するインタフェースと、を有し、
     前記プロセッサは、
     前記インタフェースから、前記計算機または前記仮想計算機のいずれかの宛先情報と前記宛先情報で特定される宛先に対する電源操作内容とを含む第1のメッセージを取得する取得処理と、
     前記取得処理によって取得された前記第1のメッセージに含まれる前記宛先情報が前記計算機の宛先情報でない場合、前記仮想化プログラムを制御して、前記電源操作内容に応じた処理を前記仮想計算機が実行する制御処理と、
     を実行することを特徴とする計算機。
    A computer on which a virtual machine operates,
    The computer includes a storage device that stores a virtualization program that controls the virtual computer, a processor that executes the virtualization program, and an interface that transmits and receives data.
    The processor is
    An acquisition process for acquiring a first message including destination information of either the computer or the virtual computer and the power operation content for the destination specified by the destination information from the interface;
    When the destination information included in the first message acquired by the acquisition process is not the destination information of the computer, the virtual computer executes the process according to the power operation details by controlling the virtualization program Control processing to
    A computer characterized by executing.
  2.  前記プロセッサは、
     前記第1のメッセージに含まれる前記宛先情報が前記計算機の宛先情報である場合、前記計算機を起動し、かつ、前記仮想計算機を制御する制御プロセスを生成する生成処理を実行し、
     前記取得処理では、前記プロセッサは、前記計算機または前記仮想計算機のいずれかの宛先情報と前記宛先情報で特定される宛先に対する電源操作内容とを含む第2のメッセージを取得し、
     前記制御処理では、前記プロセッサは、前記取得処理によって取得された前記第2のメッセージに含まれる前記宛先情報が前記計算機の宛先情報でない場合、前記制御プロセスにより前記仮想化プログラムを制御して、前記仮想計算機が前記電源操作内容に応じた処理を実行することを特徴とする請求項1に記載の計算機。
    The processor is
    If the destination information included in the first message is the destination information of the computer, start the computer, and execute a generation process for generating a control process for controlling the virtual computer,
    In the acquisition process, the processor acquires a second message including destination information of either the computer or the virtual machine and a power operation content for a destination specified by the destination information;
    In the control process, when the destination information included in the second message acquired by the acquisition process is not the destination information of the computer, the processor controls the virtualization program by the control process, and The computer according to claim 1, wherein the virtual computer executes processing according to the power operation content.
  3.  前記記憶デバイスは、仮想計算機ごとの宛先情報を記憶する宛先対応情報を記憶しており、
     前記生成処理では、前記プロセッサは、前記仮想計算機ごとに前記制御プロセスを生成し、
     前記制御処理では、前記プロセッサは、前記第2のメッセージに含まれる前記宛先情報が前記計算機の宛先情報でない場合、前記宛先対応情報を参照して、前記宛先情報に対応する特定の仮想計算機を検索し、前記特定の仮想計算機に対応する特定の制御プロセスにより前記仮想化プログラムを制御して、前記特定の仮想計算機が前記電源操作内容に応じた処理を実行することを特徴とする請求項2に記載の計算機。
    The storage device stores destination correspondence information for storing destination information for each virtual machine,
    In the generation process, the processor generates the control process for each virtual machine,
    In the control process, when the destination information included in the second message is not destination information of the computer, the processor refers to the destination correspondence information and searches for a specific virtual machine corresponding to the destination information. 3. The virtualization program is controlled by a specific control process corresponding to the specific virtual machine, and the specific virtual machine executes processing according to the power operation content. Listed calculator.
  4.  前記制御処理では、前記プロセッサは、前記電源操作内容が前記宛先の起動を指示する内容である場合、前記仮想化プログラムを制御して、前記仮想計算機を起動する処理を実行することを特徴とする請求項1~3のいずれか1つに記載の計算機。 In the control process, the processor executes the process of starting the virtual machine by controlling the virtualization program when the power operation content is a content for instructing activation of the destination. The computer according to any one of claims 1 to 3.
  5.  前記制御処理では、前記プロセッサは、前記電源操作内容が前記宛先のシャットダウンを指示する内容である場合、前記仮想化プログラムを制御して、前記仮想計算機をシャットダウンする処理を実行することを特徴とする請求項1~3のいずれか1つに記載の計算機。 In the control process, the processor executes the process of controlling the virtualization program and shutting down the virtual computer when the power operation content is a content for instructing shutdown of the destination. The computer according to any one of claims 1 to 3.
  6.  仮想計算機が動作する物理計算機による制御方法であって、
     前記物理計算機は、前記仮想計算機を制御する仮想化プログラムを記憶する記憶デバイスと、前記仮想化プログラムを実行するプロセッサと、データを送受信するインタフェースと、を有し、
     前記制御方法は、
     前記プロセッサが、
     前記インタフェースから、前記物理計算機または前記仮想計算機のいずれかの宛先情報と前記宛先情報で特定される宛先に対する電源操作内容とを含むメッセージを取得する取得処理と、
     前記取得処理によって取得された前記メッセージに含まれる前記宛先情報が前記物理計算機の宛先情報でない場合、前記仮想化プログラムを制御して、前記電源操作内容に応じた処理を前記仮想計算機が実行する制御処理と、
     を実行することを特徴とする制御方法。
    A control method by a physical computer on which a virtual computer operates,
    The physical computer includes a storage device that stores a virtualization program that controls the virtual computer, a processor that executes the virtualization program, and an interface that transmits and receives data.
    The control method is:
    The processor is
    An acquisition process for acquiring a message including the destination information of either the physical computer or the virtual machine and the power operation content for the destination specified by the destination information from the interface;
    Control in which when the destination information included in the message acquired by the acquisition process is not the destination information of the physical computer, the virtual computer executes the process according to the power operation content by controlling the virtualization program Processing,
    The control method characterized by performing.
  7.  前記プロセッサが、
     前記第1のメッセージに含まれる前記宛先情報が前記物理計算機の宛先情報である場合、前記物理計算機を起動し、かつ、前記仮想計算機を制御する制御プロセスを生成する生成処理を実行し、
     前記取得処理では、前記プロセッサは、前記物理計算機または前記仮想計算機のいずれかの宛先情報と前記宛先情報で特定される宛先に対する電源操作内容とを含む第2のメッセージを取得し、
     前記制御処理では、前記プロセッサは、前記取得処理によって取得された前記第2のメッセージに含まれる前記宛先情報が前記物理計算機の宛先情報でない場合、前記制御プロセスにより前記仮想化プログラムを制御して、前記仮想計算機が前記電源操作内容に応じた処理を実行することを特徴とする請求項6に記載の制御方法。
    The processor is
    When the destination information included in the first message is the destination information of the physical computer, start the physical computer and execute a generation process for generating a control process for controlling the virtual computer,
    In the acquisition process, the processor acquires a second message including destination information of either the physical computer or the virtual computer and a power operation content for a destination specified by the destination information;
    In the control process, when the destination information included in the second message acquired by the acquisition process is not destination information of the physical computer, the processor controls the virtualization program by the control process, The control method according to claim 6, wherein the virtual computer executes processing according to the power operation content.
  8.  前記記憶デバイスは、仮想計算機ごとの宛先情報を記憶する宛先対応情報を記憶しており、
     前記生成処理では、前記プロセッサは、前記仮想計算機ごとに前記制御プロセスを生成し、
     前記制御処理では、前記プロセッサは、前記第2のメッセージに含まれる前記宛先情報が前記物理計算機の宛先情報でない場合、前記宛先対応情報を参照して、前記宛先情報に対応する特定の仮想計算機を検索し、前記特定の仮想計算機に対応する特定の制御プロセスにより前記仮想化プログラムを制御して、前記特定の仮想計算機が前記電源操作内容に応じた処理を実行することを特徴とする請求項7に記載の制御方法。
    The storage device stores destination correspondence information for storing destination information for each virtual machine,
    In the generation process, the processor generates the control process for each virtual machine,
    In the control process, when the destination information included in the second message is not the destination information of the physical computer, the processor refers to the destination correspondence information and selects a specific virtual computer corresponding to the destination information. 8. The search is performed, the virtualization program is controlled by a specific control process corresponding to the specific virtual machine, and the specific virtual machine executes a process according to the power operation content. The control method described in 1.
  9.  前記制御処理では、前記プロセッサは、前記電源操作内容が前記宛先の起動を指示する内容である場合、前記仮想化プログラムを制御して、前記仮想計算機を起動する処理を実行することを特徴とする請求項6~8のいずれか1つに記載の制御方法。 In the control process, the processor executes the process of starting the virtual machine by controlling the virtualization program when the power operation content is a content for instructing activation of the destination. The control method according to any one of claims 6 to 8.
  10.  前記制御処理では、前記プロセッサは、前記電源操作内容が前記宛先のシャットダウンを指示する内容である場合、前記仮想化プログラムを制御して、前記仮想計算機をシャットダウンする処理を実行することを特徴とする請求項6~8のいずれか1つに記載の制御方法。 In the control process, the processor executes the process of controlling the virtualization program and shutting down the virtual computer when the power operation content is a content for instructing shutdown of the destination. The control method according to any one of claims 6 to 8.
  11.  仮想計算機および前記仮想計算機が動作する物理計算機をプロセッサに制御させる制御プログラムであって、
     前記物理計算機は、前記仮想計算機を制御する仮想化プログラムを記憶する記憶デバイスと、データを送受信するインタフェースと、を有し、
     前記プロセッサに、
     前記インタフェースから、前記物理計算機または前記仮想計算機のいずれかの宛先情報と前記宛先情報で特定される宛先に対する電源操作内容とを含むメッセージを取得する取得処理と、
     前記取得処理によって取得された前記メッセージに含まれる前記宛先情報が前記物理計算機の宛先情報でない場合、前記仮想化プログラムを制御して、前記電源操作内容に応じた処理を前記仮想計算機が実行する制御処理と、
     を実行させることを特徴とする制御プログラム。
    A control program for causing a processor to control a virtual computer and a physical computer on which the virtual computer operates,
    The physical computer includes a storage device that stores a virtualization program that controls the virtual computer, and an interface that transmits and receives data.
    In the processor,
    An acquisition process for acquiring a message including the destination information of either the physical computer or the virtual machine and the power operation content for the destination specified by the destination information from the interface;
    Control in which when the destination information included in the message acquired by the acquisition process is not the destination information of the physical computer, the virtual computer executes the process according to the power operation content by controlling the virtualization program Processing,
    A control program characterized by causing
  12.  前記プロセッサに、
     前記第1のメッセージに含まれる前記宛先情報が前記物理計算機の宛先情報である場合、前記物理計算機を起動し、かつ、前記仮想計算機を制御する制御プロセスを生成する生成処理を実行させ、
     前記取得処理では、前記プロセッサに、前記物理計算機または前記仮想計算機のいずれかの宛先情報と前記宛先情報で特定される宛先に対する電源操作内容とを含む第2のメッセージを取得させ、
     前記制御処理では、前記プロセッサに、前記取得処理によって取得された前記第2のメッセージに含まれる前記宛先情報が前記物理計算機の宛先情報でない場合、前記制御プロセスにより前記仮想化プログラムを制御して、前記仮想計算機が前記電源操作内容に応じた処理を実行させることを特徴とする請求項11に記載の制御プログラム。
    In the processor,
    When the destination information included in the first message is the destination information of the physical computer, the physical computer is started, and a generation process for generating a control process for controlling the virtual computer is executed.
    In the acquisition process, the processor is caused to acquire a second message including destination information of either the physical computer or the virtual machine and a power operation content for a destination specified by the destination information,
    In the control process, if the destination information included in the second message acquired by the acquisition process is not the destination information of the physical computer, the control process controls the virtualization program to the processor, The control program according to claim 11, wherein the virtual computer executes processing according to the power operation content.
  13.  前記記憶デバイスは、仮想計算機ごとの宛先情報を記憶する宛先対応情報を記憶しており、
     前記生成処理では、前記プロセッサに、前記仮想計算機ごとに前記制御プロセスを生成させ、
     前記制御処理では、前記プロセッサに、前記第2のメッセージに含まれる前記宛先情報が前記物理計算機の宛先情報でない場合、前記宛先対応情報を参照して、前記宛先情報に対応する特定の仮想計算機を検索し、前記特定の仮想計算機に対応する特定の制御プロセスにより前記仮想化プログラムを制御して、前記特定の仮想計算機が前記電源操作内容に応じた処理を実行させることを特徴とする請求項12に記載の制御プログラム。
    The storage device stores destination correspondence information for storing destination information for each virtual machine,
    In the generation process, the processor is caused to generate the control process for each virtual machine,
    In the control process, when the destination information included in the second message is not the destination information of the physical computer, the control unit refers to the destination correspondence information and determines a specific virtual machine corresponding to the destination information. 13. The search is performed, and the virtualization program is controlled by a specific control process corresponding to the specific virtual machine, and the specific virtual machine executes processing corresponding to the power operation content. The control program described in 1.
  14.  前記制御処理では、前記プロセッサに、前記電源操作内容が前記宛先の起動を指示する内容である場合、前記仮想化プログラムを制御して、前記仮想計算機を起動する処理を実行させることを特徴とする請求項11~13のいずれか1つに記載の制御プログラム。 The control process causes the processor to execute the process of starting the virtual machine by controlling the virtualization program when the power operation contents are contents for instructing activation of the destination. The control program according to any one of claims 11 to 13.
  15.  前記制御処理では、前記プロセッサに、前記電源操作内容が前記宛先のシャットダウンを指示する内容である場合、前記仮想化プログラムを制御して、前記仮想計算機をシャットダウンする処理を実行させることを特徴とする請求項11~13のいずれか1つに記載の制御プログラム。 The control process causes the processor to execute a process of controlling the virtualization program to shut down the virtual machine when the power operation content is a content for instructing shutdown of the destination. The control program according to any one of claims 11 to 13.
PCT/JP2015/071777 2015-07-31 2015-07-31 Computer, control method and control program WO2017022008A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/071777 WO2017022008A1 (en) 2015-07-31 2015-07-31 Computer, control method and control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/071777 WO2017022008A1 (en) 2015-07-31 2015-07-31 Computer, control method and control program

Publications (1)

Publication Number Publication Date
WO2017022008A1 true WO2017022008A1 (en) 2017-02-09

Family

ID=57942528

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/071777 WO2017022008A1 (en) 2015-07-31 2015-07-31 Computer, control method and control program

Country Status (1)

Country Link
WO (1) WO2017022008A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240031216A1 (en) * 2020-08-28 2024-01-25 Hewlett-Packard Development Company, L.P. Secure management of access to host device remote management functionality

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012038157A (en) * 2010-08-09 2012-02-23 Sanken Electric Co Ltd Power unit, program, and control method
WO2013065115A1 (en) * 2011-10-31 2013-05-10 富士通株式会社 Information processing device, method for controlling information processing device, virtual machine control program, and information processing system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012038157A (en) * 2010-08-09 2012-02-23 Sanken Electric Co Ltd Power unit, program, and control method
WO2013065115A1 (en) * 2011-10-31 2013-05-10 富士通株式会社 Information processing device, method for controlling information processing device, virtual machine control program, and information processing system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240031216A1 (en) * 2020-08-28 2024-01-25 Hewlett-Packard Development Company, L.P. Secure management of access to host device remote management functionality

Similar Documents

Publication Publication Date Title
JP6476923B2 (en) Device management system, management device, and program
EP2950230B1 (en) Information processing system, method of processing information, information processing apparatus, and program
US9696948B2 (en) Printing system, printing service apparatus, image forming apparatus, control method, and storage medium
US20150261482A1 (en) Printing system, control method thereof, and non-transitory computer-readable medium
US9398084B2 (en) Information processing system
US10237255B2 (en) Data synchronizing system, control method thereof, authorization server, and storage medium thereof
US20080184340A1 (en) Application Execution System, Computer, Application Execution Device, And Control Method And Program For An Application Execution System
CN106302771A (en) A kind of method for configuring domain name of the application created based on Docker container
US20170041504A1 (en) Service providing system, information processing apparatus, program, and method for generating service usage information
CN102207859A (en) Method, device and system for deploying solution plan
US9311034B2 (en) Document printing system and method
JP6456028B2 (en) Information processing apparatus, information processing method, and program
JP2016218530A (en) Request distribution system, management system, and control method thereof
US20160006709A1 (en) System and control method thereof
US8266178B2 (en) Management apparatus, information processing apparatus, and method therefor
WO2021014863A1 (en) Information processing device, control method, and program
US11275545B2 (en) Print server, image forming apparatus, method of controlling printing operation and recording medium
CN107148772B (en) Information processing apparatus, control method and synchronization control method thereof, and storage medium
US9628642B2 (en) Information processing system, license server, communication relay device, non-transitory readable recording medium and data restoration method
US20210240424A1 (en) Information processing apparatus, method of controlling the same, and recording medium
JP2017191352A (en) System and control method thereof
WO2017022008A1 (en) Computer, control method and control program
US9892243B2 (en) Information processing apparatus, information processing method and non-transitory computer readable medium
JP2011215688A (en) Database access system and method
JP5755598B2 (en) File distribution system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15900322

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15900322

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP