This application is based upon and claims the benefit of priority of the prior Japanese Patent Application No. 2013-230531, filed on Nov. 6, 2013, the entire contents of which are incorporated herein by reference.
The embodiments discussed herein are related to apparatus and method for searching across groups of networked devices for devices having a same function.
In a large-sized system such as a cloud system, a manager extends hardware of the cloud system to cope with an increase in resource request due to an increase in the number of users of the cloud system. During the extension, the manager extends the hardware in a subsystem unit in which plural pieces of hardware are integrated in one unit.
When extending the subsystem, the manager makes a first configuration of the subsystem to be extended be the same or substantially the same as that of a second configuration of an existing subsystem. The above-described first configuration and second configuration are each, for example, a hardware configuration or a software configuration. The manager may partially customize, for the subsystem to be extended, various kinds of setting information and the like which are set in hardware or software of the existing subsystem. In addition, the manager sets various kinds of setting information and the like, which are customized, to hardware or software of the subsystem to be extended.
Since a function of the subsystem to be extended is the same or substantially the same as a function of the existing subsystem, the manager further may perform the customization in a state in which the first configuration and the second configuration are made to be the same or substantially the same as each other.
In a case where the manager partially customizes various kinds of setting information and sets the partially customized information to hardware or software of the subsystem to be extended, a setting error may occur. The setting error frequently relates to a setting of information (hereinafter, may be referred to as communication-related information) such as an Internet protocol (IP) address or a port number that relates to network communication (hereinafter, may be referred to as communication).
In addition, in a distributed system that is configured by connecting a plurality of apparatuses to a network, a method of enabling communication by automatically setting the apparatuses has been suggested.
Japanese Laid-open Patent Publication Nos. 2000-269998, 2012-198818, and 2002-278853 are examples of the related art.
According to an aspect of the invention, a search device is provided in a system in which first and second device groups are connected to each other. The search device acquires first history information that specifies transmission sources and transmission destinations of communication executed between devices in the first device group, and second history information that specifies transmission sources and transmission destinations of communication executed between devices in the second device group. The search device searches across the first and second history information for a pair of a first device in the first group and a second device in the second group, by comparing the first and second history information, where the first device has the same function as the second device.
The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention, as claimed.
To avoid the setting error, it may be considered to use the above-described method. However, in the above-described method, it is difficult to set an IP address and a port number, which are partially customized for a subsystem to be extended, to hardware and the like of a subsystem to be extended.
Therefore, a manager manually customizes communication-related information such as the IP address and the port number and sets the customized information to hardware and the like. After the extension of the subsystem, the manager verifies that the subsystem appropriately operates, before system operation.
During the verification, it is desirable for the manager to quickly grasp the contents of the setting error and to correct the setting error. However, it is complicated and difficult for the manager to manually detect the setting error. Particularly, when the setting error frequently occurs along with an increase in the size of the system to be extended, the manual detection of the setting error by the manager is significantly complicated and difficult.
Accordingly, the following method is suggested to detect the setting error by verifying the operation of the subsystem to be extended. In this method, a first communication history of an existing subsystem and a second communication history of a subsystem to be extended are compared with each other, and the setting error is automatically detected based on a comparison result. In a case of executing the method, as described below, it is desirable to register information relating to devices in the subsystem to be extended and information relating to devices in the existing subsystem, to a device that detects the setting error, in order to execute the comparison with high accuracy.
The manager manually creates the information in advance, but man-hours for the creation increase in proportion to the number of the devices in the subsystem to be extended. In addition, if the manager has no knowledge of the devices in the subsystem to be extended and the devices in the existing subsystem, the manager is not able to create the information. Particularly, when the size of the subsystem to be extended increases, it is difficult for the manager to manually create the above-described information when also considering working man-hours and device-related information.
According to an embodiment, a technique of automatically creating information that is used during automatic detection of a communication-related information setting error is provided.
Information Processing System
The information processing system SYS is connected to a user terminal USR that is operated by a user of the cloud system through the Internet IN. The information processing system SYS performs data processing in response to a data processing request transmitted from the user terminal USR, and transmits a processing result to the user terminal USR. In
The router RC is a communication device that connects the Internet IN and the network N inside the information processing system SYS to each other. The fire wall FW is a device having a so-called fire wall function that makes illegal access to the network N inside the information processing system SYS unable to occur. The operator management server group MC is a server group that operates the information processing system SYS, and includes a plurality of servers that execute this operation process.
The first block A 20a is an existing subsystem and includes a block management server group 21 and a user server group 22. The user server group 22 includes a plurality of servers that execute various kinds of data processing in response to a request transmitted from the user terminal USR. The block management server group 21 includes a plurality of servers that manage the user server group 22. With regard to the block management server group 21 and the user server group 22 in the first block A 20a, operation verification is already completed. The first block A 20a is also called a first block A 20a in which the operation verification is completed or a first block A 20a in which construction is completed. The completion of operation verification represents a state in which operation verification for verifying that an appropriate operation of a server group (for example, the first block A 20a) based on design specifications has been executed is completed.
The second block B 20b is a subsystem to be extended, and includes a block management server group 23 and a user server group 24. The user server group 24 includes a plurality of servers that perform various kinds of data processing in response to a request transmitted from the user terminal USR. The block management server group 23 includes a plurality of servers that manage the user server group 24. With regard to the block management server group 23 and the user server group 24 in the second block B 20b, operation verification is not completed. The second block B 20b is also called a second block B 20b that is an operation verification target, a second block B 20b in which operation verification is not performed, or a second block B 20b during construction.
The region management server group RM is a device that manages the first block A 20a and the second block B 20b, and includes a plurality of servers that perform this management process.
The management device 4 is a device that manages the overall operation verification in a case of performing the operation verification of the subsystem that is an operation verification target.
The fire wall 11 is a device having a so-called fire wall function that makes illegal access to the network N1 inside the operator management server group MC unable to occur. The WEB server 12 provides HTML data that is described in a hypertext markup language (HTML) in response to a request transmitted from a web browser of a client. The mail server 13 transmits and receives electronic mail, and functions as, for example, a simple mail transfer protocol (SMTP) server or a post office protocol (POP) server.
The CMDB 14 is a database that collects configuration information of a component that constitutes the information processing system SYS, and collectively manages the configuration information that is collected. For example, the component is hardware or software. In addition, examples of the hardware include a server that is an information processing device, a network device such as a router and a switch, and a storage device such as a hard disk drive (HDD). The personal authentication server 15 authenticates a user of the cloud system. The NTP server 16 synchronizes time set to each server to correct time. The DNS 17 is a server that manages, for example, correlation between a domain name of a server in the information processing system SYS and an IP address that is set to the server.
A user server group 22 of the first block A 20a includes a fire wall 221 and a VM server 222 which are connected to a network N3. VM is an abbreviation of a virtual machine. In addition, in the user server group 22, only one fire wall 221 and only one VM server 222 are illustrated for convenience of description, but the user server group 22 may include a plurality of the fire walls 221 and a plurality of the VM servers 222. Additionally, the user server group 22 may also include a network device or a storage device.
The fire wall 221 is a device of executing a so-called fire wall function of making illegal access to the network N3 in the user server group 22 unable to occur. The VM server 222 executes the virtual machine (VM) that virtualizes a hardware resource of the server or the like, and performs various kinds of data processing, for example, in response to a request transmitted from a user. Additionally, the VM server 222 may execute virtual routing (VR).
A block management server group 21 includes a fire wall 211, an image management server 212, a network management server 213, and a storage management server 214 which are connected to a network N2. The fire wall 211 is a device that executes a so-called fire wall function of making illegal access to the network N2 in the block management server group 21 unable to occur.
The image management server 212 manages a VM image of the virtual machine that is executed by the VM server 222 of the user server group 22. For example, the image management server 212 manages the amount of a hardware resource that is allocated to each virtual machine that is executed by the VM server 222 of the user server group 22. The network management server 213 manages a communication device in the user server group 22, and various kinds of setting information (IP address and the like) of the communication device. For example, the network management server 213 manages the fire wall 211 of the user server group 22, an IP address that is set to the VM server 222, and an IP address that is set to the virtual machine that is executed by the VM server 222.
The storage management server 214 manages a storage (not illustrated) of the user server group 22. For example, the storage management server 214 manages configuration information of a storage (not shown) that is allocated to the virtual machine that is executed by the VM server 222, or performance information such as a storage capacity of the storage. Additionally, the block management server group 21 may include various servers such as a WEB server, a mail server, CMDB, and a DNS server.
A user server group 24 of the second block B 20b includes a fire wall 241 and a VM server 242 which are connected to a network N5. In addition, in the user server group 24, only one fire wall 241 and only one VM server 242 are illustrated for convenience of description, but the user server group 24 may include a plurality of the fire walls 241 and a plurality of the VM servers 242. Additionally, the user server group 24 may include a network device such as a router and a switch, and a storage device.
The fire wall 241 is a device that executes a so-called fire wall function of making illegal access to the network N5 in the user server group 24 unable to occur. The VM server 242 executes a virtual machine that virtualizes a hardware resource of the server or the like, and performs various kinds of data processing, for example, in response to a request transmitted from a user. Additionally, the VM server 242 may execute a virtual router (VR).
A block management server group 23 includes a fire wall 231, an image management server 232, a network management server 233, and a storage management server 234 which are connected to a network N4. The fire wall 231 is a device that executes a so-called fire wall function of making illegal access to the network N4 in the block management server group 23 unable to occur.
The image management server 232 manages a VM image of the virtual machine that is executed by the VM server 242 of the user server group 24. For example, the image management server 232 manages the amount of a hardware resource that is allocated to each virtual machine that is executed by the VM server 242 of the user server group 24. The network management server 233 manages a communication device in the user server group 24, and various kinds of setting information (IP address and the like) of the communication device. For example, the network management server 233 manages the fire wall 241 of the user server group 24, an IP address that is set to the VM server 242, and an IP address that is set to the virtual machine that is executed by the VM server 242.
The storage management server 234 manages the storage (not illustrated) of the user server group 24. For example, the storage management server 234 manages configuration information of the storage (not illustrated) that is allocated to the virtual machine that is executed by the VM server 242, or performance information such as the capacity of the storage. Additionally, the block management server group 23 may include various servers such as a WEB server, a mail server, CMDB, and a DNS server.
A process, which is executed by the information processing system SYS in a case where a user uses a cloud service, will be described with reference to
The personal authentication server 15 authenticates the user based on the user ID and the password which are transmitted. When the authentication by the personal authentication server 15 is successful, for example, the image management server 212 of the block management server group 21 in
Description of information processing system SYS described with reference to
The fire wall 31 is a device that executes a so-called fire wall function of making illegal access to the network N6 in the region management server group RM unable to occur. The image management server 32 is a server that manages configuration information of a virtual machine that is executed by the image management server 212 of the block management server group 21, or configuration information of a virtual machine that is executed by the image management server 232 of the block management server group 23. In addition to this, the image management server 32 manages an IP address of the image management server 212 or an IP address of the image management server 232.
The network management server 33 is a server that manages an IP address of the network management server 213 of the block management server group 21, or an IP address of the network management server 233 of the block management server group 23. The WEB server 34 provides HTML data described in HTML in response to a request transmitted from the web browser of a client.
A server SVR is an example of a device that processes data, and one device of a device group. The server SVR includes a central processing unit (CPU) 201, a memory 202, a storage device 203, a communication device 204, an operation control unit 205, a display control unit 206, and a recording medium reading device 207 which are connected to each other, for example, through a bus B.
The CPU 201 is a computer (control unit) that controls the entirety of the server SVR. The memory 202 temporarily stores data processed in various kinds of information processing which are executed by the CPU 201, or various programs. For example, the storage device 203 is a magnetic storage device such as a hard disk drive (HDD) or a non-volatile memory. The storage device 203 stores a plurality of communication histories to be described later. Hereinafter, a communication history (also, simply referred to as a history) is appropriately described as a communication log, and a plurality of communication logs are appropriately described as a communication log group. In addition, the communication log group is indicated by a symbol LG in
For example, the communication device 204 is a network interface card (NIC), and is connected to a network N to perform network communication with various devices that are connected to the network N. Additionally, the communication device 204 may be connected to any network among the networks N1 to N6 in accordance with a location at which the server SVR is provided.
In response to an operation instruction that is input from an operation device 205a, the operation control unit 205 executes various processes according to the operation instruction. For example, the operation device 205a is a keyboard or a mouse.
The display control unit 206 executes a process of displaying various images on a display device 206a. Here, for example, the various images are images for setting an IP address and a port number. For example, the display device 206a is a liquid crystal display.
The recording medium reading device 207 is a device that reads out data recorded on a recording medium 207a. For example, the recording medium 207a is a portable recording medium such as a compact disc read only memory (CD-ROM), a digital versatile disc (DVD), and a universal serial bus (USB). In addition, a program (also, referred to software) to be described later may be recorded on the recording medium 207a.
Specific process software 2021 of the memory 202 is software that executes a specific process (function). In a case where the server SVR is a DNS server, the specific process software 2021 executes a so-called DNS function of managing the correlation between a domain name and an IP address. In a case where the server SVR is a mail server, the specific process software 2021 executes an SMTP function or a POP function. In addition, in a case where the server SVR is an image managing server, the specific process software 2021 executes an image managing function.
For example, the communication software 2022 is software that executes TCP/IP communication. The specific process software 2021 executes network communication with software, which is executed by another server or virtual machine, by using the communication software 2022. In a case of executing the communication, the communication software 2022 records various kinds of information which relate to the communication that is executed, and stores the various kinds of information in the storage device 203 as a communication log. The communication log is used when the management device 4 automatically detects a setting error of communication-related information.
For example, it is assumed that the specific process software 2021 communicates with software that operates on another server (not illustrated) by using the communication software 2022. Here, it is assumed that an IP address of the server SVR is “x1.y1.z1.w1”, and a port number that is used by the specific process software 2021 is “p1”. In addition, it is assumed that an IP address that is set to another server is “x2.y2.z2.w2”, and a port number used by software that operates on another server is “p2”.
During system extension, the manager operates the operation device 205a of the server SVR to be extended, and sets the above-described IP address (“x1.y1.z1.w1”) to the server SVR in advance. In addition, the manager operates the operation device 205a of the server SVR and sets the port number (“p2”) of a communication partner to the specific process software 2021 in advance as a transmission destination port number. In addition, the manager operates the operation device 205a of the server SVR, and sets the port number “p1” to the specific process software 2021 in advance in order for the specific process software 2021 to use the port number “p1” as a port number of a transmission source. In addition, during extension of another server, the manager sets the above-described IP address (“x2.y2.z2.w2”) to another server in advance, and sets the port number (“p2”) to specific process software (not illustrated) that is executed by another server in advance.
The communication software 2022 creates a communication packet in which a transmission source IP address is set to “x1.y1.z1.w1”, a transmission source port number is set to “p1”, a transmission destination IP address is set to “x2.y2.z2.w2”, and a transmission destination port number is set to “p2”. In addition, the communication software 2022 includes transmission data. (also, referred to as a payload) in the communication packet, and transmits the transmission data to another server (this transmission is also referred to as data transmission).
The communication software 2022 creates a communication log including the transmission source IP address of “x1.y1.z1.w1”, the transmission source port number of “p1”, the transmission destination IP address of “x2.y2.z2.w2”, and the transmission destination port number of “p2” in combination with the above-described transmission, and stores the communication log in the storage device 203. In this manner, the communication software 2022 records specific information that specifies the transmission source and the transmission destination of communication as the communication log. The communication log is data including the specific information that specifies at least the transmission source and the transmission destination of communication.
In addition, the communication software 2022 establishes a connection with another server before data transmission. When the connection is successfully established, the communication software 2022 includes “OK” in the communication log as a state. On the other hand, in a case where the connection with another server is not established, the communication software 2022 stores “no response” as a state. In addition, in association with the storage of the “no response”, the communication software 2022 stores a communication log including the transmission source IP address of “x1.y1.z1.w1”, the transmission source port number of “p1”, the transmission destination IP address of “x2.y2.z2.w2”, and the transmission destination port number of “p2”. In addition, the communication software 2022 stores the number of times of communication.
Hardware Extension and Operation Verification
Hardware extension will be described in detail with reference to
The subsystem may be the block management server group 21 or the block management server group 23. In this case, the subsystem to be extended is the block management server group 23, and the existing subsystem is the block management server group 21.
During the extension in the subsystem unit, the manager makes a first configuration of the subsystem to be extended be the same or substantially the same as a second configuration of the existing subsystem. The first configuration and the second configuration are set as a hardware configuration and a software configuration. In addition, the hardware is, for example, a server, a network device, or a storage device.
In a case where the first configuration and the second configuration are set as the hardware configuration, a case where the first configuration and the second configuration are the same as each other represents the following case. That is, if the configurations are the same as each other, in a case where the hardware configuration of the existing subsystem is constituted by first to Anth servers (An represents an integer of two or more), the hardware configuration of the subsystem to be extended is also constituted by servers having the same function as those of the first to Anth servers. In addition, in a case where the first configuration and the second configuration are set as the hardware configuration, a case where the first configuration and the second configuration are substantially the same represents the following case. That is, if the configurations are substantially the same as each other, in a case where the hardware configuration of the existing subsystem is constituted by first to Anth servers, the subsystem to be extended has servers having the same function as those of eighty percent of the servers among the first to Anth servers.
In a case where the first configuration and the second configuration are set as the software configuration, a case where the first configuration and the second configuration are the same as each other represents the following case. That is, if the configurations are the same as each other, in a case where first software to Bnth software (Bn represent an integer of two or more) operate in respective servers of the existing subsystem, the first software to the Bnth software also operate in respective servers of the subsystem to be extended. In a case where the first configuration and the second configuration are set as the software configuration, a case where the first configuration and the second configuration are substantially the same as each other represents the following case. That is, if the configurations are substantially the same as each other, in a case where first software to the Bnth software operate in respective servers of the existing subsystem, the subsystem to be extended executes eighty percent of the software among the first software to the Bnth software in respective servers of the system. In addition, the numerical value of the above-described eighty percent is illustrative only.
The reason that the manager makes the first configuration and the second configuration be the same or substantially the same as each other is as follows. As a first reason, for example, the manager customizes only a part of various kinds of setting information and the like, which are set in the hardware or the software of the existing subsystem, for the subsystem to be extended, and sets the customized setting information and the like to the hardware or the software of the subsystem to be extended. In other words, the manager utilizes the various kinds of setting information, which are set to the hardware or the software of the existing subsystem, in the subsystem to be extended. Due to the utilization, the manager reduces additional man-hours on the server extension.
In addition, as a second reason, the reason that the manager makes the first configuration and the second configuration be the same or substantially the same as each other is to utilize experience accumulated during management of the existing subsystem in the management of a subsystem to be extended. This experience allows the manager to reduce the burden of managing the subsystem to be extended.
The manager sets the transmission source IP address to a server (that is, a server in the subsystem to be extended) in the second block B 20b during construction, or sets the transmission destination port number, the transmission source port number, and the transmission destination IP address to the specific process software, which operates on the server, in advance.
In a case where the manager extends hardware, and performs various settings on the extended hardware or software that is executed by the hardware, mistakes may be made in the setting of communication-related information.
For example, as described above, when extending the subsystem, the manager utilizes various kinds of setting information, which are set to the hardware or the software of the existing subsystem, in the subsystem to be extended. The various kinds of setting information represent communication-related information such as the IP address and the port number.
During utilization of the communication-related information, the manager partially customizes the IP address or the port number in the communication-related information that is used in the existing subsystem. In addition, the manager sets the IP address or the port number, which is customized, in the hardware or the software of the subsystem to be extended.
For example, the manager may set a different IP address or a different port number with respect to a same functional server in a different management server group so as to cope with individual specifications determined for each block management server group. Thereby, the manager performs customization.
In an example of
However, during the process of extending the subsystem, the manager may not appropriately customize the communication-related information such as the IP address, or may forget the customization of the communication-related information, thereby making a setting error in the communication-related information. As a result, the subsystem to be extended (in an example of
Operation Verification
The operation verification of the subsystem to be extended will be described with reference to
Specifically, the manager gives an instruction for the image management server 232 of the second block B 20b to activate and execute a virtual machine for operation verification. In response to the instruction, the image management server 232 transmits a communication packet including a command (hereinafter, abbreviated as a command), which instructs transmission of network information for activating and executing the virtual machine for operation verification, to the network management server 233. The network management server 233 transmits the network information to the image management server 232 in response to the command. Similarly, the image management server 232 transmits a command, which instructs transmission of storage information for activating and executing a virtual machine for operation verification, to the storage management server 234. The storage management server 234 transmits the storage information to the image management server 232 in response to the command.
The image management server 232 transmits information for activating a VM that is managed by the server, and the network information and storage information which are received, to the VM server 242 of the user server group 24 together with the VM activation command. In response to the VM activation command, the VM server 242 activates and executes a virtual machine that corresponds to the VM activation information, the network information, and the storage information which are received. The manager executes various kinds of information processing with respect to the virtual machine that is activated and executed by the VM server 242 to confirm whether or not an appropriate operation is performed.
When this confirmation is completed, the manager gives an instruction for the image management server 232 of the second block B 20b to stop the virtual machine for operation verification. In response to the instruction, the image management server 232 transmits a command that instructs the stoppage of the virtual machine for operation verification to the VM server 242. In response to the command, the VM server 242 stops the virtual machine. In accordance with transmission and reception of the command and the like between the above-described respective servers, the respective servers create a communication log and store the communication log in the servers.
In a case where correct communication-related information is set to the hardware or the software of the second block B 20b, communication between servers is appropriately executed during verification. However, in a case where correct communication-related information is not set to the hardware or the software of the second block B 20b, the communication between the servers is not appropriately executed.
For example, it is assumed that software (specific process software) of the image management server 232 communicates with the network management server 233. In this case, during extension of the second block B 20b, the manager is demanded to correctly set communication-related information for the network management server 233, which is a communication destination, to the software of the image management server 232. Examples of the above-described communication-related information include an IP address of the network management server 233 that is a communication destination, and a port number for a service that is executed by the network management server 233. In a case where the correct communication-related information is not set to the image management server 232, it is difficult for the image management server 232 to execute communication with respect to the network management server 233. As a result, activation and execution of the above-described virtual machine are not performed, and thus operation verification of the second block B 20b ends in failure. When the operation verification ends in failure, the manager analyzes the cause of the failure of the operation verification.
A hardware configuration and a software configuration of the second block B 20b that is an operation verification target are the same or substantially the same as a hardware configuration and a software configuration of the first block A 20a to which the operation verification is already executed and which appropriately operates. In addition, the manager partially customizes the communication-related information that is set to a server of the first block A 20a and sets the customized communication-related information to a server of the second block B 20b.
Here, in a case where the second block B 20b executes a process with the same contents as a process executed by the first block A 20a as the operation verification, it is assumed that a communication process appropriately operates in the second block B 20b that is an operation verification target. Under this assumption, it may be assumed that a communication log, which matches or substantially matches a communication log present in the first block A 20a in which the operation verification is completed, is likely to be present in the second block B 20b that is an operation verification target.
In this regard, the present inventors have found that a setting error is likely to be present in communication-related information that relates to a communication log present only in a first device group (for example, the first block A 20a) in which the operation verification is completed.
In addition, the present inventors have obtained the following finding. Among communication logs present in a second device group (for example, the second block B 20b) that is an operation verification target, even when a communication log that matches a communication log present in the first device group in which the operation verification is completed is present, a setting error is likely to be present in communication-related information that relates to the communication log. As the reason, as described below, a case in which a communication process is accidentally successful may be exemplified.
In addition, among communication logs in the second block B 20b that is an operation verification target, a communication log (communication state information: no response) that indicates a communication failure may be recorded. In the communication log, a setting error is also likely to be present in communication-related information that relates to the communication log. Hereinafter, the communication log in which a setting error is likely to be present in the communication-related information is appropriately described as a setting error candidate communication log.
Accordingly, during the operation verification, the management device 4 compares a communication log present in the first device group in which the operation verification is completed and a communication log present in the second device group that is an operation verification target with each other. The management device 4 detects a setting error candidate communication log based on a comparison result. The management device 4 determines that a setting error occurs with respect to the communication-related information that relates to the detected setting error candidate communication log, and the management device 4 notifies the manager of the determination. The comparison of the communication log, and the detection and notification of the setting error which are executed by the management device 4 will be described below in detail.
Hardware Block Diagram of Management Device
The CPU 401 is a computer (control unit) that controls the entirety of the management device 4. The memory 402 temporarily stores data processed in various kinds of information processing which are executed by the CPU 401, or various programs. For example, the storage device 403 is a magnetic storage device such as a hard disk drive or a non-volatile memory. The storage device 403 stores a communication log database DB1 and a server-corresponding database DB2 to be described later.
For example, the communication device 404 is a network interface card, and is connected to a network N to perform network communication with various devices that are connected to the network N.
In response to an operation instruction that is input from an operation device 405a, the operation control unit 405 executes various processes according to the operation instruction. For example, the operation device 405a is a keyboard or a mouse.
The display control unit 406 executes a process of displaying various images on a display device 406a. Here, for example, the various images are images including various kinds of information which relate to a setting error. For example, the display device 406a is a liquid crystal display.
The recording medium reading device 407 is a device that reads out data recorded on a recording medium 407a. For example, the recording medium 407a is a portable recording medium such as a CD-ROM, a DVD, and a USB memory. In addition, a program to be described with reference to
Block Diagram of Software Module of Management Device
The management device 4 is an example of a device that detects a setting error of specific information that specifies a transmission source and a transmission destination of communication in the information processing system SYS (refer to
To detect and make a notification of the setting error of the above-described specific information, the management device 4 includes a communication log acquisition unit 41, a first communication log comparison unit 42, a correlation creation unit 43, a communication log trimming unit 44, a second communication log comparison unit 45, an error detection unit 46, and a notification unit 47.
The communication log acquisition unit 41 acquires a first communication log including specific information that specifies a transmission source and a transmission destination of communication that is executed between devices (for example, servers) of the block management server group 21 in the first device group (for example, the first block A 20a) in which the operation verification is completed. In addition, the communication log acquisition unit 41 acquires a second communication log including specific information that specifies a transmission source and a transmission destination of communication that is executed between servers of the block management server group 23 in the second device group (for example, the second block B 20b) that is an operation verification target. In addition, as described with reference to
The first communication log comparison unit 42 compares the first communication log and the second communication log with each other, and searches for a server in the first device group and a server in the second device group, which are same functional servers, based on a comparison result. The search is also called determination. Hereinafter, the search is appropriately described as “determination”.
Here, the first and second communication logs include a transmission source IP address that is set to a server of the transmission source of the above-described communication, and a transmission destination IP address and a transmission destination port number which are set to a server of the transmission destination of the above-described communication.
In the above-described comparison, the first communication log comparison unit 42 compares the transmission destination port number of the first communication log and the transmission destination port number of the second communication log with each other, and determines whether or not the transmission destination port number of the first communication log and the transmission destination port number of the second communication log match each other.
In the above-described search, the first communication log comparison unit 42 searches for a same functional server based on a transmission source IP address and a transmission destination IP address of a first communication log that includes a matching transmission destination port number, and a transmission source IP address and a transmission destination IP address of a second communication log that includes the matching transmission destination port number.
The correlation creation unit 43 stores the IP address that is set to the same functional server in the first device group and the IP address that is set to the same functional server in the second device group in the server-corresponding database DB2 of the storage device 403 in association with each other.
The communication log trimming unit 44 trims the first and second communication logs that are acquired by the communication log acquisition unit 41 to reduce a storage amount in the communication logs, and stores the first and second communication logs. The second communication log comparison unit 45 compares first specific information of the first communication log and second specific information of the second communication log with each other, which corresponds to the first communication log, with reference to, for example, a server-corresponding table TR2 (refer to
The error detection unit 46 detects a setting error of specific information that is set to a device (for example, a server) of the second device group based on a comparison result between the above-described first specific information and the above-described second specific information. The notification unit 47 notifies the manager of the setting error detected by the error detection unit 46 through the display control unit 406 and the display device 406a (refer to
The communication log acquisition unit 41, the first communication log comparison unit 42, the correlation creation unit 43, the communication log trimming unit 44, the second communication log comparison unit 45, the error detection unit 46, and the notification unit 47 are so-called programs. The programs are stored, for example, in the storage device 403. During activation, the CPU 401 in
Same Functional Server
The second communication log comparison unit 45 compares the first communication log present in the first device group in which the operation verification is completed and the second communication log present in the second device group that is an operation verification target with each other, and determines whether or not the first and second communication logs have the same contents. In the immediately previous stage of the comparison, the second communication log comparison unit 45 compares the IP address that is included in the first communication log and the IP address that is included in the second communication log with each other, and determines whether or not both of the IP addresses match each other.
In a case of determining whether or not the first and second communication logs have the same contents, when the IP address set to the device of the first device group in which the operation verification is completed, and the IP address set to the device of the second device group which has the same function as the device in the first device group and which is an operation verification target correspond one to one, the above-described determination may be performed with high accuracy. For example, the one-to-one correspondence between the IP address set to the device of the first device group in which the operation verification is completed and the IP address set to the device of the second device group which is an operation verification target represents that both of the IP addresses match each other.
However, as described above, the manager sets various kinds of setting information (for example, an IP address), which are customized, and the like to the device of the second device group which is an operation verification target. That is, the IP address set to the device of the first device group in which the operation verification is completed, and the IP address set to the device (for example, a server) of the second device group which has the same function as the device of the first device group and which is an operation verification target may not match each other.
Therefore, the second communication log comparison unit 45 executes the following process of converting an IP address in order for the IP address set to the device of the first device group in which the operation verification is completed and the IP address set to the device of the second device group which has the same function as the device of the first device group and which is an operation verification target set, to correspond one to one.
For execution of the process of converting the above-described IP address, the same functional server of the first device group in which the operation verification is completed and the same functional server of the second device group which is an operation verification target are determined (also, referred to as search). That is, it is desirable for the management device 4 to determine the same functional server. In addition, the same functional server is also called a server having substantially the same role.
Hereinafter, the process of determining the same functional server will be described. Here, as a premise for the execution of the process of determining the same functional server, the following three assumptions are assumed. As a first assumption, the number of servers of the first block A 20a in which the operation verification is completed and the number of servers of the second block B 20b which is an operation verification target may not match each other. In addition, in this non-matching case, a server that is not determined to be the same functional server remains in any one or both of the first block A 20a and the second block B 20b.
As a second assumption, the same functional server is desirable to be present in the first block A 20a and the second block B 20b. However, a plurality of the same functional servers may be present in any one or both of the first block A 20a and the second block B 20b. For example, Na (Na represents an integer of two or more) servers having a function may be present in the first block A 20a, and Nb (Nb represents an integer different from Na) servers having the same function as the function may be present in the second block B 20b.
As a third assumption, a setting error of specific information set to the server of the first block A 20a in which the operation verification is completed is not present (correction of the setting error is completed), but a setting error of specific information set to the server of the second block B 20b which is an operation verification target is present.
However, a port number included in a communication log is a number that specifies an application (also, referred to as a program, a service, and a component) that operates on a server that is a communication destination when an information processing device such as a server executes communication. In addition, a different port number is allocated for each application operating on the server that is a communication destination.
Here, it is assumed that one application executes one function. In this case, it is possible to discriminate a function of a server that allows one application to operate due to one port number that is allocated to the one application. In other words, it is possible to specify a function executed by the server by the port number. For example, it may be seen that a server allowing an application to which one port number 53 is allocated to operate is a DNS server that executes a DNS function.
Accordingly, in a case where a port number allocated to an application that operates on a first server of the first block A 20a in which the operation verification is completed, and a port number allocated to an application that operates on a second server of the second block B 20b which is an operation verification target match each other, the following determination process is executed. That is, the first communication log comparison unit 42 determines servers, which operate as the first and second servers, to be same functional servers.
Flow of Process of Determining Same Functional Server
Step 51: The communication log acquisition unit 41 acquires a communication log of the first device group in which the operation verification is completed, or a communication log of the second device group that is an operation verification target. Step S1 will be described with reference to
Step S2: The first communication log comparison unit 42 performs listing of a standby port number. Step S2 will be described with reference to
Step S3: The first communication log comparison unit 42 determines a same functional server based on a specific port number. A process in step S3 is also called a process of determining a same functional server by application of a single-use port rule. Step S3 will be described with reference to
Step S4: The first communication log comparison unit 42 determines a same functional server based on a transmission destination IP address, a transmission source IP address, and a port number. A process in step S4 is also called a process of determining a same functional server by application of a rule in which transmission source correlation is completed. Step S4 will be described with reference to
Step S5: The first communication log comparison unit 42 determines a same functional server based on a specific port number with respect to an undetermined server. A process in step S5 is also called a process of determining a same functional server by application of a remaining single-use port rule. Step S5 will be described with reference to
Step S6: The first communication log comparison unit 42 determines whether or not a same functional server is determined in step S4 and step S5, and in a case where the same functional server is determined (YES in step S6), the process returns again to step S4. On the other hand, in a case where the first communication log comparison unit 42 does not determine the same functional server (NO in step S6), the process transitions to step S7.
Step S7: The first communication log comparison unit 42 determines whether or not a same functional server analogy mode is “ON”. The same functional server analogy mode is a mode in which the same functional server is analogized by using a standby port number in a case where the same functional server is not determined even when executing the processes in step S3 to step S5. The case where the same functional server analogy mode is “ON” represents a case where a same functional server analogy flag that is stored in the storage device 403 is “ON”. The manager operates the operation device 405a to set “ON” (for example, “1”) or “OFF” (for example, “0”) to the same functional server analogy flag that is stored in the storage device 403.
In a case where the same functional server analogy mode is “OFF” (NO in step S7), the process is terminated. In a case where the same functional server analogy mode is “ON” (YES in step S7), the process transitions to step S8.
Step S8: The first communication log comparison unit 42 analogizes the same functional server. Step S8 will be described with reference to
Hereinafter, the contents of respective steps in
Acquisition of Communication Log
The communication log acquisition unit 41 acquires a communication log of the first device group in which the operation verification is completed, or a communication log of the second device group that is an operation verification target, and outputs the communication log to the first communication log comparison unit 42 and the communication log trimming unit 44 (step S1).
Specifically, the communication log acquisition unit 41 acquires a communication log of the first block A 20a in which the operation verification is completed, or a communication log of the second block B 20b that is an operation verification target. The communication log acquisition unit 41 outputs the acquired communication log to the communication log trimming unit 44 and the first communication log comparison unit 42. Before operational verification of the second block B 20b, the communication log acquisition unit 41 acquires a non-acquired communication log from a communication log group (refer to a symbol LG in
The first communication log comparison unit 42 stores the communication log of the first block A 20a or the communication log of the second block B 20b which is input from the communication log acquisition unit 41 to the communication log database DB1 in
The communication log table T1 includes a transmission source IP address column, a transmission source port number column, a transmission destination IP address column, a transmission destination port number column, and a column of the number of times of communication. In the communication log table T1, one communication log is stored for each row.
As described above, the communication log includes the transmission source IP address, the transmission source port number, the transmission destination IP address, the transmission destination port number, and the number of times of communication.
For example, the first communication log comparison unit 42 stores a communication log including a transmission source IP address “192.168.1.26”, a transmission source port number “55337”, a transmission destination IP address “192.168.1.37”, a transmission destination port number “25”, and the number of times of communication “1” being executed between servers in the first block A 20a in the communication log table T1 (refer to a symbol P1).
The first communication log comparison unit 42 also stores a communication log of the second block B 20b, which is input from the communication log acquisition unit 41, in the storage device 403 in the table type illustrated in
Listing of Standby Port Number
The first communication log comparison unit 42 makes a list of a standby port number (step S2). The standby port number will now be described. As described with reference to
The communication software 2022 creates a communication packet (hereinafter, appropriately described as a communication packet P) in which a transmission source IP address is set to “x1.y1.z1.w1”, a transmission source port number is set to “p1”, a transmission destination IP address is set to “x2.y2.z2.w2”, and a transmission destination port number is set to “p2”. In addition, the communication software 2022 includes transmission data in the communication packet P, and transmits the transmission data to the second server.
The standby port number in the above-described communication is the port number “p2” that is used by software operating on the second server that is a transmission destination of the communication packet.
The first communication log comparison unit 42 extracts a standby port number with respect to all communication logs acquired from the first block A 20a and the second block B 20b, and extracts transmission source IP addresses and transmission destination IP addresses which are included in communication logs including the standby port number that is extracted. In addition, the first communication log comparison unit 42 stores the transmission source IP address and the transmission destination IP address, which are extracted, in association with the standby port number that is extracted.
The process of storing the transmission source IP address and the transmission destination IP address, which are extracted in association with the standby port number that is extracted, by the first communication log comparison unit 42 is the listing of the standby port number.
For example, the first communication log comparison unit 42 performs the listing of the standby port number with respect to all communication logs that are stored in the communication log table T1 in
The first communication log comparison unit 42 extracts the transmission destination port number “25” as a standby port number from a communication log P1, and extracts the transmission source IP address “192.168.1.26” and the transmission destination IP address “192.168.1.37” which are included in the communication log P1. In addition, the first communication log comparison unit 42 stores the transmission source IP address “192.168.1.26” and the transmission destination IP address “192.168.1.37” in association with the standby port number “25”, for example, in a table.
It is possible to specify a function of a server to which the standby port number is set by using the standby port number.
Hereinafter, a log, which includes the standby port number that is extracted, and the transmission source IP address and the transmission destination IP address which are extracted and which correspond to the standby port number, are appropriately described as a standby port number log.
The first communication log comparison unit 42 stores the standby port number “25” that is extracted as described above in the standby port number column, and respectively stores the transmission source IP address “192.168.1.26” and the transmission destination IP address “192.168.1.37” in the transmission source IP address column and the transmission destination IP address column in association with the standby port number “25”.
Then, the first communication log comparison unit 42 performs listing of the standby port number with respect to all communication logs from the first block A 20a, and stores the standby port number, for example, in the port number table T2 in
Here, the first communication log comparison unit 42 stores standby port number logs having the same transmission source IP address and the same transmission destination IP address, among a plurality of the standby port number logs, in the same row of the port number table.
For example, a transmission source IP address “192.168.1.37”, a transmission destination IP address “192.168.1.31”, and a standby port number “25” are included in a first standby port number log. In addition, a transmission source IP address “192.168.1.37”, a transmission destination IP address “192.168.1.31”, and a standby port number “2952” are included in a second standby port number log. In this case, as indicated by a symbol P12 in
The first communication log comparison unit 42 creates a standby port number log from the communication log of the first block A 20a, and stores the standby port number log in the communication log database DB1 in the table type illustrated in
A port number table T2a is an example of a table that stores the standby port number log that is created from the communication log of the first block A 20a. A port number table T2b is an example of a table that stores the standby port number log that is created from the communication log of the second block B 20b. A state in which the communication log database DB1 in
Determination of Same Functional Server Based on Specific Port Number
The first communication log comparison unit 42 determines a same functional server based on a specific port number (step S3).
Specifically, the first communication log comparison unit 42 determines whether or not one matching transmission destination port number is present among transmission destination port numbers of one or more first communication logs and transmission destination port numbers of one or more second communication logs. For example, each of the first communication logs is a communication log of the first block A 20a, and each of the second communication log is a communication log of the second block B 20b.
In a case where it is determined that one matching transmission destination port number is present, the first communication log comparison unit 42 executes the following process. That is, the first communication log comparison unit 42 determines (searches for) a server to which a transmission source IP address of the first communication log including the matching transmission destination port number is set, and a server to which a transmission source IP address of the second communication log including the matching transmission destination port number is set as a same functional server. In addition, the first communication log comparison unit 42 determines a server to which a transmission destination IP address of the first communication log including the matching transmission destination port number is set, and a server to which a transmission destination IP address of the second communication log including the matching transmission destination port number is set as a same functional server.
For example, in a case where only one unit of communication using an arbitrary specific port number is present in the first block A 20a, and only one unit of communication using the arbitrary specific port number is present in the second block B 20b (this case is described as a first case), the first communication log comparison unit 42 performs the following determination. That is, in the first case, the first communication log comparison unit 42 determines a server, to which a transmission source IP address included in a communication log of the one unit of communication is set, in the first block A 20a, and a server, to which the transmission source IP address included in the communication log of the one unit of communication is set, in the second block B 20b as a same functional server. In addition, in the first case, the first communication log comparison unit 42 determines a server, to which a transmission destination IP address included in the communication log of the one unit of communication is set, in the first block A 20a, and a server, to which the transmission destination IP address included in the communication log of the one unit of communication is set, in the second block B 20b as a same functional server.
In other words, the first case represents a case where only one same standby port number is stored in the standby port number column of the port number table T2a in
In the first case, the first communication log comparison unit 42 determines a server to which a transmission source IP address of a standby port number log including the same standby port number in the port number table T2a is set, and a server to which a transmission source IP address of a standby port number log including the same standby port number in the port number table T2b is set as a same functional server.
In a case of the above-described example, a server to which a transmission source IP address “192.168.137” of the standby port number log including the port number “2952” in the port number table T2a is set, and a server to which a transmission source IP address “192.168.5.37” of the standby port number log including the port number “2952” in the port number table T2b is set are determined to be same functional servers (refer to a symbol AR1).
In addition, in the first case, the first communication log comparison unit 42 determines a server to which a transmission destination IP address of the standby port number log including the same standby port number in the port number table T2a is set, and a server to which a transmission destination IP address of the standby port number log including the same standby port number in the port number table T2b is set as a same functional server.
In a case of the above-described example, a server to which a transmission destination IP address “192.168.1.31” of the standby port number log including the port number “2952” in the port number table T2a is set, and a server to which a transmission destination IP address “192.168.5.31” of the standby port number log including the port number “2952” in the port number table T2b is set are determined to be same functional servers (refer to a symbol AR2).
Determination of Same Functional Server Based on Transmission Destination IP Address, Transmission Source IP Address, and Port Number
The first communication log comparison unit 42 determines a same functional server based on the transmission destination IP address, the transmission source IP address, and the port number (step S4). In addition, a specific example thereof will be described with reference to
During execution of step S4, with reference to a plurality of first communication logs, the first communication log comparison unit 42 determines whether or not among a plurality of servers that are communication destinations with which a server determined (searched for) as a same functional server in the first device group communicates, one first server not determined to be a same functional server is present. For example, the first device group is the first block A 20a.
In addition, with reference to a plurality of second communication logs, the first communication log comparison unit 42 determines that among a plurality of servers that are communication destinations with which a server determined to be a same functional server in the second device group communicates, one second server not determined to be a same functional server is present. For example, the second device group is the second block B 20b.
In a case where it is determined that one first server is present and one second server is present, the first communication log comparison unit 42 performs the following determination. That is, the first communication log comparison unit 42 determines whether or not a transmission destination port number (standby port number) of the first communication log including an IP address set to one first server as a transmission destination IP address, and a transmission destination port number of the second communication log including an IP address set to one second server as a transmission destination IP address match each other.
In addition, in a case where it is determined that the transmission destination port numbers match each other, the first communication log comparison unit 42 determines one first server and one second server to be same functional servers.
For example, in a case (described as a second case) where the following first to third conditions are satisfied, the first communication log comparison unit 42 performs the following determination. First, the first to third conditions will be described.
The first condition assumes that a server of the first block A 20a and a server of the second block B 20b are determined to be same functional servers.
The second condition assumes that among a plurality of transmission destination (communication destination) servers to which a communication packet is transmitted by the determined server, only one server not determined to be a same functional server is present. Hereinafter, a server that is not determined to be the same functional server is appropriately described as an undetermined server.
The third condition assumes that a port number (that is, a standby port number) that is used by software operating on the one undetermined server in the first block A 20a, and a standby port number that is used by software operating on the one undetermined server in the second block B 20b are the same as each other.
In a case where the first to third conditions are satisfied, the first communication log comparison unit 42 determines the one undetermined server in the first block A 20a and the one undetermined server in the second block B 20b to be same functional servers.
As can be seen from a symbol P21a in
As can be seen from a symbol P21b in
In addition, as is apparent from the port number table T2a in
With regard to the example of
Next, the second condition will be examined. Here, the server A2 and the server B2 are determined to be same functional servers. In addition, in two servers A2 and A3 to which the server A1 transmits a communication packet, only one server A3 is present as an undetermined server. In addition, in two servers B2 and B3 to which the server B1 transmits a communication packet, only one server B3 is present as an undetermined server. Accordingly, it can be said that the second condition is satisfied.
Next, the third condition is examined. As can be seen from the symbol P22a in
As illustrated in
Determination of Same Functional Server Based on Specific Port Number With Respect To Undetermined Server
The first communication log comparison unit 42 determines a same functional server based on a specific port number with respect to an undetermined server (step S5).
IP addresses and port numbers which are stored in a port number table T2a in
For the following description, in
Except for communication that is executed by the determined transmission source server and the determined transmission destination server, in a case where only one unit of communication (hereinafter, described as communication X) using an arbitrary specific port number is present in the first block A 20a and only one unit of communication using the arbitrary specific port number is present in the second block B 20b (hereinafter, described as a third case), the first communication log comparison unit 42 performs the following determination.
A communication log of the communication X in the first block A 20a is a first exclusion communication log obtained by excluding a first communication log, which includes IP addresses that are respectively set to two servers determined as same functional servers in the first block A 20a as a transmission source IP address and a transmission destination IP address, from a plurality of first communication logs.
A communication log of the communication X in the second block B 20b is a second exclusion communication log obtained by excluding a second communication log, which includes IP addresses that are respectively set to two servers determined as same functional servers in the second block B 20b as a transmission source IP address and a transmission destination IP address, from a plurality of second communication logs.
The first communication log comparison unit 42 extracts the first and second exclusion communication logs.
Here, a standby port number log, which includes an IP address set to an undetermined transmission source server and an IP address set to an undetermined transmission destination server, is described as an entirely undetermined standby port number log. In an example of the port number table T2a in
In other words, the third case is a case where only one standby port number is stored in the standby port number column of the port number table T2a in
Only one port number “9004” surrounded by a dotted-line circle in
In the third case, the first communication log comparison unit 42 determines the following two servers as same functional servers. In other words, in a case where it is determined that one matching transmission destination port number is present among transmission destination port numbers (standby port numbers) of one or more first exclusion communication logs and transmission destination port numbers of one or more second exclusion communication logs (third case), the first communication log comparison unit 42 performs the following determination process.
The first communication log comparison unit 42 determines a server to which a transmission source IP address of the first communication log including the matching transmission destination port number is set, and a server to which a transmission source IP address of the second communication log including the matching transmission destination port number is set as same functional servers. In addition, the first communication log comparison unit 42 determines a server to which a transmission destination IP address of the first communication log including the matching transmission destination port number is set, and a server to which a transmission destination IP address of the second communication log including the matching transmission destination port number is set as same functional servers.
For example, the first communication log comparison unit 42 determines the following two servers as same functional servers.
A first server is a server to which a transmission source IP address of a standby port number log including the same standby port number in the port number table T2a is set. A second server is a server to which a transmission source IP address of a standby port number log including the same standby port number in the port number table T2b is set.
In the case of the above-described example, the first communication log comparison unit 42 determines a server to which a transmission source IP address “12.3.0.142” of the standby port number log including a port number “9004” in the port number table T2a is set, and a server to which a transmission source IP address “12.5.0.142” of the standby port number log including a port number “9004” in the port number table T2b is set as same functional servers (refer to a symbol AR4).
In addition, in the third case, the first communication log comparison unit 42 determines the following two servers as same functional servers. A first server is a server to which a transmission destination IP address of the standby port number log including the same standby port number in the port number table T2a is set. A second server is a server to which a transmission destination IP address of the standby port number log including the same standby port number in the port number table T2b is set.
In a case of the above-described example, the first communication log comparison unit 42 determines a server to which a transmission destination IP address “12.0.3.7” of the standby port number log including the port number “9004” in the port number table T2a is set, and a server to which a transmission destination IP address “12.2.3.7” of the standby port number log including the port number “9004” in the port number table T2b is set as same functional servers (refer to a symbol AR5).
IP address and port numbers which are stored in a port number table T2a in
For the following description, in
In a fourth case, the first communication log comparison unit 42 performs the following determination. Except for communication that is executed by the determined transmission source server and an undetermined transmission destination server or communication that is executed by an undetermined transmission source server and the determined transmission destination server, the fourth case is a case where only one unit of communication (hereinafter, described as communication Y) using an arbitrary specific port number is present in the first block A 20a and only one unit of communication using the arbitrary specific port number is present in the second block B 20b.
A communication log of the communication Y in the first block A 20a is a first exclusion communication log obtained by excluding a first communication log, which includes an IP address set to a server determined as a same functional server in the first block A 20a as a transmission source IP address (or a transmission destination IP address), from a plurality of first communication logs.
A communication log of the communication Y in the second block B 20b is a second exclusion communication log obtained by excluding a second communication log, which includes an IP address set to a server determined as a same functional server in the second block B 20b as a transmission source IP address (or a transmission destination IP address), from a plurality of second communication logs.
The first communication log comparison unit 42 extracts the first and second exclusion communication logs.
Here, a standby port number log, which includes an IP address set to an undetermined transmission source server and an IP address set to a determined transmission destination server, is described as a partially undetermined standby port number log. Similarly, a standby port number log, which includes an IP address set to a determined transmission source server and an IP address set to an undetermined transmission destination server, is described as a partially undetermined standby port number log. In an example of the port number table T2a in
In other words, the fourth case is a case where only one same standby port number is stored in the standby port number column of the port number table T2a in
Only one port number “25” surrounded by a dotted-line circle in
In the fourth case, the first communication log comparison unit 42 determines the following two servers as same functional servers. In other words, in a case where it is determined that one matching transmission destination port number is present among transmission destination port numbers of one or more first exclusion communication logs and transmission destination port numbers of one or more second exclusion communication logs (fourth case), the first communication log comparison unit 42 performs the following determination process.
The first communication log comparison unit 42 determines a server to which a transmission destination IP address (or a transmission source IP address) of the first communication log including the matching transmission destination port number is set, and a server to which a transmission destination IP address (or a transmission source IP address) of the second communication log including the matching transmission destination port number are set as same functional servers.
For example, the first communication log comparison unit 42 determines the following two servers as same functional servers.
A first server is an undetermined server of the standby port number log including the same standby port number in the port number table T2a. A second server is an undetermined server of the standby port number log including the same standby port number in the port number table T2b. In addition, the undetermined server is a server to which an IP address to which a strike-through is not applied in
In a case of the above-described example, the first communication log comparison unit 42 determines a server to which a transmission source IP address “192.168.1.26”, to which a strike-through is not given, of the standby port number log including a port number “25” in the port number table T2a is set, and a server to which a transmission source IP address “192.168.5.26”, to which a strike-through is not given, of the standby port number log including a port number “25” in the port number table T2b is set as same functional servers (refer to a symbol AR6).
The first communication log comparison unit 42 determines whether or not the same functional server is determined in step S4 and step S5 described above (step S6). In a case where the same functional server is determined by the first communication log comparison unit 42 (YES in step S6), the process returns again to step S4.
When the determination process in step S4 and step S5 is executed again after determining the same functional server, a same functional server, which is not determined in an immediately previous determination process, may be determined. Accordingly, the process returns again to step S4 to execute again the process of determining the same functional server.
On the other hand, when the first communication log comparison unit 42 does not determine the same functional server (NO in step S6), the process transitions to step S7.
The first communication log comparison unit 42 determines whether or not a same functional server analogy mode is “ON” (step S7). In a case where the same functional server analogy mode is “ON” (YES in step S7), the first communication log comparison unit 42 analogizes the same functional server (Step S8).
Analogy of Same Functional Server
A method of analogizing the same functional server in step S8 of
In the first block A 20a, a server (hereinafter, described as a server A5), to which an IP address “X1.Y1.Z1.W1” (refer to a symbol Ad11 in
A first server is a server (hereinafter, described as a server A6) to which an IP address “X12.Y12.Z12.W12” (refer to a symbol Ad12 in
A server (hereinafter, described as a server B5) of the second block B 20b to which an IP address “X1′.Y1′.Z1′.W1′” (refer to a symbol Bd11 in
A first server is a server (hereinafter, described as a server B6) to which an IP address “X12′.Y12′.Z12′.W12′” (refer to a symbol Bd12 in
A port number table T3a is a table that stores standby port number logs which include communication contents illustrated in
The first communication log comparison unit 42 executes a process of determining a same functional server (step S3 to step S6) with respect to a plurality of standby port number logs that are stored in the port number table T3a and the port number table T3b, respectively.
Here, only one unit of communication using a specific port number “50000” is present in the first block A 20a and only one unit of communication using the specific port number “50000” is present in the second block B 20b. Accordingly, the first communication log comparison unit 42 executes step S3 and determines the server A5 and the server B5 as a same functional server. In addition, the first communication log comparison unit 42 executes step S3 and determines the server A6 and the server B6 as a same functional server. In
In addition, even when the processes in step S4 and S5 are executed with respect to the servers A7, A8, B7, and B8, these servers are not determined as same functional servers, and thus these servers are undetermined servers.
Hereinafter, a process of analogizing a same functional server will be described. Specifically, with reference to a plurality of first communication logs, the first communication log comparison unit 42 determines whether or not among a plurality of servers that are transmission destinations with which a server determined (searched for) as a same functional server in the first device group communicates, a plurality of first servers that are not determined as same functional servers are present.
In addition, with reference to a plurality of second communication logs, the first communication log comparison unit 42 determines whether or not among a plurality of servers that are transmission destinations with which a server determined as a same functional server in the second device group communicates, a plurality of second servers that are not determined as same functional servers are present.
In a case where the plurality of first servers and the plurality of second servers are present, the first communication log comparison unit 42 executes the following processes. That is, the first communication log comparison unit 42 also calculates a degree of similarity between transmission destination port numbers that are respectively set to the plurality of first servers that are not determined as same functional servers and transmission destination port numbers that are respectively set to the plurality of second servers that are not determined as same functional servers.
In addition, the first communication log comparison unit 42 determines a server to which a transmission destination IP address of a first communication log including a transmission destination port number having the highest degree of similarity is set, and a server to which a transmission destination IP address of a second communication log including a transmission destination port number having the highest degree of similarity is set as a same functional server.
For example, the first communication log comparison unit 42 determines an undetermined transmission destination server in communication with a determined transmission source server as a server that is a matching candidate. In an example of
Next, the first communication log comparison unit 42 calculates the degree of similarity (also, referred to as a matching degree) between standby port numbers in respective servers that are matching candidates in the first block A 20a and standby port numbers in respective servers that are matching candidates in the second block B 20b. In addition, the first communication log comparison unit 42 determines a server that is a matching candidate in the first block A 20a and a server that is a matching candidate in the second block B 20b, to which a standby port number having the highest degree of similarity is set, as a same functional server.
In the example of
The first communication log comparison unit 42 uses, for example, the following Expression 1 during calculation of the degree of similarity.
Degree of similarity
Expression 1 will be described. For example, the degree of similarity between standby port numbers of a server a and standby port numbers of a server b is assumed. In this case, n represents the number of matching standby port numbers in the standby port numbers of the server a and the standby port numbers of the server b. na represents the number of the standby port numbers of the server a. nb represents the number of the standby port numbers of the server b.
A case of calculating the degree of similarity (hereinafter, described as degree of similarity X) between the standby port numbers in the server A7 and the standby port numbers in the server B7 by using Expression 1 is exemplified. In the standby port numbers of the server A7 and the standby port numbers of the server B7, there are four matching standby port numbers of “25”, “80”, “443”, and “8080”. Accordingly, during calculation of the degree of similarity X, n in Expression 1 is 4.
The number of the standby port numbers in the server A7 is 4, and thus na in Expression 1 is 4. The number of the standby port numbers in the server B7 is 4, and thus nb in Expression 1 is 4. Accordingly, during calculation of the degree of similarity X, n, na, and nb of Expression 1 are respectively substituted with 4, 4, and 4, the degree of similarity X becomes 1.
In
The first communication log comparison unit 42 stores a degree-of-similarity table T4 of
The first communication log comparison unit 42 determines two servers, which relate to the highest degree of similarity among the degrees of similarity that are calculated, as a same functional server. In the example of
In addition, during calculation of the degree of similarity, a Jaccard coefficient, which is defined in Expression 2 and represents a degree of similarity between groups, may be used.
Degree of similarity
In Expression 2, Ci represents a set of standby port numbers in a matching candidate server; in the first block A 20a. In addition, in Expression 2, Cj represents a set of standby port numbers in a matching candidate server) in the second block B 20b.
In the example of
That is, the first communication log comparison unit 42 calculates the degree of similarity between the standby port numbers (set C1) of the server A7 and the standby port numbers (set C2) of the server B7 as “1.00” (4/4).
In addition, the first communication log comparison unit 42 calculates the degree of similarity between the standby port numbers (set C1) of the server A7 and the standby port numbers (set C3) of the server B8 as “0.50” (2/4).
In addition, the first communication log comparison unit 42 calculates the degree of similarity between the standby port number (set C3) of the server A8 and the standby port numbers (set C2) of the server B7 as “0.40” (2/5).
In addition, the first communication log comparison unit 42 calculates the degree of similarity between the standby port number (set C3) of the server A8 and the standby port numbers (set C4) of the server B8 as “0.67” (2/3).
The first communication log comparison unit 42 stores the above-described calculation results in cells, which correspond to respective servers, of a degree-of-similarity table T5 of
Through the analogy process, it is possible to determine servers, which are not determined as same functional servers even in the processes in step S3 to S5, as same functional servers. Accordingly, it is possible to create an IP address-corresponding table including more IP addresses as information used during automatic detection of a setting error of communication-related information.
Process of Recording IP Address of Same Functional Server
The correlation creation unit 43 stores an IP address set to the same functional server determined by the process of determining a same functional server which is illustrated in the flowchart of
The server-corresponding table TR1 includes an IP address column (first block A), and an IP address column (second block B). The IP address column (first block A) stores an IP address set to a server of the first block A 20a. The IP address column (second block B) stores an IP address set to a server of the second block B 20b.
In the server-corresponding table TR1 in
The undetermined server table TN in
In addition, the notification unit 47 may display the server-corresponding table TR1 in
According to the process of determining a same functional server as described above, it is possible to automatically create a server-corresponding table which is information used when automatically detecting a setting error of communication-related information. As a result, the manager is not requested to manually create the server-corresponding table, and thus it is possible to reduce man-hours and the time for operation verification.
Detection of Setting Error
Hereinafter, a process of detecting a setting error will be described.
The communication log table Tla includes a transmission source IP address column, a transmission source port number column, a transmission destination IP address column, and a transmission destination port number column. In the communication log table T1a, one communication log is stored for each row. In addition, contents of each column will be described later.
The communication log table T1b includes a transmission source IP address column, a transmission source port number column, a transmission destination IP address column, and a transmission destination port number column, and a state column. In the communication log table T1b, one communication log is stored for each row. In addition, contents of each column will be described later.
Server-Corresponding Database
The server-corresponding table TR2 includes an IP address column (first block A) and an IP address column (second block B). The IP address column (first block A) stores an IP address set to a server of the first block A 20a. The IP address column (second block B) stores an IP address set to a server of the second block B 20b.
The server-corresponding table TR2 is an example of corresponding information in which a device of the first device group in which the operation verification is completed and a device of the second device group that is an operation verification target are correlated with each other. The storage device 403 in
The first device group is, for example, the block management server group 21 of the first block A 20a in
In
That is, the server-corresponding table TR2 includes IP addresses set to first devices of the first device group in which the operation verification is completed, and IP addresses set to second devices of the second device group which have the same functions as the first devices and which are operation verification targets.
Process of Acquiring Communication Log and Process of Merging Communication Log
Before the operation verification, the communication log acquisition unit 41 of the management device 4 in
The first communication log comparison unit 42 executes a process of determining a same functional server based on the communication log for the first device group in which the operation verification is completed, and the communication log of the second device group that is an operation verification target. In addition, the correlation creation unit 43 creates a server-corresponding table in which respective IP address set to same functional servers are correlated with each other, and stores the server-corresponding table in the server-corresponding database DB2. The server-corresponding table is, for example, the server-corresponding table TR2 in
In addition, the communication log trimming unit 44 appropriately trims (also, referred to as merging) the input communication log of the first device group in which the operation verification is completed. Similarly, the communication log trimming unit 44 appropriately merges the input communication log of the first device group in which the operation verification is completed.
Step S11: The communication log acquisition unit 41 acquires a communication log of the first device group in which the operation verification is completed, and a communication log of the second device group that is an operation verification target. In addition, in step S11, the same process as step S1 in
Step S12: The communication log trimming unit 44 determines whether or not a communication log in which matching is established with both of a transmission source IP address and a transmission destination IP address of the acquired communication log is stored in the communication log database DB1
Specifically, in a case where the communication log acquisition unit 41 acquires a communication log of the first block A 20a in which the operation verification is completed, the communication log trimming unit 44 determines whether or not a communication log in which matching is established with both a transmission source IP address and a transmission destination IP address of the acquired communication log is stored in the communication log table T1a. On the other hand, in a case where the communication log acquisition unit 41 acquires a communication log of the second block B 20b that is an operation verification target, the communication log trimming unit 44 determines whether or not a communication log in which matching is established with both a transmission source IP address and a transmission destination IP address of the acquired communication log is stored in the communication log table T1b.
In a case where it is determined by the communication log trimming unit 44 that a communication log in which matching is established with both the transmission source IP address and the transmission destination IP address of the acquired communication log is not stored in the communication log database DB1 (NO in step S12), the process transitions to step S13.
Step S13: The communication log trimming unit 44 stores a communication log that is acquired by the communication log acquisition unit 41 in the communication log database DB1. Specifically, in a case where the communication log acquisition unit 41 acquires a communication log of the first block A 20a in which the operation verification is completed, the communication log trimming unit 44 stores a transmission source IP address, a transmission destination IP address, a transmission source port number, and a transmission destination port number of the communication log that is acquired, in the communication log table T1a.
On the other hand, in step S12, in a case where it is determined by the communication log trimming unit 44 that a communication log in which matching is established with both the transmission source IP address and the transmission destination IP address of the communication log acquired by the communication log acquisition unit 41 is stored in the communication log database DB1 (YES in step S12), the process transitions to step S14.
Step S14: The communication log trimming unit 44 determines whether or not a communication log in which matching is established with any one of a transmission source port number and a transmission destination port number of the communication log acquired by the communication log acquisition unit 41 is stored in the communication log database DB1. Specifically, in a case where the communication log acquisition unit 41 acquires a communication log of the first block A 20a, the communication log trimming unit 44 determines whether or not a communication log in which matching is established with any one of a transmission source port number and a transmission destination port number of the acquired communication log is stored in the communication log table T1a in
In step S14, in a case where it is determined that a communication log in which matching is established with any one of the transmission source port number and the transmission destination port number of the communication log acquired by the communication log acquisition unit 41 is stored in the communication log database DB1 (YES in step S14), the process transitions to step S15. Hereinafter, among communication logs that are stored in the communication log database DB1, a communication log in which matching is established with both the transmission source IP address and the transmission destination IP address of the communication log acquired by the communication log acquisition unit 41, and with any one of the transmission source port number and the transmission destination port number of the communication log is appropriately described as a merging source communication log.
Step S15: The communication log trimming unit 44 merges the merging source communication log that is stored in the communication log database DB1, and the communication log acquired by the communication log acquisition unit 41 with each other. In addition, merging of two communication logs in step S15 will be described in detail with reference to
In step S14, in a case where it is determined that a communication log in which matching is established with any one of the transmission source port number and the transmission destination port number of the communication log acquired by the communication log acquisition unit 41 is not stored in the communication log database DB1 (NO in step S14), the process transitions to step S13.
In a case where a plurality of communication logs are acquired in step S11, as illustrated in loops LP1 and LP2, the communication log trimming unit 44 executes the processes in step S11 to step S15 with respect to respective logs acquired by the communication log acquisition unit 41.
A process flow of
The first communication log is, for example, the communication log TM1a in
Here, in a case where a communication log in which matching is established with both the transmission source IP address “192.168.1.26” and the transmission destination IP address “192.168.1.37” of the communication log TM1a is not stored in the communication log table T1a of the communication log database DB1 in
Subsequently, the process returns to the loop LP1 from the loop LP2 and transitions to step S12. In step S12, when it is determined by the communication log trimming unit 44 that a communication log in which matching is established with both a transmission source IP address and a transmission destination IP address of the communication log TM2a is stored in the communication log database DB1 (YES in step S12), the process transitions to step S14. In this case, the communication log TM1a becomes the merging source communication log.
The reason of the determination as YES in step S12 is that the communication logs TM1a and TM2a match each other in both the transmission source IP address (“192.168.1.26”) and the transmission destination IP address (“192.168.1.37”), and the communication log TM1a is stored in the communication log database DB1.
In step S14, when it is determined by the communication log trimming unit 44 that a communication log in which matching is established with any one of the transmission source port number and the transmission destination port number of the communication log TM2a is stored in the communication log database DB1 (YES in step S14), the process transitions to step S15. The reason of the determination as YES in step S14 is that transmission destination port numbers (“25”) of the communication logs TM1a and TM2a match each other.
The first communication log trimming unit 44 merges the communication log TM1a and the communication log TM2a which are stored in the communication log database DB1 (step S15). In step S15, the communication log trimming unit 44 merges the transmission source port number “58394” of the communication log TM1a and the transmission source port number “58413” of the communication log TM2a. A merged state is illustrated in the merged communication log TM3a in
The merging in step S15 represents that both communication logs satisfying conditions described in step S12 and step S14 in
Specifically, in the merging in step S15, in a case where a transmission source port number of a merging source communication log and a transmission source port number of a communication log that is acquired match each other, the transmission source port number of the merging source communication log is converted into an arbitrary character string (for example, “*****”). In addition, in the merging, in a case where a transmission destination port number of the merging source communication log and a transmission destination port number of the communication log that is acquired match each other, the transmission destination port number of the merging source communication log is converted into an arbitrary character string. An arbitrary numerical value (for example, 0xFFFFF (hexadecimal) is also possible instead of the character string.
As described with reference to
In addition, as described with reference to
Hereinafter, the reason why the communication logs are merged will be described. The reason is to reduce an amount of communication logs that are stored in a database. For example, it is assumed that first software and second software which are executed by an arbitrary server make a request for data processing (also, referred to as a service) to third software executed by a different server. Here, the third software is software that executes a process of transmitting electronic mail by SMTP, and performs communication with the first software and the second software.
The first software makes a request for electronic mail transmission to the third software, for example, by using a transmission source port number “58394” and a transmission destination port number “25”. In addition, the second software makes a request for electronic mail transmission to the third software, for example, by using a transmission source port number “58413” and a transmission destination port number “25”.
During a communication process, service request destination software is in a standby state for service request by using a specific port number (in the above-described example, “25”), and thus a transmission destination port number is fixed. On the other hand, service request source software typically includes a plurality of pieces of software, and the plurality of pieces of software use port numbers different from each other. In addition, even when the same software makes a request for a service, whenever a request for a service is made, a different port number may be used in some cases. In other words, the transmission source port number is frequently changed.
In addition, the service request destination software may transmit a response message to a plurality of pieces of different service request source software, respectively. The response message is also recorded as a communication log. In this manner, in a case where the service request destination software transmits the response message to the plurality of pieces of different service request source software, a transmission source port number is the same, but a transmission destination port number is different in each case.
As described above, a communication process, in which a nonspecific port number is used as a transmission source port number and a specific port number is used as a transmission destination port number, occurs. In addition, a communication process, in which a specific port number is used as a transmission source port number and a nonspecific port number is used as a transmission destination port number, may occur in some cases. Accordingly, during merging of the communication log, a communication log is stored in the communication log database DB1 in a state in which the nonspecific port number is merged. Due to the merging, it is possible to reduce the data amount of the communication log that is stored in the communication log database DB1. In addition, during the following comparison of communication logs, a comparison process may be quickly executed.
Subsequently, the second communication log comparison unit 45 executes comparison of a communication log, and the error detection unit 46 executes detection of a communication-related setting error.
Conversion of IP Address of Communication Log
Before detection of the communication-related setting error, the second communication log comparison unit 45 executes conversion of an IP address of a communication log based on the server-corresponding table TR2 in
As described above, the server-corresponding table TR2 includes an IP address set to a device of the first device group in which the operation verification is completed, and an IP address set to a device of the second device group which is an operation verification target, the device having the same function as the device of the first device group.
The second communication log comparison unit 45 converts a transmission source IP address and a transmission destination IP address of a first communication log to an IP address set to a device of the second device group that is an operation verification target based on the server-corresponding table TR2, where the device corresponds to the transmission source IP address and the transmission destination IP address. The conversion process will be described in detail with reference to
Subsequently, the second communication log comparison unit 45 selects an IP address to be converted one by one among transmission source IP addresses stored in the transmission source IP address column of the master communication log table T1m in
In addition, the second communication log comparison unit 45 specifies an IP address at the same row as the IP address searched for among IP addresses stored in the IP address (second block B) column of the server-corresponding table TR2 in
The second communication log comparison unit 45 executes the selection, the search, the specification, and the conversion of the IP address with respect to the entire transmission source IP addresses stored in the transmission source IP address column. In addition, in a case where the selected IP address and the specified IP address are the same as each other, the second communication log comparison unit 45 may not execute the above-described conversion.
In addition, the second communication log comparison unit 45 selects an IP address to be converted, one by one, among transmission destination IP addresses stored in the transmission destination IP address column of the master communication log table T1m in
The second communication log comparison unit 45 executes the selection, the search, the specification, and the conversion of the IP address with respect to the entire transmission destination IP addresses stored in the transmission destination IP address column. A flag “matching” that is stored in the matching or non-matching column in
Addition of Matching or Non-Matching Column
Process of Detecting Setting Error
Step S21: The second communication log comparison unit 45 reads out all of the communication logs, which becomes a master (standard) of the comparison process, from the communication log database DB1. Hereinafter, a communication log that becomes a master is appropriately described as a master communication log. Specifically, the second communication log comparison unit 45 reads out specific information (a transmission source IP address, a transmission destination IP address, a transmission source port number, and a transmission destination port number) of all of the communication logs which are stored in the master communication log table T1m in
Step S22: The second communication log comparison unit 45 reads out a communication log of an operation verification target from the communication log database DB1. The communication log of an operation verification target is a communication log of the second block B 20b. Specifically, the second communication log comparison unit 45 reads out specific information of a communication log, which is not read-out, among a plurality of pieces of specific information of communication logs that are stored in the communication log table T11b in
Step S23: The second communication log comparison unit 45 compares the communication log of the operation verification target which is read-out in step S22, and each master communication log, and sets a flag, which indicates that both of the communication logs match each other, to both of the communication logs. The process in step S23 will be described later in detail with reference to
Step S24: The error detection unit 46 detects a communication-related setting error, and the notification unit 47 makes a notification of the communication-related setting error detected by the error detection unit 46.
The second communication log comparison unit 45 executes the processes in step S22 and step S23 until all of the communication logs are read out from the communication log table T11b in
Step S231: The second communication log comparison unit 45 determines whether or not both a transmission source IP address and a transmission destination IP address of the master communication log, and both a transmission source IP address and a transmission destination IP address of the communication log of the operation verification target match each other. In a case of non-matching (NO in step S231), the process transitions to the loop LP22 in
Step S232: The second communication log comparison unit 45 determines whether or not a transmission source port number of the master communication log and a transmission source port number of the communication log of the operation verification target are merged, or whether or not a transmission destination port number of the master communication log and a transmission destination port number of the communication log of the operation verification target are merged with each other.
Hereinafter, a case where the transmission source port number of the master communication log and the transmission source port number of the communication log of the operation verification target are merged with each other is described as a first case. In addition, a case where the transmission destination port number of the master communication log and the transmission destination port number of the communication log of the operation verification target are merged with each other is described as a second case.
Here, in the second case (it is determined in step S232 that only the transmission destination port is merged), the process transitions to step S233. In the first case (it is determined in step S232 that only the transmission source port is merged), the process transitions to step S234. In a third case other than the first case and the second case, the process transitions to step S233. In a case not corresponding to any of the first to third cases, the process transitions to the loop LP22 in
Step S233: The second communication log comparison unit 45 determines whether or not the transmission source port number of the master communication log and the transmission source port number of a communication log of an operation verification target match each other. In a case of matching (YES in step S233), the process transition to step S235. In a case of non-matching (NO in step S233), the process transitions to step S234.
Step S234: The second communication log comparison unit 45 determines whether or not the transmission destination port number of the master communication log and the communication destination port number of the communication log of the operation verification target match each other. In a case of non-matching (NO in step S234), the process transitions to the loop LP22 in
Step S235: The second communication log comparison unit 45 sets a flag, which indicating that matching communication logs are present, with respect to the matching communication logs. The matching communication logs are the master communication log and the communication log of the operation verification target which satisfy the condition in step S231 (YES in step S231) and the condition in step S233 or step S234 (YES in step S233 or YES in step S234).
Flag Setting
The flag setting described with reference to
A communication log TC31a is a master communication log indicated by a symbol P1 in
For example, the second communication log comparison unit 45 compares the communication log TC31a and the communication log TC31b. Here, a transmission source IP address (“192.168.1.26”) and a transmission destination IP address (“192.168.1.37”) which are included in the communication log TC31a, and a transmission source IP address and a transmission destination IP address which are included in the communication log TC31b match each other. In addition, transmission source port numbers included in the communication log TC31a and the communication log TC31b are merged (“*****”). In addition, a transmission destination port number (“25”) included in the communication log TC31a and a transmission destination port number (“25”) included in the communication log TC31b match each other. Accordingly, during comparison of both of the communication logs, the second communication log comparison unit 45 determines YES in step S231 in
The second communication log comparison unit 45 stores a flag “matching” in a row, which corresponds to the communication log TC31a (refer to the symbol P31 in
In addition, the second communication log comparison unit 45 stores a flag “matching” in a row, which corresponds to the communication log TC31b (refer to the symbol P31 in
Next, for example, the second communication log comparison unit 45 compares the communication log TC32a and the communication log TC32b with each other. During comparison of both of the communication logs, the second communication log comparison unit 45 determines YES in step S231 in
The second communication log comparison unit 45 stores a flag “matching” in a row, which corresponds to the communication log TC32a (refer to the symbol P32 in
In addition, the second communication log comparison unit 45 stores a flag “matching” in a row, which corresponds to the communication log TC32b (refer to the symbol P32 in
The comparison process is repeatedly executed (refer to LP11 and LP12 in
Communication logs TC41a to TC43a are examples of a master communication log. Communication logs TC41b to TC43b are examples of the communication log of the operation verification target.
For example, the second communication log comparison unit 45 compares the communication log TC41a and the communication log TC41b. Here, a transmission source IP address (“192.168.1.37”) and a transmission destination IP address (“192.168.1.35”) which are included in the communication log TC41a, and a transmission source IP address and a transmission destination IP address which are included in the communication log TC41b match each other. In addition, a transmission source port number (“53641”) and a transmission destination port number (“80”) included in the communication log TC41a and a transmission source port number and a transmission destination port number included in the communication log TC41b match each other. Accordingly, during comparison of both of the communication logs, the second communication log comparison unit 45 determines YES in step S231 in
The second communication log comparison unit 45 stores a flag “matching” in a row (not illustrated), which corresponds to the communication log TC41a, in the matching or non-matching column of the master communication log table Tim in
For example, the second communication log comparison unit 45 compares the communication log TC42a and the communication log TC42b. Here, a transmission source IP address (“192.168.1.37”) and a transmission destination IP address (“192.168.1.35”) which are included in the communication log TC42a, and a transmission source IP address and a transmission destination IP address which are included in the communication log TC42b match each other. On the other hand, a transmission source port number (“53641”) included in the communication log TC42a and a transmission source port number (“53645”) included in the communication log TC42b do not match each other. However, a transmission destination port number (“80”) included in the communication log TC42a and a transmission destination port number (“80”) included in the communication log TC42b match each other.
Accordingly, during comparison of both of the communication logs, the second communication log comparison unit 45 determines YES in step S231 in
For example, the second communication log comparison unit 45 compares the communication log TC43a and the communication log TC43b. Here, a transmission source IP address (“192.168.1.37”) and a transmission destination IP address (“192.168.1.35”) which are included in the communication log TC43a, and a transmission source IP address and a transmission destination IP address which are included in the communication log TC43b match each other. However, a transmission source port number (“53641”) included in the communication log TC43a and a transmission source port number (“53645”) included in the communication log TC43b do not match each other. In addition, a transmission destination port number (“80”) included in the communication log TC43a and a transmission destination port number (“443”) included in the communication log TC43b do not match each other.
Accordingly, during comparison of both of the communication logs, the second communication log comparison unit 45 determines YES in step S231 in
As described above, the second communication log comparison unit 45 repetitively performs the above-described comparison between the master communication log and the communication log of the operation verification target. Specifically, the second communication log comparison unit 45 reads out the entire master communication logs stored in the master communication log table T1m in
Extraction of Setting Error Candidate
Through execution of the processes in steps S21 to S23 in
The error detection unit 46 extracts a setting error candidate based on the master communication log table T1m in
The error detection unit 46 detects the setting error based on a setting error candidate that is extracted, and analyzes the cause of the setting error. In addition, the notification unit 47 notifies a manager of the contents of the setting error and the case of the setting error. First, extraction of the setting error candidate will be described with reference to
At an immediately previous stage of the detection of the setting error, the error detection unit 46 extracts the setting error candidate. The error detection unit 46 detects a communication log, which does not match second specific information included in a plurality of second communication logs (refer to
Specifically, among the plurality of first communication logs, the error detection unit 46 detects a communication log, in which matching is not established with a transmission source IP address and a transmission destination IP address which are included in the plurality of the second communication logs, as a first setting error communication log. In addition, among the plurality of first communication logs, the error detection unit 46 detects a communication log, in which matching is established with the transmission source IP address and the transmission destination IP address which are included in the plurality of second communication logs, but matching is not established with a transmission source port number and a transmission destination port number, as the first setting error communication log. Hereinafter, the first setting error communication log is appropriately described as a first setting error candidate communication log.
In the example of
In addition, among the plurality of second communication logs, the error detection unit 46 detects a communication log, in which matching is not established with a transmission source IP address and a transmission destination IP address which are included in the plurality of first communication logs, as a second setting error communication log. In addition, among the plurality of second communication logs, the error detection unit 46 detects a communication log, in which matching is established with the transmission source IP address and the transmission destination IP address which are included in the plurality of first communication logs, but matching is not established with a transmission source port number and a transmission destination port number, as the second setting error communication log. Hereinafter, the second setting error communication log is appropriately described as a second setting error candidate communication log.
In the example of
A symbol TE1b in
In addition, the error detection unit 46 detects a setting error of specific information that specifies a transmission source and a transmission destination which relate to the first and second setting error communication logs in a device of the second device group.
The error detection unit 46 detects a setting error by executing first to third detection processes different from each other. First, the first detection process will be described.
In the first detection process, the following assumptions are made. The manager sets a transmission source IP address “12.3.0.142” to a server (hereinafter, described as a server S1) in the first device group (for example, the first block A 20a) in which the operation verification is completed. In addition, the manager sets a transmission destination IP address “12.0.3.7” to communication software that is executed by the server S1. Here, the transmission destination server to which the transmission destination IP address “12.0.3.7” is set is described as a server D1.
In addition, the manager sets a transmission source IP address “12.3.0.142” to a server (hereinafter, described as a server S2) in the second device group (for example, the second block B 20b) which has the same function as the server S1 and which is an operation verification target. In addition, the manager sets an IP address “12.4.3.7”, which is obtained by customizing the transmission destination IP address “12.0.3.7”, to communication software that is executed by the server S2. However, actually, the manager does not perform the customization and erroneously sets the transmission destination IP address “12.0.3.7” not the IP address “12.4.3.7”. Here, a transmission destination server to which the transmission destination IP address “12.4.3.7” is set is described as a server D2.
According to the server-corresponding table TR2 in
However, when the manager executes the operation verification with respect to the second device group that is an operation verification target, communication software of the server S2 creates a communication packet and transmits the communication packet. For example, the communication packet includes a transmission source IP address “12.3.0.142”, a transmission source port number “9000”, a transmission destination IP address “12.0.3.7” (erroneous setting), and a predetermined transmission destination port number. The transmission destination IP address “12.0.3.7” (erroneous setting) of the communication packet is not stored in the IP address (second block B) column of the server-corresponding table TR2 in
The communication is caused by the erroneous setting of the IP address, and thus it is desirable to correct the erroneous setting of the IP address. Accordingly, the error detection unit 46 of the management device 4 executes the following processes.
The error detection unit 46 detects a communication log, in which matching is established in a transmission source IP address and a transmission source port number, from the first setting error communication logs and the second setting error communication log as a third setting error communication log. In addition, the error detection unit 46 detects a communication log in which matching is established in a transmission destination IP address and a transmission destination port number, as a fourth setting error communication log.
In addition, the error detection unit 46 detects a setting error of a transmission source IP address and a transmission destination IP address which relate to the third and fourth setting error communication logs in a device of the second device group. In addition, the notification unit 47 makes a notification of the setting error that is detected by the error detection unit 46.
Hereinafter, a description will be made in detail. The error detection unit 46 compares the first setting error candidate communication log and the second setting error candidate communication log with each other. In addition, the error detection unit 46 extracts a communication log in which matching is established in a transmission source IP address and a transmission source port number or a communication log in which matching is established in a transmission destination IP address and a transmission destination port number from the first and second setting error candidate communication logs. In a case of the example illustrated in
Specifically, the error detection unit 46 extracts a communication log TM1a in
However, as described above, the transmission destination IP address “12.0.3.7” included in the communication log TM1b in
Accordingly, the error detection unit 46 estimates that an error is made during setting of the communication-related information in a server to which the transmission source IP address “12.3.0.142” of the communication log TM1b is set. In addition, the transmission destination IP address “12.0.3.7” is stored in the IP address (first block A) column of the server-corresponding table TR2 in
In addition, the notification unit 47 notifies the manager of such assumptions as an error is made during setting of the communication-related information in a server to which the transmission source IP address “12.3.0.142” is set and a correct IP address is “12.4.3.7”.
Next, the second detection process will be described. The error detection unit 46 detects a fifth setting error communication log other than the third and fourth setting error communication logs from the first setting error communication logs. The notification unit 47 detects a setting error of a transmission source IP address that relates to the fifth setting error communication log in a device of the second device group, and gives a notification of the setting error that is detected.
A description will be made in detail. The error detection unit 46 detects whether or not a communication log present only in the first device group (for example, the first block A 20a) in which the operation verification is completed is present. As described above, a hardware configuration and a software configuration of the second device group (for example, the second block B 20b) that is an operation verification target are the same or substantially the same as a hardware configuration and a software configuration of the first block A 20a. In this case, communication, in which a transmission source and a transmission destination are regarded as the same in each case, is highly likely to occur in the first block A 20a and the second block B 20b.
Therefore, in a case where a communication log present only in the first block A 20a is present, communication, which relates to the communication log, may not be executed in the second block B 20b. Specifically, in a transmission source server, which executes the communication log-related communication, of the second block B 20b, software that executes a service to be provided by the server may not operate. In addition to this, there is a high possibility that a setting error such as any communication setting information not being set to the server has occurred.
Description will be made with respect to a specific process of detecting whether or not the communication log present only in the first block A 20a is present. The error detection unit 46 extracts a communication log other than the communication log extracted in the first detection process from the two communication logs indicated by the symbol TE1a in
The communication log is a communication log that is present only in the first block A 20a.
The notification unit 47 notifies the manager of occurrence of a setting error relating to a communication log detected by the error detection unit 46. The notification unit 47 gives a notification to the manager in order for the manager to confirm whether or not in a server in the second block B 20b to which the transmission source IP address “192.168.0.12” is set and which executes the communication relating to the communication log, software that executes a service to be provided by the server operates. In addition, the notification unit 47 gives a notification to the manager in order for the manager to confirm whether or not communication setting information set to the server or the software executed by the server is correct.
Next, the third detection process will be described. The error detection unit 46 extracts the second setting error candidate communication log in which “no response” is stored in the state column. With regard to the communication log corresponding to “no response”, there is a high possibility that a communication packet is transmitted from a transmission source server to a transmission destination server, but the communication packet fails to reach the transmission destination server. As the cause of this failure, for example, it can be considered that a fire wall provided on the network between the transmission source server and the transmission destination server blocks the above-described communication packet. Additionally, as the cause of the failure, a setting error of a routing table provided to a router provided on the above-described network may be considered.
Specifically, the error detection unit 46 extracts a communication log in which “no response” is stored in the state column from the two communication logs indicated by the symbol TE1b in
According to the communication log in which “no response” is stored in the state column, it can be estimated that a communication packet transmitted from a transmission source server to which the transmission source IP address “192.168.1.37” is set to the port number “9004” of a transmission destination server to which the transmission destination IP address “192.168.1.35” is set may be blocked.
Accordingly, the notification unit 47 gives a notification to the manager in order for the manager to confirm whether or not setting of the fire wall and the like, which are provided on the network (communication path) ranging from the transmission source server to the transmission destination server, is correct.
As described above, according to the managing device according to this embodiment, a setting error of communication-related information is automatically detected and a manager is notified of the information. In addition to this, the cause of the setting error is also estimated and the manager is notified of this estimation. Accordingly, the manager can easily specify the setting error and can easily perform cause analysis, and thus convenience for the manager increases. In addition, the number of processes of correcting the setting error and time taken to correct the setting error are reduced, and thus it is possible to quickly terminate the operation verification. As a result, convenience for a user of an information processing system is improved, and economic benefit to a business operator is also improved.
In addition, the management device of this embodiment executes a process of detecting the setting error by using an IP address, a port number, and a communication state of a communication log recorded during a communication process executed by a communication software of a server.
Accordingly, it is not desired to introduce additional complex software for detection of the setting error other than the management device, and thus it is possible to suppress an increase in system complication and the cost of system construction. Additionally, only the communication logs are recorded on the server, and thus it is possible to suppress an increase in a processing load in the server. In addition, in the management device, communication logs are acquired, and only a simple comparison process is executed with respect to the communication logs that are acquired, and thus it is possible to suppress an increase in a processing load.
In addition, the management device of this embodiment acquires a communication log, which becomes a master during comparison of communication logs, from the first block A 20a in operation. According to the management device, it is possible to perform operation verification of the second block B 20b without stopping operation of the first block A 20a during comparison of the communication logs. As a result, the first block A 20a operates during operation verification of the second block B 20b, and thus it is possible to continuously provide service to a user of a cloud system.
In addition, the management device 4 may acquire specific information, which specifies a transmission source and a transmission destination of communication, from header information of a communication packet that is transmitted and received on a network of the first block A 20a as a communication log of the first block A 20a. Similarly, the management device 4 may acquire specific information, which specifies a transmission source and a transmission destination of communication, from header information of a communication packet that is transmitted and received on a network of the second block B 20b as a communication log of the second block B 20b.
All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the invention and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiment of the present invention has been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
2013-230531 | Nov 2013 | JP | national |